From 6e81ee12a61ce106f299f9143d51737c7d330715 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 18 Aug 2024 12:45:15 +0000 Subject: [PATCH 01/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/d89a08c519b8098c5c6be42dddeca33ce62f2dee' (2024-08-09) → 'github:mlabs-haskell/flake-lang.nix/9c7246f26c17c4ec4683c30f41c03d393b1d158c' (2024-08-12) --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index dc2bdfb1..de38577b 100644 --- a/flake.lock +++ b/flake.lock @@ -1811,11 +1811,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1723190412, - "narHash": "sha256-Z1Bp4sb1AlxYy8alP++i/kkUjKr9xaoFSOHaUZvKxmk=", + "lastModified": 1723452500, + "narHash": "sha256-cahAcyj4b8bUxfXp/J/UBJRiCEYTfygKyBngJywTqp4=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "d89a08c519b8098c5c6be42dddeca33ce62f2dee", + "rev": "9c7246f26c17c4ec4683c30f41c03d393b1d158c", "type": "github" }, "original": { From 2b7d884a918eefbed3e6355b2ad825477ec881a6 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Wed, 28 Aug 2024 11:10:39 +0200 Subject: [PATCH 02/94] Implement extra golden tests for external use --- plutus-ledger-api/src/goldens/v1.rs | 34 ++++++++++++++++++++--------- plutus-ledger-api/src/goldens/v2.rs | 8 +++++++ 2 files changed, 32 insertions(+), 10 deletions(-) diff --git a/plutus-ledger-api/src/goldens/v1.rs b/plutus-ledger-api/src/goldens/v1.rs index 09b24b00..fa7b4724 100644 --- a/plutus-ledger-api/src/goldens/v1.rs +++ b/plutus-ledger-api/src/goldens/v1.rs @@ -14,13 +14,16 @@ use crate::{ }, value::{AssetClass, CurrencySymbol, TokenName, Value}, }, + v2::address::{CertificateIndex, ChainPointer, Slot, TransactionIndex}, }; use num_bigint::BigInt; +pub fn sample_script_hash() -> ScriptHash { + ScriptHash(LedgerBytes([1].repeat(28).to_vec())) +} + pub fn sample_currency_symbol() -> CurrencySymbol { - CurrencySymbol::NativeToken(MintingPolicyHash(ScriptHash(LedgerBytes( - [0].repeat(28).to_vec(), - )))) + CurrencySymbol::NativeToken(MintingPolicyHash(sample_script_hash())) } pub fn sample_token_name() -> TokenName { @@ -50,10 +53,20 @@ pub fn sample_ed25519_pub_key_hash() -> Ed25519PubKeyHash { Ed25519PubKeyHash(LedgerBytes([0].repeat(28).to_vec())) } +pub fn sample_credential() -> Credential { + Credential::Script(ValidatorHash(sample_script_hash())) +} + pub fn sample_staking_credential() -> StakingCredential { - StakingCredential::Hash(Credential::Script(ValidatorHash(ScriptHash(LedgerBytes( - [1].repeat(28).to_vec(), - ))))) + StakingCredential::Hash(sample_credential()) +} + +pub fn sample_chain_pointer() -> ChainPointer { + ChainPointer { + slot_number: Slot(134561.into()), + transaction_index: TransactionIndex(4.into()), + certificate_index: CertificateIndex(10.into()), + } } pub fn sample_address() -> Address { @@ -78,11 +91,12 @@ pub fn sample_datum_hash() -> DatumHash { DatumHash(LedgerBytes([0].repeat(32).to_vec())) } +pub fn sample_plutus_data() -> PlutusData { + PlutusData::constr(1, vec![PlutusData::bytes("Something".as_bytes().to_vec())]) +} + pub fn sample_datum() -> Datum { - Datum(PlutusData::constr( - 1, - vec![PlutusData::bytes("Something".as_bytes().to_vec())], - )) + Datum(sample_plutus_data()) } pub fn sample_redeemer_hash() -> RedeemerHash { diff --git a/plutus-ledger-api/src/goldens/v2.rs b/plutus-ledger-api/src/goldens/v2.rs index e8792969..5542f7c8 100644 --- a/plutus-ledger-api/src/goldens/v2.rs +++ b/plutus-ledger-api/src/goldens/v2.rs @@ -1,4 +1,12 @@ //! Golden test data or Plutus V2 types +pub use super::v1::{ + sample_address, sample_asset_class, sample_chain_pointer, sample_credential, + sample_currency_symbol, sample_datum, sample_datum_hash, sample_dcert, + sample_ed25519_pub_key_hash, sample_payment_pub_key_hash, sample_plutus_data, + sample_plutus_interval, sample_redeemer, sample_redeemer_hash, sample_script_hash, + sample_script_purpose, sample_staking_credential, sample_token_name, sample_transaction_hash, + sample_transaction_input, sample_value, +}; use crate::v2::{ assoc_map::AssocMap, crypto::LedgerBytes, From 06d60616b051330aee2946a725dfc17cc3ebd445 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 1 Sep 2024 12:45:37 +0000 Subject: [PATCH 03/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'hci-effects': 'github:hercules-ci/hercules-ci-effects/11e4b8dc112e2f485d7c97e1cee77f9958f498f5' (2024-06-24) → 'github:hercules-ci/hercules-ci-effects/dba4367b9a9d9615456c430a6d6af716f6e84cef' (2024-08-29) --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index de38577b..576740db 100644 --- a/flake.lock +++ b/flake.lock @@ -3309,11 +3309,11 @@ "nixpkgs": "nixpkgs_34" }, "locked": { - "lastModified": 1719226092, - "narHash": "sha256-YNkUMcCUCpnULp40g+svYsaH1RbSEj6s4WdZY/SHe38=", + "lastModified": 1724947644, + "narHash": "sha256-MHHrHasTngp7EYQOObHJ1a/IsRF+wodHqOckhH6uZbk=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "11e4b8dc112e2f485d7c97e1cee77f9958f498f5", + "rev": "dba4367b9a9d9615456c430a6d6af716f6e84cef", "type": "github" }, "original": { From fb8cc8e9c6c3ae279162aef481636ff381f1e8c4 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Tue, 24 Sep 2024 11:14:06 +0200 Subject: [PATCH 04/94] Update golden tests --- .../tests/testdata/v1_asset_class.golden | 56 +-- .../tests/testdata/v1_script_context.golden | 280 ++++++------- .../tests/testdata/v1_script_purpose.golden | 56 +-- .../tests/testdata/v1_transaction_info.golden | 224 +++++----- .../testdata/v1_transaction_output.golden | 56 +-- .../tests/testdata/v1_tx_in_info.golden | 56 +-- .../tests/testdata/v1_value.golden | 56 +-- .../tests/testdata/v2_script_context.golden | 392 +++++++++--------- .../tests/testdata/v2_transaction_info.golden | 336 +++++++-------- .../testdata/v2_transaction_output.golden | 56 +-- .../tests/testdata/v2_tx_in_info.golden | 56 +-- 11 files changed, 812 insertions(+), 812 deletions(-) diff --git a/plutus-ledger-api/tests/testdata/v1_asset_class.golden b/plutus-ledger-api/tests/testdata/v1_asset_class.golden index 2fe461a6..9e193eb9 100644 --- a/plutus-ledger-api/tests/testdata/v1_asset_class.golden +++ b/plutus-ledger-api/tests/testdata/v1_asset_class.golden @@ -3,34 +3,34 @@ Constr( [ Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Bytes( diff --git a/plutus-ledger-api/tests/testdata/v1_script_context.golden b/plutus-ledger-api/tests/testdata/v1_script_context.golden index b3be0f27..d9fd145e 100644 --- a/plutus-ledger-api/tests/testdata/v1_script_context.golden +++ b/plutus-ledger-api/tests/testdata/v1_script_context.golden @@ -155,34 +155,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -356,34 +356,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -461,34 +461,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -521,34 +521,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -895,34 +895,34 @@ Constr( [ Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), ], diff --git a/plutus-ledger-api/tests/testdata/v1_script_purpose.golden b/plutus-ledger-api/tests/testdata/v1_script_purpose.golden index af1c3c3a..e396f0e7 100644 --- a/plutus-ledger-api/tests/testdata/v1_script_purpose.golden +++ b/plutus-ledger-api/tests/testdata/v1_script_purpose.golden @@ -3,34 +3,34 @@ Constr( [ Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), ], diff --git a/plutus-ledger-api/tests/testdata/v1_transaction_info.golden b/plutus-ledger-api/tests/testdata/v1_transaction_info.golden index 4d6d21b7..5b750f09 100644 --- a/plutus-ledger-api/tests/testdata/v1_transaction_info.golden +++ b/plutus-ledger-api/tests/testdata/v1_transaction_info.golden @@ -152,34 +152,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -353,34 +353,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -458,34 +458,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -518,34 +518,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( diff --git a/plutus-ledger-api/tests/testdata/v1_transaction_output.golden b/plutus-ledger-api/tests/testdata/v1_transaction_output.golden index 0a98a9d9..ca371d7e 100644 --- a/plutus-ledger-api/tests/testdata/v1_transaction_output.golden +++ b/plutus-ledger-api/tests/testdata/v1_transaction_output.golden @@ -95,34 +95,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( diff --git a/plutus-ledger-api/tests/testdata/v1_tx_in_info.golden b/plutus-ledger-api/tests/testdata/v1_tx_in_info.golden index a394d41c..2c2e0c52 100644 --- a/plutus-ledger-api/tests/testdata/v1_tx_in_info.golden +++ b/plutus-ledger-api/tests/testdata/v1_tx_in_info.golden @@ -147,34 +147,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( diff --git a/plutus-ledger-api/tests/testdata/v1_value.golden b/plutus-ledger-api/tests/testdata/v1_value.golden index ac756e76..3e6b5278 100644 --- a/plutus-ledger-api/tests/testdata/v1_value.golden +++ b/plutus-ledger-api/tests/testdata/v1_value.golden @@ -3,34 +3,34 @@ Map( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( diff --git a/plutus-ledger-api/tests/testdata/v2_script_context.golden b/plutus-ledger-api/tests/testdata/v2_script_context.golden index f44208a0..7357b597 100644 --- a/plutus-ledger-api/tests/testdata/v2_script_context.golden +++ b/plutus-ledger-api/tests/testdata/v2_script_context.golden @@ -155,34 +155,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -427,34 +427,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -647,34 +647,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -771,34 +771,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -831,34 +831,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -1099,34 +1099,34 @@ Constr( [ Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), ], @@ -1245,34 +1245,34 @@ Constr( [ Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), ], diff --git a/plutus-ledger-api/tests/testdata/v2_transaction_info.golden b/plutus-ledger-api/tests/testdata/v2_transaction_info.golden index 9ac751d8..4829d60a 100644 --- a/plutus-ledger-api/tests/testdata/v2_transaction_info.golden +++ b/plutus-ledger-api/tests/testdata/v2_transaction_info.golden @@ -152,34 +152,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -424,34 +424,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -644,34 +644,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -768,34 +768,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -828,34 +828,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( @@ -1096,34 +1096,34 @@ Constr( [ Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), ], diff --git a/plutus-ledger-api/tests/testdata/v2_transaction_output.golden b/plutus-ledger-api/tests/testdata/v2_transaction_output.golden index e7110a75..8f6dad87 100644 --- a/plutus-ledger-api/tests/testdata/v2_transaction_output.golden +++ b/plutus-ledger-api/tests/testdata/v2_transaction_output.golden @@ -95,34 +95,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( diff --git a/plutus-ledger-api/tests/testdata/v2_tx_in_info.golden b/plutus-ledger-api/tests/testdata/v2_tx_in_info.golden index d07191ec..65c63425 100644 --- a/plutus-ledger-api/tests/testdata/v2_tx_in_info.golden +++ b/plutus-ledger-api/tests/testdata/v2_tx_in_info.golden @@ -147,34 +147,34 @@ Constr( ( Bytes( [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, ], ), Map( From e7f4aa7c963dc83aa0a33e5836c4c047b90da7c1 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 29 Sep 2024 12:46:21 +0000 Subject: [PATCH 05/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/9c7246f26c17c4ec4683c30f41c03d393b1d158c' (2024-08-12) → 'github:mlabs-haskell/flake-lang.nix/185572ca12812f009456b212f5a6cae4e3e5baf8' (2024-09-24) --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index 576740db..2b4b8e17 100644 --- a/flake.lock +++ b/flake.lock @@ -1811,11 +1811,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1723452500, - "narHash": "sha256-cahAcyj4b8bUxfXp/J/UBJRiCEYTfygKyBngJywTqp4=", + "lastModified": 1727178379, + "narHash": "sha256-tnpDsS0R9KTu3SxPsuatAVysGe39F0SwwS82XxWHfT0=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "9c7246f26c17c4ec4683c30f41c03d393b1d158c", + "rev": "185572ca12812f009456b212f5a6cae4e3e5baf8", "type": "github" }, "original": { From e9adfe878b2c055f2a5fe10112ea13e0dc8a4ce4 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 3 Oct 2024 14:00:51 +0200 Subject: [PATCH 06/94] Custom serde serialization for Value --- plutus-ledger-api/Cargo.lock | 5 +- plutus-ledger-api/Cargo.toml | 6 +- plutus-ledger-api/src/v1/value.rs | 99 +++++++++-- plutus-ledger-api/tests/{json.rs => lbf.rs} | 2 +- .../tests/serde.proptest-regressions | 15 ++ plutus-ledger-api/tests/serde.rs | 161 ++++++++++++++++++ 6 files changed, 266 insertions(+), 22 deletions(-) rename plutus-ledger-api/tests/{json.rs => lbf.rs} (99%) create mode 100644 plutus-ledger-api/tests/serde.proptest-regressions create mode 100644 plutus-ledger-api/tests/serde.rs diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index dbc49683..06d8f7f1 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -508,11 +508,12 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.117" +version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" +checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" dependencies = [ "itoa", + "memchr", "ryu", "serde", ] diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index db2417d6..c77964ce 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -11,9 +11,7 @@ repository = "https://github.com/mlabs-haskell/plutus-ledger-api-rust" [dependencies] proptest = "^1.3.1" lbr-prelude = { version = "0.1.1", optional = true } -serde_json = { version = "^1.0.107", features = [ - "arbitrary_precision", -], optional = true } +serde_json = { version = "1.0.128", optional = true } num-bigint = "~0.4" serde = { version = "^1.0.189", features = ["derive"], optional = true } true = { version = "~0.1.0", optional = true } @@ -26,7 +24,7 @@ chrono = { version = "0.4.34", optional = true } [features] default = [] -serde = ["dep:serde", "num-bigint/serde"] +serde = ["dep:serde", "num-bigint/serde", "dep:serde_json"] lbf = ["dep:lbr-prelude", "dep:serde_json"] chrono = ["dep:chrono"] diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index f3a30458..249e6ff7 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -39,13 +39,11 @@ impl IsPlutusData for CurrencySymbol { } fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).and_then(|bytes: LedgerBytes| { + IsPlutusData::from_plutus_data(data).map(|bytes: LedgerBytes| { if bytes.0.is_empty() { - Ok(CurrencySymbol::Ada) + CurrencySymbol::Ada } else { - Ok(CurrencySymbol::NativeToken(MintingPolicyHash(ScriptHash( - bytes, - )))) + CurrencySymbol::NativeToken(MintingPolicyHash(ScriptHash(bytes))) } }) } @@ -79,11 +77,68 @@ impl Json for CurrencySymbol { } /// A value that can contain multiple asset classes -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, Default)] #[cfg_attr(feature = "lbf", derive(Json))] pub struct Value(pub BTreeMap>); +#[cfg(feature = "serde")] +mod value_serde { + use std::collections::BTreeMap; + + use num_bigint::BigInt; + use serde::{de::Deserializer, ser::Serializer, Deserialize, Serialize}; + + use super::{CurrencySymbol, TokenName, Value}; + + struct Assets(BTreeMap); + + impl Serialize for Value { + fn serialize(&self, serializer: S) -> Result + where + S: Serializer, + { + serializer.collect_seq( + self.0 + .iter() + .map(|(cur_sym, assets)| (cur_sym, Assets(assets.to_owned()))), + ) + } + } + + impl<'de> Deserialize<'de> for Value { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let vec: Vec<(CurrencySymbol, Assets)> = Vec::deserialize(deserializer)?; + + Ok(Value( + vec.into_iter().map(|(cs, assets)| (cs, assets.0)).collect(), + )) + } + } + + impl Serialize for Assets { + fn serialize(&self, serializer: S) -> Result + where + S: Serializer, + { + serializer.collect_seq(self.0.iter()) + } + } + + impl<'de, 'a> Deserialize<'de> for Assets { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let vec: Vec<(TokenName, BigInt)> = Vec::deserialize(deserializer)?; + + Ok(Assets(vec.into_iter().collect())) + } + } +} + impl Value { pub fn new() -> Self { Value(BTreeMap::new()) @@ -105,7 +160,7 @@ impl Value { pub fn get_token_amount(&self, cs: &CurrencySymbol, tn: &TokenName) -> BigInt { self.0 .get(cs) - .and_then(|tn_map| tn_map.get(&tn)) + .and_then(|tn_map| tn_map.get(tn)) .map_or(BigInt::zero(), Clone::clone) } @@ -124,7 +179,7 @@ impl Value { tn_map .entry(tn.clone()) .and_modify(|old_a| { - *old_a = a.clone(); + old_a.clone_from(a); }) .or_insert_with(|| a.clone()); }) @@ -143,6 +198,26 @@ impl Value { self.filter(|_, _, a| a.is_zero().not()) } + pub fn is_subset(&self, b: &Value) -> bool { + (b - self) + .clone() + .normalize() + // Has negative entries? + .filter(|_, _, amount| amount < &BigInt::from(0u32)) + .is_empty() + } + + pub fn is_pure_ada(self) -> bool { + let inner = self.normalize().0; + let inner: Vec<_> = inner.into_iter().collect(); + + match inner.as_slice() { + [] => true, + [(cs, _)] => cs == &CurrencySymbol::Ada, + _ => false, + } + } + /// Apply a function to each token of the value, and use its result as the new amount. pub fn map_amount(self, mut f: F) -> Self where @@ -188,12 +263,6 @@ impl Value { } } -impl Default for Value { - fn default() -> Self { - Self(BTreeMap::new()) - } -} - impl Zero for Value { fn zero() -> Self { Default::default() diff --git a/plutus-ledger-api/tests/json.rs b/plutus-ledger-api/tests/lbf.rs similarity index 99% rename from plutus-ledger-api/tests/json.rs rename to plutus-ledger-api/tests/lbf.rs index c918724e..a71ac3ed 100644 --- a/plutus-ledger-api/tests/json.rs +++ b/plutus-ledger-api/tests/lbf.rs @@ -1,6 +1,6 @@ #[cfg(test)] #[cfg(feature = "lbf")] -mod json_roundtrip_tests { +mod lb_json_roundtrip_tests { use lbr_prelude::json::{Error, Json}; fn from_to_json(val: &T) -> Result where diff --git a/plutus-ledger-api/tests/serde.proptest-regressions b/plutus-ledger-api/tests/serde.proptest-regressions new file mode 100644 index 00000000..ef0ed420 --- /dev/null +++ b/plutus-ledger-api/tests/serde.proptest-regressions @@ -0,0 +1,15 @@ +# Seeds for failure cases proptest has generated in the past. It is +# automatically read and these particular cases re-run before any +# novel cases are generated. +# +# It is recommended to check this file in to source control so that +# everyone who runs the test benefits from these saved cases. +cc b1c17d89cb2c4087ca1f95b15b7f1312a37c33526bd37afc13254e8030ede155 # shrinks to val = TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(000000000000000000000001b3ac92cbb5c5386f63579aab8d275075)))) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1323a50422e1cefc776900417e9a2c65b7d62c3c69d773990eb55eed))): {TokenName(24e4a63b3550f034484bc3cdb4acd4e0f2ecaf9d92f804e6c35bf13d3cd06712): 4052692294, TokenName(62b4c5e42779e5f33f34884c0f747c6c8218016de3d3bc16aa53212fb57dca64): 806378676, TokenName(877f2c64113927b43e3174544dc03a14f318a0b341347e497bc599c54ab329d1): 1330682733, TokenName(e1665048fc1253c116fbdbd5274cd5831cd42c4a1e7866b3b347845303ce0a35): 3833112553, TokenName(fc96020ec9705256c2dd221c98f151b5bab9c6267e4815a04a5ced7cd0bc15a5): 2966980009}, NativeToken(MintingPolicyHash(ScriptHash(1a578eb605337e7975d3bfb7a499b7bf6c5dce67f5369bdd0c1b0204))): {TokenName(4fa6ea25c720b41ce50852f4c0f45714716f33761d34d0102d86912d1e31c448): 3970296511, TokenName(90d6b22e6dddec599e14280f3ca3ffce0d5e5e39125e2e71ad44d907f4c1a657): 3950474072, TokenName(94ed7a0cb19ec9e8e273b4ca593e96c58fd2ea426d85ec8f0fd10b4a34e0c3c4): 2568538332, TokenName(9b28aaca088d92bdadae12eea29f38f5a68b7b5394dc3f66d39eeaca18cba8ab): 1520145484, TokenName(a06be355b020fde56946bda558c5269a6b58e791ffc49616969ad6dbff2d449a): 1987977824}, NativeToken(MintingPolicyHash(ScriptHash(6bdd2b58833f83b83b63d4614fc519662d8d099351570f4397603307))): {TokenName(1dd469853e7868eb330d75bb018cca1a07c9da4d6add9eb250b84e6a5628c96d): 2144987589, TokenName(3a03221f8ef5c831853c598c6f025af529fd4fb3be46075c114be9512e0b5b1f): 3787481019, TokenName(793b8ea5d945b96f9223a2c2fc13f7fedeb68928aeee9724c240564351c7675c): 2478716803, TokenName(b743679afcc2fce2ba105f4d7029d4c9808a79fb95a7364ced89aa02288a76d7): 3505601434, TokenName(e77d85645a2a19dcdfe0201b33e77cec2785d8f93e70843fc5651f54a4024db1): 1813187621}, NativeToken(MintingPolicyHash(ScriptHash(770ecf6a777ee674b01d2fee75e086f381ec7ac3cf8fb372b3335614))): {TokenName(113f0b5ea9b6f4b886fe37e50cf7e9c1140dab723b444909fcdbe26481c9d6ee): 2174643095, TokenName(18ddc1bd38875cef3e85c309eeb6d3c542f5a08a59e2566b899e8a195021367a): 2966220028, TokenName(47545e0285fe6eb7b36e7d8bc9e10b28251056ae45898033d2c4904e9ee77e55): 2126438577, TokenName(5fd1ae3e2e71d5bc2ca6b63a91a3249bbc20bc1d02eace02187330dd37b62ca2): 585634295, TokenName(805294b21b804c232a573b26f4a68b025dffccf8a389bcbfccc9a1133fa949bb): 2574511089}, NativeToken(MintingPolicyHash(ScriptHash(aa5e20202d7ebcef3722640132058784312adbe1462de47de6476420))): {TokenName(83659f7546f8475b53ac412167261b41aa8fe39a840c0bb6640fb895e376405d): 1333949599, TokenName(d50096f8f220094cdc6bfcc09d4027b2c8d9aa76bc832135e3f759a79c1c8c21): 1139917772, TokenName(da48eb636c0f71f69265516ff18818a0abca6097d2b36d1941b96edd6fbd8f6b): 1795366150, TokenName(dea5d26f08da84f4d41c7bbdc80ebcd0ebda8529be91c633947707ada74d936e): 1440752344, TokenName(e81efb96588cfc9a3f39d05f2c5104be830832ba7ebcbfd7b8c360c84d74f534): 1487908621}}), datum: None, reference_script: None } } +cc 13e6892c12a0adb0a78d1574f42bda31a80466e9f11374a9dafa15c86cab2302 # shrinks to val = TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({Ada: {TokenName(): 3351355059690873586}, NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000c4a412e95f656d23a96328922a900d2ee5fc53f): 4007578882, TokenName(11a4f0f03e60e63d6d117f49ea2e9ad9da2c3035418335886be7219f9a3475cc): 3734091249, TokenName(14059d2a785e91a4de0fa379f6b692bb7ccec27f37fa7a94cbb52680be837267): 211916204, TokenName(16ec936c15c6efac15dc0a52edf49207429d581c5e81eb3c3c90715978771747): 813082854}, NativeToken(MintingPolicyHash(ScriptHash(1807c470904538fca75a8bef3c58477b6dc55e942d18ba7a77f7bbd9))): {TokenName(2ae27047fac788c1b510a203a57d9bdd18d990025f292e8cb1cd92376593b9a2): 3589724762, TokenName(2dfcc2f461b0fdaf1cf4d648674fda4882f84d87b013f3db8fb52863b40643a3): 2466834830, TokenName(59859fd60af5ea72e0ef60e81b6926ff3adf3ecddf7e70d864feaf81598e66b6): 3768615940, TokenName(91fae3ce742d4d6e474cbb5908718d07480938d5c4bf299fe3519f20fe5bdcf0): 3457482975, TokenName(a28cc6ec581dabaa93a22bcfff7e093b280dc03cb5d2c2d1f5abd93f4104c8de): 1750809165}, NativeToken(MintingPolicyHash(ScriptHash(6bac92a2a3351e841fd7ffc1f3b4198f1f47fe4e33ef96d2903569c4))): {TokenName(03edaff3b48cde1872af44ee6c92922cedc4411ee0338af1b171a21b21084d26): 991468614, TokenName(14b56c27a338c8b6b70ad4237c54ea412ff431593f43369eb8b494560c336572): 2996247931, TokenName(41d6bebf8662e7bab8f746e3bae279b7864ef7e0101454514a4962b7adf5957c): 2956570886, TokenName(51b4bf33fb1559d603262face6c4428d0d87945fdd682652bc8d7dd030ebab50): 2254790562, TokenName(624d2e1fb8df51befe3bf161ecc4cef0f77f706dc4e16aef853dc268904559ea): 1710855054}, NativeToken(MintingPolicyHash(ScriptHash(79a516785f9797629f9c2c32afec01bf422d2fb103e1f84aaa99326e))): {TokenName(127cc8a57b489b8aaaa254d27524c5ffdb98244864fdc99e10041e0c70b9e7bb): 2911123850, TokenName(26c7a7d0e6a64c4d28d5297f9d10bbc2c61f28482a4fa2c3125ffdf41075981e): 1533600818, TokenName(5e938908c855f0d5631501da422f9f6b24b79482cd3e4d7ad8c7d35717404ca9): 1158808136, TokenName(6bc88da6b280231b3648fe273be94f29bdb9cd8de23b2f3b5a93d8a7bce0ed32): 4220629354, TokenName(d912b414d54a571ef3d97d7818572f281a889160f906eac0159055c31d6ea72b): 2055194512}, NativeToken(MintingPolicyHash(ScriptHash(d7562bd106cc7fa0e674604afa71e913d2e801157f61e2a2c99cf4a3))): {TokenName(2b6fac61611a8c905e9b2c26862a67c4d07938692a627023a66e4adb0031bf83): 2124892851, TokenName(77b22426fd6e190fbcbc666f0412d896eff5b701b583f1b013c3fc7faf41b8c0): 2827264884, TokenName(d85fa013fcb417b5334c54dee99cefe8bf7ca8322f9bde074db675a6b939f701): 2233309242, TokenName(dd584dcedc92ae2baf2feb81349e5f696b6b9aa9e9f1fb58afae45a45b7335cf): 2360756438, TokenName(de403ae8065c27720e1f26fc9fe6b723a6268c5b092f23273c649795be99bd52): 1094933406}}), datum_hash: None } } +cc efb15ee8f6ff1c2694b1ad1eb4cf367aff3c071647f3e71ce13189757ece5224 # shrinks to val = TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({Ada: {TokenName(): 1943354996870588357}, NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000004): 474051645, TokenName(421f978c4ae0a4d161dc60fa8d7cd877511c57cdc806c1b5986deb4da430dfa7): 2488334975, TokenName(59a4c85bb911454672bcebe7310d375adf018772548276da34b975fedb2d0f8b): 4248903206, TokenName(e0df732440159f9ff19b6e9c8e77e1386e4a9aee48382e97fb6994e9e2056562): 741409653}, NativeToken(MintingPolicyHash(ScriptHash(46be1b75a4ce4ef920f10727da674b0204aacc63206d17949be033db))): {TokenName(1eac4f3046bb7931ae0b0c081a82fb1b8da200e975b82a168d17aff0fd83fc1f): 2085167816, TokenName(2b011d497091730c3b2d071a6eedafd5718bdb5bfb68f38020077ccba58eb0a8): 2371561513, TokenName(92907875642cc284c5ab15539232419c66924efc6d771e0a670dccaf18e3c781): 642398574, TokenName(a207c7f26b68b64fdd3e689635e804ebb83a81c8a702662a2263d55ee74935dd): 2426539045, TokenName(c9d904185fee6bfb95adb0c7a2830ecb11686817ecec7ec73d0c2dfb20a67eba): 2871074309}, NativeToken(MintingPolicyHash(ScriptHash(9815c5ed4fe164bd67cef3a2c3c1e205631eff1e1129a113a66b861a))): {TokenName(108397c797da52b1527f985bc4b2bfab81b8ac0d642dc85c359db03eaf918d9d): 298995140, TokenName(4fdf093700645828bf414ae34c5965832eaa415f24ff2ae94b960db3c21e9450): 397599212, TokenName(51723e9be351097934bcba1454bbe5fb56e93eb8c6a9974ee8534a04d319735c): 3375646872, TokenName(bb9c8cd43399152337b43c68923555a011ebf13772ad5db39e0f58bfa43bd118): 3516553824, TokenName(e074c7540f1cbf4424684374d6ff2eca7373201c384bffc055abe5ed95b3c340): 4233369511}, NativeToken(MintingPolicyHash(ScriptHash(bcc202ae2e4a8a7c8bac99cfdc7a95fe0cecb89abd6c58f8b5fa19fc))): {TokenName(36df927af2c2e9a241ca88303c3a3a8230f442229c263dc7a7a578d4a92a7902): 136786585, TokenName(3f464eeb4a907e94c68a5fd7c8ecfb94aa8aac39efb4717d7b473c88e31ecbad): 3425350380, TokenName(51b3a012475fe96a0eb494fd25b3956b6b6a6b22820dbeeae2812ef5b9e70ad5): 827307920, TokenName(5ab8ed6811129a7596182c90a0a655ce4ebc484dc46f6efc73412c6198672274): 901225683, TokenName(91433841d02999c7f0213617f82bb3876884bce04c8c784defc3634f0cfa6626): 3044386477}, NativeToken(MintingPolicyHash(ScriptHash(f825436d4f6be16c7323cf984f4aa271e77c4bc1fa677e8c3bcce61b))): {TokenName(311bed49fd59f549915fbd7d5dc084bcc18320157e680b76fc154d0bc4a548c6): 2380644840, TokenName(664ca0142210f54f7a7a717e0ee1024eed3f3e79831b52214206349811a4ffbb): 3567838447, TokenName(925bd975df9f7e47d6baa7dbb82dcc5a4c0be3e351334103503a51fbc69914f2): 974361472, TokenName(ab83002f92dad8b86c304e7f5b4ca546a82271c68fc8598ff913d3c7121aecc4): 2435923687, TokenName(c8c34606302581726ffef12ff4f51381796834d38292428ac7d55ecca2385ae1): 2493215310}}), datum: DatumHash(DatumHash(16ccc094024c712b49cf1c19730d8822604721ffc09dab0423f3cfe539c7a4f8)), reference_script: Some(ScriptHash(f8eaa89d7fb3767c920fc463cabc2be5409cd34f3d9ddea38e022da1)) } +cc 23e9ea394bb0feb9f097fcbe50e1c617ab693e281348967adecf030c32bf9d96 # shrinks to val = TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({Ada: {TokenName(): 11307790846066098720}, NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000001): 0, TokenName(00000000000000000000000000000164922cdcd23b8e8ba4570a33f8d41c321b): 1572532578, TokenName(98dcc17b144163371f67593dbd99919f8af1e4eeea262ee8ca22ffd48312a811): 4051480068, TokenName(b34394f9dbe0ef4c71502776a2cd2757937967d0a43fd687d0646ee0df046fbb): 1336019099}, NativeToken(MintingPolicyHash(ScriptHash(256b9ee71ab62a5faf06f4062012cdc740ef1395d0c433dcd7be01c7))): {TokenName(2a169c8050297a1c30551ec2772ef8d1e8b9d771d9523dceff7d7ade4e9b7012): 1796313873, TokenName(50de778b5c82dc5113d84c97bac82c2348e6e4a4a9510a91b979ef075e116ddd): 722992515, TokenName(a030f7592af2fbe6992a90ed642de3cb8c4ef0697ef3c2720360c2db66e851ea): 3391589749, TokenName(b89611b5951937e1d3de3bd9d012b6e193a5204cd2decd314703d737c5bd1573): 3746419003, TokenName(feef6c66a1a5ad207418108dfe9fc19136d977de6710bf4e154ca6970a5ffa10): 1788244832}, NativeToken(MintingPolicyHash(ScriptHash(779d9fe9e83cbb2909567f530a2ac9d3a2d6499d15b016121f0988c8))): {TokenName(1c65160f41a60a9039bc1c690e462a73a09953c926c0ae96a99e7934ec16eefb): 4206602492, TokenName(34760a4de83d356878951d56466b9ad69515a32c593ed87e79786254f8008de0): 3681013152, TokenName(473fa050cb5d36e2387958289294b250984e96b4775ab135ea7da523099eeaf0): 2635040445, TokenName(6e58bb62b49bedc75e29aaa03f0d0bbd7ff93bef7ffe65fc1f5d27532f68b0dd): 2245578388, TokenName(d218432f5a8c7d2a3dd12346bfa490e7fbe436c85445b2f01346a8d5542e731e): 963588298}, NativeToken(MintingPolicyHash(ScriptHash(aceaf9912f63b6ca6eaea4b4826189d2de6cc8bea808b3bb6d291527))): {TokenName(1fd79d7b69811162e4aa0986cb5327419b9470b2b5f72ef694e53d964838e458): 2111302467, TokenName(3e953c061fa00a1227226c11eee35f64f28b7dcd27c3737c8384984d47dd5fe6): 971503309, TokenName(54ddf4c6b1ef026116fc31c4d7a0566be4c2343997148e31031c316b8d10f153): 1492445650, TokenName(aa81e77e5415f608e37df77666506b8003a832b5b315ebcdf467f4ebd0afae67): 4271805958, TokenName(f84deba5e443ab5ba20e79c104061b7ed957b06a74025e901552c34f621ec60b): 770820613}, NativeToken(MintingPolicyHash(ScriptHash(d8df147ed8b9d38c064f9861203205505399a9111e96fcc9e7050a26))): {TokenName(6d39b06ee9fb5ac4d5069d2931c481396b5a1a1ac97d4e35148fc9b34252517e): 2549362015, TokenName(70858ce665aa73bceaa8c3f0880015f3d8f420b09164918aef4c6fd8e29bb462): 1916783923, TokenName(7413c1696410281fad993156d7df79ae2deb14e4aa61a4debf461fb1b5efad06): 2856706283, TokenName(7560669a950f1b8a24cf8dbd7ec0b9631f48a16c062740df3be00f1f12e578ac): 3487241612, TokenName(dcd392c34baf0b7e97cd35b4075162cb2530b8ff9fedcdf26cc47e4680e7314d): 253797432}}), datum_hash: Some(DatumHash(3156abae7adb8f67ea12ac36bf969dafe6ac5846329ff2163e35c65f6cd31ef4)) } +cc 543e956766923f668ce342e8ce383f28dd9e72231b64d13e4ceb7a71bb98a0d3 # shrinks to val = Value({Ada: {TokenName(): 14424837469395343527}, NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000001): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000002): 0, TokenName(0000000000010967b27594d209d7070e5a0249e42a094d95f948ee043439c25c): 1788463841, TokenName(30888ee8d51a9ed949b594f7a1f1a40e78da76bc7444504f1d911647ce8f9e63): 650020242}, NativeToken(MintingPolicyHash(ScriptHash(0ea196d3b8a562932397da7fb2c94f8082bd9e64283bab714e094ebd))): {TokenName(4d20c3abfb8f4b1bfdb8d242359a0d7957a19922db440ebad25d3c12a87e6e8f): 3304779373, TokenName(5a20e1e8dd1d4a7cf812f102cbb0de08581584861d8f629b67deb9de7f216026): 1842503113, TokenName(92d26c1737334d7e4fde203bf7c98b5b64834dd678e1150e5be0369b4e728e4d): 3651598782, TokenName(c29ce34659540f2c15969e476e3aea9bf24796afde8a7c0cc5005a029eedfffe): 1907117525, TokenName(e73f3f478aedb38b2f78527e3d56e1b1693f15e0e062f6e873b38bffaf0da284): 273641939}, NativeToken(MintingPolicyHash(ScriptHash(394528ab0076d0245ede5d7aa6ccf8b89e32a27b8055e2e54f6aacb2))): {TokenName(0ea975b7110055681aed9d579fb115ba5c716c6f2dcebf69320511e41b8ffc64): 1656666742, TokenName(68ceb85082724dd89fe00b2148ae1982d767eacbf6c468466030d7da3da5136d): 2137852647, TokenName(a44b0079b391a5c725e8972a9ca3e05e3631f9a2d7f754fe9c5e52e8ac0dbc2e): 4183214932, TokenName(ad8bad35c15d89c074b1aa70f6bc62ac10b489710e1dfe1a3df52cc503f3b7ff): 361263401, TokenName(f9ba51f47615c86af84e4a5c9e798244dbe28230498a2b9ef4b7a55630ae004f): 2929477375}, NativeToken(MintingPolicyHash(ScriptHash(97f25ec089dceedb7e4e47eba212a79d153e74e24446f48359a01c13))): {TokenName(66a14a5165c74437340c0161f9cbd3dc10b7d89992e1c96cbd0d0f0254b04545): 1726978085, TokenName(6c31dd856fafdabdc5250bc1d8f6c44615cd0429213748caa3ef6b93df3357fb): 192819734, TokenName(b34d6468a5043a1e1fe3691e1f345f25968c87d39b5cd6142bf526d9127c1309): 3572494951, TokenName(d7f1ae6f89bdb1c17c498e75cb3158c40e288171783c9cb032775edabe8a1bc7): 3350017561, TokenName(ec5ed545b36adaf6c1df0fa6acbefda2ad62221ba9cc38e37e3425a6415c0311): 2179161864}, NativeToken(MintingPolicyHash(ScriptHash(ff386873341b1bcaae8ab05ad80533ab4c4c4b6b884db97f59f968c3))): {TokenName(369f2ba9131db399e3b61838992581f68a4dbd4fb3aa06aa0e15041079447d4f): 1900606450, TokenName(6a76151ce50cf711d63c29c51b8f307b904bd1e412b90963f37ef83716de39dc): 4233782127, TokenName(8ee60f629af8e9fdb7f88009f5019bd14cfaf6230123d41a594a314c6cf0d91e): 3597316093, TokenName(cc4ef63ad384995a2416781166808ca8d51cdeb1ace960da440769edc7d29e12): 2153679071, TokenName(f503b52b34c5b9e621d3360038f55dc5242c1626821606aa11d19625875c3e21): 2091888762}}) +cc 52590d67b91538cc3fcd06d3e709aca62126f18b7363189db12383c4362fead2 # shrinks to val = TransactionInfo { inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(00000000000000000000000000000407edf8adb91cf89541e545e72496f07a20): 374039361, TokenName(1d0b453824ce557bf6fca45a77965a26f495bc7db5e70aa4bf403fe9c5e16303): 3558846317, TokenName(86bacc62b41afdea27a3ad67e2347e10655ce679e764a922394381ac19943919): 828865406, TokenName(a350897df7bac32ce8796e269191595ec98863b02b3537317d75681e84a8e429): 1731759626}, NativeToken(MintingPolicyHash(ScriptHash(110676327075ab343912349bb85ccb77019b8ae5b396e4cd416a3c0d))): {TokenName(32bc97530e7a592b2f8630e2a480118421275e58c196b5c3aa2889dfaef39e54): 4100972697, TokenName(49a899b2e5173fcf358ecf74bd9610b117d6bb75eaa6a002b431faa2c734665c): 1009551356, TokenName(91221cf10db922a1a209f75dda756b2e7df8a16318000456e4cb7c277bcf8f14): 2148844087, TokenName(cceab4a5173762e2c01973e1f5f1aec24418692a4797e0d01734877231b9258c): 1591908534, TokenName(e90f5d97fa42a95d2f7f69376fa00340245cd698a90cf200bfbc98f3e2dfc3fc): 1860292516}, NativeToken(MintingPolicyHash(ScriptHash(4bdcd1523ed412e4ab67035eb368ad1b759062c7a410ba1d209fdec8))): {TokenName(188fde12d24aaf8a7dc15aae14d3fffa150b888cbf14c8e182b21c092fcc4d59): 1244087303, TokenName(4edd8bfd264c0569408a288f86522ecf82c6515e487e62e3bddc7eb5916db2e8): 537602506, TokenName(55fb644db0c596e92bbc3c217e9a1394c3d007474209e2079baa1b5dca2eea0c): 673098567, TokenName(7652799c4712d9a009f7c5846f35efc8fcea5a45817428d6e4241c9fce120535): 2409979608, TokenName(c2d8d50e8b1319019b0deeeb9fa49c83b8322c23c82fa18b87f0f533706bc856): 1259902524}, NativeToken(MintingPolicyHash(ScriptHash(cc79a057808e4c804cd8304253deb5e21f0f58335d108a22d014d0d0))): {TokenName(5b87217cb1ff8ed33f592726e9be4256cded3f725aad00c2f8bae54de1aaea60): 1662572243, TokenName(624bbc52eca808726e6e76d4631e857472200e724363a77690c783bc9fdcfe17): 1857662724, TokenName(a390b7761fdd484ff1123e88ce732c064fc79eaa7de470b31fb5a6c3be75f12f): 630637122, TokenName(e295f370af39b67a23986955a776696000bd8e4e8604aa8a5530f238e82cc482): 3765641512, TokenName(ffcd7aa906d79906871384ac2b7b7147d0812417f30511793a4b88aa5c40788a): 4156446257}, NativeToken(MintingPolicyHash(ScriptHash(edf779b2d3812f0c4d84c6dd0c4ad7b8dc3438a93bb6081221b92024))): {TokenName(26d2c9596bcb2a6c2d75ea90a3049bb569d247286526a9b8251a2a6c011c5d73): 3986757752, TokenName(273a66461623a3e686eda206bcbba9df540c2cad7b4a4bd5bd7bbda79d4e9787): 422699215, TokenName(9ddab29f7066cc2261ab86de5a5dd75be3dd6fd25314f2232f2576bdd5bafa2d): 2898291720, TokenName(f7ff19017f0773b48a8ed759706a2dcb81c0a92f643a9e42c3ec6ead8271408e): 1872832045, TokenName(f89c670ba8b564019eb56d5625db89092f30d65c52b69d86b59235b6f84f6c24): 1227840929}}), datum_hash: Some(DatumHash(2b30dddbf7e4d84702f001d4cb2e44f1fdd265d349b62dd40db52545de220a29)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(3608caa8c9a441bdeb618bbc888410c67429df878a186df9c8d4667577437171), index: 2505034753 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(93ffdf43517f1d5fc59790532451ac5c5df8e740b939d3ada063ccc6))), staking_credential: Some(Hash(Script(ValidatorHash(ScriptHash(3e7260a6c88929d0a414fa09ddce0a82a85dd6250947b98d4fa4f16c))))) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0a230b516f31a9b7e773c59b1df65b53d6f28fe040ee4f4ebff14c90))): {TokenName(3d167921ef314f97fd811237208dea5796376e54d2fca024f5931f4cba4beb70): 1706344604, TokenName(93d5d7d5137a2188f63b632b1324426bcc18783b229b90f40ae6e57a9c872d25): 3878789206, TokenName(a16898c99e4d0d3355b7929794c485b59c33c4167c2e700a70fa54e03c6bb381): 1316155636, TokenName(d3f5d06afa3a7a686636fbda3a995c4695ce993674dd9b91f2e8814edf8ee8d5): 98210038, TokenName(e44c49b9dcbe4061398269076cf0577bd1060bc6a5c41d9961e21c3c421fb536): 110055982}, NativeToken(MintingPolicyHash(ScriptHash(769b33031842dddae11463eb167e1cbd4b97a7cf6d9306d298d3af27))): {TokenName(43a6ce056b96ffab54133ef9a5ae732d40ecf89e56eb64137f326604634bdd84): 1169283178, TokenName(4b2b68721b75f00c82af508cc844d778718153f0bfa2f38d04897dd3d684109f): 2296085414, TokenName(d0d45e806140bd49ed236ebba7b5836e1dceb49bd7bfd87c66d0fa2e65cc7059): 4242343236, TokenName(d2bb9bbb0726ad1f41ce1d1431e5dcbebf033938a53ed147c81df0a96d75386c): 1548897659, TokenName(ff382d5bdef55129479c3e9a1829bfb783a426bc4cbb0c7d2c860707b3ebdbc8): 816548483}, NativeToken(MintingPolicyHash(ScriptHash(803dc93b340c00d17d3d734f37d15364e305edb314f1bd77e427229c))): {TokenName(80434afd415c5dcc31b26d9b33adc917fd05fc07bd4bac40b8e433cc917e14b8): 4036724512, TokenName(862c26cf7d50ec6b3e2cbfacef5f7003bcb1bc67d3b9667c879634967577c913): 3483301905, TokenName(bc928483ab6ddd4254a8dc0a35743ca403535a2de7b2f5b7db96b91d0f5cf36b): 2789696563, TokenName(c2365d912588993a20a7b7ad04ab12447110c0029871c2f8a9879d0052c1fce2): 3274018622, TokenName(caf7975d5fa73649574fc3dd143ecddac576f008599aa80c3c73cd0da38a4498): 495832125}, NativeToken(MintingPolicyHash(ScriptHash(892d1a24e3527b900968d75baefee5b234d39e26bd798f2987b4b718))): {TokenName(03b45d84ed114acb7f74db5d0b3b683631fe25ae954f96cba5d55cfed2d5eba5): 1637132504, TokenName(4e271d6bd9e3690da6a38f9952ef6111abc0f9cea1a9327f1c3af748abc6f53a): 2401555099, TokenName(a5537dfb34e7f25509c97d600fce489cecbf57d22e72f35f6a3fdf726121e7f3): 3356064449, TokenName(af969adba96fa98725c9c91b709348d18fd9aac47948c8da7293fa9ac2e92396): 4281688255, TokenName(ec94e85bdc9d175489a6cff2285a1f24d8fc378bca3b07cccf0baa7f274e320d): 4256109274}, NativeToken(MintingPolicyHash(ScriptHash(bcd2c9ad98f80a84ab431a5a9c22d40650a8aa2a03e4bdd2c1cd20bf))): {TokenName(0b082058d082a6bd98f66b8411ad9fea78518d9e03e36d28f8aa27dedbfdee70): 78234265, TokenName(0eeae96e6388083152ccec03087524cfcea79e6a875b87af2ccad1e687cd8e27): 216657798, TokenName(778c0c8ce081eb594c3c9ce1db4c605d42445e5ec43885609e4e18010626876f): 3507391797, TokenName(be767ff84f4639851a91f78a2ac29764e03c37921840e10a7cee90e24ee2a816): 701477366, TokenName(dc5c0fc93198fb3feba93c0ba69c0332aab4fd85a1d350febeaab7002a61f3af): 1752261894}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(d1b645658455c3134237115a3ab9400a4a0b1c710bc123bd554d01382c61b12e), index: 3115642705 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(080939e906e3622f3b6f617b0172a9729df1ba466aca07c9d5f210cf))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(77b8331a27e268833e2b7af865d07823696edea7ff672bd2b2bfa8bc)))) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(058ac06a37eb7510ad1cb9bcbae06d95a7ca57ce31b994cfb7ba0e28))): {TokenName(0982a4e2b9a6e499319e22d3a0fa20813f0c3994d8cf9fab1dfc79ff80612860): 436208616, TokenName(1c5db4a3484d72cadad51957c766273aafc050f970e4b531c2d888406768b90f): 2299825712, TokenName(33d5aac8a293c1791f7df32aa4b2fe1361f034b7d277f4836a7ad4590af5f805): 2609244847, TokenName(9a3f3005afd4dc7580ac8021309ff09846c80c48e9b6117e4bc5a98c0d9dc5ab): 1331037799, TokenName(cf77241468aa2453665300d280b2c94586c75546ab205c634c42b0234d852fbc): 2916744388}, NativeToken(MintingPolicyHash(ScriptHash(3fb8d00144adb2d2f63f61d4012b172c854cb675b43899a9a342f986))): {TokenName(41daa9c61e4d9de30265b4df35f0ecac7fea5b5664ef44649c1e3245132f93f9): 1119356175, TokenName(6fd515c51e30a3a6dae3d4e563a8e14d81208906c93ece49da73abe0559392e9): 3894143546, TokenName(83c0dcc9640b18c255272c421366d651f360c471f340426293132dbabfae5bf2): 1619325732, TokenName(9680687326d471f9335c494cb25eb51c0d2b8dfa143732e0b7cd8c8ecf7e78cf): 2412586278, TokenName(b6ee08e2981a46b92bfc6c2365978f116a2f1677126a38f31c3861f60d8f515d): 2042428623}, NativeToken(MintingPolicyHash(ScriptHash(66d3e927c9db5ac0983e81b47d3a61215e0210095179f739ff39e59d))): {TokenName(118dcbe5303078a367a24ec358e672b0132c3be07e608242f06ce9e0b9cb7fd2): 2650236921, TokenName(320db7f8a3e729bda48d3c044c2006fe59bc1fdee3eb55d5092059e94e0fb2be): 1054482504, TokenName(470f191908a1b3bc0b28a94176a99e2c6c8d2cb155ba9c79b48f1925d1915dad): 365539338, TokenName(b78b4782520720d8e19139ae80269bdb181bdb997567221d102a2aaa37c5e66c): 376692965, TokenName(f392a44b3bbe452ded1ff4f8e3abaa82c6d6a57fcfa89f9a5a22d504a4bbd6af): 2377338980}, NativeToken(MintingPolicyHash(ScriptHash(6c71a1a7c5c43fb2cbcb2e5c1d3fabc97da44d2432bcb2dbc998b6ae))): {TokenName(2f415a59dca91e067ee0e1063d78baa1737856e6e0a6a4db89fa35169efb0ab6): 1444969153, TokenName(bf2ba9c840adfc871b11366de3b98c47117a630bb9e9450f703b3774156e6ca6): 789595036, TokenName(c5917f94f3d44cce3ca2f57b9d96a5a479ee1e303aba0a8cdbe57d5b7b3ea5db): 3567555179, TokenName(dce3232c49a4d3eb10fa3d5805c2caab98d1edbfa01e050c1b4bb6a8baca6136): 636556504, TokenName(e3cb029eb81c9ed25781c011bcd2067a592fbffc5aa286f6e4869f493e61bbb0): 2229180782}, NativeToken(MintingPolicyHash(ScriptHash(8f6fa4dc5f3b3435b5dd5e46aba6a1332dda83d58bc4041e21d159ed))): {TokenName(2f8e26285f838f215da993196558056a72b38c14bc83a5c436452372beedde3b): 2084712920, TokenName(3545998c584076d85b9d3e04aa7dfe4ddee44cae8a9a496e0892d2fa1711074c): 1583163728, TokenName(3a3bbaee789440cc16880f11711c1cdd1840cb9930e4b4834a83dfc7099ca410): 875965494, TokenName(8802f5a073f2a567a9fcc558a5a10deb3ea61c853e6901fc9e0fb591144d214e): 2198651115, TokenName(9558b1aca92f7b6f4645bdba1b84e258f545d4f18b4bb1e34bfb19355ed266b3): 1818984028}}), datum_hash: Some(DatumHash(30e7bc4cecc08267735aa03b6503e91c33ae4218e5bfcd7c1db26dfb426e01c4)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(b788a2ba61e9680498536f8b28daf3ad323a47ed6044b636041e2272715ab17f), index: 2534781838 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(4b8950e75906d624ab2b1bd938a7730033fa710b80575d3cca9216a1))), staking_credential: None }, value: Value({Ada: {TokenName(): 710163555261585332}, NativeToken(MintingPolicyHash(ScriptHash(31f30fc21616a16366ef9aa79038b498c89bfddca46cd4b9898f3ba3))): {TokenName(336c9708249e632b51249a465da394eb4c7755eaa5345d2cb2e18b99a9883d29): 2736465276, TokenName(66de15d9ac8f220385059884c847f1ebe36b71fbcf026d8988c54c9b33ee8164): 1033802914, TokenName(a12988707cd40b76c73e20b1fccbdcd441a60a8b7101fa269780687ef40b3690): 4098961484, TokenName(c16a762291b6ea2ed16cd879edd2351fcb938d8e07e4d347e1845501a34d708a): 1942554846, TokenName(d926a03adcfabde2dc39b451c540d59f4cc01ab04a62cc39e6ea85cf8063b2bf): 2882376297}, NativeToken(MintingPolicyHash(ScriptHash(513997501d96c4e3d87e0d4c5484c73acfeaca8b22116dcfffba8e5b))): {TokenName(234413823848dd5724e87c58870c9916f83bf835cc83a65ae13d280b6b8cdc0e): 3912994292, TokenName(31a73843eaf00472ff4cabdf736351ba096c628c11903646a8fe770fe8d7791a): 1527714607, TokenName(a734cb2591a9751a69e3913d21ebc51449065bf735468c623593654b962f5b02): 2431254021, TokenName(e6af621e3940f1dc0b6005eeae3a410f6876c539aed2fed7a7602ae1da80f0b8): 1458257302, TokenName(f21ca9056cdd1863de155e2cd3facdbfd5372655d0b82710852ef4d51ec1947b): 3043983130}, NativeToken(MintingPolicyHash(ScriptHash(c6aeacfc700f1802b15c94de96facedde6c384eacfc9c3bc33d710e6))): {TokenName(0150f42a12d4ac7ca8193c8286ed0d72c26cd2808dd724973511ae8b9ff27e3f): 3680159812, TokenName(4998b6923dc0350f8f64963bc19d0664b29d448430a67fc42d40e162b35f61c9): 3257935214, TokenName(868b7622c4b934723dcad517c217e2581c6587025fd8948ffa57ef933297a4cb): 3842022460, TokenName(bc776864c4181d25a63bbec854732922a93d88c981c1963e6b1716c3f17792a4): 1580999213, TokenName(ed32637548c1b6dccbcb94f6bf7562221301500e9c028379a5dac8280afc2452): 1635662888}, NativeToken(MintingPolicyHash(ScriptHash(cb2df132bcbba5fe4ef4c37a58faeba72408095b6e5554376441c799))): {TokenName(6c81a116a383a027d608a6a1cce43177b48ab9be9c97568b52126351901a0e58): 980604308, TokenName(776f6232e0b982d48f7ca90a2d8cde32609fe02c38a06146a6f3874d2119d891): 2470546106, TokenName(780870ed9c222cd5897c26f2126b7ae90af045a881a82ab84ca55cabb1aecb1d): 3928169243, TokenName(d7f334bca02f48525e60784dd0d69945319cae5df431e583434cf6cc4e9c647b): 1087682919, TokenName(f6b37b15d15002ce4d6d810a10fd7a9dc213c78b6392639a3f3ca7f5e13e7d2d): 3319137902}, NativeToken(MintingPolicyHash(ScriptHash(fa9ab505768e962dfda560fd76233795b5e68ff6d7bf3230ff1dc237))): {TokenName(5f02262215086aaaafdeef624a81b6fc0b9d72dc839d30369126036d963b047a): 1297264053, TokenName(8e25287a0ab0575eb64dedfeb4b7e94d91bc193486ea1eafbe5152ace98e8eb7): 2436422543, TokenName(9585a430900c1155782abc26ac10a1d4e8da9b3cc12c3d04eb0987e7f42a62ad): 24027131, TokenName(a8a3dd1f763b8ceefe4f828b6acb69833127cd49f1945c25e907999aa4d5f5f0): 4078987097, TokenName(e9000da8709aa255c9119a1b913a04d6fc90d149936eb938988abe3bba6dbaa3): 1463922281}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(4a58917cb81a66bd673b31f0725985620676f7342dc40c57621f5dd5ddef0cdb), index: 2237120378 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(dc6adc7152a569a1e6dfc6ea8f7de5663acb00b9a916ee26773fde5e)), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(07f3ada2f3cbaed53e74da54502d785beece52f456887289c36b01c5)))) }, value: Value({Ada: {TokenName(): 2187420690785327395}, NativeToken(MintingPolicyHash(ScriptHash(0f1f0bfe953adca264f10d0f36b98bc7c0e3549da5f3355b2ebb1f90))): {TokenName(2f5c5e1da40a7c4f5911f3b87fe5b534b5e9442caa4750362e26d3a940cd7ad9): 1749869049, TokenName(4e34cff6cc2c1e294990ee06385aa2d87feef581c4c0d18b5441d958af529857): 3386749994, TokenName(6dfa637c9edf7f237a7531d3eb097083c95655aa2bc74136dc863669f1dc7f8e): 3424902970, TokenName(96ea480d56abf56c4dda47713b1c90d1225b4d00cecc104e4dd8db51a5121699): 120786680, TokenName(eeaaffcc1c1113116cffd9c89b1c839cdd6dadb83660046b1f58bc5aeae42c13): 1935378831}, NativeToken(MintingPolicyHash(ScriptHash(416961201c75acdf68f31c44af7b0554b5472a90f512282e09d8d952))): {TokenName(43c11832e5f18a7844b82d95b5b050df3d38b41fd74a5f0f1947e479d1dbfd5e): 2308196071, TokenName(5a790a21d4b34e56a031c7bf91dd3347dd9e8f0e7142c21385bcf176617ba1e0): 2762092532, TokenName(5e1428a96f901496627a35371821057f6b1197bacc6968500788f1ca667f7de5): 1786463607, TokenName(9b8297349851f9282f4fcd613be37d77188d19a2c8e9573df52910030761dc67): 2644675782, TokenName(f4c7bd912e86616df00638c4e8bec5da29a9e30c7d2beec1b93fe2470cc536a6): 4029499366}, NativeToken(MintingPolicyHash(ScriptHash(42a4921232c02536a092966b7e1f7e844cfb8d2d6d6d109c74efb801))): {TokenName(084b6abede319fe531033d514a51211dd13f3b1fd2bd2c1ac463a314979babe4): 1031801373, TokenName(3caad7cc2a7ae5831de551a8b5df1ef5375a4505c0563c3e81fa69d11ea08ba1): 1340469765, TokenName(7cd76fbb5e86aff6f3bca788b308b7fcbbda7e6b6975f6dce8857c4f0ae574a2): 813064888, TokenName(c195267200a0ddd3d157df366b68a38d8bbce29e26a420d2a3731bf8115c5748): 665272959, TokenName(dc0e6c374d47a156f53b4be95d50935db6912557d7bdd05037eae16581f8bbea): 1921030566}, NativeToken(MintingPolicyHash(ScriptHash(8b7aebc7fe45bb6fb781710a83d38187da62ade2ad3f53ee909ffff6))): {TokenName(2d84c91747ddb380cdafd7eebe9d46d221dc7c94d2afb620a5a66bf9d575fea4): 49037436, TokenName(6fa872799f3408ff0d4d42cd62c9ea6554a09521517bcf33f0b8be988f2a3253): 3271104944, TokenName(97adba75d68e15a7407644beeaedcd8f63b5884c962e8b0eb34a819ce83ae154): 233593306, TokenName(bbe31681e67fe34142121e601f5e2b9644bf8f728a6f6a7026290f2dd82952db): 1750148926, TokenName(cbae3a183bc5ae195ecc652ddcd3b188f284bbdec219c031be824beb656d40fc): 3238415812}, NativeToken(MintingPolicyHash(ScriptHash(c9e14350262805ec43aff9e7d55b32ca41846b0ce0ab2300c5c675ba))): {TokenName(5c9b3e8e3e2b1a4ea0525101e9767947129ef90fbddc6a05622d05badf2738fb): 2427201629, TokenName(739c8bc0c52f2bfbda95110b524168863218f3835692bcac78c11400dbb93214): 3091824608, TokenName(bc573f5d85e3e0c1feaa6d806361d1ec7c45075c9c29d6f1523a1b265c070a80): 2339288559, TokenName(f094e25d97a677fb29e5da08a8c406a26bb84a82f6623e159fa08f6ff20cd5e0): 3772179716, TokenName(fcde86156ebb0a156c28b144aecc6a78222550a751ac7ae7e0539496db4ea770): 2816272552}}), datum_hash: None } }], outputs: [TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(14ce7cefdb3ffd53fb230b760dbce0ebe19bb48097de17dc3369e402))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(e64a7a19755505e403bf9ba623f3004d156daded23758e5e6597df76)))) }, value: Value({Ada: {TokenName(): 3204140381163145128}, NativeToken(MintingPolicyHash(ScriptHash(be06e679e27b762534f97a4a615fa6af8881833e159ae0cdc701d3aa))): {TokenName(5577d1cf8ce79d631922e020751334ae728616cde48563583e167916b8fe6ba6): 80422922, TokenName(a8e7f8c425a21fdaf9762b631438719d492020586337853be7f14636b0715d85): 1994695392, TokenName(b25ac4f1492b0642dfd5cacf0c424e54210e5a7f50307c7e56641b563d5b8e65): 4132953472, TokenName(c79c9bb99b410689217b7b03cb6c0c852c6532d494a417977a850cec1a5de666): 2925597833, TokenName(f7832185435abd19f1a39742376c292f4011ce0f90ea5edcc6cf52fc3a70d859): 1708481710}, NativeToken(MintingPolicyHash(ScriptHash(c1aeacdb9717886401d576c5db4ed7e39934a348d0fd34c9505774da))): {TokenName(47ea055512efb5a13c235e8eab36996f4cee8c26eb451162f721a2a82b161843): 3072137652, TokenName(5d162452b4d41ad2847d8140fdb3bbac45bbeddbad03cca2ef5b5accd75dd90c): 3139757021, TokenName(ae90d22adf87f70dc7f4f2f7e5a1c390355a0051886965358b9a5ebd0f732f80): 3717552077, TokenName(bf00a996eb8799484b37a699aaa4f17eaee0a6c31b42c4c72aae2bc6e39260e9): 781313480, TokenName(cf4ec8aa9e5374b7f69dbecde5c1086fa74200bc62672daf62022d33990209a3): 3278215950}, NativeToken(MintingPolicyHash(ScriptHash(c3b726543b9a3c64b9f1424f92cae3347b2b619063eb445f526352dd))): {TokenName(196942fc8fb02984afd653fbc389b5099e739915ebdc45ad5e77367dd425c550): 1852062128, TokenName(38d4203a5324de3b8c320b42e577a59563f469f510a92d953fa81e58abd3cc5d): 2566486165, TokenName(39e389a962dcd308d67cde5a32cea16385980336ca851be16c44fdf0b7e928a7): 413787175, TokenName(4bcb5b53b8a530bcd77776e97fe622b5f78db97c90ab801e4002ba237213a923): 1445582470, TokenName(fbf9db6e9878215925c303119aef35221db420ac43835ba17c539f9c538ac870): 2854834655}, NativeToken(MintingPolicyHash(ScriptHash(c8f52c2542aeb46959372de09adeaa83910059fdf6aa79791787e4be))): {TokenName(1362e2cb1b42cf5f247144df06dc7935c60fa91c451bcce69c512b981846cb23): 1234526972, TokenName(2fca898a35a43a85a9c9378c6c7a33e6e097b2eaedea11004f3c777a10d2ac62): 904175189, TokenName(7f1f9be4d46fd601b8a051ce503f2c19f5ce1ee0ed04eb1c724cbc399572a428): 3707513607, TokenName(877ad2da29efd6086b62ca5487c50147940cf9b44b5c35d7f505b39c0c8e48c8): 4102078761, TokenName(95d3031a95dfc9dba9027f6f9fcd6d8d2dad16a4b2a4d66702a123d38586c288): 254174447}, NativeToken(MintingPolicyHash(ScriptHash(cff14a45d976e85a1a8383ec5c945aa01ac47c8bbb22938539fcc306))): {TokenName(152ac3c0b6f871fcb493b84b9c200de7a0e4cbbf63c9c2ff471ff1b8d2dce339): 2115577256, TokenName(35dd497aec2fd036b1a94622d7d991ac6cffd492521424d9746bb985c65ebba1): 245872665, TokenName(6c32d1dada638009f2cc44102c43f9a02011e9ed5660692f3bd0908908d0d3d4): 2101072084, TokenName(89952bde248e770a36c839ed08bbe60011d502778037ddf12ebf662ebd896284): 2334605192, TokenName(9a3e9cc8a4c5f2931d23f0bb7ff2157912f85c47de221a1301288ec79450b84a): 892292307}}), datum_hash: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(1bd6451ac3423f9199ba899886fa2858b37127935c66173140b38b4b)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(2127fa9639ee45983358cb96beda3695bf98d62937793363d6c87b7b))): {TokenName(0440bc1fceafed5cb7fe218fda89311fc5f776b22886ba601758ffa155cdecd7): 2977875133, TokenName(864d6359fb3e30a135fafaa3a9f382ce4ae3353daf0d6fb8eef2aff9b06fcf93): 1987814508, TokenName(9df46bb33bc4e64dc49d68f967bcb7cdc24049fc543eaecd5f6c72d72ece35e9): 698488157, TokenName(c6b83b83d7da52833579eb92b302a92d4bf9f797fc7c73ce0c8451609f800ffe): 776047550, TokenName(feb81145f36a5db83955f1a0d9cd948ba194eeff2eb788dbe35db6b563db65ba): 2185584919}, NativeToken(MintingPolicyHash(ScriptHash(5d7f0f90bfc04135763bd67cc5d095aa485cc6ba5e28c1536c7f1f23))): {TokenName(4164556b03af8ce62b77dff178fabf79c5872d307eb7ae3b21e5b8318c47ccc4): 2436169930, TokenName(822fda798db60d45f9b1e8a2f1883a26396b1a3f789478f3cc874b05e092cefc): 1815487654, TokenName(8743900397f1434ff96f72f2c0149647707fa7a9de4ae1e97a21d4be8bc56efe): 405332397, TokenName(aefa2f3b87dafe90952ba15769b170196286124ca5a545e2d02713cf61033d3b): 373101445, TokenName(d69e8a200a8f1c3eb3f4d1c2d5df008614c57da2c5e4be42c1370df66b119dbb): 3675765993}, NativeToken(MintingPolicyHash(ScriptHash(73614882564e717e8a410b3f450f4a867cf392e38874e85a3c0cc11b))): {TokenName(15f27bf0e9ccd4380f7d04a2b41cb4ea9620ee6cd1832e4287c3c2865504aefe): 2990546610, TokenName(778d5f9f2038e5317303a339632c964485aa01a8f049281cdd395012d895b3e7): 2828286019, TokenName(a480b6b257de7d65544689429bd3685c94e4b3d4f02d4e6c2af8a30c7a9d96a3): 2960566335, TokenName(b5e5ef445306a87c68ad16b13db2cb11a43c9cbead8fa6d273a4db6bf21979ad): 2003513283, TokenName(cb0837dee220176f304d6c27fc2132b47d5051bd7de5135a4a1a668f0f72d1d5): 728382953}, NativeToken(MintingPolicyHash(ScriptHash(ed5ec393f4eb319aca49968d0252c036ffd2756c0a1cd6193bc55c8f))): {TokenName(05ed240a69d035eba26e6ec044f1e8c8ebbe7dc53946c1e653e92aa287c6ec2d): 855436172, TokenName(7d9b08efebc14a5b6b53b61b7d95ef5ac2ef93f8c011309b60ab82a3a3135b79): 2841148457, TokenName(91723f81c7fa60a343bf75316864e2e96b92b7cbb780d5418a266e3ae4926df1): 1751292367, TokenName(edeb6b562a1db406bb6c5061a8fe33db9788a81603f98358a55ccb7d85ee5407): 1261153895, TokenName(fb066e91e81ee821a9b65147971e9a5e0fdbe232ace09bf2589eb407051dd90c): 1058727688}, NativeToken(MintingPolicyHash(ScriptHash(f0e52737544c0b422de1f403f69af968ee9eed4246a5b14c282d8fb5))): {TokenName(203e46596645d1a7a4141708d351e374a10d9a7e43af147b6ed63600989cf304): 1552260197, TokenName(7859a7e9c2abcc99c35b556204ca58d5b0667d7dca41f52116685f137e4d2992): 3661700872, TokenName(9cd8a5d5c1ea8d06f0d0e668bfdaf9d0314d4e6e0f166a3c9a987989febd2e9c): 3261841714, TokenName(aba4d7563c0c020759bb0d6cc64ab5895aae74940c13e8b43d3709e8f8fe2e52): 168222759, TokenName(f38f7d8a057a07f22878680c79fea54fb49cddb18ace4903e11d2b0eff10c61f): 1154769142}}), datum_hash: Some(DatumHash(f7daced41605156921f79b3f24626dcd73a44e055f1e211413101fc1df5617e9)) }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a81191d7bb7ac16c9debe0843fc64bc9e25c5bc8cce600025d8628af))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(3511d437e44f5356364f24ffe1f8e9a3aa730317cb025d17bbf295fe))): {TokenName(34947371e5e098ec2030200a6b28c2a98720f0a9f3909ddad928f746c2e3b854): 4279030183, TokenName(4f59be7434a1bde2bdfaa5c99a3508f4ed60be02a112bcf7abf242aa85535f68): 2924357960, TokenName(9ac2fb572ee7673e9ec2cec0aae9ce3cd48bdde86662f9d8fefdea63fcb8bfbc): 1959595321, TokenName(c0af18379d7fd92561c7d60bca085bfbc3b5d942977c5b558d7105dcd834fef2): 3426883453, TokenName(f1858ee761571c36310108e946be719819b1827c30ebb1d482efaba8c25d7d75): 1657981309}, NativeToken(MintingPolicyHash(ScriptHash(52970355790060b77a1cc3fd46d7ecbaa2c91f10e5ba540b04ac4033))): {TokenName(0f28b2cd94631e1fc01f160c5fe7a728b689eed4516947e67452bce812dac2d9): 2912791554, TokenName(6c49c40da0821b8eab4a04262b389c1e8264819019e47b55ba10ba5eab12f788): 2004867540, TokenName(9648245b6d266c4484be7428a2ddedf31858af9e87f20eb3b11124afee8beacb): 497951342, TokenName(98fd3d501999a99b13c18a348e985516e71a437f19b6e6a52b435aa41c252655): 2647984422, TokenName(ee1f8ec07346c0c7abc29fe40160b76f43087e533fb65239f80016aee530a804): 2109310571}, NativeToken(MintingPolicyHash(ScriptHash(5936fe5cbf098e413db3d568db0c06665bab351a81058289376ef3fb))): {TokenName(00e4dfee874175678ff80fad99fb214753b3da0e0db7786df2c37253f2b6ae79): 3236125097, TokenName(2f2f522fa03885411cb23fd253f35c6834093afade46738da410fa2395771bce): 4246110326, TokenName(47b94183753e7eb7fd1bd09e28e2f12a8b3243067dbe15c8c8f7347050a27d97): 1554141356, TokenName(add3e8fb43d9d2ab4c7c9715bb86a680bebe22ff74ef3dfb0b293d3506c9ae37): 3188851922, TokenName(ef4cf276a25bc90a45e2c9126749f903d1cbb7f5f29e997eeb9c33c8c25425f6): 2831608162}, NativeToken(MintingPolicyHash(ScriptHash(d0f5da3e947b351534e1f62b7badaccfa9f564bf3becd4d600ec6d96))): {TokenName(29c0b978d88ea88f66ae632307f106121713eac900ff1c47f297e71058428201): 687422574, TokenName(7354bf72a2bc0b8eff89329d09cec4cdfc94db652068ad1ba8cd4ad3c1ecdece): 1889761630, TokenName(9306f02f943900c6a8af5858dda798204d637deb94f01c10b8d04e041c768c95): 1894987416, TokenName(aa3dccbd0029e01e72c9e8e0c074285e687548823c11c8173a940a3d097bf781): 1383955432, TokenName(b5818124ad743b4c585e07e835c353272ec009c322be1f92481ff88ac197035b): 1848236160}, NativeToken(MintingPolicyHash(ScriptHash(ef9c81fb293691f601959f875c274e7d991524c7084b65162ad8cc0e))): {TokenName(2e8d7363b28abb48b2aa1148b1d53baf69ff88d57edb957bd216ebe9dd476143): 3675083634, TokenName(5ee27d43d0a024728484d479467e2ac7da2365740d750fef37ab9474bb3eed86): 3545813450, TokenName(7c7607597ac9b0a863e6fe7d14c28882291f4c36886ddc5947069cd5f997b1b5): 4171611603, TokenName(80a12802a489ffc9c9961e3669ea18baf650369b26cb81727a05348673381859): 3351283778, TokenName(cfab13d81c0262e698530e522a69a979f8f7afad97c4e272743fe120201e3151): 3574590105}}), datum_hash: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(1366944a0dc97d42df4b5ef692da0b50d364b157596854224549310b))), staking_credential: None }, value: Value({Ada: {TokenName(): 13351802756234715509}, NativeToken(MintingPolicyHash(ScriptHash(3333493a6a0157506c83e5cbc9eb143af73e261ebc1da2e7b6ca4658))): {TokenName(04b52fc497106ff6332109b2695f6ca120d322475d948f150a5cdfa27ca4fd74): 3492284099, TokenName(1236a2f81af40e3459ef7519ced218c599fd4b0ea10e5763cc2f75ce3347cbb3): 4047643179, TokenName(1bf54142556d10216306606dd0017a42e32bcb5d8a0de7fa9852b36f6dacb0cd): 1683687412, TokenName(57eb0883f6678dbfbb4cbeea135f459ff288f7318c8e42c36fa62b0bd9c30d47): 4289493069, TokenName(a1f86dea69bfdee6bc21ba3b7c2c09e9fc60c9fdcd8c42365b51cd4540f42019): 2995685947}, NativeToken(MintingPolicyHash(ScriptHash(9ac99cf97e2cde774e506eddd63986fdcd865e0c9de39b1e3c9e5a4c))): {TokenName(37bb89ba393b3e5bb675deb498fc172e4d1648b44b7ef506e63a808fe753772d): 3129145689, TokenName(3c4568114829f9b232f1f9d956170107f29b8b0c5e8019330bfae84cadb7c193): 1156157674, TokenName(cfe957c3c20d32c87b45c9f88aa7d30e92b1dcf7d41b4db1fe2f40525b4ebd25): 1223547497, TokenName(d41ea6e7d657fa623551aacb2f8efafd9afc4dcc37e8081428bdef7691a9611e): 2198119818, TokenName(d5384a89b0e366d4c400de9d0e5b12e2393b8caf118a0c2b459d83e280ca4f59): 805613717}, NativeToken(MintingPolicyHash(ScriptHash(a26a00aa6e9f2117f9138c2a9ff5f76ee2656163b7118db1786ae38c))): {TokenName(4afed342390256dee5d3d9b5c47155873dbe02075749ddbedc599343b2fc34ab): 2929375856, TokenName(50d6046903bce5a7fbff220459139702f1ec2c8a57aeeb4e76b67379b6743efd): 2409147650, TokenName(70d35321ce9dd1b41711ae1b326241da331a35a6ccc464c727922068a67fbd4c): 1766121644, TokenName(808217e1ac34641897a824d1f6769fe55a1ee4fda6a59bd3f1f255edf1448f80): 1248412111, TokenName(a6dd643fbeb6d5a9cc8c318115ef704de77b11fbc6acaa06030937b216096f9c): 582545510}, NativeToken(MintingPolicyHash(ScriptHash(dda30ea82e162802f2c91c65ed47afaab607af9c4a8a5a1219400604))): {TokenName(5b41ac71275861ff2ec5dfa1de2990c19b417511ae4478d9e89ff7b483067172): 3449412633, TokenName(a3da564c457a2435006659f191f8b2c21b767fa8ada7f44fcea28708151aebc4): 3439364834, TokenName(b52601702a31b72c6fa6184f97e1618e6edc802096c30ec7a43273f82e83546e): 1845099946, TokenName(b81594580ed31cca2d5d2983743c2ef3cd467feb798cf9125bde3a1e54c9ffbb): 2233546504, TokenName(de7a95404a66c0064191243f052add40850b9d41b362a9a67209467d6cce1af0): 1194625508}, NativeToken(MintingPolicyHash(ScriptHash(f6af65a78fbbdae33ffa1dc33a7d00fc9d55fc9c31a57b595ac21f73))): {TokenName(199ae885b98c11ce28a6aa0abc2fc4301438ef1e5e2adf9a9dd2c65eae8bc25b): 1672237215, TokenName(28b5c3af3d1956aebeca97354c6c5f1fea5bc4cdb96306cfe42cd8b8a3834e02): 2522397673, TokenName(840c246ee8e65971214b2ce1842a83fdfe9dfccc2f6ebbaee6382afd0d548d7f): 3508342103, TokenName(a7e5d3b09cfa389972fcf38cf5c9b4669bf3d8ac8ebedc8f93188cf8bb102202): 1316451132, TokenName(e11fdedccb9d317851c500be87e44ccd447d335a8587413b372cd27e5c9f7511): 2841616680}}), datum_hash: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(247ec5924a2e8d049a1ed1a7c030b7b945f77481fb4b4e905017d562)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2450805533), transaction_index: TransactionIndex(3725415279), certificate_index: CertificateIndex(992538979) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(3097ab6b9f11ac41b2b62a2b187376bdb749894df054363cf85091fe))): {TokenName(00652e47ade1743699fd5b1653446d5f1a1feba494061001f85f78d66b6461d1): 1911922049, TokenName(4ee8a0136cacff3b1b911ef1ffef30296fc068829bf2baa77467f15c03164e16): 1242398632, TokenName(5b9ad3b1912c0bab37be2e540abcbf3f2ccc0b03ed815db3afbe66d1f646f631): 4054076827, TokenName(cd32139a69d6b6325de16431451cca2b91e574e7c8178d0e09d5fd99031eb492): 4287503836, TokenName(e1c9456c964d607e97926955eaaba6c741212527e1aef265f723a485cac705ca): 1886959299}, NativeToken(MintingPolicyHash(ScriptHash(5ee25ce0cac04974b19bb292e6125bacb4745f01cade2a38f2fcddcd))): {TokenName(40106f4e64081437699085ab258ad8cb7caab53c0bdbf1d3c4d26b626ed1cabf): 1982887309, TokenName(84f985f8d580c7e5fb8ebfcf846596871490e5d7cfbcd7e3ccc2120d305b76ad): 2169968749, TokenName(8dba0028dd4d76f77fda3ab995c10060320015a5d60e783f2a08bc46b6dc0413): 4127905617, TokenName(99c65e7a82bd3d31b90bc08417bbf1dd5d9792ca23665cc19956d7d20e05efd4): 770108781, TokenName(9b0c9da4b82f393883b6a1acaec32469c887a16f9c53cbae086c6ed5cc18d30e): 3974021517}, NativeToken(MintingPolicyHash(ScriptHash(6e24ebf6513091773ebd4294fda9bd6b83e64c2a0353376dec8127d7))): {TokenName(0e695a2befebae2598cc133574f4c82e9f90e9e3aa78a3ecc97bc7e36a18ed71): 3082909143, TokenName(770727d6f3e76fb630db24f10305e3bb455f6c8375f5f6c39002b9bb9cf502d7): 2029396459, TokenName(88010c000289f7dbbe362b895b698f3a0b61cf43a3f01d681c122797e30d7fc4): 525582582, TokenName(88d3306e41a945c166df7a4e76593f614fd48eb034f2cd4ba8355220b223e264): 354710608, TokenName(c9bd4cbe78d3c0a251480c0449029b3dc6de569e9df872fb3829953abba97485): 4143978965}, NativeToken(MintingPolicyHash(ScriptHash(87689a7b197a246ff4933f38181eb1a772a051356fc9f16c21fcf4dd))): {TokenName(99861eecd1fb25e288bbc4eea32469478d11707fabe67998a28f969fafe6145f): 4004005865, TokenName(9a7c48fc20693b162e4f3f2e274567b2ccb4e538f4a88b3fb88d9b5635253e8c): 1034688184, TokenName(cd916da66c003e332443a3c64cd79aa142abea71d8bfe2e2de4993ed41a77f0a): 3233870665, TokenName(f69d57f73c6f35b14fcfeb0d75183db23e64ceae817984509b83537554673aed): 3999837128, TokenName(f844611c343db68f6d9bc7e8d927de6af6837fc6bb1c94d9502a4b8b72537644): 2503352227}, NativeToken(MintingPolicyHash(ScriptHash(d317388e192a34f51df8eec430e2d53aca7d04ad315e0e3074af3fe1))): {TokenName(10666a619d5c83a471e786f9b81c9ed1a7a573334c4667169f01211e1ca0b58b): 314137795, TokenName(11851deaaee3721c83ed53b211e63356dc7afa3f9f1dc9ebfe75e98f9eead160): 3135406278, TokenName(8d2a1bfc081a54fcdf59523de72bee9512b4392c07d61377fb984204e1ad82f8): 1963530350, TokenName(a00d6bbc3b0fe894277ffa8d0e23d9a23d5463e8d8c426a8ff45b29a3528a5b0): 1440594174, TokenName(eb7daf04a6aaf9b17ae0e21436c3c694b2531f31d176f8fb0878f115757352ec): 1860614444}}), datum_hash: None }], fee: Value({NativeToken(MintingPolicyHash(ScriptHash(4f4ed647979104581198f38cc33bf18dc9d39eccc4c7847ea67be5f2))): {TokenName(b277a337e0f7c277dbb940662f774374d0cd4fc412e1c82f75da3111527ff50e): 2712245377, TokenName(b73f41ff0bf0fd19f4b91687b0146b48074634cbf18429d8104f0f0e806c47cf): 2724470942, TokenName(d6d0537b727c896b09eec212320aa1326488a794c446bb4218145803866cc1ca): 204951555, TokenName(e5fdba2517c9236f6727ea47f6269686e7159ef08c1376f18145331d7272b16f): 2946639197, TokenName(ea8f9bd188f63366fd4b36751fd19400e1c57b78a43ce9795b57b64b7c13b9b6): 1514162206}, NativeToken(MintingPolicyHash(ScriptHash(5c7fd335b0394b5b2fbf0894beda0a21f0db530ee5df4825222da8b6))): {TokenName(1d2eecaee62e606b2b409f07344c89249aa96f2f5648df7fc1bd1a2f7e1f0abe): 3149830167, TokenName(4640b5aa19c9467a8e2b882cbfd05568a123ea28523cd49071baa3e0aa240234): 1114408917, TokenName(5c29ed6d0c1270e719022fa598a198daf6cf61443d0fbf381949426102a0acca): 418466267, TokenName(bf86fad3ceacf34cbac8250997970e1eddf0c80c37447f41a0d81559026e6da3): 3114176567, TokenName(d487d6d1f2f03e7d5088ce48f660c92a1eb9b233b7a5f583229691e5037a9636): 371392486}, NativeToken(MintingPolicyHash(ScriptHash(96e7a3aacfcc19415ac2dd90d7ce6d66427ba594379d42f3b5b4e375))): {TokenName(17216189aca3503be5fb66d78f3b73839cb2bbc6fd9d9b281c9b9c7901bf102b): 2512001971, TokenName(18bd046901ab530e298d0ba093abd80e227e7b1fbc466c95d35d7030eea9a286): 3202447959, TokenName(2f02812f7bb3eaecdbc92fad8258f5d6b3db66d3080427517a8554050347a9e9): 2603671614, TokenName(66301a2107d40924082226d0f22e7b795009900f7a3a0328899435d439da6286): 403207560, TokenName(85fd2679f45d1d6b50cb36f5d64b85b65dee962d5be1bff4f57b377a8f35e7ec): 397536103}, NativeToken(MintingPolicyHash(ScriptHash(a978ad1fbfa0f0754fe1e3264ad0e7c92d4d23aac03f2ae51ce83057))): {TokenName(8ab36cea5ef850b0ce53f382c68c621ea705d5495f86db0cf55078f656b3ac23): 3764521872, TokenName(c98797bb1838a97368c48e0c601f437ab8ae4822c38f93403be750a123c5a1a3): 2621956, TokenName(e178df31fde9c97f1228734be022968f16f7fe4d78c9a92f966b50e679c9a72c): 235299451, TokenName(e74032fb845768d55c40a00ab97900a863d7e406f5baf84a349ac4e84beb38f9): 2784055924, TokenName(fdd46af0d5d1310646186a959be3b1b317b92922110841501c8c18420babc19d): 108793125}, NativeToken(MintingPolicyHash(ScriptHash(c7d0db00c2d19e9eba8c3b9f619fcfe0e43046cd8117eefad382e389))): {TokenName(30df48f1d8bb627bb182a2da47677c29674baaecc70d1e80db35f3bb7a40aafc): 3190993488, TokenName(9421c103289b7f6c602ef2ec25d041cc7015dd05d741997aeb30238043f7a424): 767833255, TokenName(ad475eb7e695eaddf149b7bf2ee885456b046dfa6838b446d888c9ef8782df8e): 2424177239, TokenName(f55ea0beddfd731499ae4dc3018046918aeeb3d461cb2a1309ebf87903d31c4b): 827024207, TokenName(fea6a093d67c81f8161c51bcc0d9e137cd97042bb4f35629fe7c96558b085a7e): 3082106472}}), mint: Value({Ada: {TokenName(): 4484255954812903887}, NativeToken(MintingPolicyHash(ScriptHash(16c6230f2f56186845dc2008bfa823db71539a5ed563f176250edc06))): {TokenName(35a0d926f60cbec1e088955fbbeb5aeec5203e3612dee4a880bfa997e17a684f): 2465735697, TokenName(6267b28a797103321be91df5a3b7c199e16d279dce457f8a856f4b2517313ba2): 251472862, TokenName(7caeb6eb3b2e9b7c902821836e4c101d49747799c9b79d8d5cc582afbaf6ea34): 2418753347, TokenName(9cd555aafc3e8fd7b91ba539f952cf1624b746af7216b7ec661dcbce62b3f284): 1685614024, TokenName(f831a804a92fe5bc468aef8db7482d967763d1c0ebe41b1ced5f4aa5f69e5692): 2725077761}, NativeToken(MintingPolicyHash(ScriptHash(4af71503e23015e31ff35994b1cd2c820b484baeb21fec7360392b1c))): {TokenName(26a82b25adc3982dfb2e1b9e9ecd78db0a428768ffa6304b6bdee9ca7809c947): 2509698740, TokenName(544b3d47be42de0880c70db985bccdf4368e7875d2f655f20d721363307b63d6): 4111962369, TokenName(54c885afb2f13b7aec9ed0effbbc81662ae2a0053f56f8807aa62e09d537ff24): 4044612435, TokenName(87dbe312baf0d7feac7548f9a155a55569ba7aa6c13d78b84eb09032ed60ffe7): 1674068454, TokenName(bfb1a81ac798b327de792926e337cb4899c4668a8031ec408d0cb98af0134564): 2932569205}, NativeToken(MintingPolicyHash(ScriptHash(506554a77c0bc35df1947eb3250fbd9e292f4432a4a2ff74128a397f))): {TokenName(439d05f17c19d161244fa33839aee5a99bd0d1d96ef3ab76df7030e52c45c774): 267031124, TokenName(b78a7e2d0b8f0f0c2d681890b1993e4d07475ece09b8299b338a59d5e34ef741): 26262469, TokenName(be5d2c2298065f139f51271c2152185f1439918931e2a01fad8ca4679903bdba): 3444892365, TokenName(dba75da7e05379972a38b0bcc662964b2c54c90d64c4827248ff7401f23faab9): 1821064483, TokenName(dbe5b65491100fa42fe74d95699d52141d711578ceb72e76e80b3ee6126ba736): 938105178}, NativeToken(MintingPolicyHash(ScriptHash(c52708db8b7bf379da28b854585b9e41e1ef4ddf280637242234c7c3))): {TokenName(39304d824080db9a5f92393396fadb520caf77b59005cdab0e7577fa3302175e): 1358842347, TokenName(9625a14dec1bdd9c5213a0bdfa94b1f2c1a0b7df4ecb242793c14a3b31372a31): 1058507408, TokenName(b0138894459709be46c58cb72296528b733914a9180fa065276c9b0d6e3903ae): 357692970, TokenName(c8758a70c8f7c460a6b8ae7abfdfd1ca71ee6b3ba1ad0715ff4e73ee185c2fb8): 1430671755, TokenName(d1c16ca432c4c1cc92ab405a97187a95004a3fd080124fde773bad74ace36b5c): 1799919870}, NativeToken(MintingPolicyHash(ScriptHash(d5094112526dc3c02d9b13f9b413d6cff40fd5c49b7d527ed6c77f41))): {TokenName(16ea7c5ba3b66835508e420048d0dd8d41dc2738491eca2c3abb90e44288e86e): 99281503, TokenName(1f993c4e33549663b914e109b07febe0a75720cd4960868b2cdf0a5d5843f22f): 1347731095, TokenName(2139f3b6f0f5a9e72ae394625f74e1a12ef8532cbc0ac071d67fbb3b95ff9698): 3585489705, TokenName(6afa274e6ffb96915d6db3194efecd2dde12f27aa9c5c34df9696bb502175d17): 3202351991, TokenName(a84e820c2e895166915d731acf01b890a13e90cfe15270276c6a3768fe0d1544): 3632298943}}), d_cert: [DelegRegKey(Hash(PubKey(Ed25519PubKeyHash(79a0ba43c4dc29215aaa34288b7b224ae89601f3fc5389d20766f02f)))), PoolRegister(PaymentPubKeyHash(Ed25519PubKeyHash(b95b9f24ec9eefc8844d44457aaef71f3e8423fa97bc73fdd8eaf96f)), PaymentPubKeyHash(Ed25519PubKeyHash(f54ab714fa6c5a7cae872c8cdb41c775bda9884f584a167ece55bfad))), DelegRegKey(Pointer(ChainPointer { slot_number: Slot(3263202212), transaction_index: TransactionIndex(1615444231), certificate_index: CertificateIndex(3527070464) })), DelegDeRegKey(Hash(PubKey(Ed25519PubKeyHash(8615ab504d3c130a55f6a0df284c7567b4a364d7f3cf84f7a198b4a1)))), PoolRetire(PaymentPubKeyHash(Ed25519PubKeyHash(f8230b5a2e33017dc500b50a4d6ca2e972684a1a4ea702f02847fa35)), 233332572)], wdrl: [(Pointer(ChainPointer { slot_number: Slot(1937832358), transaction_index: TransactionIndex(1604387045), certificate_index: CertificateIndex(2991349637) }), 3602438527), (Hash(Script(ValidatorHash(ScriptHash(f80da816a225e3d053edb7c0a4359ff32b912a281520270d46198cd2)))), 2565874968), (Hash(Script(ValidatorHash(ScriptHash(648918be182456922c4fb9b12bc741aa21d65671a89bae866e4a9b22)))), 537790796), (Hash(Script(ValidatorHash(ScriptHash(78068cdbff32a36b7e5cba9020908329833f1f4429b661fb50aa4b32)))), 1854272316), (Pointer(ChainPointer { slot_number: Slot(60968441), transaction_index: TransactionIndex(139981048), certificate_index: CertificateIndex(3245224625) }), 3908710790)], valid_range: PlutusInterval { from: LowerBound { bound: Finite(POSIXTime(27131238)), closed: false }, to: UpperBound { bound: Finite(POSIXTime(706034310)), closed: true } }, signatories: [PaymentPubKeyHash(Ed25519PubKeyHash(ad36d045a57bf97ee7bf174af25891d8353250891086da213b593038)), PaymentPubKeyHash(Ed25519PubKeyHash(963567c0e649c14a9a382c29c9dce945685d117d6d1925e142b23585)), PaymentPubKeyHash(Ed25519PubKeyHash(ecbdcd8fcaaf29f36fd1bcd6bd10adc07058e101096d7ceee5679218)), PaymentPubKeyHash(Ed25519PubKeyHash(62c7695cafb6cedaa6d472ea0a940c61be92e94fe9c16ac2120746f2)), PaymentPubKeyHash(Ed25519PubKeyHash(b48e241660b29965fbe69fe7715ba77da52b44b7718193d6e62c8876))], datums: [(DatumHash(07c4afac8aa4febb64542fbcacd4302ffa63b4e839c2afd30e1f67fdfa6573de), Datum(Bytes([155, 31, 63, 241, 225, 191, 146, 49, 122, 27, 155, 59, 207, 177, 102, 7, 227, 113, 176, 183, 38, 44, 146, 16, 184, 183, 224, 244, 49, 179, 141, 252, 227, 31, 107, 159, 204, 75, 37, 33, 230, 81, 148, 155, 105, 192, 129, 255, 178, 64, 48, 55, 214, 70, 87, 226, 70, 79, 147, 223, 60, 247, 33, 212, 193, 70, 115]))), (DatumHash(5721a5f6c687c22b7c570d6aed4fffb594152802ea233d3d40f7e2165e6a1e64), Datum(Integer(-12882160068102115190))), (DatumHash(edf391db47922f85345ad6d6a2b4b6b3127e3cf3b7dc3606a0e7c906536af5f3), Datum(List([Integer(3907966504468315242), Bytes([39, 242, 75, 167, 202, 196, 13, 129, 184, 13, 32]), Integer(6525451893793250397), Integer(16764816957189074843), Bytes([245, 208, 254, 72, 135, 209, 189, 179, 20, 1, 43, 244, 216, 38, 21, 7, 126, 228, 245, 110, 165, 170, 198, 223, 176, 165, 229, 12, 38, 174, 117, 217, 27, 24, 203, 254, 189, 198, 33, 102, 154, 74, 72, 183, 186, 228, 67, 225, 143, 174, 63, 161, 81, 221, 188, 139, 227, 111, 43, 6, 80, 79, 73, 28, 203, 137, 46, 118, 37, 139, 249, 32, 89, 129, 50, 112, 39, 212, 208, 182, 211])]))), (DatumHash(c480643d03944212c448a34b299112f4c5a413ac456d2187d7085aea1fd7540c), Datum(Constr(3887588070, [Bytes([15, 124, 53, 171, 89, 35, 14, 221, 6, 253, 13, 15, 211, 61, 118, 42, 152, 184, 133, 131, 153, 99, 214, 173, 163, 85, 5, 92, 129, 247, 170, 69, 3, 248, 43, 108, 139, 24, 176, 6, 112, 115, 220, 6, 136, 103, 184, 64, 35, 72, 163, 232, 42, 166, 150, 140, 69, 230, 152, 230, 175, 178, 187, 154, 42, 135, 179, 103, 159, 67, 177, 52, 243, 20, 216, 235, 235, 215, 209, 60, 197, 44, 103, 10, 210, 91, 97, 24, 184, 73]), Integer(4317692085593261322), Bytes([24, 52, 41, 140, 0, 221, 148, 139, 145, 76, 209, 48, 197, 219, 62, 18, 128, 191, 62, 48, 19, 212, 113, 181, 225, 186, 0, 153, 64, 136, 32, 142, 234, 231, 156, 97, 220, 124, 133, 7, 18, 28, 144, 194, 60, 34, 42, 155, 151, 65, 34, 15, 54, 121, 97, 60, 95, 127, 169, 73, 247, 202, 125, 59, 120, 164, 36, 86, 149, 191, 216, 61, 237, 100, 155, 130, 195, 42, 86, 114, 207, 124, 131, 153, 4, 201, 152, 11, 47]), Bytes([188, 95, 116, 198, 186, 117, 13, 98, 227, 200, 223, 87, 163, 7, 168, 229, 216, 128, 12, 168, 243, 170, 57, 78, 108, 124, 24, 229, 141, 222, 120, 34, 65, 225, 73, 22, 58, 84, 155, 153, 13, 219, 47, 183, 55, 37, 53, 20, 113, 215, 239, 175, 148, 237, 27, 137, 111, 213, 124, 182, 18, 42, 145, 221, 124, 82, 24, 193, 62, 156, 159, 136, 187, 183, 56, 36, 19, 91, 250, 53, 186, 67, 182, 152]), Integer(2739006915478014080)]))), (DatumHash(5ecfd3be33d50f1700eaf26bc89b5321440da25da6a6b3cd28239dc2ee862c14), Datum(Integer(-5478635978075832525)))], id: TransactionHash(10070c59ae8c54e6a55f5fd485be722f2188813a2d4ee85b967c1dabb8844024) } +cc 5b67775395d00084146293e9c736691f6b9d7e7c02bd598321e92dbe73e96092 # shrinks to val = ScriptContext { tx_info: TransactionInfo { inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(000000000000000000000000000191474a76853450311e459ea0bcbf))): {TokenName(02b8261c1a919c2a4edc1336f3f800f7d3ce205b855b663715ee419987f88bd9): 3741398057, TokenName(122e280b426bc6440c4914bbab64f6716c473cd7a834e69121531a5fafb8601f): 654288552, TokenName(1ef9add2aa5b5e0398f77271c961698672d4d5fa325e6d013ff5c56bdfcf7cd3): 3559370096, TokenName(5fb8fd82d40a6718a99e9dfbec998930d8bbcae694172c5fda599c34109186a4): 2326038209, TokenName(f29f9fb017cf64c52e99aa6f929a69a338ce851fefecbec0de399dc7c17eca2f): 420951512}, NativeToken(MintingPolicyHash(ScriptHash(09ad47fb5d427c06ead6c080704c5b54db22f8839e5d3dd3d9f3be7b))): {TokenName(0cbb0b58cc8fe06f68f1a051bd9b01139e29f9df94c41af7e9e613ca3f24d167): 3210002966, TokenName(1bfe601a6acbcb51b1ddb78f72c513d2bf675f083f2a9cb11b6271c23ef88303): 2878634423, TokenName(68c65ad36070cb103054fe517afc32f834795cfb7b396e1f81294f3c8ce0a7fd): 3424265698, TokenName(77cdaac6df8e71fbdfabdf10c59a8ab916d164f6f47962e1fcdf4a4fdb08fe57): 186575199, TokenName(89c7383b9b247ff0dc033db43bfa07e41643607d4ef1f723a9042aa20f97628f): 3027129771}, NativeToken(MintingPolicyHash(ScriptHash(5c6028075971111bb7d5a311620a9f9598a55012b17fcc9bf34d8e51))): {TokenName(0a4881d8358303a6783dff3d3a73e595e5f8c01fab43cab26b5cc9a5a2adae59): 2460376216, TokenName(2345badbe25dc64f27c6d95aba4765b2c8f296f5e289ecdb90682206f6cc9359): 406994353, TokenName(a49de8d5803e9b560ce09a8af3f35eb350bbe87c8fd05e5ab07d1346bbd1059d): 3808232177, TokenName(c01e87fef3a79fd3341efbd3f18ee3d7823871582944fb9f21554a2ae9c2dc03): 3723094029, TokenName(e1757f18a06e8f4d074b922cb8df6a2be2efcb009808683347a8556521f07065): 820504965}, NativeToken(MintingPolicyHash(ScriptHash(7c6669cdc6f244e73658891d9b1e325f86d93d90a9e7502c797f2365))): {TokenName(155b07443913def1ffc7519d09512b79cccfe7ddf41f88f03b40e75a018b4a50): 638751769, TokenName(1e70a74aabf7e7ffc1971ca0729f393f0ed1c62350688e19d6c3a0315bf5a1a2): 3770825174, TokenName(a0465ffbd5acce57dc044b1268690c8fda0b913138145471e5d6e0fb3f15adf0): 1179534545, TokenName(be97d351b0dafe427bccf0f681c003c0bc89b06df02f9f3189195da954b7de01): 1552631648, TokenName(c0dfc617ed50ddb1e558474e6279c9e04ddb7a7c86067263b2aca5723a24687b): 1913074831}, NativeToken(MintingPolicyHash(ScriptHash(a3d435f2e7c8994929ba4e35d582110837cfca86e09ad3fa3a211bcc))): {TokenName(00a5d2f993fb2f2b9e81bade8ab3bf17401ace6d37620dbad95b34dfb864fad4): 964051070, TokenName(0259879921cf5b941f55f2c39a89ebd0588fd001e5eda5850c64f9389e1ec74e): 4066364501, TokenName(12121d337fbc5df3c61ff51a6eda2b32a635a141767f37ecb598711960a74398): 200844655, TokenName(421e4dec5dcd04567fb0722a1e22f09be6347d842c0549f5764629c9e20d6214): 1508702313, TokenName(661d5e817282516b0bf2de71b7da3bf3f31eb02b25e973e147cbdd9659f7a3aa): 3223840276}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(90968a9f232f9a4040c212665057fe487e28ce184d4306d903f0e34f7c224096), index: 3641377350 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(6553dc7078f97704252e42ea40751c8722fc88941100d5565d696f84))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(35443bf673c7b6e9a4d9bdc516d651a5d70c9c5e5c57cb9b7140baf5))): {TokenName(0d6c266b803c69c8cf7abcf12f009f3317f141e4e0e8640bc3f63bccbfbad126): 3220666971, TokenName(0e3ade09e2a305d4404ff0e66dd8d8e12afa6a7d31ec6a71636d9efcd45896f1): 3258366934, TokenName(456627e2f2ee9feb907f47d18c372fb02a305af3793eb53db91fe832e41e4444): 310994589, TokenName(68104a07401575ef47973cb5fa1e99c202b0da1734a34a0e59c7b9f093a59575): 1709980727, TokenName(df4a24784f4580939d8572d82996fd0c4c7ca5e8c266feddbf7b45f960075a1b): 1789775407}, NativeToken(MintingPolicyHash(ScriptHash(58596adbd52059eb96a87b60716545d064e07958131652dabd266ec5))): {TokenName(20867789de37754aee286df02b2d990ba7f6269fa9000ce35f8b4cf0fb5dea34): 3812777250, TokenName(6412c6875897a645fe2897e359e636334a2e9e1371292c09a132c64f7cd4f0ff): 1539272861, TokenName(662cc9ab8cf6df0f65069b86911e3ee924ba3cdd9e39e422d61c77032da139e5): 799707873, TokenName(b7f3fb70a4cd95836612de6334d68bd4316f357aff00d39b28e380b9f26cb2fd): 1299895896, TokenName(fd4d076e65e99ed503be37ba9c4601c11ed4b4bc8d04e6db25af4d5e4b7a3f81): 2058427791}, NativeToken(MintingPolicyHash(ScriptHash(6cfbfda004d5bf6c151a42c5346a964593497dead12cd96af9eb3eea))): {TokenName(2caf6a41e297f15c679cc92b87889c248fc443e86c9ebf4984dbb2760305fb99): 2039368744, TokenName(4699c6cf992949d42e66b83ef85ea3e97013954367e81bb0f312e7ad8c5effec): 822612872, TokenName(b803b6de56c16a077dbcfffddd6244a272e3e145e92d3764f59eb3dea01629c2): 4243055907, TokenName(bb1d53625c876b46bcd5318e00a74fff66a73baeb5f76a22ad7e72751f67d97d): 1460137028, TokenName(e5d3b3e8d61b256b5bacab98b24d63adc043260a48c90e57b5cf42c28e6d85f3): 624435344}, NativeToken(MintingPolicyHash(ScriptHash(7563f3d45817170b9d62bf297011c8e97673742663f717501c8c2d65))): {TokenName(4189bbf0935681c636c80b1d7174fa72fea56b8134b37700f5ffd281a17ca51e): 842749751, TokenName(7bae52f99dbf9370e82919e2559076784048ebccfab2666969b6d14c6c8a9fc0): 3797446519, TokenName(bdf8a0ba95bb1a9163b899eb36885da0fbab28fec4bfa33f0c7f8220d2f08b23): 34063203, TokenName(bf1471aee72a680fc44a61c367d54329011f96518e3f9f9499c2544d0ff9cc73): 1140296512, TokenName(efdde985c6e67c42b2dbb265ac37de2367f534c5c41d092ce6ccebd27f602416): 3103884496}, NativeToken(MintingPolicyHash(ScriptHash(bfae0e5f766ada3d5f465826372272f0bc04ceb787a72dfaa2a0b7af))): {TokenName(0804e35e6de2c11f269a8fdbb1a140a6202d1572f6694f9d31343250ba6262b5): 1800349224, TokenName(1bfb03fca76bbe5649070c25c428cd471d630a1034368b9666657d241d25427a): 2875064961, TokenName(4350135b9fb0839afad76923a1619f7625b799f8d6b930f22a6144c28e61f3ec): 2290497488, TokenName(6ef334575535fe2171fe3c73b0924c3819221f1755a15f118ec7c8a41fb2ea46): 900110570, TokenName(b0dc8a3f410328a6594cfcf03fb41dea7da07242865d5613123c88387423f7e7): 2605534417}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(6a17f19622e54a4aa37b064ee4e24a20dfdcb07b3de6f47fb3c371b6f8613749), index: 100036086 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(f9760bab71336319d2f2bb914f6b6d330a23d1506a487669766aa7d4)), staking_credential: Some(Hash(Script(ValidatorHash(ScriptHash(f3a9529dcaf233c0fd0adab1b69e37fe644c6d4abb992d6392b34777))))) }, value: Value({Ada: {TokenName(): 11066297076483743775}, NativeToken(MintingPolicyHash(ScriptHash(031d9bb3d1411830b73ba1fc049615e9f45fa540eacde49571f7c301))): {TokenName(3f1d1b0282cd4fba8702f11fa55b09d992e71e91105dc8921361be00b1e8cec9): 1574137814, TokenName(a3d6f82f057ecfe85e84598adf4f65f45785e2f9be068eb50723dd6c0db7888d): 1938268472, TokenName(b5cc2ecf75a2c0b216fb3d8205646ea0b0e927b64610b3bd55a570d1f005f0e3): 676331517, TokenName(c5e3402a575a7c6ae3e212cf095049be55803c89dd9dc3d91b22bc555e33234f): 2841681065, TokenName(e046b40f7eee648cffe0626d3e2a8f7ac604fce6d45e60ef5f1c269d4ae6973d): 1431309354}, NativeToken(MintingPolicyHash(ScriptHash(1967a4a232cc3759fe999a7dd98ae362e4a40fc39a8aae762b6fe684))): {TokenName(3605b2c90af1caae18eb81ffbb2b368b175a884531fd3dc9bae80e362395351b): 4060630825, TokenName(417870f35c6e30e5f3a4d851627b6130ddf0499ad40efc555fb831000c7af841): 4124959856, TokenName(484975a0f681a225d3385a10f2d65e6284049c73dc40db5f6f2779f3d2e4252c): 3927739254, TokenName(4c3e7b6caaa12a52a6ba46b497f3179c2ad56964f2157112156f73284ae06be8): 2891551242, TokenName(664d4d2357681f8194918bba9065deba4c259dbbc5a884df79decc6865d2334f): 4068940355}, NativeToken(MintingPolicyHash(ScriptHash(5d44c88feb6fd0af06f7771634c378184f55ae4bec36d1514757c70e))): {TokenName(0141ef48409c65b88ee9e4915072dc70fb0807c1d5a2edf872594db7efa5d451): 1863090885, TokenName(28ec4004b285b5ea031ab117b7ba8c861c4c0e87224e25a3779013862dd1a54e): 2618154546, TokenName(3d78cb6af48805c0629ed76522b460fce1c67a029653e5ae0d28a6f35a1675ee): 3906139411, TokenName(df643c48efe37d66bdf259d3e089600094e1eb74a0627a51adc0001b13c4b2d0): 915052555, TokenName(e7175a657466a47834e5d7588c9299afde82db686fab8e1d9eb8c5c5c2cf99cd): 3407814322}, NativeToken(MintingPolicyHash(ScriptHash(cc8714a53e1f4dcba661b80fad7070c3fc90b76986a89e51752cf98b))): {TokenName(a7f41f959a06fe70f6220f5b97522d48053a72e7917c1553ed915ef84f66704f): 1973847202, TokenName(a8ae516b2cf4e515ffb674529e6f2258a36829b19fd3fd92ae71e2cf783bc156): 896623724, TokenName(c6568a357f6df7853a1e06ad5bd141cb0de9776e7b0094fefe9241dd53777878): 268506596, TokenName(cab7c2316939386ce4b949ccb600a2bf42c5245b03fe48384e5b4b887881a95c): 123529537, TokenName(dce1f1f8bef90320a2e5cbae9229febf8ee19430bcb0b588aa98c3cd626eecd2): 3870790961}, NativeToken(MintingPolicyHash(ScriptHash(d94a89403fa59a90d30e24d4fa2d3016d11c7d54225b6d15a6dfa362))): {TokenName(50bf6d1415b195fda1639e70a69ae25bb8afc4a76fcedd55e2a9aa6813736f97): 1884504357, TokenName(58214e0e88dd2b118a788fe10bf71420cda84bf0e45d3e6e20e109a5fd1ba53c): 1968034309, TokenName(5f0764733b323a02bb0c92cce9fb830c068d689d30da5813b36ce733cdc14b84): 3976413660, TokenName(9744f243b0e341e18a308a1df8b476ebe076f1f30e7201b918ea9052ad17d400): 1491965510, TokenName(b0fcf171cb061ff37d359d337d3a8926edf3a051e00fc2c647b00d18a6208d49): 1195040897}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(f4c9da0c2f11149a84b29d8b029dc6845e4404626cf09c9f19840b831f6e1fd3), index: 3471291294 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(6a5536fd7cbcd6d15e3f36f291cead975171e36a9382d2cd5651d268)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1892659501f0b262889f4333e1b06f3e29c093822f1b62946bae97d1))): {TokenName(221f39f94ca6e001b5067384db616b6a7acfad993652d5841a08e3c4d30ff024): 2435908946, TokenName(28874851aae59945689b4f67424cbefe463a083bc974077d7697db2f25a4c8d1): 983369265, TokenName(70fc9dbdf7cd3c5c91c23266f33d7074c2bc7a8f1da436241fc0b633f5ff855c): 3942208370, TokenName(7fab7dd506ae6b9b4206545d41f2f78d851acc80a9087f8e53959d185ed5900a): 2836654077, TokenName(dd5d410d8e0ad8189f1b6538559a214a04fe38d987157de9c50e40f7046192a6): 2545022988}, NativeToken(MintingPolicyHash(ScriptHash(2f47f0226f42521492880e6e943cf101db929cd2c3df834177504300))): {TokenName(361ddc1bded66001064ee3ca623b2e456a93a572897eceddb1c7b4bc7e346c58): 785013788, TokenName(6bded178d1d759bebadbd549155540a5afbf88807434ce4e6b50086ed011440d): 2613671219, TokenName(772b8c64b3ab50676580a9ecb60d3545307e4d5a6ba97c667e67e1c10dfeec5d): 1809722074, TokenName(7bee84902cacce82806302cab231771d0d545876782500aab5639e1eaf443900): 2950267549, TokenName(cf9a694d089c3d25fc23ebb4aee9cb0f49629fe92d4aea823aac3ca22696060b): 2670860841}, NativeToken(MintingPolicyHash(ScriptHash(b3388ed819850cdf2e2d912502ac2abb28e5d70a9eff6bd82b74361d))): {TokenName(2e9c3e991caa2158f2737271414d1cc721a797c793b47bce36e9eada8fa58ce9): 263107722, TokenName(8c8e5656a2f9d4a3ef583ad9cbb1782b93b87a879222613b37a0409fcb95d7fd): 3215128855, TokenName(c724c4ae0635fbd270064643ccf1a8cf9f6ae91e66cfeff0d7be3281ceabe5e8): 4168052425, TokenName(ce9d4a1748fcfc074f0685cdbf4e319ded7b5bcdad0ebd52189bcf9b16a588cb): 2351570092, TokenName(d4efe360d4d1d6741c8efd2b69905a389cd0207b14c8185290318bfe63ca3ad5): 3724700142}, NativeToken(MintingPolicyHash(ScriptHash(cba1beb2925fa51eb87b6b65056021353dd5b7449db7c7b944facbfc))): {TokenName(466fb1ee99b1bc4588a62ff02f1d1cfc1e87c5f2a5ce323237994983967163e2): 1657790938, TokenName(ac1c04610899fe8bdb6ddf0e50359268c9e70ece93f0989f1574a8f592d40a25): 1032818888, TokenName(b24b23a373a1b04e93dec3da52e8d39ed80a215b724ae9f4deb35191c6427490): 2572413570, TokenName(b5c7725559b6c2056c7f3836d9f318f0ba04a785e2948a683e03e5e479dd9c27): 3435926259, TokenName(ee8ee91703a3653b45403e5f5291ee77e9d1b101ba8c2ff1e0a1548993ca12f1): 1118399916}, NativeToken(MintingPolicyHash(ScriptHash(da17ce0dd9fc880a89e1729304018f458db72abd131036b33573f259))): {TokenName(48a966713ab5b07d7d73fb48c605c3c3be66a51244f10220827c9207d778936b): 1773930055, TokenName(4d3fa0536f5564719d1de1923eac9643870284f1b8d97c6ceee834531d5af347): 1604427068, TokenName(790e51d1aec36d087a862bb9e3cad7ac523f8d151fb5e6d42aeb8408c68fee13): 4257658286, TokenName(dc6639db2c3ffd56ec090984d0ead105d845f25290f6ddb4f443bff69dd31451): 3146067101, TokenName(dd125c092d4c63b702ea569114f15c41ab4981bc1669350299ff0e41d44b5fb6): 271827712}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(5879dd6967db44cedc62952106884e56aecf4e7c4320dabf4b5935b58ba5b180), index: 3485704920 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(16d5ed17d22b43269cf47734eb3b4791779bb8f0fd4ee8228cafd674))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1b64d0eff8511e7e71840c375382108a416a2e1693cc9a8267c57d8c))): {TokenName(276ea1e86fda2273cb40f402d7a2460cb27639da86abb2ef78b0194d1a31a2f4): 1211614096, TokenName(601b8aa8570cd9708e461818c8397225ff3f2bfb567f576bbd75c3dce165a460): 1969511630, TokenName(6175f3679a1cbe4af4cbd9cc838f1e454442b5114a800efdc1cd2dce973930df): 3358248541, TokenName(bfcf5347dc6dc55145329b53d20c6b021025998ade52cd93788c1cf9036d12b1): 3446740241, TokenName(f1929d7ff3c4a1125f0aa39a6ff07cd5c441e5be96f2dbf26c9850f8255e61ae): 101120211}, NativeToken(MintingPolicyHash(ScriptHash(33320ba5d954cec458cedeb51f379d8f1a03c63bf2c766575aa290bf))): {TokenName(659fd962a912782749f64099d5ef62c7bdd76df0e47e801dd52355ec2df96772): 3681355845, TokenName(9555fbee47bcc0e066c2b057dd0b58a7afcf00f683375a5300215044a2e703b0): 718630574, TokenName(992f3a2b9d1bd964fde0f28702f127a5eb6dad458cc9ad0975c8bd2c6dacd281): 3143767483, TokenName(a6d3dc33838e4dd7d5854840cf7266ba2de7a9f2cc645e0bba2a83158d518d51): 4001142531, TokenName(f86ae4385152adaa40bb91d1e324d5b9108142315fef1d745b3383c7bdd5e818): 1669088936}, NativeToken(MintingPolicyHash(ScriptHash(4ec368489e7c56d7f33c05f0f13e0d01c262aea9e9b7b9b1cc4ee5d6))): {TokenName(1da397e76c46dfd80a6ba27cd499780fb3010015fe1eeb414e57609f5b3b33c5): 1021749616, TokenName(4e8e2c6617ed3c8ce96534e7bddb53acbc5466c8b94add08cac996cc83dc3518): 2046357757, TokenName(5debc1e877eeaa22c8f297fdf2ce594d796d96cc321b2b1615c88a26630e8b7d): 2281547075, TokenName(63f44d9e7015d3a4fed840475fc6f044dc05ede4aa87275423d06df5df19d2f2): 989038786, TokenName(9ca72b88afafb80d5cf76f4ac650448a67b22a89cdfd4af40f12c322e2cd4efe): 1137235049}, NativeToken(MintingPolicyHash(ScriptHash(6eb6f16596b164edaeda09d0668c970246766bfb483c8d1b5b626dba))): {TokenName(2fb5aa9f090019f81e67e7e18dbddd538112e7be1c05c7071887f00a425d9b2d): 1239704588, TokenName(4d8ed293429a0b79a2f49b6647a018642cca2d18bae093d15437d0076d82e8de): 1776598507, TokenName(7b07018feac1207c443cf68d29249e633a362922c4d748fb7f4cbd943afc6b4b): 3822481022, TokenName(874d2a492dd2b6c282b09816503cea74a3374cd8913a38cb5297ef0bff5af29e): 437540623, TokenName(a1e6f7a9b2592d8a74933b6018143fce50f2cdcfe22fe7753c0e3c59a7e66d62): 395590863}, NativeToken(MintingPolicyHash(ScriptHash(999ca846b08dda1099ecc43c7b5e110174d0d25866181f1236ffa98d))): {TokenName(019eb9984fe708f75e2617a90ca8f330b68ca0ea30a43324e62cb2f29792a941): 238253765, TokenName(24ffed416278eca29e73cf12ea2308500a71f889f765690d51b6bb1b1f22a0a7): 753468915, TokenName(5dbb7cc66a29e0a44163d6223794ec202c880557907574e8e0af58b82dc974b4): 3722048720, TokenName(e2304c5ca3f88be964f9b2bc6ade3e3e267cfdae3732df80cbc97d4fc98dbce3): 1151645541, TokenName(e779ad879e44b0dc7a8e40c39908c27fd05993c111ef255f422b6c8e13a98e63): 4157772306}}), datum_hash: Some(DatumHash(657287e635f99601d25672040b09ac56ea18a55960088dd59b70ad7d04fe7116)) } }], outputs: [TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(5410f27c1072cfb57633a166cb06dc7f63d197f57b280dae1c92e373)), staking_credential: None }, value: Value({Ada: {TokenName(): 2236402502608423157}, NativeToken(MintingPolicyHash(ScriptHash(37f5493926c37b8fd2fa750e7c5ac4453500925fed31390d16d187a7))): {TokenName(8abef3b5a2e98a58775628e7d02411c91c9210efb788695245aa1ef9b58aba3e): 1120796524, TokenName(8fe2c5a30b736ae7dc3490502fc0ef84064753d439034097ef9ee379473c7dc3): 3576353478, TokenName(b27b491ef2b05836aaca9ef9b2e611dad4e0ede978758d071aeba684972426af): 83661867, TokenName(be70ed4d37a8ff547c1e575c5573170d1401bb3c003ce291c94685a1fe6b1b02): 3643189005, TokenName(c16f5aa74fb45b833aa6168fa7a2ce1231d5314e62264dc8ebea2194cac41c84): 1032182263}, NativeToken(MintingPolicyHash(ScriptHash(4a4c1e843bf65ecc5ca696ab9cab914183a997e16f4f3fa6265cb750))): {TokenName(1f115bc73e8f1c04d5c3a9edf3b9e83c09b5fe1e3104d8d7cd2bc99df23ff186): 3531971084, TokenName(297ff50147d03a27d09a2de562db7ed2292ccaec76c8700bedc2d135c7944ab7): 1219519124, TokenName(308d8ff13de1001b0848be9e9d13b9697d0417368d989571683c1bba36a1363c): 3605905568, TokenName(bec2f9b28b8a267f3fe5d5d5c711ae27ddf76b3ee505938d06fd51927ee037e8): 3060620575, TokenName(f026bcc21051e5ad2a321ab61c4b14a871dd1d45d61e4f98d8992b59ad983420): 3862631933}, NativeToken(MintingPolicyHash(ScriptHash(4d5f93ccd2c9b5bc0bc51df9555f9a5b3823139c67d859e538204dfb))): {TokenName(08deae698d8c725836a144e4721bf546222c04f47df98acf4e0c4f86534085e7): 2338878597, TokenName(229cc3aba89c317e4e04094c9fea0001c7346be0d0c303803a51896ce607294d): 979340440, TokenName(72eddb58606fb5bf6a259fb145f21ca13150d2830bd8001c47d7d2921cb53177): 1633054632, TokenName(79133b5053a3cbb622df9e3f314e8e6139e98434bf8f48585b07eefcfebc860a): 3762308518, TokenName(97b726bcd8eab247a4811dd05af608abea0db5b9941aee61efbbf6afb1565a1d): 1480211334}, NativeToken(MintingPolicyHash(ScriptHash(6be3949f84d857200364320e1a260682af5892931a7f5e66a1e6b22b))): {TokenName(0e36e47218f60e0e59e2bf44d460ebf7cc8a30b93f86ebea8fa58f6beec1ca77): 3590196303, TokenName(2bc0d6562ad16687f5a8eb2cf42fefda4cbd1cbafd663c8dbe478f89d2744795): 105976987, TokenName(5e5c56d42e5315b2a5a7003427e4e02070a2f222e689c60310a93b6890841368): 4109335879, TokenName(5fccfd2181d9544e2795a4521d2c397ac1f0d7c4a191656c3b604eac4b568583): 1270584497, TokenName(86918a5b0a3342877df524fe304b2e6b4d3c2f11873e14ec3f2ab3e4cb892e41): 3009525002}, NativeToken(MintingPolicyHash(ScriptHash(9fc9a94a4a5090b71f2a27860023b053298e49960420009eeb40e622))): {TokenName(01585c6fbabd257130a002f4c3a91fcc0139de3fff030a9959d0e2018018e963): 171502532, TokenName(56c81ccbad02d0f567ab9299134088a0882b4026bbee5a7d6c5708587f15b5a8): 3059613463, TokenName(6cd1ee5901d7547d5673dc72e07d20a10aa27d226dbe6fbe350185b70b48cc2a): 1483144782, TokenName(88e27c6a9fa0a32499dba4068bf904d8dbbbe7953fbb61f8863d726f2365a92d): 3942060868, TokenName(916ada24b31ac4a91b574e136c2a1c20cb911f14e88a513586f9fb871fdb443e): 1287286334}}), datum_hash: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a8030bfa36be16a64f8ac42b15c32243403ef169c43f61f82ee34f60))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2526288468), transaction_index: TransactionIndex(1423893661), certificate_index: CertificateIndex(1434755680) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(16b697ef79174cbff09178e9913caba27e7fc6388e93e9921a6c7535))): {TokenName(4cf873940e6b18c637aec69c9fd1aafd8e6928bec40e36afa91ba88892a087ec): 65884883, TokenName(5cf79433ddb13b2170a6401ffa528a969f5a4b98aae9cbbdf34276dbe4a10369): 1245109372, TokenName(9aef3dbd3f7fbbcf12acfebcf3c0b15cdbc3538d5b3d981932ba85c9ed7f2320): 3480773757, TokenName(cc20daadb793f37dd582e6cfb6656b0bea4c0b7807b695b5f8a49ea9b2f792de): 3171074411, TokenName(d90371478085e9f9fff95c83025ae4113ac2baf817f810dd466518b20f723505): 2368810595}, NativeToken(MintingPolicyHash(ScriptHash(35f1c74fb4c5ea9c12effb4102533fa0b170e35bce4a8e53369f81e1))): {TokenName(29d086ee45857772eb6be342451c74a5722bcce88df144fc285661d827fef1c9): 1392013783, TokenName(4c3d2ca9248357a385a6105906aa9700c861ef741ff21f09493b844124ab9b75): 725500744, TokenName(8f83c910e5ad53ec564a4c882b36293fc163a535730f37eb706f569e6e696812): 1744470819, TokenName(94917f4b89958bfba62d02bdabdc00a28d0491293a2d0a6770a5629152e605bd): 1150828174, TokenName(f632ac7774b14cf5ae8071a87bcb371ad0d0747157abd598a04d6b1643cde18c): 388479184}, NativeToken(MintingPolicyHash(ScriptHash(67849ecd96a82888f73345d0667f792be240c89d2a0dd4f962fb06aa))): {TokenName(5dc223b452bd882745a3c0f28acee5188a28063806f07af312e29f4ac906779e): 1574752114, TokenName(bf65de834423af4259aa29415d2705532c9bc5553bdb3fae9d88a79bd43a8f70): 736416511, TokenName(c6a2166230b639294ba5b794a809f495ba80e3c136b3f10d4efedbf0473c901b): 287728001, TokenName(cbf25d0dbc7172a5f932660210bafce1223d3420facd2a991d8510fa07ba6b8f): 4271054289, TokenName(eac70ec87a809b8cda02430b90e8041cfce0e9cc09f4e8972cead8ab1cd35204): 3829911799}, NativeToken(MintingPolicyHash(ScriptHash(c87e6ad4a77c08a9cd62704ac664b4847b8d3955343cc764e6799a76))): {TokenName(0ebf4dc6be026d31b6d3e89616a9b854274eaa6b27586684004732ef06ecc7cb): 3331548695, TokenName(714224a04712f420831f663035b5d31e676e11f76070d083912d5cdc9312f0b3): 3198236104, TokenName(8ca93cf893162b4eb0dff19d86db7652f949355b0c0ada237b0a3e6996fa03d8): 19227515, TokenName(9e6f2d32150069f192452f45da2fbb8ed5184f4ebb312744cc638c42756ad4ea): 2833663308, TokenName(a0e5f4ee93c14d2d0acc9d69451b5c4b7fbd492db0b2bb11979f98fb40afdb88): 3016347740}, NativeToken(MintingPolicyHash(ScriptHash(c94de030926a397f8f2eb5689d191ad62b2e55b0baeed260b1e1eabf))): {TokenName(09509d4b63818755ac0f87929ef885c36c51fc130b2b258b97a5c0392a9f1103): 4248747602, TokenName(78946fa16f926786d4bbde8a66a405d90c4553ffd44234518e3a734873c653b1): 3224251699, TokenName(bbaf846cc30bfe5df9a63d2b16b02cf4471aff42d12a9de48f72d75f4a108a3c): 1539058509, TokenName(ca348017e38d302443b33a3884262415bce7c2f81ec8c755533e31139f3892fe): 3749331943, TokenName(d398fc91851ef1074e08e4b9e4bfa89df3eb80f82473597e91df3e6ebf7768a1): 3885424405}}), datum_hash: Some(DatumHash(b628b6277edfff8d284ebc42ddf97d4a5efc09d629dab71f712398cddd60d820)) }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(bd0a12cd4086632eacadff7a35117757a005e09abd27e17182f82474)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2906389819), transaction_index: TransactionIndex(2498004148), certificate_index: CertificateIndex(2910959286) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0cb2a99edc13cb44382b865663f5f4a65dbc24e7841ba2aec5011028))): {TokenName(2c1184e9ef870aeeb81c9d0b3840e409908a48df2dfe83aed36b55f3167138dc): 1647705484, TokenName(8a774cc8014f0295cc6b50d65f61af46bb85b2cb26644bb9242642dbc2768cdc): 1375149956, TokenName(9e43844045f151ab9a64a727946b9c6d80959ed239109c24c2c814dbea4c09dc): 3736400037, TokenName(eb0e8c7312462a2388c7b76eab0e1fd8388ca9b54380efef95bc2ef4ab130ca5): 2516519196, TokenName(fbd7769644ccaf2a55bdb8af9caa0276101f7cfee2049b20d5a653fc532528c7): 1753111857}, NativeToken(MintingPolicyHash(ScriptHash(1d5428cd7a033b9b904169b213da8402625c298f88dc37a50be43d8c))): {TokenName(0145d030a9b4304b520b1c60a5fb897dd053b310030df6c5131afc4245f874cd): 2946533521, TokenName(03d49d46b9f69298a585bb7759c1d2f4c1bfce7d0187692c1897cbf2490aee00): 1883058736, TokenName(05e6883aadca625019882ba68fa8cdb1fd8267adefbf56ce16ff63e0c5daa9a6): 1828812533, TokenName(3d9cbd49c03af33640e1494a94f250dc97b826bfbaa4473a9544b4c96d062c64): 423948032, TokenName(a9284081504726dd673907aa6f6b0f4b4406e69474a9d8346f47d82319dbad76): 1980557188}, NativeToken(MintingPolicyHash(ScriptHash(a2bb8d90c8ab47d346d975e980a1d43f045dec292535093e0d51c864))): {TokenName(02f4d4e68cbc706e0d0c0837201675f3bdcbad8c0cbe95270f87b7e677e74589): 4059186037, TokenName(0d27ac444015385dc142b7f17854f6a2fd226eed40db00e5471135abd2614910): 893862889, TokenName(4c0ba14a4e81c539b8c1927676051248e1f0470a0bdedbbad99ba757742c37a8): 3677005175, TokenName(9f54572f0d7dbc278f65252ec8a9fdd605514b0eb146b43f7548637b5bdb6d98): 865230738, TokenName(ff85c18aaa31427a17d09dd8b1c92deefa98de67dd95b5134876d69bff07fa1a): 2197769791}, NativeToken(MintingPolicyHash(ScriptHash(cf5353435cb62d2163224104e0dae0078a694a4aaf190fee0ae34a02))): {TokenName(1648c8d0d1b49102baa656497e482412767fd18bb4cdf1cef1b3c358d7a89f71): 1711195694, TokenName(26bb953943de5e600739f97c4ce75a75764a1ab8a067cb3e7c29f3016217adcb): 2877718150, TokenName(815e21da7c69f3e64b810907bf5c44933407c2c5e8ad953abdad6e2b0a799e70): 977946915, TokenName(9353e34d7f9c8621f44f914dac8dde9cfd5000b9dee7ac693708d228ed718076): 283297721, TokenName(a1054626db4e0d335f46d7a7f2c40b742ad6c70b78c9f88254f1f84fc3ea8589): 968690886}, NativeToken(MintingPolicyHash(ScriptHash(dea44770355f847a4eaf18ba83b0d401bdbf98908efb0e8b1f897f83))): {TokenName(4921eb7143be35f9cdfee9b098bfb4e6c76a6fa916ba52f80e222caad6e57f46): 2851452302, TokenName(6a6493bf51f70f648010e4c5d9ab406fdea3f05951b51b917e846d03f01c50d9): 4152676206, TokenName(71d6a6180f26982f144f2cf289c96664eab73ea43b9ee9fee2fca7ea3b9a6468): 1380940925, TokenName(b6ab7566b6ea3fc735c39ba9b1431c3e5d1b0c8cb77325b4696035ab4d2cf546): 1747434410, TokenName(b902a0f2088eecb1f3f7f4f2b88c685a5840b62bb7ecc06416612b4cb9b7efd8): 2641353882}}), datum_hash: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(b2b038341412cba317cf86df6ef6e935449381af66030af75ff42e51)), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(3342422d590ccd428b2f3fcaca1aa9b4d1e8f7366b546b1c6445f894)))) }, value: Value({Ada: {TokenName(): 4948328761542502746}, NativeToken(MintingPolicyHash(ScriptHash(072fdda177af7847e1d87877c624158aa2d98cfd659324f2b373c262))): {TokenName(320c45c154400fc4d8d6b5a8cc4ceb9f51f8ede2daf8baf0d4ba0316d675eda4): 411254330, TokenName(77e69c2eb1e08684727019bfeae04c43687cef2526d2940436d7d7368a816d92): 1855020307, TokenName(8a1cb9930c75f32f95ff8f133ea76ee23e833d3e0450c4a846328b5b9944710b): 250752536, TokenName(c48f515f70d52822afd8ec7f704a53eca595542f7ccfcd37fde27af4dd5c26df): 2374474381, TokenName(e3b15cfb883a25f465bcce8f501af658cf8efbee426829a9531b9763fc37ab11): 2313747249}, NativeToken(MintingPolicyHash(ScriptHash(093ee8ff80c2d0096a9fb455bef075e199fccfc1954bb2986326aba8))): {TokenName(44591cefd9a148f95a280dcde2ab7ef30813cda04c082fe16c2df07ab91283bd): 3029068441, TokenName(69e2c5f840466eab3308985fd9e16d25b366eaf31df06b19ade95aef1f306bef): 3504873071, TokenName(a8da02edfd4e5b1176ac9961ba56da291fe9907565da43a2a79202bdcd5bb4f0): 1138322246, TokenName(bb2f1a91b2ac39def8a7e55d990d4490a66a8c4415aa0399d0bada760b6db917): 1512771149, TokenName(bcfebd930b1735f727da96689b8a672368000e30de9877cb4e4bfa235b336242): 3239823677}, NativeToken(MintingPolicyHash(ScriptHash(5b07738191c965fbf02211ce93a8be82b130af907d547679d6b3c7e1))): {TokenName(130ef730af540f6e578167e20aaed3664978c350f0b29a5401ddc5bba0475fb0): 2033047369, TokenName(6652918dd53130e4cd9e04fc6bc61e86972acb68d642284a63885b162490505c): 733077339, TokenName(7f333a23849fa278b7b4c94f059915205a5f12147eef9ea272491799f73bfd2e): 87433845, TokenName(804070fb43e317d87955b340b5344a8a433e80da64cd36d2ea4ea57fd299179a): 1631450234, TokenName(870f4bc4ce866180c857901e4aa71cf8a1879916e3aacc0bef31651a429aabcc): 1324734331}, NativeToken(MintingPolicyHash(ScriptHash(90cfa5b959bb2669038f943b5bd9324b64f1fd7aa175d1e04bf593f2))): {TokenName(44c2177821ab02387c05145daea415f5ed1e17c9daaf44073db5e4c8f2a09b95): 1125997943, TokenName(5085d9c0c0ec21749772b2dd1d833dc89740983dcd0c23a68e2e6ecac1514153): 2928004275, TokenName(959bbf7dc15d9a6a0fed3f43f5d9b05d974dca9957da7a95e128721cb0b6dfc9): 2886942365, TokenName(cb9169ed8349bbc980d191c3a7f6a5a203b0f8f7b60876b5d2b1393d5f7e0036): 3635081973, TokenName(cd884cbd66ac62ea2aeaa479203c11bbe7ffe99c1e07d32809cf042521f146b3): 1702000497}, NativeToken(MintingPolicyHash(ScriptHash(a0db8a554393782bf4db132fb516da7278dca0ce40c0db3baa142a4a))): {TokenName(00d094c2cea576664164a22fd766a5cabf6ebd344528fb09bba89ab562ef305e): 4192416526, TokenName(0b428b95a12e8c9c5ce6682e5dcc6b1c3fb3899a4b707552afcf5dbd0154baa9): 2331618111, TokenName(0cec1dc6336fa94860d66be7580d78aebac53c1c970395eec552ad9b508b7b4d): 1504969392, TokenName(1d4a8587b38efb2b79414a04342c3d05f252ce3fdadca54a45f207e8f9c29beb): 2777991698, TokenName(53b02a79e80c31c85b84e0493abc93d536043ecd524cfd7d7fea032d05a6e7e2): 4119511346}}), datum_hash: Some(DatumHash(ff527f3d10e8feb4b6b49b4e5878f2048461ba3839a09858ba10b0f46bb5c171)) }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(e05c6baab226429642a0d4baa4a6dcdf0bc263d3435f5ae166c9a139))), staking_credential: None }, value: Value({Ada: {TokenName(): 4553602872540099082}, NativeToken(MintingPolicyHash(ScriptHash(17cf83ec7b334a11f0b4afeaca399f3f0655df3d47b8ae389b867cb7))): {TokenName(0fdb6a936ef95425fac91e840d467b4af2002c01cf41174166287b25cca7a05f): 2730309942, TokenName(1014fec598837f1f57a0d8932b527162d300dbc38461884018b7056f090bdf5a): 2791151522, TokenName(5576dc44909b08bad91f97cc4ec172a2d84291eeab5c53203668ee5110d58f08): 811998201, TokenName(a35801eb73e0f2cafe000dc265c49190b9edd8aa8846b5d7a4865c0927c4b397): 4122858360, TokenName(eaee31b7ac5fbb6b11665bb43ec0662b4a6e64e2797ccb45b8f0a75e280f1619): 2270382587}, NativeToken(MintingPolicyHash(ScriptHash(1ef6385877ca6778cf88e5ffd054ed90d66da25378cd568565a096ae))): {TokenName(329a62259a89c9ecad955d28201e94bcfe386a67190bb4b051b7166c45b1796f): 1494858695, TokenName(749240046949124728861c7baf181a7b5ad4a8f0c37d884dc79ccb907e6e5af4): 1710360777, TokenName(bd6abd5b26ac8e1a109190b25708d94da4bdc16cf244e79a096c72be24e0a0e4): 2190753389, TokenName(ecde2b1d7c514389b66afd1d24cbaa2723f07caaeee61913a9f9701e8349e36c): 1232171392, TokenName(f121d76461bb94330c69f12b123c279ec26b092f669dbb079ea18cd0a876add6): 4026230494}, NativeToken(MintingPolicyHash(ScriptHash(23b29f5815c42402017db7bd79d21037c19947ed7f2c11f7757ae6e1))): {TokenName(0e289ea4f9af5cfc43e20f747dcb24d12d3c7ce1a40d0ede72b9c0cf579041ca): 1173553796, TokenName(1692c126e0ee9010182a8cb4849aefe076fcb9a1f4bc94c274c311b2ef9e5fca): 284175176, TokenName(28e7a278b4893a6afb4ea92e417549ca644be330f15581a9cf8ce75b441eea1a): 2358327012, TokenName(af490988fae42de1353cea6a530d4b19a0c08ee8fbc39a216d8c83916d8b09cf): 3410120375, TokenName(c14d13fc0b208e9cce0bdab33085ba6c59a8852af0d47bac55a17fccbb1e7f80): 3055786762}, NativeToken(MintingPolicyHash(ScriptHash(7ffee3ce8d283d8aa14745314091ed0458569b8ea9e84c0f3e8fef22))): {TokenName(02ae89ed9dff3b2a587d4a4137dbddebcfacb888ecd2eb24003bc69b3e3208d4): 3054823407, TokenName(184d800153b13706258004f4d896b86d7228c5f0fc9437c5b5b26b7b1eb0fd44): 2454894028, TokenName(662bd5eae7d2166f3ef6d2d1ea8e0273f202caf1bb2cd7e6b54066a6a9d23051): 3022759543, TokenName(b31ff8f7cae312f932cc13677a0eeaeeb77fae01c49117ed7aa8a58960f30674): 3188065398, TokenName(c07142a9e17cb03285e1ae8a17a16bbfed16fef9effbc22857044d4289fa8364): 1465431524}, NativeToken(MintingPolicyHash(ScriptHash(e8e9baf27214acb30ebfbf7c000b8f613cac2e0bdd663626eeb0267a))): {TokenName(13e6135a846bf7bc213d4ae04670c5d5c886419513a99d4997193b552bde6dae): 4084850878, TokenName(37ae5df9337fe81423d7c7a41d217cb66368d85949a899c9312750eb5792c347): 3709611353, TokenName(a92e2356e20f6a58903c882805d1672dcf95e2447e42f22284f466dd8c6db2db): 228959620, TokenName(c589ec27c134fbedbc5ec2c33da74785245808c85c796903164d6a770b90001f): 1239222555, TokenName(e9f13cc81c4cd36d8684f0c049f92324c738137cc36b69546090385a717fa8b7): 3850436574}}), datum_hash: None }], fee: Value({Ada: {TokenName(): 969633109869906273}, NativeToken(MintingPolicyHash(ScriptHash(8d6723525ba3d1f1d6997c0ae46f9d85502e6765dd041161633c3560))): {TokenName(06303428b96cb3f1b1d275527a0b6039afda0c190ed10b559478d9cec0b7da42): 3814140804, TokenName(3467ba2a37839479cfbad1d28281dedf585a6c0109a4fa238371f65e9a4bf60d): 1131929688, TokenName(658e9b6b33c3eda9de19ea577dc497311d2a0b96dc8d6ff27893b035848b9547): 250668046, TokenName(8599f7565c24adcc16f57a3b856c4dce7e7a5efa48d9a0a91df313ab66845f24): 1236629975, TokenName(921f9da770507d599e88df415f5b5fd1ef2dce3388b2abe1cbeb8819eeb2752a): 1375718269}, NativeToken(MintingPolicyHash(ScriptHash(a171c162fa95d08d59c680fbe807508d41460683e736f2964856e2e3))): {TokenName(1aabd16381297021a0281493745863dba32e12553bd1b96556bf2e88506140ac): 3291925497, TokenName(2050da14445b8940d5dcdbdea4d274e6bf7873455431b2e634c72d0c4465c051): 620717311, TokenName(4f19c4aca84ea4a29ffee3440d3d824566e19c06010a04507ff7a5a59e302a99): 379732248, TokenName(a13bb873c9e1de1bb2cdc7f48863712f5e80eb212804c14b1db8ddba6dcdb29f): 2246452864, TokenName(f39ee6358be13089fad7c84120980839632dc2c4704e58df41d490d6690a7a38): 3334683934}, NativeToken(MintingPolicyHash(ScriptHash(ac9446f80204a60030165546ac6714046dead84812f05eadd94551a3))): {TokenName(25a0ee877632392e02cd43d00aa6a7ca261ba4556193e0dc396cf98c2af31c6b): 3444385402, TokenName(3e01f229172eebbc73423db906f42c63cadfb707992eec85eab601aaf5dc1251): 3790718980, TokenName(a58da0fc2411a07ed3e0bc47af2a2b29d6c113a4488a3be79b92aa3323986f60): 1134977431, TokenName(d66116b4056bdd548a4da2780337013fcf1c4a75abc7e94bb6cc446e404a3780): 2609803911, TokenName(e9d67a85cb032f4116e0ac6c323eab6404a56e1148b367a2bc8f8c55fe0825e4): 1014384257}, NativeToken(MintingPolicyHash(ScriptHash(e564398c9d94ef31ba6b710d366cd39a3a790dfd302991d2fa642e32))): {TokenName(0bfa888d52987c26166e90cf2304068253d96258e0c71e74a178604a84e89a5c): 4003280998, TokenName(31d69eab408c70a8c0f0449c9c84f8331a4a2abb1a427e712b3a6f48fe4fd256): 1888595874, TokenName(d624bc70dd5f611aa436de15c3e1e7535bba75e7b42342959e2391d7fe4c5c6a): 1989441865, TokenName(ed5d23f659fecceee3347e90127d2c4c44e161f547a4ae595ff29b6f88ba53ba): 2198525552, TokenName(f603ead8ade9a61b1b88bcb269b1c5f784a65451e29f1e7a0ecb8c48239fdb45): 3645297236}, NativeToken(MintingPolicyHash(ScriptHash(f46ef9af924ab79c91aed4987fd890b61fe27abb8ed9254e96c74cc8))): {TokenName(59094af9093043e8a96b5a6bf5a335b12ededcb9f01878f91495fd2819aa67f0): 1766038848, TokenName(93b8854769f208a0256f9ea596df9e52a3fbb06850c2498488f40c6b93f94da4): 3559068440, TokenName(a8ccaaea3d611fce0be3df7b58a22e351ac9e255c72bbb7d37855b81f910bc9c): 543249717, TokenName(be59a0fc8ce2d78d60882d184c66faffaf77657003d8dc9f70cf920147f8e0a1): 3750383943, TokenName(cb241e54a1f5e0ed7f8be8b6c54c5e128111ec57015afedc6e73913c17e97ce1): 2954796306}}), mint: Value({Ada: {TokenName(): 7631164501003577366}, NativeToken(MintingPolicyHash(ScriptHash(000b638318708d6910d2d4ca2cf92eb08f54aa76ef9288860580bdf3))): {TokenName(118c464ebe2af200f4a14649f8bed0b0ef50ee1bfed814a8de00953f89bb050b): 2442299996, TokenName(1849c62509f9c1f054d41d926038c23b684a646b1968e8cfcc4a3647a28754fa): 2030710250, TokenName(22cd5e8112cc3a3d413eb1d4de1d9c383b7534f45ea2e829b43844c22ad159d0): 471205976, TokenName(a945c6e456cbc77f35eb25e2b936de6282a93b0c0b63183f607da00278b92302): 3274228680, TokenName(ad86d0ad387617c24e81a4343fb745231aab4912a61bbff939f782cbb56d2968): 3179376177}, NativeToken(MintingPolicyHash(ScriptHash(0e0ad372d8a5549a9280d97575060f8d2f292ef7b1e173a60c4fca61))): {TokenName(9005e23d6a7edd5a420284842e7ae4097e9521bd2a4ca4bad7bdecca8b75d9be): 1363897572, TokenName(b7755a335efa50067a4757dab725ca8f41b1a0c751ff53d3dc21d0a05291c7d3): 2898233279, TokenName(ccd71950b2ba7cc3dc8bb1717bba2927ed15142e84934ccfff98d1c6d23c7d91): 1289247048, TokenName(d1312a57e53827c11f1df869b828865c50d17482a205e4edc945582385e08706): 3074462666, TokenName(eecbf9e4f9d0ef421f7a59868225cebf18f7000f6de30e0f8493cbfee4d04194): 4135510026}, NativeToken(MintingPolicyHash(ScriptHash(14c373113770b8e9a72a862f1abf89da699f73f44eb9b74db712a10d))): {TokenName(0fcf4d730e7463311d146a4d32a365364c6520bd22d40a4811ce659c05019cde): 1253206852, TokenName(25830271bae303c2a40cfe96cb91492f9abeb5da45b51facd1399c6c2b3aa76c): 1256411084, TokenName(58067388a86c970eeabf01414993b019d237593fbb4515b40fc7d6e29a52df85): 471578325, TokenName(6b7023af0f471f0bc78c7616ec90ea0f9fe0c8e4e3b0134e227d45736785d676): 183113714, TokenName(c9813c42fb1f38e268cedf35457615fcca99cc094405926ad16aaf4ae82567a8): 1385894198}, NativeToken(MintingPolicyHash(ScriptHash(4fdce36936b4e15aef63e7f608f0414dcba259852aca6893e5d2b9a2))): {TokenName(1a9d777417acc7644ceeb3d52f5586c0bda66302bfe3aeb680b87f06c7c4712c): 2870070021, TokenName(383a08a33046a06148ef0b38605246a0577d7ddfc2a9621ce83165164491167e): 1995923698, TokenName(9170ae6672cfffa3d2bfa40aa08a337aaed400edceace5c518da9f034aa217bc): 3250266866, TokenName(af5319c39aa37eb907271cb377aab921dcfb82cd28985bcd471fae49da966f75): 4015499506, TokenName(ceceac952f631978885d18466f653b68cfd4ce8ef8ac171ecd82a5f92a289d02): 636890669}, NativeToken(MintingPolicyHash(ScriptHash(e05864b623516a63e9f9e515522404b98b02b0b2221c54598fdcb6e9))): {TokenName(11d8fee4e2adaee17e985fccf6c56c114f86c60734853082add8441bf990b63b): 2496407695, TokenName(603ece16dbbb888998f91d1238c4a456ebfdc957834debf70fbb10d91ad7460c): 1108103483, TokenName(627d25c701d7696dcb6834b71612b51d575b931f91a5ef2e58fb5e8efad32ac2): 1195013276, TokenName(c13ae1979f893e33e49acea02651b6ebdc4482195d852ce9191499b39811a4af): 2197115122, TokenName(e891c9a502e6f8bd48e6ec0da44bf42d86e7f38840491f262d2cbba4f2752464): 2321083779}}), d_cert: [Genesis, DelegDelegate(Hash(PubKey(Ed25519PubKeyHash(33a2aeaaa2f2ea80b5090a2b82f487b57ceb931d469b58e01e43b94c))), PaymentPubKeyHash(Ed25519PubKeyHash(6a77b6f28a34ce07ad408232717d4946c493748591b8f35b94d0f25b))), DelegRegKey(Pointer(ChainPointer { slot_number: Slot(433742330), transaction_index: TransactionIndex(1845628647), certificate_index: CertificateIndex(2772472914) })), DelegDeRegKey(Pointer(ChainPointer { slot_number: Slot(742649179), transaction_index: TransactionIndex(704895891), certificate_index: CertificateIndex(2566189219) })), DelegDelegate(Hash(Script(ValidatorHash(ScriptHash(542497dc23302d140546cd8be6b86b518f704b858edcf808ac2cadbc)))), PaymentPubKeyHash(Ed25519PubKeyHash(7daeb663c2955e1c7bb6afa4005fda2c6ebcbd5bfef080b2e84395e0)))], wdrl: [(Hash(PubKey(Ed25519PubKeyHash(68aee271f2f2ed00343c237a0284243116bac2eb69c5d3800054efac))), 3319729642), (Hash(PubKey(Ed25519PubKeyHash(3a70e62fb80a360afab75373ca182ccd8b12145917e679784d82d799))), 1883636234), (Pointer(ChainPointer { slot_number: Slot(2507536261), transaction_index: TransactionIndex(2809721782), certificate_index: CertificateIndex(3948189935) }), 1091631966), (Hash(PubKey(Ed25519PubKeyHash(675e7d0092f2131828a0a0c1161d1cb2966896b189fb2508f33e3bc3))), 1036524356), (Hash(Script(ValidatorHash(ScriptHash(2a0df4e2705f4f465b7500d0448f5b86ce338f8f3a1ffc81936d613c)))), 2084137754)], valid_range: PlutusInterval { from: LowerBound { bound: Finite(POSIXTime(509290088)), closed: true }, to: UpperBound { bound: Finite(POSIXTime(1589796949)), closed: false } }, signatories: [PaymentPubKeyHash(Ed25519PubKeyHash(e113607d8a6900dc57999fbf7436a2b258b265c9de34b66adbfabfbe)), PaymentPubKeyHash(Ed25519PubKeyHash(9919208d63b0eab1469561b6160e620514a330a5c9687ea4da91eba5)), PaymentPubKeyHash(Ed25519PubKeyHash(84cd67e498c6e295a7f6d060445cefb3769342c7e6d80e49d9572f16)), PaymentPubKeyHash(Ed25519PubKeyHash(4510294c5ff167ecce09307c0e7754b9810023f91ab4a13c283ded1d)), PaymentPubKeyHash(Ed25519PubKeyHash(07843ba0ac368ac6fa41d8a68df466e6ce43290a792f43c925834220))], datums: [(DatumHash(1dd2ddd0f1687da13c0471227100821e5caafea2a6c0bd1836031a71d959296f), Datum(List([Integer(12111198339882327665), Bytes([148, 36, 223, 226, 122, 56, 252, 144, 89, 156, 32, 217, 100, 206, 105, 13, 220, 245, 56, 220, 245, 97, 79, 5, 11, 193, 163, 60, 49, 107, 143, 205, 45, 119, 143, 111, 0, 52, 158, 154, 35, 166, 69, 162, 159, 87, 136, 252, 138, 16, 197]), Integer(14917055000583713380), Bytes([250, 84, 182, 96, 4, 26, 241, 41, 166, 168, 99, 85, 41, 235, 69, 187, 56, 88, 226, 193, 14, 75, 123, 98, 232, 13, 157, 32, 177, 152, 85, 123, 59, 243, 111, 246, 108, 68, 235, 177, 226, 125, 225, 26, 197, 84, 217, 173, 246, 216, 173, 47, 89, 189, 140, 201, 145, 56, 94, 125, 200, 166, 205, 103, 149]), Bytes([28, 53, 48, 133, 148, 22, 66, 28, 53, 97, 115, 177])]))), (DatumHash(ac4bb31a4b8c0e5dcb712f54b54e403407223cd43f07ec9714d079ae10136e67), Datum(List([Bytes([26, 174, 162, 173, 112, 10, 99, 29, 35, 19, 111, 56, 63, 186, 224, 219, 148, 130, 223, 192, 49, 243, 125, 69, 173, 244, 191, 205, 226, 116, 205, 167, 227, 248, 232, 175, 27, 26, 90, 105, 140, 133, 134, 28, 145, 71, 212, 33, 187, 111, 89, 108, 130, 174, 210, 57, 117, 154, 220, 41, 211, 115, 13, 145, 148, 221]), Integer(10600455703549979744), Bytes([48, 253, 65, 239, 169, 140, 189, 124, 221, 144]), Bytes([122, 155, 53, 41, 41, 192, 134, 181, 116, 240, 45, 233, 57, 218, 36, 241, 20, 139, 199, 77, 235, 23, 233, 152, 217, 187, 184, 240, 64, 231, 25, 250, 160, 21, 228, 126, 204, 131, 219, 58, 41, 185, 223, 80, 221, 176, 79, 161, 85, 199, 223, 80, 194, 18, 180, 222, 49, 41, 202, 222, 137, 255, 29, 22, 213, 10, 144, 58, 238, 42, 6, 35, 243, 58, 15, 217, 40, 111, 25, 2, 25, 212, 229, 253, 136, 26, 133]), Integer(9156334723734449835)]))), (DatumHash(10d026a0084cf4a9945756217eaa5d6ff2451e56467e6c5cd42122f11f628b24), Datum(Constr(1096592962, [Integer(7149187219739976565), Bytes([244, 46, 11, 183, 246, 67, 232, 48, 14, 111, 216, 61, 118, 10, 48, 192, 253, 92, 61, 142, 111, 168, 197, 243, 114, 219, 132, 77, 186, 116, 95, 182, 67, 6, 152, 233, 53, 228, 57, 252, 22, 243, 240, 95, 48, 129, 49, 92, 42, 218, 9, 254, 135, 99, 92, 245, 250, 24, 66, 204, 229, 188, 203, 128, 251, 48, 125, 182, 72]), Map([(Integer(-14934554458418146212), Integer(-8733990149434153712)), (Bytes([157, 49, 60, 178, 244, 196, 156, 140, 229, 102, 124, 77, 45, 73, 113, 181, 20, 32, 240, 195, 67, 122, 70, 157, 85, 189, 198, 104, 227, 153, 108, 116, 243, 239, 13, 21, 141, 175, 93, 15, 145, 104, 60, 190, 223, 107, 49, 78, 85, 161, 59, 133, 31, 163, 136, 68, 172, 105, 155, 248, 15, 46, 121, 150, 56, 53, 216, 85, 226, 230, 68, 8, 144, 93, 67, 132, 57, 30, 123, 165, 83, 105, 12, 42, 157, 139, 220, 146, 70, 9, 114, 199, 169, 84, 160, 175, 176, 177]), Bytes([212, 160, 118, 135, 239, 173, 227, 137, 220, 211, 1, 137, 239, 171, 193, 85, 157, 221, 47, 64, 78, 148, 111, 79, 202, 215, 31, 55, 99, 113, 99, 33, 80, 188, 17, 229, 90, 58, 49, 78, 70, 152, 129, 34, 74, 122, 108, 44, 43, 148, 116, 194, 164, 205, 177, 138, 49, 227, 121, 50, 76, 97, 251, 6, 190, 209, 228, 81, 151, 157, 151, 186, 114, 42, 138, 59, 17, 100, 15, 231, 231, 236, 40])), (Integer(2664178424296852335), Integer(-6867474426338311931)), (Integer(-1806391647205798784), Bytes([244, 53, 57, 234, 143, 202, 109, 129, 44, 201, 203, 12, 149, 133, 165, 145, 226, 111, 34, 114, 123, 80, 137, 14, 222, 219])), (Integer(256972643692214470), Bytes([192, 141, 215, 60, 238, 113, 69, 5, 164, 130, 54, 109, 144, 128, 95]))]), Bytes([59, 154, 183, 176, 156, 136, 223, 146, 60, 72, 113, 242, 46, 117, 33, 119, 142, 142, 84, 82, 222, 26, 148, 174, 241, 32, 226, 186, 212, 118, 88, 182, 17, 227, 241, 15, 57, 187, 211, 236, 129, 190, 84, 150, 110, 40, 44, 147, 190, 148, 159, 89, 4, 115, 51, 75, 139, 182, 84, 133, 207, 120, 115, 228, 93, 37, 233, 105, 214, 95, 222, 46, 230, 49, 15, 87, 227, 237, 39, 80, 86, 48, 194, 63, 174, 168, 31, 26, 86, 0, 164]), Bytes([21, 128, 222, 61, 54, 46, 143, 58, 29, 162, 173, 205, 8, 93, 130, 28, 235, 165, 198, 155, 110, 55, 178, 168, 73, 221, 254, 89, 22, 202, 215, 217, 150, 20, 33, 221, 81, 203, 118, 156, 127, 214, 131, 22, 249, 99, 25, 251, 36, 75, 178, 190, 224, 124, 42, 52, 203, 128, 143, 114, 226, 183, 124, 199, 20, 200, 170, 194, 34, 236, 242, 129, 144, 176, 10, 150, 160, 228, 8, 42, 111, 44, 231, 234, 58, 32, 91, 44, 24, 71, 168, 60, 91, 93, 222, 241, 58, 192])]))), (DatumHash(5a9e575b9c15ed46c23d13d6dca4332e65173baaed23a0a85c089605454e21ec), Datum(Constr(2595342282, [Integer(3451760200702215501), Integer(4010655019245624044), Integer(-8093943009169867001), List([Bytes([193, 156, 95, 88, 91, 123, 132, 115, 55, 37, 203, 156, 24, 192, 167, 27, 135, 198, 243, 62, 76, 106, 186, 69, 71, 165, 93, 10, 114, 226, 203, 138, 84, 132, 238, 230, 3, 253, 200, 148, 45, 209, 211, 174, 173, 159, 35, 89, 13, 41, 247, 107, 96, 106, 96, 145, 94, 249, 77, 37, 173, 207, 74, 182]), Integer(-16665941241912134423), Bytes([20, 84, 186, 180, 237, 24]), Bytes([103, 149, 173, 37, 34, 114, 167, 61, 2, 216, 158, 169, 89, 50, 186, 106, 24, 166, 17, 67, 58, 10, 94, 127, 158, 87, 232, 65, 73, 31, 74, 194, 21, 100]), Integer(5453360218659488194)]), Bytes([2, 117, 98, 171, 152, 219, 55, 178, 129, 208, 146, 96, 237, 7, 220, 3, 253, 59, 7, 79, 213, 97, 5, 93, 163, 33, 195])]))), (DatumHash(2f9de4fc167f0b49183bc40817fc15942ab2f597897940cf768ef87c93fa0544), Datum(Integer(11619849138673604607)))], id: TransactionHash(dcd169344bc415da546970cf271abd433f7a03753088565f726230b5c9f40c67) }, purpose: Minting(Ada) } +cc 4ea6dee47095eed7adb6b2f1b4469e3ca031194fcbf8f58cb6c857342741fa9f # shrinks to val = TransactionInfo { inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(000000000000000000000000000000000000000000019f5c475c78db))): {TokenName(1f4f6c406310702632f4c3fa47392446d1b98889c00f9aa1626a94b980159df0): 298478092, TokenName(4c24672d372a413cdf59d512547e7231f0ef38e178b7018cb52a5ed6e9fdf4d4): 3492788874, TokenName(52cea5842a7d2e038ac4f72bda0bd3c6bbbf089aee1cd4f11ef1cd3190b12f71): 964251169, TokenName(a40750b39fe5116fb949a2cd52c88eb9357a3ec26036c260a69bceed6b3887a5): 2159064232, TokenName(ed869353d807ec5cc5ecd4d2aab993f4b0499fe03f8d34737974dff784818f32): 1725260373}, NativeToken(MintingPolicyHash(ScriptHash(325e8084cbbe91a0a80e30d8cc27cfc349085d2001111a51514d4d0d))): {TokenName(15b5a50db50d46d5ec5514cde300e35009062f30992d3931d3c1667e96584d70): 1865081206, TokenName(4ab14e32ac37481caa92dd11a64bffd7f7b1aeb57d9a5d2b96d27996eac65ab1): 2349547655, TokenName(9a64b19570409bd4fccacc8a554282769978875bdce4d923b1ab75d10f1296bf): 1851207128, TokenName(afb8270e291d11257fa7652e55830f0ccb1f7acc1f4f232c614a87333535d29c): 4017700958, TokenName(bfc27034cd3673af9f4dc828ee1aefd4ad7df8a57adee4a867c6ff7525f48bdc): 854588756}, NativeToken(MintingPolicyHash(ScriptHash(8cfd71a4b893f1b0ba1a663cdeea73c0ff9a116fec5bfeffad7f81c5))): {TokenName(17afadb47268d366e5422aa9fef69dc008099528e1b09b6c486ec432d7216419): 674029915, TokenName(1e2a9944808d8babb9c9e1baf683ac3ba14f161ec62431578a54abd2330f77f5): 1791958212, TokenName(9be89f1dcf4ca802510a01aecc9691008477ff1f9c7872ec339ef518ce215222): 995249238, TokenName(9d4c66b90efc1b0a9705a873394225bfec7a4c9897897f43476e7435a98ddd7e): 873638795, TokenName(f859d8be597503ec124919ce41f49f86452a6ae4045e005fb550c41cf46a7894): 664491160}, NativeToken(MintingPolicyHash(ScriptHash(aaf82f6194c9a2c9c22a2d84a6018f3db15baf1eef34ac9112df0f27))): {TokenName(42bb0f091664d20924f1233561b35a78888dbad58e3b730366c3f8d2afbabf7a): 2130410640, TokenName(a038c562498b1039ae48c86f1e0d2caf745cf52ed10765c5ad50c18766fd1e8d): 2441312155, TokenName(b603aa5b76770eaa33b7aff1e2f08ff7766a167442ea3cfe32433d2e5d7c1898): 1235255672, TokenName(c4e50f0caf814feac611970baf05e6a95ef681a4d3e18b5241f86a47e0e16c80): 3111581855, TokenName(d212a2247adf4ed99ab7a76e151c01392164857b4072fc429cbba28d10d9f5cf): 696705209}, NativeToken(MintingPolicyHash(ScriptHash(e43d40d173224446ee47f3996602239ba997eebbc89b90c5f7aff85e))): {TokenName(08f7a3d6aa99731f8f1c29408f3545f34acd59be5dd3f236f54d5a944a1b81f5): 225263698, TokenName(5f9ce2dcd7818cf2083128f9e54f98f8f60828e40bbcf3ab1f0f9522f7c788be): 733392177, TokenName(b2de3f0aa352b169490ebeb0633e4f7b2a0ad5d4977f31cbc714fcdd8eb58ca3): 2712434547, TokenName(cd30493be7306304470842dac2612255d72fed4d2d9f50e465c2a87e065df13e): 3399809590, TokenName(fdae4677b30e10039e118fd2f05ba8e9a1fe96b76a96bf568a3d31993672507b): 1218974563}}), datum: InlineDatum(Datum(Bytes([144, 218, 0, 205, 49, 206, 112, 203, 48, 141, 239, 85, 127, 139, 47, 136, 195, 94, 212, 234, 63, 151, 197, 4, 120, 67, 14, 234, 165, 232, 150, 48, 144, 82, 55, 157, 8, 74, 76, 4, 173, 68, 162, 249, 241, 69, 132, 219, 251, 173, 217, 213, 57, 186, 93, 252, 23, 255, 92, 206, 182]))), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(a2df58c0f9342ae1a01de26bb37d3fa10a8a8de1f68792f93488be3de867bb13), index: 2288900289 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(1e5801da8ba2c61f4aad552ba2666db78e014c5a0516e114e2485e49)), staking_credential: None }, value: Value({Ada: {TokenName(): 9077772753944363893}, NativeToken(MintingPolicyHash(ScriptHash(17c19a9d3c9fd2721fcd21d355cf215efc1677f4f51233868240d838))): {TokenName(487d6467f40f902700815c1f753c7472d255968fffb9700e6a88ece58c2e3e5c): 2661724228, TokenName(6772362ef6d7f7e3d48932c682d1623232c7a37c0780627bc762d544a37301d7): 432390567, TokenName(7c23d2fb743212b3aea606e7105c09bdeb8f13c41796acee993d6621ee390b22): 1475735511, TokenName(9b999b9a1d36eb0e007ba06d96ae00843d7429374861d8a0016c0ace862d54f0): 3837974677, TokenName(d2506f4269053153d864e0af42bafded34403ae0c8cee18fafc42b3bacb7df82): 3627314589}, NativeToken(MintingPolicyHash(ScriptHash(352d5f0781220fa28efa8bc69f074289772b3f7c9fd491ac771686e3))): {TokenName(0403dd3da072efb42c40980e52efc6d5ffd0d5e7de0a5184a9933e5de0804359): 2443674359, TokenName(32ec0495fb8205d2449ee8e44f17f514478d4556b7510d569491c7cfe3bd3296): 326409729, TokenName(53ff5a21aa4bb3655d02c626878d893c9673665582de1cc894d5560bffec7c50): 2758731830, TokenName(66653c46782300fe860dea0a5ae9f19d72016d2f1a789a91ae26aa667f8b02e1): 2490347972, TokenName(ce898f46d5737005a5525cdf56eb77e1f90ee1e9d32d7d49e69d49d9ce855866): 1911570543}, NativeToken(MintingPolicyHash(ScriptHash(669953cc87a77b91a385c5ac8d70bac264bacc90661ddc6a6d97b4fa))): {TokenName(56cc0e046d8b300ef14612df0ec5f196fe2c0a245c6379992e275867106a42d6): 2967458774, TokenName(7eb354e2cac70aa2076485e569ef5b8eb2cfdff1b5d478b575a9be90bdab044a): 4252955295, TokenName(a1738371cf5dc8a2781d875c18ddd7b4240f186396cd5e3988980c0eb021332f): 3304613221, TokenName(c0d6e3f303bf1a4ff710b2c600baa688908b8c3cdf172adfa86401c0d2023660): 1865242021, TokenName(df281eb7bb8a6a8421304cefb45d5ccbd250336c0eb4fb4c9c01c73537acc803): 3531359257}, NativeToken(MintingPolicyHash(ScriptHash(c2a3d01e2c668d57015ac8c793f559bc2335dbd93b216d9a39b097db))): {TokenName(0fbf10dce451b0ef5938dd50612b00ddfd7568a3dc0832675569581fa8d788e7): 745911105, TokenName(219eef88f2b12ac6e2395186f96db803914e249a79f0fc9270571edb29cf90dc): 354711841, TokenName(5bd274aab4e5113eeb5ff08d12f5c2c94e99c6b505f04b3bb9cefc62868116bf): 3519212836, TokenName(b231222b345e2003f6ce5edb59b79d4ce9aa5083f2b1124710987b6142d61157): 866543946, TokenName(e35aa0de564f94f459b3600570bb3493f61201d36233570ab8c57e6a7c97cd7d): 952891787}, NativeToken(MintingPolicyHash(ScriptHash(e4d28ba4b28ae7428db79ba76bfde03480d979cba1fbecee20e01d71))): {TokenName(13348b10567872245a3ae7378351aca35d05cbbedabce6e1274d7d9e2b2394bb): 95487821, TokenName(215634911664a4316b7f02e81b6d26100751fe9b93b4542e837675a1a64390f0): 945209453, TokenName(6a5879902fd5eb999ec210f1ba9cf3924bec25f8f5afc0573c205f4222590171): 2628764579, TokenName(7913873afa53bab60882c4017b0e69f3de328079266b74ada2ba3747357c6f51): 1087784257, TokenName(8338e35b27f5757dec720221bbacfb7f16255b0451f8db02235fb5c6e2e8ab2f): 2074210583}}), datum: DatumHash(DatumHash(d45897f55f130908190639ecec271ac407ca36c981f40d5a644be632d773d0e6)), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(20b81a65dff4205bbbeb1353bb9abce3d3ac873db8c5413da1eea8be82384e28), index: 1401515414 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(bf408dd6d4d82476144322cfca102a11207501d6a7fc0e0276abbf10)), staking_credential: None }, value: Value({Ada: {TokenName(): 17226239645628683221}, NativeToken(MintingPolicyHash(ScriptHash(05737918037b436a5e19b9a3b976846d9b884cf075fdfbe8ab2837da))): {TokenName(30dbbca2b96c05786840bc34d2c9f8a0d93ee3567866902e0c3ba9c63a715390): 1922299337, TokenName(68f052e86dd26d7657eb2e660f327beb8ba06824980091a02bf0ac4ebcdc416a): 4241694833, TokenName(7d486476de91c59f471c958f72946b3d2304e91a8ed6992de7f656e0c7ab7ba3): 1286087871, TokenName(b634ffabebe78cb006a382dd4a1603477668f221fdbdcb4fc7cb5890d3e00d12): 2722243297, TokenName(fa571a84a604363ef386b6667e638c811ceec8fde4a339e78f08a441074f5b05): 2572314377}, NativeToken(MintingPolicyHash(ScriptHash(089b760914e173437485ed05492680dc23e4692607c794ce784aa16c))): {TokenName(4b50c28899cd46744537a5004204c9d9d728f5f06b5d0a58d85a4c9b78093fed): 3055907814, TokenName(90c09083d35712db73fadfc7e3aae9e32f031930a0ac43a7d87bdabe8ad6994f): 2891085892, TokenName(a67f5a95dd298f03fa824da698785d4ee1aa9cd58f8a584a734ab7ce3f6d8049): 3604978156, TokenName(d4ba150d183a99c3f7d557d5c318ea022e03281b9c92fc58dd297c18ea687f94): 2119709419, TokenName(f801b35606a5819c8b364944bd7a29b6ef9ea121c2d2e5714129f9480d00637e): 3050410399}, NativeToken(MintingPolicyHash(ScriptHash(2e8cd2f85e70af3d9b60b3ca1e8901c9504b9692a574108f381cee04))): {TokenName(13158a46be1784110e381c1c922f81e9b7eeea899d51365f487fc139356e185f): 4105100998, TokenName(21c14848b68896df4f244589a8b97c96ecfc61f03fb340b80cf69547fd5dc94f): 2297652702, TokenName(33390b5ae6a08c25671b9712d86f57e0c5ec0a244531cf1901ac535bdd731d87): 1005754467, TokenName(e13acac311416fdd3c94b89f2cfe33d9216c4a0a1a92337438e8897124e7eacf): 3474217748, TokenName(fac1b7beb919570c8f02474c6454a1f6503a09a852c7632ebca8e89ed74728a7): 773564202}, NativeToken(MintingPolicyHash(ScriptHash(6e1ffe77b1ef21cc672c8571e46c7d0455103948e0ba13389138655a))): {TokenName(059c757801e8ece193ed78e8d4b3d10cd0b9e5165a0f563d3d60a3813af9e336): 2787529088, TokenName(6452c2fee5c3fcbc09ec4068beaf194979c1a63308561e3b2f79cc21803b618a): 1795408408, TokenName(71e6f03ad83cbebdae82f68e3a87aa2fbbad90e1e992ca49e0b8e8ed23180786): 1601844901, TokenName(e70008d3615b2d226bc617d9209ecf164ad856a10d6bfafbc3b3011f720e5930): 968495623, TokenName(f9f96d99599e0efdf46248c2a0e06f454dd5361174881f1394fdbf17ca8d5e1d): 3306415807}, NativeToken(MintingPolicyHash(ScriptHash(fbd3ebb4c1d925958b48e029b2ddbc42587ebb8a74957f779fc898b2))): {TokenName(13d4d39b83dc7ceef2756422f6b41a01176fcc63c767f9bc2f9cbd112917f75d): 2582056088, TokenName(6524fff49e693803978743da09b95209dd4158828db8e2277ca5cffc29cc274a): 2164982155, TokenName(8bab4483e62a24e056d6972f887d4203ded62d3fe678666df1706512e2251d9b): 1620361746, TokenName(9646bf625ca0578323664e482040061c4754fe26bb2499030a886d1b9f2ad3ea): 533109910, TokenName(9d5b726eb1e1b0642bd54d22f25b82eadf5675fdce754f89704112ae31b4f0a4): 4075031947}}), datum: DatumHash(DatumHash(f7178eff489ef41dbb22ed848e1bc5d9e6293bb548979d5e68a447fb1f1ed8c8)), reference_script: Some(ScriptHash(fb289ea6747fcdca3e7e049bfa455e8faff05017a33cfc2b0543f4e2)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(559d234f19bc9fd6b3c1601b5fab8dffe0c8763abb0e988a76bf5b862b003968), index: 4009668832 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(2e2f1e1cfe2c0bb6515d6d7695b0b7fed5c4eee6290d8110566081e8)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2666152860), transaction_index: TransactionIndex(4264677920), certificate_index: CertificateIndex(3656972724) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(28b906c2469c30a32687e54890d81e4fa305e4dae5a1c6aa904f4481))): {TokenName(588fbbe44d8b4162967e9a644987aa83c235fdc507a8d55e583cd42385b986a9): 381441679, TokenName(737b9a4468ce66070b24dc1ee40675f9aa7b13e002d3e55b30961adc440f9ff2): 3543701530, TokenName(79c76b9c30595cdad3fb62b0e16fe9702433fd0c19992f22a4f087784ec0ba83): 2387693680, TokenName(953f9d0bc5b4777387c0d963e51027cd662b7b6e9157e71e0dbb2517fa6f26af): 1049034266, TokenName(d1911b3f8d1cdbd93977e58d2a20498108d9d6aa537c86d7fb57856f01e42595): 285686768}, NativeToken(MintingPolicyHash(ScriptHash(521075444c4e02a8adeb39630f33204f4aa57a08419c5061a4d7b83c))): {TokenName(43a27d5e26c83ba64631942c4c9a283095cf87742799dc8f89bffd4ae2869253): 3945412173, TokenName(7da8074067919d62193c1523a67853a08666e3841e33ccc80c92168bd8f03b3f): 1773466242, TokenName(8c2304f2ae7992e7028d8c365f3b297914b1d204761c949c07fb6211b4522fae): 2147886411, TokenName(c8ed9873dbfcda2cb149fac2ac367120aa8350c0b9ffed2c7dcaccea65b9230c): 1652301103, TokenName(e1c58e70ae1f74e3dc53068609a983afb2ba2803985e081019cb4007c5a4a42f): 1647130755}, NativeToken(MintingPolicyHash(ScriptHash(9c2d2c5cbded3c9a7376bbe56776f7e72f3fc4e6b535c92f2cf3156c))): {TokenName(5230abbf696d75f31f70900a2fa9110c6ffaaa6810cc83a06b15d1bb3459771a): 1293869912, TokenName(6fdb5bf139e643629c61e44a7376574d55d06b9578ba2e7b963a4d4ebfb0dbd6): 374768536, TokenName(e23691b12dd6f37371fc685cdb07f887bb64c1011f5112ab906e60feeb342523): 3231861304, TokenName(e6ee99a53df32a5b763c19f5b6554edf9280d6003df607da0798cee2fabfef4f): 4159172298, TokenName(eaae34a4b19c419158b9ff98399f76b346555ae862a1d14e3ec2ab4ee1b9087e): 203744017}, NativeToken(MintingPolicyHash(ScriptHash(bd61cbff190876a881619f86d73a5d55264c86b56d02cc948b14bdc5))): {TokenName(3bb69975e72dbb1db6d4b9472c155db4e688cd9dbd816db71cf52c3efa13e0da): 3233720600, TokenName(8724e429a0c490b4c1c761904c0a4649503ba5162f23e3e2900c9263ef8ee348): 907798956, TokenName(ae809a3c48ce61182537914dee7d4ebc3044ef99a9bd889fda1d02a58a2c5412): 3122440309, TokenName(b609ca4c5bcd5c0c9b3aabd65d005a5bbfc1843481dfe549ade9e05ecc931f06): 2322382137, TokenName(f5740705a56e988c151cc398a18ed5837b1b25fe5f0cb49fd539c8d9fb9b958a): 1243817373}, NativeToken(MintingPolicyHash(ScriptHash(d420e0e5f8d8047a710a8f62654f8494c449af745732d6981862a710))): {TokenName(58cc66455a862097a010123985fef3c078ffa10680b0513a63d3712a078db254): 2202239110, TokenName(5e6cb177c2b701c3fa733e533f011dde3000e33a9a13a7ce2880a00e8fedb69e): 3534401538, TokenName(73d08fafff2bb03a4c297fd150437195c24d03328fa0656720ff4d5f078305fe): 3153435883, TokenName(9b58c4e16fbf0b715fc7cfbadbd7bf42329bf7ec6eb5165b7f9d46eb4cfe5e78): 2162236305, TokenName(daadf610c4b72759caf3cc74a68ccb4efd19c8264e0c95d162372669edab8b70): 779747504}}), datum: DatumHash(DatumHash(49d222c0ac35c9b277f1fb5dc57261e12bfd237aecfdb7997e89bc728c0e0db1)), reference_script: Some(ScriptHash(7195783a1c80a32e9bedc6f4c580272033dfc6a564e1b2f1ec439af2)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(5bf01807de9c6759a3040495c46900d6f1e1004f3f4f545929077f875853ddd8), index: 3510854106 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(3397e121372202825c4e91627e122623215a0019b5ad766d5bd3b259))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1e6319017bc6d35870dfbfdeeef73fd9ffb82a10471f02ecda7f30bf))): {TokenName(07ffde46fbb00dcba2284f68b2d54db29792c298a5323da8cd721077db38fcd1): 3007032970, TokenName(8bd025268c55fe46310811f006e3cf45e411bec5a9a312c9d0a1effffd359737): 573362926, TokenName(d4f6b2b4a9b8149905f5df2506054274e2bbcd7e6b337ef47b7e7eae4c23b2be): 1877352224, TokenName(d7a434c0b2a267afdaef4186da1b5163b246cce62c5810d00e52639cee538dce): 3875247984, TokenName(ef0efcd032b2ba178cfe8e6d1ce3488a7342725cb822cd2bf40755d807cf13bb): 2395546946}, NativeToken(MintingPolicyHash(ScriptHash(6096e4d59492507b837e304772ec84dfde49a2257cffc8fb1f9e1ab7))): {TokenName(49ff3246d4e6cd47f30c2574385b525c9c25dbec7a11845406060a37f6ff71d3): 3001461710, TokenName(58b6fcda5fd1478f810fdb91e93d590d563eb52836f0bda948383c82096f1838): 3909115795, TokenName(9f8c2968e3335942e64b8834377acd2e39ff74c49c7398deffa0d60d47b30a4b): 2820312981, TokenName(bf1e3ebc6ca0e89dad0c502bae61e0b80641060d423ccb5b42b16d6e6d6d32b0): 441029893, TokenName(d397907889f6e56e44d1e1db064e617c154c66bdce2ca6122a9b93f5dfe08044): 4227151298}, NativeToken(MintingPolicyHash(ScriptHash(91fc120a6bc95ed35e6d1c3de97437b88c9c0df7a42c3c6633609749))): {TokenName(8a2591f2823d48dfb34b43cd88ec0156ded5d20073cf600a83fbe7d77f90cce7): 906054177, TokenName(b74c12412fbdf969b8e25dcde612cdb30438532a9910300684ffd76c40a8ee28): 654832590, TokenName(d55b8371ced3d49abcd773d6c544eae044629b7f13c8e0649b8fadb243edefb0): 4096721826, TokenName(eb1b0a89d22d1ecfbded6adeecb7288c11b6d7f9f2fdaa9c9aeac2ae9ee4c961): 1432617745, TokenName(fa41f7f80953bd2d6a8f8b48d6de89167ec41048207bca1094fc9ec62badf84c): 3792596042}, NativeToken(MintingPolicyHash(ScriptHash(ca11f8a4aa299ed89410ca59f46056bfba173c541d1b17cee8b3ada8))): {TokenName(34a9842c88047e70dd7ba5f429fae7e4548afdb2c33f30b917b1b7f540460e05): 2855078087, TokenName(70f10b73e86031c44e9d7879f6fde7705357ad25f9d1dfed815bf3c1c57aeaaa): 3190021105, TokenName(8363d689f91d0c6a3ea19860e1f612922cc252b41ebdc58439e78d3f152a6b73): 630956407, TokenName(c2e8b562eb4372ed2e582efa03e416c6a0c072119e15a12bdadb43e87b745564): 1048663251, TokenName(d827c3f71c3f1b0e280af73253cff6ea8bd33f90beabcd15ec326ea8c8c46767): 2217654504}, NativeToken(MintingPolicyHash(ScriptHash(f326f11b693529a85b8c99d504fea277cfd8efd184c21542d61d4cf1))): {TokenName(1e22c06a65b4f4ff321ceea30a50b355c58eb1c2ee7c53f9b8809401c0ebb9fc): 248800710, TokenName(3cc271e8515140ea3fa8a9405a4bf8181b3e5d449856d9d229b9f82fc794e087): 2126954849, TokenName(aa47821195e4b19b9e7a85953c5c117d95207058bdd214c84db24883f78f69a3): 4016464483, TokenName(d0837ad600e0a990eb292b9b5987c8be5b05ed8a8a8234d9d8fc26f91512c420): 4214225111, TokenName(f48663127098c9ce94abbddb78b845cf38055f8e25df2b0f9bece6f6f1589b38): 1601232670}}), datum: DatumHash(DatumHash(04975756d0faf9b1b030c54f60108983d5d33b302e45f940736bc7f96f083087)), reference_script: None } }], reference_inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(df415a517550c6447e0151075818b245d038c64041b32b0e40ade78aa6ae0a45), index: 1616464634 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(5a739f3de0668e36ba44a52f4d49868efcbefe4083311254ac405b08))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(1642185967), transaction_index: TransactionIndex(1760037649), certificate_index: CertificateIndex(663801260) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1f523e96ccd098cd6df5a5564c7bbab3a15dce3b6b6fac5fb174a476))): {TokenName(24ade8d92c0b61f74867695068f41422fbfe4f2ad4af58a029152d31b54e4f0e): 73890963, TokenName(590d57b4d32c0f3ff17a0245ebe29d546081bb18a2540d4c1ca62d9337e9e82d): 432334435, TokenName(83fefc093db994f9f94e58d3b4493da6514e63f4a26d57205d7c9ae9e9999726): 520557240, TokenName(a390bf268fdd95cd2d7a3d4d5a36fefc44746363c0decf8fea06dc1fb810ba07): 2017639615, TokenName(ab2a2d6409074e673ce5d02136d684126ae5081fd056026c762ae682ba6566d3): 3371327882}, NativeToken(MintingPolicyHash(ScriptHash(3ff91680463d13e8658e6622e8cfcbb874a2c1c06b1d3d77a1f01cd7))): {TokenName(341dd49ce78f0d05e07bf7836a9401268df81394d5fb1e63dca1d1b7c624e2a1): 1636164768, TokenName(3ae27a73f159587bdc5e7a337dd8fc8fdbeffd3a83cebabc55dcaf2608e0edfc): 2434315557, TokenName(41b20167c545b9197f967307e9d7d6ce58a173ed9ff283054a3db3c815053428): 1875763754, TokenName(49bd43ec952138899db4dcfbf784ea824037506fef27cd4c2e90b78959b7f365): 3707640368, TokenName(58214c3b2e9efd3ff5b082ba446e879c07807df1c3ee7bbad4d865aa223fec3b): 1984329010}, NativeToken(MintingPolicyHash(ScriptHash(663bfe989ebc5a2c47a3d40882de274a7ad1b999a30c470996e15bea))): {TokenName(25b9e20732e2e4097b00f2b1c708be697d2c9310721413a5452591c104f9804f): 2953456755, TokenName(488ba5b3c0807faaa44f59175a45aad0f7418103355116ceb853c0c72663a78c): 1465740540, TokenName(ec0fd3cf042a8075bb044a640d5ceb1f9916600fc4a26ab577dcaf9388a2aa38): 1111893591, TokenName(f34082bba61c76b0d69b585f8bcbb47cf68b4c7ef6ebbc91b8cc7688b1c02dd9): 895735227, TokenName(fc1c46beecbed4ce405834a512e57e6525431abd9d34e1aab842503a10560df8): 1571903970}, NativeToken(MintingPolicyHash(ScriptHash(8272c6bf89dec17e0c7fa6f89112b83b981546fa5ecd21ed84b3dca8))): {TokenName(1cebb482ef4947b994c00bafdaa4aa940f63c3a9ec059d8667da977fd7376e5f): 3166366252, TokenName(937d23126ad90929c9ec06ad19648fbf8b7dd6ebe2a1fcb2fe00933ce9c476c5): 626618109, TokenName(98eaf07a98270c03afc15f8d0ccc99015c3b8b4c7436732a5834d209cb09b09d): 4274731156, TokenName(da08ead990006575b9a4bc9dafb61a54e3be96284c6b6e5aae55bdf642cd5144): 2040089960, TokenName(f9257d246196b66d06273f31f2e2ff44295b3d4500bd74d93f8c111cbaa1166c): 2184766469}, NativeToken(MintingPolicyHash(ScriptHash(a720ea7e0809c3ac5c713b5087ff3e644933054e60daacdf05ec3664))): {TokenName(4d9c8a991d927f5a3a48e23c6901e33ef40517d951b6f85a13e62738c53cdc88): 728993400, TokenName(6a2e66d1bf469d3700d9cc659789f48d7871af58f20e23d17e7bc4c5993ebbd7): 1636587822, TokenName(923f2410e1a26de90deb9321d6e8131513bd95997317af85c297db0f4ee98c59): 3168320013, TokenName(f4e4dae63403db9b5422f649344e93765b5939fecfebcf865ab43ad189012fd9): 1619540935, TokenName(feba086c2a67091b06654cf2581e0958433bb98a7684bdc45c4382ab0d2287b5): 1112864610}}), datum: DatumHash(DatumHash(aa381003c42ab45f09cde6aa098ba1d100c1102f1a95c03700ce661edc9d2792)), reference_script: Some(ScriptHash(9deca16118132eb6b89f3e97efed1c0017f116c80af86bc0d944b5ee)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(c79f9376867c429a8d6307bf1ba38a78b92ca5099b64d353f2bd5f13d21e47f3), index: 1046223877 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(5ebc06922a39ad8a6d8ddd73e2741e2d5213a188fb27a71d50e4e2bb))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(0b63d507e5a04c9716e3858d22a325a72a5eeee0a6f68a1484a43b2e)))) }, value: Value({Ada: {TokenName(): 1437288783675715623}, NativeToken(MintingPolicyHash(ScriptHash(0074a43a2693b26cffc8757369540be4be08d0e5b83eaf9161269a8e))): {TokenName(03a926192b9f9f59d0fc810a03723010edf357233ac3969bab8cc3266e439a26): 1131830174, TokenName(1b5f59283e42113f6ffd272dca36695f730d9bd0d4bfa37ed38e59d74e87e702): 1440155443, TokenName(2b9455fe459033a04b7b1c1b4838d4bee12154b74ff66b87bfbe89238908d9ab): 4054564423, TokenName(3de84e7135ca95aecc0d000c738094ce096fe02f1b5218e283b69b1c55457463): 737078855, TokenName(7569a3d99a6e907ff8c5656f2a1c6d2e712fadc5cef23a00124dd3e1727126a5): 564960642}, NativeToken(MintingPolicyHash(ScriptHash(a1bd784d3e3023605fb9c95fa2ad4cb30fb915c884551f219c8f33be))): {TokenName(06747581c17ec06e4411dd9ccd2e22816df772f1ca8c97244901d3b43713bc32): 3692834816, TokenName(a246734c268a8dd05ae3a670ad3c6ba506a3957e57c403ca70aa97d033f1e617): 784084324, TokenName(a6e0cb8449baa701071e0f177e348d5ea2044cfc71bd08386c013a4e4c7d0daa): 604805320, TokenName(e799900d7136ec8aea19eeec9ad8a32aa836004cbc95518cb079498cbba1edab): 278927102, TokenName(e89402e1d2b5691a22eaaf2d65b6565aa4b6ffa4a48d2ea8ccbec2e092bb8272): 3634787523}, NativeToken(MintingPolicyHash(ScriptHash(b8e9a529c5cea23ebdaffd63012a782443b1e19aadd5c0b4248b0b47))): {TokenName(00c25213c4b035d4103ff424dc82318beaf1d5c1910f5b132bebb6f29bd16ee3): 594035392, TokenName(3f13e06840cecfc2d1a615b3193d0a3e41c5e9c2ca0cc706c02d15ccb0bd95e1): 3394473675, TokenName(591f635766d756c3295d3cea405f872d31365962f275fb0fd3fed619c796207e): 2482322837, TokenName(6925e28f1645454951027774f31eed7256784b14e51d2bcc14b6cfcb59eba06b): 1270601231, TokenName(dca0e1ba39e0cbf67c07f9ff559bc7bfda83576e2d8319f436e75a9e0d334437): 1732855562}, NativeToken(MintingPolicyHash(ScriptHash(b97d707f5fafb96cdaa3e2a19c39f1f12a8d0081c2e6fea3cceffefb))): {TokenName(173172bccb64ddab80accb733e3d96f10a8d062ecca6859a19644ab94bc6fac0): 3621726364, TokenName(17e742690edb942f790c0f97ca1948fe64d9f575c9d0ef4d423b1f3f0e2c4b8a): 2191440209, TokenName(220eb801bbc5a14fdc4553788f2a9e57197ad2f56afa2030ac36ef591b6d36e0): 1170382379, TokenName(b5570a8fd206cbee80a07e58733deeecde9b7222b8897102fbacc978fb0b3d7d): 3932551032, TokenName(cd897fee77c48f0fa95ee408e2037e2b8ab3bf4c44c5d41a7e9b157c9b17bc3d): 2794123672}, NativeToken(MintingPolicyHash(ScriptHash(f672e09b3595ee889e63e3b9b4023fb5467711b252222ced42783ab5))): {TokenName(1630a8bd2d937d0d2070f26440e057f0e12ceadaa1c34c0460d96b466a004729): 3163183386, TokenName(23a039a307d2e849cdcf47db0a685036424e5ff57730c424b8c45fbada65b3d9): 3199400815, TokenName(29169bc37d2e748eb3600d47ca6bd98eb14e3817d6b7d099d144b52f84c5c93a): 1882230065, TokenName(7ccb634032bbeb2e1c4312c1a1cca9a9bd685f5306f751178f4076a8f37469b7): 4271780163, TokenName(7d3501889609d089e4a1a4274a8854b210d7d9b28e398ed272ad0df770f467b8): 1943632457}}), datum: None, reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(574dc3fffdf7f3ed60aca80d1ca2a2205b5e3fa9e1a9667091d42dab240bcc43), index: 1737862752 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(15311b4673879ef3dff1bcda3f0af14f1b655cf8de19a8ac983975a0)), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(98b3e048de37f98c02a7fd31af92e9db6c20d781b0168c2822bb66c0)))) }, value: Value({Ada: {TokenName(): 16230381661492709578}, NativeToken(MintingPolicyHash(ScriptHash(0d1ceb7ca1121466f7ada249ca1c3e5fcce9d44021140a3ecf3e9cc8))): {TokenName(10fc501c063c1a74a2359a2172841ade6771462fe78d29095f7f0f3266968281): 2582985031, TokenName(3724a231d84bd925d7dabaaf5d94a15f151c2dd54ff9fe58ab199e7509c227aa): 3694507265, TokenName(39480acef125beed8909b29de204983105398b33f33358d86f98777c5451503f): 2205022978, TokenName(3f8c6652c58249e0c35a5da6546f80c5926f1f42b0285ea1d54999079df5f1c4): 3407071085, TokenName(e2b6e1f8e5b0e80c928bc651891b77e4ebe207db7e6c1f537c4bdc9a350bf4f2): 872356174}, NativeToken(MintingPolicyHash(ScriptHash(3c73b484f46bdf1d7bb96e1ae533d3e5aa1d16edd2863fb360fb7b55))): {TokenName(06d12763b7542590703fa42e2e43318df066acd7409fb22739d6515bb0a03d79): 1819498667, TokenName(16fde59d7533b1380be38121eea39be53709450cf2e726050d8c60e47ad62933): 806139923, TokenName(569253efe1ec413410968ef31e432def344eb3d2492a7db72fc3b73d21281755): 1878438217, TokenName(b1ca962fdce4f75ccba251d99f165a789ce31c6d09559a94974b33a03c3a88ae): 4007461623, TokenName(dbaada2cf21170b22e59b6ac3e7a5533d1bf48b34724aa92b62decd929c934f7): 2697836738}, NativeToken(MintingPolicyHash(ScriptHash(46d6ae712b079556715503b24eba3a475eaa94606f8d78feedf2c65f))): {TokenName(18b811a121897ba78680bc39eadbe33a18739aa183a434d59552ae7f24bc32de): 3777657427, TokenName(2326797398f3e07284b60b036c05f6590150cb1038190ca59f55377e206f5ace): 2877689602, TokenName(8362d78368776a9e80d66afa84462c2dbb6a5907d44729ab9279d4dfa723f6c2): 2145995569, TokenName(a9bbd487d4fcdbbe140d117b189d72a27a68c26edd9e8e5e54bf943f29692453): 1808718724, TokenName(cec5091ca8b1c71d5501f5fe589f285b175807b2bef03ad8ccdd457e7b08908d): 3272690649}, NativeToken(MintingPolicyHash(ScriptHash(e3338024c8a5ffb0c28de02741209d83447b3c0675e2eb6d70996a4a))): {TokenName(49ba7085f9ac95c4c599c4d52a861bc5426329867ff6021ab505e3b12ad48aed): 3370763027, TokenName(a764c5883ba2bf19caf1b1aa118a0f2cbca77b2e6bb8870fc2c17e5df8c57c59): 2806304134, TokenName(c43ac5b2c342c26147fc855afcdf90980b35c568dbcc9008372c046ff7de43e4): 1106846568, TokenName(fd898129fba868d557758e7e32ae34c8503d8c62e068a961c115ce212758f392): 339702258, TokenName(ffd9e142dad2df259756fcd01505238c02b9b13e3195c3ba5a8c82d196827c03): 2218489873}, NativeToken(MintingPolicyHash(ScriptHash(f0131469c07a63ea397e90bb085ef69d6cbe8edab961ad5ab1428238))): {TokenName(36412d5b62f159da7013a415d819aa24e04351e112cea03e3c6d150fa50f566f): 3116135450, TokenName(5e3d08814c6f9c2e1429277f69ec637133298007ba5e61c8073c7c4e5dced40e): 311137970, TokenName(7b725f052075c12b6a694ab63685621c6cd87db9cf3a7e4c676c9e4537722e84): 339725338, TokenName(d0063f34929204a161283b38bfe7b86ef20696150d9d0b2dcf5cfae7e57e97b3): 3418255052, TokenName(faa9585105f14e92d29cb2fba076ccc8825eb3a7554d99f1482024539f857023): 2693480752}}), datum: DatumHash(DatumHash(1eaf166dbb0bce4763cfeddc4ed3bd2ef481139d3c151016d768e7efb1f6c02f)), reference_script: Some(ScriptHash(729732baece33f3bc70839225a3b5c905e687e252a1f7012fea33263)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(a6ed2bb95a666a41b3c3fb8839b684effc7fa7bf6e9e54a7b33b46393fd65d66), index: 1928408220 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(4a1e2a6888b02a397b323e2533d0750f671bb4e79bcc85ebc4cdb531)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0fc8fc17b384722cd400d4c54cbd71d5e2a5ac29bb6cc09be8f2f755))): {TokenName(35938b0962341321406231d16c53e72c6bf689d8cc05ca674281ca11f26efb2d): 3055792083, TokenName(59378f9e0eb588818f85c71944354887f2dcee121f80fc5067ac767c42452775): 3070254985, TokenName(95b542ce3eb0392e33535cd223c096a958e4f3763284b1281f9c7e8815d87751): 449976769, TokenName(f1753a148eab554119b5a22104a5c6733122c84e856356e9ee61c8e91495d3e6): 2498916922, TokenName(fbfbcde34f443cabab43678abdbc28f846f39c38122ecce88b12dcbae1b59333): 1101837015}, NativeToken(MintingPolicyHash(ScriptHash(3edddd71eca5f8a70d09324867d7ead9f9d33233e1041810332d15f4))): {TokenName(1da1c3fa4ed1c921b34e069024199c079938272ebfdea23c6baf5b4b1fd613cc): 343871666, TokenName(3056be3c98d4c7bf3034ad5a94dfb0e9de83b7c53743a379e9fb763a92f3cb70): 1496672825, TokenName(566ac02682a92c4e51cbe0b585f70d930999a27bc060dc44bedfec1aeb969318): 2143451717, TokenName(84c4215a802391fa6e881b67ca81645235634c4436e328e2fe9e489c154a71ba): 582051554, TokenName(ab7df4886ecf1c201a5cc0f2c3e11732064c0383c12a45e8284bc6be35552ee9): 2477410850}, NativeToken(MintingPolicyHash(ScriptHash(50aad9b6b1457fb78ebe72a6d0c4c81aa39014a6ada137b03b959a4f))): {TokenName(058767cf5b7fe8aa163ca3d9d3815e3342fbb064f78ba69bc5ef35740a5fac2b): 89405133, TokenName(96bec1ef9b53b4b1bfd65c5c5bd1c751d365a535acd4bb11401a4e4172e83fdc): 1758977106, TokenName(a0f0d60221eb611b192c0318fe46915f41b03839e9922c40bdc1a326483cc36f): 2123971366, TokenName(d4ce842c79fddfe255e81c25bb4189e53e419cf4f74c35d5aaff12c198466456): 823370924, TokenName(d6cc40ab3a5f47dd590dc0bd2a87761f556b9277fc7301dfab8c1dc42327f51b): 614533644}, NativeToken(MintingPolicyHash(ScriptHash(7dc5472beef575dedeba07247adae0b43317f20c7d4f7d29d2ddbd4f))): {TokenName(201daf01c4717c5f43241ef5f170ae2e873bd73aa67444f5c49f3ff1356e9bb6): 1107385662, TokenName(4f55db736a7417bfa461633252e53767be23915fbf2262e308a0f843c6254d8d): 2200142665, TokenName(9028f491cb42e1f58077de7b860148eaba964c356aeb17948f51fc4d1cd05162): 3435285839, TokenName(c0bd6aace9ea7035000bdca54a0f75b94cc500ddb7c72a45e178556ac122e575): 1855012893, TokenName(f86c5c22cc8fc83b9ff9887919723ad0f52c74a35608b4486868d48309d12dcf): 292819744}, NativeToken(MintingPolicyHash(ScriptHash(d1e78e1b55ecc37099b09c19c4e43bc7d80091f6f7eb04a3dfecaf7b))): {TokenName(46fa6f11a1a1804d62e54e99c6008a8d4dbbee7e1ca8ece13723f41b7ae91ae3): 1958321457, TokenName(98b6a889c7f845563a43ae3d7b9b79175178dad15a89aa17857833797e478b2a): 3410658069, TokenName(991a5a44dff719183517b49de66e4e7e5407332e255997d4b00f9f2ca935416a): 2785847006, TokenName(b17a60c7d3b9be063fe04e5d7eac10680d3638a4b7c1d89d1a00b48db679dc1a): 3566753732, TokenName(b6ec271b2023f299b9be96cbb9eb0777f070f50b1c216e1dbc40bc226642bd6a): 495228508}}), datum: None, reference_script: Some(ScriptHash(82634bd33f7891bb389fcbdd6115237f7b65023ee592d3f11d24df1a)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(e8d0512bebc3f22bdcc230f16e701440d7658f93e54483160d65b6f62ab57c29), index: 2071800198 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(dcb280b41876837f300028983756d137e7215df92c08fb9b79f75a86)), staking_credential: None }, value: Value({Ada: {TokenName(): 5624235340638428308}, NativeToken(MintingPolicyHash(ScriptHash(1bac1e9619c62c8feef66128745efbb22d6f0a64aa631f461368ca63))): {TokenName(044bf02b9bcc5f707eaee855f0bc004a381b0d824bbab801f6d8c29fb58c9ee0): 3379296639, TokenName(36561fe689fba2eb8293e2cb270b3eaf53aeb390cf54f4f601f4dc006f8dbc14): 1047494172, TokenName(76b3183a61ea1fe69c0849452b46c6fd89d1a73e2f53de79bb6dd5d232dd4d88): 1290674388, TokenName(ca9f04a8a1510e023d8c044e4795ca4acb6596969280e22c37575e9e89c43cd4): 353384854, TokenName(ea41a6b1405d779ff6f61c6c8bbc8e0b9cda6bbf0412bc578e481da04676167f): 3704700847}, NativeToken(MintingPolicyHash(ScriptHash(1cd2215b34584d4dda4bab887b76f94d89de01a13abb61e5a9650528))): {TokenName(321a8831d15a104684ded815355bcf613f029df63346b4526b446880321c7a11): 2279194748, TokenName(52c417351a1782ae31c242a4cea1422f21279745f58b5e86351a755c5d049c74): 447980304, TokenName(58f95e1ad406bffc94e98d115ed4143f6da0fc5020344922e2d1d330c4ed4e32): 1746535223, TokenName(89887ad74d75176efcfd911b64d5e91155a4ae30fddf75b3074fbf215fbd4e4b): 3134212159, TokenName(921074537b962c105e1bc93216b3206fdfdf532c9a5f84f2691d5de18b27bd54): 495942185}, NativeToken(MintingPolicyHash(ScriptHash(25cd2e487a68d1714489f0bd1a74544ff02faa453ee82a18bbc666b9))): {TokenName(2b60bb3694f2894cd0a0a8b384c54cff4dd4e742998634bb27476bda6609f533): 2655304319, TokenName(3c86f4af2e89fddc5617cdde51d98dcd92fb90dbe3d97c7399e52e99f758ae73): 2837538083, TokenName(cf8ff5e5069ed337f0b84eca5b5ca2245db5dd7a3f1f5876d45ad887e306489f): 3133768452, TokenName(e870a213c3bf8136803d4a89c5562527828ee169d5a656bbe9f9083365e7216e): 1159067530, TokenName(ea558ec6232b2e6a59f3b92b937c9448f9d37ff4da3329e6b7291b6b3e1776fa): 538535041}, NativeToken(MintingPolicyHash(ScriptHash(87bd1e399ef87a366c2f862af586f7a88f07966a2e0688a2ef75c166))): {TokenName(02c2dbd555cc125cafd605272dbf268cca09067dfefdaec562ad9e1f31bdb59b): 1031204712, TokenName(19d88465a294458f0e949947be5bdfe74f6ad0e52aa92d7e69d714d88be82509): 1211739728, TokenName(3090a67fba097b8f60b320ba8a0eb0c1b73d1c37ef1a9e9888a50b5a9dc948ba): 2089163239, TokenName(74f2a85523073b48388f8649d1981d46bda39db4aa82ff1775b53ab686b83ff6): 2360565832, TokenName(ed16ac0eeae5444117899b1a858abbe2b9773633165a15d33b94725a0138dca6): 434838110}, NativeToken(MintingPolicyHash(ScriptHash(e1d315f27b5cd3cbe257dd6503679813d062d5c657841c5cf9c70367))): {TokenName(0adb1377740dfbb286c40b30b42982ea96b55b2d1bdc45486b72eb361d27429b): 548348522, TokenName(62e52135eb6d417910f8f8a88e75c9d6e6dc681f555633c9e25320305a02a46b): 3899433438, TokenName(6d83cc65bbea2df50bdd3ec930330892797278df582d8479dfa624f3a63cc412): 1029726376, TokenName(d80a519c322837737f5a3a91920577f3c39d398ba4b78626e032be10fe8ba3a2): 284355618, TokenName(e71556ea487ef26bfbcecbbc1e2d5b51cebc06b7a2f3b87f9ba8e70cafb92700): 2559183258}}), datum: InlineDatum(Datum(Integer(-9956574158313405922))), reference_script: Some(ScriptHash(52cee8e61aab51d5f7609891697546ac7d87eeed93c2c6dc3acd04ed)) } }], outputs: [TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(9c58589c8daea6e0b0409c4f7ad0b5f81c77da6ea341f3f41bc72905)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(3059909667), transaction_index: TransactionIndex(289629170), certificate_index: CertificateIndex(418984329) })) }, value: Value({Ada: {TokenName(): 1778766396015761356}, NativeToken(MintingPolicyHash(ScriptHash(1197c6b68c6ea8cc3bd9c65e839851e3da58a6361c76251bc74117bb))): {TokenName(321d367c79a4aceaa2e8bc758200abe1f124f537e911df4fb33b4445f92a4900): 3508830932, TokenName(64bebe7bd1091a3eb2c1c8434ab3a20920e5564d1bcd8dc0df82d7eef7dbfc86): 790197286, TokenName(6bb8ac3d79705dd2ee39d16cc1c4a10b8ce210cab7cd570da8e9ae0cf331bdf8): 3371814343, TokenName(aee720de84015b51f7e36d957c7f6fe676da8baa71343c84fe55a1696714218c): 1578127368, TokenName(db14a6aa9dc0f0d2cb7610fdec3fb3b75a5a91c51cf8b31f8beaaf69436ca212): 3210872368}, NativeToken(MintingPolicyHash(ScriptHash(2a5ddd5284b67cedbbc0b9542944c54fd596e6a43d481de474ef0167))): {TokenName(1f8804ad5e8d32d68ba6e80dc84093fb057f25df3966741a3cefd239f779a289): 2829558214, TokenName(c1cae4a50ab84144428a9000d3e3fb22ba871982a53722ee99d65a41dbf2eb46): 1823425964, TokenName(c1fabaf56e2d6b9b575e2e66a1179a86e36660ec9acf91371cfb6d9c09490a32): 550930646, TokenName(c387c1bced5c13129aca014db0288e2244027e119d113d09a763c350612cdc67): 4216692701, TokenName(f4fc067b6a112f17b33008aec89995b5bf82a7d713d7310d655665ba75b0a0d8): 2786331769}, NativeToken(MintingPolicyHash(ScriptHash(35ba236db90c96c3c68b24a811395ecec20ad533dd5bc7a1a5e201da))): {TokenName(341e212c607383fab014eedb084bee56f2748007830aef3de482b12435f3db07): 3512203437, TokenName(562569975b624cf11e43043c032a114f8c7bb1d599a42a71481b86093e1234c3): 3589545001, TokenName(79dcb3e70bc3c6d22526a623d219c8bb0de1a8dcb45997a41a78b1a760e598bc): 3627015719, TokenName(a72a5e390b047db8f424664553f2a2f66914a974d7d5ad613f6e673e0b66b46f): 3523736973, TokenName(b5a42eeac1876b471fed880f36d92f4039dc906d2d518bf44122382b057088ed): 645553009}, NativeToken(MintingPolicyHash(ScriptHash(60c58a89772f3f858ca9ff76f1ec016afba91f196ff136a65439928f))): {TokenName(2362bad679a7ef42722ed43dbaebcad84b37d0054f9c64222d5d791cb4002e65): 2033594753, TokenName(48a009b659e52be6a9d9965f2f17db6f67203af28f5d0c92a21a1a0cb1ec7bf8): 598407792, TokenName(73989a41f7a31ce95ed23c1194448f66f5ca8fbd22f3c9fa83aeb7f3906167eb): 4045763823, TokenName(814d6964cd4464d1ab56f8e37105c739074096e16f0603d6889390431f362326): 2385763296, TokenName(e20e4a40482613712852f8299166bfcb350d3df88ac203fe43463558ef580228): 3226393680}, NativeToken(MintingPolicyHash(ScriptHash(b44b437978704052f799c0dc85035e0a00418d70341e4b215131b99b))): {TokenName(8a840ac55856e507341465ba66a1b23c6ae7fba76c73d5fdb415cae1eb8853fe): 2344408113, TokenName(8d81c723280fc3c49b8a09ac006fdca235cc712d764ccc4b2ac973c7cb3b067e): 3349808160, TokenName(b3bc1bafa4c4310fba9a68a081e692371d8c7b735bd62d84c1d336640fcb08e3): 4201247644, TokenName(d2fd15449c1b0168df70370038ca3f7b4ce291be306af4ca47672e6d891d824f): 3290109883, TokenName(d6e4c6a99371599e79f9412425696f389808809c52793ea63cd860fdf0742c59): 3890841551}}), datum: None, reference_script: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(0faca775bb455e5e7201dc2e15b8419c60b5af395a0ca6458a4f45c3))), staking_credential: None }, value: Value({Ada: {TokenName(): 17191670480344166570}, NativeToken(MintingPolicyHash(ScriptHash(13b616f498a53cd6d76ff003cad8dfbfb943862699d6ae1dd2f6d634))): {TokenName(1461c1038be0d7c206f85ea0b74bfe9dc2ee27274ed6712dd56cffb7898c7696): 1324640563, TokenName(198bad8abb024b7a1eb03cc65b6809f546b0396a90251df6c6b754be3aba7b84): 1867992264, TokenName(534228e3eff9fb336aa0367983f54199fd331220b4218d01b8123a981a80495b): 89428173, TokenName(97801264b4899a0a218373e01685c6dd4a9434a01ece135db94d15c6ee25d67d): 359436282, TokenName(bbfd804238fb1c4d9cb616ce09448145efb2a2dd549fdb36debf6bdbe4833e4e): 4275275621}, NativeToken(MintingPolicyHash(ScriptHash(8dbafc2e9759cc031dda7d36617b7e05560f192a2c20f2af78fcd76f))): {TokenName(55a428280d87a1eaf60a893a0f60fd237400df3466b7ce5802487bd2de8163dd): 967396829, TokenName(8499c0da34c51e108b13d1c676e3a9c6856d138be064c386570d11099bb46253): 3160710516, TokenName(9a727bda26b5febcbdf4b453b59224649c413bdad806a554698e8405547d7bd8): 1816487296, TokenName(9f906cc1e3fb83b442d8a23944015b45f4b6d71ed71c1e81875ca77e9050a0bc): 2866195868, TokenName(ee0afd07c03db18cc80f8d773cb25bac7165e63b2a6c68462d0b9247553b831c): 1570877030}, NativeToken(MintingPolicyHash(ScriptHash(a251260a0b82b0d05a91ed969ef66eee43699da7191faa844dba8425))): {TokenName(4ee98a99dea47d7d7284bad0fdd29a0723f769d63c05806134739506a2021b89): 2346037911, TokenName(65dbf707d2322852c658be02d749b38c59401e0409e300ddde0d12a34447b6ab): 1315013433, TokenName(6d0db7a763a6f24695afee481a6416327c0568c9fe2689568a04d332e54d9881): 1499516955, TokenName(7b874bf3977c665b77d50cc4eb476fba32dffa6e2b71f5d9d5703a28e228f5a7): 580680245, TokenName(8d36fd16080e83ceb493dee8288cfb8bfb79aad0343111b1709d617d13927918): 3616164132}, NativeToken(MintingPolicyHash(ScriptHash(a3cd9d960a5361d08a68a62b391bce02f40db08014e790fc50237226))): {TokenName(01ef3f234dd923cdec095839be17822c67ef030c04b575d9e095e39d897a434d): 103555697, TokenName(2821f1e8c7e4f204bb4fbcc85a963902874039f8dc2ff00b703954e3393da340): 1155791812, TokenName(4fa210c049dc8d7da88885b68dc0eecb2fef421fbf3415ad37eea80d10cfe43c): 398998325, TokenName(882f0a31380fd236fb3a37d2d265ee00435de875bed57f9535ec842d11c1f1fc): 2842051405, TokenName(98b2bea36a9a055d2c13012ffde883f02876d1a9c232ec7b400d0c19ef209db2): 626549601}, NativeToken(MintingPolicyHash(ScriptHash(da54406e8a31e3bec9e2902f116a036b657cd4edcdbf1abafecdaa15))): {TokenName(00ded037e41a50f777d585bfa6d5c455aecb2d44ba4106d23537b9e214d2ecea): 2915435893, TokenName(0971f6078400812c5e84f8f3b2dda6442b60d4342955c1262a8668e10cd7e84a): 4088687709, TokenName(acb5df938c0510ebcdd443d28e98fb4d3ca3b88a3f5f80147cfecadeedfb6d17): 1175270776, TokenName(adadbbdc61b5e5553fa34ff6fe9ad6c6bddc9083017300ae994a1cdd1bf277b3): 225174560, TokenName(b5ac403a4a9c86760b29815d564fb7835acb9c24dedd2ae20abf3ced5ee2627e): 3526364138}}), datum: DatumHash(DatumHash(1f1cb46dde0b2e062f29bdd4eaf704590dfd4e75a24a594fccd6efdcad82c28b)), reference_script: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(9a3bc0719ea5cefb5c19d499e7f789f208d186900d5af551f968ef90)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(09d8289290e5a43c238a7bd3e4ca9c165fc96ece0d43acfded07d0a9))): {TokenName(003f5993d9e6be11b15e094030b592e24fc6bd70e3bb475fc1e6a9f8a1480449): 1815528716, TokenName(7ad73078397aa3477623017b9a3264df30a68b40d65096e13c9af7555f083cef): 1229163749, TokenName(7dbfeae24bca1701c87c91c25697a06bf478e35bcfa0c2444e93ebc20480ab68): 1382274669, TokenName(88b26817e33204a94f0898c894cbdb6970f41a699c4ee2bd73749b01659302f6): 411281757, TokenName(c089595ea7ac47a21b89c9383af436dcdcd6a93373fc42bd9f2cb5f6e0d6c7ca): 717514761}, NativeToken(MintingPolicyHash(ScriptHash(86f55c87fdd257e4bacf0136c5d28ea39d360f855c7e5cf6f242bd45))): {TokenName(23b21e6cdfcd23c5a999b219f085f2053aea2dea8bae3e5c75c36fe5e2408a9e): 2338625822, TokenName(4a7bf08cd87cd3bac81e17ec6552ebad9d2c140f70a39c0bb5745a0220ba8146): 3024758461, TokenName(5456d402fbfe36c7af4caf42fdd39e6f4a0aa1661c0fa10fc0723f8271bf89ef): 2136873665, TokenName(998f379a2407323ce62513463f459530daab36205d0aae750d86978d29660cee): 1783137114, TokenName(c24ae0cf5df8dedf4dec6f0112c6d0dc4adafc90159bf9651efc7fa2c701de33): 2718346328}, NativeToken(MintingPolicyHash(ScriptHash(8e81ab149961745cf535f1cdc0cc81950d076f4e98fa40847ed43100))): {TokenName(176b0db781b4cdfc59c2c2e4fb22733e1c228bf81107c7eff14d8213a1a00a74): 3843140964, TokenName(2d47eb236d7f4f8f422a27329df18b7c9d52202528be053c666eb9a968a357fb): 2710449835, TokenName(3779482f325b3889e3ba4387017bb05bcbafe02ed258f48363d42bee29fbf693): 3203306923, TokenName(4c97ee670e6061f0ef51987ea97c630c026c3895466e0e94db71a40bad69e112): 1343640868, TokenName(9bde7c9632b4f7bc5a0578468e510d860359416cc378d8580f82042bd2d76e23): 1013243267}, NativeToken(MintingPolicyHash(ScriptHash(b55a221780d89ed4cfe3446500f37676f8862a18d5fe9ffd029e6b54))): {TokenName(2faea7bb72d2f4f42f421ca3474f57ed7a0bc49bfe50e7fe6b4aa0bfcd7559f6): 2052560625, TokenName(5f55ff60553ee1d98dc86caa26f9f54feb69183fe583e9137bb2aec2a072c000): 3241834987, TokenName(61c6b54180c029682f51b1b918d3fc22b6bc053964b6d35801f59271a752dde5): 3108922155, TokenName(7e5a58d41c5b2354da63977dc1d505ebbad9ba92badc235cc74d4f9f3e4b7849): 349744316, TokenName(81b1b4d3f19c1e926398d6509d7459c1b4b4a5e3f487e4b152ff11f495ce0d6d): 2585552279}, NativeToken(MintingPolicyHash(ScriptHash(f95aaaf4f41f58473d9950d942dd875f619a55983bf4d437b18ee209))): {TokenName(33542a248239c86bc6a840b57eee80168862a706ef23a2aee3df3799f0a3ffab): 424813100, TokenName(59f9c15b98b54f119212d7828dee1b9c550fff5a2f9611bdac7edfeb8081bd07): 852321931, TokenName(a4b10c965633930f1c7e035b8c6aa2c3b4a8ccc7aa90486054ab85f355d87013): 902256490, TokenName(cb10703e6869e04bd24c9aaa966e90077ab20f5693703afeb75954372d684b54): 2343434831, TokenName(e306aa8b0e176caf6d36fdf9133ca07913a7e1166bc235f9b3f44be504fe033e): 3855295454}}), datum: None, reference_script: Some(ScriptHash(30f531f0d8f059a6b00bb17e95a7c718959fa751558f44a327857b25)) }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(ec761eea39c340a69c6fb3eaa372aeaf800555638c910e1e025c9a7d))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(03ac18eb0e12b53579997623a8f72fb3c429c5ebf5a41a4ccdd21d70))): {TokenName(19ab57f5fa488fc110644ebbf08da6fcd4b7f1b544f38da09b040f8739bbbedb): 2518964382, TokenName(62416073bdb421c7242bb19a546771a2b0409daaa66292d95c1cb33bc8943f8d): 1656408066, TokenName(a151df70ea8442edcebbde742098385809fad19a7b5ca9a467352a7ca1958143): 3908199478, TokenName(b397d9094ca4d8ac4c5890f63535cc519961a2fb6ed2ae85f85762d71ee39bd3): 1352267552, TokenName(d9e7c9df00f284849ccf4a99facb9e93a3dd6086747da76aa8676b4804bdf618): 2861143482}, NativeToken(MintingPolicyHash(ScriptHash(91fa53087d9026ebf8829416fcbfa3cba44ff5fd2de2cbf4dae4c766))): {TokenName(04463079dbfede339bd942f061f977f96d29eb8dd332c95ba7a83fac6dfae3d0): 144548287, TokenName(0924d74204259a14f3d79dcc4c562a9c6ab0117e6a27a88f7bfa7b739fa96e07): 3509554855, TokenName(6f27b648acdaa4746354b892be555c591747a0cd6f913548cc2473e4eee6f3e0): 1675798510, TokenName(8b5353741929fce6b960b675ae375bf2e94ce5f82889c7346c29b591054cdfad): 3578297260, TokenName(bde71f055d9c5f0286f337a6b82f6bf66e29aa8d5a5f5bf5302477be2aadf3c2): 608042687}, NativeToken(MintingPolicyHash(ScriptHash(b9064d7a8c2a1110a531d561d7b6bf7337b4e1960fc29a4eb8eafeba))): {TokenName(21056bad64decded64532114b0a37e8aa53f6149b07cf63064b0ab36a2cffd8b): 2632119827, TokenName(30ea01ce043be88cd6b868c2c7ff30cd91c2f17c9dffc0a53d264d6ea9528011): 1463337029, TokenName(456a14b9402437b057f06aef1918df492c47449f647845b9195042f40edde7d8): 2064017649, TokenName(648370902f82759dc8d0c3bca60a64b846b69e5334893a8458c1c64286ba6403): 3348192523, TokenName(bbbd9e146deee40b156040457e7b754dccd7c9a0867e6414980422b5e227049e): 2358894817}, NativeToken(MintingPolicyHash(ScriptHash(da4e9f3ddfe199c006d0f9ab721925c22c30b7c8772e7d0c230baf37))): {TokenName(620317ce5c7b640b464c7f273df9901b8472d8a6716d31977174050fdc3eaa16): 2076682926, TokenName(a3f5deaba8007f644a26988f6cda2a4d809799eab21325b21c2fb6fdce086f9e): 2412943953, TokenName(c5030f54495f3701c9e2887469a15ceaea3cdc15bb40f39906bc831019ed31f7): 615192849, TokenName(d5c5be324bb653d422258215ea5443be65d9ccbcea6c5cd2b3b5631bb4725439): 1142290255, TokenName(f7dc7edf6ea29fddd77a29324effeee617d2d45432ee9cf2cddc6d17382d9a26): 880307032}, NativeToken(MintingPolicyHash(ScriptHash(f2c054a52cfba3b2a48a2f5289be9a77e198260ec32064194a2b7998))): {TokenName(2213ca331cf1f07dde0a0718f74b63e2ecc6edb3d215eaa2b792558e65ee5447): 4208271782, TokenName(4b29dc7827b40bfa065d39957ec18f96bfe9f58dd0f5c076aa5324210e733521): 2669906136, TokenName(6d98fe0599f37e23d774f1a6cd209df36f85483c03ca564a22589144b2f9e914): 3749525743, TokenName(a6c0242a0756a62ec28075ec9bafe4059a5adb9cb92c3cc76bd8bf3a8b983e3d): 3155040882, TokenName(ec1605860834af7b073dc112ada90e6ab530c5ab9fdc1fbcddc3dab021d25137): 69909880}}), datum: DatumHash(DatumHash(24a7af37e514f61fb4bdc1d22c1ee8ececb9afdf8aac797571b5704c237380db)), reference_script: Some(ScriptHash(631d2a7109fc05b54a600e1172cbfcff9ef662b4883266c285a2283f)) }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(08627132179484c51bb35060102f121a0735f61f8d1e42c220dfe487)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1efa734d67168fbc8d93170f7fc65a9870f8f43b212b0cbd57295751))): {TokenName(17268d28e91d74342d4991fa12c3bae621a7af526238e3095be461fa9d26e46b): 2570813478, TokenName(36b28819d1ca7ce52536c5cf0a9cca828f96644b7bb41bc6d0d4467537bebc8d): 3393761679, TokenName(7cdd0baf63bf3b26b4bf8069bca24fe336646bf65c66646568efa80df3b90560): 418721239, TokenName(8a2d4ec9912b245c011791cb914e9904b29c7466f51fd45dfe07f4259a694639): 4033126661, TokenName(f768447ba0fbab3ba8ac8385859a0d89c573706179ff8c7bc41dd1dbaf3cc015): 1275518025}, NativeToken(MintingPolicyHash(ScriptHash(30b958c36b3e9506471e962ac0d6ca6409cc26940e79c2f17063d43b))): {TokenName(0af86696aee816f944107fc689dae0ed62da4f78b7a8eba25af007e366682ab8): 4102103124, TokenName(42d0dfee36a8fdb7a522ce21366da8e11f54e79b1ecbd8f4e36481adaab5b395): 3750284091, TokenName(60c7cf7a2b4bc6cf0ebb20a6faf7585d323649b72f8a912ef213c7d93e317c5c): 3130665970, TokenName(71419f4cf1b8686ca6af11192ac643f8617e2dd3628748654f0a864c9c9ceddb): 3747489957, TokenName(7d4d39214d8ebb33e3c4c4f1b997274d6f8d93bce93fec7df8c5c2943ddc5899): 2707795912}, NativeToken(MintingPolicyHash(ScriptHash(3d5f6d8bb70891a015ce82c8b7d55638f61ecf52b7ee2ac12f557a02))): {TokenName(148a2348d53afc797ffdb9df38001bae9000793ac8dc60804e745b8a87404a9e): 675953931, TokenName(2999da457948714f1ad9c33bd540ef5e4db4725a3789d7532f3abe87e9ebfcff): 1144848020, TokenName(3ab918add85b549820719f580aa09e5cef6d82b1e447fb5b0a2200d75550ad1a): 3837268611, TokenName(4ad0746080153f2099046d58f94349e051314a13dcef24add1027f15e53d1916): 1350699108, TokenName(6760b9ff5ecdb761b4240bfb67764d9f10f3171b738611945a7ccf0d0c55ef1f): 1646471413}, NativeToken(MintingPolicyHash(ScriptHash(45e3ff091c274f7dab3fc0b6bc8522150eae804573e65d4060a82458))): {TokenName(89004b31dcee69f16fee1d1c14f339e969b5f8e5622042e2ea6a60fc18c1fd6f): 3535052531, TokenName(b0514600cdee8a5c64d4c5f94f232e2ad5cd7bfbb3705f18e52b2aa3de278f57): 3551698795, TokenName(b71760084577c9f984a3801b1c549ba7bea5699da16e9a3fd6b88ae2824d18c5): 4130989591, TokenName(bbedeb8f323991e258dfc55530ba7ba8c66c572c83da45fb4e64d85bec43baf4): 3803686025, TokenName(f36ddf2e0ac6ff05d34598255d1773c22f42ee976c817ee63678962a42653f5c): 2086145863}, NativeToken(MintingPolicyHash(ScriptHash(bdc5fdddde9806d91f7da86b3abcf56400aaaee4e1713f6ac3791ce9))): {TokenName(383b831d85af8a481a7d3eb6e755fc66a307810bb6a8c7cd4408aedc7a169729): 1587342539, TokenName(84dd802f39b9420b27b80b0008df3edf69647bd075ab1fe7454c6a6ddf9e7c7f): 4029852972, TokenName(8d2592f85c7d81c201b05cc8b5848a3c881caa9266744023d76df570460b18cf): 2123956503, TokenName(db8016743c4af9aeb82ba48cd4b92a35e674e9f2a6e5d3e408b49c044e625843): 1811830174, TokenName(e78f7a8668cafe8fb9eb907d11310e2e7a2c91586c7e65f26b4e4e1edd6594e0): 1199343382}}), datum: None, reference_script: Some(ScriptHash(dd3246fe6e30d877cdb57609b8756a93ea209cf83d17ee3e549e00b5)) }], fee: Value({NativeToken(MintingPolicyHash(ScriptHash(2f9863727367b0d7e2acc0779f9c4d7276a3ce14434168e939788955))): {TokenName(429a3f398cd615e887111585b6e80098cfaeaf114b041ed632e59b9241198a30): 1555683774, TokenName(4d47642d7314dfebbc8e604fdc780f696363ad680403355e87ae4da7816b9638): 3592907140, TokenName(4dbfdfa0dd57671ad6d070e511f3dcea18f6345278f5236b0f0a760071b5aca7): 3408980460, TokenName(562cb1afdd67f13de123f96ff4a329e164b1d1fde34e64c5e000bacf443d2b5c): 3168086864, TokenName(aa5f81ea275a4b5d4541c1593376bb4b6daa83b4ffcb00be9e9e07070ee8d323): 169981035}, NativeToken(MintingPolicyHash(ScriptHash(3a4df10551937e229f522b733111206a4c59a2388628a8749004108c))): {TokenName(187e6fde82358b63c03451b8dd1361fc53a2b6905303bb9632013cc1be34ab5e): 734045897, TokenName(3403e18344cfbb6653951c9edba43e1aaf427c9f5a635db3aeb96079c556ea45): 4010288560, TokenName(bb520dd935e854714c3167fcf8b605928c56f1d087f26440593b67dce8264ebe): 989031355, TokenName(d5f9e314b5460128827a0dbf88b0fe21df985ea3f3405461fb5b6d3a0d1b5d2a): 2046624902, TokenName(e882a0be331fcc394f7dc1ac99e729972d51b9d55aaa1cb7f97341cae75450d7): 273147440}, NativeToken(MintingPolicyHash(ScriptHash(68110ef703304ae479c444a6201c03997cfc10b6295f998274dbf2ea))): {TokenName(06f4266e7f2c030891cbb9ed55bd1f0c3fd41f54c0063757f5070977f4df742a): 895390465, TokenName(538d1edde8cdcbcff022266c300676a2deaf83659c1b51737340585536ad0076): 1716482888, TokenName(62b19a0454f9c2ba8f44bf1bc53bbfc3856d11b30c9f0958f2fdfe6e7973fe51): 1173906700, TokenName(a34f088141c5c4bee0c735d8bded3da2122c6279c33fcfe32cf900c0f4c5cd5c): 1478004184, TokenName(cfb00dd9c985a6c5cee0444bbcf147fc7afc6e05c2d85fbed2833ae410e3efb8): 3063484456}, NativeToken(MintingPolicyHash(ScriptHash(9d0fe31ab7e3f2f7406e878e08376aff36e10dfd56844f8981ea3a66))): {TokenName(132efcfbae23f5c18a0ffa9bb7b258ee701abb3797f38a1097dc6851308986b9): 985486808, TokenName(24a8b01676fdbc399e6a1589e6a7bb33d766395c9d78da8d113d451201d54690): 3241903114, TokenName(598c739a09af4bb634c708c30fdd6fc34cd633f5bcd1a7d6dd7731f83c5c98e0): 3005678126, TokenName(a8b0b1e5142cf0f1cac3f104fdcad8dc55dd65800ef64d1b6e57829a8891cb4d): 2988582047, TokenName(c80a9edb35ff6b5fe9292140e284f3b110034ac1cea95bef2eb2a4c1849b4dd9): 553307105}, NativeToken(MintingPolicyHash(ScriptHash(b2fbfbf224eb9cfc223bd3ed11f6c0a4cb4375f5f4cfb7e34754a613))): {TokenName(1d14511e247931cb6733fede871fb50c5b889a8191b26d534ea2420e6b5fb793): 4043197660, TokenName(49617ae47d57e3ff6dd8129b181f3f4bda7df20219a6be2cd2265c23449a96d9): 273104966, TokenName(6288fbea5a0135345990f9f79adac3f81b0644e8e5175f6242aab3f387084237): 66366596, TokenName(72b6c30b1ee0e44aec201e0361e8e3df1e18ba238d8aa6ddc4b0817755d11b8d): 2062758746, TokenName(83622b675752a919f2aa1ff4c68ed11354374b2abebb1029ad88f1a93a831fb4): 1099160643}}), mint: Value({Ada: {TokenName(): 4104180352706495912}, NativeToken(MintingPolicyHash(ScriptHash(1a5eb483f29e60cf94d6db289237c92aefb6f00cd17116ee999734b9))): {TokenName(25da6b3e9e675b6a8bdd597de4ac48c9b3a880ac5ccc63acd65cf62f27f9008c): 1231233814, TokenName(427420e13c51ebd62c14bc0efff31f770328482a204911d1e6b32e8a6e3146d4): 1996334957, TokenName(710e81cc94a0cbdf08b522ca8e02ba017b2c57ed3ee360b0bba12f1dd39afbda): 2661078626, TokenName(ded843f4173fd92c5d1b6c343da011cc5373eaebd74046b8effa159b95b0b4fc): 399673598, TokenName(fed348c8726ce77dc3e317ead26f820379e5eb998e3215a6c45aac9eaa1434ea): 4151868046}, NativeToken(MintingPolicyHash(ScriptHash(1cf98e68f452aa7d791c36d9495f37dd9d98a44cd70deb233aab4a8c))): {TokenName(488e54b0111d8ab0110f091a930ab1a3bf29648f15e9ce291b445fa74c271e4c): 427903071, TokenName(96744d9e07184dc82d51b499e984838834744a02a59d6d5f0b213e318936cb85): 1997947289, TokenName(9b6160513350d1f3cd0bc865c76ac9ff4f17b0157220d569226c7a10b636a24b): 669481020, TokenName(bb3a60a8f39d1df1afd753eeeea00993bee72535f3ccdb5cdc3911ec1cc31021): 4067912973, TokenName(d2adcb9b62c6646a8653c822e91b87de8a9abcbac84b799b808ef43639a4b016): 3918566276}, NativeToken(MintingPolicyHash(ScriptHash(870ecba83cde3dfd018ea32d685cb450d2d4295f5cb4073f29bafa9a))): {TokenName(0403f0c9cb67117c895168ae75deb3bbfb9c9d13b43a2ecfef164b3c9cb7a855): 2905897182, TokenName(1f6d139cd673123d10495454fbbba2d3b72c8bf630011164b8ddb16e078808e7): 2763742922, TokenName(9b4c9f57c613b8dc4ccdaa59ad95dbf3bbafecc90821b014f4bf77211b2799fa): 2647325274, TokenName(d7a183b7753afe71a94ffc4b9e1f23c8f59fa916ed981127f9b2741a24243acf): 1630302619, TokenName(fb047eb4525d6ef3550b3e87597cebdadf66dfb547dc23250ffc478ee03e40f5): 2645150031}, NativeToken(MintingPolicyHash(ScriptHash(a186daa8e4f866e46d68808ad115232a5ee746fd0875bfb18ac1b8d7))): {TokenName(7a134f9e9c448fe6e97557fd36f3d7a81639d04e609bce6dc37d4a8257596a20): 149746960, TokenName(7bd98296d4c5a45f14e45f1ef70b44e323e1a4a342d5950048ad28ed102bbfd2): 3131521095, TokenName(ac9aa0564b12e5ea103a569c59713d6ea1bc9fb890a618e39a87597121d3be55): 3147076479, TokenName(afc3bec871cdcf99569a69ac50dca88cc75eec498d1d1c269e896fda014a1c76): 258148948, TokenName(b5348d158cb92e19b81c56990d7ee1e705abc19a3a422d77d81153ea5832ebb9): 713428795}, NativeToken(MintingPolicyHash(ScriptHash(c92bdff49727138c31cb3d49176e054816447dbbc79d39f189f8f676))): {TokenName(153334516784cb259748056bb312cc5416c04e15c36db4fe9cc2336b21ab4253): 835283426, TokenName(591e68815b2c0f8d66418a11fd031d6bfa1e1c64587d7988963fcb158dd6f8be): 3356235553, TokenName(8b9065fa54273dacc3752b3a703daeeefe6dcba97e0a9db43c97fca1224b4858): 3794081327, TokenName(c9401e06d8dcdd84d9556d06589915eaadef20ce3897ebc5df76607b06b61435): 1689084015, TokenName(f944a8b7e0c7f94173f35a1d7a0e4c51174f9ac89e20f71df3aded3db66feffc): 2290874670}}), d_cert: [DelegRegKey(Pointer(ChainPointer { slot_number: Slot(1255069606), transaction_index: TransactionIndex(3060645162), certificate_index: CertificateIndex(1133172045) })), DelegRegKey(Pointer(ChainPointer { slot_number: Slot(2058101779), transaction_index: TransactionIndex(2683260422), certificate_index: CertificateIndex(2332862830) })), DelegDeRegKey(Pointer(ChainPointer { slot_number: Slot(2949232829), transaction_index: TransactionIndex(2376444952), certificate_index: CertificateIndex(1584659227) })), Mir, PoolRetire(PaymentPubKeyHash(Ed25519PubKeyHash(56a7cd13edc88705dcc4e7b5c3a4be407e4cc15556fd31ff61da3de7)), 1704978752)], wdrl: AssocMap([(Pointer(ChainPointer { slot_number: Slot(2518930256), transaction_index: TransactionIndex(3594332237), certificate_index: CertificateIndex(832943901) }), 283529990), (Hash(Script(ValidatorHash(ScriptHash(99b971201b74682b3aec8d3599b5f7b04f69787ae11b56381e2e89a8)))), 1315944064), (Hash(PubKey(Ed25519PubKeyHash(8ee1d52a365940ccd463dd7e9c5ede976637263358db336f85ef20c6))), 697469854), (Pointer(ChainPointer { slot_number: Slot(1144497856), transaction_index: TransactionIndex(3973812288), certificate_index: CertificateIndex(2551665535) }), 1781367262), (Hash(Script(ValidatorHash(ScriptHash(166e40822092ce009e3863b6af2192415ec2bea68df4d223ad081be8)))), 1007921653), (Hash(Script(ValidatorHash(ScriptHash(6f60de84d117a5e915908cbdaf4b4516b7da7d61c745810f3f2587a5)))), 3106659847), (Hash(Script(ValidatorHash(ScriptHash(b7bae71e2d057c4ac0f4337c854bbb30ede877c2d7f9c5adda3f5ee5)))), 1053145090), (Pointer(ChainPointer { slot_number: Slot(3714372803), transaction_index: TransactionIndex(72042050), certificate_index: CertificateIndex(1509327066) }), 3940037914), (Hash(Script(ValidatorHash(ScriptHash(7067f6b6fb9add1cd4409a061781c24c8f9d2aa56b630b312db2e3d5)))), 4079720784), (Hash(Script(ValidatorHash(ScriptHash(a4b4a8e347008aa489f35b98272a6ca4fc25959b0bd20a68f8592e44)))), 1584515697)]), valid_range: PlutusInterval { from: LowerBound { bound: Finite(POSIXTime(838409353)), closed: true }, to: UpperBound { bound: Finite(POSIXTime(361863719)), closed: true } }, signatories: [PaymentPubKeyHash(Ed25519PubKeyHash(b4819d111711ba48868cd06ff8d99ab5b55e7534aece8ee98e6c455a)), PaymentPubKeyHash(Ed25519PubKeyHash(2d3ce5635fd6ef2beead54164759fe87df4853d7f504ed1061c8338e)), PaymentPubKeyHash(Ed25519PubKeyHash(a0d48ce56b063a264ae1828159fabf544ba69525c37766835b6bcb68)), PaymentPubKeyHash(Ed25519PubKeyHash(f11701c55ba58e812def810ce8b5c18d49945dafa67456b3903b8ec9)), PaymentPubKeyHash(Ed25519PubKeyHash(ad5b51db58abaea6ee92412e6b8c27f95d8d4c6e5541edd97b049e81))], redeemers: AssocMap([(Certifying(Mir), Redeemer(List([Integer(6239320199750037689), Integer(15913589025057844587), Bytes([133, 208, 148, 171, 114, 67, 36, 209, 169, 38, 209, 97, 67, 163, 204, 172, 104, 82, 231, 119, 134, 19, 204, 55, 74, 236, 118, 116, 35, 78, 54, 53, 104, 127, 234, 93, 97, 1, 136, 194, 168, 56, 83, 218, 179, 78, 64, 76, 211, 140, 137, 196, 45, 229, 40, 84, 74, 108, 200, 193, 96, 13, 20, 253, 113, 214, 237, 215, 101, 39, 154, 249, 114, 229, 169, 161, 170, 19, 210, 86, 32, 56, 11, 48, 207, 147, 209, 27, 150, 80, 46, 39, 62]), Integer(-16623484847137450040), Bytes([36, 80, 100])]))), (Spending(TransactionInput { transaction_id: TransactionHash(79cf6c453b2acdbe0bb65db560233f5a227950ff0880c3a2a3eb775c679fbc7d), index: 2947145207 }), Redeemer(Map([(Integer(10749594368703218252), Bytes([113, 229, 13, 115, 192, 166, 124, 147, 99, 41, 140, 63, 8, 115, 75, 57, 186, 46, 31, 55, 114, 209, 243, 143, 249, 212, 236, 67, 212, 53, 60, 154, 211, 97, 73, 162, 200, 224, 182, 175, 216, 214, 186, 10, 11, 106, 166, 155, 106, 231, 208, 60, 39, 70, 47, 238, 202, 215, 225, 240, 19, 231, 63, 166, 171, 126, 253, 30, 22, 220, 251, 116, 226, 194, 175, 6, 28, 223, 222, 35, 97, 43, 59, 74, 192, 58, 147, 111, 59, 69])), (Bytes([202, 49, 16, 204, 32, 74, 62, 160, 224, 58, 222, 187, 174, 91, 237, 234, 57, 89, 93, 11, 49, 122, 142, 239, 159, 142, 219, 204, 85, 238, 86, 8, 80, 102, 79, 15, 243, 138, 205, 202, 75, 86, 77, 111, 35, 212, 106, 250, 82, 122, 8, 179, 55, 121, 68, 62, 112, 167, 160, 174, 5, 98, 250, 250, 108, 63, 184, 95, 213, 212, 254, 125, 247, 233, 104, 222, 14, 5, 87, 51, 1, 38, 91, 79, 75, 87, 172, 159]), Integer(-16105624062234957364)), (Bytes([206, 100, 252, 224, 85, 67, 0, 146, 168, 134, 14, 141, 81, 163, 252, 204, 27, 37, 184, 60, 209, 69, 172, 37, 216, 220, 201, 131, 24, 255, 210, 173, 18, 180, 30, 27, 195, 201, 108, 124, 17, 229, 134, 3, 13, 93, 143, 181, 22, 222, 66, 113, 71, 26, 184, 240, 82, 213, 23, 220, 232, 88, 169, 245, 143, 171, 37, 48, 173, 226, 1, 103, 3, 75, 183, 216, 69, 208, 12, 242, 53, 187, 227, 103]), Bytes([49, 98, 69, 40, 146, 13, 63, 49, 174, 103, 155, 108, 107, 131, 192, 222, 105, 202, 36, 61])), (Integer(17641650114553881220), Bytes([19, 66, 173, 252, 116, 20, 193, 176, 60, 114, 77, 32, 12, 83, 46, 11, 241, 32, 5, 15, 184, 106, 252, 164, 244, 132, 224, 65, 158, 241, 107, 104, 107, 169, 176, 206, 32, 67, 3, 171, 142, 133, 54, 95, 43, 225, 86, 220, 155, 165, 230, 61, 219, 16, 185, 72, 208, 213, 81, 82, 25, 190, 195, 183, 161, 182, 126, 50, 130, 58, 200, 128, 130, 214, 11, 206, 120, 145, 226, 233, 122, 232, 80, 155, 39, 51, 181, 59, 140, 73, 224, 9])), (Constr(126032016, [Integer(7787559864735705180), Integer(2127818927508617713), Integer(5155631119871866475), Integer(-18396566547523949959), Bytes([63, 188, 198, 248, 216, 139, 137, 73, 106, 210, 221, 155, 224, 44, 66, 140, 68, 4, 51, 22, 74, 125, 60, 8, 202, 245, 241, 108, 140, 43, 50, 209, 231, 253, 2, 38, 123, 153, 16, 65, 52])]), Integer(-16409732504822602435))]))), (Minting(NativeToken(MintingPolicyHash(ScriptHash(db6549ac5a932d508911a7343478c85b8519a13fb960c15e7442bf14)))), Redeemer(Map([(Integer(4864576940907377842), Bytes([175, 126, 3, 7, 3, 123, 228, 255, 206, 187, 163, 236, 222, 174, 77, 185, 186, 43, 203, 218, 255, 102, 34, 200, 39, 35, 29, 12, 207, 218, 121, 145, 223, 192, 194, 214, 27, 219, 211, 230, 233, 174, 251, 210, 215, 238, 139, 249, 167, 19, 144, 139, 108, 208, 188, 111, 26, 120])), (Integer(17866170359980033590), Integer(9968111103518514952)), (Integer(7062931128494742539), Bytes([188, 212, 63, 126, 119, 180, 238, 112, 224, 137, 119, 72, 21, 83, 225, 164, 31, 97, 157, 123, 61, 101, 47, 197, 225, 249, 4, 135, 207, 56, 212, 79, 16, 84, 226])), (Integer(2986177198920072604), Bytes([205, 136, 177, 63, 94, 84, 219, 157, 150, 134, 131, 146, 214, 32, 175, 103, 31, 187, 171, 187, 180, 180, 205, 39, 117, 68, 99, 159, 96, 73, 228, 247, 183, 227])), (Bytes([88, 132, 17, 231, 27, 248, 82, 197, 215, 196, 142, 69, 179, 145, 113, 95, 202, 25, 91, 116, 94, 207, 21, 43, 242, 200, 199, 29, 138, 33, 236, 4, 24, 132, 241, 112, 84, 194, 187, 116, 22, 131, 75, 30, 118, 48, 138, 240, 125, 34, 135, 115, 236, 164, 122, 214, 65, 2, 27, 192, 10, 235, 145, 20, 138, 243, 100, 213, 6, 108, 50, 19, 185, 8, 175]), Bytes([243, 50, 250, 219, 146, 10, 119, 162, 24, 46, 123, 40, 64, 77, 233, 17, 114, 235, 37, 32, 129, 131, 127, 214, 129, 134, 15, 176, 86, 230, 81, 87, 199, 75, 107, 27, 228, 190, 25, 132, 190, 237, 99, 177, 137, 249, 184, 72, 188, 106, 216, 171, 71, 2, 3, 95, 120, 102, 202, 178, 6, 31, 153, 232, 3, 11, 136, 192, 194, 61, 126]))]))), (Spending(TransactionInput { transaction_id: TransactionHash(7224c90041ca10dda085de5afacad591f9e7b847242c3dcff572f3b04e8d172e), index: 944131020 }), Redeemer(List([Bytes([155, 139, 250, 173, 109, 126, 116, 148, 239, 105, 35, 166, 250, 209, 138, 254, 143, 100, 91, 188, 57, 202, 217, 165, 20, 197, 58, 251, 25, 142, 25, 220, 9, 166, 0, 184, 86, 229, 139, 202, 24, 255, 67, 234, 104, 32]), Bytes([137, 215, 194, 162, 74, 174, 65, 28, 13, 61, 160, 169, 76, 236, 134, 201]), Bytes([190, 87, 61, 95, 191, 155, 191, 200, 213, 232, 191, 174, 140, 244, 84, 142, 24, 244, 149, 238, 175, 31, 67, 159, 192, 88, 153, 133, 62, 41, 181, 131, 165, 0, 240, 101, 162, 100, 211, 89, 179, 132, 224, 61, 147, 74, 142, 247, 229, 79, 191, 178, 76, 12, 39, 235, 39, 197, 108, 190, 27, 131, 214, 210]), Integer(10877039398281208866), Bytes([245, 49, 133, 212, 69, 170, 182])]))), (Certifying(PoolRetire(PaymentPubKeyHash(Ed25519PubKeyHash(0e2c3e533b548d4ad5b0cddf94dff6140554fcd04df242a344713595)), 3596605903)), Redeemer(Bytes([237, 84, 107, 181, 142, 178, 35, 247, 44]))), (Minting(NativeToken(MintingPolicyHash(ScriptHash(34acf9d27298848ceb4c0d40c846e2647f5d7af9cabe7c16250fff36)))), Redeemer(List([Bytes([78, 90, 214, 144, 251, 187, 188, 123, 244, 237, 165, 1, 72, 126, 218, 125, 133, 234, 74, 239, 96, 94, 24, 90, 190, 3, 60, 95, 181, 152, 108, 110, 41]), Integer(5731157922341262668), Integer(-4335164808407264972), Bytes([134, 242, 84, 26, 178, 183, 212, 54, 149, 70, 5, 162, 180, 53, 242, 114, 206, 81, 85, 175, 206, 100, 53, 103, 209, 73, 207, 182, 228, 79, 115, 193, 145, 70, 95, 242, 115, 87, 106, 159, 89, 91, 30, 68, 193, 124, 115, 47, 31, 40, 133, 80, 151, 255]), Integer(15690818283624318033)]))), (Minting(Ada), Redeemer(List([Integer(2069942577745421945), Integer(13319561239276934380), Bytes([196, 179, 178, 122, 8, 111, 2, 199, 170, 233, 14, 123, 96, 184, 66, 46, 225, 233, 3, 53, 155, 75, 255, 105, 39, 145, 114]), Bytes([56, 119, 56, 131, 146, 197, 103, 153, 31, 8, 223, 37, 83, 233, 80, 62, 156, 89, 168, 164, 218, 28, 160, 9, 92, 136, 167, 173, 41, 222, 180, 128, 42, 87, 188, 131, 254, 134, 213, 86, 80, 160, 7, 55, 235, 106, 226, 219, 204, 69, 37, 195, 38, 32, 113, 52, 133, 95, 193, 110, 228, 97, 53, 180]), Bytes([29, 31, 81, 90, 253, 98, 22, 39, 253, 185, 103, 37, 32, 104, 81, 205, 210, 190, 31, 104, 156, 109, 252, 171, 217, 248, 61, 253, 159, 190, 24, 150, 162, 35, 71, 9, 77, 217, 199, 96, 35, 190, 214, 40, 167, 249, 82, 47, 216, 16, 95, 234, 130, 233, 141, 153, 102, 238, 1, 119, 118, 249, 47, 59, 194, 46, 190, 53, 2, 238, 46, 216, 239, 12, 200, 247, 206, 36, 61, 53, 4, 32, 16, 248, 175, 190, 107, 208, 110, 99, 213, 178, 253, 208, 76, 40, 64, 192])]))), (Spending(TransactionInput { transaction_id: TransactionHash(4b9a8f093e2e8b1822e4c68ba111a60d7ad9cbfcac0674f6fb7c5b16bd0d8fd8), index: 20566719 }), Redeemer(Constr(597936047, [Integer(-401514188748236140), Integer(15735402432053599665), Integer(-3275194184185951579), Bytes([248, 175, 249, 54, 46, 96, 253, 85, 101, 158, 120, 145, 117, 109, 38, 171, 72, 81, 53, 87, 129, 96, 39, 255, 77, 147, 31, 182, 206, 87, 21, 181]), Bytes([141, 216, 99, 172, 227, 36, 116, 196, 8, 1, 233, 126, 99, 32, 214, 115, 145, 152, 137, 183, 242, 86, 151, 33, 219, 162, 67, 26, 178, 51, 232, 189, 40, 92, 28, 68, 193, 212, 246, 155, 115, 27, 157, 43, 152, 124, 113, 68, 176, 176, 125, 154, 157, 23, 13, 226, 127, 242, 79, 239, 221, 243, 183, 24, 221, 237, 111, 127, 157, 194, 99, 110])]))), (Spending(TransactionInput { transaction_id: TransactionHash(48eebeaef8deeffd6fba7b1b98e118a5cc2086b63641eff458daa48b6553877c), index: 845727722 }), Redeemer(Integer(-16728904964620355042))), (Spending(TransactionInput { transaction_id: TransactionHash(0d57988e521e371aff11852b58e1088fe19726abb33f16bbf1206a67475d575d), index: 2941169133 }), Redeemer(Integer(10497112379505076689)))]), datums: AssocMap([(DatumHash(2d193c5ceaf445b29ae12d5ba957b3824cc13133825c9da6f963407ee6cee6d3), Datum(Constr(196802684, [Bytes([14, 76, 99, 234, 208, 48, 115, 11, 29, 123, 216, 168, 109, 191, 12, 116, 70, 21, 116, 253, 152, 47, 3, 151, 129, 0, 214, 127, 244, 166, 131, 139, 79, 80, 150, 48, 189, 167, 181, 71, 183, 127, 21, 201, 37, 213, 8, 17, 111, 13, 243, 233, 41, 139, 217, 234, 6, 148, 194, 164, 241, 138, 82, 181, 213, 52, 191, 176, 235, 60, 150]), Integer(81961458671434559), Bytes([240, 107, 34, 91, 249, 1, 37, 212, 169, 237, 172, 193, 25, 129, 199, 165, 217, 53, 77, 159, 67, 196, 182, 226, 50, 54, 83, 202, 145, 29, 240, 51, 33, 36, 25, 231, 192, 71, 49, 200, 49, 19, 182, 243]), Bytes([100, 160, 6, 29, 159, 137, 51, 13, 245, 169, 84, 74, 167, 90, 1, 41, 176, 246, 93, 181, 98, 116, 75, 182, 159, 109, 79, 71, 90, 92, 105, 208, 44, 195, 220, 176, 194, 116, 180, 187, 198, 86, 160, 77, 110, 41, 147, 67, 82, 95, 185, 81, 102, 44, 23, 185, 79]), Integer(16239469322319425174)]))), (DatumHash(fdf11482da690539eef20c26cd27cecd7f5cfb6d12852a4b72dddaded7158c74), Datum(Map([(Bytes([214, 212, 251, 238, 8, 244, 215, 48, 250, 101, 190, 51, 192, 14, 170, 57, 47, 186, 48, 216, 192, 147, 47, 92, 9, 198, 24, 233, 73, 134, 93, 64, 172, 119, 170, 191, 179, 11, 50, 112, 144, 229, 125, 97, 210, 147, 168, 202, 158]), Bytes([5, 14, 29, 114, 190, 203, 143, 180, 12, 165, 116, 1, 182, 219, 108, 83, 132, 117, 54, 100, 31, 156, 211, 88, 159, 68, 197, 29, 114, 150, 232, 216, 77, 148, 92, 125, 136, 191, 36, 188, 119, 221, 156, 10, 51, 10, 69, 138, 150, 166, 7, 223, 31, 253, 113, 25, 145, 56, 125, 79, 174, 179, 20, 23, 12, 167, 229, 207, 70, 100, 75, 114, 220, 175, 221, 159, 194, 103, 16, 67, 253, 138, 44])), (Integer(-13599185349541535264), Integer(12320948268393618043)), (Integer(-6026077469102340747), Bytes([147, 219, 79, 148, 176, 252, 123, 58, 118, 60, 164])), (Integer(10908679578297618426), Bytes([25, 54, 73, 167, 50, 78, 131, 108, 146, 58, 96, 138, 136, 33, 116, 32, 23, 12, 107, 202, 25, 172, 104, 71, 132, 79, 154, 117, 51, 97, 230, 166, 231, 148, 193, 57, 53, 193, 129, 13, 117, 143, 111, 38, 180, 130, 164, 214, 184, 233, 165, 215, 5, 124, 47, 140, 166, 210, 103, 157, 118])), (Bytes([110, 19, 70, 212, 173, 55, 3, 64, 181, 219, 160, 252, 245, 170, 104, 163, 6, 200, 103, 164, 16, 62, 211, 89, 125, 254, 49, 12, 64, 24, 139, 34, 88, 54, 65, 84, 173, 82, 114, 24, 118, 150, 178, 136, 212, 111, 234, 169, 23, 28, 18, 201, 156, 63, 208, 223, 147, 25, 3, 7, 195, 63, 145, 209, 248, 125, 23, 173, 215, 13, 0, 48, 195, 77, 235, 204, 238, 85, 250, 32, 167, 73, 94, 154, 132, 208, 219, 171, 242, 104, 215, 146, 91, 252]), Integer(-9199529737147709059))]))), (DatumHash(f033e4f6e37ed83b3145d1d01525488437d7ca41bbe52a39aab31a97f1224e43), Datum(Integer(-593552128947493946))), (DatumHash(e8aca7e61f69e1260d8d8e0cb8b6ca34b2b6a11a26f22f69e88bbcf644fb08b4), Datum(Constr(4088868737, [Integer(4177234764228082000), Integer(3603356264052409860), Integer(8465656476941222898), Bytes([202, 93, 174, 183, 221, 67, 107, 168, 93, 30, 39, 68, 104, 207, 226, 0, 230, 8, 86, 190, 251, 78, 138, 209, 6, 212, 115, 70]), Integer(-17617145114892162587)]))), (DatumHash(d3da487bca94b2ae59991c9704d0a3d381b88531125c0f9ee4dc13a0e0061067), Datum(List([Bytes([186, 52, 194, 43, 73, 74, 176, 184, 214, 121, 67, 158, 62, 120, 30, 157, 180, 112, 132, 250, 216, 165, 198, 213, 253, 98, 230, 17, 32, 53, 165, 193]), Bytes([148, 34, 172, 191, 198, 193, 41, 148, 30, 153, 51, 181, 164, 64, 122, 165, 155, 71, 126, 89, 76, 81, 248, 225, 168, 50, 118, 52, 67, 34, 147, 134, 165, 234, 234, 147, 202, 6, 209, 137, 34, 136, 11, 10, 203, 12, 7, 128, 15, 136, 64, 4, 45, 8, 82, 239, 86, 206, 119, 96, 89, 163]), Bytes([]), Bytes([146, 61, 87, 35, 59, 214, 192, 241, 62, 172, 13, 232, 50, 195, 214, 253, 2, 218, 189, 136, 143, 1, 21, 241, 175, 218, 119, 49, 125, 166, 227, 48, 202, 165, 176, 149, 43, 154, 2, 125, 194, 198, 90, 147, 21, 140, 237, 246, 227]), Integer(9971176567098175649)]))), (DatumHash(c61c8ce968a5382e749189706386376dd97818d9ec3e59123fbf224fb282605f), Datum(Bytes([107, 27, 72, 2, 106, 154, 29, 15, 2, 16, 140, 88, 37, 220, 111, 108, 172, 80, 114, 175, 140, 140]))), (DatumHash(0d7e84d00ba68cb161e724f157f15b429995bc6bec06219abb6ebb0e05321182), Datum(List([Integer(16237504671388057912), Integer(-16285226431970625050), Bytes([247, 109, 75, 197, 44, 133, 186, 4, 72, 71, 51, 193, 0, 113, 147]), Integer(-10372740837566876008), Integer(11123773230320431390)]))), (DatumHash(598bf36b92c1b696f4edeca936c026ea54fcedc4a9255c78794fec17379be8c8), Datum(Integer(13795168235298107099))), (DatumHash(49624a0f85084a48045f84298a6addfdfa6479473e82f77e4ade173f07a4d772), Datum(List([Bytes([71, 229, 111, 177, 61, 96, 150, 100, 214, 56, 249, 163, 231, 18, 20, 0, 217, 46, 148, 214, 164, 155, 11, 75, 184, 34, 147, 94, 115, 69, 195, 23, 213, 203, 128, 138, 238, 122, 53, 173, 210, 12, 74, 94, 43, 183, 228, 164, 95, 18, 159, 11, 131, 5, 119, 178, 85, 181, 88, 168, 61, 102]), Integer(14293894423366455123), Integer(1221696318822708709), Integer(-12695428866911314187), Bytes([37, 105])]))), (DatumHash(61284967c2a9fa4e359cf84d716a443fa4a1e6deff58a59548aa74c89cd90b88), Datum(Integer(6734396926988172344)))]), id: TransactionHash(17b27f69606574edea9d5a1f15e8c9abd732c7e2fd2f123a654b341d88b08e12) } +cc 6754dc117f31dda503b9cea982aad28214fd39069e2a35e276e7a80693b5a7ac # shrinks to val = ScriptContext { tx_info: TransactionInfo { inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(00000000000000000000000011d5322bb28add0c541afac5f59c2415cd39baea), index: 1172339953 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a1321bc06e424938c7e5a3db667a16cde2f7d4145662c8a8cbcc7eae))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(132492f5ef8c29cafeaed2adfe4abb1009c40bc2bd1d0cb7fbc73482))): {TokenName(0563cf40cc97ba5f6e71e11188fa463b3caf052a5f888afdbddd0231e05890e9): 4267529379, TokenName(319d34aaef3166fc693e7da784a17b3a380ec8413adf4a053a89fbdbfa8c8688): 3022272300, TokenName(5d1f501fdbb8e2b043051a37bf3e6f4462f58ea3459b168e06566d7a223b4964): 1472647335, TokenName(7c780c5081be1ee268e5a8983b2093b50a6d68188442c6cda8f35a61babf8f7c): 1407873443, TokenName(8a318158cd161fb7a25a338c20423bc2b7f3fd53b7b2349a64c36efd87965592): 2983736929}, NativeToken(MintingPolicyHash(ScriptHash(4601585ff8414333098dd5c528dd7164188ef66b73e7a50b5403f7d4))): {TokenName(21503d22ee6638c1b9f86d9f216749cfcdd7b9c3f05cd63b3735bafc99d56e35): 268819850, TokenName(690a9d25e0ce3f8c96977cb27c91255e5c8251779a9cb890ec23d6b56df5ccbe): 2049992157, TokenName(bfb672e721a9bb93772abd070b280a57033d1217ea7e7f82fcb6c84b194b4513): 314390417, TokenName(d10cd94de9a3b91a3d0b156a0f8b656c0f0133d0fef376dbe85ee1247cb47ad8): 1019985646, TokenName(f76c898e35e477b7d4f658dd21e4aa3b7d99b9911f53134287474293c1ad5c48): 1337489045}, NativeToken(MintingPolicyHash(ScriptHash(4f9ee1cbdc2abd45e53841e9bc178930148d637edc244f19827d1b82))): {TokenName(4dc84a6f8f1db80a1f074b07adcc80f559465cff416470ab6095b767de801458): 226509656, TokenName(b665e1f8a1bd6c867aa6868bda6b66739b2c4ad97130e7d85167b92933e612e5): 3081002613, TokenName(d23696e1a682f98fd0fc046476049f42f89d5cc24835b0784b7100254c818ee5): 1540836842, TokenName(d3f3a02c9e046d64f19caa44f964f0d043ff655fdbae0dcef4ef2ca6279d1da9): 857302425, TokenName(e237c96477dcf222829b69dab4d3bbdde33abc18bfb9d43f995a28a085a11600): 4025060393}, NativeToken(MintingPolicyHash(ScriptHash(ca7fd51fbe9bb1cb116145a4f2870bbc022b6bd0ff423a099b159b51))): {TokenName(23708eae008cf5a8c0f80de6e7a234f5da2a7bd70e77dd982b9fffa737931e48): 2826237570, TokenName(3c39631b60c542bfed5c5aa3810a46ce8a16a7bcdbf85ffef02f82a610a8e0b7): 4034833149, TokenName(45e3651220d382bbaacc96a1fb53ada50353788b1455514b3a81017c1564357f): 334707204, TokenName(e76929505adeb664e97b73280866c39e6d7a7375f3d2c07db9e29b2aaa1a64a9): 4267139948, TokenName(f43d5d1b593a13cbadbbf2ff662ac97c07ff7b612a4dfac10780490fe5c77eb4): 2861426176}, NativeToken(MintingPolicyHash(ScriptHash(ccb13a35f256b140e44c02b4af30764b1d12c57a7043cb1fb326f377))): {TokenName(44843230b3fcfbc9f25a9ace669fb0a80d65cb45e0900c346bb8dd464c1e2c24): 3886874923, TokenName(59c78285a99d5f06d60e33913bb25499e7f191da5e7e5fe0c19b34e0c4b8de24): 2372979482, TokenName(6ac148aece10f6c09c683719fcda91b2d1a5fef071693fc176df2942bfee6afd): 2142107358, TokenName(b58cd5725e4b0bb298802dbe2b7a6f294bf4e771f6f23e584487b792cf859c67): 1813112534, TokenName(f1af2ca64c1aeba2037fefb1eabc8c385da50cda787395ad88102ab05287f69d): 1241001126}}), datum: None, reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(2b07b7877a2b46bc4579ec595aefd73b398b1bf1129edabab45f9dae2958d81f), index: 1243967587 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(11c5699e46aa23a4bdbb1521e5ef13f0af4cbd8ccbbe11a7197d55f9)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(1728648231), transaction_index: TransactionIndex(3590170767), certificate_index: CertificateIndex(4283880003) })) }, value: Value({Ada: {TokenName(): 7748603629653168127}, NativeToken(MintingPolicyHash(ScriptHash(0c02e4d718f96291697fb0bd36769f5cd5b37bd67d1bd272343e9fe2))): {TokenName(5c72315a5de9bc63bcadb6dbec2af6d5dd22e67ae080a75b692cb650dab05166): 1927482761, TokenName(8099c9a487bdf002ee3137cfa733edd6244225c73eb0da98e404fe2d472ef4cf): 3185204016, TokenName(8d1d8eb3f49354015db84c27b0dde13c4e35494c822ad72ef79b81061322c556): 148143710, TokenName(91e2210236086e3326cebbca8e3113d4b2245c9d596cd38d05fe5a4b537fb3c1): 3953111174, TokenName(e8c032c78e4cc50fef69f11cff90ea4d005acbdffc12a8d4532858dba1e43264): 2028865169}, NativeToken(MintingPolicyHash(ScriptHash(280be125df57f2457a23dcf6051c2f9d7a808a4525cd863a3da33627))): {TokenName(189e7dc25d4453ae7fe26c665e2678ba87e01e8edb4a468006ccc4f201571a9e): 4185894986, TokenName(2d08b6a48320fd20d083e3e2d5bbb552c6190990b112c51f72a53ba50416e1ec): 3575835787, TokenName(4784527077bf4fae44b72289d7f386ebfc85a7027e666e343fb77fe30f9ee062): 1633553840, TokenName(5afb59bda895da2ede5739ae3cdc8a3822763fb69b01c00e5e1508c15cab8ea5): 490427526, TokenName(bfd5ab94d71e159d4b1f8e0100285868d4db2ae35478776e7a6cec74bbff5758): 2797161448}, NativeToken(MintingPolicyHash(ScriptHash(4ccbe3c3b80623782fa30aa49abc0b5d90810fa18f997f183fd745e2))): {TokenName(23222734017052d6945e2e56deb35b2b1e7586a7d98c4a4645bdac533dcf5f51): 1708191530, TokenName(423583311cc5510ee57122a1153d6215049a53819927d9f5e5202b00d6eb36a0): 4210856024, TokenName(5c002dba64cb8afc8c7ea7533ece13c195d029ed9dd664c85559f0674407d920): 1179183873, TokenName(7e590fa6de16d366094f4091043d7d118ebf719fac24313646eee33aef392089): 2073268386, TokenName(d7f83d86e2b4c8ecdd3b4ef5876cb2802e6100cf1d09963bbdec106dffeda8cc): 927853813}, NativeToken(MintingPolicyHash(ScriptHash(7cd50420383651da418a92da5c91d727e31bc34c07ac3d22995435d4))): {TokenName(0b059a492843318861b9a242173695674ee3730818031d31e9393b6725aac77b): 2317693307, TokenName(4547699b8126d931915793b4bd95852b6de579bbefbae3e88a1531fce25fcee0): 583744481, TokenName(5e61db5b1a03c309654f1a4d9bd65477011aea838970b1150b8b18262f02ba49): 290296387, TokenName(9b6b72305e7fbd0c3ed605e23e474991582e70f63878e53b4e9c869b040f5f5b): 1480523016, TokenName(c83fb9d4f892e8261037fc7054011a0b5a374a23d488d535dd49b108eb191442): 736650869}, NativeToken(MintingPolicyHash(ScriptHash(8d673ba1a215d046ea7bba4d80257f6499134acf667d658633f276d4))): {TokenName(02ca529425c42b3e95e4f42e49d16bcc6021554d7400ce4ae7dda185991994a9): 748377391, TokenName(5f82bccb82a27e6566ec1011b5035ea3655295c2be1e9fc0c40829b731c8c961): 2438112588, TokenName(7c27a2a9d896ac4d4b4fc1c80a15311a430de3b5b37a3fc7f3b3a7cdd861334e): 733744395, TokenName(91fbe467bc389da8540eefd9aa06340927a19a56d727b0fbffaa47accc8d614c): 2138315087, TokenName(dc2268f072bda291c348b91fc1ffaa9821e2c848662b239319a636ec39471579): 3177580649}}), datum: InlineDatum(Datum(Integer(15075788117240937958))), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(603d1fdf0eb705103314a22989c4e5eb73ba742026913342c41ed86d2fdf3660), index: 2051295606 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a4216e25edb29e77a8d0aad24d129def1842d9579c9d4e3f682dc55c))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(ea7b33747144d1d7d13aa14f7df6697eabaec5fad6ac2161f0693214)))) }, value: Value({Ada: {TokenName(): 8925537596683938766}, NativeToken(MintingPolicyHash(ScriptHash(29093716b5f94efe6dc0d363eeb0597e465edaf28e3d6ab44147944d))): {TokenName(1981ac8871574081e37734e62f42d59e5694a149d3e1a8a39954f0b9fe2b591f): 2432836977, TokenName(4acd5d154c2ab392c1710859c193efcdeb9a4535cbc8e0dcd046b640d4eb7552): 902076967, TokenName(753bd5b750c94c9f6ce5f8a3ddae424f72936cda90ac9aab4b38b95f5e714cbd): 332318396, TokenName(9a9e5e9f0223500222f9b75d0ffb77d2ce7531291c845e8bb6689de491d692d5): 340392667, TokenName(9b686d2e05165f022cba64fadf1088914bb366a507ab213c8c3ddaf7ee7a46c1): 3685600604}, NativeToken(MintingPolicyHash(ScriptHash(4d626f6a9399c5bfa902fff30c083c3fab316fb674ceb3cadf2ec9b1))): {TokenName(74e5f89afcc7d5991f383af40c46ac32834030978c0189980e190c6bc61927eb): 2660653260, TokenName(7d85353bbb7de907ea35ceaa7d1059e9673af6e70cf03b7795d35f64b8d989f9): 4038719552, TokenName(9aa7e1d8519ea3ba3080f75482fcced303c43a06ddb5fc86cf1a1d61ee9647a3): 3376008048, TokenName(c9d0f508f235c15477ed3b0541c7df528d194c81e691322502c80bbce3e72b93): 2552040617, TokenName(f45c9fd4835fb6862c993e732af56ce86f6f80fe52d87ad2b34ca87c33ddda5f): 93882121}, NativeToken(MintingPolicyHash(ScriptHash(83af1664cf3e4ffa798d43afbdb681e14bb316513ded6f041717ffe4))): {TokenName(0c8d91e2eba3751e7448c2993f15d727f9be1f1a761ad02e14fb0ce89f78feb7): 1580835092, TokenName(1c6ae29f6ce2d7da849da44b7a726196e68095729ef6b4d8c7c0eb361747a31f): 3375235636, TokenName(cee109e119cdb548e08d433d900d28dd53402b097cb2e2b2660da4d1def1d60d): 4128095315, TokenName(d05c690fae152227daf62a7798b42688152838022e541483ecd9c035c3e0b98e): 214072117, TokenName(f47aa961eb58d8500069e96172432cd06e985d50abf1d5cbd1ffc7f4b76b5d4d): 4115183080}, NativeToken(MintingPolicyHash(ScriptHash(aa8ac7ac8c3301cbe6a4f79f7bdbebad4a135d9638a6a8c4fcd6a79d))): {TokenName(5462d975dc29be0ae56412567c9a4b3402cb41a8032a14226434147c5da1c03e): 2745335079, TokenName(7d663f36b92ef6ee6eb57c396344f199fe9e5de46db02fa4ac77ce3e1d861218): 2197791936, TokenName(8a7729799beb6cc12532b6354bf9bd7cb9e286c3b3fd876de4743f4d51bc9a58): 824585603, TokenName(af3af3e4808cf616c5d52524c3cb4e661c51c4ee8df6f746030e2777518cae5d): 3376409866, TokenName(ceefb226d3775a95b9ffaf22eeb5de5e07c140610d7a35c777c7d708db648999): 255007278}, NativeToken(MintingPolicyHash(ScriptHash(f251d0a77f02db88b11a55a7e28ffca19f7784971cf06bc8fb59b3b7))): {TokenName(896fc5052de9928da0dce4f9f7027c82210dff01137734a0cfbc0d68b6cd3223): 306344900, TokenName(9ac2f97ea90bd314e1f3e367ee1822b857c932254fe2e8af46ea400845bf16de): 4186517141, TokenName(ae7833ac678940e9ae4fdb023981607f48622f1887201f1ea87b218e3d4a5802): 2705283853, TokenName(b72b9e7d554c3bc5f31594c249d56eec8b49bbf65cdfbe1dc8379940a38b7a2d): 3341327994, TokenName(c91ffa8366cacc28917ed8b0b951fd276c9cb85ef3a6741b33825dda546c1c50): 4167661001}}), datum: DatumHash(DatumHash(2b4131e00a320d0725797d982946dfe0c11d9068b0825c8465712f66be2d87da)), reference_script: Some(ScriptHash(ff7e2343bfe108a8a274717bddb6bec8765505c848218d03c78f2e05)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(63e71f3ed0b72ce795acd81022fc40804542770cafac1643749ece536c82f743), index: 3473660016 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(01519a6eaab23e224e3a730777da99c9482523f48f947e068e20d67b)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(3c232332ad432fa3bc474d1448fc06ec13c9045582f7f1532bf65f36))): {TokenName(02ced3f4669e6f1d5de68b002773f43a303ac1f818ebf36cd4cbc6e52f5da94f): 696656815, TokenName(0c915be63ac8e42869e2266cde84695b1d3056e6c716673cb4e3f4a8f1a5b6c8): 425545477, TokenName(251f94d99daf5dd6b9cdbe7d6cdeb03319ccba15d7be17e81400304c5ad2c88c): 1797429777, TokenName(28d62192084e26396fcab568e94896c7345857172934f450539cfbd6b947733c): 836609154, TokenName(a5ce984550eb3ff4591d37fce44e3913b2187f3bb5a9a826d25ee64b1b098eb3): 3380257614}, NativeToken(MintingPolicyHash(ScriptHash(3dd797a91a6823977bff7c3cd03170d1de3348a0b210adeaa88b79d6))): {TokenName(121ffb277c0db5ec48a8eb058e0c054cd4641d75780b415ced1318886f26e35e): 4069578957, TokenName(b7cddd8baee136938f93127de502055a5bb6da34067000ff30283a94d54723a3): 203685091, TokenName(d8092b3cfdff2fe5e1e8247b794dee3b7e6cbd8c9703350792705916e19671db): 2208159976, TokenName(e81744921f1aa0f3a441c788ecce3b6204d8d37b1bc1dbd37cced02bcb0622d7): 3789726687, TokenName(f5b7a5111b8feaf9f47baa25bccda014ea60ee1678b49e61dcbdcf88857aa6f7): 2781647908}, NativeToken(MintingPolicyHash(ScriptHash(768f53818971a0ea66b0ca1dd4e29d97963dc85c778c9ec4d5fc94a2))): {TokenName(08a33ef1c5c75d2b979ededfc7898535366cc743fe6d92097bbc1ef9e304caa6): 1663049919, TokenName(0c2aed8449ab1e4e0f0acd5caa6c4f22d46192a72b013721b48d74d72c8a41ac): 2294787973, TokenName(7e5c8e73cae565519aa6c4ed9d6647a3d18e44cc8af73708847892bf0c40102d): 3966512321, TokenName(a4482d820e7f3dfb2e78c953784c3578016a5f74dc3f24b8f900df70a6a25c6f): 2867611653, TokenName(d19427fb71c83d685805532e52bf798f9d68b8887a071781dd98af27169e5a08): 3457975349}, NativeToken(MintingPolicyHash(ScriptHash(9216b26e7161977e8d6d2baa59622d4f61e6e1719181a555734a2f5f))): {TokenName(70e9a2bb2794875b847fd4692f3300c4032e4d36aaf3a0a1cb48504ec6e898c2): 2409066633, TokenName(98091904386ddc71ad16d277bf544467ffbc66ce5c0f19254cc5c401087ca94e): 2236215107, TokenName(9f931891cc743575035282022929a975b8605fbb332e927c2822efe0543eb86b): 1825752575, TokenName(c3cc1ff4a516b48eb26501c419409c253b463f5873e26a68acb688ed10729f7a): 2543388652, TokenName(e88bc3947bd1256e59ebafef62dd42cc35254e32bc6c1d8e2c1af8082515f876): 1955706972}, NativeToken(MintingPolicyHash(ScriptHash(a9b68d234435c5920f22063eeedeabb3d9cebf922f69b90fc4912103))): {TokenName(10d53d8555aa1d766af64524899283cdd58d9b2a3d0522966385131f0c79f090): 3709039757, TokenName(552164813a95fb2a807e14bfcde12d897eba1888cce42fc506b66d6ce2e27aaf): 2570348155, TokenName(e6b46e5ae30378002de0f194a4d6e12dc2974e2cf825765b5c029b79c9ce3ea7): 2735422298, TokenName(ee9457852a462c0485900378df8a82db5b9f294b90ffadcda8d3ec23175c3202): 2913431510, TokenName(fe73f1ba83f705dbfb669c68524f91a66ed434860ae9134a7eefed52605a7b8c): 3067821360}}), datum: None, reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(09cf43b747a5975081574107d549c120ac31d43b991410677847c96e37d3a33a), index: 995961261 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(2544219b3b272f8affb97453b893ce3f618054a41ea2f4698b4926a3))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2612535545), transaction_index: TransactionIndex(2837987253), certificate_index: CertificateIndex(169250896) })) }, value: Value({Ada: {TokenName(): 5785086996295989328}, NativeToken(MintingPolicyHash(ScriptHash(24d3daec3335fe935a2dab1a9f72a106b491ea9514446b6e6eda7a44))): {TokenName(261095f4c6c9a636501c1a9f286ae75dda843399ba769b11ca9eafeed99c999e): 3372569647, TokenName(396b56bae233a8791c740f10d69e169acd6db3a77357355745bf75f83f5fa6a2): 3445609636, TokenName(5fd3a4024903053bc81ebcd2572868f726650252760de89549c1dbbb48ea8ee4): 4098907285, TokenName(635afa33d221ebcd8135c51d2c6ccef517ab8a03afabca02b1b3daa2f2e40d49): 1937604927, TokenName(bf171ca9b23bbaa1789f7608a3b0822263152ad7f17004a04c4806d8f49f5574): 191326486}, NativeToken(MintingPolicyHash(ScriptHash(73a3c06e278dbff68844f15ca850c7961dd572d7cf7dd17896ff7018))): {TokenName(305a534019a8eaa982f9e48ebd7fd29832e61cee7dfc4ef484db78d7c68d5532): 738652252, TokenName(61c785b7f8c206a14dd23d6154fc0dd201df0a50a70ef286610c4d4e789f45ea): 57281176, TokenName(9fbf7f92d5eb1e7a67eaff98c0028b6bd6d66c5866f871dcc415053152200634): 4024650166, TokenName(ec23e54ce23e1c3dbbf1b09b8183ebcd8387600823f4daee6323f0443373f2f5): 3484556259, TokenName(fb5c66d2dc5fcb3de669a10464d8f338e87c3f52bb92bf05bb6bb44774ff5e4c): 750166036}, NativeToken(MintingPolicyHash(ScriptHash(977b0103e7e4e19272752ce64715f8186441f6bf1f1d488a4f6e5740))): {TokenName(0a82e97549b50abdbf4d773a369231b08c1b7b6156f3c9a7f278c22585e577b8): 2913503834, TokenName(16a46677b19c6e2943c38dd581412e0f6b9b3d900dce33faea712a6dfb427776): 3758849122, TokenName(d0603db40b588c5f3859ea5928924537869d1963394f0aa63acda40143850d5e): 663744825, TokenName(df0364ce03c1c98d81a39ba2d3ea20ed7c95ad96532460d5a98fda854d7a6adc): 753062651, TokenName(e784df7764e83764422618a1392e20471d6ccc29a2ecf52cf5bd7caa0a6b75e4): 2955831740}, NativeToken(MintingPolicyHash(ScriptHash(ec5517e94a51a1578d4210c84c9ccb6aad4d9787e320a24942c33546))): {TokenName(0964c4d537213556c3b48d1ef2959908da834856189b4a396053d6722534bf30): 1476539119, TokenName(70780e606c49e25c446f369684747ef0d741d1f4ed0a147f7011505c842221ca): 3018400531, TokenName(a097f076c4d43992236e75e78a33ca6739151a846c903b7cf6436ec021255e66): 3888307119, TokenName(ce883d696c8db1229ae4ebcbc0e470407cddcc736bf7cf58827a8ae9e16755b6): 4070548983, TokenName(e3bb6f9753811c1d98c82c4a145c31a16204900cf53f4e6790edd6273c82d66a): 1174691894}, NativeToken(MintingPolicyHash(ScriptHash(f4ccbd6a6de163cddf206c16ef35b190f380459a63952d1b1895dd6f))): {TokenName(05c0f563fdb2515ff573c60a8388d47433a14e2e40ecce72ea238f82725c8170): 2294748904, TokenName(19828d0731bc0fb884b6085a14e70867dcbdb58a0e0ef0cd190bfd64ade91564): 4125510808, TokenName(3917ee9c0502cddb3cb8eb5f664b3cfe4f831a77c7ce23bc434a2017576d210e): 795989689, TokenName(7bb9055244ee6059f459922e9697febb411efa46aa7f02aaf04c8b67acb87751): 179016285, TokenName(94710aab52e891351cb3215b1190357af69efb64fa68dd3ed0fec2f8af5e124e): 627950714}}), datum: None, reference_script: Some(ScriptHash(19d34805b0db537602cd9e61601b0ee891803db283a88cab71641068)) } }], reference_inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(646c5ab020b4e0bdba45dc39270c69c1578f6275aac4e5c7d2e1994a1d4a9ae7), index: 2130406616 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(96100aa59444a37b9fbd6f905c83b4ccfbb6756361795d7079ef9b0d))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(974ba2cbbc09ef5d0edfc553b9e1d714cf5c490f3b30e6634da4e4c5)))) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(2025c1c32ec8e186d74a28f893fc84914b6f889bdd159d3c3e4294e4))): {TokenName(30bc58ed8dc6e5d1239e196ef0333a1cf8734bf2719f25e210f2b581c17c283d): 3138538209, TokenName(8b6543496f447f20a4412270f317dc35524ee3eba336add3bad964ee1fd5973b): 4097751066, TokenName(b8a6fae91dae37a54c5f1f2748d1702f1829aad1af6ccefcfa9be575386ad69d): 1698135801, TokenName(d1ece0fd967fb550c45ad773ab9216f074f2290ae8d861aa334aadd8a83e3e43): 2379338132, TokenName(eeb7979e4f9a0fe0ddb6ddd99f02bba8f369d2deeabcd634d8b3bd0d17762e1f): 1144425251}, NativeToken(MintingPolicyHash(ScriptHash(96431eb431dc160ce8528c595b8527fd37d8623a658ff5b4e2910310))): {TokenName(187400bfe405947a0c85026af447540639c896f98168f1b2a321bf70767329f9): 780087136, TokenName(229866110b973a27788d02e04c82facaeef7f3baf3d10304820fb7c3f7162e6f): 3698607039, TokenName(26287b743dcebe10d2c79b2de972a578ec4f114be1824f3286a202ab779c599a): 3551441967, TokenName(b7e5afa79a5c6d138357f37f4a7d2aa891399a6aac98aa6ad53c547de534c69d): 188390724, TokenName(fd7481e9c7e26d8ced3941a1bc9e5aebeec9a1cb544fdf950f00f88bccf8e6ab): 1096813748}, NativeToken(MintingPolicyHash(ScriptHash(b8ceab26b6ec226c0a59e3253ac1983a0ae723b4b05d4b664adbd75f))): {TokenName(8b0e37aaa16b68908baec30d4ef4f15cbad1552e8a7af5de7d490f26ec221ee2): 2958418805, TokenName(acead95d21b48bd1bd984290391d9ade32cac36cca9b20b6d99f85069698b735): 764473882, TokenName(cb1bc51b825125e32fce52e5df29589e45d9d3a75bfbdd35ba7517d1c66dca2c): 158222626, TokenName(cbe38044887af69a5eb7a3d6d8de642a6bad8c7dd94b51f4d2d7dde9a098728e): 733176453, TokenName(de2616b83869ddfe31d427a7bd915e6bb481f9602e4deec63367246536b6d170): 4096836745}, NativeToken(MintingPolicyHash(ScriptHash(bb8a610ddbd715ba31202d918f194b8a91be206d9eedd8895a20cc2b))): {TokenName(6c9323150bc643e37322e95d33a8a14f429f75b8c7c62434e2d976e626ff3ad8): 72174935, TokenName(78d6fee92717c0d497933bab0ff3e8e24e420ffdb1ea1cd1db1f1080d77687fa): 3839528739, TokenName(ce0a9672afbff271b9a6c717d7dabb85cd0a280aedbf8f9708205b087a510a3e): 190791990, TokenName(ced17423c8acb2ca8138307e51d3d87626a6f37412e1c1f28079b542c324a9f5): 3341648181, TokenName(f61de49e729b1fef2493ecc84890474faddd1ac67d75588ca2d7e8b3e1c632fd): 3007165824}, NativeToken(MintingPolicyHash(ScriptHash(e4294bbaca3f5fd9c0d411d58dcf0727c1fa9b2fc2599cfa762dc10b))): {TokenName(05e1943ea4866dd92d18ccc944b702d14b8b9fc54433301314bf79ab6b189c7b): 3287269245, TokenName(654fed4b393e723741eac2833f6308f46ef79a23ed0d4634b1728ec047b2929b): 2637736497, TokenName(6decce0caacba946cf43c83beb736f44ce8845049af156cc8acd7d9ac3b8099a): 1185579404, TokenName(e14f8585ad69f0bcb39a99891a7b0127158317343627765717aac9b109f10e72): 3437265369, TokenName(f9bdc38e8c0b819272e5cf00769d0bc5f968a0ead94c046f03f6818a2763ccd3): 776023997}}), datum: InlineDatum(Datum(Bytes([144, 173, 223, 201, 140, 121, 148, 204, 192]))), reference_script: Some(ScriptHash(94007b6185b7346bc984bd7ad95afcfc40d40f1553912a99dda88794)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(b6b64499eca0629b83b141ff8928ea942f12f43b3499dd22cee3ec324b085075), index: 3829671490 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(e26318be52d90808041b52c61dea2742f853bf5256f8efda5deba934))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(870375327), transaction_index: TransactionIndex(1246192293), certificate_index: CertificateIndex(2668375927) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(2d29d583a565a7c5664554ae73786ecc852b3705834a56207904b9b5))): {TokenName(1606f7628e7732dd5ae6464621e4e1455a97c7a4f4a7cc0286b6943be5915a24): 1832724581, TokenName(88c34e27758409463f67122289d19abb38829c0e30c7ff737b56817c097bb4f0): 518606772, TokenName(d74c5e3c383a4fbacc69ae35e824d49f7dea29b8763ce837eec4d8fce13864f5): 3713597674, TokenName(e069beba1b8c7ca90e7c2cc24c3d2baaa0d7345fe017225ee751ca5cc04e4677): 247823558, TokenName(ec6b9e4701fb6cd7788cdc49eb506ac29875a4edb19e2662a95d0f3d6f02588c): 3728361650}, NativeToken(MintingPolicyHash(ScriptHash(419e1f3287f74a6ecd6b7dda0dc332fb85c4b2b9a21965073b9ae8ee))): {TokenName(186e64b3bf7f12983292b62c47651d7f609b11c461a370d8a907e6e83e73ce1f): 3809259102, TokenName(3c89442f9a1013a06894baf60361a50cec905c672f4e8ddfa0bfd2e6f7852efa): 2030150634, TokenName(cc5e1525f397c479665ceb6dba4f19fea7bf8738a56308dc8e045f8d68b42910): 2779674349, TokenName(eb58bf23499953ed40fe55dfadc766b5e87c04fae463b0a05871ded80a89a4a8): 2622975792, TokenName(fcd607e5f4333727b779480f9e95b9d7cbed1fda1fc20ecdc219bd9c2ffa8792): 2991420154}, NativeToken(MintingPolicyHash(ScriptHash(90ce09cac5a7c5999221bc657e06a3f5d0e62ce0d33878d2e41dbce8))): {TokenName(9acf4262141f5acb8e98de1ec52bfedeaabf2b18c48264fe823adbf57cc29603): 1924413208, TokenName(a4802f086ebf26a2b4e3d16bfc04729cb8ed709c29451e8654fe5c969f249852): 3388478348, TokenName(c1434306da913ffa233a5b2006ff00de3c6483f591da63fa8cd61dfaa4759f94): 3354611819, TokenName(f28be7ddd7371e33148cc070296929277679733fc5af5feac2841662434d259b): 2551327226, TokenName(f707345ed60c0fc657fb699f7528a5d77456161f2aab5873f984421505869d81): 4187154854}, NativeToken(MintingPolicyHash(ScriptHash(95cd10afb254ea65079c3843e18cb313399b126dd042bddc38e86fca))): {TokenName(2c025ca7026d843a87832fb56a0d95c3d2b629d10eae2b287fbf2a57ebe01bad): 99849342, TokenName(97a30ebf70e75b14edf59bda226ad48a236a97a526f53a45c4241eaeb09cb216): 1440733641, TokenName(a68840161fd5d25b87a703b724d6ee62eabe573d16ddef143ce434994bcfe7be): 1525056038, TokenName(aa740250918bb880ea544664c1513ac01431f3fe698237bdd87556a0a3570e44): 3675185957, TokenName(f29b9b52614134f76b39468df80c6c6767ac0289c5b21ddea01222935793f946): 2328116611}, NativeToken(MintingPolicyHash(ScriptHash(9751742fc2515edde873bd9dc4709ffac7e44afc6311899d7b120fe8))): {TokenName(3a305ba2e185dfbe658bece2bf4309d98a27150cb911daac96dbcb3c88825579): 2013425254, TokenName(5e3cea53b9975b1540fa5e97e1a4cb8d47286febc4e37e418874ee00317fd42b): 1430243102, TokenName(b97cd54dbdd4f5339146bb7c12f86233097539fe99437d3e7a132608a89f6686): 3640949646, TokenName(ccd68210c540d2e70b1b3b8ddb3da71afbc3d84c80b80f19fea307270bf91ca5): 3085066512, TokenName(dbe81cf006fdca9a3b4f1126fc829e46f0f0b3851443bdde4a6d8e2263337920): 1798570448}}), datum: DatumHash(DatumHash(6ce0fe1ddd86f2210d67b6768c34f26aa206ac0c7fe63cc045b4fb87f3d6da08)), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(1a8628cb331c8ed648bee37951f17a2a4ff16ead08d374387745957df684d510), index: 1909219806 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(bc17ab562fb24627336dccc799e7bc3a138ed82f77b7fd0279dd9b96))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(761437903), transaction_index: TransactionIndex(1679473444), certificate_index: CertificateIndex(957930270) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0ae3735fe68192459d4b2ef8ae30ca9560528b586fa40b95008f9219))): {TokenName(1b48b00ea46a5ce95a01c4fb95874c6a1a4c180769069bbafec6bd42d9e9584b): 1271347592, TokenName(3121d8b957fa7c96206960b7b84c589d60f02e5581bfcdd1d8c9657ca3e51178): 1716028803, TokenName(487cd18ea350068bea61713d305c27effc6e05e1247b59ffafd2f8d130ddcb06): 1980622124, TokenName(5eb9f51b040f78203f5c185c46bed5a499ea00e3808614c4573fe9ca9e8a29fb): 3367802477, TokenName(f7c612d491d33a4c3d6fef580134e5a4c599305bb08b295c924a3880e065d67e): 507756363}, NativeToken(MintingPolicyHash(ScriptHash(695a8c13b8152b5ea46cd7c9f1d0daf2e4311286ccb26b5b8af50e1a))): {TokenName(1f282df05100229503c87c1b6f001c7aafcc823231d81b1ddcb36746b20af82d): 3786938144, TokenName(873128617bfbd595e0a784929f6dd84b6bd28908df6fd3339c7948788c3cf7f4): 4262995817, TokenName(b9569b2eb0974527f78eed65cb4a329a6c1f4f80469fcc422737c71f466e0984): 1292462706, TokenName(d066788b9cbf13df2897e6d918fd506016c0fb96c8be194fb1673bb313f10496): 2349739461, TokenName(d12bd2164a090ccac674be88b6d9d5ed89292773f0caddf134463787d4e58221): 2541659157}, NativeToken(MintingPolicyHash(ScriptHash(8e4f4fe9648492f0360f4051d94e2a92e6d75f653af78bc482c7013d))): {TokenName(0f87b3a2c1bce2f6bd26854dc946935b03adc3012ed795fc8577dddb707fd543): 3227061065, TokenName(55a2fc934fbee7247339f0c52a1e1ce7faed6d4e13d03337b449467982dc9216): 483049655, TokenName(6222702ef60fb8506ff5d1787203b0c6472ccb98f4d561ea4ddcce01297a7cfe): 1725796137, TokenName(dcfaee0cc3f32cffdd57d822861179574880de2f6e2dc58c0ab0b5704cd4dc34): 3670968241, TokenName(e61632ca43edeab1bbfe8562d31889b65044fb6b79f6a83e7f35c4b9b378065e): 3962241471}, NativeToken(MintingPolicyHash(ScriptHash(a37934a127d3e87ff3c99fbb1137c9c8e9ede17817fc2cfe4e636bda))): {TokenName(8cca9cff66be72436b1a33c005cea8b5e09af05a68ee1486155dc36ea8dbf89d): 1332569697, TokenName(a20ae21714fb6005c71a6da893f6e0ba7742428708a383f920014e87af72d865): 3704577329, TokenName(b8373ec1f3bafde0c5a901a2021aa868d3b6d3f5a62d86e06cee54150be43a56): 2244211345, TokenName(f84082a08bdc5cc91c570a0e5122aa56c81a2c9f875f42f02efc99d3853b1eaa): 3317333304, TokenName(fd429f5dd49fc8d124de2be99e0c726325d3a128557619593ed3b19cf47324d5): 2247405293}, NativeToken(MintingPolicyHash(ScriptHash(b6aac5a73a52ec1eae3b182fec231e3d42397d63ab0533fda93ccbf6))): {TokenName(01859cfdd9763efb845bf2cb8838e3e0d3a54f06fce3cccfba72a10878fbe4ad): 3826300014, TokenName(59b873b6e1badb452077003bcd9c051289433db2810a40ba45ad3841bc63f23c): 2818072503, TokenName(7141ade3951c51424a1e0aa5abd99d1b46afb62658899017e1692a5712cbf7a6): 22430721, TokenName(ecafb3a36da7eb4e41fb5582be578cbb27edee114d49c5721fa96e641dd390cb): 170615864, TokenName(f0bdf9fa62e0ea72ef9ed9d2f77fccffe658dc6d14097b9fb72bf26aa3197996): 420350960}}), datum: DatumHash(DatumHash(9b40e29d7da6fb93d37c4bc8e9a0c2a0bc4414d7074b27b9af6173f586198bd7)), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(83f0b03d92da9ea6aaed8b3168c6bd1a0f2d98a14e4139a5035ecf4c01749077), index: 540155390 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(1b4366c158dcb5bf5a9b416cf881327062682339bb6db13dbb35ea41))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2067503976), transaction_index: TransactionIndex(2585448354), certificate_index: CertificateIndex(3646125818) })) }, value: Value({Ada: {TokenName(): 12552441740616864806}, NativeToken(MintingPolicyHash(ScriptHash(3d51228ed975c19514b4f11f8bcf1f803878e75ed01337c8be8bc19a))): {TokenName(35391eed4337bea447bd9ef1f525f99dc9bfa5ea0a748cb3bbfd2c9715876625): 1179301494, TokenName(3600788453825ea4304b2ddb7575d8abff9326a66f55452f3dfb4203be9e3427): 609877132, TokenName(395db378fc56d33b3e28da1f68455a82473507e7047aa3f1f6f5e25f7bf1624c): 4063400532, TokenName(bb0baec22640b1096f65430a14405fe7d100988342ed94d40b73d1a521ac356d): 2159632668, TokenName(e867990428a8f4dcb694b1479ef2b39448287af311013575e0377dbb80adc077): 183808920}, NativeToken(MintingPolicyHash(ScriptHash(49e99cd9d95cee180c7b468834e430781c0e7cabfd936d44d03b0b0f))): {TokenName(2abdae1c2337b9c1bc424986be62f52267d7675ecc260fcb8e6f459673737b1d): 3155480505, TokenName(2c440d4964412914f032b0b32de573782682a4433180c7bb9aa3216a414e1e03): 141822420, TokenName(4720f24fa43f44926be7616861058b8e36190452a0cb158956be6908e659b3dc): 3085723435, TokenName(5a2d2f37e9a6baa7e1016c0cb1eac4f63ff5dbd57b97a0895b594c85be8760c9): 3344221632, TokenName(e67ceb5b0f0199a1f9b9d308e23c82aa2c261939e4d48aab9647ac1940ea8221): 87311652}, NativeToken(MintingPolicyHash(ScriptHash(67a17765d3a41131b81223cad0d53e560a18f58783d45997595e97b1))): {TokenName(2eb7795cd0b7e76bd99b05447bbc60da4a97d1d2a1cf762500aa9a29ad216f02): 2183399998, TokenName(33e9d80e08e035e914c82cdb8e0329be399caab7545ec96b0b3e33cb995bd75d): 1095828543, TokenName(4d4549797dd6bd2ca70832e7b70087e11d02c36bd085b79f703718cd10fb84ce): 1627164280, TokenName(9d48819ab9b6155bb41ca8c431a3ce317284b9982ea74941d77bd20e76f5a2d5): 660108007, TokenName(bdbceafa4c1a9f584a877fb01a14256f599c65e3aabeef247fc29329da931435): 1372680189}, NativeToken(MintingPolicyHash(ScriptHash(80f49de9bb420f7f65e18db26b010b18f1b391a4acd7b51701d9c389))): {TokenName(23a9b01506659529a62658bd37ba00af9244afe5675fd205e3fce00ecb1b26fc): 1479964789, TokenName(7e634331e067fa27a79a95d40b9255aec2d8107e644d72faa2db3cf1efd42c1b): 1821433452, TokenName(a30b26dca267b7e932f6131f6b8bce807eed828d4b74a08190e2739b533b3a10): 2263626605, TokenName(b753886ee2bd686df8ca7a36cab6f5a87ff3775a51421a1eb5bfc681064988c7): 1850967796, TokenName(ca3f7c8b2cd8771890fe00d3d341cb542d1cb8cdf09aee894ceefee459e73d4f): 1639961577}, NativeToken(MintingPolicyHash(ScriptHash(bdce1a0f7ad780af057293a8a64ceef56f8afbc51c01356a13974bcd))): {TokenName(0c0fccdb20591022833ca0e7708df3b0cd506a68e4b83293408bd0cec2e49d6a): 1654625365, TokenName(1cb71f74ff9debaa2251f91b962654498792947ddb105ac7e613402ec29572f7): 1271857943, TokenName(9066b032e01080776eeedc15bc2bad71f1b8a0e831d9087ea22533537730e7e7): 1269402878, TokenName(e025b7ffacd4edb007b6d8947417a539d130a5605ed13569884671248f0c69af): 3368054984, TokenName(e63c0acf468dafbae64fcdbffd6221753500b67f4df1f4042ca10a494a4b2db0): 615929597}}), datum: DatumHash(DatumHash(c8d371812b1cb8b53f974c16c45a6b9c46bcb9abdaa1e442856751a65a4a6706)), reference_script: Some(ScriptHash(c82fd2f11a9194e341c61a2ae7225ff63ffd7e630417cab5916ced87)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(c7cbef04dfc2f87d2999e1d0397f53a53027fe499a2b32edd651a6d938d6c0ae), index: 1077270253 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a71b65ef8c2ded85bd584a8e2b191bd63d6c60bbccf3421945eb4ecf))), staking_credential: None }, value: Value({Ada: {TokenName(): 7156803453470119240}, NativeToken(MintingPolicyHash(ScriptHash(1161b610c86c1e75edf3f0d038d405f8f59ba8eaecb23eef6fb16620))): {TokenName(98a4513639f157e409cad17ec3a235a735cb35ae4f5ff7194e3f79d667784c2f): 3163495675, TokenName(ab0752e01c794dd2287447e78a45d7e9b49f78e8c22942133a2e9f601fb01e33): 1210163815, TokenName(bcc334756c5974daebcd66b2998aee37c70a8569ca3438040c1d4a2fd249d78d): 487106306, TokenName(db15cfa89f63737abae9987d3ce7ad2ed4be9c8e9d3ce82aa2d3b5580e3329e6): 4253691530, TokenName(e9b9c4cac8fe3b45ebce38cbcfc262c63aaa02607702b2e27b5addeb3cbd0812): 2339395740}, NativeToken(MintingPolicyHash(ScriptHash(4e8fd2bb2a6dc8ab479e7c8bc1a4649375cd8127a3cd9ace7cc2497b))): {TokenName(91bfdea1dd2b9260abe7beb1e38cb66574d59e54b6985e1d01e33cf97c97a947): 916427158, TokenName(bc827ef5f962681762fa3aaa69930fbc08bf3417fe94388949dedfbb7f7ed4ec): 891234669, TokenName(e94eb3cf8e966322a3cce9c85282cf754af375ab0de6b06dc8023fb97e0572f7): 1598503206, TokenName(ee51f54f8d1510b9cd8d7c83953933158276d17207fca777ad298d178a513aca): 539141427, TokenName(fa6867c6d93307b281feb2813fe7ff70f4e8a8ef14f7199313052a8fca2e2974): 729910279}, NativeToken(MintingPolicyHash(ScriptHash(5516f34e8fb492032688a7b273a9358ec32b3cbcf48061c220cb4017))): {TokenName(4e90d7a121d81e3623bde4b482a81ae695caa5b475d505f078116c88bb44d80a): 1845425198, TokenName(626d9f52379dbacfb2d09b7a8c75313facc4e8ce2f280e1deec485adf3d7956c): 3593534598, TokenName(a4d4b930af00a6fd82868df4d51207b17e9b41343afc66ee8fb6b1e48facf1bc): 1311996403, TokenName(af74f5502ce5bb7a731903bd84c09461d8d241db6b6d7222e2c8b14a4205c465): 4208117114, TokenName(d13b4c2742b5678822bd7939b32ad4fb7ae90fceb1de1e9458df258b703f3062): 3037895863}, NativeToken(MintingPolicyHash(ScriptHash(b6d3a54f8dcf71c9f0c61322ba8d9572f1c47810881c1e87ddae3cf6))): {TokenName(161506d868904713582acc1df6b36e39fcbd19381a799e1af71ab5e688385242): 2340600922, TokenName(16edb18ed24c99ab83d90fdbfcc78a0fb0093c2b124e1c4b76db08c34d006dd3): 3502052496, TokenName(35f421d013e66786764f5945e355fcbbc7654d758e452b4b399a190c117f13b9): 71254364, TokenName(9088b8384e5e9fdfd8035f16b705db02059a79c6f6293adeb8f10b75ea40a655): 1823461577, TokenName(923e9cb3206fba7e9b02ae0f90c974b94317a650eac406cfc14ab6a811dc6b12): 1856719175}, NativeToken(MintingPolicyHash(ScriptHash(bf2a05f904d60252a7df18749b600e002df789ef486e9fdb71d0a49b))): {TokenName(31f826f150f88681e0f1c1e73c4a58663344449ec089476eb0deee5fc6e5ff26): 95503230, TokenName(4508b41507b3d60d806d62799cdfd6c79593cbfcc37e2043ed34403cd02b17fb): 1008817678, TokenName(5e01100ea0d776e9a3c473f8c816415883c3e75e84eb2e9c1cb42dbcaf524759): 1872868478, TokenName(a696e051c9382ac9eddc79815789b5e25f555337a02c4199c457080443e4aecc): 2154123498, TokenName(bafd57ff69329b22c461bc3b169d3190c149bc6dfc74886246a169ecf6e8401b): 2108335683}}), datum: DatumHash(DatumHash(14eb14d5b8bcbcacf39f126e689a849a031d34dd03d6e07ea437b0c2616f1a0d)), reference_script: Some(ScriptHash(49e78fa1de3cc9640d11c3f5f7f119126a7f927c2b55f680fe6fbfb8)) } }], outputs: [TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(ba445747b88212fb3149fd9a4e2114bb17bbac60e3e5f2cbadcfcf98)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(899768585), transaction_index: TransactionIndex(2759915814), certificate_index: CertificateIndex(4112801973) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1bff977e7da5f5ebb1ccf27789e223aaf6ebb81c25f12be7844811b7))): {TokenName(10cf1a17450644793a81563cc2fe53bc4a01d27d1c541ba1b1c0a41b079fd5a3): 779878032, TokenName(4b87861edd9328c6726d9232dba42b7d217f84539d9a0146b576f1027ceb38b6): 3901662060, TokenName(7b6084343b304f8fa95b96f6561844a12ea60fc89704391879318be2792b6ed6): 1875546898, TokenName(7c6133c8dd0340e41ae5f0d2317497a4ac4c5d50b08a16ff3bed5f6255b7e94f): 3707629028, TokenName(83de5db633ef34e346dfb0a7c38fb28d8e6272e3718aef89d87b1dd9caab9369): 2343619670}, NativeToken(MintingPolicyHash(ScriptHash(24d043b2017560d073f421021cecba5a0425a4ebc0efedaa6a45d454))): {TokenName(259a7e7efc7706e523bbad30e85c8dce6980c5867e169209e544ecc9cadf5fa0): 2895044326, TokenName(46a84240b4a1c6ef8721a4f763f0d9475d2d79d70f83ccdcce85ba1cba36618c): 1222114718, TokenName(db322ef98973afda5164ec3638450be5453baaae04fd5a54837654acca642f7d): 3738279108, TokenName(df0647d7590282ea27752b0434446c827380ff7791b9c1cc7a162552431d5bfa): 3147940003, TokenName(e3e53108ea87e41484bebe7ede167bfda6389b988e7182438598f162fe67dc92): 1985240142}, NativeToken(MintingPolicyHash(ScriptHash(71322fb14a67a2c0eb30db7083ffce94a516cbd67178ef81ee86ba48))): {TokenName(132f973fd88fa462fbb0569bf6356b4fb87eedd7abab1c09c6f54a6767462724): 22415309, TokenName(4f9297d598fed68e8a083cdc2814d31b1f9dd0b98fa6f096b3ebcea6c15b4755): 3055702483, TokenName(9726f3a59a7efd85f21fee20e83a8399b80133f4895cc7556efaf86e663ce3d0): 3426937370, TokenName(b00c59e99b9e18a80f477288887a30aa3fa5261f8c26ce0d7fb502642d01a572): 3636537275, TokenName(b61d1cabbc7baf1714dbff1b50d165b08638c53dee7ec98785569ce05cd7f4d3): 88385042}, NativeToken(MintingPolicyHash(ScriptHash(9698fab4dda9983aa171a07503c807c3f6c34624cc1349268dded999))): {TokenName(072355c208e4158d58a8d61ff048b4c2d90a19ff4918495add3b7f23ac187a9c): 1573299677, TokenName(1aed6b0a4fe3d21668cc913580c3e81b4695b2fb75bdb6b80cc644c475054dde): 423429763, TokenName(7ee6d0cc3cdef3c7d254caabfcb13006afa6de3d01d116cf58875d131bdd97e2): 267477376, TokenName(9092e84be17b25a85c1489943b195078d880a3515fd055be7e01c53fe491e0d3): 1698930157, TokenName(a1c5d50d8dd3be80119312674f25e57a871d9950afbb40a0f44cf7dbefb3423d): 345034190}, NativeToken(MintingPolicyHash(ScriptHash(9f4c36211c209a17f4efd9abf60646f325f8e7dcd612c25c504de62c))): {TokenName(0e95f2005fb3a217a8dd6eac3d86f98888e9e69c33ddf805e8305f02dcbf443a): 1351697681, TokenName(188d5931fcfe4e6445e7fa9caece48bc33477782ecfa5695605cba2f1f20ce1d): 1178440262, TokenName(c3c3888825b634b1607e7cbe7f861a419d2ca8ce43326fc8abc2e4f8172d39f5): 3300428800, TokenName(ca61bd29644ec9b78e2095e3293a88ec49c6b2e7ebbbc19dc3015aefbd23ff92): 289391054, TokenName(d5eda8dfbb617d151e13fe600c82ee3a0370beca4b35950982a6ae7cc3c302a1): 2203548854}}), datum: InlineDatum(Datum(Bytes([172, 204, 122, 65, 176, 130, 242, 101, 212, 76, 35, 122, 89, 174, 206, 189, 109, 183, 207, 132, 59, 71, 112, 58, 71, 137, 112, 254, 154, 221, 37, 193, 138, 1, 170, 244, 230, 10, 62, 69, 166, 159, 94, 195, 168, 210, 140, 36, 184, 208, 204, 11, 253, 18, 218, 169, 94, 94, 60, 143, 103, 51, 82, 39, 229, 172, 224, 43, 64, 4, 180, 151, 6, 160, 108, 129, 229, 1, 45, 59, 85, 250, 215, 25, 5, 85, 56, 226, 150, 85, 216, 42, 152, 28, 68, 213]))), reference_script: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(bdbfa23d8deefb93ffa4bf890462dbd7616b99aa2680ab1672241099))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(31619c614acc3222f75219a01ab74b3cd9708b00f62bf520b041e225))): {TokenName(678f3c6ac8db8612e9d73f057f4515ca08f7e404fa0cbcfb71bd649fb0980d09): 3589168136, TokenName(91c84501f96205bdf4b6aca99d7d2f5c709aa014800e20006a21a5cf9c59b92a): 759784216, TokenName(bae7c0271cd70340268dfabb18d6f54913d985bea566066eedcd7707d1bdc6c8): 3929250270, TokenName(c6af7d45c3b984df6b0757022f8861b152299af8d4d38bdf298b4f601cea8b58): 1029156462, TokenName(fa9bfe0586b8880408a0af9b05b40f123290a085acffcd04d81c3b21534a0e65): 2698477718}, NativeToken(MintingPolicyHash(ScriptHash(4a2c57b3c17580c1d723f832ccfc0241176153ba975e85610913a300))): {TokenName(1d2d2d7d5168c9997d4b9d4329a2dc94d47d12ebced35b3d36a06131b4fe92ad): 802237653, TokenName(200fa9f4ef1d7dc517f0403f54ebff78e8f1869a69580ed006b59555e561c838): 2312135985, TokenName(6f41355034af0ed50f3a4025f34c3899610f3c61fd6203e361cc6cd50003b20f): 569937628, TokenName(ddb162c84740652400857a798b265db775e8dbf8292ea4e046689d3a7906f898): 1871747574, TokenName(e11640b32d4d9056476747d0bb7e66b1ad3aebf591028fbf43a12f984221759a): 1080171958}, NativeToken(MintingPolicyHash(ScriptHash(640fed20ef8924e123f322e14333c773c7f1b87c6a5708fcedeb1a79))): {TokenName(1ed1e9839d58ecc982023381f05339b42dc26a5a98cb9c0c3d108436328a1ec6): 4109321831, TokenName(285cdaa0fb44838fe4c27185e29a855b17f895bdc044b73d980c39fd5289ba9a): 1479211059, TokenName(4000b3e6566ebfdcbde1f74c603feff94d530bff71a291655311580caa81706d): 1971840017, TokenName(9b95a24a591bc88f3d223c228d716148e8fc19029ab41e65de58dfa912d09c30): 744486814, TokenName(f5c3d8e8a58bbe712cbb355b0e043aee752d7fe2bea523f1cad591dc60f09017): 2299665746}, NativeToken(MintingPolicyHash(ScriptHash(69f1d75647d26ff61a254714e978d787b753c9a7db7588443090eaca))): {TokenName(5b27a5e9b66f913386a3872645aec1e61d5541124301c55c19fd3c77d4046b4a): 1010087636, TokenName(908b399df3fa67379d20a785d7377809c503cfbb186022c52e8c50c2a550e78b): 1071051906, TokenName(9e2022e53b37914365c63da9f80f65e4021f30476e0d2732301af3f97a10ef42): 1959909187, TokenName(b6941e9be539426bfee82fff33c3c712ddbc3adc1443dde8ffdd19affab04f54): 2115767810, TokenName(b7fc7f881762a1449ebe331d17fa1b5f1ebfbc59ebac954698e26ae22f418543): 1344923748}, NativeToken(MintingPolicyHash(ScriptHash(cdb588931bb9cf54a180db3b6f4c3f2a421107afe0a387fb7ad733eb))): {TokenName(073e40ae288ca3dca695d8a1d67f90cd144aaa66d9c70750f31db0730abb4b72): 720007408, TokenName(106ec0a096501f488e0971ccd91a10e82c6ec3d825ad717cbeb80d40103132b8): 1978215740, TokenName(8143fbd0788dfe619e0c6ad0fcb20b37af6db08f762afe0612129bb6edc86737): 2023491291, TokenName(94624006be92dcd0c635049f31e965dee7884809da7b283f6ebce1251452973d): 2458305516, TokenName(d2485a5e03eabc36abb9f53605c126743f0e1f93ce238c5d02a6515962eb9498): 2130436929}}), datum: DatumHash(DatumHash(30baf44468c67d2ca8c71cdca08e011c5198f3ed6dfa5f32230106fc689b8730)), reference_script: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(e6bac9a34c5d8e1d87f4de324bd290972466b8dfc37cb993cfe4994e)), staking_credential: None }, value: Value({Ada: {TokenName(): 2345619003581031683}, NativeToken(MintingPolicyHash(ScriptHash(691cf06acd0567c9e228a3e5464163b72cf74df61b3854be97fa4a4f))): {TokenName(3ba833e2f71598e57b6b3e56680d073f4d202ead017e4c957ba263f808e19175): 982856673, TokenName(4b5d85d9a851ba616ae76c36fb7a9b8767d90dca49997135e3c7a7553391448d): 2722557260, TokenName(e9beeaac7ecd8154d4556eab163516d2f23f6b14f1b0df35b3991becd729c8d0): 2236608870, TokenName(ea139e8a13a72295e43c47471b90bc1c60c36e1e395fd7fe291899f5d9f839c1): 2111553428, TokenName(f133ec5ce25e504fbea1b5f07eb81830b6aa51ef0a444a7c66826e445d270067): 567966558}, NativeToken(MintingPolicyHash(ScriptHash(6d6bdc127e5a142df4164a58634ed279ee23c7dfc4d1890e01f710c7))): {TokenName(120399209c28732de97fca2258f0a5882ab7a43e4908c6d90200c020ac475654): 2232606251, TokenName(1c016c718141e3e32287e07e21006b28b198f4209da3d7eb9e5df107ab6b935a): 1783983425, TokenName(7ba4b45f6dcf0836bcbf8c28ae5baf0ffa628feb868c080f3c6b7f8fae3ce2e7): 1880185242, TokenName(b33032b9cce3b8a353d8decebbc8b4e3098b8d7f175cf7e4caa49fc0960f8285): 2946189586, TokenName(b68f1a7ae21895c735848a47919039dac10232e7c0bad7dac31f763298cdf78d): 2148785780}, NativeToken(MintingPolicyHash(ScriptHash(95ccc105961f20b642d496575c8618ab45778aafeff72114eaca3c87))): {TokenName(19d50a0aedd0c0af9f4962fc29848afea286e8a25cf76676b72794055e5cdf24): 3486082732, TokenName(4ab6a7f6672103b16e90215284bcbc305cfa09efca1cd7d5830c85fbdb1e95f3): 3539097440, TokenName(7b7b96f68731e738219a3d4a9c06443ad74aa5bf064d682ad74f0bac2485181f): 3176132363, TokenName(cde11ab41bbd39741a04004079f2eaff3e99e2a12bd84af790a392e84aeb7541): 550985563, TokenName(f5bc1a1db541abcedf99c4ff89fda1e0c9db9006b07ab1c564969aebebd09a22): 4087481348}, NativeToken(MintingPolicyHash(ScriptHash(dac03c917ea11a9a5a2019f0ef38dc71f50ae6da4fef7ab249b59a92))): {TokenName(255915696336604e690d5cdcd5e8caefc8c2cc7ba14c4ecf90d14b27e3cfc127): 3785128112, TokenName(2cba8c1eabc7864239d980f529ade5101532ea8fe09d77203c91f61e34c5fcd7): 1135484162, TokenName(b2f11129a271944764222ccf1cc2198da61fffb57d369387682fde0f20f34879): 2814977963, TokenName(bf7e8119e2b3dec3d6cdc6b303139e166939312940949de45c5cc4371ea7a907): 1892917545, TokenName(e20e58faba49eddf0fcf29cd18de169efd245c4144d6c3f3c90d6a20901913cc): 1380583014}, NativeToken(MintingPolicyHash(ScriptHash(dc51a951d79cfe5723775a9b68ecaaf914c0bd4ca333c97a33bd5a78))): {TokenName(1b4c96c4f76fb3977b8ac414d12cca36bafeea1b18c9332b6527c567b3dc0ad3): 4047894026, TokenName(4a251d7b17c1688b67436848f4b085a6e85787cf4367db02f1f339f0b639d8a7): 2105094856, TokenName(4b657838392205527c62f57656ccbb43b8ebb557e56797a930c6b007d60675af): 3999884748, TokenName(d22e85b376f205061b77fdd8635ae3519b91277e6573aa5e05404502c092a9a9): 1098536676, TokenName(f7f65974967b3c0f0b59ec46ab1e39f4b3ef7a01b578a9a6be72aa1e2b612979): 1852889996}}), datum: None, reference_script: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(8a1f70957ecc5bcf07237a514caff635f9756113d819f5d76f699f51))), staking_credential: None }, value: Value({Ada: {TokenName(): 1875050608586845498}, NativeToken(MintingPolicyHash(ScriptHash(5ffad07ebd776892eb9cf70be33ff89959ac8bf23e9144aec3dade9b))): {TokenName(2c0e09f291d5fe4e56308a4d053a30790d8180afe401474a0a9b8d9a68fe84b0): 3419174824, TokenName(33d20e7e257e8115bafc6277f1528150275d7532d1f4d40a84160e83f400d09f): 1233415608, TokenName(634c0f9175f3b7f80a68e4d6d0ead26c37259ba69359e4e045f22f99c93de76b): 502702735, TokenName(7642483c7c5b82394543bd6a0e82e39b511473fc0b11aca15a739e0334548573): 1957847211, TokenName(fbb16ae3311e95d9824500586e2d40ef71fd93b9e04b92baa6b629c991445644): 3743842378}, NativeToken(MintingPolicyHash(ScriptHash(a7e61d902489094101ae4065dd67f63c8e194e7d04c4e3780f3db47d))): {TokenName(1cc2fdb067c066553991327877808728bd064116debb5db6a475d37dd6b65435): 582182882, TokenName(5b42bdc1cf920a6926365f2d3c2ea62ba7196bdaea0381e879e0cc1064f63edd): 1077275549, TokenName(6c896858fb9e11506a9e7a7ed52728f9ceb432ba5756997be71e0728f35c2d84): 842216307, TokenName(cd50b8569e102c9b1227161ce0e12705cc399b70706ec78e4f64a19a34511aa4): 2394710341, TokenName(f5be742a06da27af05d251af4652feb6102a306824a66338f074fab8a13b1719): 1958201718}, NativeToken(MintingPolicyHash(ScriptHash(d0a6bf87db69adf84ce36aef9ef5befd4bb6be47a124cc219fd76802))): {TokenName(07c3d821c1485fdcb00810a3b5c141217252c61a24513271f30741078029f92c): 3890529542, TokenName(229d8d778334b7f0a3988987575c2e6c9738cba75d8bb04241309cac0ebbec40): 1630686667, TokenName(2703fac3434f25c23a336dbc8c60ee952fd606d485a8f1d14f7d45278f902876): 2142684854, TokenName(43b46257959c0067e91d1678d6d1928031584110bc425d362de0f470b3bbdb13): 1155914263, TokenName(57498f6d566edb2750b7786de3273213d38d784edc1b5663795af6d83000df05): 3798578233}, NativeToken(MintingPolicyHash(ScriptHash(df3d1ac555fe681926052336f96b7237f896dc98b5fd45ed98a4c118))): {TokenName(0aa392ff72eb2e15bd76f081ee194e9c92ab0c5a9cf13f0c1afb98c5d23f923f): 3632623055, TokenName(37988b88ccfeebf8c96553676844d522808a9c189a93a1faafd75412ae41b1cb): 2529992407, TokenName(8cbdd7d69d4dd33c5fa25020b6fae979778c101ee1d15a021de2c4d2f0205f90): 1159873407, TokenName(ab3e2eb78d15c89f7534cef7f735391072821ef558368bdb99c1362465f8fdbe): 2838666169, TokenName(f9b27d6f3432e9dd010ca1dfc51af6b592f1dc6be77f85f1453cc89c0d5f794c): 320800172}, NativeToken(MintingPolicyHash(ScriptHash(fae71851e0c869d670710c4cd5cc380cda0b6c77cc12bc8d404a088a))): {TokenName(19561f4e59d0b31c731632465805369636a0d830fd373808d343c881a515a98c): 1523624715, TokenName(4b95c6d6eef55e7860333ca1c77fbaf416ea40462e464d4028fe1bb6d9fa8a8f): 2672564629, TokenName(5e857d5d57f459d890316b3d7279aa5c90ff56a7ee089c93f20558898bd56d8e): 2676225451, TokenName(d0fd43d731f7636b964dea6b8c80a3d5318b285d65fa18cd2644343ec79d0042): 2068220055, TokenName(fcf5a2a03633681227d43c0168f905c4b67d3bef71fb713d18f169a2b718d064): 4168155326}}), datum: DatumHash(DatumHash(826d7a66d45db89c49132f6f0d47bb60dd0c671eed8bba33cfd1cf722f0752d4)), reference_script: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(9f5a9609101b26415da5bd82fd838ccc530fddee001b04415f659a21)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2202497918), transaction_index: TransactionIndex(2126350206), certificate_index: CertificateIndex(821134753) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0c6f149015fbf25e0bcb8a612d06d075c985fec2854fb069ecbe5d67))): {TokenName(0fbada78724dddfb7dca902d36487563632ef647b0d12b7d286a6252decf855b): 3328392272, TokenName(29f966bb059400c62d419aeaaf87f7b152261133371b3ac137b53e07c428efbb): 996923888, TokenName(57fd19bf614e4a3e5ba431ad041b359b8b74b8c58760c665504f937ec8fba8fb): 4136587877, TokenName(59aaf95e06f3bcd456f1838b11dbe8d68365b7dc64093a9dbdd9c9cb41c5e4d7): 3090979415, TokenName(d2ae5bf39dd75fca8e7f26bd7344898e5f42384f36c76d0d86449ca7d1cd6e2c): 3907724448}, NativeToken(MintingPolicyHash(ScriptHash(953d1aa7c8a6597ea255436096b7b8653d3ef99af22584df3be25b9e))): {TokenName(160adfb15854c5ecd6adfcaa5c6536461b42af6d802908dd17a33c6da70015c6): 1063620687, TokenName(1808a791db8b06d9152eb2b36b5b1593e20f11d2a4a4e3e29d567c664a40638b): 3788863571, TokenName(7f39bd22a48bae016ffea03a21da657edd97785eadc12c044ce8e185466e6e33): 3102480397, TokenName(900b2383360942743b2d715045286063849c0fd58d0baf4218cb1bba36f239e2): 2873646979, TokenName(f1ae7c12c75370249b24a2b4b6a0bcd583e67f08933c5372c87b999913c91bb4): 2416656345}, NativeToken(MintingPolicyHash(ScriptHash(bba45db883e225c91725659b7cbdad0b4e3ed6fd762a880e757db587))): {TokenName(1e234a3b4bdf50113ecfeb00d6499751654ab66e314e26d453d7db2ed89df561): 4141472780, TokenName(344822f1c18b6021081821ca1d8a6fe3dd62b1966bb38c5596604cc4d857c6f9): 3120952892, TokenName(df630d96f19a6e9105a7192f1d5d5d2d5c0b087ac03332fcdbd560100634e5f3): 639708949, TokenName(eb3ba991372a4a3d8c55f27ffe66ac4eef04b7af7daebea3d6dfac437fab9384): 2233927639, TokenName(fe0b8f25d4e3823f5f33c2fedad4b225ce9e1402bb2cba591091e4b9b3fc5350): 2923985628}, NativeToken(MintingPolicyHash(ScriptHash(dbc813806f603986046859c9a1233f82a60a5d5be22875c7257829e8))): {TokenName(223da369e60152a4eccfba4f5e66dec74719a7e11b707ed045b2722040d387bc): 2816803314, TokenName(466e9624f30622c39e429787d8dabcebc433cfd97ee8f74c7fcd30eca007ad47): 4241284657, TokenName(b59a08ea8d7638266fbc88937361c010fc97a487be00e214c6a27237aaecc6aa): 2793411479, TokenName(de16ee01ccaf7bec5d970f7f8eb406b30a0a519d7a21ef8f13e619435fe51359): 3457509201, TokenName(fcb79dce7287c26da98445c5633171009fccb8f5d4a9e10cf7fdb8cc2988e9a4): 1973183991}, NativeToken(MintingPolicyHash(ScriptHash(f93c4aac2c238a53839dec1f85e0f6d7b0f794a5d26d5a547335a57a))): {TokenName(2044ee496ab8736a05cf92574c9f02947d107804e3be9156606b614f379d7d4b): 3903125479, TokenName(7daa60cd5695a6fe07e4ce83510aa5948b8af205eabf83683dfdc8a546f5caf2): 3447520966, TokenName(8836545aa709f54efa76dea09acd6cef5e79aae6327a92241a0a1f750ff75284): 766065464, TokenName(b49ed50fe0f51d3331947f589665125b77728606188fa49956a4d70eac4a2253): 2263306418, TokenName(d8f448fef891d6c37018e9c7e77d80fba9df64e4c0818af64306c777c36a9ba8): 2507925515}}), datum: InlineDatum(Datum(List([Integer(18341390424677414674), Integer(-15188219571950571493), Integer(-12618291903575643987), Integer(12604060985820067889), Integer(1711885320080205276)]))), reference_script: Some(ScriptHash(567a963be3f865a25e5a36ed088b020dbc7ee2824c99f1061f0c470c)) }], fee: Value({Ada: {TokenName(): 15803115623070617160}, NativeToken(MintingPolicyHash(ScriptHash(51af9658be40865278fd47f42d017d860682df63a06f1c0b6e14864c))): {TokenName(00576a3a5f458896aa30b52876cfb69549af50f0058f1b28560c1e3530f7f655): 1891164644, TokenName(346fe26f4fcf7436e8d3d1d94159a86a136beb779d05e610474ea5a5fde683a0): 231309602, TokenName(6a030d5bd54aefb998274c8305eb4915b359a58fa39aec5ead75b67ba94a51c4): 1408961262, TokenName(e368b8e6a939313a805442efcf28bad130952f255a3c0e554acf962c3e925eb3): 2028257270, TokenName(ecb5162c612556f713b3d434a6fa8b7f4dfbefa787c8f9ee8340c335a2f95ead): 2505255268}, NativeToken(MintingPolicyHash(ScriptHash(59a48ee567ffbd294754a2e58ded4ba6ab3f327cd8c7c1f1bc6a8701))): {TokenName(056aae0d11e020963fde9202797e0ba7a6155a5e03a9e40f06ed001dff1f868e): 4062212792, TokenName(6398b5866d75538c40b3114713c7e6e927b19b777e69ab3d85d585ba683e39a3): 179831580, TokenName(a32be848542f1c36fcb05fd76957d93f9a3753e35834d0cc4cdecda2c959c713): 2573060774, TokenName(da053c704706ab24b9d4d6279869447c0609a973850d7cfdacb0b5650bad39b4): 1744184575, TokenName(f8a507a37d0c9f936d3fffa96a9bffdbd7b7c458c6d7e8db3bbdc1c89abd6889): 4216496880}, NativeToken(MintingPolicyHash(ScriptHash(67a0397effe1d763f3065fff9555c652dee27c9c3b08bb2dc34544c8))): {TokenName(417ef25e64dc8bf269771508b80f09daf2c793f2761acdac2447c5f4230d8964): 68891500, TokenName(833e13de8f099d6438ce362f4ebd4011e8583dd1d08c3105b51856db4fed6d72): 2842042184, TokenName(89e79630f1a370d4a9dcff62a4b9e733f65d77a189c68cc92b976a8b47ebc458): 124004641, TokenName(a6ae571e2be0904fdf544d2c1050771e23d265fae40e61d5bcb43fb913e1868d): 1140594532, TokenName(b6cb38fa26dd3c6d4e44bd30d92cc0df4ae412db903b3a12c6c562d8830dbcad): 1884238911}, NativeToken(MintingPolicyHash(ScriptHash(6ec5286b5cd9e1d99247cb163669b313fdc2bcd00caf3748bd2cee4b))): {TokenName(0368a5459a02f850ac1a593ce239f37e2c8b086be8af88d965a82f0a67d9d82d): 2103763571, TokenName(4b4d7e8c41ed1e4824ec752ec88a0f5dc5d69ced7b42fa86f12211626aa90053): 1150630860, TokenName(6a845f861fbd500421b52b4d3be75efe66be526061f379c2517f3e30d809ef37): 611065587, TokenName(9581c41d62560ae5e71cdfce8bb299dd3813e640c2929d4fccfb72cf8153f12e): 2733787951, TokenName(c00bfc5e7fd044062e6902173586840a2fffdd4abbf25ff2b42aa1d4b02e41dd): 2640075632}, NativeToken(MintingPolicyHash(ScriptHash(d695c62120cd646fc72784bfb336c3c16d6b42ce98120c34ea8f7886))): {TokenName(0299561ef7c9a456e1780ba3804163bb2d9693e0722c89902b0712c0e12611f6): 3896231851, TokenName(0e6c1a5f6061a79284b3ce2d29bb0db5e06d95921035dc94dd495a0886c40040): 715083743, TokenName(9af7bdc7bbc9c28f9d17174cf8aee887cb08c7f839aeab22b9f680fdd3f0f938): 857505909, TokenName(c3e407bd1fcb3952f0489287ffe4ef81321ff1bbd120b601fe81edae5bd58ac8): 3247714681, TokenName(e5297cdb851b5d5d782a6885c25b2e459a03f14e8b816b40345cd2953af034e3): 67613300}}), mint: Value({NativeToken(MintingPolicyHash(ScriptHash(333113c894fe11a52f1141e3e7b9ee9ead73a981547e952f654e4bcd))): {TokenName(31b5a8c6e22bbf81e0e8580d4419d2a8a9c8410594ddf13a3f587200ff3bf99f): 3510970424, TokenName(39508322dcba87e333b88e27561450e92b9ed21f07c85897d0a5ae27a6328037): 2623597566, TokenName(3f27fbddc77e5f31716cea0741ca384aed2e0beb2f0d10d42e841d6555d416b4): 4223901033, TokenName(bf168eda2ad99e4ec1f18925c00f61ee99764c3849e1c828d332cb6e4d8c2866): 745442573, TokenName(d86514ffb5f7395ac2345689684e2a49efeaa199979ccf366e6303ecae38de2d): 2070654651}, NativeToken(MintingPolicyHash(ScriptHash(4855f437d5b8f64369d4f22448101a2a90d400d6465befceb9f7b644))): {TokenName(329a1bf5d5969a43640a8969f8be7ee09cd2be00534eafcaa963995dfd74bd99): 1939130107, TokenName(a9d2be008e98ad835a4cc68913f50a5ae80b370d78510fe7a1ee488d2aab3589): 2400496195, TokenName(aaa74287e48b6fab53ad1581a6ef7ee6ce2f86692e0175071371e7232c9af9fa): 3336964384, TokenName(b13d68dddeae7aa3eae33ab1929804f9181b521283f7d137d61ba56b91ea7adb): 3587800286, TokenName(da96e9444c0fda9a2bfa20da460fb30cab627a8a3cb912d881e44f062a8076ab): 1083941161}, NativeToken(MintingPolicyHash(ScriptHash(ba30dda1dbcb2af4319fa18f3f97ee4a40b881e94d83f735350212a8))): {TokenName(126b2ba20d350849e97d2ad5535debe2ab61f8192117539aa08a0046786d5184): 2037947589, TokenName(2d2f0c2fab2b10b2b2142ceef43259bc0a33634d19070a63843cfa9f725f6987): 3683714516, TokenName(3f17cbd53d6c15154066c664668fc69664f13a8176ee62d77d91b249844310e9): 1356465783, TokenName(7163f2327a83e4a8e60334cc8359fadd1c4496441631fefea0d3748cd47cb095): 153963067, TokenName(8e849037f18f4144bf0dc017fef9b889c5521f5e635e0dbed6afac762996e0b5): 1439049856}, NativeToken(MintingPolicyHash(ScriptHash(d2887e00d8e7aea32a0b0fd2bdf41f71f06cee73806b40ac6a8aea16))): {TokenName(1178f53dbac3ef33fbb8dd891c8e3576d616bce31de995eae9f666d14f87d538): 3700885807, TokenName(2661ee1a540c4da700f528edfbfaf601f132ab14e4380f5b8ccaeb25bffc8677): 3840572024, TokenName(4a490ddd6dcacdecd2daa50b57463ee62203d3514bee6bdc5801f13529bf868d): 2529075641, TokenName(c36f6439b01b042fedd05714e11d3486e6458c62398a148027be8cf7a70a69a1): 1293554079, TokenName(ca8ba4a96cea31e139f9e7e7cef3769280c7750c44ae24974179c58086912d95): 1370877010}, NativeToken(MintingPolicyHash(ScriptHash(de6e84d8a6687b9d0448ab71958dde1d1f3f3eddd3113862c3216d53))): {TokenName(2b27b7e3ffc5f0fa11809739b7dcfa4f0174375506be1ea4c26ed74a12c4f85f): 1503890893, TokenName(2da2fde1bb357aa579dddd8f57d6c399786519ac3de7a0126e01b3018eaf8b91): 199024162, TokenName(3755b21f2864e630e52af59406dff60761821a7f3da2e59140e41aee956031a9): 1152035766, TokenName(85df67e42252466fd8c73c04155ffda08f1aef716440c8a09e26701f80d78363): 1718120637, TokenName(8f07d214cdcc525faad400498aab4495bbcb2543f388e8c9b9efddac617d6d94): 4225038705}}), d_cert: [DelegDelegate(Hash(Script(ValidatorHash(ScriptHash(2026c1e7a5a9312222e66a86b1df6a56c74f0f54c7380649503be4e9)))), PaymentPubKeyHash(Ed25519PubKeyHash(7eda1c44fd39f1ce8aa1c9502b43dbdd0a1f787c42940a7ab77a588c))), DelegRegKey(Pointer(ChainPointer { slot_number: Slot(2851043036), transaction_index: TransactionIndex(2709126557), certificate_index: CertificateIndex(715274452) })), Genesis, Genesis, DelegDeRegKey(Pointer(ChainPointer { slot_number: Slot(761337367), transaction_index: TransactionIndex(3811942017), certificate_index: CertificateIndex(894925047) }))], wdrl: AssocMap([(Hash(PubKey(Ed25519PubKeyHash(de3d5474477888f52dc73c3219a9df08929721720c1ffbf7778b46a4))), 1188800935), (Pointer(ChainPointer { slot_number: Slot(2561259123), transaction_index: TransactionIndex(4083476119), certificate_index: CertificateIndex(1585308347) }), 263857381), (Hash(PubKey(Ed25519PubKeyHash(87cebed31148f5e0c6434f5b29f19ed709538c4b86addd8930b2aed7))), 1856686000), (Hash(PubKey(Ed25519PubKeyHash(68d692439b1d02991261428f3565deb31e19b207de1670aeb001b348))), 1338798631), (Pointer(ChainPointer { slot_number: Slot(132451218), transaction_index: TransactionIndex(221312802), certificate_index: CertificateIndex(3760676452) }), 3400108145), (Pointer(ChainPointer { slot_number: Slot(2964679271), transaction_index: TransactionIndex(1953655207), certificate_index: CertificateIndex(3832592502) }), 217527895), (Hash(Script(ValidatorHash(ScriptHash(5b2bce504e16c9d1b9f1e72fb9da01aa37f7369823e109516c44c1aa)))), 3742334973), (Hash(Script(ValidatorHash(ScriptHash(939d095936089874fed61fbcb4b6ad1bdc13a2ba2c557fdbbf903732)))), 2677634697), (Hash(Script(ValidatorHash(ScriptHash(f1d99bfe32b36ee4ea5d278329b23a99fb119823517f69277c78c88e)))), 2637902573), (Pointer(ChainPointer { slot_number: Slot(3188648279), transaction_index: TransactionIndex(3069628652), certificate_index: CertificateIndex(2280472759) }), 3561615259)]), valid_range: PlutusInterval { from: LowerBound { bound: Finite(POSIXTime(1947697823)), closed: false }, to: UpperBound { bound: PosInf, closed: true } }, signatories: [PaymentPubKeyHash(Ed25519PubKeyHash(84232c9099056f56e6a0a9f0f749f65ea5c64d2eb528daf7e8799df1)), PaymentPubKeyHash(Ed25519PubKeyHash(6e8667593ac31ae80eb81d65f51f07789992ff9ad7aa8b1691f71f30)), PaymentPubKeyHash(Ed25519PubKeyHash(8ed98e3eb6fc1940eea87da038ee40b0f1b692e2f901638c4577e739)), PaymentPubKeyHash(Ed25519PubKeyHash(a93d3a6ce845817e502b34057e09cd1126cc2003a2cef4ce492889da)), PaymentPubKeyHash(Ed25519PubKeyHash(fbd74df32d509d3534b1eb660bd9b2d756207bfb1e97116134c794ff))], redeemers: AssocMap([(Spending(TransactionInput { transaction_id: TransactionHash(3684758d3317af19ab7e0f19f5f060b1b3d85abea6b07b5c39f2b5494895b7df), index: 402668050 }), Redeemer(Integer(2810963777676229418))), (Minting(NativeToken(MintingPolicyHash(ScriptHash(175fd4d257035282bf6cc6aaf5ecad5e14f33cd271603da5a9023c30)))), Redeemer(Bytes([174, 91, 255, 132, 236, 210, 74, 206, 199, 181, 33, 217, 105, 3, 55, 121, 209, 111, 245]))), (Spending(TransactionInput { transaction_id: TransactionHash(45597a6c4ada1ce6df045684b4ee6c1582930205ab9a922e4e31e9ba5396d984), index: 2195186866 }), Redeemer(Bytes([155, 103, 42, 214, 236, 40, 73, 165, 239, 119, 211, 29, 147, 176, 117, 7, 28, 206, 207, 208, 249, 171, 103, 247, 248, 61, 137, 254, 220, 50, 154, 132, 101, 60, 15, 72, 17, 155, 23, 70, 132, 1, 81, 83, 120, 7, 69, 180, 132, 97, 114, 186, 220, 171, 103, 86, 23, 156, 194, 217, 142, 55, 150, 88, 10, 223]))), (Spending(TransactionInput { transaction_id: TransactionHash(f7060289b31d2eee6dd60a50f49781e9f797c0b393dd60daab103b8d3fb3a889), index: 2516227782 }), Redeemer(Constr(2228932073, [Integer(-10040748169353365345), Integer(-16348844488077936941), Bytes([118, 93, 98, 129, 35, 22, 191, 164, 62, 30, 202, 33, 85, 193, 208, 111, 241, 39, 106, 154, 19, 219, 98, 56, 12, 246, 117, 89, 106, 46, 233, 205, 11, 175, 53, 10, 6, 2, 31, 95, 164, 14, 60, 19, 178, 150, 29, 233, 66, 93, 85, 173, 148, 167, 108, 49, 175, 34, 103, 17, 119, 89, 95, 164, 147, 83, 198, 248, 64, 131, 74, 211, 39, 75, 73, 29, 53, 18, 140, 103, 143, 10, 54, 33, 144, 84, 101, 98, 215, 250, 206, 78, 102]), Constr(158106493, [Bytes([242, 195, 61, 243, 253, 83, 48, 120, 89, 168, 176, 167, 27, 231, 203, 105, 129, 159, 133, 196, 149, 178, 212, 61, 147, 8]), Bytes([121, 26, 202, 42, 214, 164, 29, 215, 24, 55, 57, 90, 30, 226, 5, 155, 51, 187, 84, 51, 73, 214, 246, 152, 53, 233, 111, 179, 151, 54, 188, 164, 72, 17, 55, 221, 183]), Bytes([82, 208, 81, 26, 131, 41, 237, 37, 232, 32, 197, 229, 84, 37, 15, 29, 56, 227, 100, 46, 7, 217, 39, 189, 187, 175, 191, 31, 54, 199, 219]), Bytes([5, 147, 3, 242, 139, 200, 16, 190, 224, 198, 251, 71, 91, 209, 123, 30, 12, 148, 231, 171, 144, 241, 128, 20, 133, 6, 48]), Integer(-16674154303761446734)]), Bytes([20, 244, 82, 105, 235, 25, 226, 247, 129, 240, 230, 48, 237, 54, 191, 180, 45])]))), (Certifying(Genesis), Redeemer(Integer(-6322583901471666111))), (Rewarding(Hash(Script(ValidatorHash(ScriptHash(5a2229d81a04f63baf4be9ce6823eec3f236c98e2f96c2a8f41c7adc))))), Redeemer(Constr(2108123717, [Bytes([48, 143, 62, 144, 22, 28, 118, 97, 5, 243, 108, 134, 212, 235, 67, 31, 91, 156, 207, 64, 227, 71, 29, 152, 79, 46, 155, 69, 96, 133, 136, 90, 108, 212, 102, 152, 80, 253, 230, 208, 247, 38, 230, 128, 173, 79, 132, 251, 104]), Integer(-8068460302907919505), Bytes([230, 22, 48, 43, 56, 31, 65, 114, 46, 61, 233, 217, 124, 158, 221, 38, 8, 156, 148, 9, 210, 198, 197, 224, 133, 20, 221, 192, 28]), Bytes([200, 255, 188, 74, 6, 165, 182, 28, 113, 173, 107, 255, 120, 129, 167, 2, 19, 155, 246, 49, 226, 105, 38, 110, 217, 136, 231, 16, 69, 214]), Integer(14568000902052266110)]))), (Spending(TransactionInput { transaction_id: TransactionHash(e3c73cee29ccc3a93f4908faacd2039c80e6e11f4af461609357150e1ccdc9f7), index: 1997757407 }), Redeemer(Map([(Integer(-12617781173585543840), Integer(707927533030626591)), (Bytes([87, 37, 253, 91, 240, 70, 15, 48, 131, 76, 16, 79, 136, 70, 70, 78, 172, 177, 143, 150, 204, 99, 121, 161, 162, 154]), Bytes([152, 43, 219, 158, 55, 149, 84, 234, 246, 9, 94, 13, 170, 138, 189, 57, 16, 37, 238, 118, 106, 30, 143, 67, 67, 4, 248, 251, 68, 243, 156, 97, 67, 111, 96, 51, 90, 0, 159, 255, 37, 228, 89, 6, 253, 99, 190, 181, 96, 128, 180, 20, 248, 23, 21, 179, 52, 154, 126, 179, 194, 77, 90, 64, 73, 138, 210, 232, 215, 183, 4, 18, 181, 213, 58])), (Bytes([79, 154, 247, 87, 37, 204, 80, 46, 89, 234, 172, 52, 5, 191, 52, 130, 85, 170, 76, 22, 242, 207, 207, 30, 142, 90, 100, 15, 55, 165, 53, 205, 251, 71, 175, 222, 244, 80, 34, 62, 132, 223, 123, 198, 192, 68, 196, 141, 190, 198, 87, 229, 189, 51, 141, 171, 12, 53, 91, 198, 37, 25, 246, 92, 152, 89, 128, 43, 234, 45, 128, 68, 207, 46]), Integer(-14322734530933966339)), (Integer(-3861535558087861398), Bytes([111, 41, 2, 76, 196, 41, 156])), (Bytes([85, 81, 119, 35, 33, 228, 212, 131, 254, 255, 32, 126, 133, 24, 188, 74, 128, 66, 21, 125, 180, 215, 36, 14, 79, 226, 249, 63, 75, 180, 149, 208, 146, 42, 243, 2, 144, 135, 62, 126, 127, 197, 227, 169, 79, 219, 149, 139, 213, 60, 122, 208]), Bytes([118, 214, 241, 123, 244, 200, 9, 151, 218, 221, 87, 178, 16, 107, 48, 16, 192, 199, 131, 111, 9, 182, 13, 37, 202, 47, 135, 184, 246, 146, 245, 12, 215, 67, 167, 172, 223, 212, 149, 99, 144, 182, 16, 178, 188, 146, 235, 109, 215, 116, 233, 23, 82, 149]))]))), (Spending(TransactionInput { transaction_id: TransactionHash(62c42e4202f656c5bc421000ca55519453b3baf0cdd7939350b4714a505b6e63), index: 2111527653 }), Redeemer(Integer(16458574750339611711))), (Minting(NativeToken(MintingPolicyHash(ScriptHash(cfc4818d9f1d2b8846520e2483eac0a3c1e73c74626f767efee3eb30)))), Redeemer(Constr(2140196213, [Integer(15708456767238457497), Bytes([122, 118, 45, 12, 134, 125, 206, 188, 13, 26, 125, 183, 190, 94, 85, 69, 90, 224, 199, 233, 45, 227, 21, 185, 2, 145, 49, 184, 113]), Integer(10944798376073413757), Integer(-5781556765119698737), Integer(-5775803905611332833)]))), (Certifying(DelegDelegate(Pointer(ChainPointer { slot_number: Slot(1535946222), transaction_index: TransactionIndex(973501788), certificate_index: CertificateIndex(1721835424) }), PaymentPubKeyHash(Ed25519PubKeyHash(8da7434927217fad2dbc685e7dad4061ec2446602a443024505e085a)))), Redeemer(Integer(-105968194133868962)))]), datums: AssocMap([(DatumHash(3f13f0f11489a611f86854e1798b705dd42e223dcd41cf122b05b747088df20a), Datum(Map([(Bytes([118, 161, 39, 170, 34, 79, 212, 83, 167, 238, 67, 67, 185, 243, 138, 101, 174, 188, 204, 187, 12, 126, 60, 238, 79, 239, 170, 171, 228, 2, 248, 6, 30, 98, 242, 74, 47, 48, 224, 207, 194, 177, 8, 43, 97, 98, 176, 12, 149, 193, 103, 18]), Integer(1977499462978565508)), (Integer(10862498357460938208), Bytes([])), (Bytes([67, 12, 8, 166, 225, 88, 2, 238, 247, 93, 98, 86, 56, 50, 64, 102, 127, 141, 197, 139, 108, 146, 176, 236, 141, 156, 200, 55, 183, 106, 24, 97, 33, 55, 134, 129, 99, 150, 169, 142, 128, 135, 106, 162, 69, 26, 240, 100, 110, 218, 87, 86, 167, 120, 120, 44, 10, 229, 36, 95, 24, 174, 110, 117, 93, 134, 234, 60, 107, 157, 243, 227, 238, 57, 78, 254, 100]), Bytes([118, 181, 227, 178, 88, 220, 250, 9])), (Bytes([49, 106, 11, 48, 139, 75, 97, 236, 204, 210, 22, 64, 193, 204, 10, 142, 78, 223, 187, 250, 174, 115, 174, 255, 237, 96, 134, 215, 167, 181, 181, 46, 208, 35, 18, 220, 218, 202, 234, 200, 40, 69, 114, 132, 251, 216, 101, 15, 243, 21, 175, 13, 14, 225, 55, 191, 74, 187, 218]), Bytes([158, 73, 152, 185, 193, 123, 92, 130, 151, 32, 167, 168, 198, 205, 25, 174, 41, 76, 41, 187, 76, 26, 243, 192, 137, 127, 166, 40, 164, 253, 40, 21, 224, 55, 145, 89, 166, 140, 219, 94, 46, 213, 40, 183, 164, 44, 64, 211, 69, 108, 31, 162, 223, 59, 190, 37, 228, 74, 200, 146, 193, 210, 63, 12, 18, 21, 219, 188, 65, 211, 8, 150, 10, 202, 79, 62, 120, 79, 166, 175, 235, 221, 86, 233, 90, 56, 133])), (Bytes([167, 85, 73, 175, 24, 104, 70, 32, 188, 82, 35, 33, 38, 46, 206, 145, 16, 109, 229, 184, 122, 246, 16, 104, 137, 149, 13, 161, 11, 81, 119, 34, 174, 95, 234, 93, 187, 208, 174, 42, 15, 116, 27, 30, 23, 195, 184, 134, 138, 141, 153, 84, 122, 173, 49, 31, 157, 228, 111, 132, 171, 29, 249, 213, 125, 51, 162, 171]), Bytes([173, 43, 61, 171, 40, 132, 160, 0, 51, 38, 60, 156, 84, 190, 38, 250, 42, 247, 134, 141, 15, 1, 196, 220, 95, 69, 182, 97, 217, 254, 96, 149, 68, 207, 173]))]))), (DatumHash(2d3b3784524ee6b3209de5f067eafbb855ab2fea6d84520bd4c498ad3bb4a9bf), Datum(List([Integer(8367189122487879926), Bytes([85, 73, 133, 238, 111, 220, 15, 18, 34, 163, 152, 66, 155, 1, 153, 190, 23, 83, 30, 150, 251, 76, 114, 20, 47, 119, 18, 159, 134, 192, 115, 230, 52, 234, 155, 13, 215, 6, 248, 17, 51, 29, 215, 86, 35, 160, 223, 109, 125, 211, 26, 104, 87, 162, 115, 72, 13, 229, 161, 209, 221, 69, 127, 153, 191, 239, 254, 213, 190, 148, 126, 34, 248, 117, 0, 79, 198, 252, 69, 21, 103, 203, 238, 38, 166, 112, 197, 236, 29]), Bytes([39, 11, 165, 215, 13, 7, 168, 38, 171, 158, 216, 76, 205, 219, 175, 173, 48, 249, 55, 120, 163, 252, 3, 212, 100, 14, 72, 36, 250, 217, 182, 224, 86, 144, 68, 194, 171, 125, 18, 95, 195, 61, 107, 252, 44, 39, 245, 35, 250, 44, 178, 100, 200, 35, 0, 48, 63, 66, 113, 222, 254, 104, 87, 211, 218, 133, 146, 5, 79, 181, 128, 131, 143, 239, 41, 184, 153, 133, 201, 49, 186]), Integer(-9962985770080429271), Integer(3300264540542865748)]))), (DatumHash(8ce152b89a27ba57337b595010a34f555046c8c6cd7e3afc906bc4c94a518acd), Datum(Constr(936155300, [Bytes([179, 191, 241, 133, 205, 121, 248, 205, 87, 116, 230, 31, 187, 169, 193, 199, 132, 206, 141, 5, 158, 46, 152, 8]), Integer(-8673110579305453718), Integer(-12537810982799057929), Bytes([236, 213, 37, 205, 7, 12, 74, 160, 98, 55, 208, 158, 197, 160, 241, 14, 9, 245, 193, 187, 17, 154, 236, 190, 39, 221, 146, 248, 86, 217, 88, 64, 68, 89, 51, 163, 48, 73, 250]), Bytes([42, 75, 165, 156, 215, 125, 186, 112, 165, 63, 87, 175, 5, 5, 124, 160, 177, 17, 156, 186, 248, 216, 118, 192, 0, 170, 64, 192, 137, 107, 42, 219, 222, 71, 54, 233, 248, 169, 209, 18, 179, 146, 90, 25, 178, 214, 70, 44, 46, 106, 178, 251, 144, 150, 106, 136, 106, 167, 57, 94, 192, 75, 46, 72, 249, 114, 31, 157, 137, 96, 172, 168, 87, 22, 151, 33, 123, 232, 228, 180])]))), (DatumHash(c8f2f2962fa2008d80d74845ce6e1c9fa07c59a72a7855bbc8327038173d7a14), Datum(Integer(-11014695058603834993))), (DatumHash(feacbf167e7362c034b6094309acfc199eef89c762627afbc3e26c17077498a3), Datum(List([Bytes([114, 25, 55, 213, 115, 15, 223, 38, 109, 128, 137, 138, 28, 217, 153, 135, 174, 69, 209, 57, 123, 255, 187, 27, 170, 28, 30, 141, 116, 75, 200, 255, 29, 219, 73, 40, 84, 123, 56, 231, 12, 208, 17, 101, 51]), Bytes([227, 109, 163, 146, 239, 116, 37, 217, 246, 179, 7, 40, 159, 217, 8, 3, 179, 245, 239, 159, 171, 125, 172, 127, 182, 68, 122, 122, 139, 99, 139, 228, 221, 182, 166, 177, 122, 1, 124, 113, 195, 83, 148]), Bytes([131, 145, 78, 12, 160, 95, 28, 195, 41, 9, 33, 59, 95, 198, 214, 159, 126, 28, 49, 170, 237, 148, 108, 179]), Bytes([45, 124, 127, 231, 243, 103, 86, 59, 47, 155, 129, 97, 177, 66, 26, 11, 184, 40, 133, 137, 192, 84, 185, 181, 211, 85, 130, 6, 77, 126, 112, 73, 89, 51, 29, 13, 120, 196, 78, 3, 194, 122, 8, 196, 136, 165, 175, 203, 155, 142, 255, 31, 25, 227, 119, 233, 226, 126, 140, 150, 236, 212, 12, 232]), Bytes([236, 105, 73, 166, 64, 27, 13, 211, 82, 60, 159, 146, 183, 63, 198, 4, 87, 147, 135, 68, 72, 75, 39, 114, 56, 116, 41, 102, 79, 4, 176, 86, 100, 27, 188, 166, 198, 137, 145])]))), (DatumHash(fcd1cd0c9180a200774e56effadbc3f4ede5fd45dfacf13beae30604ceba4d02), Datum(Map([(Bytes([102, 71, 154, 227, 34, 164, 72, 15, 62, 209, 6, 126, 235, 53, 244, 194, 37, 198, 130, 182, 186, 180, 77, 97, 253, 124, 97, 31, 201, 11, 220, 27, 11, 145, 104, 76, 209, 12, 226, 243, 14, 113, 158, 184, 67]), Bytes([156, 198, 199, 223, 210, 171, 2, 198, 253, 32, 1, 207, 227, 120, 89, 171, 250, 233, 34, 36, 165, 30, 52, 49, 138, 121, 141, 24, 247, 28, 46, 216, 184, 111, 63, 0, 64, 118, 225, 208, 201, 50, 34, 89, 44, 28, 231, 72, 6, 94, 227, 27, 203, 204, 174, 235, 20, 94, 72, 239, 131])), (Integer(-2969090282184661921), Bytes([125, 19, 184, 92, 117, 251, 235, 8, 107, 208, 51, 169, 11, 253, 58, 113, 223, 233, 67, 94, 71, 44, 89, 97])), (Integer(17796746725610530894), Integer(8075163424182805764)), (Bytes([244, 107, 201, 18, 134, 48, 213, 105, 51, 128, 1, 151, 228, 127, 29, 157, 162, 18, 173, 238, 173, 14, 85, 187, 135, 114, 105, 183, 193, 255, 16, 187, 138, 102, 89, 61, 26, 18, 207, 51, 253, 62, 228, 194]), Integer(-14377981926416437422)), (Map([(Bytes([211, 1, 54, 201, 102, 224, 170, 36, 164, 75, 27, 57, 100, 213, 241, 22, 92, 100, 154, 82, 235, 155, 134, 145, 123, 16, 203, 188, 83, 54, 207, 143, 223, 239, 176, 88, 192, 255, 39, 71, 220, 70, 97, 233, 155, 157, 231, 205, 135, 124, 169, 240, 196, 106, 1, 158, 139, 164, 241, 199, 232]), Bytes([97, 117, 12, 196, 123, 121, 85, 214, 54, 1, 0, 226, 26, 217, 1, 111, 149, 2, 54, 65, 205, 48, 254, 235, 250, 195, 18, 127, 224, 102, 88, 162, 103, 248, 130, 233, 9, 239, 166, 90, 42, 82, 13, 220, 111, 61, 140, 118, 242, 118, 235, 113, 159, 60, 116, 140, 136, 40, 61, 250, 217, 9, 89, 136, 191, 17])), (Bytes([85, 213, 155, 19, 60, 53, 46, 3, 226, 168, 46, 67, 46, 129, 230, 122, 209, 62, 9, 124, 98, 175, 31, 63, 167, 107, 39, 103, 167, 216, 54, 247, 244, 26, 25, 89, 13, 22, 207, 97, 234, 33, 25, 59, 74, 206, 115, 30, 66, 219, 189, 121, 73]), Integer(-16621810592565322148)), (Bytes([33, 111, 35, 64, 60, 84, 220, 71, 149, 201, 14, 243, 229, 138, 62, 126, 130, 117, 206, 111, 7, 231, 44, 115, 31, 94, 14, 128, 231, 248, 187, 117, 176, 73, 181, 201, 139, 82, 36, 234, 45, 233, 175, 232, 44, 71, 251, 204, 186, 193, 240, 76, 124, 138, 53, 146, 228, 222, 145, 160, 61, 215, 1]), Integer(-5616026625525347953)), (Integer(-15368326499810788275), Integer(-5411407110371635891)), (Bytes([121, 199, 241, 3, 239, 178, 8, 176, 18, 209, 250, 183, 82, 144, 190, 49, 227, 7, 247, 31, 20, 187, 222, 178, 232, 92, 199, 105, 89, 82, 71, 231, 10, 191, 193, 5, 124, 147, 117, 7, 194, 186, 164, 160, 84, 157, 33, 34, 126, 183, 81, 82, 109]), Integer(5342965962032016216))]), Bytes([13, 23, 139, 158, 175, 64, 255, 73, 159, 124, 122]))]))), (DatumHash(5c5d715d9e3551a9021f822ffd68fc7187a56a796700ec476c7c334e68e65663), Datum(Constr(663131710, [Bytes([214, 101, 129, 57, 237, 61, 223, 147, 236, 225, 27, 252, 144, 165, 96, 38, 69, 64, 226, 43, 226, 234, 102, 200, 44, 93, 233, 91, 151, 226, 72, 127, 164, 161, 28, 251, 104, 202]), Bytes([186, 16, 175, 75, 233, 80, 124, 167, 75, 26, 94, 158, 34, 18, 139, 0, 205, 180, 123, 173, 78, 240, 2, 2, 53, 138, 78, 29, 233, 191, 78, 180, 122]), Integer(12098763251034896583), Bytes([242, 108, 143, 197, 95, 204, 253, 41, 30, 104, 70, 45, 148, 146, 47]), Integer(-18208626424618199086)]))), (DatumHash(0810a61c23167fc11763c0f2cc1c19eb692de08057660dda497ae1324884b03c), Datum(Bytes([187, 176, 217, 74, 224, 238, 227, 18, 12, 163, 119, 220, 90, 66, 86, 87, 111, 21, 188, 160, 247, 201, 51, 130, 216, 45, 71, 40, 12, 85, 23, 82, 226, 157, 103, 187, 254, 242, 214, 83, 76, 121, 67, 246, 65, 215, 160, 242, 165, 225, 232, 246, 86, 26, 185, 194, 21, 95, 125, 84, 155, 11, 137, 232, 51, 115, 207, 22, 217, 121, 240, 91, 0, 100]))), (DatumHash(1077d50c8c9d00b88dab41f27c086fe33cfac17a2659955a2483ea6b037cdc41), Datum(Integer(-11442988182361136122))), (DatumHash(e6d3df05dceb3d55d52dff3d32771cbc5fc3576bac7a9d29f7e7306652d26232), Datum(List([Integer(4619328115424865498), Bytes([114, 27, 219, 211, 103, 182, 175, 216, 124, 11, 156, 134, 35, 249, 243, 233, 125, 92, 89, 196, 75, 209, 196, 168, 123, 219, 153, 135, 11, 90, 205, 73, 182, 249, 220, 75, 105, 72, 146, 98, 38, 46, 231, 8, 52, 128, 129, 209, 250, 80, 7, 255, 251, 99, 216, 75, 2, 75, 156]), Bytes([147, 62, 177, 149, 214, 198, 177, 195, 142, 52, 235, 147, 142, 79, 135, 241, 190, 38, 39, 254, 34, 194, 190, 224, 167, 203, 110, 168, 79, 162, 170, 53, 173, 238, 248, 222, 95, 206, 216, 39, 211, 236, 169]), Bytes([50, 44, 234, 175, 76, 236, 214, 179, 84, 61, 123, 107, 55, 225, 37, 14, 145, 87, 60, 187, 9, 119, 184, 126, 49, 160, 76, 160, 62, 141, 86, 51, 254, 104, 97, 8, 179, 169, 129, 145, 165, 24, 1, 73, 167, 204, 34, 30, 183, 178, 139, 232, 177, 63, 22, 13, 40, 249]), Integer(6130350804586057685)])))]), id: TransactionHash(d6d5074a70133bbb4552745bf3b5acd65b3e47656322b7fefb29ef8627607b47) }, purpose: Minting(Ada) } diff --git a/plutus-ledger-api/tests/serde.rs b/plutus-ledger-api/tests/serde.rs new file mode 100644 index 00000000..8ddf8e32 --- /dev/null +++ b/plutus-ledger-api/tests/serde.rs @@ -0,0 +1,161 @@ +#[cfg(test)] +#[cfg(feature = "serde")] +mod serde_roundtrip_tests { + fn from_to_json(val: &T) -> Result + where + T: serde::Serialize + for<'a> serde::Deserialize<'a> + PartialEq, + { + serde_json::from_str(&serde_json::to_string(&val)?) + } + + mod v1 { + use super::from_to_json; + use plutus_ledger_api::generators::correct::{primitive::arb_integer, v1::*}; + use proptest::prelude::*; + + proptest! { + #[test] + fn test_asset_class(val in arb_asset_class()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_value(val in arb_value()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_plutus_data(val in arb_plutus_data()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_plutus_interval(val in arb_plutus_interval_posix_time()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_address(val in arb_address()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_transaction_input(val in arb_transaction_input()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_transaction_output(val in arb_transaction_output()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_tx_in_info(val in arb_tx_in_info()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_redeemeer(val in arb_redeemer()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_redeemeer_hash(val in arb_redeemer_hash()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_bigint_assoc_map(val in arb_assoc_map(arb_integer(), arb_integer())) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_d_cert(val in arb_d_cert()) { + assert_eq!(val, from_to_json(&val)?) + } + } + + proptest! { + #[test] + fn test_script_purpose(val in arb_script_purpose()) { + assert_eq!(val, from_to_json(&val)?) + } + } + + proptest! { + #[test] + fn test_transaction_info(val in arb_transaction_info()) { + assert_eq!(val, from_to_json(&val)?) + } + } + + proptest! { + #[test] + fn test_script_context(val in arb_script_context()) { + assert_eq!(val, from_to_json(&val)?) + } + } + } + mod v2 { + use super::from_to_json; + use plutus_ledger_api::generators::correct::v2::*; + use proptest::prelude::*; + + proptest! { + #[test] + fn test_transaction_output(val in arb_transaction_output()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_tx_in_info(val in arb_tx_in_info()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_output_datum(val in arb_output_datum()) { + assert_eq!(val, from_to_json(&val)?); + } + } + + proptest! { + #[test] + fn test_transaction_info(val in arb_transaction_info()) { + assert_eq!(val, from_to_json(&val)?) + } + } + + proptest! { + #[test] + fn test_script_context(val in arb_script_context()) { + assert_eq!(val, from_to_json(&val)?) + } + } + } +} From fcbf5209ae884398d5ea117de79e1683fc5e724c Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 8 Aug 2024 09:32:46 +0200 Subject: [PATCH 07/94] Add Display implementations --- plutus-ledger-api/Cargo.lock | 334 +++++++++++++- plutus-ledger-api/Cargo.toml | 2 + plutus-ledger-api/src/utils/aux.rs | 52 +++ plutus-ledger-api/src/utils/csl_to_pla.rs | 442 ++++++++++++++++++ plutus-ledger-api/src/utils/mod.rs | 40 +- plutus-ledger-api/src/utils/pla_to_csl.rs | 516 ++++++++++++++++++++++ plutus-ledger-api/src/v1/address.rs | 20 +- plutus-ledger-api/src/v1/crypto.rs | 6 + plutus-ledger-api/src/v1/transaction.rs | 16 +- plutus-ledger-api/src/v1/value.rs | 75 +++- 10 files changed, 1443 insertions(+), 60 deletions(-) create mode 100644 plutus-ledger-api/src/utils/aux.rs create mode 100644 plutus-ledger-api/src/utils/csl_to_pla.rs create mode 100644 plutus-ledger-api/src/utils/pla_to_csl.rs diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 06d8f7f1..f0147b82 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -29,6 +29,12 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" +[[package]] +name = "bech32" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dabbe35f96fb9507f7330793dc490461b2962659ac5d427181e451a623751d1" + [[package]] name = "bit-set" version = "0.5.3" @@ -44,18 +50,70 @@ version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + [[package]] name = "bitflags" version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array", +] + [[package]] name = "bumpalo" version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +[[package]] +name = "cardano-serialization-lib" +version = "11.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c3fab2c10aa73dae6ea90ed459ef07ed7acb09270ea90d9a37fa00420b9c25c" +dependencies = [ + "bech32", + "cbor_event", + "cfg-if", + "clear_on_drop", + "cryptoxide", + "digest", + "ed25519-bip32", + "getrandom", + "hex", + "itertools", + "js-sys", + "linked-hash-map", + "noop_proc_macro", + "num-bigint", + "num-integer", + "rand", + "rand_os", + "schemars", + "serde", + "serde-wasm-bindgen", + "serde_json", + "sha2", + "wasm-bindgen", +] + +[[package]] +name = "cbor_event" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "089a0261d1bc59e54e8e11860031efd88593f0e61b921172c474f1f38c2f2d3c" + [[package]] name = "cc" version = "1.0.99" @@ -82,12 +140,45 @@ dependencies = [ "windows-targets", ] +[[package]] +name = "clear_on_drop" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38508a63f4979f0048febc9966fadbd48e5dab31fd0ec6a3f151bbf4a74f7423" +dependencies = [ + "cc", +] + +[[package]] +name = "cloudabi" +version = "0.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" +dependencies = [ + "bitflags 1.3.2", +] + [[package]] name = "core-foundation-sys" version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +[[package]] +name = "cpufeatures" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" +dependencies = [ + "libc", +] + +[[package]] +name = "cryptoxide" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "382ce8820a5bb815055d3553a610e8cb542b2d767bbacea99038afda96cd760d" + [[package]] name = "data-encoding" version = "2.6.0" @@ -100,12 +191,42 @@ version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array", +] + [[package]] name = "dissimilar" version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "59f8e79d1fbf76bdfbde321e902714bf6c49df88a7dda6fc682fc2979226962d" +[[package]] +name = "dyn-clone" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" + +[[package]] +name = "ed25519-bip32" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb588f93c0d91b2f668849fd6d030cddb0b2e31f105963be189da5acdf492a21" +dependencies = [ + "cryptoxide", +] + +[[package]] +name = "either" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" + [[package]] name = "equivalent" version = "1.0.1" @@ -134,6 +255,22 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "fuchsia-cprng" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", +] + [[package]] name = "getrandom" version = "0.2.15" @@ -141,8 +278,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", + "js-sys", "libc", "wasi", + "wasm-bindgen", ] [[package]] @@ -172,6 +311,12 @@ version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" + [[package]] name = "iana-time-zone" version = "0.1.60" @@ -211,6 +356,15 @@ dependencies = [ "hashbrown", ] +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.11" @@ -219,9 +373,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "js-sys" -version = "0.3.69" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] @@ -295,6 +449,12 @@ version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +[[package]] +name = "noop_proc_macro" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8" + [[package]] name = "num-bigint" version = "0.4.5" @@ -331,10 +491,18 @@ version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +[[package]] +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + [[package]] name = "plutus-ledger-api" version = "1.0.0" dependencies = [ + "anyhow", + "cardano-serialization-lib", "chrono", "data-encoding", "goldie", @@ -383,7 +551,7 @@ checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" dependencies = [ "bit-set", "bit-vec", - "bitflags", + "bitflags 2.5.0", "lazy_static", "num-traits", "rand", @@ -418,7 +586,7 @@ checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", "rand_chacha", - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -428,9 +596,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_core" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" +dependencies = [ + "rand_core 0.4.2", ] +[[package]] +name = "rand_core" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc" + [[package]] name = "rand_core" version = "0.6.4" @@ -440,13 +623,37 @@ dependencies = [ "getrandom", ] +[[package]] +name = "rand_os" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" +dependencies = [ + "cloudabi", + "fuchsia-cprng", + "libc", + "rand_core 0.4.2", + "rdrand", + "wasm-bindgen", + "winapi", +] + [[package]] name = "rand_xorshift" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rdrand" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" +dependencies = [ + "rand_core 0.3.1", ] [[package]] @@ -461,7 +668,7 @@ version = "0.38.34" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" dependencies = [ - "bitflags", + "bitflags 2.5.0", "errno", "libc", "linux-raw-sys", @@ -486,6 +693,30 @@ version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +[[package]] +name = "schemars" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" +dependencies = [ + "dyn-clone", + "schemars_derive", + "serde", + "serde_json", +] + +[[package]] +name = "schemars_derive" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn", +] + [[package]] name = "serde" version = "1.0.203" @@ -495,6 +726,17 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde-wasm-bindgen" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3b4c031cd0d9014307d82b8abf653c0290fbdaeb4c02d00c63cf52f728628bf" +dependencies = [ + "js-sys", + "serde", + "wasm-bindgen", +] + [[package]] name = "serde_derive" version = "1.0.203" @@ -506,6 +748,17 @@ dependencies = [ "syn", ] +[[package]] +name = "serde_derive_internals" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "serde_json" version = "1.0.128" @@ -527,6 +780,19 @@ dependencies = [ "serde", ] +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer", + "cfg-if", + "cpufeatures", + "digest", + "opaque-debug", +] + [[package]] name = "syn" version = "2.0.67" @@ -634,6 +900,12 @@ dependencies = [ "toml", ] +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + [[package]] name = "unarray" version = "0.1.4" @@ -663,6 +935,12 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + [[package]] name = "wait-timeout" version = "0.2.0" @@ -680,9 +958,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.92" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -690,9 +968,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.92" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", "log", @@ -705,9 +983,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.92" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -715,9 +993,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.92" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", @@ -728,9 +1006,25 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.92" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" @@ -741,6 +1035,12 @@ dependencies = [ "windows-sys", ] +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + [[package]] name = "windows-core" version = "0.52.0" diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index c77964ce..cf58f3a3 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -21,6 +21,8 @@ linked-hash-map = "~0.5.6" num-traits = "~0.2.17" impl_ops = "0.1.1" chrono = { version = "0.4.34", optional = true } +cardano-serialization-lib = "11.5.0" +anyhow = "1.0.86" [features] default = [] diff --git a/plutus-ledger-api/src/utils/aux.rs b/plutus-ledger-api/src/utils/aux.rs new file mode 100644 index 00000000..e6408426 --- /dev/null +++ b/plutus-ledger-api/src/utils/aux.rs @@ -0,0 +1,52 @@ +use std::{ + collections::BTreeMap, + iter::{empty, once}, +}; + +/// Create a container C from one element. +pub fn singleton(value: T) -> C +where + C: FromIterator, +{ + once(value).collect() +} + +/// Create an empty container. +pub fn none() -> C +where + C: FromIterator, +{ + empty::().collect() +} + +/// Union two BTreeMaps, call f to resolve conflicts if duplicate keys are encountered. +pub fn union_btree_maps_with V>( + f: F, + l: BTreeMap, + r: BTreeMap, +) -> BTreeMap { + r.into_iter().fold(l.clone(), |mut acc, (k, vr)| { + let v = if let Some((_, vl)) = acc.remove_entry(&k) { + f(vl, vr) + } else { + vr + }; + acc.insert(k, v); + acc + }) +} + +pub fn union_b_tree_maps_with V>( + f: F, + maps: [&BTreeMap; N], +) -> BTreeMap { + maps.into_iter().fold(BTreeMap::new(), |acc, m| { + m.iter().fold(acc, |mut acc, (k, v)| { + acc.entry(k.clone()) + .and_modify(|va: &mut V| *va = f(va, v)) + .or_insert(v.clone()); + + acc + }) + }) +} diff --git a/plutus-ledger-api/src/utils/csl_to_pla.rs b/plutus-ledger-api/src/utils/csl_to_pla.rs new file mode 100644 index 00000000..3244c25c --- /dev/null +++ b/plutus-ledger-api/src/utils/csl_to_pla.rs @@ -0,0 +1,442 @@ +use std::{collections::BTreeMap, ops::Neg, str::FromStr}; + +use cardano_serialization_lib as csl; +use num_bigint::{BigInt, ParseBigIntError}; + +use super::aux::union_b_tree_maps_with; + +use crate::{ + plutus_data::PlutusData, + v2::{ + address::{ + Address, CertificateIndex, ChainPointer, Credential, Slot, StakingCredential, + TransactionIndex, + }, + crypto::{Ed25519PubKeyHash, LedgerBytes}, + datum::{Datum, DatumHash, OutputDatum}, + script::{MintingPolicyHash, ScriptHash, ValidatorHash}, + transaction::{TransactionHash, TransactionInput, TransactionOutput}, + value::{CurrencySymbol, TokenName, Value}, + }, +}; + +#[derive(Debug, Clone, thiserror::Error)] +pub enum TryFromCSLError { + #[error("Unable to parse BigInt: {0}")] + InvalidBigInt(ParseBigIntError), + + #[error("Unable to represent CSL value in PLA: {0}")] + ImpossibleConversion(String), +} + +/// Convert a cardano-serialization-lib type to its plutus-ledger-api counterpart +pub trait FromCSL { + fn from_csl(value: &T) -> Self + where + Self: Sized; +} + +pub trait ToPLA { + fn to_pla(&self) -> T; +} + +impl ToPLA for T +where + U: FromCSL, +{ + fn to_pla(&self) -> U { + FromCSL::from_csl(self) + } +} + +/// Convert a cardano-serialization-lib type to its plutus-ledger-api counterpart +pub trait TryFromCSL { + fn try_from_csl(value: &T) -> Result + where + Self: Sized; +} + +pub trait TryToPLA { + fn try_to_pla(&self) -> Result; +} + +impl TryToPLA for T +where + U: TryFromCSL, +{ + fn try_to_pla(&self) -> Result { + TryFromCSL::try_from_csl(self) + } +} + +impl FromCSL for TokenName { + fn from_csl(value: &csl::AssetName) -> Self { + TokenName(LedgerBytes(value.name())) + } +} + +impl FromCSL for MintingPolicyHash { + fn from_csl(value: &csl::PolicyID) -> Self { + MintingPolicyHash(ScriptHash(LedgerBytes(value.to_bytes()))) + } +} + +impl FromCSL for Value { + fn from_csl(value: &csl::utils::Value) -> Self { + let lovelaces = BigInt::from_csl(&value.coin()); + let mut pla_value = Value::ada_value(&lovelaces); + if let Some(multi_asset) = value.multiasset() { + pla_value = &pla_value + &Value::from_csl(&multi_asset) + } + pla_value + } +} + +impl FromCSL for BigInt { + fn from_csl(value: &csl::utils::BigNum) -> Self { + let x: u64 = From::from(*value); + BigInt::from(x) + } +} + +impl FromCSL for BTreeMap { + fn from_csl(value: &csl::Assets) -> Self { + let keys = value.keys(); + (0..keys.len()).fold(BTreeMap::new(), |mut acc, idx| { + let asset_name = keys.get(idx); + if let Some(quantity) = value.get(&asset_name) { + acc.insert( + TokenName::from_csl(&asset_name), + BigInt::from_csl(&quantity), + ); + } + acc + }) + } +} + +impl FromCSL for Value { + fn from_csl(value: &csl::MultiAsset) -> Self { + let keys = value.keys(); + Value((0..keys.len()).fold(BTreeMap::new(), |mut acc, idx| { + let script_hash = keys.get(idx); + if let Some(assets) = value.get(&script_hash) { + let assets = BTreeMap::from_csl(&assets); + acc.insert( + CurrencySymbol::NativeToken(MintingPolicyHash::from_csl(&script_hash)), + assets, + ); + } + acc + })) + } +} + +impl FromCSL for BigInt { + fn from_csl(value: &u32) -> Self { + BigInt::from(*value) + } +} + +impl TryFromCSL for BigInt { + fn try_from_csl(value: &csl::utils::BigInt) -> Result { + BigInt::from_str(&value.to_str()).map_err(TryFromCSLError::InvalidBigInt) + } +} + +impl FromCSL for BigInt { + fn from_csl(value: &csl::utils::Int) -> Self { + if value.is_positive() { + BigInt::from_csl(&value.as_positive().unwrap()) + } else { + BigInt::from_csl(&value.as_negative().unwrap()).neg() + } + } +} + +impl FromCSL for TransactionHash { + fn from_csl(value: &csl::crypto::TransactionHash) -> Self { + TransactionHash(LedgerBytes(value.to_bytes())) + } +} + +impl FromCSL for TransactionInput { + fn from_csl(value: &csl::TransactionInput) -> Self { + TransactionInput { + transaction_id: TransactionHash::from_csl(&value.transaction_id()), + index: BigInt::from_csl(&value.index()), + } + } +} + +impl FromCSL for Vec { + fn from_csl(value: &csl::TransactionInputs) -> Self { + (0..value.len()) + .map(|idx| TransactionInput::from_csl(&value.get(idx))) + .collect() + } +} + +impl FromCSL for Ed25519PubKeyHash { + fn from_csl(value: &csl::crypto::Ed25519KeyHash) -> Self { + Ed25519PubKeyHash(LedgerBytes(value.to_bytes())) + } +} + +impl FromCSL for ScriptHash { + fn from_csl(value: &csl::crypto::ScriptHash) -> Self { + ScriptHash(LedgerBytes(value.to_bytes())) + } +} + +impl FromCSL for ValidatorHash { + fn from_csl(value: &csl::crypto::ScriptHash) -> Self { + ValidatorHash(ScriptHash::from_csl(value)) + } +} + +impl FromCSL for StakingCredential { + fn from_csl(value: &csl::address::StakeCredential) -> Self { + StakingCredential::Hash(Credential::from_csl(value)) + } +} + +impl FromCSL for Credential { + fn from_csl(value: &csl::address::StakeCredential) -> Self { + match value.kind() { + csl::address::StakeCredKind::Key => { + Credential::PubKey(Ed25519PubKeyHash::from_csl(&value.to_keyhash().unwrap())) + } + csl::address::StakeCredKind::Script => { + Credential::Script(ValidatorHash::from_csl(&value.to_scripthash().unwrap())) + } + } + } +} + +impl FromCSL for Slot { + fn from_csl(value: &csl::utils::BigNum) -> Self { + Slot(BigInt::from_csl(value)) + } +} + +impl FromCSL for TransactionIndex { + fn from_csl(value: &csl::utils::BigNum) -> Self { + TransactionIndex(BigInt::from_csl(value)) + } +} + +impl FromCSL for CertificateIndex { + fn from_csl(value: &csl::utils::BigNum) -> Self { + CertificateIndex(BigInt::from_csl(value)) + } +} + +impl FromCSL for ChainPointer { + fn from_csl(value: &csl::address::Pointer) -> Self { + ChainPointer { + slot_number: Slot::from_csl(&value.slot_bignum()), + transaction_index: TransactionIndex::from_csl(&value.tx_index_bignum()), + certificate_index: CertificateIndex::from_csl(&value.cert_index_bignum()), + } + } +} + +impl FromCSL for StakingCredential { + fn from_csl(value: &csl::address::Pointer) -> Self { + StakingCredential::Pointer(ChainPointer::from_csl(value)) + } +} +impl TryFromCSL for Address { + fn try_from_csl(value: &csl::address::Address) -> Result { + if let Some(addr) = csl::address::BaseAddress::from_address(value) { + Ok(Address { + credential: Credential::from_csl(&addr.payment_cred()), + staking_credential: Some(StakingCredential::from_csl(&addr.stake_cred())), + }) + } else if let Some(addr) = csl::address::PointerAddress::from_address(value) { + Ok(Address { + credential: Credential::from_csl(&addr.payment_cred()), + staking_credential: Some(StakingCredential::from_csl(&addr.stake_pointer())), + }) + } else if let Some(addr) = csl::address::EnterpriseAddress::from_address(value) { + Ok(Address { + credential: Credential::from_csl(&addr.payment_cred()), + staking_credential: None, + }) + } else { + Err(TryFromCSLError::ImpossibleConversion(format!( + "Unable to represent address {:?}", + value + ))) + } + } +} + +impl TryFromCSL for PlutusData { + fn try_from_csl(value: &csl::plutus::PlutusData) -> Result { + Ok(match value.kind() { + csl::plutus::PlutusDataKind::ConstrPlutusData => { + let constr_data = value.as_constr_plutus_data().unwrap(); + let tag = BigInt::from_csl(&constr_data.alternative()); + let args = constr_data.data().try_to_pla()?; + PlutusData::Constr(tag, args) + } + csl::plutus::PlutusDataKind::Map => { + PlutusData::Map(value.as_map().unwrap().try_to_pla()?) + } + csl::plutus::PlutusDataKind::List => { + PlutusData::List(value.as_list().unwrap().try_to_pla()?) + } + csl::plutus::PlutusDataKind::Integer => { + PlutusData::Integer(value.as_integer().unwrap().try_to_pla()?) + } + csl::plutus::PlutusDataKind::Bytes => PlutusData::Bytes(value.as_bytes().unwrap()), + }) + } +} + +impl TryFromCSL for Vec { + fn try_from_csl(value: &csl::plutus::PlutusList) -> Result { + (0..value.len()) + .map(|idx| value.get(idx).try_to_pla()) + .collect() + } +} + +impl TryFromCSL for Vec<(PlutusData, PlutusData)> { + fn try_from_csl(c_map: &csl::plutus::PlutusMap) -> Result { + let keys = c_map.keys(); + (0..keys.len()) + .map(|idx| { + let key = keys.get(idx); + let value = c_map.get(&key).unwrap(); + Ok((key.try_to_pla()?, value.try_to_pla()?)) + }) + .collect() + } +} + +impl FromCSL for DatumHash { + fn from_csl(value: &csl::crypto::DataHash) -> Self { + DatumHash(LedgerBytes(value.to_bytes())) + } +} + +impl TryFromCSL for OutputDatum { + fn try_from_csl(value: &csl::OutputDatum) -> Result { + Ok(if let Some(d) = value.data() { + OutputDatum::InlineDatum(Datum(d.try_to_pla()?)) + } else if let Some(h) = value.data_hash() { + OutputDatum::DatumHash(DatumHash::from_csl(&h)) + } else { + OutputDatum::None + }) + } +} + +impl TryFromCSL for TransactionOutput { + fn try_from_csl(value: &csl::TransactionOutput) -> Result { + Ok(TransactionOutput { + address: value.address().try_to_pla()?, + datum: if value.has_data_hash() { + OutputDatum::DatumHash(DatumHash::from_csl(&value.data_hash().unwrap())) + } else if value.has_plutus_data() { + OutputDatum::InlineDatum(Datum(value.plutus_data().unwrap().try_to_pla()?)) + } else { + OutputDatum::None + }, + reference_script: if value.has_script_ref() { + let script_ref = value.script_ref().unwrap(); + let script_hash = if script_ref.is_native_script() { + script_ref.native_script().unwrap().hash() + } else { + script_ref.plutus_script().unwrap().hash() + }; + Some(ScriptHash::from_csl(&script_hash)) + } else { + None + }, + value: Value::from_csl(&value.amount()), + }) + } +} + +impl TryFromCSL for Vec { + fn try_from_csl(value: &csl::TransactionOutputs) -> Result { + (0..value.len()) + .map(|idx| TransactionOutput::try_from_csl(&value.get(idx))) + .collect() + } +} + +impl FromCSL for BTreeMap { + fn from_csl(m_ass: &csl::MintAssets) -> Self { + let keys = m_ass.keys(); + (0..keys.len()) + .map(|idx| { + let key = keys.get(idx); + let value = m_ass.get(&key).unwrap(); + (TokenName::from_csl(&key), BigInt::from_csl(&value)) + }) + .collect() + } +} + +impl FromCSL for BTreeMap { + fn from_csl(value: &csl::MintsAssets) -> Self { + let mut m_ass_vec = Vec::new(); + + // This is so stupid. `MintsAssets` doesn't have a `len` method for some reason. + for idx in 0.. { + if let Some(m_ass) = value.get(idx) { + m_ass_vec.push(m_ass); + } else { + break; + } + } + + m_ass_vec.into_iter().fold(BTreeMap::new(), |acc, m| { + let ass = BTreeMap::from_csl(&m); + union_b_tree_maps_with(|l, r| l + r, [&acc, &ass]) + }) + } +} + +impl FromCSL for Value { + fn from_csl(mint: &csl::Mint) -> Self { + let keys = mint.keys(); + Value( + (0..keys.len()) + .map(|idx| { + let sh = keys.get(idx); + let ass = mint.get_all(&sh).unwrap_or(csl::MintsAssets::new()); + ( + CurrencySymbol::NativeToken(MintingPolicyHash::from_csl(&sh)), + BTreeMap::from_csl(&ass), + ) + }) + .collect::>>(), + ) + } +} + +impl FromCSL for Vec { + fn from_csl(value: &csl::RequiredSigners) -> Self { + (0..value.len()) + .map(|idx| Ed25519PubKeyHash::from_csl(&value.get(idx))) + .collect() + } +} + +impl FromCSL for Vec { + fn from_csl(value: &csl::NativeScripts) -> Self { + (0..value.len()).map(|idx| value.get(idx)).collect() + } +} + +impl FromCSL for Vec { + fn from_csl(value: &csl::plutus::PlutusScripts) -> Self { + (0..value.len()).map(|idx| value.get(idx)).collect() + } +} diff --git a/plutus-ledger-api/src/utils/mod.rs b/plutus-ledger-api/src/utils/mod.rs index b3ef2676..eee5d196 100644 --- a/plutus-ledger-api/src/utils/mod.rs +++ b/plutus-ledger-api/src/utils/mod.rs @@ -1,37 +1,3 @@ -use std::{ - collections::BTreeMap, - iter::{empty, once}, -}; - -/// Create a container C from one element. -pub fn singleton(value: T) -> C -where - C: FromIterator, -{ - once(value).collect() -} - -/// Create an empty container. -pub fn none() -> C -where - C: FromIterator, -{ - empty::().collect() -} - -/// Union two BTreeMaps, call f to resolve conflicts if duplicate keys are encountered. -pub fn union_btree_maps_with V>( - f: F, - l: BTreeMap, - r: BTreeMap, -) -> BTreeMap { - r.into_iter().fold(l.clone(), |mut acc, (k, vr)| { - let v = if let Some((_, vl)) = acc.remove_entry(&k) { - f(vl, vr) - } else { - vr - }; - acc.insert(k, v); - acc - }) -} +pub mod aux; +pub mod csl_to_pla; +pub mod pla_to_csl; diff --git a/plutus-ledger-api/src/utils/pla_to_csl.rs b/plutus-ledger-api/src/utils/pla_to_csl.rs new file mode 100644 index 00000000..5755c859 --- /dev/null +++ b/plutus-ledger-api/src/utils/pla_to_csl.rs @@ -0,0 +1,516 @@ +use std::collections::BTreeMap; + +use cardano_serialization_lib as csl; +use num_bigint::{BigInt, TryFromBigIntError}; +use num_traits::sign::Signed; + +use crate::{ + plutus_data::PlutusData, + v2::{ + address::{ + Address, CertificateIndex, ChainPointer, Credential, Slot, StakingCredential, + TransactionIndex, + }, + assoc_map::AssocMap, + crypto::Ed25519PubKeyHash, + datum::{Datum, DatumHash, OutputDatum}, + redeemer::Redeemer, + script::{MintingPolicyHash, ScriptHash}, + transaction::{POSIXTimeRange, TransactionHash, TransactionInput, TransactionOutput}, + value::{CurrencySymbol, TokenName, Value}, + }, +}; + +#[derive(Debug, thiserror::Error)] +pub enum TryFromPLAError { + #[error("{0}")] + CSLDeserializeError(csl::error::DeserializeError), + + #[error("{0}")] + CSLJsError(csl::error::JsError), + + #[error("Unable to cast BigInt {0} into type {1}: value is out of bound")] + BigIntOutOfRange(BigInt, String), + + #[error("Unable to represent PLA value in CSL: ${0}")] + ImpossibleConversion(String), + + #[error("Invalid valid transaction time range: ${0:?}")] + InvalidTimeRange(POSIXTimeRange), + + #[error("Script is missing from context: {0:?}")] + MissingScript(ScriptHash), +} + +/// Convert a plutus-ledger-api type to its cardano-serialization-lib counterpart +/// `try_to_csl_with` accepts extra data where the PLA data itself is not enough +pub trait TryFromPLA { + fn try_from_pla(val: &T) -> Result + where + Self: Sized; +} + +/// Convert a plutus-ledger-api type to its cardano-serialization-lib counterpart +/// `try_to_csl_with` accepts extra data where the PLA data itself is not enough +/// +/// DO NOT IMPLEMENT THIS DIRECTLY. Implement `TryFromPLA` instead. +pub trait TryToCSL { + fn try_to_csl(&self) -> Result; +} + +impl TryToCSL for T +where + U: TryFromPLA, +{ + fn try_to_csl(&self) -> Result { + TryFromPLA::try_from_pla(self) + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &u64) -> Result { + // BigNum(s) are u64 under the hood. + + Ok(csl::utils::BigNum::from(*val)) + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &BigInt) -> Result { + // BigNum(s) are u64 under the hood. + let x: u64 = val + .to_owned() + .try_into() + .map_err(|err: TryFromBigIntError| { + TryFromPLAError::BigIntOutOfRange(err.into_original(), "u64".into()) + })?; + + x.try_to_csl() + } +} + +impl TryFromPLA for csl::utils::BigInt { + fn try_from_pla(val: &BigInt) -> Result { + Ok(val.to_owned().into()) + } +} + +impl TryFromPLA for csl::utils::Int { + fn try_from_pla(val: &BigInt) -> Result { + if val.is_negative() { + Ok(csl::utils::Int::new_negative(&(val.abs()).try_to_csl()?)) + } else { + Ok(csl::utils::Int::new(&val.try_to_csl()?)) + } + } +} + +impl TryFromPLA for csl::utils::Int { + fn try_from_pla(val: &i64) -> Result { + if val.is_negative() { + Ok(csl::utils::Int::new_negative(&csl::utils::to_bignum( + val.unsigned_abs(), + ))) + } else { + Ok(csl::utils::Int::new(&csl::utils::to_bignum(*val as u64))) + } + } +} + +impl TryFromPLA for csl::crypto::Ed25519KeyHash { + fn try_from_pla(val: &Ed25519PubKeyHash) -> Result { + csl::crypto::Ed25519KeyHash::from_bytes(val.0 .0.to_owned()) + .map_err(TryFromPLAError::CSLDeserializeError) + } +} + +impl TryFromPLA for csl::crypto::ScriptHash { + fn try_from_pla(val: &ScriptHash) -> Result { + csl::crypto::ScriptHash::from_bytes(val.0 .0.to_owned()) + .map_err(TryFromPLAError::CSLDeserializeError) + } +} + +impl TryFromPLA for csl::crypto::TransactionHash { + fn try_from_pla(val: &TransactionHash) -> Result { + csl::crypto::TransactionHash::from_bytes(val.0 .0.to_owned()) + .map_err(TryFromPLAError::CSLDeserializeError) + } +} + +impl TryFromPLA for u32 /* TransactionIndex */ { + fn try_from_pla(val: &BigInt) -> Result { + val.to_owned() + .try_into() + .map_err(|err: TryFromBigIntError| { + TryFromPLAError::BigIntOutOfRange(err.into_original(), "u32".into()) + }) + } +} + +impl TryFromPLA for csl::TransactionInput { + fn try_from_pla(val: &TransactionInput) -> Result { + Ok(csl::TransactionInput::new( + &val.transaction_id.try_to_csl()?, + val.index.try_to_csl()?, + )) + } +} + +impl TryFromPLA> for csl::TransactionInputs { + fn try_from_pla(val: &Vec) -> Result { + val.iter() + .try_fold(csl::TransactionInputs::new(), |mut acc, input| { + acc.add(&input.try_to_csl()?); + Ok(acc) + }) + } +} + +#[derive(Clone, Debug)] +pub struct TransactionOutputWithExtraInfo<'a> { + pub transaction_output: &'a TransactionOutput, + pub scripts: &'a BTreeMap, + pub network_id: u8, + pub data_cost: &'a csl::DataCost, +} + +impl TryFromPLA> for csl::TransactionOutput { + fn try_from_pla(val: &TransactionOutputWithExtraInfo<'_>) -> Result { + let mut output_builder = csl::output_builder::TransactionOutputBuilder::new().with_address( + &AddressWithExtraInfo { + address: &val.transaction_output.address, + network_tag: val.network_id, + } + .try_to_csl()?, + ); + + output_builder = match &val.transaction_output.datum { + OutputDatum::None => output_builder, + OutputDatum::InlineDatum(Datum(d)) => output_builder.with_plutus_data(&d.try_to_csl()?), + OutputDatum::DatumHash(dh) => output_builder.with_data_hash(&dh.try_to_csl()?), + }; + + let script_ref = val + .transaction_output + .reference_script + .clone() + .map(|script_hash| -> Result<_, TryFromPLAError> { + let script = val + .scripts + .get(&script_hash) + .ok_or(TryFromPLAError::MissingScript(script_hash))?; + Ok(csl::ScriptRef::new_plutus_script(script)) + }) + .transpose()?; + + if let Some(script_ref) = &script_ref { + output_builder = output_builder.with_script_ref(script_ref); + }; + + let value_without_min_utxo = val.transaction_output.value.try_to_csl()?; + + let mut calc = csl::utils::MinOutputAdaCalculator::new_empty(val.data_cost) + .map_err(TryFromPLAError::CSLJsError)?; + calc.set_amount(&value_without_min_utxo); + match &val.transaction_output.datum { + OutputDatum::None => {} + OutputDatum::InlineDatum(Datum(d)) => { + calc.set_plutus_data(&d.try_to_csl()?); + } + OutputDatum::DatumHash(dh) => { + calc.set_data_hash(&dh.try_to_csl()?); + } + }; + if let Some(script_ref) = script_ref { + calc.set_script_ref(&script_ref); + } + + let required_coin = calc.calculate_ada().map_err(TryFromPLAError::CSLJsError)?; + let coin = std::cmp::max(value_without_min_utxo.coin(), required_coin); + + let value = match value_without_min_utxo.multiasset() { + Some(multiasset) => csl::utils::Value::new_with_assets(&coin, &multiasset), + None => csl::utils::Value::new(&coin), + }; + + output_builder + .next() + .map_err(TryFromPLAError::CSLJsError)? + .with_value(&value) + .build() + .map_err(TryFromPLAError::CSLJsError) + } +} + +impl TryFromPLA for csl::PolicyID { + fn try_from_pla(val: &MintingPolicyHash) -> Result { + val.0.try_to_csl() + } +} + +impl TryFromPLA for csl::AssetName { + fn try_from_pla(val: &TokenName) -> Result { + csl::AssetName::new(val.0 .0.to_owned()).map_err(TryFromPLAError::CSLJsError) + } +} + +impl TryFromPLA> for csl::Assets { + fn try_from_pla(val: &BTreeMap) -> Result { + val.iter().try_fold(csl::Assets::new(), |mut acc, (k, v)| { + acc.insert(&k.try_to_csl()?, &v.try_to_csl()?); + Ok(acc) + }) + } +} + +impl TryFromPLA> for csl::MintAssets { + fn try_from_pla(val: &BTreeMap) -> Result { + val.iter() + .try_fold(csl::MintAssets::new(), |mut acc, (k, v)| { + acc.insert(&k.try_to_csl()?, v.try_to_csl()?); + Ok(acc) + }) + } +} + +impl TryFromPLA for csl::utils::Value { + fn try_from_pla(val: &Value) -> Result { + let coin: csl::utils::Coin = val + .0 + .get(&CurrencySymbol::Ada) + .and_then(|m| m.get(&TokenName::ada())) + .map_or(Ok(csl::utils::BigNum::zero()), TryToCSL::try_to_csl)?; + + let m_ass = val + .0 + .iter() + .filter_map(|(cs, tn_map)| match &cs { + CurrencySymbol::Ada => None, + CurrencySymbol::NativeToken(h) => Some((h, tn_map)), + }) + .try_fold(csl::MultiAsset::new(), |mut acc, (cs, ass)| { + acc.insert(&cs.try_to_csl()?, &ass.try_to_csl()?); + Ok(acc) + })?; + + let mut v = csl::utils::Value::new(&coin); + + v.set_multiasset(&m_ass); + + Ok(v) + } +} + +impl TryFromPLA for csl::plutus::PlutusData { + fn try_from_pla(val: &PlutusData) -> Result { + match val { + PlutusData::Constr(tag, args) => Ok(csl::plutus::PlutusData::new_constr_plutus_data( + &csl::plutus::ConstrPlutusData::new(&tag.try_to_csl()?, &args.try_to_csl()?), + )), + PlutusData::Map(l) => Ok(csl::plutus::PlutusData::new_map(&l.try_to_csl()?)), + PlutusData::List(l) => Ok(csl::plutus::PlutusData::new_list(&l.try_to_csl()?)), + PlutusData::Integer(i) => Ok(csl::plutus::PlutusData::new_integer(&i.try_to_csl()?)), + PlutusData::Bytes(b) => Ok(csl::plutus::PlutusData::new_bytes(b.to_owned())), + } + } +} + +impl TryFromPLA> for csl::plutus::PlutusList { + fn try_from_pla(val: &Vec) -> Result { + val.iter() + // traverse + .map(|x| x.try_to_csl()) + .collect::, TryFromPLAError>>() + .map(|x| x.into()) + } +} + +impl TryFromPLA> for csl::plutus::PlutusMap { + fn try_from_pla(val: &Vec<(PlutusData, PlutusData)>) -> Result { + val.iter() + .try_fold(csl::plutus::PlutusMap::new(), |mut acc, (k, v)| { + acc.insert(&k.try_to_csl()?, &v.try_to_csl()?); + Ok(acc) + }) + } +} + +impl TryFromPLA for csl::crypto::DataHash { + fn try_from_pla(val: &DatumHash) -> Result { + csl::crypto::DataHash::from_bytes(val.0 .0.to_owned()) + .map_err(TryFromPLAError::CSLDeserializeError) + } +} + +impl TryFromPLA for csl::plutus::PlutusData { + fn try_from_pla(val: &Datum) -> Result { + val.0.try_to_csl() + } +} + +impl TryFromPLA for csl::address::Pointer { + fn try_from_pla(val: &ChainPointer) -> Result { + Ok(csl::address::Pointer::new_pointer( + &val.slot_number.try_to_csl()?, + &val.transaction_index.try_to_csl()?, + &val.certificate_index.try_to_csl()?, + )) + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &Slot) -> Result { + val.0.try_to_csl() + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &TransactionIndex) -> Result { + val.0.try_to_csl() + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &CertificateIndex) -> Result { + val.0.try_to_csl() + } +} + +impl TryFromPLA for csl::address::StakeCredential { + fn try_from_pla(val: &Credential) -> Result { + match val { + Credential::PubKey(pkh) => Ok(csl::address::StakeCredential::from_keyhash( + &pkh.try_to_csl()?, + )), + Credential::Script(sh) => Ok(csl::address::StakeCredential::from_scripthash( + &sh.0.try_to_csl()?, + )), + } + } +} + +impl TryFromPLA for csl::address::StakeCredential { + fn try_from_pla(val: &StakingCredential) -> Result { + match val { + StakingCredential::Hash(c) => c.try_to_csl(), + StakingCredential::Pointer(_) => Err(TryFromPLAError::ImpossibleConversion( + "cannot represent chain pointer".into(), + )), + } + } +} + +#[derive(Clone, Debug)] +pub struct AddressWithExtraInfo<'a> { + pub address: &'a Address, + pub network_tag: u8, +} + +impl TryFromPLA> for csl::address::Address { + fn try_from_pla(val: &AddressWithExtraInfo<'_>) -> Result { + let payment = val.address.credential.try_to_csl()?; + + Ok(match val.address.staking_credential { + None => csl::address::EnterpriseAddress::new(val.network_tag, &payment).to_address(), + Some(ref sc) => match sc { + StakingCredential::Hash(c) => { + csl::address::BaseAddress::new(val.network_tag, &payment, &c.try_to_csl()?) + .to_address() + } + StakingCredential::Pointer(ptr) => { + csl::address::PointerAddress::new(val.network_tag, &payment, &ptr.try_to_csl()?) + .to_address() + } + }, + }) + } +} + +impl std::fmt::Display for AddressWithExtraInfo<'_> { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + let bech32_addr: Option = self + .try_to_csl() + .ok() + .and_then(|csl_addr: csl::address::Address| csl_addr.to_bech32(None).ok()); + match bech32_addr { + Some(addr) => write!(f, "{}", addr), + None => write!(f, "INVALID ADDRESS {:?}", self), + } + } +} + +#[derive(Clone, Debug)] +struct RewardAddressWithExtraInfo<'a> { + pub staking_credential: &'a StakingCredential, + pub network_tag: u8, +} + +impl TryFromPLA> for csl::address::RewardAddress { + fn try_from_pla(val: &RewardAddressWithExtraInfo<'_>) -> Result { + Ok(csl::address::RewardAddress::new( + val.network_tag, + &val.staking_credential.try_to_csl()?, + )) + } +} + +#[derive(Clone, Debug)] +struct WithdrawalsWithExtraInfo<'a> { + withdrawals: &'a AssocMap, + network_tag: u8, +} + +impl TryFromPLA> for csl::Withdrawals { + fn try_from_pla(val: &WithdrawalsWithExtraInfo<'_>) -> Result { + val.withdrawals + .0 + .iter() + .try_fold(csl::Withdrawals::new(), |mut acc, (s, q)| { + acc.insert( + &RewardAddressWithExtraInfo { + staking_credential: s, + network_tag: val.network_tag, + } + .try_to_csl()?, + &q.try_to_csl()?, + ); + Ok(acc) + }) + } +} + +#[derive(Clone, Debug)] +struct RedeemerWithExtraInfo<'a> { + redeemer: &'a Redeemer, + tag: &'a csl::plutus::RedeemerTag, + index: u64, +} + +impl TryFromPLA> for csl::plutus::Redeemer { + fn try_from_pla<'a>( + val: &RedeemerWithExtraInfo<'_>, + ) -> Result { + let Redeemer(plutus_data) = val.redeemer; + Ok(csl::plutus::Redeemer::new( + val.tag, + &val.index.try_to_csl()?, + &plutus_data.try_to_csl()?, + &csl::plutus::ExUnits::new(&csl::utils::to_bignum(0), &csl::utils::to_bignum(0)), + )) + } +} + +impl TryFromPLA for Option { + fn try_from_pla( + pla_output_datum: &OutputDatum, + ) -> Result, TryFromPLAError> { + Ok(match pla_output_datum { + OutputDatum::None => None, + OutputDatum::InlineDatum(Datum(d)) => { + Some(csl::OutputDatum::new_data(&d.try_to_csl()?)) + } + OutputDatum::DatumHash(dh) => Some(csl::OutputDatum::new_data_hash(&dh.try_to_csl()?)), + }) + } +} diff --git a/plutus-ledger-api/src/v1/address.rs b/plutus-ledger-api/src/v1/address.rs index 41d2245f..648ac07a 100644 --- a/plutus-ledger-api/src/v1/address.rs +++ b/plutus-ledger-api/src/v1/address.rs @@ -1,7 +1,13 @@ //! Types related to Cardano addresses +use std::str::FromStr; + +use anyhow::anyhow; +use cardano_serialization_lib as csl; + use crate::plutus_data::{ verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, }; +use crate::utils::csl_to_pla::TryToPLA; use crate::v1::crypto::Ed25519PubKeyHash; use crate::v1::script::ValidatorHash; #[cfg(feature = "lbf")] @@ -39,7 +45,7 @@ impl IsPlutusData for Address { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 2)?; + verify_constr_fields(fields, 2)?; Ok(Address { credential: Credential::from_plutus_data(&fields[0])?, staking_credential: >::from_plutus_data( @@ -61,6 +67,18 @@ impl IsPlutusData for Address { } } +impl FromStr for Address { + type Err = anyhow::Error; + + fn from_str(s: &str) -> std::result::Result { + let csl_addr = csl::address::Address::from_bech32(s) + .map_err(|err| anyhow!("Couldn't parse bech32 address: {}", err))?; + csl_addr + .try_to_pla() + .map_err(|err| anyhow!("Couldn't convert address: {}", err)) + } +} + /// A public key hash or validator hash credential (used as a payment or a staking credential) #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] diff --git a/plutus-ledger-api/src/v1/crypto.rs b/plutus-ledger-api/src/v1/crypto.rs index ca3d7434..6b8ec774 100644 --- a/plutus-ledger-api/src/v1/crypto.rs +++ b/plutus-ledger-api/src/v1/crypto.rs @@ -88,6 +88,12 @@ impl std::fmt::Debug for LedgerBytes { } } +impl std::fmt::Display for LedgerBytes { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + write!(f, "{}", HEXLOWER.encode(&self.0)) + } +} + impl IsPlutusData for LedgerBytes { fn to_plutus_data(&self) -> PlutusData { PlutusData::Bytes(self.0.clone()) diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index 1a90448c..e8d7e3b4 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -1,4 +1,6 @@ //! Types related to Cardano transactions. +use std::fmt; + use super::{ address::{Address, StakingCredential}, crypto::{LedgerBytes, PaymentPubKeyHash}, @@ -10,7 +12,7 @@ use crate::plutus_data::{ parse_constr, parse_constr_with_tag, parse_fixed_len_constr_fields, verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, }; -use crate::utils::{none, singleton}; +use crate::utils::aux::{none, singleton}; #[cfg(feature = "lbf")] use lbr_prelude::json::Json; use num_bigint::BigInt; @@ -29,6 +31,12 @@ pub struct TransactionInput { pub index: BigInt, } +impl fmt::Display for TransactionInput { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + write!(f, "{}#{}", self.transaction_id.0, self.index) + } +} + impl IsPlutusData for TransactionInput { fn to_plutus_data(&self) -> PlutusData { PlutusData::Constr( @@ -73,6 +81,12 @@ impl IsPlutusData for TransactionInput { #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionHash(pub LedgerBytes); +impl fmt::Display for TransactionHash { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + write!(f, "{}", self.0) + } +} + impl IsPlutusData for TransactionHash { fn to_plutus_data(&self) -> PlutusData { PlutusData::Constr(BigInt::from(0), vec![self.0.to_plutus_data()]) diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index 249e6ff7..07ae47a6 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -2,7 +2,7 @@ use crate::plutus_data::{ verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, }; -use crate::utils::{singleton, union_btree_maps_with}; +use crate::utils::aux::{singleton, union_btree_maps_with}; use crate::v1::crypto::LedgerBytes; use crate::v1::script::{MintingPolicyHash, ScriptHash}; #[cfg(feature = "lbf")] @@ -13,13 +13,13 @@ use num_traits::Zero; use serde::{Deserialize, Serialize}; #[cfg(feature = "lbf")] use serde_json; -use std::ops; use std::string::String; use std::{ collections::BTreeMap, iter::Sum, ops::{Add, Mul, Neg, Not, Sub}, }; +use std::{fmt, ops}; /// Identifier of a currency, which could be either Ada (or tAda), or a native token represented by /// it's minting policy hash. A currency may be associated with multiple `AssetClass`es. @@ -30,6 +30,25 @@ pub enum CurrencySymbol { NativeToken(MintingPolicyHash), } +impl fmt::Display for CurrencySymbol { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + let asset_class_str = match self { + CurrencySymbol::Ada => { + if f.alternate() { + "lovelace".to_string() + } else { + "".to_string() + } + } + CurrencySymbol::NativeToken(symbol) => { + format!("{}", symbol.0 .0) + } + }; + + write!(f, "{}", asset_class_str) + } +} + impl IsPlutusData for CurrencySymbol { fn to_plutus_data(&self) -> PlutusData { match self { @@ -263,6 +282,27 @@ impl Value { } } +impl fmt::Display for Value { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + let value_str = self + .0 + .iter() + .flat_map(|(currency_symbol, assets)| { + assets.iter().map(move |(token_name, amount)| { + if token_name.is_empty() { + format!("{} {}", currency_symbol, amount) + } else { + format!("{}.{} {}", currency_symbol, token_name, amount) + } + }) + }) + .collect::>() + .join("+"); + + write!(f, "{}", value_str) + } +} + impl Zero for Value { fn zero() -> Self { Default::default() @@ -385,9 +425,11 @@ impl TokenName { pub fn ada() -> TokenName { TokenName(LedgerBytes(Vec::with_capacity(0))) } -} -impl TokenName { + pub fn is_empty(&self) -> bool { + self.0 .0.is_empty() + } + pub fn from_bytes(bytes: Vec) -> Self { TokenName(LedgerBytes(bytes)) } @@ -411,6 +453,21 @@ impl IsPlutusData for TokenName { } } +impl fmt::Display for TokenName { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + if f.alternate() { + let utf8_str = std::str::from_utf8(&self.0 .0); + + match utf8_str { + Ok(str) => write!(f, "{}", str), + Err(_) => write!(f, "0x{}", self.0), + } + } else { + write!(f, "{}", self.0) + } + } +} + /// AssetClass is uniquely identifying a specific asset #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -420,6 +477,16 @@ pub struct AssetClass { pub token_name: TokenName, } +impl fmt::Display for AssetClass { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + if self.token_name.is_empty() { + write!(f, "{}", self.currency_symbol) + } else { + write!(f, "{}.{}", self.currency_symbol, self.token_name) + } + } +} + impl IsPlutusData for AssetClass { fn to_plutus_data(&self) -> PlutusData { PlutusData::Constr( From bf30fbc4353d181fcc6556aab1c84187ec7e2d85 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Fri, 4 Oct 2024 12:13:28 +0200 Subject: [PATCH 08/94] Reorganise modules --- plutus-ledger-api/src/csl/csl_to_pla.rs | 94 ++++ plutus-ledger-api/src/csl/mod.rs | 2 + plutus-ledger-api/src/csl/pla_to_csl.rs | 109 +++++ plutus-ledger-api/src/lib.rs | 1 + plutus-ledger-api/src/plutus_data.rs | 82 ++++ plutus-ledger-api/src/utils/csl_to_pla.rs | 442 ------------------ plutus-ledger-api/src/utils/mod.rs | 2 - plutus-ledger-api/src/utils/pla_to_csl.rs | 516 ---------------------- plutus-ledger-api/src/v1/address.rs | 225 +++++++++- plutus-ledger-api/src/v1/assoc_map.rs | 4 + plutus-ledger-api/src/v1/crypto.rs | 47 +- plutus-ledger-api/src/v1/datum.rs | 32 ++ plutus-ledger-api/src/v1/interval.rs | 20 + plutus-ledger-api/src/v1/redeemer.rs | 38 +- plutus-ledger-api/src/v1/script.rs | 53 ++- plutus-ledger-api/src/v1/transaction.rs | 116 ++++- plutus-ledger-api/src/v1/value.rs | 198 ++++++++- plutus-ledger-api/src/v2/datum.rs | 45 +- plutus-ledger-api/src/v2/transaction.rs | 173 +++++++- 19 files changed, 1202 insertions(+), 997 deletions(-) create mode 100644 plutus-ledger-api/src/csl/csl_to_pla.rs create mode 100644 plutus-ledger-api/src/csl/mod.rs create mode 100644 plutus-ledger-api/src/csl/pla_to_csl.rs delete mode 100644 plutus-ledger-api/src/utils/csl_to_pla.rs delete mode 100644 plutus-ledger-api/src/utils/pla_to_csl.rs diff --git a/plutus-ledger-api/src/csl/csl_to_pla.rs b/plutus-ledger-api/src/csl/csl_to_pla.rs new file mode 100644 index 00000000..a87bee5f --- /dev/null +++ b/plutus-ledger-api/src/csl/csl_to_pla.rs @@ -0,0 +1,94 @@ +use std::{ops::Neg, str::FromStr}; + +use cardano_serialization_lib as csl; +use num_bigint::{BigInt, ParseBigIntError}; + +#[derive(Debug, Clone, thiserror::Error)] +pub enum TryFromCSLError { + #[error("Unable to parse BigInt: {0}")] + InvalidBigInt(ParseBigIntError), + + #[error("Unable to represent CSL value in PLA: {0}")] + ImpossibleConversion(String), +} + +/// Convert a cardano-serialization-lib type to its plutus-ledger-api counterpart +pub trait FromCSL { + fn from_csl(value: &T) -> Self + where + Self: Sized; +} + +pub trait ToPLA { + fn to_pla(&self) -> T; +} + +impl ToPLA for T +where + U: FromCSL, +{ + fn to_pla(&self) -> U { + FromCSL::from_csl(self) + } +} + +/// Convert a cardano-serialization-lib type to its plutus-ledger-api counterpart +pub trait TryFromCSL { + fn try_from_csl(value: &T) -> Result + where + Self: Sized; +} + +pub trait TryToPLA { + fn try_to_pla(&self) -> Result; +} + +impl TryToPLA for T +where + U: TryFromCSL, +{ + fn try_to_pla(&self) -> Result { + TryFromCSL::try_from_csl(self) + } +} + +impl FromCSL for BigInt { + fn from_csl(value: &csl::utils::BigNum) -> Self { + let x: u64 = From::from(*value); + BigInt::from(x) + } +} + +impl FromCSL for BigInt { + fn from_csl(value: &u32) -> Self { + BigInt::from(*value) + } +} + +impl TryFromCSL for BigInt { + fn try_from_csl(value: &csl::utils::BigInt) -> Result { + BigInt::from_str(&value.to_str()).map_err(TryFromCSLError::InvalidBigInt) + } +} + +impl FromCSL for BigInt { + fn from_csl(value: &csl::utils::Int) -> Self { + if value.is_positive() { + BigInt::from_csl(&value.as_positive().unwrap()) + } else { + BigInt::from_csl(&value.as_negative().unwrap()).neg() + } + } +} + +impl FromCSL for Vec { + fn from_csl(value: &csl::NativeScripts) -> Self { + (0..value.len()).map(|idx| value.get(idx)).collect() + } +} + +impl FromCSL for Vec { + fn from_csl(value: &csl::plutus::PlutusScripts) -> Self { + (0..value.len()).map(|idx| value.get(idx)).collect() + } +} diff --git a/plutus-ledger-api/src/csl/mod.rs b/plutus-ledger-api/src/csl/mod.rs new file mode 100644 index 00000000..8af54b59 --- /dev/null +++ b/plutus-ledger-api/src/csl/mod.rs @@ -0,0 +1,2 @@ +pub mod csl_to_pla; +pub mod pla_to_csl; diff --git a/plutus-ledger-api/src/csl/pla_to_csl.rs b/plutus-ledger-api/src/csl/pla_to_csl.rs new file mode 100644 index 00000000..31c1a82d --- /dev/null +++ b/plutus-ledger-api/src/csl/pla_to_csl.rs @@ -0,0 +1,109 @@ +use cardano_serialization_lib as csl; +use num_bigint::{BigInt, TryFromBigIntError}; +use num_traits::sign::Signed; + +#[derive(Debug, thiserror::Error)] +pub enum TryFromPLAError { + #[error("{0}")] + CSLDeserializeError(csl::error::DeserializeError), + + #[error("{0}")] + CSLJsError(csl::error::JsError), + + #[error("Unable to cast BigInt {0} into type {1}: value is out of bound")] + BigIntOutOfRange(BigInt, String), + + #[error("Unable to represent PLA value in CSL: ${0}")] + ImpossibleConversion(String), + + #[error("Invalid valid transaction time range: ${0:?}")] + InvalidTimeRange(crate::v2::transaction::POSIXTimeRange), + + #[error("Script is missing from context: {0:?}")] + MissingScript(crate::v2::script::ScriptHash), +} + +/// Convert a plutus-ledger-api type to its cardano-serialization-lib counterpart +/// `try_to_csl_with` accepts extra data where the PLA data itself is not enough +pub trait TryFromPLA { + fn try_from_pla(val: &T) -> Result + where + Self: Sized; +} + +/// Convert a plutus-ledger-api type to its cardano-serialization-lib counterpart +/// `try_to_csl_with` accepts extra data where the PLA data itself is not enough +/// +/// DO NOT IMPLEMENT THIS DIRECTLY. Implement `TryFromPLA` instead. +pub trait TryToCSL { + fn try_to_csl(&self) -> Result; +} + +impl TryToCSL for T +where + U: TryFromPLA, +{ + fn try_to_csl(&self) -> Result { + TryFromPLA::try_from_pla(self) + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &u64) -> Result { + // BigNum(s) are u64 under the hood. + + Ok(csl::utils::BigNum::from(*val)) + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &BigInt) -> Result { + // BigNum(s) are u64 under the hood. + let x: u64 = val + .to_owned() + .try_into() + .map_err(|err: TryFromBigIntError| { + TryFromPLAError::BigIntOutOfRange(err.into_original(), "u64".into()) + })?; + + x.try_to_csl() + } +} + +impl TryFromPLA for csl::utils::BigInt { + fn try_from_pla(val: &BigInt) -> Result { + Ok(val.to_owned().into()) + } +} + +impl TryFromPLA for csl::utils::Int { + fn try_from_pla(val: &BigInt) -> Result { + if val.is_negative() { + Ok(csl::utils::Int::new_negative(&(val.abs()).try_to_csl()?)) + } else { + Ok(csl::utils::Int::new(&val.try_to_csl()?)) + } + } +} + +impl TryFromPLA for csl::utils::Int { + fn try_from_pla(val: &i64) -> Result { + if val.is_negative() { + Ok(csl::utils::Int::new_negative(&csl::utils::to_bignum( + val.unsigned_abs(), + ))) + } else { + Ok(csl::utils::Int::new(&csl::utils::to_bignum(*val as u64))) + } + } +} + +impl TryFromPLA for u32 /* TransactionIndex */ { + fn try_from_pla(val: &BigInt) -> Result { + val.to_owned() + .try_into() + .map_err(|err: TryFromBigIntError| { + TryFromPLAError::BigIntOutOfRange(err.into_original(), "u32".into()) + }) + } +} diff --git a/plutus-ledger-api/src/lib.rs b/plutus-ledger-api/src/lib.rs index 8232f0b4..ac37079b 100644 --- a/plutus-ledger-api/src/lib.rs +++ b/plutus-ledger-api/src/lib.rs @@ -8,6 +8,7 @@ pub mod v1; pub mod v2; #[cfg(feature = "lbf")] pub use lbr_prelude::json; +pub mod csl; pub mod utils; #[macro_use] diff --git a/plutus-ledger-api/src/plutus_data.rs b/plutus-ledger-api/src/plutus_data.rs index 4607217a..0d624af7 100644 --- a/plutus-ledger-api/src/plutus_data.rs +++ b/plutus-ledger-api/src/plutus_data.rs @@ -1,4 +1,5 @@ //! Plutus Data related types and traits +use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use data_encoding::HEXLOWER; #[cfg(feature = "lbf")] @@ -13,6 +14,9 @@ use std::collections::{BTreeMap, BTreeSet}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; +use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; + /// Data representation of on-chain data such as Datums and Redeemers #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -554,6 +558,84 @@ where } } +impl TryFromCSL for PlutusData { + fn try_from_csl(value: &csl::plutus::PlutusData) -> Result { + Ok(match value.kind() { + csl::plutus::PlutusDataKind::ConstrPlutusData => { + let constr_data = value.as_constr_plutus_data().unwrap(); + let tag = BigInt::from_csl(&constr_data.alternative()); + let args = constr_data.data().try_to_pla()?; + PlutusData::Constr(tag, args) + } + csl::plutus::PlutusDataKind::Map => { + PlutusData::Map(value.as_map().unwrap().try_to_pla()?) + } + csl::plutus::PlutusDataKind::List => { + PlutusData::List(value.as_list().unwrap().try_to_pla()?) + } + csl::plutus::PlutusDataKind::Integer => { + PlutusData::Integer(value.as_integer().unwrap().try_to_pla()?) + } + csl::plutus::PlutusDataKind::Bytes => PlutusData::Bytes(value.as_bytes().unwrap()), + }) + } +} + +impl TryFromCSL for Vec { + fn try_from_csl(value: &csl::plutus::PlutusList) -> Result { + (0..value.len()) + .map(|idx| value.get(idx).try_to_pla()) + .collect() + } +} + +impl TryFromCSL for Vec<(PlutusData, PlutusData)> { + fn try_from_csl(c_map: &csl::plutus::PlutusMap) -> Result { + let keys = c_map.keys(); + (0..keys.len()) + .map(|idx| { + let key = keys.get(idx); + let value = c_map.get(&key).unwrap(); + Ok((key.try_to_pla()?, value.try_to_pla()?)) + }) + .collect() + } +} + +impl TryFromPLA for csl::plutus::PlutusData { + fn try_from_pla(val: &PlutusData) -> Result { + match val { + PlutusData::Constr(tag, args) => Ok(csl::plutus::PlutusData::new_constr_plutus_data( + &csl::plutus::ConstrPlutusData::new(&tag.try_to_csl()?, &args.try_to_csl()?), + )), + PlutusData::Map(l) => Ok(csl::plutus::PlutusData::new_map(&l.try_to_csl()?)), + PlutusData::List(l) => Ok(csl::plutus::PlutusData::new_list(&l.try_to_csl()?)), + PlutusData::Integer(i) => Ok(csl::plutus::PlutusData::new_integer(&i.try_to_csl()?)), + PlutusData::Bytes(b) => Ok(csl::plutus::PlutusData::new_bytes(b.to_owned())), + } + } +} + +impl TryFromPLA> for csl::plutus::PlutusList { + fn try_from_pla(val: &Vec) -> Result { + val.iter() + // traverse + .map(|x| x.try_to_csl()) + .collect::, TryFromPLAError>>() + .map(|x| x.into()) + } +} + +impl TryFromPLA> for csl::plutus::PlutusMap { + fn try_from_pla(val: &Vec<(PlutusData, PlutusData)>) -> Result { + val.iter() + .try_fold(csl::plutus::PlutusMap::new(), |mut acc, (k, v)| { + acc.insert(&k.try_to_csl()?, &v.try_to_csl()?); + Ok(acc) + }) + } +} + /// Verify the number of fields contained in a PlutusData::Constr pub fn verify_constr_fields( fields: &Vec, diff --git a/plutus-ledger-api/src/utils/csl_to_pla.rs b/plutus-ledger-api/src/utils/csl_to_pla.rs deleted file mode 100644 index 3244c25c..00000000 --- a/plutus-ledger-api/src/utils/csl_to_pla.rs +++ /dev/null @@ -1,442 +0,0 @@ -use std::{collections::BTreeMap, ops::Neg, str::FromStr}; - -use cardano_serialization_lib as csl; -use num_bigint::{BigInt, ParseBigIntError}; - -use super::aux::union_b_tree_maps_with; - -use crate::{ - plutus_data::PlutusData, - v2::{ - address::{ - Address, CertificateIndex, ChainPointer, Credential, Slot, StakingCredential, - TransactionIndex, - }, - crypto::{Ed25519PubKeyHash, LedgerBytes}, - datum::{Datum, DatumHash, OutputDatum}, - script::{MintingPolicyHash, ScriptHash, ValidatorHash}, - transaction::{TransactionHash, TransactionInput, TransactionOutput}, - value::{CurrencySymbol, TokenName, Value}, - }, -}; - -#[derive(Debug, Clone, thiserror::Error)] -pub enum TryFromCSLError { - #[error("Unable to parse BigInt: {0}")] - InvalidBigInt(ParseBigIntError), - - #[error("Unable to represent CSL value in PLA: {0}")] - ImpossibleConversion(String), -} - -/// Convert a cardano-serialization-lib type to its plutus-ledger-api counterpart -pub trait FromCSL { - fn from_csl(value: &T) -> Self - where - Self: Sized; -} - -pub trait ToPLA { - fn to_pla(&self) -> T; -} - -impl ToPLA for T -where - U: FromCSL, -{ - fn to_pla(&self) -> U { - FromCSL::from_csl(self) - } -} - -/// Convert a cardano-serialization-lib type to its plutus-ledger-api counterpart -pub trait TryFromCSL { - fn try_from_csl(value: &T) -> Result - where - Self: Sized; -} - -pub trait TryToPLA { - fn try_to_pla(&self) -> Result; -} - -impl TryToPLA for T -where - U: TryFromCSL, -{ - fn try_to_pla(&self) -> Result { - TryFromCSL::try_from_csl(self) - } -} - -impl FromCSL for TokenName { - fn from_csl(value: &csl::AssetName) -> Self { - TokenName(LedgerBytes(value.name())) - } -} - -impl FromCSL for MintingPolicyHash { - fn from_csl(value: &csl::PolicyID) -> Self { - MintingPolicyHash(ScriptHash(LedgerBytes(value.to_bytes()))) - } -} - -impl FromCSL for Value { - fn from_csl(value: &csl::utils::Value) -> Self { - let lovelaces = BigInt::from_csl(&value.coin()); - let mut pla_value = Value::ada_value(&lovelaces); - if let Some(multi_asset) = value.multiasset() { - pla_value = &pla_value + &Value::from_csl(&multi_asset) - } - pla_value - } -} - -impl FromCSL for BigInt { - fn from_csl(value: &csl::utils::BigNum) -> Self { - let x: u64 = From::from(*value); - BigInt::from(x) - } -} - -impl FromCSL for BTreeMap { - fn from_csl(value: &csl::Assets) -> Self { - let keys = value.keys(); - (0..keys.len()).fold(BTreeMap::new(), |mut acc, idx| { - let asset_name = keys.get(idx); - if let Some(quantity) = value.get(&asset_name) { - acc.insert( - TokenName::from_csl(&asset_name), - BigInt::from_csl(&quantity), - ); - } - acc - }) - } -} - -impl FromCSL for Value { - fn from_csl(value: &csl::MultiAsset) -> Self { - let keys = value.keys(); - Value((0..keys.len()).fold(BTreeMap::new(), |mut acc, idx| { - let script_hash = keys.get(idx); - if let Some(assets) = value.get(&script_hash) { - let assets = BTreeMap::from_csl(&assets); - acc.insert( - CurrencySymbol::NativeToken(MintingPolicyHash::from_csl(&script_hash)), - assets, - ); - } - acc - })) - } -} - -impl FromCSL for BigInt { - fn from_csl(value: &u32) -> Self { - BigInt::from(*value) - } -} - -impl TryFromCSL for BigInt { - fn try_from_csl(value: &csl::utils::BigInt) -> Result { - BigInt::from_str(&value.to_str()).map_err(TryFromCSLError::InvalidBigInt) - } -} - -impl FromCSL for BigInt { - fn from_csl(value: &csl::utils::Int) -> Self { - if value.is_positive() { - BigInt::from_csl(&value.as_positive().unwrap()) - } else { - BigInt::from_csl(&value.as_negative().unwrap()).neg() - } - } -} - -impl FromCSL for TransactionHash { - fn from_csl(value: &csl::crypto::TransactionHash) -> Self { - TransactionHash(LedgerBytes(value.to_bytes())) - } -} - -impl FromCSL for TransactionInput { - fn from_csl(value: &csl::TransactionInput) -> Self { - TransactionInput { - transaction_id: TransactionHash::from_csl(&value.transaction_id()), - index: BigInt::from_csl(&value.index()), - } - } -} - -impl FromCSL for Vec { - fn from_csl(value: &csl::TransactionInputs) -> Self { - (0..value.len()) - .map(|idx| TransactionInput::from_csl(&value.get(idx))) - .collect() - } -} - -impl FromCSL for Ed25519PubKeyHash { - fn from_csl(value: &csl::crypto::Ed25519KeyHash) -> Self { - Ed25519PubKeyHash(LedgerBytes(value.to_bytes())) - } -} - -impl FromCSL for ScriptHash { - fn from_csl(value: &csl::crypto::ScriptHash) -> Self { - ScriptHash(LedgerBytes(value.to_bytes())) - } -} - -impl FromCSL for ValidatorHash { - fn from_csl(value: &csl::crypto::ScriptHash) -> Self { - ValidatorHash(ScriptHash::from_csl(value)) - } -} - -impl FromCSL for StakingCredential { - fn from_csl(value: &csl::address::StakeCredential) -> Self { - StakingCredential::Hash(Credential::from_csl(value)) - } -} - -impl FromCSL for Credential { - fn from_csl(value: &csl::address::StakeCredential) -> Self { - match value.kind() { - csl::address::StakeCredKind::Key => { - Credential::PubKey(Ed25519PubKeyHash::from_csl(&value.to_keyhash().unwrap())) - } - csl::address::StakeCredKind::Script => { - Credential::Script(ValidatorHash::from_csl(&value.to_scripthash().unwrap())) - } - } - } -} - -impl FromCSL for Slot { - fn from_csl(value: &csl::utils::BigNum) -> Self { - Slot(BigInt::from_csl(value)) - } -} - -impl FromCSL for TransactionIndex { - fn from_csl(value: &csl::utils::BigNum) -> Self { - TransactionIndex(BigInt::from_csl(value)) - } -} - -impl FromCSL for CertificateIndex { - fn from_csl(value: &csl::utils::BigNum) -> Self { - CertificateIndex(BigInt::from_csl(value)) - } -} - -impl FromCSL for ChainPointer { - fn from_csl(value: &csl::address::Pointer) -> Self { - ChainPointer { - slot_number: Slot::from_csl(&value.slot_bignum()), - transaction_index: TransactionIndex::from_csl(&value.tx_index_bignum()), - certificate_index: CertificateIndex::from_csl(&value.cert_index_bignum()), - } - } -} - -impl FromCSL for StakingCredential { - fn from_csl(value: &csl::address::Pointer) -> Self { - StakingCredential::Pointer(ChainPointer::from_csl(value)) - } -} -impl TryFromCSL for Address { - fn try_from_csl(value: &csl::address::Address) -> Result { - if let Some(addr) = csl::address::BaseAddress::from_address(value) { - Ok(Address { - credential: Credential::from_csl(&addr.payment_cred()), - staking_credential: Some(StakingCredential::from_csl(&addr.stake_cred())), - }) - } else if let Some(addr) = csl::address::PointerAddress::from_address(value) { - Ok(Address { - credential: Credential::from_csl(&addr.payment_cred()), - staking_credential: Some(StakingCredential::from_csl(&addr.stake_pointer())), - }) - } else if let Some(addr) = csl::address::EnterpriseAddress::from_address(value) { - Ok(Address { - credential: Credential::from_csl(&addr.payment_cred()), - staking_credential: None, - }) - } else { - Err(TryFromCSLError::ImpossibleConversion(format!( - "Unable to represent address {:?}", - value - ))) - } - } -} - -impl TryFromCSL for PlutusData { - fn try_from_csl(value: &csl::plutus::PlutusData) -> Result { - Ok(match value.kind() { - csl::plutus::PlutusDataKind::ConstrPlutusData => { - let constr_data = value.as_constr_plutus_data().unwrap(); - let tag = BigInt::from_csl(&constr_data.alternative()); - let args = constr_data.data().try_to_pla()?; - PlutusData::Constr(tag, args) - } - csl::plutus::PlutusDataKind::Map => { - PlutusData::Map(value.as_map().unwrap().try_to_pla()?) - } - csl::plutus::PlutusDataKind::List => { - PlutusData::List(value.as_list().unwrap().try_to_pla()?) - } - csl::plutus::PlutusDataKind::Integer => { - PlutusData::Integer(value.as_integer().unwrap().try_to_pla()?) - } - csl::plutus::PlutusDataKind::Bytes => PlutusData::Bytes(value.as_bytes().unwrap()), - }) - } -} - -impl TryFromCSL for Vec { - fn try_from_csl(value: &csl::plutus::PlutusList) -> Result { - (0..value.len()) - .map(|idx| value.get(idx).try_to_pla()) - .collect() - } -} - -impl TryFromCSL for Vec<(PlutusData, PlutusData)> { - fn try_from_csl(c_map: &csl::plutus::PlutusMap) -> Result { - let keys = c_map.keys(); - (0..keys.len()) - .map(|idx| { - let key = keys.get(idx); - let value = c_map.get(&key).unwrap(); - Ok((key.try_to_pla()?, value.try_to_pla()?)) - }) - .collect() - } -} - -impl FromCSL for DatumHash { - fn from_csl(value: &csl::crypto::DataHash) -> Self { - DatumHash(LedgerBytes(value.to_bytes())) - } -} - -impl TryFromCSL for OutputDatum { - fn try_from_csl(value: &csl::OutputDatum) -> Result { - Ok(if let Some(d) = value.data() { - OutputDatum::InlineDatum(Datum(d.try_to_pla()?)) - } else if let Some(h) = value.data_hash() { - OutputDatum::DatumHash(DatumHash::from_csl(&h)) - } else { - OutputDatum::None - }) - } -} - -impl TryFromCSL for TransactionOutput { - fn try_from_csl(value: &csl::TransactionOutput) -> Result { - Ok(TransactionOutput { - address: value.address().try_to_pla()?, - datum: if value.has_data_hash() { - OutputDatum::DatumHash(DatumHash::from_csl(&value.data_hash().unwrap())) - } else if value.has_plutus_data() { - OutputDatum::InlineDatum(Datum(value.plutus_data().unwrap().try_to_pla()?)) - } else { - OutputDatum::None - }, - reference_script: if value.has_script_ref() { - let script_ref = value.script_ref().unwrap(); - let script_hash = if script_ref.is_native_script() { - script_ref.native_script().unwrap().hash() - } else { - script_ref.plutus_script().unwrap().hash() - }; - Some(ScriptHash::from_csl(&script_hash)) - } else { - None - }, - value: Value::from_csl(&value.amount()), - }) - } -} - -impl TryFromCSL for Vec { - fn try_from_csl(value: &csl::TransactionOutputs) -> Result { - (0..value.len()) - .map(|idx| TransactionOutput::try_from_csl(&value.get(idx))) - .collect() - } -} - -impl FromCSL for BTreeMap { - fn from_csl(m_ass: &csl::MintAssets) -> Self { - let keys = m_ass.keys(); - (0..keys.len()) - .map(|idx| { - let key = keys.get(idx); - let value = m_ass.get(&key).unwrap(); - (TokenName::from_csl(&key), BigInt::from_csl(&value)) - }) - .collect() - } -} - -impl FromCSL for BTreeMap { - fn from_csl(value: &csl::MintsAssets) -> Self { - let mut m_ass_vec = Vec::new(); - - // This is so stupid. `MintsAssets` doesn't have a `len` method for some reason. - for idx in 0.. { - if let Some(m_ass) = value.get(idx) { - m_ass_vec.push(m_ass); - } else { - break; - } - } - - m_ass_vec.into_iter().fold(BTreeMap::new(), |acc, m| { - let ass = BTreeMap::from_csl(&m); - union_b_tree_maps_with(|l, r| l + r, [&acc, &ass]) - }) - } -} - -impl FromCSL for Value { - fn from_csl(mint: &csl::Mint) -> Self { - let keys = mint.keys(); - Value( - (0..keys.len()) - .map(|idx| { - let sh = keys.get(idx); - let ass = mint.get_all(&sh).unwrap_or(csl::MintsAssets::new()); - ( - CurrencySymbol::NativeToken(MintingPolicyHash::from_csl(&sh)), - BTreeMap::from_csl(&ass), - ) - }) - .collect::>>(), - ) - } -} - -impl FromCSL for Vec { - fn from_csl(value: &csl::RequiredSigners) -> Self { - (0..value.len()) - .map(|idx| Ed25519PubKeyHash::from_csl(&value.get(idx))) - .collect() - } -} - -impl FromCSL for Vec { - fn from_csl(value: &csl::NativeScripts) -> Self { - (0..value.len()).map(|idx| value.get(idx)).collect() - } -} - -impl FromCSL for Vec { - fn from_csl(value: &csl::plutus::PlutusScripts) -> Self { - (0..value.len()).map(|idx| value.get(idx)).collect() - } -} diff --git a/plutus-ledger-api/src/utils/mod.rs b/plutus-ledger-api/src/utils/mod.rs index eee5d196..a8a7dcdb 100644 --- a/plutus-ledger-api/src/utils/mod.rs +++ b/plutus-ledger-api/src/utils/mod.rs @@ -1,3 +1 @@ pub mod aux; -pub mod csl_to_pla; -pub mod pla_to_csl; diff --git a/plutus-ledger-api/src/utils/pla_to_csl.rs b/plutus-ledger-api/src/utils/pla_to_csl.rs deleted file mode 100644 index 5755c859..00000000 --- a/plutus-ledger-api/src/utils/pla_to_csl.rs +++ /dev/null @@ -1,516 +0,0 @@ -use std::collections::BTreeMap; - -use cardano_serialization_lib as csl; -use num_bigint::{BigInt, TryFromBigIntError}; -use num_traits::sign::Signed; - -use crate::{ - plutus_data::PlutusData, - v2::{ - address::{ - Address, CertificateIndex, ChainPointer, Credential, Slot, StakingCredential, - TransactionIndex, - }, - assoc_map::AssocMap, - crypto::Ed25519PubKeyHash, - datum::{Datum, DatumHash, OutputDatum}, - redeemer::Redeemer, - script::{MintingPolicyHash, ScriptHash}, - transaction::{POSIXTimeRange, TransactionHash, TransactionInput, TransactionOutput}, - value::{CurrencySymbol, TokenName, Value}, - }, -}; - -#[derive(Debug, thiserror::Error)] -pub enum TryFromPLAError { - #[error("{0}")] - CSLDeserializeError(csl::error::DeserializeError), - - #[error("{0}")] - CSLJsError(csl::error::JsError), - - #[error("Unable to cast BigInt {0} into type {1}: value is out of bound")] - BigIntOutOfRange(BigInt, String), - - #[error("Unable to represent PLA value in CSL: ${0}")] - ImpossibleConversion(String), - - #[error("Invalid valid transaction time range: ${0:?}")] - InvalidTimeRange(POSIXTimeRange), - - #[error("Script is missing from context: {0:?}")] - MissingScript(ScriptHash), -} - -/// Convert a plutus-ledger-api type to its cardano-serialization-lib counterpart -/// `try_to_csl_with` accepts extra data where the PLA data itself is not enough -pub trait TryFromPLA { - fn try_from_pla(val: &T) -> Result - where - Self: Sized; -} - -/// Convert a plutus-ledger-api type to its cardano-serialization-lib counterpart -/// `try_to_csl_with` accepts extra data where the PLA data itself is not enough -/// -/// DO NOT IMPLEMENT THIS DIRECTLY. Implement `TryFromPLA` instead. -pub trait TryToCSL { - fn try_to_csl(&self) -> Result; -} - -impl TryToCSL for T -where - U: TryFromPLA, -{ - fn try_to_csl(&self) -> Result { - TryFromPLA::try_from_pla(self) - } -} - -impl TryFromPLA for csl::utils::BigNum { - fn try_from_pla(val: &u64) -> Result { - // BigNum(s) are u64 under the hood. - - Ok(csl::utils::BigNum::from(*val)) - } -} - -impl TryFromPLA for csl::utils::BigNum { - fn try_from_pla(val: &BigInt) -> Result { - // BigNum(s) are u64 under the hood. - let x: u64 = val - .to_owned() - .try_into() - .map_err(|err: TryFromBigIntError| { - TryFromPLAError::BigIntOutOfRange(err.into_original(), "u64".into()) - })?; - - x.try_to_csl() - } -} - -impl TryFromPLA for csl::utils::BigInt { - fn try_from_pla(val: &BigInt) -> Result { - Ok(val.to_owned().into()) - } -} - -impl TryFromPLA for csl::utils::Int { - fn try_from_pla(val: &BigInt) -> Result { - if val.is_negative() { - Ok(csl::utils::Int::new_negative(&(val.abs()).try_to_csl()?)) - } else { - Ok(csl::utils::Int::new(&val.try_to_csl()?)) - } - } -} - -impl TryFromPLA for csl::utils::Int { - fn try_from_pla(val: &i64) -> Result { - if val.is_negative() { - Ok(csl::utils::Int::new_negative(&csl::utils::to_bignum( - val.unsigned_abs(), - ))) - } else { - Ok(csl::utils::Int::new(&csl::utils::to_bignum(*val as u64))) - } - } -} - -impl TryFromPLA for csl::crypto::Ed25519KeyHash { - fn try_from_pla(val: &Ed25519PubKeyHash) -> Result { - csl::crypto::Ed25519KeyHash::from_bytes(val.0 .0.to_owned()) - .map_err(TryFromPLAError::CSLDeserializeError) - } -} - -impl TryFromPLA for csl::crypto::ScriptHash { - fn try_from_pla(val: &ScriptHash) -> Result { - csl::crypto::ScriptHash::from_bytes(val.0 .0.to_owned()) - .map_err(TryFromPLAError::CSLDeserializeError) - } -} - -impl TryFromPLA for csl::crypto::TransactionHash { - fn try_from_pla(val: &TransactionHash) -> Result { - csl::crypto::TransactionHash::from_bytes(val.0 .0.to_owned()) - .map_err(TryFromPLAError::CSLDeserializeError) - } -} - -impl TryFromPLA for u32 /* TransactionIndex */ { - fn try_from_pla(val: &BigInt) -> Result { - val.to_owned() - .try_into() - .map_err(|err: TryFromBigIntError| { - TryFromPLAError::BigIntOutOfRange(err.into_original(), "u32".into()) - }) - } -} - -impl TryFromPLA for csl::TransactionInput { - fn try_from_pla(val: &TransactionInput) -> Result { - Ok(csl::TransactionInput::new( - &val.transaction_id.try_to_csl()?, - val.index.try_to_csl()?, - )) - } -} - -impl TryFromPLA> for csl::TransactionInputs { - fn try_from_pla(val: &Vec) -> Result { - val.iter() - .try_fold(csl::TransactionInputs::new(), |mut acc, input| { - acc.add(&input.try_to_csl()?); - Ok(acc) - }) - } -} - -#[derive(Clone, Debug)] -pub struct TransactionOutputWithExtraInfo<'a> { - pub transaction_output: &'a TransactionOutput, - pub scripts: &'a BTreeMap, - pub network_id: u8, - pub data_cost: &'a csl::DataCost, -} - -impl TryFromPLA> for csl::TransactionOutput { - fn try_from_pla(val: &TransactionOutputWithExtraInfo<'_>) -> Result { - let mut output_builder = csl::output_builder::TransactionOutputBuilder::new().with_address( - &AddressWithExtraInfo { - address: &val.transaction_output.address, - network_tag: val.network_id, - } - .try_to_csl()?, - ); - - output_builder = match &val.transaction_output.datum { - OutputDatum::None => output_builder, - OutputDatum::InlineDatum(Datum(d)) => output_builder.with_plutus_data(&d.try_to_csl()?), - OutputDatum::DatumHash(dh) => output_builder.with_data_hash(&dh.try_to_csl()?), - }; - - let script_ref = val - .transaction_output - .reference_script - .clone() - .map(|script_hash| -> Result<_, TryFromPLAError> { - let script = val - .scripts - .get(&script_hash) - .ok_or(TryFromPLAError::MissingScript(script_hash))?; - Ok(csl::ScriptRef::new_plutus_script(script)) - }) - .transpose()?; - - if let Some(script_ref) = &script_ref { - output_builder = output_builder.with_script_ref(script_ref); - }; - - let value_without_min_utxo = val.transaction_output.value.try_to_csl()?; - - let mut calc = csl::utils::MinOutputAdaCalculator::new_empty(val.data_cost) - .map_err(TryFromPLAError::CSLJsError)?; - calc.set_amount(&value_without_min_utxo); - match &val.transaction_output.datum { - OutputDatum::None => {} - OutputDatum::InlineDatum(Datum(d)) => { - calc.set_plutus_data(&d.try_to_csl()?); - } - OutputDatum::DatumHash(dh) => { - calc.set_data_hash(&dh.try_to_csl()?); - } - }; - if let Some(script_ref) = script_ref { - calc.set_script_ref(&script_ref); - } - - let required_coin = calc.calculate_ada().map_err(TryFromPLAError::CSLJsError)?; - let coin = std::cmp::max(value_without_min_utxo.coin(), required_coin); - - let value = match value_without_min_utxo.multiasset() { - Some(multiasset) => csl::utils::Value::new_with_assets(&coin, &multiasset), - None => csl::utils::Value::new(&coin), - }; - - output_builder - .next() - .map_err(TryFromPLAError::CSLJsError)? - .with_value(&value) - .build() - .map_err(TryFromPLAError::CSLJsError) - } -} - -impl TryFromPLA for csl::PolicyID { - fn try_from_pla(val: &MintingPolicyHash) -> Result { - val.0.try_to_csl() - } -} - -impl TryFromPLA for csl::AssetName { - fn try_from_pla(val: &TokenName) -> Result { - csl::AssetName::new(val.0 .0.to_owned()).map_err(TryFromPLAError::CSLJsError) - } -} - -impl TryFromPLA> for csl::Assets { - fn try_from_pla(val: &BTreeMap) -> Result { - val.iter().try_fold(csl::Assets::new(), |mut acc, (k, v)| { - acc.insert(&k.try_to_csl()?, &v.try_to_csl()?); - Ok(acc) - }) - } -} - -impl TryFromPLA> for csl::MintAssets { - fn try_from_pla(val: &BTreeMap) -> Result { - val.iter() - .try_fold(csl::MintAssets::new(), |mut acc, (k, v)| { - acc.insert(&k.try_to_csl()?, v.try_to_csl()?); - Ok(acc) - }) - } -} - -impl TryFromPLA for csl::utils::Value { - fn try_from_pla(val: &Value) -> Result { - let coin: csl::utils::Coin = val - .0 - .get(&CurrencySymbol::Ada) - .and_then(|m| m.get(&TokenName::ada())) - .map_or(Ok(csl::utils::BigNum::zero()), TryToCSL::try_to_csl)?; - - let m_ass = val - .0 - .iter() - .filter_map(|(cs, tn_map)| match &cs { - CurrencySymbol::Ada => None, - CurrencySymbol::NativeToken(h) => Some((h, tn_map)), - }) - .try_fold(csl::MultiAsset::new(), |mut acc, (cs, ass)| { - acc.insert(&cs.try_to_csl()?, &ass.try_to_csl()?); - Ok(acc) - })?; - - let mut v = csl::utils::Value::new(&coin); - - v.set_multiasset(&m_ass); - - Ok(v) - } -} - -impl TryFromPLA for csl::plutus::PlutusData { - fn try_from_pla(val: &PlutusData) -> Result { - match val { - PlutusData::Constr(tag, args) => Ok(csl::plutus::PlutusData::new_constr_plutus_data( - &csl::plutus::ConstrPlutusData::new(&tag.try_to_csl()?, &args.try_to_csl()?), - )), - PlutusData::Map(l) => Ok(csl::plutus::PlutusData::new_map(&l.try_to_csl()?)), - PlutusData::List(l) => Ok(csl::plutus::PlutusData::new_list(&l.try_to_csl()?)), - PlutusData::Integer(i) => Ok(csl::plutus::PlutusData::new_integer(&i.try_to_csl()?)), - PlutusData::Bytes(b) => Ok(csl::plutus::PlutusData::new_bytes(b.to_owned())), - } - } -} - -impl TryFromPLA> for csl::plutus::PlutusList { - fn try_from_pla(val: &Vec) -> Result { - val.iter() - // traverse - .map(|x| x.try_to_csl()) - .collect::, TryFromPLAError>>() - .map(|x| x.into()) - } -} - -impl TryFromPLA> for csl::plutus::PlutusMap { - fn try_from_pla(val: &Vec<(PlutusData, PlutusData)>) -> Result { - val.iter() - .try_fold(csl::plutus::PlutusMap::new(), |mut acc, (k, v)| { - acc.insert(&k.try_to_csl()?, &v.try_to_csl()?); - Ok(acc) - }) - } -} - -impl TryFromPLA for csl::crypto::DataHash { - fn try_from_pla(val: &DatumHash) -> Result { - csl::crypto::DataHash::from_bytes(val.0 .0.to_owned()) - .map_err(TryFromPLAError::CSLDeserializeError) - } -} - -impl TryFromPLA for csl::plutus::PlutusData { - fn try_from_pla(val: &Datum) -> Result { - val.0.try_to_csl() - } -} - -impl TryFromPLA for csl::address::Pointer { - fn try_from_pla(val: &ChainPointer) -> Result { - Ok(csl::address::Pointer::new_pointer( - &val.slot_number.try_to_csl()?, - &val.transaction_index.try_to_csl()?, - &val.certificate_index.try_to_csl()?, - )) - } -} - -impl TryFromPLA for csl::utils::BigNum { - fn try_from_pla(val: &Slot) -> Result { - val.0.try_to_csl() - } -} - -impl TryFromPLA for csl::utils::BigNum { - fn try_from_pla(val: &TransactionIndex) -> Result { - val.0.try_to_csl() - } -} - -impl TryFromPLA for csl::utils::BigNum { - fn try_from_pla(val: &CertificateIndex) -> Result { - val.0.try_to_csl() - } -} - -impl TryFromPLA for csl::address::StakeCredential { - fn try_from_pla(val: &Credential) -> Result { - match val { - Credential::PubKey(pkh) => Ok(csl::address::StakeCredential::from_keyhash( - &pkh.try_to_csl()?, - )), - Credential::Script(sh) => Ok(csl::address::StakeCredential::from_scripthash( - &sh.0.try_to_csl()?, - )), - } - } -} - -impl TryFromPLA for csl::address::StakeCredential { - fn try_from_pla(val: &StakingCredential) -> Result { - match val { - StakingCredential::Hash(c) => c.try_to_csl(), - StakingCredential::Pointer(_) => Err(TryFromPLAError::ImpossibleConversion( - "cannot represent chain pointer".into(), - )), - } - } -} - -#[derive(Clone, Debug)] -pub struct AddressWithExtraInfo<'a> { - pub address: &'a Address, - pub network_tag: u8, -} - -impl TryFromPLA> for csl::address::Address { - fn try_from_pla(val: &AddressWithExtraInfo<'_>) -> Result { - let payment = val.address.credential.try_to_csl()?; - - Ok(match val.address.staking_credential { - None => csl::address::EnterpriseAddress::new(val.network_tag, &payment).to_address(), - Some(ref sc) => match sc { - StakingCredential::Hash(c) => { - csl::address::BaseAddress::new(val.network_tag, &payment, &c.try_to_csl()?) - .to_address() - } - StakingCredential::Pointer(ptr) => { - csl::address::PointerAddress::new(val.network_tag, &payment, &ptr.try_to_csl()?) - .to_address() - } - }, - }) - } -} - -impl std::fmt::Display for AddressWithExtraInfo<'_> { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - let bech32_addr: Option = self - .try_to_csl() - .ok() - .and_then(|csl_addr: csl::address::Address| csl_addr.to_bech32(None).ok()); - match bech32_addr { - Some(addr) => write!(f, "{}", addr), - None => write!(f, "INVALID ADDRESS {:?}", self), - } - } -} - -#[derive(Clone, Debug)] -struct RewardAddressWithExtraInfo<'a> { - pub staking_credential: &'a StakingCredential, - pub network_tag: u8, -} - -impl TryFromPLA> for csl::address::RewardAddress { - fn try_from_pla(val: &RewardAddressWithExtraInfo<'_>) -> Result { - Ok(csl::address::RewardAddress::new( - val.network_tag, - &val.staking_credential.try_to_csl()?, - )) - } -} - -#[derive(Clone, Debug)] -struct WithdrawalsWithExtraInfo<'a> { - withdrawals: &'a AssocMap, - network_tag: u8, -} - -impl TryFromPLA> for csl::Withdrawals { - fn try_from_pla(val: &WithdrawalsWithExtraInfo<'_>) -> Result { - val.withdrawals - .0 - .iter() - .try_fold(csl::Withdrawals::new(), |mut acc, (s, q)| { - acc.insert( - &RewardAddressWithExtraInfo { - staking_credential: s, - network_tag: val.network_tag, - } - .try_to_csl()?, - &q.try_to_csl()?, - ); - Ok(acc) - }) - } -} - -#[derive(Clone, Debug)] -struct RedeemerWithExtraInfo<'a> { - redeemer: &'a Redeemer, - tag: &'a csl::plutus::RedeemerTag, - index: u64, -} - -impl TryFromPLA> for csl::plutus::Redeemer { - fn try_from_pla<'a>( - val: &RedeemerWithExtraInfo<'_>, - ) -> Result { - let Redeemer(plutus_data) = val.redeemer; - Ok(csl::plutus::Redeemer::new( - val.tag, - &val.index.try_to_csl()?, - &plutus_data.try_to_csl()?, - &csl::plutus::ExUnits::new(&csl::utils::to_bignum(0), &csl::utils::to_bignum(0)), - )) - } -} - -impl TryFromPLA for Option { - fn try_from_pla( - pla_output_datum: &OutputDatum, - ) -> Result, TryFromPLAError> { - Ok(match pla_output_datum { - OutputDatum::None => None, - OutputDatum::InlineDatum(Datum(d)) => { - Some(csl::OutputDatum::new_data(&d.try_to_csl()?)) - } - OutputDatum::DatumHash(dh) => Some(csl::OutputDatum::new_data_hash(&dh.try_to_csl()?)), - }) - } -} diff --git a/plutus-ledger-api/src/v1/address.rs b/plutus-ledger-api/src/v1/address.rs index 648ac07a..7f2c0c6f 100644 --- a/plutus-ledger-api/src/v1/address.rs +++ b/plutus-ledger-api/src/v1/address.rs @@ -4,16 +4,21 @@ use std::str::FromStr; use anyhow::anyhow; use cardano_serialization_lib as csl; +use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; +use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; use crate::plutus_data::{ verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, }; -use crate::utils::csl_to_pla::TryToPLA; use crate::v1::crypto::Ed25519PubKeyHash; use crate::v1::script::ValidatorHash; #[cfg(feature = "lbf")] use lbr_prelude::json::{self, Error, Json}; use num_bigint::BigInt; +///////////// +// Address // +///////////// + #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; @@ -30,6 +35,15 @@ pub struct Address { pub staking_credential: Option, } +impl Address { + pub fn with_extra_info(&self, network_tag: u8) -> AddressWithExtraInfo { + AddressWithExtraInfo { + address: self, + network_tag, + } + } +} + impl IsPlutusData for Address { fn to_plutus_data(&self) -> PlutusData { PlutusData::Constr( @@ -79,6 +93,75 @@ impl FromStr for Address { } } +impl TryFromCSL for Address { + fn try_from_csl(value: &csl::address::Address) -> Result { + if let Some(addr) = csl::address::BaseAddress::from_address(value) { + Ok(Address { + credential: Credential::from_csl(&addr.payment_cred()), + staking_credential: Some(StakingCredential::from_csl(&addr.stake_cred())), + }) + } else if let Some(addr) = csl::address::PointerAddress::from_address(value) { + Ok(Address { + credential: Credential::from_csl(&addr.payment_cred()), + staking_credential: Some(StakingCredential::from_csl(&addr.stake_pointer())), + }) + } else if let Some(addr) = csl::address::EnterpriseAddress::from_address(value) { + Ok(Address { + credential: Credential::from_csl(&addr.payment_cred()), + staking_credential: None, + }) + } else { + Err(TryFromCSLError::ImpossibleConversion(format!( + "Unable to represent address {:?}", + value + ))) + } + } +} + +#[derive(Clone, Debug)] +pub struct AddressWithExtraInfo<'a> { + pub address: &'a Address, + pub network_tag: u8, +} + +impl TryFromPLA> for csl::address::Address { + fn try_from_pla(val: &AddressWithExtraInfo<'_>) -> Result { + let payment = val.address.credential.try_to_csl()?; + + Ok(match val.address.staking_credential { + None => csl::address::EnterpriseAddress::new(val.network_tag, &payment).to_address(), + Some(ref sc) => match sc { + StakingCredential::Hash(c) => { + csl::address::BaseAddress::new(val.network_tag, &payment, &c.try_to_csl()?) + .to_address() + } + StakingCredential::Pointer(ptr) => { + csl::address::PointerAddress::new(val.network_tag, &payment, &ptr.try_to_csl()?) + .to_address() + } + }, + }) + } +} + +impl std::fmt::Display for AddressWithExtraInfo<'_> { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + let bech32_addr: Option = self + .try_to_csl() + .ok() + .and_then(|csl_addr: csl::address::Address| csl_addr.to_bech32(None).ok()); + match bech32_addr { + Some(addr) => write!(f, "{}", addr), + None => write!(f, "INVALID ADDRESS {:?}", self), + } + } +} + +//////////////// +// Credential // +//////////////// + /// A public key hash or validator hash credential (used as a payment or a staking credential) #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -173,6 +256,36 @@ impl Json for Credential { } } +impl FromCSL for Credential { + fn from_csl(value: &csl::address::StakeCredential) -> Self { + match value.kind() { + csl::address::StakeCredKind::Key => { + Credential::PubKey(Ed25519PubKeyHash::from_csl(&value.to_keyhash().unwrap())) + } + csl::address::StakeCredKind::Script => { + Credential::Script(ValidatorHash::from_csl(&value.to_scripthash().unwrap())) + } + } + } +} + +impl TryFromPLA for csl::address::StakeCredential { + fn try_from_pla(val: &Credential) -> Result { + match val { + Credential::PubKey(pkh) => Ok(csl::address::StakeCredential::from_keyhash( + &pkh.try_to_csl()?, + )), + Credential::Script(sh) => Ok(csl::address::StakeCredential::from_scripthash( + &sh.0.try_to_csl()?, + )), + } + } +} + +/////////////////////// +// StakingCredential // +/////////////////////// + /// Credential (public key hash or pointer) used for staking #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -278,6 +391,48 @@ impl Json for StakingCredential { } } +impl FromCSL for StakingCredential { + fn from_csl(value: &csl::address::StakeCredential) -> Self { + StakingCredential::Hash(Credential::from_csl(value)) + } +} + +impl TryFromPLA for csl::address::StakeCredential { + fn try_from_pla(val: &StakingCredential) -> Result { + match val { + StakingCredential::Hash(c) => c.try_to_csl(), + StakingCredential::Pointer(_) => Err(TryFromPLAError::ImpossibleConversion( + "cannot represent chain pointer".into(), + )), + } + } +} + +impl FromCSL for StakingCredential { + fn from_csl(value: &csl::address::Pointer) -> Self { + StakingCredential::Pointer(ChainPointer::from_csl(value)) + } +} + +#[derive(Clone, Debug)] +pub struct RewardAddressWithExtraInfo<'a> { + pub staking_credential: &'a StakingCredential, + pub network_tag: u8, +} + +impl TryFromPLA> for csl::address::RewardAddress { + fn try_from_pla(val: &RewardAddressWithExtraInfo<'_>) -> Result { + Ok(csl::address::RewardAddress::new( + val.network_tag, + &val.staking_credential.try_to_csl()?, + )) + } +} + +////////////////// +// ChainPointer // +////////////////// + /// In an address, a chain pointer refers to a point of the chain containing a stake key /// registration certificate. A point is identified by 3 coordinates: /// - An absolute slot number @@ -292,6 +447,30 @@ pub struct ChainPointer { pub certificate_index: CertificateIndex, } +impl FromCSL for ChainPointer { + fn from_csl(value: &csl::address::Pointer) -> Self { + ChainPointer { + slot_number: Slot::from_csl(&value.slot_bignum()), + transaction_index: TransactionIndex::from_csl(&value.tx_index_bignum()), + certificate_index: CertificateIndex::from_csl(&value.cert_index_bignum()), + } + } +} + +impl TryFromPLA for csl::address::Pointer { + fn try_from_pla(val: &ChainPointer) -> Result { + Ok(csl::address::Pointer::new_pointer( + &val.slot_number.try_to_csl()?, + &val.transaction_index.try_to_csl()?, + &val.certificate_index.try_to_csl()?, + )) + } +} + +////////// +// Slot // +////////// + /// Number of slots elapsed since genesis #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -308,6 +487,22 @@ impl IsPlutusData for Slot { } } +impl FromCSL for Slot { + fn from_csl(value: &csl::utils::BigNum) -> Self { + Slot(BigInt::from_csl(value)) + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &Slot) -> Result { + val.0.try_to_csl() + } +} + +////////////////////// +// CertificateIndex // +////////////////////// + /// Position of the certificate in a certain transaction #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -324,6 +519,22 @@ impl IsPlutusData for CertificateIndex { } } +impl FromCSL for CertificateIndex { + fn from_csl(value: &csl::utils::BigNum) -> Self { + CertificateIndex(BigInt::from_csl(value)) + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &CertificateIndex) -> Result { + val.0.try_to_csl() + } +} + +////////////////////// +// TransactionIndex // +////////////////////// + /// Position of a transaction in a given slot /// This is not identical to the index of a `TransactionInput` #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] @@ -340,3 +551,15 @@ impl IsPlutusData for TransactionIndex { IsPlutusData::from_plutus_data(data).map(Self) } } + +impl FromCSL for TransactionIndex { + fn from_csl(value: &csl::utils::BigNum) -> Self { + TransactionIndex(BigInt::from_csl(value)) + } +} + +impl TryFromPLA for csl::utils::BigNum { + fn try_from_pla(val: &TransactionIndex) -> Result { + val.0.try_to_csl() + } +} diff --git a/plutus-ledger-api/src/v1/assoc_map.rs b/plutus-ledger-api/src/v1/assoc_map.rs index 346933c0..54fed542 100644 --- a/plutus-ledger-api/src/v1/assoc_map.rs +++ b/plutus-ledger-api/src/v1/assoc_map.rs @@ -8,6 +8,10 @@ use serde::{Deserialize, Serialize}; use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError, PlutusType}; +////////////// +// AssocMap // +////////////// + #[derive(Debug, PartialEq, Eq, Clone)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub struct AssocMap(pub Vec<(K, V)>); diff --git a/plutus-ledger-api/src/v1/crypto.rs b/plutus-ledger-api/src/v1/crypto.rs index 6b8ec774..5cb83760 100644 --- a/plutus-ledger-api/src/v1/crypto.rs +++ b/plutus-ledger-api/src/v1/crypto.rs @@ -1,11 +1,23 @@ //! Types for cryptographic primitives, and other lower level building blocks -use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError, PlutusType}; +use cardano_serialization_lib as csl; use data_encoding::HEXLOWER; #[cfg(feature = "lbf")] use lbr_prelude::json::{Error, Json}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +use crate::{ + csl::{ + csl_to_pla::FromCSL, + pla_to_csl::{TryFromPLA, TryFromPLAError}, + }, + plutus_data::{IsPlutusData, PlutusData, PlutusDataError, PlutusType}, +}; + +/////////////////////// +// Ed25519PubKeyHash // +/////////////////////// + /// ED25519 public key hash /// This is the standard cryptography in Cardano, commonly referred to as `PubKeyHash` in Plutus /// and other libraries @@ -31,6 +43,31 @@ impl IsPlutusData for Ed25519PubKeyHash { } } +impl FromCSL for Ed25519PubKeyHash { + fn from_csl(value: &csl::crypto::Ed25519KeyHash) -> Self { + Ed25519PubKeyHash(LedgerBytes(value.to_bytes())) + } +} + +impl TryFromPLA for csl::crypto::Ed25519KeyHash { + fn try_from_pla(val: &Ed25519PubKeyHash) -> Result { + csl::crypto::Ed25519KeyHash::from_bytes(val.0 .0.to_owned()) + .map_err(TryFromPLAError::CSLDeserializeError) + } +} + +impl FromCSL for Vec { + fn from_csl(value: &csl::RequiredSigners) -> Self { + (0..value.len()) + .map(|idx| Ed25519PubKeyHash::from_csl(&value.get(idx))) + .collect() + } +} + +/////////////////////// +// PaymentPubKeyHash // +/////////////////////// + /// Standard public key hash used to verify a transaction witness #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -54,6 +91,10 @@ impl IsPlutusData for PaymentPubKeyHash { } } +///////////////////// +// StakePubKeyHash // +///////////////////// + /// Standard public key hash used to verify a staking #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -77,6 +118,10 @@ impl IsPlutusData for StakePubKeyHash { } } +///////////////// +// LedgerBytes // +///////////////// + /// A bytestring in the Cardano ledger context #[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] diff --git a/plutus-ledger-api/src/v1/datum.rs b/plutus-ledger-api/src/v1/datum.rs index bc3806f0..712dea5e 100644 --- a/plutus-ledger-api/src/v1/datum.rs +++ b/plutus-ledger-api/src/v1/datum.rs @@ -1,4 +1,9 @@ //! Types related to Plutus Datums + +use cardano_serialization_lib as csl; + +use crate::csl::csl_to_pla::FromCSL; +use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; use crate::v1::crypto::LedgerBytes; #[cfg(feature = "lbf")] @@ -7,6 +12,10 @@ use lbr_prelude::json::Json; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +/////////////// +// DatumHash // +/////////////// + /// blake2b-256 hash of a datum #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "lbf", derive(Json))] @@ -23,6 +32,23 @@ impl IsPlutusData for DatumHash { } } +impl FromCSL for DatumHash { + fn from_csl(value: &csl::crypto::DataHash) -> Self { + DatumHash(LedgerBytes(value.to_bytes())) + } +} + +impl TryFromPLA for csl::crypto::DataHash { + fn try_from_pla(val: &DatumHash) -> Result { + csl::crypto::DataHash::from_bytes(val.0 .0.to_owned()) + .map_err(TryFromPLAError::CSLDeserializeError) + } +} + +/////////// +// Datum // +/////////// + /// Piece of information associated with a UTxO encoded into a PlutusData type. #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "lbf", derive(Json))] @@ -38,3 +64,9 @@ impl IsPlutusData for Datum { IsPlutusData::from_plutus_data(data).map(Self) } } + +impl TryFromPLA for csl::plutus::PlutusData { + fn try_from_pla(val: &Datum) -> Result { + val.0.try_to_csl() + } +} diff --git a/plutus-ledger-api/src/v1/interval.rs b/plutus-ledger-api/src/v1/interval.rs index 4f5bbd6f..313e7e54 100644 --- a/plutus-ledger-api/src/v1/interval.rs +++ b/plutus-ledger-api/src/v1/interval.rs @@ -10,6 +10,10 @@ use num_bigint::BigInt; use serde::{Deserialize, Serialize}; use std::cmp; +////////////// +// Interval // +////////////// + /// An abstraction over `PlutusInterval`, allowing valid values only #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -223,6 +227,10 @@ where } } +//////////////////// +// PlutusInterval // +//////////////////// + /// An interval of `T`s. /// /// The interval may be either closed or open at either end, meaning @@ -283,6 +291,10 @@ where } } +//////////////// +// UpperBound // +//////////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "lbf", derive(Json))] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -329,6 +341,10 @@ where } } +//////////////// +// LowerBound // +//////////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "lbf", derive(Json))] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -375,6 +391,10 @@ where } } +////////////// +// Extended // +////////////// + /// A set extended with a positive and negative infinity. #[derive(Clone, Debug, PartialEq, Eq, Hash)] #[cfg_attr(feature = "lbf", derive(Json))] diff --git a/plutus-ledger-api/src/v1/redeemer.rs b/plutus-ledger-api/src/v1/redeemer.rs index e5b91982..35850c32 100644 --- a/plutus-ledger-api/src/v1/redeemer.rs +++ b/plutus-ledger-api/src/v1/redeemer.rs @@ -1,11 +1,20 @@ //! Types related to Plutus Redeemers -use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; -use crate::v1::crypto::LedgerBytes; + +use cardano_serialization_lib as csl; + #[cfg(feature = "lbf")] use lbr_prelude::json::Json; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; +use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; +use crate::v1::crypto::LedgerBytes; + +////////////// +// Redeemer // +////////////// + /// Piece of information attached to a transaction when redeeming a value from a validator or a /// minting policy #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] @@ -23,6 +32,31 @@ impl IsPlutusData for Redeemer { } } +#[derive(Clone, Debug)] +struct RedeemerWithExtraInfo<'a> { + redeemer: &'a Redeemer, + tag: &'a csl::plutus::RedeemerTag, + index: u64, +} + +impl TryFromPLA> for csl::plutus::Redeemer { + fn try_from_pla<'a>( + val: &RedeemerWithExtraInfo<'_>, + ) -> Result { + let Redeemer(plutus_data) = val.redeemer; + Ok(csl::plutus::Redeemer::new( + val.tag, + &val.index.try_to_csl()?, + &plutus_data.try_to_csl()?, + &csl::plutus::ExUnits::new(&csl::utils::to_bignum(0), &csl::utils::to_bignum(0)), + )) + } +} + +////////////////// +// RedeemerHash // +////////////////// + /// blake2b-256 hash of a datum #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr(feature = "lbf", derive(Json))] diff --git a/plutus-ledger-api/src/v1/script.rs b/plutus-ledger-api/src/v1/script.rs index 4b5b6122..b95c6559 100644 --- a/plutus-ledger-api/src/v1/script.rs +++ b/plutus-ledger-api/src/v1/script.rs @@ -1,11 +1,21 @@ //! Types related to Plutus scripts -use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; -use crate::v1::crypto::LedgerBytes; + +use cardano_serialization_lib as csl; + #[cfg(feature = "lbf")] use lbr_prelude::json::Json; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +use crate::csl::csl_to_pla::FromCSL; +use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; +use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; +use crate::v1::crypto::LedgerBytes; + +/////////////////// +// ValidatorHash // +/////////////////// + /// Identifier of a validator script #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -22,6 +32,16 @@ impl IsPlutusData for ValidatorHash { } } +impl FromCSL for ValidatorHash { + fn from_csl(value: &csl::crypto::ScriptHash) -> Self { + ValidatorHash(ScriptHash::from_csl(value)) + } +} + +/////////////////////// +// MintingPolicyHash // +/////////////////////// + /// Hash of a minting policy script #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -38,6 +58,22 @@ impl IsPlutusData for MintingPolicyHash { } } +impl FromCSL for MintingPolicyHash { + fn from_csl(value: &csl::PolicyID) -> Self { + MintingPolicyHash(ScriptHash(LedgerBytes(value.to_bytes()))) + } +} + +impl TryFromPLA for csl::PolicyID { + fn try_from_pla(val: &MintingPolicyHash) -> Result { + val.0.try_to_csl() + } +} + +//////////////// +// ScriptHash // +//////////////// + /// Hash of a Plutus script #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -53,3 +89,16 @@ impl IsPlutusData for ScriptHash { IsPlutusData::from_plutus_data(data).map(Self) } } + +impl FromCSL for ScriptHash { + fn from_csl(value: &csl::crypto::ScriptHash) -> Self { + ScriptHash(LedgerBytes(value.to_bytes())) + } +} + +impl TryFromPLA for csl::crypto::ScriptHash { + fn try_from_pla(val: &ScriptHash) -> Result { + csl::crypto::ScriptHash::from_bytes(val.0 .0.to_owned()) + .map_err(TryFromPLAError::CSLDeserializeError) + } +} diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index e8d7e3b4..65069e14 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -1,6 +1,13 @@ //! Types related to Cardano transactions. use std::fmt; +use cardano_serialization_lib as csl; +#[cfg(feature = "lbf")] +use lbr_prelude::json::Json; +use num_bigint::BigInt; +#[cfg(feature = "serde")] +use serde::{Deserialize, Serialize}; + use super::{ address::{Address, StakingCredential}, crypto::{LedgerBytes, PaymentPubKeyHash}, @@ -8,16 +15,22 @@ use super::{ interval::PlutusInterval, value::{CurrencySymbol, Value}, }; -use crate::plutus_data::{ - parse_constr, parse_constr_with_tag, parse_fixed_len_constr_fields, verify_constr_fields, - IsPlutusData, PlutusData, PlutusDataError, PlutusType, + +use crate::{ + csl::pla_to_csl::{TryFromPLAError, TryToCSL}, + plutus_data::{ + parse_constr, parse_constr_with_tag, parse_fixed_len_constr_fields, verify_constr_fields, + IsPlutusData, PlutusData, PlutusDataError, PlutusType, + }, }; -use crate::utils::aux::{none, singleton}; -#[cfg(feature = "lbf")] -use lbr_prelude::json::Json; -use num_bigint::BigInt; -#[cfg(feature = "serde")] -use serde::{Deserialize, Serialize}; +use crate::{ + csl::{csl_to_pla::FromCSL, pla_to_csl::TryFromPLA}, + utils::aux::{none, singleton}, +}; + +////////////////////// +// TransactionInput // +////////////////////// /// An input of a transaction /// @@ -72,6 +85,46 @@ impl IsPlutusData for TransactionInput { } } +impl FromCSL for TransactionInput { + fn from_csl(value: &csl::TransactionInput) -> Self { + TransactionInput { + transaction_id: TransactionHash::from_csl(&value.transaction_id()), + index: BigInt::from_csl(&value.index()), + } + } +} + +impl TryFromPLA for csl::TransactionInput { + fn try_from_pla(val: &TransactionInput) -> Result { + Ok(csl::TransactionInput::new( + &val.transaction_id.try_to_csl()?, + val.index.try_to_csl()?, + )) + } +} + +impl FromCSL for Vec { + fn from_csl(value: &csl::TransactionInputs) -> Self { + (0..value.len()) + .map(|idx| TransactionInput::from_csl(&value.get(idx))) + .collect() + } +} + +impl TryFromPLA> for csl::TransactionInputs { + fn try_from_pla(val: &Vec) -> Result { + val.iter() + .try_fold(csl::TransactionInputs::new(), |mut acc, input| { + acc.add(&input.try_to_csl()?); + Ok(acc) + }) + } +} + +///////////////////// +// TransactionHash // +///////////////////// + /// 32-bytes blake2b256 hash of a transaction body. /// /// Also known as Transaction ID or `TxID`. @@ -113,6 +166,23 @@ impl IsPlutusData for TransactionHash { } } +impl FromCSL for TransactionHash { + fn from_csl(value: &csl::crypto::TransactionHash) -> Self { + TransactionHash(LedgerBytes(value.to_bytes())) + } +} + +impl TryFromPLA for csl::crypto::TransactionHash { + fn try_from_pla(val: &TransactionHash) -> Result { + csl::crypto::TransactionHash::from_bytes(val.0 .0.to_owned()) + .map_err(TryFromPLAError::CSLDeserializeError) + } +} + +/////////////////////// +// TransactionOutput // +/////////////////////// + /// An output of a transaction /// /// This must include the target address, the hash of the datum attached, and the amount of output @@ -163,6 +233,10 @@ impl IsPlutusData for TransactionOutput { } } +/////////////// +// POSIXTime // +/////////////// + /// POSIX time is measured as the number of milliseconds since 1970-01-01T00:00:00Z #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -208,8 +282,16 @@ impl TryFrom for chrono::DateTime { } } +//////////////////// +// POSIXTimeRange // +//////////////////// + pub type POSIXTimeRange = PlutusInterval; +////////////// +// TxInInfo // +////////////// + /// An input of a pending transaction. #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -260,6 +342,10 @@ impl From<(TransactionInput, TransactionOutput)> for TxInInfo { } } +/////////// +// DCert // +/////////// + /// Partial representation of digests of certificates on the ledger. #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -355,6 +441,10 @@ impl IsPlutusData for DCert { } } +/////////////////// +// ScriptPurpose // +/////////////////// + /// The purpose of the script that's currently running. #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -395,6 +485,10 @@ impl IsPlutusData for ScriptPurpose { } } +///////////////////// +// TransactionInfo // +///////////////////// + /// A pending transaction as seen by validator scripts, also known as TxInfo in Plutus #[derive(Debug, PartialEq, Eq, Clone)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -451,6 +545,10 @@ impl IsPlutusData for TransactionInfo { } } +/////////////////// +// ScriptContext // +/////////////////// + /// The context that is presented to the currently-executing script. #[derive(Debug, PartialEq, Eq, Clone)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index 07ae47a6..238b6d83 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -1,10 +1,14 @@ //! Types related to Cardano values, such as Ada and native tokens. -use crate::plutus_data::{ - verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, + +use std::string::String; +use std::{ + collections::BTreeMap, + iter::Sum, + ops::{Add, Mul, Neg, Not, Sub}, }; -use crate::utils::aux::{singleton, union_btree_maps_with}; -use crate::v1::crypto::LedgerBytes; -use crate::v1::script::{MintingPolicyHash, ScriptHash}; +use std::{fmt, ops}; + +use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use lbr_prelude::json::{Error, Json, JsonType}; use num_bigint::BigInt; @@ -13,13 +17,19 @@ use num_traits::Zero; use serde::{Deserialize, Serialize}; #[cfg(feature = "lbf")] use serde_json; -use std::string::String; -use std::{ - collections::BTreeMap, - iter::Sum, - ops::{Add, Mul, Neg, Not, Sub}, + +use crate::csl::csl_to_pla::FromCSL; +use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; +use crate::plutus_data::{ + verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, }; -use std::{fmt, ops}; +use crate::utils::aux::{singleton, union_b_tree_maps_with, union_btree_maps_with}; +use crate::v1::crypto::LedgerBytes; +use crate::v1::script::{MintingPolicyHash, ScriptHash}; + +//////////////////// +// CurrencySymbol // +//////////////////// /// Identifier of a currency, which could be either Ada (or tAda), or a native token represented by /// it's minting policy hash. A currency may be associated with multiple `AssetClass`es. @@ -95,6 +105,10 @@ impl Json for CurrencySymbol { } } +/////////// +// Value // +/////////// + /// A value that can contain multiple asset classes #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, Default)] #[cfg_attr(feature = "lbf", derive(Json))] @@ -415,6 +429,152 @@ impl IsPlutusData for Value { } } +impl FromCSL for BTreeMap { + fn from_csl(value: &csl::Assets) -> Self { + let keys = value.keys(); + (0..keys.len()).fold(BTreeMap::new(), |mut acc, idx| { + let asset_name = keys.get(idx); + if let Some(quantity) = value.get(&asset_name) { + acc.insert( + TokenName::from_csl(&asset_name), + BigInt::from_csl(&quantity), + ); + } + acc + }) + } +} + +impl TryFromPLA> for csl::Assets { + fn try_from_pla(val: &BTreeMap) -> Result { + val.iter().try_fold(csl::Assets::new(), |mut acc, (k, v)| { + acc.insert(&k.try_to_csl()?, &v.try_to_csl()?); + Ok(acc) + }) + } +} + +impl FromCSL for Value { + fn from_csl(value: &csl::MultiAsset) -> Self { + let keys = value.keys(); + Value((0..keys.len()).fold(BTreeMap::new(), |mut acc, idx| { + let script_hash = keys.get(idx); + if let Some(assets) = value.get(&script_hash) { + let assets = BTreeMap::from_csl(&assets); + acc.insert( + CurrencySymbol::NativeToken(MintingPolicyHash::from_csl(&script_hash)), + assets, + ); + } + acc + })) + } +} + +impl FromCSL for Value { + fn from_csl(value: &csl::utils::Value) -> Self { + let lovelaces = BigInt::from_csl(&value.coin()); + let mut pla_value = Value::ada_value(&lovelaces); + if let Some(multi_asset) = value.multiasset() { + pla_value = &pla_value + &Value::from_csl(&multi_asset) + } + pla_value + } +} + +impl TryFromPLA for csl::utils::Value { + fn try_from_pla(val: &Value) -> Result { + let coin: csl::utils::Coin = val + .0 + .get(&CurrencySymbol::Ada) + .and_then(|m| m.get(&TokenName::ada())) + .map_or(Ok(csl::utils::BigNum::zero()), TryToCSL::try_to_csl)?; + + let m_ass = val + .0 + .iter() + .filter_map(|(cs, tn_map)| match &cs { + CurrencySymbol::Ada => None, + CurrencySymbol::NativeToken(h) => Some((h, tn_map)), + }) + .try_fold(csl::MultiAsset::new(), |mut acc, (cs, ass)| { + acc.insert(&cs.try_to_csl()?, &ass.try_to_csl()?); + Ok(acc) + })?; + + let mut v = csl::utils::Value::new(&coin); + + v.set_multiasset(&m_ass); + + Ok(v) + } +} + +impl FromCSL for BTreeMap { + fn from_csl(m_ass: &csl::MintAssets) -> Self { + let keys = m_ass.keys(); + (0..keys.len()) + .map(|idx| { + let key = keys.get(idx); + let value = m_ass.get(&key).unwrap(); + (TokenName::from_csl(&key), BigInt::from_csl(&value)) + }) + .collect() + } +} + +impl FromCSL for BTreeMap { + fn from_csl(value: &csl::MintsAssets) -> Self { + let mut m_ass_vec = Vec::new(); + + // This is so stupid. `MintsAssets` doesn't have a `len` method for some reason. + for idx in 0.. { + if let Some(m_ass) = value.get(idx) { + m_ass_vec.push(m_ass); + } else { + break; + } + } + + m_ass_vec.into_iter().fold(BTreeMap::new(), |acc, m| { + let ass = BTreeMap::from_csl(&m); + union_b_tree_maps_with(|l, r| l + r, [&acc, &ass]) + }) + } +} + +impl TryFromPLA> for csl::MintAssets { + fn try_from_pla(val: &BTreeMap) -> Result { + val.iter() + .try_fold(csl::MintAssets::new(), |mut acc, (k, v)| { + acc.insert(&k.try_to_csl()?, v.try_to_csl()?); + Ok(acc) + }) + } +} + +impl FromCSL for Value { + fn from_csl(mint: &csl::Mint) -> Self { + let keys = mint.keys(); + Value( + (0..keys.len()) + .map(|idx| { + let sh = keys.get(idx); + let ass = mint.get_all(&sh).unwrap_or(csl::MintsAssets::new()); + ( + CurrencySymbol::NativeToken(MintingPolicyHash::from_csl(&sh)), + BTreeMap::from_csl(&ass), + ) + }) + .collect::>>(), + ) + } +} + +/////////////// +// TokenName // +/////////////// + /// Name of a token. This can be any arbitrary bytearray #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -468,6 +628,22 @@ impl fmt::Display for TokenName { } } +impl FromCSL for TokenName { + fn from_csl(value: &csl::AssetName) -> Self { + TokenName(LedgerBytes(value.name())) + } +} + +impl TryFromPLA for csl::AssetName { + fn try_from_pla(val: &TokenName) -> Result { + csl::AssetName::new(val.0 .0.to_owned()).map_err(TryFromPLAError::CSLJsError) + } +} + +//////////////// +// AssetClass // +//////////////// + /// AssetClass is uniquely identifying a specific asset #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] diff --git a/plutus-ledger-api/src/v2/datum.rs b/plutus-ledger-api/src/v2/datum.rs index 41af4d30..8b375d17 100644 --- a/plutus-ledger-api/src/v2/datum.rs +++ b/plutus-ledger-api/src/v2/datum.rs @@ -1,8 +1,6 @@ //! Types related to Plutus Datums -use crate::plutus_data::{ - verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, -}; -pub use crate::v1::datum::{Datum, DatumHash}; + +use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use lbr_prelude::json::{self, Error, Json}; use num_bigint::BigInt; @@ -10,6 +8,19 @@ use num_bigint::BigInt; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +pub use crate::v1::datum::{Datum, DatumHash}; +use crate::{ + csl::{ + csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}, + pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}, + }, + plutus_data::{verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType}, +}; + +///////////////// +// OutputDatum // +///////////////// + /// Optional datum of a transaction /// /// In case an inline datum is used, the data is embedded inside the transaction body, so it can be @@ -125,3 +136,29 @@ impl Json for OutputDatum { ) } } + +impl TryFromCSL for OutputDatum { + fn try_from_csl(value: &csl::OutputDatum) -> Result { + Ok(if let Some(d) = value.data() { + OutputDatum::InlineDatum(Datum(d.try_to_pla()?)) + } else if let Some(h) = value.data_hash() { + OutputDatum::DatumHash(DatumHash::from_csl(&h)) + } else { + OutputDatum::None + }) + } +} + +impl TryFromPLA for Option { + fn try_from_pla( + pla_output_datum: &OutputDatum, + ) -> Result, TryFromPLAError> { + Ok(match pla_output_datum { + OutputDatum::None => None, + OutputDatum::InlineDatum(Datum(d)) => { + Some(csl::OutputDatum::new_data(&d.try_to_csl()?)) + } + OutputDatum::DatumHash(dh) => Some(csl::OutputDatum::new_data_hash(&dh.try_to_csl()?)), + }) + } +} diff --git a/plutus-ledger-api/src/v2/transaction.rs b/plutus-ledger-api/src/v2/transaction.rs index 6dc3d436..dea6a3ea 100644 --- a/plutus-ledger-api/src/v2/transaction.rs +++ b/plutus-ledger-api/src/v2/transaction.rs @@ -1,4 +1,16 @@ //! Types related to Cardano transactions. + +use std::collections::BTreeMap; + +use cardano_serialization_lib as csl; +#[cfg(feature = "lbf")] +use lbr_prelude::json::Json; +use num_bigint::BigInt; +#[cfg(feature = "serde")] +use serde::{Deserialize, Serialize}; + +use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; +use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; use crate::plutus_data::{parse_constr_with_tag, parse_fixed_len_constr_fields}; use crate::plutus_data::{ verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, @@ -8,15 +20,10 @@ pub use crate::v1::transaction::POSIXTimeConversionError; pub use crate::v1::transaction::{ DCert, POSIXTime, POSIXTimeRange, ScriptPurpose, TransactionHash, TransactionInput, }; -#[cfg(feature = "lbf")] -use lbr_prelude::json::Json; -use num_bigint::BigInt; - -#[cfg(feature = "serde")] -use serde::{Deserialize, Serialize}; +use super::address::AddressWithExtraInfo; use super::{ - address::{Address, StakingCredential}, + address::{Address, RewardAddressWithExtraInfo, StakingCredential}, assoc_map::AssocMap, crypto::PaymentPubKeyHash, datum::{Datum, DatumHash, OutputDatum}, @@ -25,6 +32,10 @@ use super::{ value::Value, }; +/////////////////////// +// TransactionOutput // +/////////////////////// + /// An output of a transaction /// /// This must include the target address, an optional datum, an optional reference script, and the @@ -78,6 +89,121 @@ impl IsPlutusData for TransactionOutput { } } +impl TryFromCSL for TransactionOutput { + fn try_from_csl(value: &csl::TransactionOutput) -> Result { + Ok(TransactionOutput { + address: value.address().try_to_pla()?, + datum: if value.has_data_hash() { + OutputDatum::DatumHash(DatumHash::from_csl(&value.data_hash().unwrap())) + } else if value.has_plutus_data() { + OutputDatum::InlineDatum(Datum(value.plutus_data().unwrap().try_to_pla()?)) + } else { + OutputDatum::None + }, + reference_script: if value.has_script_ref() { + let script_ref = value.script_ref().unwrap(); + let script_hash = if script_ref.is_native_script() { + script_ref.native_script().unwrap().hash() + } else { + script_ref.plutus_script().unwrap().hash() + }; + Some(ScriptHash::from_csl(&script_hash)) + } else { + None + }, + value: Value::from_csl(&value.amount()), + }) + } +} + +impl TryFromCSL for Vec { + fn try_from_csl(value: &csl::TransactionOutputs) -> Result { + (0..value.len()) + .map(|idx| TransactionOutput::try_from_csl(&value.get(idx))) + .collect() + } +} + +#[derive(Clone, Debug)] +pub struct TransactionOutputWithExtraInfo<'a> { + pub transaction_output: &'a TransactionOutput, + pub scripts: &'a BTreeMap, + pub network_id: u8, + pub data_cost: &'a csl::DataCost, +} + +impl TryFromPLA> for csl::TransactionOutput { + fn try_from_pla(val: &TransactionOutputWithExtraInfo<'_>) -> Result { + let mut output_builder = csl::output_builder::TransactionOutputBuilder::new().with_address( + &AddressWithExtraInfo { + address: &val.transaction_output.address, + network_tag: val.network_id, + } + .try_to_csl()?, + ); + + output_builder = match &val.transaction_output.datum { + OutputDatum::None => output_builder, + OutputDatum::InlineDatum(Datum(d)) => output_builder.with_plutus_data(&d.try_to_csl()?), + OutputDatum::DatumHash(dh) => output_builder.with_data_hash(&dh.try_to_csl()?), + }; + + let script_ref = val + .transaction_output + .reference_script + .clone() + .map(|script_hash| -> Result<_, TryFromPLAError> { + let script = val + .scripts + .get(&script_hash) + .ok_or(TryFromPLAError::MissingScript(script_hash))?; + Ok(csl::ScriptRef::new_plutus_script(script)) + }) + .transpose()?; + + if let Some(script_ref) = &script_ref { + output_builder = output_builder.with_script_ref(script_ref); + }; + + let value_without_min_utxo = val.transaction_output.value.try_to_csl()?; + + let mut calc = csl::utils::MinOutputAdaCalculator::new_empty(val.data_cost) + .map_err(TryFromPLAError::CSLJsError)?; + calc.set_amount(&value_without_min_utxo); + match &val.transaction_output.datum { + OutputDatum::None => {} + OutputDatum::InlineDatum(Datum(d)) => { + calc.set_plutus_data(&d.try_to_csl()?); + } + OutputDatum::DatumHash(dh) => { + calc.set_data_hash(&dh.try_to_csl()?); + } + }; + if let Some(script_ref) = script_ref { + calc.set_script_ref(&script_ref); + } + + let required_coin = calc.calculate_ada().map_err(TryFromPLAError::CSLJsError)?; + let coin = std::cmp::max(value_without_min_utxo.coin(), required_coin); + + let value = match value_without_min_utxo.multiasset() { + Some(multiasset) => csl::utils::Value::new_with_assets(&coin, &multiasset), + None => csl::utils::Value::new(&coin), + }; + + output_builder + .next() + .map_err(TryFromPLAError::CSLJsError)? + .with_value(&value) + .build() + .map_err(TryFromPLAError::CSLJsError) + } +} + +////////////// +// TxInInfo // +////////////// + /// An input of a pending transaction. #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -128,6 +254,10 @@ impl IsPlutusData for TxInInfo { } } +///////////////////// +// TransactionInfo // +///////////////////// + /// A pending transaction as seen by validator scripts, also known as TxInfo in Plutus #[derive(Debug, PartialEq, Eq, Clone)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -190,6 +320,35 @@ impl IsPlutusData for TransactionInfo { } } +#[derive(Clone, Debug)] +pub struct WithdrawalsWithExtraInfo<'a> { + withdrawals: &'a AssocMap, + network_tag: u8, +} + +impl TryFromPLA> for csl::Withdrawals { + fn try_from_pla(val: &WithdrawalsWithExtraInfo<'_>) -> Result { + val.withdrawals + .0 + .iter() + .try_fold(csl::Withdrawals::new(), |mut acc, (s, q)| { + acc.insert( + &RewardAddressWithExtraInfo { + staking_credential: s, + network_tag: val.network_tag, + } + .try_to_csl()?, + &q.try_to_csl()?, + ); + Ok(acc) + }) + } +} + +/////////////////// +// ScriptContext // +/////////////////// + /// The context that is presented to the currently-executing script. #[derive(Debug, PartialEq, Eq, Clone)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] From c60e631ff331e65d90ccc1a2e2d9fbfb5747b028 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Fri, 4 Oct 2024 12:24:21 +0200 Subject: [PATCH 09/94] Apply clippy suggestions --- .../src/generators/correct/primitive.rs | 2 +- plutus-ledger-api/src/plutus_data.rs | 44 +++++++++---------- plutus-ledger-api/src/v1/address.rs | 18 ++++---- plutus-ledger-api/src/v1/assoc_map.rs | 16 +++---- plutus-ledger-api/src/v1/interval.rs | 12 ++--- plutus-ledger-api/src/v1/transaction.rs | 14 +++--- plutus-ledger-api/src/v1/value.rs | 13 +++--- plutus-ledger-api/src/v2/datum.rs | 14 +++--- plutus-ledger-api/src/v2/transaction.rs | 4 +- 9 files changed, 65 insertions(+), 72 deletions(-) diff --git a/plutus-ledger-api/src/generators/correct/primitive.rs b/plutus-ledger-api/src/generators/correct/primitive.rs index 82603133..6e6e6c7d 100644 --- a/plutus-ledger-api/src/generators/correct/primitive.rs +++ b/plutus-ledger-api/src/generators/correct/primitive.rs @@ -51,7 +51,7 @@ pub fn arb_natural(n: usize) -> impl Strategy { /// Helper function to generate a well typed arbitrary natural number /// Generating `n` vectors of random u32 values, which gives a max bound of u32::MAX ^ n fn arb_biguint(n: usize) -> impl Strategy { - vec(any::(), n).prop_map(|value| BigUint::new(value)) + vec(any::(), n).prop_map(BigUint::new) } /// Strategy to generate an arbitrary character diff --git a/plutus-ledger-api/src/plutus_data.rs b/plutus-ledger-api/src/plutus_data.rs index 0d624af7..8be6ac29 100644 --- a/plutus-ledger-api/src/plutus_data.rs +++ b/plutus-ledger-api/src/plutus_data.rs @@ -175,10 +175,10 @@ pub fn case_plutus_data<'a, T>( pd: &'a PlutusData, ) -> T { match pd { - PlutusData::Constr(tag, args) => ctor_case(&tag)(&args), - PlutusData::List(args) => list_case(&args), - PlutusData::Integer(i) => int_case(&i), - other => other_case(&other), + PlutusData::Constr(tag, args) => ctor_case(tag)(args), + PlutusData::List(args) => list_case(args), + PlutusData::Integer(i) => int_case(i), + other => other_case(other), } } @@ -252,11 +252,11 @@ impl IsPlutusData for bool { match plutus_data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 0)?; + verify_constr_fields(fields, 0)?; Ok(false) } Ok(1) => { - verify_constr_fields(&fields, 0)?; + verify_constr_fields(fields, 0)?; Ok(true) } _ => Err(PlutusDataError::UnexpectedPlutusInvariant { @@ -346,11 +346,11 @@ where match plutus_data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(Some(T::from_plutus_data(&fields[0])?)) } Ok(1) => { - verify_constr_fields(&fields, 0)?; + verify_constr_fields(fields, 0)?; Ok(None) } _ => Err(PlutusDataError::UnexpectedPlutusInvariant { @@ -383,11 +383,11 @@ where match plutus_data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(Err(E::from_plutus_data(&fields[0])?)) } Ok(1) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(Ok(T::from_plutus_data(&fields[0])?)) } _ => Err(PlutusDataError::UnexpectedPlutusInvariant { @@ -447,7 +447,7 @@ where fn from_plutus_data(plutus_data: &PlutusData) -> Result { match plutus_data { PlutusData::List(vec) => vec - .into_iter() + .iter() .map(|val| T::from_plutus_data(val)) .collect::>(), _ => Err(PlutusDataError::UnexpectedPlutusType { @@ -475,7 +475,7 @@ where fn from_plutus_data(plutus_data: &PlutusData) -> Result { match plutus_data { PlutusData::Map(dict) => dict - .into_iter() + .iter() .map(|(key, val)| Ok((K::from_plutus_data(key)?, V::from_plutus_data(val)?))) .collect::>(), _ => Err(PlutusDataError::UnexpectedPlutusType { @@ -495,7 +495,7 @@ impl IsPlutusData for () { match plutus_data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 0)?; + verify_constr_fields(fields, 0)?; Ok(()) } _ => Err(PlutusDataError::UnexpectedPlutusInvariant { @@ -538,7 +538,7 @@ where match plutus_data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 2)?; + verify_constr_fields(fields, 2)?; Ok(( A::from_plutus_data(&fields[0])?, B::from_plutus_data(&fields[1])?, @@ -653,9 +653,9 @@ pub fn verify_constr_fields( /// Given a vector of PlutusData, parse it as an array whose length is known at /// compile time. -pub fn parse_fixed_len_constr_fields<'a, const LEN: usize>( - v: &'a [PlutusData], -) -> Result<&'a [PlutusData; LEN], PlutusDataError> { +pub fn parse_fixed_len_constr_fields( + v: &[PlutusData], +) -> Result<&[PlutusData; LEN], PlutusDataError> { v.try_into() .map_err(|_| PlutusDataError::UnexpectedListLength { got: v.len(), @@ -665,9 +665,7 @@ pub fn parse_fixed_len_constr_fields<'a, const LEN: usize>( /// Given a PlutusData, parse it as PlutusData::Constr and its tag as u32. Return /// the u32 tag and fields. -pub fn parse_constr<'a>( - data: &'a PlutusData, -) -> Result<(u32, &'a Vec), PlutusDataError> { +pub fn parse_constr(data: &PlutusData) -> Result<(u32, &Vec), PlutusDataError> { match data { PlutusData::Constr(tag, fields) => u32::try_from(tag) .map_err(|err| PlutusDataError::UnexpectedPlutusInvariant { @@ -683,10 +681,10 @@ pub fn parse_constr<'a>( } /// Given a PlutusData, parse it as PlutusData::Constr and verify its tag. -pub fn parse_constr_with_tag<'a>( - data: &'a PlutusData, +pub fn parse_constr_with_tag( + data: &PlutusData, expected_tag: u32, -) -> Result<&'a Vec, PlutusDataError> { +) -> Result<&Vec, PlutusDataError> { let (tag, fields) = parse_constr(data)?; if tag != expected_tag { diff --git a/plutus-ledger-api/src/v1/address.rs b/plutus-ledger-api/src/v1/address.rs index 7f2c0c6f..c25254ea 100644 --- a/plutus-ledger-api/src/v1/address.rs +++ b/plutus-ledger-api/src/v1/address.rs @@ -186,13 +186,13 @@ impl IsPlutusData for Credential { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(Credential::PubKey(Ed25519PubKeyHash::from_plutus_data( &fields[0], )?)) } Ok(1) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(Credential::Script(ValidatorHash::from_plutus_data( &fields[0], )?)) @@ -216,10 +216,10 @@ impl Json for Credential { fn to_json(&self) -> serde_json::Value { match self { Credential::PubKey(pkh) => { - json::json_constructor("PubKeyCredential", &vec![pkh.to_json()]) + json::json_constructor("PubKeyCredential", vec![pkh.to_json()]) } Credential::Script(val_hash) => { - json::json_constructor("ScriptCredential", &vec![val_hash.to_json()]) + json::json_constructor("ScriptCredential", vec![val_hash.to_json()]) } } } @@ -319,13 +319,13 @@ impl IsPlutusData for StakingCredential { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(StakingCredential::Hash(Credential::from_plutus_data( &fields[0], )?)) } Ok(1) => { - verify_constr_fields(&fields, 3)?; + verify_constr_fields(fields, 3)?; Ok(StakingCredential::Pointer(ChainPointer { slot_number: Slot::from_plutus_data(&fields[0])?, transaction_index: TransactionIndex::from_plutus_data(&fields[1])?, @@ -351,10 +351,10 @@ impl Json for StakingCredential { fn to_json(&self) -> serde_json::Value { match self { StakingCredential::Hash(pkh) => { - json::json_constructor("StakingHash", &vec![pkh.to_json()]) + json::json_constructor("StakingHash", vec![pkh.to_json()]) } StakingCredential::Pointer(val_hash) => { - json::json_constructor("StakingPtr", &vec![val_hash.to_json()]) + json::json_constructor("StakingPtr", vec![val_hash.to_json()]) } } } @@ -377,7 +377,7 @@ impl Json for StakingCredential { ( "StakingPtr", Box::new(|ctor_fields| match &ctor_fields[..] { - [val_hash] => Ok(StakingCredential::Pointer(Json::from_json(&val_hash)?)), + [val_hash] => Ok(StakingCredential::Pointer(Json::from_json(val_hash)?)), _ => Err(Error::UnexpectedArrayLength { wanted: 1, got: ctor_fields.len(), diff --git a/plutus-ledger-api/src/v1/assoc_map.rs b/plutus-ledger-api/src/v1/assoc_map.rs index 54fed542..15760dd8 100644 --- a/plutus-ledger-api/src/v1/assoc_map.rs +++ b/plutus-ledger-api/src/v1/assoc_map.rs @@ -12,7 +12,7 @@ use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError, PlutusType}; // AssocMap // ////////////// -#[derive(Debug, PartialEq, Eq, Clone)] +#[derive(Debug, PartialEq, Eq, Clone, Default)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub struct AssocMap(pub Vec<(K, V)>); @@ -30,9 +30,7 @@ impl AssocMap { where K: PartialEq, { - let vec = &mut self.0; - - let old_value = vec.into_iter().find(|(k, _v)| k == &key); + let old_value = self.0.iter_mut().find(|(k, _v)| k == &key); match old_value { None => { self.0.push((key, value)); @@ -72,8 +70,8 @@ impl AssocMap { impl IsPlutusData for AssocMap { fn to_plutus_data(&self) -> PlutusData { PlutusData::Map( - (&self.0) - .into_iter() + self.0 + .iter() .map(|(k, v)| (k.to_plutus_data(), v.to_plutus_data())) .collect(), ) @@ -82,7 +80,7 @@ impl IsPlutusData for AssocMap { fn from_plutus_data(plutus_data: &PlutusData) -> Result { match plutus_data { PlutusData::Map(pairs) => pairs - .into_iter() + .iter() .map(|(k, v)| Ok((K::from_plutus_data(k)?, V::from_plutus_data(v)?))) .collect::, PlutusDataError>>() .map(Self), @@ -128,8 +126,8 @@ impl From> for AssocMap { impl Json for AssocMap { fn to_json(&self) -> serde_json::Value { json_array( - (&self.0) - .into_iter() + self.0 + .iter() .map(|(k, v)| json_array(vec![k.to_json(), v.to_json()])) .collect(), ) diff --git a/plutus-ledger-api/src/v1/interval.rs b/plutus-ledger-api/src/v1/interval.rs index 313e7e54..399e64a1 100644 --- a/plutus-ledger-api/src/v1/interval.rs +++ b/plutus-ledger-api/src/v1/interval.rs @@ -271,7 +271,7 @@ where match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 2)?; + verify_constr_fields(fields, 2)?; Ok(PlutusInterval { from: >::from_plutus_data(&fields[0])?, to: >::from_plutus_data(&fields[1])?, @@ -321,7 +321,7 @@ where match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 2)?; + verify_constr_fields(fields, 2)?; Ok(UpperBound { bound: >::from_plutus_data(&fields[0])?, closed: bool::from_plutus_data(&fields[1])?, @@ -371,7 +371,7 @@ where match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 2)?; + verify_constr_fields(fields, 2)?; Ok(LowerBound { bound: >::from_plutus_data(&fields[0])?, closed: bool::from_plutus_data(&fields[1])?, @@ -468,17 +468,17 @@ where match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 0)?; + verify_constr_fields(fields, 0)?; Ok(Extended::NegInf) } Ok(1) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(Extended::Finite(IsPlutusData::from_plutus_data( &fields[0], )?)) } Ok(2) => { - verify_constr_fields(&fields, 0)?; + verify_constr_fields(fields, 0)?; Ok(Extended::PosInf) } _ => Err(PlutusDataError::UnexpectedPlutusInvariant { diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index 65069e14..ef2506cf 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -65,7 +65,7 @@ impl IsPlutusData for TransactionInput { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 2)?; + verify_constr_fields(fields, 2)?; Ok(TransactionInput { transaction_id: TransactionHash::from_plutus_data(&fields[0])?, index: BigInt::from_plutus_data(&fields[1])?, @@ -149,7 +149,7 @@ impl IsPlutusData for TransactionHash { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(TransactionHash(IsPlutusData::from_plutus_data(&fields[0])?)) } _ => Err(PlutusDataError::UnexpectedPlutusInvariant { @@ -212,7 +212,7 @@ impl IsPlutusData for TransactionOutput { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 3)?; + verify_constr_fields(fields, 3)?; Ok(TransactionOutput { address: Address::from_plutus_data(&fields[0])?, value: Value::from_plutus_data(&fields[1])?, @@ -275,10 +275,10 @@ impl TryFrom for chrono::DateTime { fn try_from(posix_time: POSIXTime) -> Result, Self::Error> { let POSIXTime(millis) = posix_time; - Ok(chrono::DateTime::from_timestamp_millis( + chrono::DateTime::from_timestamp_millis( ::try_from(millis).map_err(POSIXTimeConversionError::TryFromBigIntError)?, ) - .ok_or(POSIXTimeConversionError::OutOfBoundsError)?) + .ok_or(POSIXTimeConversionError::OutOfBoundsError) } } @@ -316,7 +316,7 @@ impl IsPlutusData for TxInInfo { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 2)?; + verify_constr_fields(fields, 2)?; Ok(TxInInfo { reference: TransactionInput::from_plutus_data(&fields[0])?, output: TransactionOutput::from_plutus_data(&fields[1])?, @@ -479,7 +479,7 @@ impl IsPlutusData for ScriptPurpose { 3 => IsPlutusData::from_plutus_data(field).map(Self::Certifying), bad_tag => Err(PlutusDataError::UnexpectedPlutusInvariant { got: bad_tag.to_string(), - wanted: format!("Constr tag to be 0, 1, 2 or 3"), + wanted: "Constr tag to be 0, 1, 2 or 3".to_string(), }), } } diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index 238b6d83..e007ef99 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -160,7 +160,7 @@ mod value_serde { } } - impl<'de, 'a> Deserialize<'de> for Assets { + impl<'de> Deserialize<'de> for Assets { fn deserialize(deserializer: D) -> Result where D: Deserializer<'de>, @@ -391,15 +391,12 @@ impl Mul<&BigInt> for &Value { fn mul(self, rhs: &BigInt) -> Self::Output { Value( - (&self.0) - .into_iter() + self.0 + .iter() .map(|(cs, tn_map)| { ( cs.clone(), - tn_map - .into_iter() - .map(|(tn, q)| (tn.clone(), q * rhs)) - .collect(), + tn_map.iter().map(|(tn, q)| (tn.clone(), q * rhs)).collect(), ) }) .collect(), @@ -678,7 +675,7 @@ impl IsPlutusData for AssetClass { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 2)?; + verify_constr_fields(fields, 2)?; Ok(AssetClass { currency_symbol: CurrencySymbol::from_plutus_data(&fields[0])?, token_name: TokenName::from_plutus_data(&fields[1])?, diff --git a/plutus-ledger-api/src/v2/datum.rs b/plutus-ledger-api/src/v2/datum.rs index 8b375d17..a870811e 100644 --- a/plutus-ledger-api/src/v2/datum.rs +++ b/plutus-ledger-api/src/v2/datum.rs @@ -51,17 +51,17 @@ impl IsPlutusData for OutputDatum { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 0)?; + verify_constr_fields(fields, 0)?; Ok(OutputDatum::None) } Ok(1) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(OutputDatum::DatumHash(DatumHash::from_plutus_data( &fields[0], )?)) } Ok(2) => { - verify_constr_fields(&fields, 1)?; + verify_constr_fields(fields, 1)?; Ok(OutputDatum::InlineDatum(Datum::from_plutus_data( &fields[0], )?)) @@ -84,12 +84,12 @@ impl IsPlutusData for OutputDatum { impl Json for OutputDatum { fn to_json(&self) -> serde_json::Value { match self { - OutputDatum::None => json::json_constructor("NoOutputDatum", &Vec::with_capacity(0)), + OutputDatum::None => json::json_constructor("NoOutputDatum", Vec::with_capacity(0)), OutputDatum::DatumHash(dat_hash) => { - json::json_constructor("OutputDatumHash", &vec![dat_hash.to_json()]) + json::json_constructor("OutputDatumHash", vec![dat_hash.to_json()]) } OutputDatum::InlineDatum(datum) => { - json::json_constructor("OutputDatum", &vec![datum.to_json()]) + json::json_constructor("OutputDatum", vec![datum.to_json()]) } } } @@ -112,7 +112,7 @@ impl Json for OutputDatum { ( "OutputDatumHash", Box::new(|ctor_fields| match &ctor_fields[..] { - [dat_hash] => Ok(OutputDatum::DatumHash(Json::from_json(&dat_hash)?)), + [dat_hash] => Ok(OutputDatum::DatumHash(Json::from_json(dat_hash)?)), _ => Err(Error::UnexpectedArrayLength { wanted: 1, got: ctor_fields.len(), diff --git a/plutus-ledger-api/src/v2/transaction.rs b/plutus-ledger-api/src/v2/transaction.rs index dea6a3ea..096f0a60 100644 --- a/plutus-ledger-api/src/v2/transaction.rs +++ b/plutus-ledger-api/src/v2/transaction.rs @@ -67,7 +67,7 @@ impl IsPlutusData for TransactionOutput { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 4)?; + verify_constr_fields(fields, 4)?; Ok(TransactionOutput { address: Address::from_plutus_data(&fields[0])?, value: Value::from_plutus_data(&fields[1])?, @@ -234,7 +234,7 @@ impl IsPlutusData for TxInInfo { match data { PlutusData::Constr(flag, fields) => match u32::try_from(flag) { Ok(0) => { - verify_constr_fields(&fields, 2)?; + verify_constr_fields(fields, 2)?; Ok(TxInInfo { reference: TransactionInput::from_plutus_data(&fields[0])?, output: TransactionOutput::from_plutus_data(&fields[1])?, From 7864eb2bddfb07383b55d33bc700e523fe472f40 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Fri, 4 Oct 2024 12:46:42 +0200 Subject: [PATCH 10/94] Update csl --- plutus-ledger-api/Cargo.lock | 367 ++++++++++++++++-------- plutus-ledger-api/Cargo.toml | 2 +- plutus-ledger-api/src/csl/csl_to_pla.rs | 24 +- plutus-ledger-api/src/csl/pla_to_csl.rs | 24 +- plutus-ledger-api/src/plutus_data.rs | 75 ++--- plutus-ledger-api/src/v1/address.rs | 81 +++--- plutus-ledger-api/src/v1/crypto.rs | 8 +- plutus-ledger-api/src/v1/datum.rs | 11 +- plutus-ledger-api/src/v1/redeemer.rs | 18 +- plutus-ledger-api/src/v1/script.rs | 12 +- plutus-ledger-api/src/v1/transaction.rs | 8 +- plutus-ledger-api/src/v1/value.rs | 17 +- plutus-ledger-api/src/v2/transaction.rs | 14 +- 13 files changed, 395 insertions(+), 266 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index f0147b82..30548b3a 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -2,6 +2,18 @@ # It is not intended for manual editing. version = 3 +[[package]] +name = "ahash" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +dependencies = [ + "cfg-if", + "once_cell", + "version_check", + "zerocopy", +] + [[package]] name = "android-tzdata" version = "0.1.1" @@ -19,15 +31,15 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.86" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" +checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" [[package]] name = "autocfg" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "bech32" @@ -58,9 +70,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" [[package]] name = "block-buffer" @@ -77,11 +89,17 @@ version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + [[package]] name = "cardano-serialization-lib" -version = "11.5.0" +version = "12.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c3fab2c10aa73dae6ea90ed459ef07ed7acb09270ea90d9a37fa00420b9c25c" +checksum = "abfd14f5a2250d86a3c673a70c49851c21207ee8537f9f11b3dba9cc67095ef7" dependencies = [ "bech32", "cbor_event", @@ -91,13 +109,16 @@ dependencies = [ "digest", "ed25519-bip32", "getrandom", + "hashlink", "hex", "itertools", "js-sys", - "linked-hash-map", "noop_proc_macro", + "num", "num-bigint", + "num-derive", "num-integer", + "num-traits", "rand", "rand_os", "schemars", @@ -116,9 +137,12 @@ checksum = "089a0261d1bc59e54e8e11860031efd88593f0e61b921172c474f1f38c2f2d3c" [[package]] name = "cc" -version = "1.0.99" +version = "1.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695" +checksum = "812acba72f0a070b003d3697490d2b55b837230ae7c6c6497f05cc2ddbb8d938" +dependencies = [ + "shlex", +] [[package]] name = "cfg-if" @@ -160,9 +184,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" @@ -240,14 +264,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" dependencies = [ "libc", - "windows-sys", + "windows-sys 0.52.0", ] [[package]] name = "fastrand" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "fnv" @@ -302,7 +326,7 @@ dependencies = [ "serde", "serde_json", "upon", - "yansi 1.0.1", + "yansi", ] [[package]] @@ -310,6 +334,24 @@ name = "hashbrown" version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +dependencies = [ + "ahash", +] + +[[package]] +name = "hashbrown" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" + +[[package]] +name = "hashlink" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" +dependencies = [ + "hashbrown 0.14.5", +] [[package]] name = "hex" @@ -348,12 +390,12 @@ checksum = "90f97a5f38dd3ccfbe7aa80f4a0c00930f21b922c74195be0201c51028f22dcf" [[package]] name = "indexmap" -version = "2.2.6" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", - "hashbrown", + "hashbrown 0.15.0", ] [[package]] @@ -382,15 +424,15 @@ dependencies = [ [[package]] name = "lazy_static" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "lbr-prelude" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a2367a6b351bdc4e6df1989e5d2a276e8ae8e54d15dcbff6dfd21b5ff45096b" +checksum = "21471892874c4667636a067ed7a158b9691178988a4c5988585e1010e9b5817d" dependencies = [ "data-encoding", "lbr-prelude-derive", @@ -415,9 +457,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.155" +version = "0.2.159" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" +checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" [[package]] name = "libm" @@ -439,9 +481,9 @@ checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "log" -version = "0.4.21" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" [[package]] name = "memchr" @@ -455,17 +497,51 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8" +[[package]] +name = "num" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" +dependencies = [ + "num-bigint", + "num-complex", + "num-integer", + "num-iter", + "num-rational", + "num-traits", +] + [[package]] name = "num-bigint" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c165a9ab64cf766f73521c0dd2cfdff64f488b8f0b3e621face3462d3db536d7" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" dependencies = [ "num-integer", "num-traits", "serde", ] +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "num-integer" version = "0.1.46" @@ -475,6 +551,28 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-iter" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits", +] + [[package]] name = "num-traits" version = "0.2.19" @@ -487,9 +585,12 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.19.0" +version = "1.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "82881c4be219ab5faaf2ad5e5e5ecdff8c66bd7402ca3160975c93b24961afd1" +dependencies = [ + "portable-atomic", +] [[package]] name = "opaque-debug" @@ -518,20 +619,29 @@ dependencies = [ "true", ] +[[package]] +name = "portable-atomic" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" + [[package]] name = "ppv-lite86" -version = "0.2.17" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] [[package]] name = "pretty_assertions" -version = "1.4.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66" +checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" dependencies = [ "diff", - "yansi 0.5.1", + "yansi", ] [[package]] @@ -545,13 +655,13 @@ dependencies = [ [[package]] name = "proptest" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.5.0", + "bitflags 2.6.0", "lazy_static", "num-traits", "rand", @@ -571,9 +681,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.36" +version = "1.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" dependencies = [ "proc-macro2", ] @@ -658,21 +768,21 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.4" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rustix" -version = "0.38.34" +version = "0.38.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" +checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "errno", "libc", "linux-raw-sys", - "windows-sys", + "windows-sys 0.52.0", ] [[package]] @@ -719,9 +829,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.203" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" dependencies = [ "serde_derive", ] @@ -739,9 +849,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.203" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", @@ -773,9 +883,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.6" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0" +checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" dependencies = [ "serde", ] @@ -793,11 +903,17 @@ dependencies = [ "opaque-debug", ] +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + [[package]] name = "syn" -version = "2.0.67" +version = "2.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff8655ed1d86f3af4ee3fd3263786bc14245ad17c4c7e85ba7187fb3ae028c90" +checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" dependencies = [ "proc-macro2", "quote", @@ -806,14 +922,15 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.10.1" +version = "3.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" +checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" dependencies = [ "cfg-if", "fastrand", + "once_cell", "rustix", - "windows-sys", + "windows-sys 0.59.0", ] [[package]] @@ -827,18 +944,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.61" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" +checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.61" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" +checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" dependencies = [ "proc-macro2", "quote", @@ -847,9 +964,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.14" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f49eb2ab21d2f26bd6db7bf383edc527a7ebaee412d17af4d40fdccd442f335" +checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" dependencies = [ "serde", "serde_spanned", @@ -859,18 +976,18 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.6" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" dependencies = [ "serde", ] [[package]] name = "toml_edit" -version = "0.22.14" +version = "0.22.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f21c7aaf97f1bd9ca9d4f9e73b0a6c74bd5afef56f2bc931943a6e1c37e04e38" +checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" dependencies = [ "indexmap", "serde", @@ -887,9 +1004,9 @@ checksum = "548ec159e98411c04bee9b458df4ccd2da2a0a5e50c08cbd7e90b00b154c5a9a" [[package]] name = "trybuild" -version = "1.0.96" +version = "1.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33a5f13f11071020bb12de7a16b925d2d58636175c20c11dc5f96cb64bb6c9b3" +checksum = "207aa50d36c4be8d8c6ea829478be44a372c6a77669937bb39c698e52f1491e8" dependencies = [ "dissimilar", "glob", @@ -914,15 +1031,15 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" [[package]] name = "unicode-width" -version = "0.1.13" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" [[package]] name = "upon" @@ -958,9 +1075,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.87" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" +checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -968,9 +1085,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.87" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" +checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" dependencies = [ "bumpalo", "log", @@ -983,9 +1100,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.87" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" +checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -993,9 +1110,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.87" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" +checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", @@ -1006,9 +1123,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.87" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" +checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" [[package]] name = "winapi" @@ -1028,11 +1145,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys", + "windows-sys 0.59.0", ] [[package]] @@ -1059,11 +1176,20 @@ dependencies = [ "windows-targets", ] +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets", +] + [[package]] name = "windows-targets" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" dependencies = [ "windows_aarch64_gnullvm", "windows_aarch64_msvc", @@ -1077,69 +1203,84 @@ dependencies = [ [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" [[package]] name = "windows_aarch64_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" [[package]] name = "windows_i686_gnu" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" [[package]] name = "windows_i686_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" [[package]] name = "windows_i686_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" [[package]] name = "windows_x86_64_gnu" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" [[package]] name = "windows_x86_64_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.6.13" +version = "0.6.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1" +checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" dependencies = [ "memchr", ] [[package]] name = "yansi" -version = "0.5.1" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" [[package]] -name = "yansi" -version = "1.0.1" +name = "zerocopy" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +dependencies = [ + "byteorder", + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index cf58f3a3..2d1903cc 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -21,7 +21,7 @@ linked-hash-map = "~0.5.6" num-traits = "~0.2.17" impl_ops = "0.1.1" chrono = { version = "0.4.34", optional = true } -cardano-serialization-lib = "11.5.0" +cardano-serialization-lib = "12.1.0" anyhow = "1.0.86" [features] diff --git a/plutus-ledger-api/src/csl/csl_to_pla.rs b/plutus-ledger-api/src/csl/csl_to_pla.rs index a87bee5f..66410907 100644 --- a/plutus-ledger-api/src/csl/csl_to_pla.rs +++ b/plutus-ledger-api/src/csl/csl_to_pla.rs @@ -52,8 +52,8 @@ where } } -impl FromCSL for BigInt { - fn from_csl(value: &csl::utils::BigNum) -> Self { +impl FromCSL for BigInt { + fn from_csl(value: &csl::BigNum) -> Self { let x: u64 = From::from(*value); BigInt::from(x) } @@ -65,14 +65,14 @@ impl FromCSL for BigInt { } } -impl TryFromCSL for BigInt { - fn try_from_csl(value: &csl::utils::BigInt) -> Result { +impl TryFromCSL for BigInt { + fn try_from_csl(value: &csl::BigInt) -> Result { BigInt::from_str(&value.to_str()).map_err(TryFromCSLError::InvalidBigInt) } } -impl FromCSL for BigInt { - fn from_csl(value: &csl::utils::Int) -> Self { +impl FromCSL for BigInt { + fn from_csl(value: &csl::Int) -> Self { if value.is_positive() { BigInt::from_csl(&value.as_positive().unwrap()) } else { @@ -80,15 +80,3 @@ impl FromCSL for BigInt { } } } - -impl FromCSL for Vec { - fn from_csl(value: &csl::NativeScripts) -> Self { - (0..value.len()).map(|idx| value.get(idx)).collect() - } -} - -impl FromCSL for Vec { - fn from_csl(value: &csl::plutus::PlutusScripts) -> Self { - (0..value.len()).map(|idx| value.get(idx)).collect() - } -} diff --git a/plutus-ledger-api/src/csl/pla_to_csl.rs b/plutus-ledger-api/src/csl/pla_to_csl.rs index 31c1a82d..1742f60d 100644 --- a/plutus-ledger-api/src/csl/pla_to_csl.rs +++ b/plutus-ledger-api/src/csl/pla_to_csl.rs @@ -5,10 +5,10 @@ use num_traits::sign::Signed; #[derive(Debug, thiserror::Error)] pub enum TryFromPLAError { #[error("{0}")] - CSLDeserializeError(csl::error::DeserializeError), + CSLDeserializeError(csl::DeserializeError), #[error("{0}")] - CSLJsError(csl::error::JsError), + CSLJsError(csl::JsError), #[error("Unable to cast BigInt {0} into type {1}: value is out of bound")] BigIntOutOfRange(BigInt, String), @@ -48,15 +48,15 @@ where } } -impl TryFromPLA for csl::utils::BigNum { +impl TryFromPLA for csl::BigNum { fn try_from_pla(val: &u64) -> Result { // BigNum(s) are u64 under the hood. - Ok(csl::utils::BigNum::from(*val)) + Ok(csl::BigNum::from(*val)) } } -impl TryFromPLA for csl::utils::BigNum { +impl TryFromPLA for csl::BigNum { fn try_from_pla(val: &BigInt) -> Result { // BigNum(s) are u64 under the hood. let x: u64 = val @@ -70,30 +70,30 @@ impl TryFromPLA for csl::utils::BigNum { } } -impl TryFromPLA for csl::utils::BigInt { +impl TryFromPLA for csl::BigInt { fn try_from_pla(val: &BigInt) -> Result { Ok(val.to_owned().into()) } } -impl TryFromPLA for csl::utils::Int { +impl TryFromPLA for csl::Int { fn try_from_pla(val: &BigInt) -> Result { if val.is_negative() { - Ok(csl::utils::Int::new_negative(&(val.abs()).try_to_csl()?)) + Ok(csl::Int::new_negative(&(val.abs()).try_to_csl()?)) } else { - Ok(csl::utils::Int::new(&val.try_to_csl()?)) + Ok(csl::Int::new(&val.try_to_csl()?)) } } } -impl TryFromPLA for csl::utils::Int { +impl TryFromPLA for csl::Int { fn try_from_pla(val: &i64) -> Result { if val.is_negative() { - Ok(csl::utils::Int::new_negative(&csl::utils::to_bignum( + Ok(csl::Int::new_negative(&csl::BigNum::from( val.unsigned_abs(), ))) } else { - Ok(csl::utils::Int::new(&csl::utils::to_bignum(*val as u64))) + Ok(csl::Int::new(&csl::BigNum::from(*val as u64))) } } } diff --git a/plutus-ledger-api/src/plutus_data.rs b/plutus-ledger-api/src/plutus_data.rs index 8be6ac29..83297046 100644 --- a/plutus-ledger-api/src/plutus_data.rs +++ b/plutus-ledger-api/src/plutus_data.rs @@ -558,79 +558,86 @@ where } } -impl TryFromCSL for PlutusData { - fn try_from_csl(value: &csl::plutus::PlutusData) -> Result { +impl TryFromCSL for PlutusData { + fn try_from_csl(value: &csl::PlutusData) -> Result { Ok(match value.kind() { - csl::plutus::PlutusDataKind::ConstrPlutusData => { + csl::PlutusDataKind::ConstrPlutusData => { let constr_data = value.as_constr_plutus_data().unwrap(); let tag = BigInt::from_csl(&constr_data.alternative()); let args = constr_data.data().try_to_pla()?; PlutusData::Constr(tag, args) } - csl::plutus::PlutusDataKind::Map => { - PlutusData::Map(value.as_map().unwrap().try_to_pla()?) - } - csl::plutus::PlutusDataKind::List => { - PlutusData::List(value.as_list().unwrap().try_to_pla()?) - } - csl::plutus::PlutusDataKind::Integer => { + csl::PlutusDataKind::Map => PlutusData::Map(value.as_map().unwrap().try_to_pla()?), + csl::PlutusDataKind::List => PlutusData::List(value.as_list().unwrap().try_to_pla()?), + csl::PlutusDataKind::Integer => { PlutusData::Integer(value.as_integer().unwrap().try_to_pla()?) } - csl::plutus::PlutusDataKind::Bytes => PlutusData::Bytes(value.as_bytes().unwrap()), + csl::PlutusDataKind::Bytes => PlutusData::Bytes(value.as_bytes().unwrap()), }) } } -impl TryFromCSL for Vec { - fn try_from_csl(value: &csl::plutus::PlutusList) -> Result { +impl TryFromCSL for Vec { + fn try_from_csl(value: &csl::PlutusList) -> Result { (0..value.len()) .map(|idx| value.get(idx).try_to_pla()) .collect() } } -impl TryFromCSL for Vec<(PlutusData, PlutusData)> { - fn try_from_csl(c_map: &csl::plutus::PlutusMap) -> Result { +impl TryFromCSL for Vec<(PlutusData, PlutusData)> { + fn try_from_csl(c_map: &csl::PlutusMap) -> Result { let keys = c_map.keys(); - (0..keys.len()) - .map(|idx| { - let key = keys.get(idx); - let value = c_map.get(&key).unwrap(); - Ok((key.try_to_pla()?, value.try_to_pla()?)) - }) - .collect() + (0..keys.len()).try_fold(Vec::new(), |mut vector, idx| { + let key = keys.get(idx); + let values = c_map.get(&key).unwrap(); + + for value_idx in 0..values.len() { + vector.push(( + key.clone().try_to_pla()?, + values.get(value_idx).unwrap().try_to_pla()?, + )) + } + + Ok(vector) + }) } } -impl TryFromPLA for csl::plutus::PlutusData { +impl TryFromPLA for csl::PlutusData { fn try_from_pla(val: &PlutusData) -> Result { match val { - PlutusData::Constr(tag, args) => Ok(csl::plutus::PlutusData::new_constr_plutus_data( - &csl::plutus::ConstrPlutusData::new(&tag.try_to_csl()?, &args.try_to_csl()?), + PlutusData::Constr(tag, args) => Ok(csl::PlutusData::new_constr_plutus_data( + &csl::ConstrPlutusData::new(&tag.try_to_csl()?, &args.try_to_csl()?), )), - PlutusData::Map(l) => Ok(csl::plutus::PlutusData::new_map(&l.try_to_csl()?)), - PlutusData::List(l) => Ok(csl::plutus::PlutusData::new_list(&l.try_to_csl()?)), - PlutusData::Integer(i) => Ok(csl::plutus::PlutusData::new_integer(&i.try_to_csl()?)), - PlutusData::Bytes(b) => Ok(csl::plutus::PlutusData::new_bytes(b.to_owned())), + PlutusData::Map(l) => Ok(csl::PlutusData::new_map(&l.try_to_csl()?)), + PlutusData::List(l) => Ok(csl::PlutusData::new_list(&l.try_to_csl()?)), + PlutusData::Integer(i) => Ok(csl::PlutusData::new_integer(&i.try_to_csl()?)), + PlutusData::Bytes(b) => Ok(csl::PlutusData::new_bytes(b.to_owned())), } } } -impl TryFromPLA> for csl::plutus::PlutusList { +impl TryFromPLA> for csl::PlutusList { fn try_from_pla(val: &Vec) -> Result { val.iter() // traverse .map(|x| x.try_to_csl()) - .collect::, TryFromPLAError>>() + .collect::, TryFromPLAError>>() .map(|x| x.into()) } } -impl TryFromPLA> for csl::plutus::PlutusMap { +impl TryFromPLA> for csl::PlutusMap { fn try_from_pla(val: &Vec<(PlutusData, PlutusData)>) -> Result { val.iter() - .try_fold(csl::plutus::PlutusMap::new(), |mut acc, (k, v)| { - acc.insert(&k.try_to_csl()?, &v.try_to_csl()?); + .try_fold(csl::PlutusMap::new(), |mut acc, (k, v)| { + let mut values = match acc.get(&k.try_to_csl()?) { + Some(existing_values) => existing_values, + None => csl::PlutusMapValues::new(), + }; + values.add(&v.try_to_csl()?); + acc.insert(&k.try_to_csl()?, &values); Ok(acc) }) } diff --git a/plutus-ledger-api/src/v1/address.rs b/plutus-ledger-api/src/v1/address.rs index c25254ea..b80677f0 100644 --- a/plutus-ledger-api/src/v1/address.rs +++ b/plutus-ledger-api/src/v1/address.rs @@ -85,7 +85,7 @@ impl FromStr for Address { type Err = anyhow::Error; fn from_str(s: &str) -> std::result::Result { - let csl_addr = csl::address::Address::from_bech32(s) + let csl_addr = csl::Address::from_bech32(s) .map_err(|err| anyhow!("Couldn't parse bech32 address: {}", err))?; csl_addr .try_to_pla() @@ -93,19 +93,19 @@ impl FromStr for Address { } } -impl TryFromCSL for Address { - fn try_from_csl(value: &csl::address::Address) -> Result { - if let Some(addr) = csl::address::BaseAddress::from_address(value) { +impl TryFromCSL for Address { + fn try_from_csl(value: &csl::Address) -> Result { + if let Some(addr) = csl::BaseAddress::from_address(value) { Ok(Address { credential: Credential::from_csl(&addr.payment_cred()), staking_credential: Some(StakingCredential::from_csl(&addr.stake_cred())), }) - } else if let Some(addr) = csl::address::PointerAddress::from_address(value) { + } else if let Some(addr) = csl::PointerAddress::from_address(value) { Ok(Address { credential: Credential::from_csl(&addr.payment_cred()), staking_credential: Some(StakingCredential::from_csl(&addr.stake_pointer())), }) - } else if let Some(addr) = csl::address::EnterpriseAddress::from_address(value) { + } else if let Some(addr) = csl::EnterpriseAddress::from_address(value) { Ok(Address { credential: Credential::from_csl(&addr.payment_cred()), staking_credential: None, @@ -125,19 +125,18 @@ pub struct AddressWithExtraInfo<'a> { pub network_tag: u8, } -impl TryFromPLA> for csl::address::Address { +impl TryFromPLA> for csl::Address { fn try_from_pla(val: &AddressWithExtraInfo<'_>) -> Result { let payment = val.address.credential.try_to_csl()?; Ok(match val.address.staking_credential { - None => csl::address::EnterpriseAddress::new(val.network_tag, &payment).to_address(), + None => csl::EnterpriseAddress::new(val.network_tag, &payment).to_address(), Some(ref sc) => match sc { StakingCredential::Hash(c) => { - csl::address::BaseAddress::new(val.network_tag, &payment, &c.try_to_csl()?) - .to_address() + csl::BaseAddress::new(val.network_tag, &payment, &c.try_to_csl()?).to_address() } StakingCredential::Pointer(ptr) => { - csl::address::PointerAddress::new(val.network_tag, &payment, &ptr.try_to_csl()?) + csl::PointerAddress::new(val.network_tag, &payment, &ptr.try_to_csl()?) .to_address() } }, @@ -150,7 +149,7 @@ impl std::fmt::Display for AddressWithExtraInfo<'_> { let bech32_addr: Option = self .try_to_csl() .ok() - .and_then(|csl_addr: csl::address::Address| csl_addr.to_bech32(None).ok()); + .and_then(|csl_addr: csl::Address| csl_addr.to_bech32(None).ok()); match bech32_addr { Some(addr) => write!(f, "{}", addr), None => write!(f, "INVALID ADDRESS {:?}", self), @@ -256,28 +255,24 @@ impl Json for Credential { } } -impl FromCSL for Credential { - fn from_csl(value: &csl::address::StakeCredential) -> Self { +impl FromCSL for Credential { + fn from_csl(value: &csl::Credential) -> Self { match value.kind() { - csl::address::StakeCredKind::Key => { + csl::CredKind::Key => { Credential::PubKey(Ed25519PubKeyHash::from_csl(&value.to_keyhash().unwrap())) } - csl::address::StakeCredKind::Script => { + csl::CredKind::Script => { Credential::Script(ValidatorHash::from_csl(&value.to_scripthash().unwrap())) } } } } -impl TryFromPLA for csl::address::StakeCredential { +impl TryFromPLA for csl::Credential { fn try_from_pla(val: &Credential) -> Result { match val { - Credential::PubKey(pkh) => Ok(csl::address::StakeCredential::from_keyhash( - &pkh.try_to_csl()?, - )), - Credential::Script(sh) => Ok(csl::address::StakeCredential::from_scripthash( - &sh.0.try_to_csl()?, - )), + Credential::PubKey(pkh) => Ok(csl::Credential::from_keyhash(&pkh.try_to_csl()?)), + Credential::Script(sh) => Ok(csl::Credential::from_scripthash(&sh.0.try_to_csl()?)), } } } @@ -391,13 +386,13 @@ impl Json for StakingCredential { } } -impl FromCSL for StakingCredential { - fn from_csl(value: &csl::address::StakeCredential) -> Self { +impl FromCSL for StakingCredential { + fn from_csl(value: &csl::Credential) -> Self { StakingCredential::Hash(Credential::from_csl(value)) } } -impl TryFromPLA for csl::address::StakeCredential { +impl TryFromPLA for csl::Credential { fn try_from_pla(val: &StakingCredential) -> Result { match val { StakingCredential::Hash(c) => c.try_to_csl(), @@ -408,8 +403,8 @@ impl TryFromPLA for csl::address::StakeCredential { } } -impl FromCSL for StakingCredential { - fn from_csl(value: &csl::address::Pointer) -> Self { +impl FromCSL for StakingCredential { + fn from_csl(value: &csl::Pointer) -> Self { StakingCredential::Pointer(ChainPointer::from_csl(value)) } } @@ -420,9 +415,9 @@ pub struct RewardAddressWithExtraInfo<'a> { pub network_tag: u8, } -impl TryFromPLA> for csl::address::RewardAddress { +impl TryFromPLA> for csl::RewardAddress { fn try_from_pla(val: &RewardAddressWithExtraInfo<'_>) -> Result { - Ok(csl::address::RewardAddress::new( + Ok(csl::RewardAddress::new( val.network_tag, &val.staking_credential.try_to_csl()?, )) @@ -447,8 +442,8 @@ pub struct ChainPointer { pub certificate_index: CertificateIndex, } -impl FromCSL for ChainPointer { - fn from_csl(value: &csl::address::Pointer) -> Self { +impl FromCSL for ChainPointer { + fn from_csl(value: &csl::Pointer) -> Self { ChainPointer { slot_number: Slot::from_csl(&value.slot_bignum()), transaction_index: TransactionIndex::from_csl(&value.tx_index_bignum()), @@ -457,9 +452,9 @@ impl FromCSL for ChainPointer { } } -impl TryFromPLA for csl::address::Pointer { +impl TryFromPLA for csl::Pointer { fn try_from_pla(val: &ChainPointer) -> Result { - Ok(csl::address::Pointer::new_pointer( + Ok(csl::Pointer::new_pointer( &val.slot_number.try_to_csl()?, &val.transaction_index.try_to_csl()?, &val.certificate_index.try_to_csl()?, @@ -487,13 +482,13 @@ impl IsPlutusData for Slot { } } -impl FromCSL for Slot { - fn from_csl(value: &csl::utils::BigNum) -> Self { +impl FromCSL for Slot { + fn from_csl(value: &csl::BigNum) -> Self { Slot(BigInt::from_csl(value)) } } -impl TryFromPLA for csl::utils::BigNum { +impl TryFromPLA for csl::BigNum { fn try_from_pla(val: &Slot) -> Result { val.0.try_to_csl() } @@ -519,13 +514,13 @@ impl IsPlutusData for CertificateIndex { } } -impl FromCSL for CertificateIndex { - fn from_csl(value: &csl::utils::BigNum) -> Self { +impl FromCSL for CertificateIndex { + fn from_csl(value: &csl::BigNum) -> Self { CertificateIndex(BigInt::from_csl(value)) } } -impl TryFromPLA for csl::utils::BigNum { +impl TryFromPLA for csl::BigNum { fn try_from_pla(val: &CertificateIndex) -> Result { val.0.try_to_csl() } @@ -552,13 +547,13 @@ impl IsPlutusData for TransactionIndex { } } -impl FromCSL for TransactionIndex { - fn from_csl(value: &csl::utils::BigNum) -> Self { +impl FromCSL for TransactionIndex { + fn from_csl(value: &csl::BigNum) -> Self { TransactionIndex(BigInt::from_csl(value)) } } -impl TryFromPLA for csl::utils::BigNum { +impl TryFromPLA for csl::BigNum { fn try_from_pla(val: &TransactionIndex) -> Result { val.0.try_to_csl() } diff --git a/plutus-ledger-api/src/v1/crypto.rs b/plutus-ledger-api/src/v1/crypto.rs index 5cb83760..4517dd6d 100644 --- a/plutus-ledger-api/src/v1/crypto.rs +++ b/plutus-ledger-api/src/v1/crypto.rs @@ -43,15 +43,15 @@ impl IsPlutusData for Ed25519PubKeyHash { } } -impl FromCSL for Ed25519PubKeyHash { - fn from_csl(value: &csl::crypto::Ed25519KeyHash) -> Self { +impl FromCSL for Ed25519PubKeyHash { + fn from_csl(value: &csl::Ed25519KeyHash) -> Self { Ed25519PubKeyHash(LedgerBytes(value.to_bytes())) } } -impl TryFromPLA for csl::crypto::Ed25519KeyHash { +impl TryFromPLA for csl::Ed25519KeyHash { fn try_from_pla(val: &Ed25519PubKeyHash) -> Result { - csl::crypto::Ed25519KeyHash::from_bytes(val.0 .0.to_owned()) + csl::Ed25519KeyHash::from_bytes(val.0 .0.to_owned()) .map_err(TryFromPLAError::CSLDeserializeError) } } diff --git a/plutus-ledger-api/src/v1/datum.rs b/plutus-ledger-api/src/v1/datum.rs index 712dea5e..eba5f649 100644 --- a/plutus-ledger-api/src/v1/datum.rs +++ b/plutus-ledger-api/src/v1/datum.rs @@ -32,16 +32,15 @@ impl IsPlutusData for DatumHash { } } -impl FromCSL for DatumHash { - fn from_csl(value: &csl::crypto::DataHash) -> Self { +impl FromCSL for DatumHash { + fn from_csl(value: &csl::DataHash) -> Self { DatumHash(LedgerBytes(value.to_bytes())) } } -impl TryFromPLA for csl::crypto::DataHash { +impl TryFromPLA for csl::DataHash { fn try_from_pla(val: &DatumHash) -> Result { - csl::crypto::DataHash::from_bytes(val.0 .0.to_owned()) - .map_err(TryFromPLAError::CSLDeserializeError) + csl::DataHash::from_bytes(val.0 .0.to_owned()).map_err(TryFromPLAError::CSLDeserializeError) } } @@ -65,7 +64,7 @@ impl IsPlutusData for Datum { } } -impl TryFromPLA for csl::plutus::PlutusData { +impl TryFromPLA for csl::PlutusData { fn try_from_pla(val: &Datum) -> Result { val.0.try_to_csl() } diff --git a/plutus-ledger-api/src/v1/redeemer.rs b/plutus-ledger-api/src/v1/redeemer.rs index 35850c32..95ffa9c3 100644 --- a/plutus-ledger-api/src/v1/redeemer.rs +++ b/plutus-ledger-api/src/v1/redeemer.rs @@ -33,22 +33,20 @@ impl IsPlutusData for Redeemer { } #[derive(Clone, Debug)] -struct RedeemerWithExtraInfo<'a> { - redeemer: &'a Redeemer, - tag: &'a csl::plutus::RedeemerTag, - index: u64, +pub struct RedeemerWithExtraInfo<'a> { + pub redeemer: &'a Redeemer, + pub tag: &'a csl::RedeemerTag, + pub index: u64, } -impl TryFromPLA> for csl::plutus::Redeemer { - fn try_from_pla<'a>( - val: &RedeemerWithExtraInfo<'_>, - ) -> Result { +impl TryFromPLA> for csl::Redeemer { + fn try_from_pla<'a>(val: &RedeemerWithExtraInfo<'_>) -> Result { let Redeemer(plutus_data) = val.redeemer; - Ok(csl::plutus::Redeemer::new( + Ok(csl::Redeemer::new( val.tag, &val.index.try_to_csl()?, &plutus_data.try_to_csl()?, - &csl::plutus::ExUnits::new(&csl::utils::to_bignum(0), &csl::utils::to_bignum(0)), + &csl::ExUnits::new(&csl::BigNum::from(0u64), &csl::BigNum::from(0u64)), )) } } diff --git a/plutus-ledger-api/src/v1/script.rs b/plutus-ledger-api/src/v1/script.rs index b95c6559..ddfcb89b 100644 --- a/plutus-ledger-api/src/v1/script.rs +++ b/plutus-ledger-api/src/v1/script.rs @@ -32,8 +32,8 @@ impl IsPlutusData for ValidatorHash { } } -impl FromCSL for ValidatorHash { - fn from_csl(value: &csl::crypto::ScriptHash) -> Self { +impl FromCSL for ValidatorHash { + fn from_csl(value: &csl::ScriptHash) -> Self { ValidatorHash(ScriptHash::from_csl(value)) } } @@ -90,15 +90,15 @@ impl IsPlutusData for ScriptHash { } } -impl FromCSL for ScriptHash { - fn from_csl(value: &csl::crypto::ScriptHash) -> Self { +impl FromCSL for ScriptHash { + fn from_csl(value: &csl::ScriptHash) -> Self { ScriptHash(LedgerBytes(value.to_bytes())) } } -impl TryFromPLA for csl::crypto::ScriptHash { +impl TryFromPLA for csl::ScriptHash { fn try_from_pla(val: &ScriptHash) -> Result { - csl::crypto::ScriptHash::from_bytes(val.0 .0.to_owned()) + csl::ScriptHash::from_bytes(val.0 .0.to_owned()) .map_err(TryFromPLAError::CSLDeserializeError) } } diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index ef2506cf..54fcff08 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -166,15 +166,15 @@ impl IsPlutusData for TransactionHash { } } -impl FromCSL for TransactionHash { - fn from_csl(value: &csl::crypto::TransactionHash) -> Self { +impl FromCSL for TransactionHash { + fn from_csl(value: &csl::TransactionHash) -> Self { TransactionHash(LedgerBytes(value.to_bytes())) } } -impl TryFromPLA for csl::crypto::TransactionHash { +impl TryFromPLA for csl::TransactionHash { fn try_from_pla(val: &TransactionHash) -> Result { - csl::crypto::TransactionHash::from_bytes(val.0 .0.to_owned()) + csl::TransactionHash::from_bytes(val.0 .0.to_owned()) .map_err(TryFromPLAError::CSLDeserializeError) } } diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index e007ef99..7c02681e 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -468,8 +468,8 @@ impl FromCSL for Value { } } -impl FromCSL for Value { - fn from_csl(value: &csl::utils::Value) -> Self { +impl FromCSL for Value { + fn from_csl(value: &csl::Value) -> Self { let lovelaces = BigInt::from_csl(&value.coin()); let mut pla_value = Value::ada_value(&lovelaces); if let Some(multi_asset) = value.multiasset() { @@ -479,13 +479,13 @@ impl FromCSL for Value { } } -impl TryFromPLA for csl::utils::Value { +impl TryFromPLA for csl::Value { fn try_from_pla(val: &Value) -> Result { - let coin: csl::utils::Coin = val + let coin: csl::Coin = val .0 .get(&CurrencySymbol::Ada) .and_then(|m| m.get(&TokenName::ada())) - .map_or(Ok(csl::utils::BigNum::zero()), TryToCSL::try_to_csl)?; + .map_or(Ok(csl::BigNum::zero()), TryToCSL::try_to_csl)?; let m_ass = val .0 @@ -499,7 +499,7 @@ impl TryFromPLA for csl::utils::Value { Ok(acc) })?; - let mut v = csl::utils::Value::new(&coin); + let mut v = csl::Value::new(&coin); v.set_multiasset(&m_ass); @@ -544,7 +544,8 @@ impl TryFromPLA> for csl::MintAssets { fn try_from_pla(val: &BTreeMap) -> Result { val.iter() .try_fold(csl::MintAssets::new(), |mut acc, (k, v)| { - acc.insert(&k.try_to_csl()?, v.try_to_csl()?); + acc.insert(&k.try_to_csl()?, &v.try_to_csl()?) + .map_err(TryFromPLAError::CSLJsError)?; Ok(acc) }) } @@ -557,7 +558,7 @@ impl FromCSL for Value { (0..keys.len()) .map(|idx| { let sh = keys.get(idx); - let ass = mint.get_all(&sh).unwrap_or(csl::MintsAssets::new()); + let ass = mint.get(&sh).unwrap_or(csl::MintsAssets::new()); ( CurrencySymbol::NativeToken(MintingPolicyHash::from_csl(&sh)), BTreeMap::from_csl(&ass), diff --git a/plutus-ledger-api/src/v2/transaction.rs b/plutus-ledger-api/src/v2/transaction.rs index 096f0a60..9374256c 100644 --- a/plutus-ledger-api/src/v2/transaction.rs +++ b/plutus-ledger-api/src/v2/transaction.rs @@ -127,14 +127,14 @@ impl TryFromCSL for Vec { #[derive(Clone, Debug)] pub struct TransactionOutputWithExtraInfo<'a> { pub transaction_output: &'a TransactionOutput, - pub scripts: &'a BTreeMap, + pub scripts: &'a BTreeMap, pub network_id: u8, pub data_cost: &'a csl::DataCost, } impl TryFromPLA> for csl::TransactionOutput { fn try_from_pla(val: &TransactionOutputWithExtraInfo<'_>) -> Result { - let mut output_builder = csl::output_builder::TransactionOutputBuilder::new().with_address( + let mut output_builder = csl::TransactionOutputBuilder::new().with_address( &AddressWithExtraInfo { address: &val.transaction_output.address, network_tag: val.network_id, @@ -167,7 +167,7 @@ impl TryFromPLA> for csl::TransactionOutput { let value_without_min_utxo = val.transaction_output.value.try_to_csl()?; - let mut calc = csl::utils::MinOutputAdaCalculator::new_empty(val.data_cost) + let mut calc = csl::MinOutputAdaCalculator::new_empty(val.data_cost) .map_err(TryFromPLAError::CSLJsError)?; calc.set_amount(&value_without_min_utxo); match &val.transaction_output.datum { @@ -187,8 +187,8 @@ impl TryFromPLA> for csl::TransactionOutput { let coin = std::cmp::max(value_without_min_utxo.coin(), required_coin); let value = match value_without_min_utxo.multiasset() { - Some(multiasset) => csl::utils::Value::new_with_assets(&coin, &multiasset), - None => csl::utils::Value::new(&coin), + Some(multiasset) => csl::Value::new_with_assets(&coin, &multiasset), + None => csl::Value::new(&coin), }; output_builder @@ -322,8 +322,8 @@ impl IsPlutusData for TransactionInfo { #[derive(Clone, Debug)] pub struct WithdrawalsWithExtraInfo<'a> { - withdrawals: &'a AssocMap, - network_tag: u8, + pub withdrawals: &'a AssocMap, + pub network_tag: u8, } impl TryFromPLA> for csl::Withdrawals { From 9274576971399327b6a69b8d0bf019bd67833131 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Fri, 4 Oct 2024 14:37:14 +0200 Subject: [PATCH 11/94] Changelog and version bump --- plutus-ledger-api/CHANGELOG.md | 11 +++++++++++ plutus-ledger-api/Cargo.lock | 2 +- plutus-ledger-api/Cargo.toml | 2 +- plutus-ledger-api/build.nix | 2 +- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index e98308b8..385b92b2 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -12,6 +12,17 @@ Changelog](https://keepachangelog.com/en/1.1.0). ### Removed +## v2.0.0 + +### Added + +- Added cardano-serialization-lib conversion traits (`ToCSL` and `FromCSL`) + +### Changed + +- Fixed `serde` serialization of Plutus `Value`s +- Updated cardano-serialization-lib to Conway compatible 12.1.0 + ## v1.0.0 ### Added diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 30548b3a..17e1f901 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -600,7 +600,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "1.0.0" +version = "2.0.0-beta.1" dependencies = [ "anyhow", "cardano-serialization-lib", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 2d1903cc..66411b0e 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "1.0.0" +version = "2.0.0-beta.1" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" diff --git a/plutus-ledger-api/build.nix b/plutus-ledger-api/build.nix index d43c706c..c4ad5dbc 100644 --- a/plutus-ledger-api/build.nix +++ b/plutus-ledger-api/build.nix @@ -4,7 +4,7 @@ rustFlake = inputs.flake-lang.lib.${system}.rustFlake { src = ./.; - version = "0"; + version = "2"; crateName = "plutus-ledger-api"; devShellHook = config.settings.shell.hook; cargoNextestExtraArgs = "--all-features"; From 87e07ef86e372e147de990e2cc014b3ac1c90453 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 14 Oct 2024 20:28:44 +0800 Subject: [PATCH 12/94] implement procedural derive macro for `IsPlutusData` --- .gitignore | 1 + flake.nix | 1 + is-plutus-data-derive/Cargo.lock | 68 +++ is-plutus-data-derive/Cargo.toml | 13 + is-plutus-data-derive/build.nix | 18 + is-plutus-data-derive/src/derive_impl.rs | 706 +++++++++++++++++++++++ is-plutus-data-derive/src/lib.rs | 13 + 7 files changed, 820 insertions(+) create mode 100644 is-plutus-data-derive/Cargo.lock create mode 100644 is-plutus-data-derive/Cargo.toml create mode 100644 is-plutus-data-derive/build.nix create mode 100644 is-plutus-data-derive/src/derive_impl.rs create mode 100644 is-plutus-data-derive/src/lib.rs diff --git a/.gitignore b/.gitignore index 1a1f6a6a..0871c3a0 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ result .direnv .pre-commit-config.yaml .DS_Store +target diff --git a/flake.nix b/flake.nix index 4f5785b0..8d68e4df 100644 --- a/flake.nix +++ b/flake.nix @@ -23,6 +23,7 @@ ./hercules-ci.nix ./plutus-ledger-api/build.nix + ./is-plutus-data-derive/build.nix ]; debug = true; systems = [ "x86_64-linux" "x86_64-darwin" ]; diff --git a/is-plutus-data-derive/Cargo.lock b/is-plutus-data-derive/Cargo.lock new file mode 100644 index 00000000..00cbc005 --- /dev/null +++ b/is-plutus-data-derive/Cargo.lock @@ -0,0 +1,68 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "is-plutus-data-derive" +version = "0.1.0" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "thiserror", +] + +[[package]] +name = "proc-macro2" +version = "1.0.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "syn" +version = "2.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "thiserror" +version = "1.0.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "unicode-ident" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" diff --git a/is-plutus-data-derive/Cargo.toml b/is-plutus-data-derive/Cargo.toml new file mode 100644 index 00000000..acaf07fe --- /dev/null +++ b/is-plutus-data-derive/Cargo.toml @@ -0,0 +1,13 @@ +[package] +name = "is-plutus-data-derive" +version = "0.1.0" +edition = "2021" + +[dependencies] +proc-macro2 = "1.0.87" +quote = "1.0.37" +syn = { version = "2.0.79", features = ["full", "extra-traits"]} +thiserror = "1.0.64" + +[lib] +proc-macro = true diff --git a/is-plutus-data-derive/build.nix b/is-plutus-data-derive/build.nix new file mode 100644 index 00000000..ac6ecbae --- /dev/null +++ b/is-plutus-data-derive/build.nix @@ -0,0 +1,18 @@ +{ inputs, ... }: { + perSystem = { config, system, ... }: + let + rustFlake = + inputs.flake-lang.lib.${system}.rustFlake { + src = ./.; + version = "0"; + crateName = "is-plutus-data-derive"; + devShellHook = config.settings.shell.hook; + cargoNextestExtraArgs = "--all-features"; + generateDocs = false; + }; + + in + { + inherit (rustFlake) packages checks devShells; + }; +} diff --git a/is-plutus-data-derive/src/derive_impl.rs b/is-plutus-data-derive/src/derive_impl.rs new file mode 100644 index 00000000..d2874068 --- /dev/null +++ b/is-plutus-data-derive/src/derive_impl.rs @@ -0,0 +1,706 @@ +use std::str::FromStr; + +use quote::format_ident; +use syn::{ + parse::{Parse, ParseStream}, + parse_quote, + spanned::Spanned, + Arm, Attribute, Block, Data, DataEnum, DataStruct, DeriveInput, Error, Expr, Fields, + FieldsNamed, FieldsUnnamed, Ident, Index, ItemImpl, Meta, Path, Result, Stmt, +}; + +pub(crate) fn get_is_plutus_data_instance(input: DeriveInput) -> Result { + let type_name = &input.ident; + + let strategy = get_derive_strategy(&input)?; + + let plutus_data_input_var: Ident = parse_quote!(plutus_data); + + let (encoder, decoder) = match strategy { + DeriveStrategy::Newtype => get_newtype_encoder_decoder(&input), + DeriveStrategy::List => get_list_encoder_decoder(&input, &plutus_data_input_var), + DeriveStrategy::Constr => get_constr_encoder_decoder(&input, &plutus_data_input_var), + }?; + + let mut generics = input.generics; + + // TODO(chfanghr): Do we care about type role? + generics.type_params_mut().for_each(|param| { + param + .bounds + .push(parse_quote!(plutus_ledger_api::plutus_Data::IsPlutusData)); + }); + + let (impl_generics, type_generics, where_clause) = generics.split_for_impl(); + + Ok(parse_quote!( + impl #impl_generics plutus_ledger_api::plutus_data::IsPlutusData for #type_name #type_generics #where_clause { + fn to_plutus_data(&self) -> plutus_ledger_api::plutus_data::PlutusData { + #encoder + } + + fn from_plutus_data(plutus_data: &plutus_ledger_api::plutus_data::PlutusData) -> Result + where Self: Sized { + #decoder + } + } + )) +} + +#[derive(Debug)] +enum DeriveStrategy { + Newtype, + List, + Constr, +} + +#[derive(Debug, thiserror::Error)] +enum DeriveStrategyError { + #[error("Unknown strategy {0}. Should be one of Newtype, List and Constr.")] + UnknownStrategy(String), + #[error("Unable to parse strategy. Should be an Ident.")] + UnexpectedToken, + #[error("More than one strategies specified.")] + MoreThanOneSpecified, +} + +impl Default for DeriveStrategy { + fn default() -> Self { + Self::Constr + } +} + +impl FromStr for DeriveStrategy { + type Err = DeriveStrategyError; + + fn from_str(s: &str) -> std::result::Result { + match s { + "Newtype" => Ok(Self::Newtype), + "List" => Ok(Self::List), + "Constr" => Ok(Self::Constr), + _ => Err(DeriveStrategyError::UnknownStrategy(s.into())), + } + } +} +impl Parse for DeriveStrategy { + fn parse(input: ParseStream) -> Result { + let ident = input.call(Ident::parse)?; + Self::from_str(&ident.to_string()).map_err(|unknown_strategy| { + Error::new( + ident.span(), + format!("unknown strategy: {}", unknown_strategy), + ) + }) + } +} + +fn try_parse_derive_strategy(attr: &Attribute) -> Option> { + let value = match &attr.meta { + Meta::NameValue(name_value) => name_value + .path + .is_ident("plutus_data_derive_strategy") + .then_some(&name_value.value), + _ => None, + }?; + + Some(match &value { + Expr::Path(path) => (|| -> Result { + let ident = path.path.require_ident()?; + DeriveStrategy::from_str(&ident.to_string()) + .map_err(|err| Error::new(ident.span(), err)) + })(), + _ => Err(Error::new( + value.span(), + DeriveStrategyError::UnexpectedToken, + )), + }) +} + +fn get_derive_strategy(input: &DeriveInput) -> Result { + let mut derive_strategy_results: Vec<_> = input + .attrs + .iter() + .map(try_parse_derive_strategy) + .flatten() + .collect(); + + match derive_strategy_results.len() { + 0 => Ok(DeriveStrategy::default()), + 1 => derive_strategy_results.remove(0), + _ => Err(Error::new( + input.span(), + DeriveStrategyError::MoreThanOneSpecified, + )), + } +} + +#[derive(Debug, thiserror::Error)] +enum NewtypeStrategyError { + #[error("Only struct types are supported by newtype strategy")] + UnexpectedDataVariant, + #[error("Newtype derivation expects exactly one filed")] + NotSingleField, +} + +fn get_newtype_encoder_decoder(input: &DeriveInput) -> Result<(Block, Block)> { + let s = match &input.data { + Data::Struct(s) => Ok(s), + _ => Err(Error::new( + input.span(), + NewtypeStrategyError::UnexpectedDataVariant, + )), + }?; + + if s.fields.len() != 1 { + Err(Error::new( + input.span(), + NewtypeStrategyError::NotSingleField, + ))? + } + + let field = s.fields.iter().next().unwrap(); + + let encoder = match &field.ident { + None => parse_quote!({ self.0.to_plutus_data() }), + Some(ident) => parse_quote!({ + self.#ident.to_plutus_data() + }), + }; + + let decoder = match &field.ident { + Some(field_name) => { + parse_quote!({ + Ok(Self { + #field_name: plutus_ledger_api::plutus_data::IsPlutusData::from_plutus_data(plutus_data)? + }) + }) + } + None => { + parse_quote!({ + Ok(Self( + plutus_ledger_api::plutus_data::IsPlutusData::from_plutus_data(plutus_data)?, + )) + }) + } + }; + + Ok((encoder, decoder)) +} + +#[derive(Debug, thiserror::Error)] +enum ListStrategyError { + #[error("Only struct types are supported by list strategy")] + UnexpectedDataVariant, +} + +fn get_list_encoder_decoder( + input: &DeriveInput, + plutus_data_input_var: &Ident, +) -> Result<(Block, Block)> { + match &input.data { + Data::Struct(s) => match &s.fields { + Fields::Named(fields_named) => Ok(( + struct_with_named_fields_to_plutus_data_list(fields_named), + struct_with_named_fields_from_plutus_data_list(fields_named, plutus_data_input_var), + )), + Fields::Unnamed(fields_unnamed) => Ok(( + struct_with_unnamed_fields_to_plutus_data_list(fields_unnamed), + struct_with_unnamed_fields_from_plutus_data_list( + fields_unnamed, + plutus_data_input_var, + ), + )), + Fields::Unit => Ok(( + struct_with_no_field_to_plutus_data_list(), + struct_with_no_field_from_plutus_data_list(plutus_data_input_var), + )), + }, + _ => Err(Error::new( + input.span(), + ListStrategyError::UnexpectedDataVariant, + )), + } +} + +#[derive(Debug, thiserror::Error)] +enum ConstrStrategyError { + #[error("Union types are supported by constr strategy")] + UnexpectedDataVariant, +} + +fn get_constr_encoder_decoder( + input: &DeriveInput, + plutus_data_input_var: &Ident, +) -> Result<(Block, Block)> { + Ok(match &input.data { + Data::Enum(e) => get_enum_constr_encoder_decoder(e, plutus_data_input_var), + Data::Struct(s) => get_struct_constr_encoder_decoder(s, plutus_data_input_var), + _ => Err(Error::new( + input.span(), + ConstrStrategyError::UnexpectedDataVariant, + ))?, + }) +} + +fn get_enum_constr_encoder_decoder(e: &DataEnum, plutus_data_input_var: &Ident) -> (Block, Block) { + ( + enum_to_plutus_data_constr(&e), + enum_from_plutus_data_constr(&e, plutus_data_input_var), + ) +} + +fn get_struct_constr_encoder_decoder( + s: &DataStruct, + plutus_data_input_var: &Ident, +) -> (Block, Block) { + match &s.fields { + Fields::Named(fields_named) => ( + struct_with_named_fields_to_plutus_data_constr(fields_named), + struct_with_named_fields_from_plutus_data_constr(fields_named, plutus_data_input_var), + ), + Fields::Unnamed(fields_unnamed) => ( + struct_with_unnamed_fields_to_plutus_data_constr(fields_unnamed), + struct_with_unnamed_fields_from_plutus_data_constr( + fields_unnamed, + plutus_data_input_var, + ), + ), + Fields::Unit => ( + struct_with_no_field_to_plutus_data_constr(), + struct_with_no_field_from_plutus_data_constr(plutus_data_input_var), + ), + } +} + +fn enum_to_plutus_data_constr(e: &DataEnum) -> Block { + let variants = &e.variants; + let tags = 0..variants.len(); + + let arms = tags.zip(variants.iter()).map(|(tag, variant)| { + let variant_name = &variant.ident; + let constructor: Path = parse_quote!(Self::#variant_name); + let fields = &variant.fields; + variant_to_plutus_data(&constructor, tag, fields) + }); + + parse_quote!({ + match &self { + #(#arms),* + } + }) +} + +fn enum_from_plutus_data_constr(e: &DataEnum, plutus_data_input_var: &Ident) -> Block { + let variants = &e.variants; + let tags = 0..variants.len(); + let expected_tags_str = String::from("Constr with tag: ") + + &tags + .clone() + .map(|t| t.to_string()) + .collect::>() + .join("/"); + let plutus_data_list_var: Ident = parse_quote!(plutus_data_list); + + let arms = tags.zip(variants.iter()).map(|(tag, variant)| { + let variant_name = &variant.ident; + let constructor: Path = parse_quote!(Self::#variant_name); + let fields = &variant.fields; + + variant_from_plutus_data(&constructor, tag, fields, &plutus_data_list_var) + }); + + parse_quote!( + { + let (tag, #plutus_data_list_var) = plutus_ledger_api::plutus_data::parse_constr(#plutus_data_input_var)?; + + match tag { + #(#arms),* + tag => Err(plutus_ledger_api::plutus_data::PlutusDataError::UnexpectedPlutusInvariant { + wanted: format!(#expected_tags_str), + got: tag.to_string(), + }), + } + } + ) +} + +fn variant_to_plutus_data(constructor: &Path, tag: usize, fields: &Fields) -> Arm { + match fields { + Fields::Named(named) => variant_with_named_fields_to_plutus_data(&constructor, tag, &named), + Fields::Unnamed(unnamed) => { + variant_with_unnamed_field_to_plutus_data(&constructor, tag, &unnamed) + } + Fields::Unit => variant_with_no_field_to_plutus_data(&constructor, tag), + } +} + +fn variant_from_plutus_data( + constructor: &Path, + tag: usize, + fields: &Fields, + plutus_data_list_var: &Ident, +) -> Arm { + let block = match fields { + Fields::Named(named) => variant_with_named_fields_from_plutus_data_list( + constructor, + named, + plutus_data_list_var, + ), + Fields::Unnamed(unnamed) => variant_with_unnamed_fields_from_plutus_data_list( + constructor, + unnamed, + plutus_data_list_var, + ), + Fields::Unit => { + variant_with_no_field_from_plutus_data_list(constructor, plutus_data_list_var) + } + }; + + let tag = tag as u32; + + parse_quote!( + #tag => #block + ) +} + +fn variant_with_named_fields_to_plutus_data( + constructor: &Path, + tag: usize, + fields_named: &FieldsNamed, +) -> Arm { + let field_names = fields_named + .named + .iter() + .map(|field| field.ident.as_ref().unwrap()); + + let field_accessors = field_names + .clone() + .map(|field_name| -> Expr { parse_quote!(#field_name) }) + .collect::>(); + + let plutus_data_list = data_fields_to_list_of_plutus_data(&field_accessors); + + parse_quote!( + #constructor{ #(#field_names),* } => plutus_ledger_api::plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) + ) +} + +fn variant_with_named_fields_from_plutus_data_list( + constructor: &Path, + fields_named: &FieldsNamed, + plutus_data_list_var: &Ident, +) -> Block { + data_with_named_fields_from_list_of_plutus_data(constructor, fields_named, plutus_data_list_var) +} + +fn variant_with_unnamed_field_to_plutus_data( + constructor: &Path, + tag: usize, + fields_unnamed: &FieldsUnnamed, +) -> Arm { + let field_names = (0..fields_unnamed.unnamed.len()).map(|idx| format_ident!("field_{}", idx)); + + let field_accessors = field_names + .clone() + .map(|field_name| -> Expr { parse_quote!(#field_name) }) + .collect::>(); + + let plutus_data_list = data_fields_to_list_of_plutus_data(&field_accessors); + + parse_quote!( + #constructor(#(#field_names),*) => plutus_ledger_api::plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) + ) +} + +fn variant_with_unnamed_fields_from_plutus_data_list( + constructor: &Path, + fields_unnamed: &FieldsUnnamed, + plutus_data_list_var: &Ident, +) -> Block { + data_with_unnamed_fields_from_list_of_plutus_data( + constructor, + fields_unnamed, + plutus_data_list_var, + ) +} + +fn variant_with_no_field_to_plutus_data(constructor: &Path, tag: usize) -> Arm { + parse_quote!( + #constructor => plutus_ledger_api::plutus_data::PlutusData::Constr(#tag.into(), vec![]) + ) +} + +fn variant_with_no_field_from_plutus_data_list( + constructor: &Path, + plutus_data_list_var: &Ident, +) -> Block { + data_with_no_fields_from_list_of_plutus_data(constructor, plutus_data_list_var) +} + +fn struct_with_named_fields_to_list_of_plutus_data(fields: &FieldsNamed) -> Block { + let field_accessors = fields + .named + .iter() + .map(|field| -> Expr { + let field_name = field.ident.as_ref().unwrap(); + + parse_quote!(self.#field_name) + }) + .collect::>(); + + data_fields_to_list_of_plutus_data(&field_accessors) +} + +fn struct_with_named_fields_from_list_of_plutus_data( + fields: &FieldsNamed, + plutus_data_list_var: &Ident, +) -> Block { + let constructor: Path = parse_quote!(Self); + + data_with_named_fields_from_list_of_plutus_data(&constructor, fields, &plutus_data_list_var) +} + +fn struct_with_named_fields_to_plutus_data_list(fields: &FieldsNamed) -> Block { + let to_list_of_plutus_data = struct_with_named_fields_to_list_of_plutus_data(fields); + + parse_quote!({ + plutus_ledger_api::plutus_data::PlutusData::List(#to_list_of_plutus_data) + }) +} + +fn struct_with_named_fields_from_plutus_data_list( + fields: &FieldsNamed, + plutus_data_input_var: &Ident, +) -> Block { + let list_of_plutus_data_var: Ident = parse_quote!(list_of_plutus_data); + + let from_list_of_plutus_data = + struct_with_named_fields_from_list_of_plutus_data(fields, &list_of_plutus_data_var); + + parse_quote!({ + let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_list(#plutus_data_input_var)?; + + #from_list_of_plutus_data + }) +} + +fn struct_with_named_fields_to_plutus_data_constr(fields: &FieldsNamed) -> Block { + let to_list_of_plutus_data = struct_with_named_fields_to_list_of_plutus_data(fields); + + parse_quote!({ + plutus_ledger_api::plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) + }) +} + +fn struct_with_named_fields_from_plutus_data_constr( + fields: &FieldsNamed, + plutus_data_input_var: &Ident, +) -> Block { + let plutus_data_list_var: Ident = parse_quote!(plutus_data_list); + + let from_plutus_data_list = + struct_with_named_fields_from_list_of_plutus_data(fields, &plutus_data_list_var); + + parse_quote!({ + let #plutus_data_list_var = plutus_ledger_api::plutus_data::parse_constr_with_tag(#plutus_data_input_var, 0)?; + + #from_plutus_data_list + }) +} + +fn struct_with_unnamed_fields_to_list_of_plutus_data(fields: &FieldsUnnamed) -> Block { + let len = fields.unnamed.len(); + + let field_accessors = (0..len) + .into_iter() + .map(|idx| -> Expr { + let idx: Index = idx.into(); + + parse_quote!(self.#idx) + }) + .collect::>(); + + data_fields_to_list_of_plutus_data(&field_accessors) +} + +fn struct_with_unnamed_fields_from_list_of_plutus_data( + fields: &FieldsUnnamed, + plutus_data_list_var: &Ident, +) -> Block { + data_with_unnamed_fields_from_list_of_plutus_data( + &parse_quote!(Self), + fields, + plutus_data_list_var, + ) +} + +fn struct_with_unnamed_fields_to_plutus_data_list(fields: &FieldsUnnamed) -> Block { + let to_list_of_plutus_data = struct_with_unnamed_fields_to_list_of_plutus_data(fields); + + parse_quote!({ + plutus_ledger_api::plutus_data::PlutusData::List(#to_list_of_plutus_data) + }) +} + +fn struct_with_unnamed_fields_from_plutus_data_list( + fields: &FieldsUnnamed, + plutus_data_input_var: &Ident, +) -> Block { + let list_of_plutus_data_var: Ident = parse_quote!(list_of_plutus_data); + + let from_list_of_plutus_data = + struct_with_unnamed_fields_from_list_of_plutus_data(fields, &list_of_plutus_data_var); + + parse_quote!({ + let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_list(#plutus_data_input_var)?; + + #from_list_of_plutus_data + }) +} + +fn struct_with_unnamed_fields_to_plutus_data_constr(fields: &FieldsUnnamed) -> Block { + let to_list_of_plutus_data = struct_with_unnamed_fields_to_list_of_plutus_data(fields); + + parse_quote!({ + plutus_ledger_api::plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) + }) +} + +fn struct_with_unnamed_fields_from_plutus_data_constr( + fields: &FieldsUnnamed, + plutus_data_input_var: &Ident, +) -> Block { + let plutus_data_list_var: Ident = parse_quote!(plutus_data_list); + + let from_list_of_plutus_data = + struct_with_unnamed_fields_from_list_of_plutus_data(fields, &plutus_data_list_var); + + parse_quote!({ + let #plutus_data_list_var = plutus_ledger_api::plutus_data::parse_constr_with_tag(#plutus_data_input_var, 0)?; + + #from_list_of_plutus_data + }) +} + +fn struct_with_no_field_to_plutus_data_list() -> Block { + parse_quote!(plutus_ledger_api::plutus_data::PlutusData::Constr( + 0.into(), + vec![] + )) +} + +fn struct_with_no_field_from_plutus_data_list(plutus_data_input_var: &Ident) -> Block { + let list_of_plutus_data_var: Ident = parse_quote!(list_of_plutus_data); + + let from_list_of_plutus_data = + data_with_no_fields_from_list_of_plutus_data(&parse_quote!(Self), &list_of_plutus_data_var); + + parse_quote!({ + let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_list(#plutus_data_input_var)?; + + + + + #from_list_of_plutus_data + }) +} + +fn struct_with_no_field_to_plutus_data_constr() -> Block { + parse_quote!(plutus_ledger_api::plutus_data::PlutusData::Constr( + 0.into(), + vec![] + )) +} + +fn struct_with_no_field_from_plutus_data_constr(plutus_data_input_var: &Ident) -> Block { + let list_of_plutus_data_var: Ident = parse_quote!(list_of_plutus_data); + + let from_list_of_plutus_data = + data_with_no_fields_from_list_of_plutus_data(&parse_quote!(Self), &list_of_plutus_data_var); + + parse_quote!({ + let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_constr_with_tag(#plutus_data_input_var, 0)?; + + #from_list_of_plutus_data + }) +} + +fn data_fields_to_list_of_plutus_data(field_accessors: &[Expr]) -> Block { + let fields_to_plutus_data = field_accessors + .iter() + .map(|a| -> Expr { parse_quote!(#a.to_plutus_data()) }); + + parse_quote!({ vec![ #(#fields_to_plutus_data),* ] }) +} + +fn data_with_named_fields_from_list_of_plutus_data( + constructor: &Path, + fields_named: &FieldsNamed, + plutus_data_list_var: &Ident, +) -> Block { + let field_count = fields_named.named.len(); + + let field_idents = fields_named + .named + .iter() + .map(|field| field.ident.as_ref().unwrap()); + + let unparsed_field_idents = field_idents + .clone() + .map(|field_ident| format_ident!("unparsed_{}", field_ident)); + + let field_decoded_stmts = field_idents.clone().zip(unparsed_field_idents.clone()).map( + |(field_ident, unparsed_field_ident)| -> Stmt { + parse_quote!( + let #field_ident = plutus_ledger_api::plutus_data::IsPlutusData::from_plutus_data(#unparsed_field_ident)?; + ) + }, + ); + + parse_quote!( + { + let [ #(#unparsed_field_idents),* ] = parse_fixed_len_plutus_data_list::<#field_count>(#plutus_data_list_var)?; + #(#field_decoded_stmts)* + Ok(#constructor{ #(#field_idents),* }) + } + ) +} + +fn data_with_unnamed_fields_from_list_of_plutus_data( + constructor: &Path, + fields_unnamed: &FieldsUnnamed, + plutus_data_list_var: &Ident, +) -> Block { + let field_count = fields_unnamed.unnamed.len(); + + let unparsed_field_idents = + (0..field_count).map(|field_index| format_ident!("unparsed_{}", field_index)); + + let parsed_field_idents = + (0..field_count).map(|field_index| format_ident!("parsed_{}", field_index)); + + let field_decoded_stmts = unparsed_field_idents + .clone() + .zip(parsed_field_idents.clone()) + .map(|(unparsed, parsed)| -> Stmt { + parse_quote!( + let #parsed = IsPlutusData::from_plutus_data(#unparsed)?; + ) + }); + + parse_quote!({ + let [ #(#unparsed_field_idents),* ] = parse_fixed_len_plutus_data_list::<#field_count>(#plutus_data_list_var)?; + #(#field_decoded_stmts)* + Ok(#constructor(#(#parsed_field_idents),*)) + }) +} + +fn data_with_no_fields_from_list_of_plutus_data( + constructor: &Path, + list_of_plutus_data_var: &Ident, +) -> Block { + parse_quote!({ + let [ ] = parse_fixed_len_plutus_data_list::<0>(#list_of_plutus_data_var)?; + Ok(#constructor) + }) +} diff --git a/is-plutus-data-derive/src/lib.rs b/is-plutus-data-derive/src/lib.rs new file mode 100644 index 00000000..4e54429c --- /dev/null +++ b/is-plutus-data-derive/src/lib.rs @@ -0,0 +1,13 @@ +use quote::ToTokens; +use syn::{parse_macro_input, DeriveInput}; + +pub(crate) mod derive_impl; + +#[proc_macro_derive(IsPlutusData, attributes(plutus_data_derive_strategy))] +pub fn derive_is_plutus_data(input: proc_macro::TokenStream) -> proc_macro::TokenStream { + let input = parse_macro_input!(input as DeriveInput); + derive_impl::get_is_plutus_data_instance(input) + .unwrap() + .into_token_stream() + .into() +} From 21efc52e04be49b59884e61774482d45f8d6d86b Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Thu, 17 Oct 2024 23:46:35 +0800 Subject: [PATCH 13/94] separate `PlutusData` and `IsPlutusData` from plutus-ledger-api --- .gitignore | 1 + flake.nix | 1 + is-plutus-data-derive/src/derive_impl.rs | 80 +-- plutus-data/.envrc | 1 + plutus-data/Cargo.lock | 657 ++++++++++++++++++ plutus-data/Cargo.toml | 19 + plutus-data/build.nix | 19 + plutus-data/src/is_plutus_data/aux.rs | 66 ++ plutus-data/src/is_plutus_data/instances.rs | 292 ++++++++ .../src/is_plutus_data/is_plutus_data.rs | 22 + plutus-data/src/is_plutus_data/mod.rs | 3 + plutus-data/src/lib.rs | 8 + plutus-data/src/plutus_data.rs | 183 +++++ 13 files changed, 1306 insertions(+), 46 deletions(-) create mode 100644 plutus-data/.envrc create mode 100644 plutus-data/Cargo.lock create mode 100644 plutus-data/Cargo.toml create mode 100644 plutus-data/build.nix create mode 100644 plutus-data/src/is_plutus_data/aux.rs create mode 100644 plutus-data/src/is_plutus_data/instances.rs create mode 100644 plutus-data/src/is_plutus_data/is_plutus_data.rs create mode 100644 plutus-data/src/is_plutus_data/mod.rs create mode 100644 plutus-data/src/lib.rs create mode 100644 plutus-data/src/plutus_data.rs diff --git a/.gitignore b/.gitignore index 0871c3a0..1f902d28 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ result .pre-commit-config.yaml .DS_Store target +.extras diff --git a/flake.nix b/flake.nix index 8d68e4df..29f46ea0 100644 --- a/flake.nix +++ b/flake.nix @@ -24,6 +24,7 @@ ./plutus-ledger-api/build.nix ./is-plutus-data-derive/build.nix + ./plutus-data/build.nix ]; debug = true; systems = [ "x86_64-linux" "x86_64-darwin" ]; diff --git a/is-plutus-data-derive/src/derive_impl.rs b/is-plutus-data-derive/src/derive_impl.rs index d2874068..35fc5e55 100644 --- a/is-plutus-data-derive/src/derive_impl.rs +++ b/is-plutus-data-derive/src/derive_impl.rs @@ -24,22 +24,20 @@ pub(crate) fn get_is_plutus_data_instance(input: DeriveInput) -> Result plutus_ledger_api::plutus_data::PlutusData { + impl #impl_generics plutus_data::IsPlutusData for #type_name #type_generics #where_clause { + fn to_plutus_data(&self) -> plutus_data::PlutusData { #encoder } - fn from_plutus_data(plutus_data: &plutus_ledger_api::plutus_data::PlutusData) -> Result + fn from_plutus_data(plutus_data: &plutus_data::PlutusData) -> Result where Self: Sized { #decoder } @@ -171,15 +169,15 @@ fn get_newtype_encoder_decoder(input: &DeriveInput) -> Result<(Block, Block)> { Some(field_name) => { parse_quote!({ Ok(Self { - #field_name: plutus_ledger_api::plutus_data::IsPlutusData::from_plutus_data(plutus_data)? + #field_name: plutus_data::IsPlutusData::from_plutus_data(plutus_data)? }) }) } None => { parse_quote!({ - Ok(Self( - plutus_ledger_api::plutus_data::IsPlutusData::from_plutus_data(plutus_data)?, - )) + Ok(Self(plutus_data::IsPlutusData::from_plutus_data( + plutus_data, + )?)) }) } }; @@ -311,11 +309,11 @@ fn enum_from_plutus_data_constr(e: &DataEnum, plutus_data_input_var: &Ident) -> parse_quote!( { - let (tag, #plutus_data_list_var) = plutus_ledger_api::plutus_data::parse_constr(#plutus_data_input_var)?; + let (tag, #plutus_data_list_var) = plutus_data::is_plutus_data::aux::parse_constr(#plutus_data_input_var)?; match tag { #(#arms),* - tag => Err(plutus_ledger_api::plutus_data::PlutusDataError::UnexpectedPlutusInvariant { + tag => Err(plutus_data::PlutusDataError::UnexpectedPlutusInvariant { wanted: format!(#expected_tags_str), got: tag.to_string(), }), @@ -381,7 +379,7 @@ fn variant_with_named_fields_to_plutus_data( let plutus_data_list = data_fields_to_list_of_plutus_data(&field_accessors); parse_quote!( - #constructor{ #(#field_names),* } => plutus_ledger_api::plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) + #constructor{ #(#field_names),* } => plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) ) } @@ -408,7 +406,7 @@ fn variant_with_unnamed_field_to_plutus_data( let plutus_data_list = data_fields_to_list_of_plutus_data(&field_accessors); parse_quote!( - #constructor(#(#field_names),*) => plutus_ledger_api::plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) + #constructor(#(#field_names),*) => plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) ) } @@ -426,7 +424,7 @@ fn variant_with_unnamed_fields_from_plutus_data_list( fn variant_with_no_field_to_plutus_data(constructor: &Path, tag: usize) -> Arm { parse_quote!( - #constructor => plutus_ledger_api::plutus_data::PlutusData::Constr(#tag.into(), vec![]) + #constructor => plutus_data::PlutusData::Constr(#tag.into(), vec![]) ) } @@ -464,7 +462,7 @@ fn struct_with_named_fields_to_plutus_data_list(fields: &FieldsNamed) -> Block { let to_list_of_plutus_data = struct_with_named_fields_to_list_of_plutus_data(fields); parse_quote!({ - plutus_ledger_api::plutus_data::PlutusData::List(#to_list_of_plutus_data) + plutus_data::PlutusData::List(#to_list_of_plutus_data) }) } @@ -478,7 +476,7 @@ fn struct_with_named_fields_from_plutus_data_list( struct_with_named_fields_from_list_of_plutus_data(fields, &list_of_plutus_data_var); parse_quote!({ - let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_list(#plutus_data_input_var)?; + let #list_of_plutus_data_var = plutus_data::is_plutus_data::aux::parse_list(#plutus_data_input_var)?; #from_list_of_plutus_data }) @@ -488,7 +486,7 @@ fn struct_with_named_fields_to_plutus_data_constr(fields: &FieldsNamed) -> Block let to_list_of_plutus_data = struct_with_named_fields_to_list_of_plutus_data(fields); parse_quote!({ - plutus_ledger_api::plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) + plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) }) } @@ -502,7 +500,7 @@ fn struct_with_named_fields_from_plutus_data_constr( struct_with_named_fields_from_list_of_plutus_data(fields, &plutus_data_list_var); parse_quote!({ - let #plutus_data_list_var = plutus_ledger_api::plutus_data::parse_constr_with_tag(#plutus_data_input_var, 0)?; + let #plutus_data_list_var = plutus_data::is_plutus_data::aux::parse_constr_with_tag(#plutus_data_input_var, 0)?; #from_plutus_data_list }) @@ -538,7 +536,7 @@ fn struct_with_unnamed_fields_to_plutus_data_list(fields: &FieldsUnnamed) -> Blo let to_list_of_plutus_data = struct_with_unnamed_fields_to_list_of_plutus_data(fields); parse_quote!({ - plutus_ledger_api::plutus_data::PlutusData::List(#to_list_of_plutus_data) + plutus_data::PlutusData::List(#to_list_of_plutus_data) }) } @@ -552,7 +550,7 @@ fn struct_with_unnamed_fields_from_plutus_data_list( struct_with_unnamed_fields_from_list_of_plutus_data(fields, &list_of_plutus_data_var); parse_quote!({ - let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_list(#plutus_data_input_var)?; + let #list_of_plutus_data_var = plutus_data::is_plutus_data::aux::parse_list(#plutus_data_input_var)?; #from_list_of_plutus_data }) @@ -562,7 +560,7 @@ fn struct_with_unnamed_fields_to_plutus_data_constr(fields: &FieldsUnnamed) -> B let to_list_of_plutus_data = struct_with_unnamed_fields_to_list_of_plutus_data(fields); parse_quote!({ - plutus_ledger_api::plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) + plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) }) } @@ -570,23 +568,19 @@ fn struct_with_unnamed_fields_from_plutus_data_constr( fields: &FieldsUnnamed, plutus_data_input_var: &Ident, ) -> Block { - let plutus_data_list_var: Ident = parse_quote!(plutus_data_list); + let fields_var: Ident = parse_quote!(fields); - let from_list_of_plutus_data = - struct_with_unnamed_fields_from_list_of_plutus_data(fields, &plutus_data_list_var); + let from_fields = struct_with_unnamed_fields_from_list_of_plutus_data(fields, &fields_var); parse_quote!({ - let #plutus_data_list_var = plutus_ledger_api::plutus_data::parse_constr_with_tag(#plutus_data_input_var, 0)?; + let #fields_var = plutus_data::is_plutus_data::aux::parse_constr_with_tag(#plutus_data_input_var, 0)?; - #from_list_of_plutus_data + #from_fields }) } fn struct_with_no_field_to_plutus_data_list() -> Block { - parse_quote!(plutus_ledger_api::plutus_data::PlutusData::Constr( - 0.into(), - vec![] - )) + parse_quote!(plutus_data::PlutusData::Constr(0.into(), vec![])) } fn struct_with_no_field_from_plutus_data_list(plutus_data_input_var: &Ident) -> Block { @@ -596,32 +590,26 @@ fn struct_with_no_field_from_plutus_data_list(plutus_data_input_var: &Ident) -> data_with_no_fields_from_list_of_plutus_data(&parse_quote!(Self), &list_of_plutus_data_var); parse_quote!({ - let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_list(#plutus_data_input_var)?; - - - + let #list_of_plutus_data_var = plutus_data::is_plutus_data::aux::parse_list(#plutus_data_input_var)?; #from_list_of_plutus_data }) } fn struct_with_no_field_to_plutus_data_constr() -> Block { - parse_quote!(plutus_ledger_api::plutus_data::PlutusData::Constr( - 0.into(), - vec![] - )) + parse_quote!(plutus_data::PlutusData::Constr(0.into(), vec![])) } fn struct_with_no_field_from_plutus_data_constr(plutus_data_input_var: &Ident) -> Block { - let list_of_plutus_data_var: Ident = parse_quote!(list_of_plutus_data); + let fields_var: Ident = parse_quote!(fields); - let from_list_of_plutus_data = - data_with_no_fields_from_list_of_plutus_data(&parse_quote!(Self), &list_of_plutus_data_var); + let from_fields = + data_with_no_fields_from_list_of_plutus_data(&parse_quote!(Self), &fields_var); parse_quote!({ - let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_constr_with_tag(#plutus_data_input_var, 0)?; + let #fields_var = plutus_data::is_plutus_data::aux::parse_constr_with_tag(#plutus_data_input_var, 0)?; - #from_list_of_plutus_data + #from_fields }) } @@ -652,7 +640,7 @@ fn data_with_named_fields_from_list_of_plutus_data( let field_decoded_stmts = field_idents.clone().zip(unparsed_field_idents.clone()).map( |(field_ident, unparsed_field_ident)| -> Stmt { parse_quote!( - let #field_ident = plutus_ledger_api::plutus_data::IsPlutusData::from_plutus_data(#unparsed_field_ident)?; + let #field_ident = plutus_data::IsPlutusData::from_plutus_data(#unparsed_field_ident)?; ) }, ); diff --git a/plutus-data/.envrc b/plutus-data/.envrc new file mode 100644 index 00000000..6841e870 --- /dev/null +++ b/plutus-data/.envrc @@ -0,0 +1 @@ +use flake .#dev-plutus-data-rust diff --git a/plutus-data/Cargo.lock b/plutus-data/Cargo.lock new file mode 100644 index 00000000..690b9931 --- /dev/null +++ b/plutus-data/Cargo.lock @@ -0,0 +1,657 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "autocfg" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" + +[[package]] +name = "bit-set" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +dependencies = [ + "bit-vec", +] + +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + +[[package]] +name = "bitflags" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "data-encoding" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" + +[[package]] +name = "dissimilar" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59f8e79d1fbf76bdfbde321e902714bf6c49df88a7dda6fc682fc2979226962d" + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "fastrand" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "getrandom" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +dependencies = [ + "cfg-if", + "libc", + "wasi", +] + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "hashbrown" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" + +[[package]] +name = "indexmap" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "is-plutus-data-derive" +version = "0.1.0" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "thiserror", +] + +[[package]] +name = "itoa" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" + +[[package]] +name = "lbr-prelude" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21471892874c4667636a067ed7a158b9691178988a4c5988585e1010e9b5817d" +dependencies = [ + "data-encoding", + "lbr-prelude-derive", + "num-bigint", + "proptest", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "lbr-prelude-derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "370d0aa0809ee84ccf7c6d84ae2d6ac97b84cb1337b3d145101bcf6a7319deac" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "trybuild", +] + +[[package]] +name = "libc" +version = "0.2.160" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0b21006cd1874ae9e650973c565615676dc4a274c965bb0a73796dac838ce4f" + +[[package]] +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + +[[package]] +name = "linux-raw-sys" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" + +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "num-bigint" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" +dependencies = [ + "num-integer", + "num-traits", + "serde", +] + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", + "libm", +] + +[[package]] +name = "once_cell" +version = "1.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" + +[[package]] +name = "plutus-data" +version = "0.1.0" +dependencies = [ + "data-encoding", + "is-plutus-data-derive", + "lbr-prelude", + "num-bigint", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "ppv-lite86" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] + +[[package]] +name = "proc-macro2" +version = "1.0.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "proptest" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" +dependencies = [ + "bit-set", + "bit-vec", + "bitflags", + "lazy_static", + "num-traits", + "rand", + "rand_chacha", + "rand_xorshift", + "regex-syntax", + "rusty-fork", + "tempfile", + "unarray", +] + +[[package]] +name = "quick-error" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" + +[[package]] +name = "quote" +version = "1.0.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "rand_xorshift" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +dependencies = [ + "rand_core", +] + +[[package]] +name = "regex-syntax" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" + +[[package]] +name = "rustix" +version = "0.38.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" +dependencies = [ + "bitflags", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.52.0", +] + +[[package]] +name = "rusty-fork" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" +dependencies = [ + "fnv", + "quick-error", + "tempfile", + "wait-timeout", +] + +[[package]] +name = "ryu" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" + +[[package]] +name = "serde" +version = "1.0.210" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.210" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.128" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" +dependencies = [ + "itoa", + "memchr", + "ryu", + "serde", +] + +[[package]] +name = "serde_spanned" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" +dependencies = [ + "serde", +] + +[[package]] +name = "syn" +version = "2.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "tempfile" +version = "3.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" +dependencies = [ + "cfg-if", + "fastrand", + "once_cell", + "rustix", + "windows-sys 0.59.0", +] + +[[package]] +name = "termcolor" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "thiserror" +version = "1.0.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "toml" +version = "0.8.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + +[[package]] +name = "toml_datetime" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.22.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +dependencies = [ + "indexmap", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + +[[package]] +name = "trybuild" +version = "1.0.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8923cde76a6329058a86f04d033f0945a2c6df8b94093512e4ab188b3e3a8950" +dependencies = [ + "dissimilar", + "glob", + "serde", + "serde_derive", + "serde_json", + "termcolor", + "toml", +] + +[[package]] +name = "unarray" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" + +[[package]] +name = "unicode-ident" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" + +[[package]] +name = "wait-timeout" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +dependencies = [ + "libc", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "winapi-util" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_gnullvm", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "winnow" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" +dependencies = [ + "memchr", +] + +[[package]] +name = "zerocopy" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +dependencies = [ + "byteorder", + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] diff --git a/plutus-data/Cargo.toml b/plutus-data/Cargo.toml new file mode 100644 index 00000000..ade68904 --- /dev/null +++ b/plutus-data/Cargo.toml @@ -0,0 +1,19 @@ +[package] +name = "plutus-data" +version = "0.1.0" +edition = "2021" + +[dependencies] +serde = { version = "^1.0.189", features = ["derive"], optional = true } +serde_json = { version = "1.0.128", optional = true } +num-bigint = "~0.4" +is-plutus-data-derive = { path = ".extras/is-plutus-data-derive-0", optional = true } +lbr-prelude = { version = "0.1.1", optional = true } +data-encoding = { version = "2.6.0", optional = true } +thiserror = "1.0.64" + +[features] +default = [] +serde = ["dep:serde", "num-bigint/serde", "dep:serde_json"] +lbf = ["dep:lbr-prelude", "dep:serde_json", "dep:data-encoding"] +derive = ["dep:is-plutus-data-derive"] diff --git a/plutus-data/build.nix b/plutus-data/build.nix new file mode 100644 index 00000000..33b00935 --- /dev/null +++ b/plutus-data/build.nix @@ -0,0 +1,19 @@ +{ inputs, ... }: { + perSystem = { config, system, ... }: + let + rustFlake = + inputs.flake-lang.lib.${system}.rustFlake { + src = ./.; + version = "0"; + crateName = "plutus-data"; + devShellHook = config.settings.shell.hook; + cargoNextestExtraArgs = "--all-features"; + extraSources = [ + config.packages.is-plutus-data-derive-rust-src + ]; + }; + in + { + inherit (rustFlake) packages checks devShells; + }; +} diff --git a/plutus-data/src/is_plutus_data/aux.rs b/plutus-data/src/is_plutus_data/aux.rs new file mode 100644 index 00000000..b793f7f5 --- /dev/null +++ b/plutus-data/src/is_plutus_data/aux.rs @@ -0,0 +1,66 @@ +use crate::{PlutusData, PlutusDataError, PlutusType}; + +/// Given a vector of PlutusData, parse it as an array whose length is known at +/// compile time. +/// +/// This function is used by the derive macro. +pub fn parse_fixed_len_constr_fields( + v: &[PlutusData], +) -> Result<&[PlutusData; LEN], PlutusDataError> { + v.try_into() + .map_err(|_| PlutusDataError::UnexpectedListLength { + got: v.len(), + wanted: LEN, + }) +} + +/// Given a PlutusData, parse it as PlutusData::Constr and its tag as u32. Return +/// the u32 tag and fields. +/// +/// This function is used by the derive macro. +pub fn parse_constr(data: &PlutusData) -> Result<(u32, &Vec), PlutusDataError> { + match data { + PlutusData::Constr(tag, fields) => u32::try_from(tag) + .map_err(|err| PlutusDataError::UnexpectedPlutusInvariant { + got: err.to_string(), + wanted: "Constr bigint tag within u32 range".into(), + }) + .map(|tag| (tag, fields)), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Constr, + got: PlutusType::from(data), + }), + } +} + +/// Given a PlutusData, parse it as PlutusData::Constr and verify its tag. +/// +/// This function is used by the derive macro. +pub fn parse_constr_with_tag( + data: &PlutusData, + expected_tag: u32, +) -> Result<&Vec, PlutusDataError> { + let (tag, fields) = parse_constr(data)?; + + if tag != expected_tag { + Err(PlutusDataError::UnexpectedPlutusInvariant { + got: tag.to_string(), + wanted: format!("Constr with tag {}", expected_tag), + }) + } else { + Ok(fields) + } +} + +/// Given a PlutusData, parse it as PlutusData::List. Return the plutus data list. +/// +/// This function is used by the derive macro. +pub fn parse_list(data: &PlutusData) -> Result<&Vec, PlutusDataError> { + match data { + PlutusData::List(list_of_plutus_data) => Ok(list_of_plutus_data), + _ => Err(PlutusDataError::UnexpectedPlutusType { + got: PlutusType::from(data), + wanted: PlutusType::List, + }), + } +} diff --git a/plutus-data/src/is_plutus_data/instances.rs b/plutus-data/src/is_plutus_data/instances.rs new file mode 100644 index 00000000..5c7838a4 --- /dev/null +++ b/plutus-data/src/is_plutus_data/instances.rs @@ -0,0 +1,292 @@ +use std::collections::{BTreeMap, BTreeSet}; + +use num_bigint::BigInt; + +use crate::{IsPlutusData, PlutusData, PlutusDataError, PlutusType}; + +use super::aux::{parse_constr, parse_constr_with_tag, parse_fixed_len_constr_fields, parse_list}; + +impl IsPlutusData for PlutusData { + fn to_plutus_data(&self) -> PlutusData { + self.clone() + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + Ok(plutus_data.clone()) + } +} + +// MARK: Orphan Instances + +impl IsPlutusData for BigInt { + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Integer(self.clone()) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::Integer(int) => Ok(int.clone()), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Integer, + got: PlutusType::from(plutus_data), + }), + } + } +} + +impl IsPlutusData for Vec { + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Bytes(self.clone()) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::Bytes(bytes) => Ok(bytes.clone()), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Bytes, + got: PlutusType::from(plutus_data), + }), + } + } +} + +const BOOL_FALSE_TAG: u32 = 0; +const BOOL_TRUE_TAG: u32 = 1; + +impl IsPlutusData for bool { + fn to_plutus_data(&self) -> PlutusData { + if *self { + PlutusData::Constr(BOOL_TRUE_TAG.into(), vec![]) + } else { + PlutusData::Constr(BOOL_FALSE_TAG.into(), vec![]) + } + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let (tag, fields) = parse_constr(plutus_data)?; + let [] = parse_fixed_len_constr_fields::<0>(fields)?; + match tag { + BOOL_TRUE_TAG => Ok(true), + BOOL_FALSE_TAG => Ok(false), + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + wanted: format!("Constr with tag {BOOL_TRUE_TAG} or {BOOL_FALSE_TAG}"), + got: tag.to_string(), + }), + } + } +} + +impl IsPlutusData for String { + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Bytes(self.as_bytes().into()) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::Bytes(bytes) => String::from_utf8(bytes.clone()).map_err(|err| { + PlutusDataError::InternalError(format!( + "Couldn't convert Plutus bytes to String: {:?}", + err + )) + }), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Bytes, + got: PlutusType::from(plutus_data), + }), + } + } +} + +impl IsPlutusData for char { + fn to_plutus_data(&self) -> PlutusData { + String::from(*self).to_plutus_data() + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + String::from_plutus_data(plutus_data).and_then(|str| { + let mut chars = str.chars(); + let ch = chars.next(); + let rest = chars.next(); + match (ch, rest) { + (Some(ch), None) => Ok(ch), + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + got: "string".to_owned(), + wanted: "char".to_owned(), + }), + } + }) + } +} + +const OPTION_SOME_TAG: u32 = 0; +const OPTION_NONE_TAG: u32 = 1; + +impl IsPlutusData for Option +where + T: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + match self { + Some(val) => PlutusData::Constr(OPTION_SOME_TAG.into(), vec![val.to_plutus_data()]), + None => PlutusData::Constr(OPTION_NONE_TAG.into(), vec![]), + } + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let (tag, fields) = parse_constr(plutus_data)?; + + match tag { + OPTION_SOME_TAG => { + let [data] = parse_fixed_len_constr_fields::<1>(fields)?; + Ok(Some(T::from_plutus_data(data)?)) + } + OPTION_NONE_TAG => { + let [] = parse_fixed_len_constr_fields::<0>(fields)?; + Ok(None) + } + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + wanted: format!("Constr with tag {OPTION_SOME_TAG} or {OPTION_NONE_TAG}"), + got: tag.to_string(), + }), + } + } +} + +const RESULT_ERR_TAG: u32 = 0; +const RESULT_OK_TAG: u32 = 1; + +impl IsPlutusData for Result +where + T: IsPlutusData, + E: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + match self { + Err(err) => PlutusData::Constr(RESULT_ERR_TAG.into(), vec![err.to_plutus_data()]), + Ok(val) => PlutusData::Constr(RESULT_OK_TAG.into(), vec![val.to_plutus_data()]), + } + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let (tag, fields) = parse_constr(plutus_data)?; + let [field] = parse_fixed_len_constr_fields::<1>(fields)?; + + match tag { + RESULT_ERR_TAG => Ok(Err(E::from_plutus_data(field)?)), + RESULT_OK_TAG => Ok(Ok(T::from_plutus_data(field)?)), + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + wanted: format!("Constr with tag {RESULT_ERR_TAG} or {RESULT_OK_TAG}"), + got: tag.to_string(), + }), + } + } +} + +impl IsPlutusData for Vec +where + T: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + let values = self + .iter() + .map(|val| val.to_plutus_data()) + .collect::>(); + + PlutusData::List(values) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let list = parse_list(plutus_data)?; + list.iter().map(T::from_plutus_data).collect() + } +} + +impl IsPlutusData for BTreeSet +where + T: IsPlutusData + Eq + Ord, +{ + fn to_plutus_data(&self) -> PlutusData { + let set = self + .iter() + .map(|val| val.to_plutus_data()) + .collect::>(); + + PlutusData::List(set) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::List(vec) => vec + .iter() + .map(|val| T::from_plutus_data(val)) + .collect::>(), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::List, + got: PlutusType::from(plutus_data), + }), + } + } +} + +impl IsPlutusData for BTreeMap +where + K: IsPlutusData + Eq + Ord, + V: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + let assoc_map = self + .iter() + .map(|(key, val)| (key.to_plutus_data(), val.to_plutus_data())) + .collect::>(); + + PlutusData::Map(assoc_map) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::Map(dict) => dict + .iter() + .map(|(key, val)| Ok((K::from_plutus_data(key)?, V::from_plutus_data(val)?))) + .collect::>(), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Map, + got: PlutusType::from(plutus_data), + }), + } + } +} + +const UNIT_TAG: u32 = 0; + +impl IsPlutusData for () { + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Constr(UNIT_TAG.into(), vec![]) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let fields = parse_constr_with_tag(plutus_data, UNIT_TAG)?; + let [] = parse_fixed_len_constr_fields::<0>(fields)?; + Ok(()) + } +} + +const PAIR_TAG: u32 = 0; + +impl IsPlutusData for (A, B) +where + A: IsPlutusData, + B: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Constr( + BigInt::from(PAIR_TAG), + vec![self.0.to_plutus_data(), self.1.to_plutus_data()], + ) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let fields = parse_constr_with_tag(plutus_data, PAIR_TAG)?; + let [a, b] = parse_fixed_len_constr_fields::<2>(fields)?; + Ok((A::from_plutus_data(a)?, B::from_plutus_data(b)?)) + } +} diff --git a/plutus-data/src/is_plutus_data/is_plutus_data.rs b/plutus-data/src/is_plutus_data/is_plutus_data.rs new file mode 100644 index 00000000..4f73c158 --- /dev/null +++ b/plutus-data/src/is_plutus_data/is_plutus_data.rs @@ -0,0 +1,22 @@ +use crate::{PlutusData, PlutusType}; + +pub trait IsPlutusData { + fn to_plutus_data(&self) -> PlutusData; + + fn from_plutus_data(plutus_data: &PlutusData) -> Result + where + Self: Sized; +} + +// TODO(chfanghr): improve error reporting +#[derive(Clone, Debug, thiserror::Error)] +pub enum PlutusDataError { + #[error("Expected a PlutusData type {wanted:?}, but got {got:?}")] + UnexpectedPlutusType { got: PlutusType, wanted: PlutusType }, + #[error("Expected a PlutusData type as {wanted:?}, but got {got:?}")] + UnexpectedPlutusInvariant { got: String, wanted: String }, + #[error("Expected a Plutus List with {wanted:?} elements, but got {got:?} elements")] + UnexpectedListLength { got: usize, wanted: usize }, + #[error("Some internal error happened: {0}")] + InternalError(String), +} diff --git a/plutus-data/src/is_plutus_data/mod.rs b/plutus-data/src/is_plutus_data/mod.rs new file mode 100644 index 00000000..526bebf2 --- /dev/null +++ b/plutus-data/src/is_plutus_data/mod.rs @@ -0,0 +1,3 @@ +pub mod aux; +mod instances; +pub mod is_plutus_data; diff --git a/plutus-data/src/lib.rs b/plutus-data/src/lib.rs new file mode 100644 index 00000000..c2c607a5 --- /dev/null +++ b/plutus-data/src/lib.rs @@ -0,0 +1,8 @@ +pub mod is_plutus_data; +pub mod plutus_data; + +#[cfg(feature = "derive")] +pub use is_plutus_data_derive::IsPlutusData; + +pub use is_plutus_data::is_plutus_data::{IsPlutusData, PlutusDataError}; +pub use plutus_data::{PlutusData, PlutusType}; diff --git a/plutus-data/src/plutus_data.rs b/plutus-data/src/plutus_data.rs new file mode 100644 index 00000000..9c3cbfc5 --- /dev/null +++ b/plutus-data/src/plutus_data.rs @@ -0,0 +1,183 @@ +use num_bigint::BigInt; + +#[cfg(feature = "lbf")] +use data_encoding::HEXLOWER; +#[cfg(feature = "lbf")] +use lbr_prelude::error::Error; +#[cfg(feature = "lbf")] +use lbr_prelude::json::{ + case_json_constructor, case_json_object, json_constructor, json_object, Json, +}; + +#[cfg(feature = "serde")] +use serde::{Deserialize, Serialize}; + +/// Data representation of on-chain data such as Datums and Redeemers +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +pub enum PlutusData { + Constr(BigInt, Vec), + Map(Vec<(PlutusData, PlutusData)>), + List(Vec), + Integer(BigInt), + Bytes(Vec), +} + +#[derive(Clone, Debug)] +pub enum PlutusType { + Constr, + Map, + List, + Integer, + Bytes, +} + +impl From<&PlutusData> for PlutusType { + fn from(plutus_data: &PlutusData) -> Self { + match plutus_data { + PlutusData::Constr(_, _) => PlutusType::Constr, + PlutusData::Map(_) => PlutusType::Map, + PlutusData::List(_) => PlutusType::List, + PlutusData::Integer(_) => PlutusType::Integer, + PlutusData::Bytes(_) => PlutusType::Bytes, + } + } +} + +impl PlutusData { + pub fn constr(tag: u32, fields: Vec) -> Self { + PlutusData::Constr(BigInt::from(tag), fields) + } + + pub fn map(fields: Vec<(PlutusData, PlutusData)>) -> Self { + PlutusData::Map(fields) + } + + pub fn list(fields: Vec) -> Self { + PlutusData::List(fields) + } + + pub fn integer(value: u32) -> Self { + PlutusData::Integer(BigInt::from(value)) + } + + pub fn bytes(value: Vec) -> Self { + PlutusData::Bytes(value) + } +} + +#[cfg(feature = "lbf")] +impl Json for PlutusData { + fn to_json(&self) -> serde_json::Value { + match self { + PlutusData::Constr(index, fields) => json_constructor( + "Constr", + vec![json_object(vec![ + ("index".to_string(), index.to_json()), + ("fields".to_string(), fields.to_json()), + ])], + ), + PlutusData::Map(map) => json_constructor("Map", vec![map.to_json()]), + PlutusData::List(list) => json_constructor("List", vec![list.to_json()]), + PlutusData::Integer(int) => json_constructor("Integer", vec![int.to_json()]), + PlutusData::Bytes(bytes) => { + json_constructor("Bytes", vec![String::to_json(&HEXLOWER.encode(bytes))]) + } + } + } + + fn from_json(value: &serde_json::Value) -> Result { + case_json_constructor( + "PlutusV1.PlutusData", + vec![ + ( + "Constr", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => case_json_object( + |obj| { + let index = obj.get("index").ok_or(Error::UnexpectedFieldName { + wanted: "index".to_owned(), + got: obj.keys().cloned().collect(), + parser: "PlutusV1.PlutusData".to_owned(), + })?; + + let fields = + obj.get("fields").ok_or(Error::UnexpectedFieldName { + wanted: "fields".to_owned(), + got: obj.keys().cloned().collect(), + parser: "PlutusV1.PlutusData".to_owned(), + })?; + Ok(PlutusData::Constr( + BigInt::from_json(index)?, + >::from_json(fields)?, + )) + }, + val, + ), + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ( + "Map", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => Ok(PlutusData::Map(Json::from_json(val)?)), + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ( + "List", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => Ok(PlutusData::List(Json::from_json(val)?)), + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ( + "Integer", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => Ok(PlutusData::Integer(Json::from_json(val)?)), + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ( + "Bytes", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => { + let bytes = String::from_json(val).and_then(|str| { + HEXLOWER.decode(&str.into_bytes()).map_err(|_| { + Error::UnexpectedJsonInvariant { + wanted: "base16 string".to_owned(), + got: "unexpected string".to_owned(), + parser: "Plutus.V1.Bytes".to_owned(), + } + }) + })?; + Ok(PlutusData::Bytes(bytes)) + } + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ], + value, + ) + } +} From 1a7c261b20bc83595921b0a564e27cdbf96ce7c2 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Thu, 17 Oct 2024 23:58:01 +0800 Subject: [PATCH 14/94] lower version requirement of proc-macro2 --- is-plutus-data-derive/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/is-plutus-data-derive/Cargo.toml b/is-plutus-data-derive/Cargo.toml index acaf07fe..770f5199 100644 --- a/is-plutus-data-derive/Cargo.toml +++ b/is-plutus-data-derive/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" [dependencies] -proc-macro2 = "1.0.87" +proc-macro2 = "^1.0.66" quote = "1.0.37" syn = { version = "2.0.79", features = ["full", "extra-traits"]} thiserror = "1.0.64" From 167395f67add825645763208fece00bfb545e4d4 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Fri, 18 Oct 2024 00:02:29 +0800 Subject: [PATCH 15/94] `plutus_data_derive_strategy` -> `is_plutus_data_derive_strategy` --- is-plutus-data-derive/src/derive_impl.rs | 2 +- is-plutus-data-derive/src/lib.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/is-plutus-data-derive/src/derive_impl.rs b/is-plutus-data-derive/src/derive_impl.rs index 35fc5e55..b40bc6f7 100644 --- a/is-plutus-data-derive/src/derive_impl.rs +++ b/is-plutus-data-derive/src/derive_impl.rs @@ -96,7 +96,7 @@ fn try_parse_derive_strategy(attr: &Attribute) -> Option> let value = match &attr.meta { Meta::NameValue(name_value) => name_value .path - .is_ident("plutus_data_derive_strategy") + .is_ident("is_plutus_data_derive_strategy") .then_some(&name_value.value), _ => None, }?; diff --git a/is-plutus-data-derive/src/lib.rs b/is-plutus-data-derive/src/lib.rs index 4e54429c..2ba5263a 100644 --- a/is-plutus-data-derive/src/lib.rs +++ b/is-plutus-data-derive/src/lib.rs @@ -3,7 +3,7 @@ use syn::{parse_macro_input, DeriveInput}; pub(crate) mod derive_impl; -#[proc_macro_derive(IsPlutusData, attributes(plutus_data_derive_strategy))] +#[proc_macro_derive(IsPlutusData, attributes(is_plutus_data_derive_strategy))] pub fn derive_is_plutus_data(input: proc_macro::TokenStream) -> proc_macro::TokenStream { let input = parse_macro_input!(input as DeriveInput); derive_impl::get_is_plutus_data_instance(input) From 4d5a08b2b41e7cc96d863b7368aa3fd9e1bde053 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Fri, 18 Oct 2024 00:03:58 +0800 Subject: [PATCH 16/94] fix `parse_fixed_len_plutus_data_list` not in scope --- is-plutus-data-derive/src/derive_impl.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/is-plutus-data-derive/src/derive_impl.rs b/is-plutus-data-derive/src/derive_impl.rs index b40bc6f7..51f483fa 100644 --- a/is-plutus-data-derive/src/derive_impl.rs +++ b/is-plutus-data-derive/src/derive_impl.rs @@ -647,7 +647,7 @@ fn data_with_named_fields_from_list_of_plutus_data( parse_quote!( { - let [ #(#unparsed_field_idents),* ] = parse_fixed_len_plutus_data_list::<#field_count>(#plutus_data_list_var)?; + let [ #(#unparsed_field_idents),* ] = plutus_data::is_plutus_data::aux::parse_fixed_len_constr_fields::<#field_count>(#plutus_data_list_var)?; #(#field_decoded_stmts)* Ok(#constructor{ #(#field_idents),* }) } @@ -677,7 +677,7 @@ fn data_with_unnamed_fields_from_list_of_plutus_data( }); parse_quote!({ - let [ #(#unparsed_field_idents),* ] = parse_fixed_len_plutus_data_list::<#field_count>(#plutus_data_list_var)?; + let [ #(#unparsed_field_idents),* ] = plutus_data::is_plutus_data::aux::parse_fixed_len_constr_fields::<#field_count>(#plutus_data_list_var)?; #(#field_decoded_stmts)* Ok(#constructor(#(#parsed_field_idents),*)) }) @@ -688,7 +688,7 @@ fn data_with_no_fields_from_list_of_plutus_data( list_of_plutus_data_var: &Ident, ) -> Block { parse_quote!({ - let [ ] = parse_fixed_len_plutus_data_list::<0>(#list_of_plutus_data_var)?; + let [ ] = plutus_data::is_plutus_data::aux::parse_fixed_len_constr_fields::<0>(#list_of_plutus_data_var)?; Ok(#constructor) }) } From 001c5588fe19d36e3bc89d4e52b388cf25626973 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Fri, 18 Oct 2024 00:35:51 +0800 Subject: [PATCH 17/94] attribute value can only be literal --- is-plutus-data-derive/src/derive_impl.rs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/is-plutus-data-derive/src/derive_impl.rs b/is-plutus-data-derive/src/derive_impl.rs index 51f483fa..0b0886cd 100644 --- a/is-plutus-data-derive/src/derive_impl.rs +++ b/is-plutus-data-derive/src/derive_impl.rs @@ -5,8 +5,8 @@ use syn::{ parse::{Parse, ParseStream}, parse_quote, spanned::Spanned, - Arm, Attribute, Block, Data, DataEnum, DataStruct, DeriveInput, Error, Expr, Fields, - FieldsNamed, FieldsUnnamed, Ident, Index, ItemImpl, Meta, Path, Result, Stmt, + Arm, Attribute, Block, Data, DataEnum, DataStruct, DeriveInput, Error, Expr, ExprLit, Fields, + FieldsNamed, FieldsUnnamed, Ident, Index, ItemImpl, Lit, Meta, Path, Result, Stmt, }; pub(crate) fn get_is_plutus_data_instance(input: DeriveInput) -> Result { @@ -56,7 +56,7 @@ enum DeriveStrategy { enum DeriveStrategyError { #[error("Unknown strategy {0}. Should be one of Newtype, List and Constr.")] UnknownStrategy(String), - #[error("Unable to parse strategy. Should be an Ident.")] + #[error("Unable to parse strategy. Should be a string literal Newtype, Constr or List.")] UnexpectedToken, #[error("More than one strategies specified.")] MoreThanOneSpecified, @@ -102,10 +102,11 @@ fn try_parse_derive_strategy(attr: &Attribute) -> Option> }?; Some(match &value { - Expr::Path(path) => (|| -> Result { - let ident = path.path.require_ident()?; - DeriveStrategy::from_str(&ident.to_string()) - .map_err(|err| Error::new(ident.span(), err)) + Expr::Lit(ExprLit { + lit: Lit::Str(str_lit), + .. + }) => (|| -> Result { + DeriveStrategy::from_str(&str_lit.value()).map_err(|err| Error::new(attr.span(), err)) })(), _ => Err(Error::new( value.span(), From c7812dd13805183e5b9b733712514a175add7d26 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Fri, 18 Oct 2024 01:03:38 +0800 Subject: [PATCH 18/94] derive the shit out of it --- plutus-ledger-api/Cargo.lock | 24 + plutus-ledger-api/Cargo.toml | 5 +- plutus-ledger-api/build.nix | 4 + plutus-ledger-api/src/plutus_data.rs | 608 +----------------------- plutus-ledger-api/src/v1/address.rs | 169 ++----- plutus-ledger-api/src/v1/crypto.rs | 89 +--- plutus-ledger-api/src/v1/datum.rs | 28 +- plutus-ledger-api/src/v1/interval.rs | 127 ++--- plutus-ledger-api/src/v1/redeemer.rs | 28 +- plutus-ledger-api/src/v1/script.rs | 41 +- plutus-ledger-api/src/v1/transaction.rs | 325 +------------ plutus-ledger-api/src/v1/value.rs | 41 +- plutus-ledger-api/src/v2/datum.rs | 51 +- plutus-ledger-api/src/v2/transaction.rs | 150 +----- 14 files changed, 155 insertions(+), 1535 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 17e1f901..e2f7fa2b 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -398,6 +398,16 @@ dependencies = [ "hashbrown 0.15.0", ] +[[package]] +name = "is-plutus-data-derive" +version = "0.1.0" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "thiserror", +] + [[package]] name = "itertools" version = "0.10.5" @@ -598,6 +608,19 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +[[package]] +name = "plutus-data" +version = "0.1.0" +dependencies = [ + "data-encoding", + "is-plutus-data-derive", + "lbr-prelude", + "num-bigint", + "serde", + "serde_json", + "thiserror", +] + [[package]] name = "plutus-ledger-api" version = "2.0.0-beta.1" @@ -612,6 +635,7 @@ dependencies = [ "linked-hash-map", "num-bigint", "num-traits", + "plutus-data", "proptest", "serde", "serde_json", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 66411b0e..d09b07f5 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -23,11 +23,12 @@ impl_ops = "0.1.1" chrono = { version = "0.4.34", optional = true } cardano-serialization-lib = "12.1.0" anyhow = "1.0.86" +plutus-data = { path = ".extras/plutus-data-0", features = [ "derive" ]} [features] default = [] -serde = ["dep:serde", "num-bigint/serde", "dep:serde_json"] -lbf = ["dep:lbr-prelude", "dep:serde_json"] +serde = ["dep:serde", "num-bigint/serde", "dep:serde_json", "plutus-data/serde"] +lbf = ["dep:lbr-prelude", "dep:serde_json", "plutus-data/lbf"] chrono = ["dep:chrono"] [dev-dependencies] diff --git a/plutus-ledger-api/build.nix b/plutus-ledger-api/build.nix index c4ad5dbc..4fa25179 100644 --- a/plutus-ledger-api/build.nix +++ b/plutus-ledger-api/build.nix @@ -11,6 +11,10 @@ extraSourceFilters = [ (path: _type: builtins.match ".*golden$" path != null) ]; + extraSources = [ + config.packages.is-plutus-data-derive-rust-src + config.packages.plutus-data-rust-src + ]; }; plutus-ledger-api-rust-github-pages = pkgs.stdenv.mkDerivation { diff --git a/plutus-ledger-api/src/plutus_data.rs b/plutus-ledger-api/src/plutus_data.rs index 83297046..e446ed77 100644 --- a/plutus-ledger-api/src/plutus_data.rs +++ b/plutus-ledger-api/src/plutus_data.rs @@ -1,170 +1,13 @@ //! Plutus Data related types and traits use cardano_serialization_lib as csl; -#[cfg(feature = "lbf")] -use data_encoding::HEXLOWER; -#[cfg(feature = "lbf")] -use lbr_prelude::error::Error; -#[cfg(feature = "lbf")] -use lbr_prelude::json::{ - case_json_constructor, case_json_object, json_constructor, json_object, Json, -}; use num_bigint::BigInt; -use std::collections::{BTreeMap, BTreeSet}; - -#[cfg(feature = "serde")] -use serde::{Deserialize, Serialize}; use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; -/// Data representation of on-chain data such as Datums and Redeemers -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] -pub enum PlutusData { - Constr(BigInt, Vec), - Map(Vec<(PlutusData, PlutusData)>), - List(Vec), - Integer(BigInt), - Bytes(Vec), -} - -impl PlutusData { - pub fn constr(tag: u32, fields: Vec) -> Self { - PlutusData::Constr(BigInt::from(tag), fields) - } - - pub fn map(fields: Vec<(PlutusData, PlutusData)>) -> Self { - PlutusData::Map(fields) - } - - pub fn list(fields: Vec) -> Self { - PlutusData::List(fields) - } - - pub fn integer(value: u32) -> Self { - PlutusData::Integer(BigInt::from(value)) - } - - pub fn bytes(value: Vec) -> Self { - PlutusData::Bytes(value) - } -} - -#[cfg(feature = "lbf")] -impl Json for PlutusData { - fn to_json(&self) -> serde_json::Value { - match self { - PlutusData::Constr(index, fields) => json_constructor( - "Constr", - vec![json_object(vec![ - ("index".to_string(), index.to_json()), - ("fields".to_string(), fields.to_json()), - ])], - ), - PlutusData::Map(map) => json_constructor("Map", vec![map.to_json()]), - PlutusData::List(list) => json_constructor("List", vec![list.to_json()]), - PlutusData::Integer(int) => json_constructor("Integer", vec![int.to_json()]), - PlutusData::Bytes(bytes) => { - json_constructor("Bytes", vec![String::to_json(&HEXLOWER.encode(bytes))]) - } - } - } - - fn from_json(value: &serde_json::Value) -> Result { - case_json_constructor( - "PlutusV1.PlutusData", - vec![ - ( - "Constr", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => case_json_object( - |obj| { - let index = obj.get("index").ok_or(Error::UnexpectedFieldName { - wanted: "index".to_owned(), - got: obj.keys().cloned().collect(), - parser: "PlutusV1.PlutusData".to_owned(), - })?; - - let fields = - obj.get("fields").ok_or(Error::UnexpectedFieldName { - wanted: "fields".to_owned(), - got: obj.keys().cloned().collect(), - parser: "PlutusV1.PlutusData".to_owned(), - })?; - Ok(PlutusData::Constr( - BigInt::from_json(index)?, - >::from_json(fields)?, - )) - }, - val, - ), - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ( - "Map", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => Ok(PlutusData::Map(Json::from_json(val)?)), - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ( - "List", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => Ok(PlutusData::List(Json::from_json(val)?)), - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ( - "Integer", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => Ok(PlutusData::Integer(Json::from_json(val)?)), - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ( - "Bytes", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => { - let bytes = String::from_json(val).and_then(|str| { - HEXLOWER.decode(&str.into_bytes()).map_err(|_| { - Error::UnexpectedJsonInvariant { - wanted: "base16 string".to_owned(), - got: "unexpected string".to_owned(), - parser: "Plutus.V1.Bytes".to_owned(), - } - }) - })?; - Ok(PlutusData::Bytes(bytes)) - } - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ], - value, - ) - } -} +pub use plutus_data::{ + is_plutus_data::aux::*, IsPlutusData, PlutusData, PlutusDataError, PlutusType, +}; /// Deserialise a Plutus data using parsers for each variant pub fn case_plutus_data<'a, T>( @@ -175,386 +18,10 @@ pub fn case_plutus_data<'a, T>( pd: &'a PlutusData, ) -> T { match pd { - PlutusData::Constr(tag, args) => ctor_case(tag)(args), - PlutusData::List(args) => list_case(args), - PlutusData::Integer(i) => int_case(i), - other => other_case(other), - } -} - -pub trait IsPlutusData { - fn to_plutus_data(&self) -> PlutusData; - - fn from_plutus_data(plutus_data: &PlutusData) -> Result - where - Self: Sized; -} - -#[derive(Clone, Debug)] -pub enum PlutusType { - Constr, - Map, - List, - Integer, - Bytes, -} - -impl From<&PlutusData> for PlutusType { - fn from(plutus_data: &PlutusData) -> Self { - match plutus_data { - PlutusData::Constr(_, _) => PlutusType::Constr, - PlutusData::Map(_) => PlutusType::Map, - PlutusData::List(_) => PlutusType::List, - PlutusData::Integer(_) => PlutusType::Integer, - PlutusData::Bytes(_) => PlutusType::Bytes, - } - } -} - -#[derive(Clone, Debug, thiserror::Error)] -pub enum PlutusDataError { - #[error("Expected a PlutusData type {wanted:?}, but got {got:?}")] - UnexpectedPlutusType { got: PlutusType, wanted: PlutusType }, - #[error("Expected a PlutusData type as {wanted:?}, but got {got:?}")] - UnexpectedPlutusInvariant { got: String, wanted: String }, - #[error("Expected a Plutus List with {wanted:?} elements, but got {got:?} elements")] - UnexpectedListLength { got: usize, wanted: usize }, - #[error("Some internal error happened: {0}")] - InternalError(String), -} - -impl IsPlutusData for BigInt { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Integer(self.clone()) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Integer(int) => Ok(int.clone()), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Integer, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for bool { - fn to_plutus_data(&self) -> PlutusData { - if *self { - PlutusData::Constr(BigInt::from(1), Vec::with_capacity(0)) - } else { - PlutusData::Constr(BigInt::from(0), Vec::with_capacity(0)) - } - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 0)?; - Ok(false) - } - Ok(1) => { - verify_constr_fields(fields, 0)?; - Ok(true) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field between 0 and 1".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for char { - fn to_plutus_data(&self) -> PlutusData { - String::from(*self).to_plutus_data() - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - String::from_plutus_data(plutus_data).and_then(|str| { - let mut chars = str.chars(); - let ch = chars.next(); - let rest = chars.next(); - match (ch, rest) { - (Some(ch), None) => Ok(ch), - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - got: "string".to_owned(), - wanted: "char".to_owned(), - }), - } - }) - } -} - -impl IsPlutusData for Vec { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Bytes(self.clone()) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Bytes(bytes) => Ok(bytes.clone()), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Bytes, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for String { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Bytes(self.as_bytes().into()) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Bytes(bytes) => String::from_utf8(bytes.clone()).map_err(|err| { - PlutusDataError::InternalError(format!( - "Couldn't convert Plutus bytes to String: {:?}", - err - )) - }), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Integer, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for Option -where - T: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - match self { - Some(val) => PlutusData::Constr(BigInt::from(0), vec![val.to_plutus_data()]), - None => PlutusData::Constr(BigInt::from(1), Vec::with_capacity(0)), - } - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 1)?; - Ok(Some(T::from_plutus_data(&fields[0])?)) - } - Ok(1) => { - verify_constr_fields(fields, 0)?; - Ok(None) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field between 0 and 1".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for Result -where - T: IsPlutusData, - E: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - match self { - Err(val) => PlutusData::Constr(BigInt::from(0), vec![val.to_plutus_data()]), - Ok(val) => PlutusData::Constr(BigInt::from(1), vec![val.to_plutus_data()]), - } - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 1)?; - Ok(Err(E::from_plutus_data(&fields[0])?)) - } - Ok(1) => { - verify_constr_fields(fields, 1)?; - Ok(Ok(T::from_plutus_data(&fields[0])?)) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field between 0 and 1".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for Vec -where - T: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - let values = self - .iter() - .map(|val| val.to_plutus_data()) - .collect::>(); - - PlutusData::List(values) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::List(vec) => vec - .iter() - .map(|val| T::from_plutus_data(val)) - .collect::, PlutusDataError>>(), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::List, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for BTreeSet -where - T: IsPlutusData + Eq + Ord, -{ - fn to_plutus_data(&self) -> PlutusData { - let set = self - .iter() - .map(|val| val.to_plutus_data()) - .collect::>(); - - PlutusData::List(set) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::List(vec) => vec - .iter() - .map(|val| T::from_plutus_data(val)) - .collect::>(), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Map, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for BTreeMap -where - K: IsPlutusData + Eq + Ord, - V: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - let assoc_map = self - .iter() - .map(|(key, val)| (key.to_plutus_data(), val.to_plutus_data())) - .collect::>(); - - PlutusData::Map(assoc_map) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Map(dict) => dict - .iter() - .map(|(key, val)| Ok((K::from_plutus_data(key)?, V::from_plutus_data(val)?))) - .collect::>(), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Map, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for () { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr(BigInt::from(0), Vec::with_capacity(0)) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 0)?; - Ok(()) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for PlutusData { - fn to_plutus_data(&self) -> PlutusData { - self.clone() - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - Ok(plutus_data.clone()) - } -} - -impl IsPlutusData for (A, B) -where - A: IsPlutusData, - B: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![self.0.to_plutus_data(), self.1.to_plutus_data()], - ) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 2)?; - Ok(( - A::from_plutus_data(&fields[0])?, - B::from_plutus_data(&fields[1])?, - )) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(plutus_data), - }), - } + PlutusData::Constr(tag, args) => ctor_case(&tag)(&args), + PlutusData::List(args) => list_case(&args), + PlutusData::Integer(i) => int_case(&i), + other => other_case(&other), } } @@ -642,64 +109,3 @@ impl TryFromPLA> for csl::PlutusMap { }) } } - -/// Verify the number of fields contained in a PlutusData::Constr -pub fn verify_constr_fields( - fields: &Vec, - expected: usize, -) -> Result<(), PlutusDataError> { - if fields.len() != expected { - Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: format!("Constr with {} fields", expected), - got: format!("{:?}", fields), - }) - } else { - Ok(()) - } -} - -/// Given a vector of PlutusData, parse it as an array whose length is known at -/// compile time. -pub fn parse_fixed_len_constr_fields( - v: &[PlutusData], -) -> Result<&[PlutusData; LEN], PlutusDataError> { - v.try_into() - .map_err(|_| PlutusDataError::UnexpectedListLength { - got: v.len(), - wanted: LEN, - }) -} - -/// Given a PlutusData, parse it as PlutusData::Constr and its tag as u32. Return -/// the u32 tag and fields. -pub fn parse_constr(data: &PlutusData) -> Result<(u32, &Vec), PlutusDataError> { - match data { - PlutusData::Constr(tag, fields) => u32::try_from(tag) - .map_err(|err| PlutusDataError::UnexpectedPlutusInvariant { - got: err.to_string(), - wanted: "Constr bigint tag within u32 range".into(), - }) - .map(|tag| (tag, fields)), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } -} - -/// Given a PlutusData, parse it as PlutusData::Constr and verify its tag. -pub fn parse_constr_with_tag( - data: &PlutusData, - expected_tag: u32, -) -> Result<&Vec, PlutusDataError> { - let (tag, fields) = parse_constr(data)?; - - if tag != expected_tag { - Err(PlutusDataError::UnexpectedPlutusInvariant { - got: tag.to_string(), - wanted: format!("Constr tag to be: {}", expected_tag), - }) - } else { - Ok(fields) - } -} diff --git a/plutus-ledger-api/src/v1/address.rs b/plutus-ledger-api/src/v1/address.rs index b80677f0..92305180 100644 --- a/plutus-ledger-api/src/v1/address.rs +++ b/plutus-ledger-api/src/v1/address.rs @@ -3,12 +3,11 @@ use std::str::FromStr; use anyhow::anyhow; use cardano_serialization_lib as csl; +use plutus_data::is_plutus_data::aux::{parse_constr, parse_fixed_len_constr_fields}; use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; -use crate::plutus_data::{ - verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, -}; +use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; use crate::v1::crypto::Ed25519PubKeyHash; use crate::v1::script::ValidatorHash; #[cfg(feature = "lbf")] @@ -27,7 +26,7 @@ use serde::{Deserialize, Serialize}; /// An address consists of a payment part (credential) and a delegation part (staking_credential). /// In order to serialize an address to `bech32`, the network kind must be known. /// For a better understanding of all the Cardano address types, read [CIP 19](https://cips.cardano.org/cips/cip19/) -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct Address { @@ -44,43 +43,6 @@ impl Address { } } -impl IsPlutusData for Address { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![ - self.credential.to_plutus_data(), - self.staking_credential.to_plutus_data(), - ], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 2)?; - Ok(Address { - credential: Credential::from_plutus_data(&fields[0])?, - staking_credential: >::from_plutus_data( - &fields[1], - )?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - impl FromStr for Address { type Err = anyhow::Error; @@ -162,54 +124,13 @@ impl std::fmt::Display for AddressWithExtraInfo<'_> { //////////////// /// A public key hash or validator hash credential (used as a payment or a staking credential) -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub enum Credential { PubKey(Ed25519PubKeyHash), Script(ValidatorHash), } -impl IsPlutusData for Credential { - fn to_plutus_data(&self) -> PlutusData { - match self { - Credential::PubKey(pkh) => { - PlutusData::Constr(BigInt::from(0), vec![pkh.to_plutus_data()]) - } - Credential::Script(val_hash) => { - PlutusData::Constr(BigInt::from(1), vec![val_hash.to_plutus_data()]) - } - } - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 1)?; - Ok(Credential::PubKey(Ed25519PubKeyHash::from_plutus_data( - &fields[0], - )?)) - } - Ok(1) => { - verify_constr_fields(fields, 1)?; - Ok(Credential::Script(ValidatorHash::from_plutus_data( - &fields[0], - )?)) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field between 0 and 1".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - #[cfg(feature = "lbf")] impl Json for Credential { fn to_json(&self) -> serde_json::Value { @@ -289,6 +210,7 @@ pub enum StakingCredential { Pointer(ChainPointer), } +// NOTE(chfanghr): ChainPointer doesn't have a IsPlutusData instance so derive doesn't work here. impl IsPlutusData for StakingCredential { fn to_plutus_data(&self) -> PlutusData { match self { @@ -311,31 +233,23 @@ impl IsPlutusData for StakingCredential { } fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 1)?; - Ok(StakingCredential::Hash(Credential::from_plutus_data( - &fields[0], - )?)) - } - Ok(1) => { - verify_constr_fields(fields, 3)?; - Ok(StakingCredential::Pointer(ChainPointer { - slot_number: Slot::from_plutus_data(&fields[0])?, - transaction_index: TransactionIndex::from_plutus_data(&fields[1])?, - certificate_index: CertificateIndex::from_plutus_data(&fields[2])?, - })) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field between 0 and 1".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), + let (tag, fields) = parse_constr(data)?; + match tag { + 0 => { + let [field] = parse_fixed_len_constr_fields::<1>(fields)?; + Ok(Self::Hash(Credential::from_plutus_data(field)?)) + } + 1 => { + let [field_0, field_1, field_2] = parse_fixed_len_constr_fields::<3>(fields)?; + Ok(Self::Pointer(ChainPointer { + slot_number: Slot::from_plutus_data(field_0)?, + transaction_index: TransactionIndex::from_plutus_data(field_1)?, + certificate_index: CertificateIndex::from_plutus_data(field_2)?, + })) + } + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + wanted: "Constr with tag 0 or 1".to_owned(), + got: tag.to_string(), }), } } @@ -467,21 +381,12 @@ impl TryFromPLA for csl::Pointer { ////////// /// Number of slots elapsed since genesis -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct Slot(pub BigInt); -impl IsPlutusData for Slot { - fn to_plutus_data(&self) -> PlutusData { - self.0.to_plutus_data() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - impl FromCSL for Slot { fn from_csl(value: &csl::BigNum) -> Self { Slot(BigInt::from_csl(value)) @@ -499,21 +404,12 @@ impl TryFromPLA for csl::BigNum { ////////////////////// /// Position of the certificate in a certain transaction -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct CertificateIndex(pub BigInt); -impl IsPlutusData for CertificateIndex { - fn to_plutus_data(&self) -> PlutusData { - self.0.to_plutus_data() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - impl FromCSL for CertificateIndex { fn from_csl(value: &csl::BigNum) -> Self { CertificateIndex(BigInt::from_csl(value)) @@ -532,21 +428,12 @@ impl TryFromPLA for csl::BigNum { /// Position of a transaction in a given slot /// This is not identical to the index of a `TransactionInput` -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionIndex(pub BigInt); -impl IsPlutusData for TransactionIndex { - fn to_plutus_data(&self) -> PlutusData { - self.0.to_plutus_data() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - impl FromCSL for TransactionIndex { fn from_csl(value: &csl::BigNum) -> Self { TransactionIndex(BigInt::from_csl(value)) diff --git a/plutus-ledger-api/src/v1/crypto.rs b/plutus-ledger-api/src/v1/crypto.rs index 4517dd6d..4555ff9b 100644 --- a/plutus-ledger-api/src/v1/crypto.rs +++ b/plutus-ledger-api/src/v1/crypto.rs @@ -3,15 +3,13 @@ use cardano_serialization_lib as csl; use data_encoding::HEXLOWER; #[cfg(feature = "lbf")] use lbr_prelude::json::{Error, Json}; +use plutus_data::IsPlutusData; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; -use crate::{ - csl::{ - csl_to_pla::FromCSL, - pla_to_csl::{TryFromPLA, TryFromPLAError}, - }, - plutus_data::{IsPlutusData, PlutusData, PlutusDataError, PlutusType}, +use crate::csl::{ + csl_to_pla::FromCSL, + pla_to_csl::{TryFromPLA, TryFromPLAError}, }; /////////////////////// @@ -21,28 +19,12 @@ use crate::{ /// ED25519 public key hash /// This is the standard cryptography in Cardano, commonly referred to as `PubKeyHash` in Plutus /// and other libraries -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct Ed25519PubKeyHash(pub LedgerBytes); -impl IsPlutusData for Ed25519PubKeyHash { - fn to_plutus_data(&self) -> PlutusData { - let Ed25519PubKeyHash(LedgerBytes(bytes)) = self; - PlutusData::Bytes(bytes.clone()) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Bytes(bytes) => Ok(Self(LedgerBytes(bytes.clone()))), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Bytes, - got: PlutusType::from(data), - }), - } - } -} - impl FromCSL for Ed25519PubKeyHash { fn from_csl(value: &csl::Ed25519KeyHash) -> Self { Ed25519PubKeyHash(LedgerBytes(value.to_bytes())) @@ -69,61 +51,30 @@ impl FromCSL for Vec { /////////////////////// /// Standard public key hash used to verify a transaction witness -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct PaymentPubKeyHash(pub Ed25519PubKeyHash); -impl IsPlutusData for PaymentPubKeyHash { - fn to_plutus_data(&self) -> PlutusData { - let PaymentPubKeyHash(Ed25519PubKeyHash(LedgerBytes(bytes))) = self; - PlutusData::Bytes(bytes.clone()) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Bytes(bytes) => Ok(Self(Ed25519PubKeyHash(LedgerBytes(bytes.clone())))), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Bytes, - got: PlutusType::from(data), - }), - } - } -} - ///////////////////// // StakePubKeyHash // ///////////////////// /// Standard public key hash used to verify a staking -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct StakePubKeyHash(pub Ed25519PubKeyHash); -impl IsPlutusData for StakePubKeyHash { - fn to_plutus_data(&self) -> PlutusData { - let StakePubKeyHash(Ed25519PubKeyHash(LedgerBytes(bytes))) = self; - PlutusData::Bytes(bytes.clone()) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Bytes(bytes) => Ok(Self(Ed25519PubKeyHash(LedgerBytes(bytes.clone())))), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Bytes, - got: PlutusType::from(data), - }), - } - } -} - ///////////////// // LedgerBytes // ///////////////// /// A bytestring in the Cardano ledger context -#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub struct LedgerBytes(pub Vec); @@ -139,22 +90,6 @@ impl std::fmt::Display for LedgerBytes { } } -impl IsPlutusData for LedgerBytes { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Bytes(self.0.clone()) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Bytes(bytes) => Ok(Self(bytes.clone())), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Bytes, - got: PlutusType::from(data), - }), - } - } -} - #[cfg(feature = "lbf")] impl Json for LedgerBytes { fn to_json(&self) -> serde_json::Value { diff --git a/plutus-ledger-api/src/v1/datum.rs b/plutus-ledger-api/src/v1/datum.rs index eba5f649..49901ab5 100644 --- a/plutus-ledger-api/src/v1/datum.rs +++ b/plutus-ledger-api/src/v1/datum.rs @@ -4,7 +4,7 @@ use cardano_serialization_lib as csl; use crate::csl::csl_to_pla::FromCSL; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; -use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; +use crate::plutus_data::{IsPlutusData, PlutusData}; use crate::v1::crypto::LedgerBytes; #[cfg(feature = "lbf")] use lbr_prelude::json::Json; @@ -17,21 +17,12 @@ use serde::{Deserialize, Serialize}; /////////////// /// blake2b-256 hash of a datum -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "lbf", derive(Json))] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub struct DatumHash(pub LedgerBytes); -impl IsPlutusData for DatumHash { - fn to_plutus_data(&self) -> PlutusData { - self.0.to_plutus_data() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - impl FromCSL for DatumHash { fn from_csl(value: &csl::DataHash) -> Self { DatumHash(LedgerBytes(value.to_bytes())) @@ -49,21 +40,12 @@ impl TryFromPLA for csl::DataHash { /////////// /// Piece of information associated with a UTxO encoded into a PlutusData type. -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "lbf", derive(Json))] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub struct Datum(pub PlutusData); -impl IsPlutusData for Datum { - fn to_plutus_data(&self) -> PlutusData { - self.0.clone() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - impl TryFromPLA for csl::PlutusData { fn try_from_pla(val: &Datum) -> Result { val.0.try_to_csl() diff --git a/plutus-ledger-api/src/v1/interval.rs b/plutus-ledger-api/src/v1/interval.rs index 399e64a1..eb789273 100644 --- a/plutus-ledger-api/src/v1/interval.rs +++ b/plutus-ledger-api/src/v1/interval.rs @@ -1,11 +1,12 @@ //! Types related to PlutusInterval use crate::feature_traits::FeatureTraits; -use crate::plutus_data::{ - verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, -}; +use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; #[cfg(feature = "lbf")] use lbr_prelude::json::Json; use num_bigint::BigInt; +use plutus_data::is_plutus_data::aux::{ + parse_constr, parse_constr_with_tag, parse_fixed_len_constr_fields, +}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; use std::cmp; @@ -268,26 +269,12 @@ where } fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 2)?; - Ok(PlutusInterval { - from: >::from_plutus_data(&fields[0])?, - to: >::from_plutus_data(&fields[1])?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } + let fields = parse_constr_with_tag(data, 0)?; + let [field_0, field_1] = parse_fixed_len_constr_fields::<2>(fields)?; + Ok(Self { + from: IsPlutusData::from_plutus_data(field_0)?, + to: IsPlutusData::from_plutus_data(field_1)?, + }) } } @@ -318,26 +305,12 @@ where } fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 2)?; - Ok(UpperBound { - bound: >::from_plutus_data(&fields[0])?, - closed: bool::from_plutus_data(&fields[1])?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } + let fields = parse_constr_with_tag(data, 0)?; + let [field_0, field_1] = parse_fixed_len_constr_fields::<2>(fields)?; + Ok(Self { + bound: IsPlutusData::from_plutus_data(field_0)?, + closed: IsPlutusData::from_plutus_data(field_1)?, + }) } } @@ -368,26 +341,12 @@ where } fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 2)?; - Ok(LowerBound { - bound: >::from_plutus_data(&fields[0])?, - closed: bool::from_plutus_data(&fields[1])?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } + let fields = parse_constr_with_tag(data, 0)?; + let [field_0, field_1] = parse_fixed_len_constr_fields::<2>(fields)?; + Ok(Self { + bound: IsPlutusData::from_plutus_data(field_0)?, + closed: IsPlutusData::from_plutus_data(field_1)?, + }) } } @@ -465,31 +424,23 @@ where } fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 0)?; - Ok(Extended::NegInf) - } - Ok(1) => { - verify_constr_fields(fields, 1)?; - Ok(Extended::Finite(IsPlutusData::from_plutus_data( - &fields[0], - )?)) - } - Ok(2) => { - verify_constr_fields(fields, 0)?; - Ok(Extended::PosInf) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field between 0 and 1".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), + let (tag, fields) = parse_constr(data)?; + match tag { + 0 => { + let [] = parse_fixed_len_constr_fields::<0>(fields)?; + Ok(Extended::NegInf) + } + 1 => { + let [field] = parse_fixed_len_constr_fields::<1>(fields)?; + Ok(Extended::Finite(IsPlutusData::from_plutus_data(field)?)) + } + 2 => { + let [] = parse_fixed_len_constr_fields::<0>(fields)?; + Ok(Extended::PosInf) + } + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + wanted: "Constr with tag 0, 1 or 2".to_owned(), + got: tag.to_string(), }), } } diff --git a/plutus-ledger-api/src/v1/redeemer.rs b/plutus-ledger-api/src/v1/redeemer.rs index 95ffa9c3..c46e39a7 100644 --- a/plutus-ledger-api/src/v1/redeemer.rs +++ b/plutus-ledger-api/src/v1/redeemer.rs @@ -8,7 +8,7 @@ use lbr_prelude::json::Json; use serde::{Deserialize, Serialize}; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; -use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; +use crate::plutus_data::{IsPlutusData, PlutusData}; use crate::v1::crypto::LedgerBytes; ////////////// @@ -17,21 +17,12 @@ use crate::v1::crypto::LedgerBytes; /// Piece of information attached to a transaction when redeeming a value from a validator or a /// minting policy -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "lbf", derive(Json))] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub struct Redeemer(pub PlutusData); -impl IsPlutusData for Redeemer { - fn to_plutus_data(&self) -> PlutusData { - self.0.clone() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - #[derive(Clone, Debug)] pub struct RedeemerWithExtraInfo<'a> { pub redeemer: &'a Redeemer, @@ -56,17 +47,8 @@ impl TryFromPLA> for csl::Redeemer { ////////////////// /// blake2b-256 hash of a datum -#[derive(Clone, Debug, PartialEq, Eq)] +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "lbf", derive(Json))] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub struct RedeemerHash(pub LedgerBytes); - -impl IsPlutusData for RedeemerHash { - fn to_plutus_data(&self) -> PlutusData { - self.0.to_plutus_data() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} diff --git a/plutus-ledger-api/src/v1/script.rs b/plutus-ledger-api/src/v1/script.rs index ddfcb89b..5afcf2a4 100644 --- a/plutus-ledger-api/src/v1/script.rs +++ b/plutus-ledger-api/src/v1/script.rs @@ -9,7 +9,7 @@ use serde::{Deserialize, Serialize}; use crate::csl::csl_to_pla::FromCSL; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; -use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; +use crate::plutus_data::IsPlutusData; use crate::v1::crypto::LedgerBytes; /////////////////// @@ -17,21 +17,12 @@ use crate::v1::crypto::LedgerBytes; /////////////////// /// Identifier of a validator script -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct ValidatorHash(pub ScriptHash); -impl IsPlutusData for ValidatorHash { - fn to_plutus_data(&self) -> PlutusData { - self.0.to_plutus_data() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - impl FromCSL for ValidatorHash { fn from_csl(value: &csl::ScriptHash) -> Self { ValidatorHash(ScriptHash::from_csl(value)) @@ -43,21 +34,12 @@ impl FromCSL for ValidatorHash { /////////////////////// /// Hash of a minting policy script -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct MintingPolicyHash(pub ScriptHash); -impl IsPlutusData for MintingPolicyHash { - fn to_plutus_data(&self) -> PlutusData { - self.0.to_plutus_data() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - impl FromCSL for MintingPolicyHash { fn from_csl(value: &csl::PolicyID) -> Self { MintingPolicyHash(ScriptHash(LedgerBytes(value.to_bytes()))) @@ -75,21 +57,12 @@ impl TryFromPLA for csl::PolicyID { //////////////// /// Hash of a Plutus script -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct ScriptHash(pub LedgerBytes); -impl IsPlutusData for ScriptHash { - fn to_plutus_data(&self) -> PlutusData { - self.0.to_plutus_data() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - impl FromCSL for ScriptHash { fn from_csl(value: &csl::ScriptHash) -> Self { ScriptHash(LedgerBytes(value.to_bytes())) diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index 54fcff08..efe574b3 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -16,16 +16,10 @@ use super::{ value::{CurrencySymbol, Value}, }; +use crate::csl::{csl_to_pla::FromCSL, pla_to_csl::TryFromPLA}; use crate::{ csl::pla_to_csl::{TryFromPLAError, TryToCSL}, - plutus_data::{ - parse_constr, parse_constr_with_tag, parse_fixed_len_constr_fields, verify_constr_fields, - IsPlutusData, PlutusData, PlutusDataError, PlutusType, - }, -}; -use crate::{ - csl::{csl_to_pla::FromCSL, pla_to_csl::TryFromPLA}, - utils::aux::{none, singleton}, + plutus_data::IsPlutusData, }; ////////////////////// @@ -36,7 +30,7 @@ use crate::{ /// /// Also know as `TxOutRef` from Plutus, this identifies a UTxO by its transacton hash and index /// inside the transaction -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionInput { @@ -50,41 +44,6 @@ impl fmt::Display for TransactionInput { } } -impl IsPlutusData for TransactionInput { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![ - self.transaction_id.to_plutus_data(), - self.index.to_plutus_data(), - ], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 2)?; - Ok(TransactionInput { - transaction_id: TransactionHash::from_plutus_data(&fields[0])?, - index: BigInt::from_plutus_data(&fields[1])?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field between 0 and 1".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - impl FromCSL for TransactionInput { fn from_csl(value: &csl::TransactionInput) -> Self { TransactionInput { @@ -129,7 +88,7 @@ impl TryFromPLA> for csl::TransactionInputs { /// /// Also known as Transaction ID or `TxID`. /// Note: Plutus docs might incorrectly state that it uses SHA256. -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionHash(pub LedgerBytes); @@ -140,32 +99,6 @@ impl fmt::Display for TransactionHash { } } -impl IsPlutusData for TransactionHash { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr(BigInt::from(0), vec![self.0.to_plutus_data()]) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 1)?; - Ok(TransactionHash(IsPlutusData::from_plutus_data(&fields[0])?)) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - impl FromCSL for TransactionHash { fn from_csl(value: &csl::TransactionHash) -> Self { TransactionHash(LedgerBytes(value.to_bytes())) @@ -187,7 +120,7 @@ impl TryFromPLA for csl::TransactionHash { /// /// This must include the target address, the hash of the datum attached, and the amount of output /// tokens -#[derive(Clone, Debug, PartialEq, Eq)] +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionOutput { @@ -196,63 +129,17 @@ pub struct TransactionOutput { pub datum_hash: Option, } -impl IsPlutusData for TransactionOutput { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![ - self.address.to_plutus_data(), - self.value.to_plutus_data(), - self.datum_hash.to_plutus_data(), - ], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 3)?; - Ok(TransactionOutput { - address: Address::from_plutus_data(&fields[0])?, - value: Value::from_plutus_data(&fields[1])?, - datum_hash: >::from_plutus_data(&fields[2])?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - /////////////// // POSIXTime // /////////////// /// POSIX time is measured as the number of milliseconds since 1970-01-01T00:00:00Z -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct POSIXTime(pub BigInt); -impl IsPlutusData for POSIXTime { - fn to_plutus_data(&self) -> PlutusData { - self.0.to_plutus_data() - } - - fn from_plutus_data(data: &PlutusData) -> Result { - IsPlutusData::from_plutus_data(data).map(Self) - } -} - #[cfg(feature = "chrono")] #[derive(thiserror::Error, Debug)] pub enum POSIXTimeConversionError { @@ -293,7 +180,7 @@ pub type POSIXTimeRange = PlutusInterval; ////////////// /// An input of a pending transaction. -#[derive(Clone, Debug, PartialEq, Eq)] +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TxInInfo { @@ -301,41 +188,6 @@ pub struct TxInInfo { pub output: TransactionOutput, } -impl IsPlutusData for TxInInfo { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![ - self.reference.to_plutus_data(), - self.output.to_plutus_data(), - ], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 2)?; - Ok(TxInInfo { - reference: TransactionInput::from_plutus_data(&fields[0])?, - output: TransactionOutput::from_plutus_data(&fields[1])?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - impl From<(TransactionInput, TransactionOutput)> for TxInInfo { fn from((reference, output): (TransactionInput, TransactionOutput)) -> TxInInfo { TxInInfo { reference, output } @@ -347,7 +199,7 @@ impl From<(TransactionInput, TransactionOutput)> for TxInInfo { /////////// /// Partial representation of digests of certificates on the ledger. -#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash)] +#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum DCert { @@ -375,78 +227,12 @@ pub enum DCert { Mir, } -impl IsPlutusData for DCert { - fn to_plutus_data(&self) -> PlutusData { - let (tag, fields) = match self { - DCert::DelegRegKey(c) => (0u32, singleton(c.to_plutus_data())), - DCert::DelegDeRegKey(c) => (1, singleton(c.to_plutus_data())), - DCert::DelegDelegate(c, pkh) => (2, vec![c.to_plutus_data(), pkh.to_plutus_data()]), - DCert::PoolRegister(pkh, pkh1) => { - (3, vec![pkh.to_plutus_data(), pkh1.to_plutus_data()]) - } - DCert::PoolRetire(pkh, i) => (4, vec![pkh.to_plutus_data(), i.to_plutus_data()]), - DCert::Genesis => (5, none()), - DCert::Mir => (6, none()), - }; - - PlutusData::Constr(BigInt::from(tag), fields) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - let (tag, fields) = parse_constr(data)?; - - match tag { - 0 => { - let [field] = parse_fixed_len_constr_fields::<1>(fields)?; - IsPlutusData::from_plutus_data(field).map(Self::DelegRegKey) - } - 1 => { - let [field] = parse_fixed_len_constr_fields::<1>(fields)?; - IsPlutusData::from_plutus_data(field).map(Self::DelegDeRegKey) - } - 2 => { - let [field1, field2] = parse_fixed_len_constr_fields::<2>(fields)?; - Ok(Self::DelegDelegate( - IsPlutusData::from_plutus_data(field1)?, - IsPlutusData::from_plutus_data(field2)?, - )) - } - 3 => { - let [field1, field2] = parse_fixed_len_constr_fields::<2>(fields)?; - Ok(Self::PoolRegister( - IsPlutusData::from_plutus_data(field1)?, - IsPlutusData::from_plutus_data(field2)?, - )) - } - 4 => { - let [field1, field2] = parse_fixed_len_constr_fields::<2>(fields)?; - Ok(Self::PoolRetire( - IsPlutusData::from_plutus_data(field1)?, - IsPlutusData::from_plutus_data(field2)?, - )) - } - 5 => { - let [] = parse_fixed_len_constr_fields::<0>(fields)?; - Ok(Self::Genesis) - } - 6 => { - let [] = parse_fixed_len_constr_fields::<0>(fields)?; - Ok(Self::Mir) - } - bad_tag => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr tag to be 0, 1, 2, 3, 4, 5 or 6".to_owned(), - got: bad_tag.to_string(), - }), - } - } -} - /////////////////// // ScriptPurpose // /////////////////// /// The purpose of the script that's currently running. -#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash)] +#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum ScriptPurpose { @@ -456,41 +242,12 @@ pub enum ScriptPurpose { Certifying(DCert), } -impl IsPlutusData for ScriptPurpose { - fn to_plutus_data(&self) -> PlutusData { - let (tag, field) = match self { - ScriptPurpose::Minting(cs) => (0u32, cs.to_plutus_data()), - ScriptPurpose::Spending(i) => (1, i.to_plutus_data()), - ScriptPurpose::Rewarding(c) => (2, c.to_plutus_data()), - ScriptPurpose::Certifying(c) => (3, c.to_plutus_data()), - }; - - PlutusData::Constr(BigInt::from(tag), singleton(field)) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - let (tag, fields) = parse_constr(plutus_data)?; - let [field] = parse_fixed_len_constr_fields(fields)?; - - match tag { - 0 => IsPlutusData::from_plutus_data(field).map(Self::Minting), - 1 => IsPlutusData::from_plutus_data(field).map(Self::Spending), - 2 => IsPlutusData::from_plutus_data(field).map(Self::Rewarding), - 3 => IsPlutusData::from_plutus_data(field).map(Self::Certifying), - bad_tag => Err(PlutusDataError::UnexpectedPlutusInvariant { - got: bad_tag.to_string(), - wanted: "Constr tag to be 0, 1, 2 or 3".to_string(), - }), - } - } -} - ///////////////////// // TransactionInfo // ///////////////////// /// A pending transaction as seen by validator scripts, also known as TxInfo in Plutus -#[derive(Debug, PartialEq, Eq, Clone)] +#[derive(Debug, PartialEq, Eq, Clone, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionInfo { @@ -506,73 +263,15 @@ pub struct TransactionInfo { pub id: TransactionHash, } -impl IsPlutusData for TransactionInfo { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![ - self.inputs.to_plutus_data(), - self.outputs.to_plutus_data(), - self.fee.to_plutus_data(), - self.mint.to_plutus_data(), - self.d_cert.to_plutus_data(), - self.wdrl.to_plutus_data(), - self.valid_range.to_plutus_data(), - self.signatories.to_plutus_data(), - self.datums.to_plutus_data(), - self.id.to_plutus_data(), - ], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - let fields = parse_constr_with_tag(data, 0)?; - let [inputs, outputs, fee, mint, d_cert, wdrl, valid_range, signatories, datums, id] = - parse_fixed_len_constr_fields(fields)?; - - Ok(Self { - inputs: IsPlutusData::from_plutus_data(inputs)?, - outputs: IsPlutusData::from_plutus_data(outputs)?, - fee: IsPlutusData::from_plutus_data(fee)?, - mint: IsPlutusData::from_plutus_data(mint)?, - d_cert: IsPlutusData::from_plutus_data(d_cert)?, - wdrl: IsPlutusData::from_plutus_data(wdrl)?, - valid_range: IsPlutusData::from_plutus_data(valid_range)?, - signatories: IsPlutusData::from_plutus_data(signatories)?, - datums: IsPlutusData::from_plutus_data(datums)?, - id: IsPlutusData::from_plutus_data(id)?, - }) - } -} - /////////////////// // ScriptContext // /////////////////// /// The context that is presented to the currently-executing script. -#[derive(Debug, PartialEq, Eq, Clone)] +#[derive(Debug, PartialEq, Eq, Clone, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct ScriptContext { pub tx_info: TransactionInfo, pub purpose: ScriptPurpose, } - -impl IsPlutusData for ScriptContext { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![self.tx_info.to_plutus_data(), self.purpose.to_plutus_data()], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - let fields = parse_constr_with_tag(data, 0)?; - let [tx_info, purpose] = parse_fixed_len_constr_fields(fields)?; - - Ok(Self { - tx_info: IsPlutusData::from_plutus_data(tx_info)?, - purpose: IsPlutusData::from_plutus_data(purpose)?, - }) - } -} diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index 7c02681e..88ce2771 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -20,9 +20,7 @@ use serde_json; use crate::csl::csl_to_pla::FromCSL; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; -use crate::plutus_data::{ - verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, -}; +use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; use crate::utils::aux::{singleton, union_b_tree_maps_with, union_btree_maps_with}; use crate::v1::crypto::LedgerBytes; use crate::v1::script::{MintingPolicyHash, ScriptHash}; @@ -643,7 +641,7 @@ impl TryFromPLA for csl::AssetName { //////////////// /// AssetClass is uniquely identifying a specific asset -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct AssetClass { @@ -661,41 +659,6 @@ impl fmt::Display for AssetClass { } } -impl IsPlutusData for AssetClass { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![ - self.currency_symbol.to_plutus_data(), - self.token_name.to_plutus_data(), - ], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 2)?; - Ok(AssetClass { - currency_symbol: CurrencySymbol::from_plutus_data(&fields[0])?, - token_name: TokenName::from_plutus_data(&fields[1])?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field between 0 and 1".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - #[cfg(test)] mod test { use super::*; diff --git a/plutus-ledger-api/src/v2/datum.rs b/plutus-ledger-api/src/v2/datum.rs index a870811e..e247d7dc 100644 --- a/plutus-ledger-api/src/v2/datum.rs +++ b/plutus-ledger-api/src/v2/datum.rs @@ -3,7 +3,6 @@ use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use lbr_prelude::json::{self, Error, Json}; -use num_bigint::BigInt; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; @@ -14,7 +13,7 @@ use crate::{ csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}, pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}, }, - plutus_data::{verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType}, + plutus_data::IsPlutusData, }; ///////////////// @@ -26,7 +25,7 @@ use crate::{ /// In case an inline datum is used, the data is embedded inside the transaction body, so it can be /// directly retrieved. In case of a datum hash, an off-chain indexer is required to find the /// associated datum by its hash. -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub enum OutputDatum { None, @@ -34,52 +33,6 @@ pub enum OutputDatum { InlineDatum(Datum), } -impl IsPlutusData for OutputDatum { - fn to_plutus_data(&self) -> PlutusData { - match self { - OutputDatum::None => PlutusData::Constr(BigInt::from(0), vec![]), - OutputDatum::DatumHash(dat_hash) => { - PlutusData::Constr(BigInt::from(1), vec![dat_hash.to_plutus_data()]) - } - OutputDatum::InlineDatum(datum) => { - PlutusData::Constr(BigInt::from(2), vec![datum.to_plutus_data()]) - } - } - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 0)?; - Ok(OutputDatum::None) - } - Ok(1) => { - verify_constr_fields(fields, 1)?; - Ok(OutputDatum::DatumHash(DatumHash::from_plutus_data( - &fields[0], - )?)) - } - Ok(2) => { - verify_constr_fields(fields, 1)?; - Ok(OutputDatum::InlineDatum(Datum::from_plutus_data( - &fields[0], - )?)) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be between 0..2".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - #[cfg(feature = "lbf")] impl Json for OutputDatum { fn to_json(&self) -> serde_json::Value { diff --git a/plutus-ledger-api/src/v2/transaction.rs b/plutus-ledger-api/src/v2/transaction.rs index 9374256c..65335e4f 100644 --- a/plutus-ledger-api/src/v2/transaction.rs +++ b/plutus-ledger-api/src/v2/transaction.rs @@ -11,10 +11,7 @@ use serde::{Deserialize, Serialize}; use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; -use crate::plutus_data::{parse_constr_with_tag, parse_fixed_len_constr_fields}; -use crate::plutus_data::{ - verify_constr_fields, IsPlutusData, PlutusData, PlutusDataError, PlutusType, -}; +use crate::plutus_data::IsPlutusData; #[cfg(feature = "chrono")] pub use crate::v1::transaction::POSIXTimeConversionError; pub use crate::v1::transaction::{ @@ -40,7 +37,7 @@ use super::{ /// /// This must include the target address, an optional datum, an optional reference script, and the /// amount of output tokens -#[derive(Clone, Debug, PartialEq, Eq)] +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionOutput { @@ -50,45 +47,6 @@ pub struct TransactionOutput { pub reference_script: Option, } -impl IsPlutusData for TransactionOutput { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![ - self.address.to_plutus_data(), - self.value.to_plutus_data(), - self.datum.to_plutus_data(), - self.reference_script.to_plutus_data(), - ], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 4)?; - Ok(TransactionOutput { - address: Address::from_plutus_data(&fields[0])?, - value: Value::from_plutus_data(&fields[1])?, - datum: OutputDatum::from_plutus_data(&fields[2])?, - reference_script: >::from_plutus_data(&fields[3])?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - impl TryFromCSL for TransactionOutput { fn try_from_csl(value: &csl::TransactionOutput) -> Result { Ok(TransactionOutput { @@ -205,7 +163,7 @@ impl TryFromPLA> for csl::TransactionOutput { ////////////// /// An input of a pending transaction. -#[derive(Clone, Debug, PartialEq, Eq)] +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TxInInfo { @@ -219,47 +177,11 @@ impl From<(TransactionInput, TransactionOutput)> for TxInInfo { } } -impl IsPlutusData for TxInInfo { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![ - self.reference.to_plutus_data(), - self.output.to_plutus_data(), - ], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - match data { - PlutusData::Constr(flag, fields) => match u32::try_from(flag) { - Ok(0) => { - verify_constr_fields(fields, 2)?; - Ok(TxInInfo { - reference: TransactionInput::from_plutus_data(&fields[0])?, - output: TransactionOutput::from_plutus_data(&fields[1])?, - }) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: "Constr field to be 0".to_owned(), - got: flag.to_string(), - }), - }, - - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } - } -} - -///////////////////// // TransactionInfo // ///////////////////// /// A pending transaction as seen by validator scripts, also known as TxInfo in Plutus -#[derive(Debug, PartialEq, Eq, Clone)] +#[derive(Debug, PartialEq, Eq, Clone, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionInfo { @@ -277,49 +199,6 @@ pub struct TransactionInfo { pub id: TransactionHash, } -impl IsPlutusData for TransactionInfo { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![ - self.inputs.to_plutus_data(), - self.reference_inputs.to_plutus_data(), - self.outputs.to_plutus_data(), - self.fee.to_plutus_data(), - self.mint.to_plutus_data(), - self.d_cert.to_plutus_data(), - self.wdrl.to_plutus_data(), - self.valid_range.to_plutus_data(), - self.signatories.to_plutus_data(), - self.redeemers.to_plutus_data(), - self.datums.to_plutus_data(), - self.id.to_plutus_data(), - ], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - let fields = parse_constr_with_tag(data, 0)?; - let [inputs, reference_inputs, outputs, fee, mint, d_cert, wdrl, valid_range, signatories, redeemers, datums, id] = - parse_fixed_len_constr_fields(fields)?; - - Ok(Self { - inputs: IsPlutusData::from_plutus_data(inputs)?, - reference_inputs: IsPlutusData::from_plutus_data(reference_inputs)?, - outputs: IsPlutusData::from_plutus_data(outputs)?, - fee: IsPlutusData::from_plutus_data(fee)?, - mint: IsPlutusData::from_plutus_data(mint)?, - d_cert: IsPlutusData::from_plutus_data(d_cert)?, - wdrl: IsPlutusData::from_plutus_data(wdrl)?, - valid_range: IsPlutusData::from_plutus_data(valid_range)?, - signatories: IsPlutusData::from_plutus_data(signatories)?, - redeemers: IsPlutusData::from_plutus_data(redeemers)?, - datums: IsPlutusData::from_plutus_data(datums)?, - id: IsPlutusData::from_plutus_data(id)?, - }) - } -} - #[derive(Clone, Debug)] pub struct WithdrawalsWithExtraInfo<'a> { pub withdrawals: &'a AssocMap, @@ -350,29 +229,10 @@ impl TryFromPLA> for csl::Withdrawals { /////////////////// /// The context that is presented to the currently-executing script. -#[derive(Debug, PartialEq, Eq, Clone)] +#[derive(Debug, PartialEq, Eq, Clone, IsPlutusData)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct ScriptContext { pub tx_info: TransactionInfo, pub purpose: ScriptPurpose, } - -impl IsPlutusData for ScriptContext { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(0), - vec![self.tx_info.to_plutus_data(), self.purpose.to_plutus_data()], - ) - } - - fn from_plutus_data(data: &PlutusData) -> Result { - let fields = parse_constr_with_tag(data, 0)?; - let [tx_info, purpose] = parse_fixed_len_constr_fields(fields)?; - - Ok(Self { - tx_info: IsPlutusData::from_plutus_data(tx_info)?, - purpose: IsPlutusData::from_plutus_data(purpose)?, - }) - } -} From b4351b77c7272a2ea2bcc845b3a7dd4ec9e4b7fe Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Fri, 18 Oct 2024 23:52:08 +0800 Subject: [PATCH 19/94] explicitly mark derive strategies --- plutus-ledger-api/src/v1/address.rs | 7 ++++--- plutus-ledger-api/src/v1/transaction.rs | 8 ++++++++ plutus-ledger-api/src/v2/datum.rs | 1 + plutus-ledger-api/src/v2/transaction.rs | 4 ++++ 4 files changed, 17 insertions(+), 3 deletions(-) diff --git a/plutus-ledger-api/src/v1/address.rs b/plutus-ledger-api/src/v1/address.rs index 92305180..f3c1abad 100644 --- a/plutus-ledger-api/src/v1/address.rs +++ b/plutus-ledger-api/src/v1/address.rs @@ -13,20 +13,20 @@ use crate::v1::script::ValidatorHash; #[cfg(feature = "lbf")] use lbr_prelude::json::{self, Error, Json}; use num_bigint::BigInt; +#[cfg(feature = "serde")] +use serde::{Deserialize, Serialize}; ///////////// // Address // ///////////// -#[cfg(feature = "serde")] -use serde::{Deserialize, Serialize}; - /// Shelley Address for wallets or validators /// /// An address consists of a payment part (credential) and a delegation part (staking_credential). /// In order to serialize an address to `bech32`, the network kind must be known. /// For a better understanding of all the Cardano address types, read [CIP 19](https://cips.cardano.org/cips/cip19/) #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct Address { @@ -125,6 +125,7 @@ impl std::fmt::Display for AddressWithExtraInfo<'_> { /// A public key hash or validator hash credential (used as a payment or a staking credential) #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub enum Credential { PubKey(Ed25519PubKeyHash), diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index efe574b3..44c45334 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -31,6 +31,7 @@ use crate::{ /// Also know as `TxOutRef` from Plutus, this identifies a UTxO by its transacton hash and index /// inside the transaction #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionInput { @@ -89,6 +90,7 @@ impl TryFromPLA> for csl::TransactionInputs { /// Also known as Transaction ID or `TxID`. /// Note: Plutus docs might incorrectly state that it uses SHA256. #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionHash(pub LedgerBytes); @@ -121,6 +123,7 @@ impl TryFromPLA for csl::TransactionHash { /// This must include the target address, the hash of the datum attached, and the amount of output /// tokens #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionOutput { @@ -181,6 +184,7 @@ pub type POSIXTimeRange = PlutusInterval; /// An input of a pending transaction. #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TxInInfo { @@ -200,6 +204,7 @@ impl From<(TransactionInput, TransactionOutput)> for TxInInfo { /// Partial representation of digests of certificates on the ledger. #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum DCert { @@ -233,6 +238,7 @@ pub enum DCert { /// The purpose of the script that's currently running. #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum ScriptPurpose { @@ -248,6 +254,7 @@ pub enum ScriptPurpose { /// A pending transaction as seen by validator scripts, also known as TxInfo in Plutus #[derive(Debug, PartialEq, Eq, Clone, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionInfo { @@ -269,6 +276,7 @@ pub struct TransactionInfo { /// The context that is presented to the currently-executing script. #[derive(Debug, PartialEq, Eq, Clone, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct ScriptContext { diff --git a/plutus-ledger-api/src/v2/datum.rs b/plutus-ledger-api/src/v2/datum.rs index e247d7dc..9a3ec6c4 100644 --- a/plutus-ledger-api/src/v2/datum.rs +++ b/plutus-ledger-api/src/v2/datum.rs @@ -26,6 +26,7 @@ use crate::{ /// directly retrieved. In case of a datum hash, an off-chain indexer is required to find the /// associated datum by its hash. #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub enum OutputDatum { None, diff --git a/plutus-ledger-api/src/v2/transaction.rs b/plutus-ledger-api/src/v2/transaction.rs index 65335e4f..2b2fab06 100644 --- a/plutus-ledger-api/src/v2/transaction.rs +++ b/plutus-ledger-api/src/v2/transaction.rs @@ -38,6 +38,7 @@ use super::{ /// This must include the target address, an optional datum, an optional reference script, and the /// amount of output tokens #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionOutput { @@ -164,6 +165,7 @@ impl TryFromPLA> for csl::TransactionOutput { /// An input of a pending transaction. #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TxInInfo { @@ -182,6 +184,7 @@ impl From<(TransactionInput, TransactionOutput)> for TxInInfo { /// A pending transaction as seen by validator scripts, also known as TxInfo in Plutus #[derive(Debug, PartialEq, Eq, Clone, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionInfo { @@ -230,6 +233,7 @@ impl TryFromPLA> for csl::Withdrawals { /// The context that is presented to the currently-executing script. #[derive(Debug, PartialEq, Eq, Clone, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct ScriptContext { From 3e6428164a7eb46075ea7bcdd2f31b8cd620956c Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 21 Oct 2024 20:27:57 +0800 Subject: [PATCH 20/94] move plutus-data back to where it was --- is-plutus-data-derive/src/derive_impl.rs | 52 +- plutus-ledger-api/Cargo.lock | 15 +- plutus-ledger-api/Cargo.toml | 6 +- plutus-ledger-api/src/lamval.rs | 4 +- plutus-ledger-api/src/plutus_data.rs | 588 ++++++++++++++++++++++- plutus-ledger-api/src/v1/address.rs | 15 +- plutus-ledger-api/src/v1/crypto.rs | 11 +- plutus-ledger-api/src/v1/datum.rs | 2 +- plutus-ledger-api/src/v1/interval.rs | 9 +- plutus-ledger-api/src/v1/redeemer.rs | 1 + plutus-ledger-api/src/v1/script.rs | 1 + plutus-ledger-api/src/v1/transaction.rs | 1 + plutus-ledger-api/src/v1/value.rs | 1 + plutus-ledger-api/src/v2/datum.rs | 2 + plutus-ledger-api/src/v2/transaction.rs | 1 + 15 files changed, 635 insertions(+), 74 deletions(-) diff --git a/is-plutus-data-derive/src/derive_impl.rs b/is-plutus-data-derive/src/derive_impl.rs index 0b0886cd..71951969 100644 --- a/is-plutus-data-derive/src/derive_impl.rs +++ b/is-plutus-data-derive/src/derive_impl.rs @@ -32,12 +32,12 @@ pub(crate) fn get_is_plutus_data_instance(input: DeriveInput) -> Result plutus_data::PlutusData { + impl #impl_generics plutus_ledger_api::plutus_data::IsPlutusData for #type_name #type_generics #where_clause { + fn to_plutus_data(&self) -> plutus_ledger_api::plutus_data::PlutusData { #encoder } - fn from_plutus_data(plutus_data: &plutus_data::PlutusData) -> Result + fn from_plutus_data(plutus_data: &plutus_ledger_api::plutus_data::PlutusData) -> Result where Self: Sized { #decoder } @@ -170,15 +170,15 @@ fn get_newtype_encoder_decoder(input: &DeriveInput) -> Result<(Block, Block)> { Some(field_name) => { parse_quote!({ Ok(Self { - #field_name: plutus_data::IsPlutusData::from_plutus_data(plutus_data)? + #field_name: plutus_ledger_api::plutus_data::IsPlutusData::from_plutus_data(plutus_data)? }) }) } None => { parse_quote!({ - Ok(Self(plutus_data::IsPlutusData::from_plutus_data( - plutus_data, - )?)) + Ok(Self( + plutus_ledger_api::plutus_data::IsPlutusData::from_plutus_data(plutus_data)?, + )) }) } }; @@ -310,11 +310,11 @@ fn enum_from_plutus_data_constr(e: &DataEnum, plutus_data_input_var: &Ident) -> parse_quote!( { - let (tag, #plutus_data_list_var) = plutus_data::is_plutus_data::aux::parse_constr(#plutus_data_input_var)?; + let (tag, #plutus_data_list_var) = plutus_ledger_api::plutus_data::parse_constr(#plutus_data_input_var)?; match tag { #(#arms),* - tag => Err(plutus_data::PlutusDataError::UnexpectedPlutusInvariant { + tag => Err(plutus_ledger_api::plutus_data::PlutusDataError::UnexpectedPlutusInvariant { wanted: format!(#expected_tags_str), got: tag.to_string(), }), @@ -380,7 +380,7 @@ fn variant_with_named_fields_to_plutus_data( let plutus_data_list = data_fields_to_list_of_plutus_data(&field_accessors); parse_quote!( - #constructor{ #(#field_names),* } => plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) + #constructor{ #(#field_names),* } => plutus_ledger_api::plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) ) } @@ -407,7 +407,7 @@ fn variant_with_unnamed_field_to_plutus_data( let plutus_data_list = data_fields_to_list_of_plutus_data(&field_accessors); parse_quote!( - #constructor(#(#field_names),*) => plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) + #constructor(#(#field_names),*) => plutus_ledger_api::plutus_data::PlutusData::Constr(#tag.into(), #plutus_data_list) ) } @@ -425,7 +425,7 @@ fn variant_with_unnamed_fields_from_plutus_data_list( fn variant_with_no_field_to_plutus_data(constructor: &Path, tag: usize) -> Arm { parse_quote!( - #constructor => plutus_data::PlutusData::Constr(#tag.into(), vec![]) + #constructor => plutus_ledger_api::plutus_data::PlutusData::Constr(#tag.into(), vec![]) ) } @@ -463,7 +463,7 @@ fn struct_with_named_fields_to_plutus_data_list(fields: &FieldsNamed) -> Block { let to_list_of_plutus_data = struct_with_named_fields_to_list_of_plutus_data(fields); parse_quote!({ - plutus_data::PlutusData::List(#to_list_of_plutus_data) + plutus_ledger_api::plutus_data::PlutusData::List(#to_list_of_plutus_data) }) } @@ -477,7 +477,7 @@ fn struct_with_named_fields_from_plutus_data_list( struct_with_named_fields_from_list_of_plutus_data(fields, &list_of_plutus_data_var); parse_quote!({ - let #list_of_plutus_data_var = plutus_data::is_plutus_data::aux::parse_list(#plutus_data_input_var)?; + let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_list(#plutus_data_input_var)?; #from_list_of_plutus_data }) @@ -487,7 +487,7 @@ fn struct_with_named_fields_to_plutus_data_constr(fields: &FieldsNamed) -> Block let to_list_of_plutus_data = struct_with_named_fields_to_list_of_plutus_data(fields); parse_quote!({ - plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) + plutus_ledger_api::plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) }) } @@ -501,7 +501,7 @@ fn struct_with_named_fields_from_plutus_data_constr( struct_with_named_fields_from_list_of_plutus_data(fields, &plutus_data_list_var); parse_quote!({ - let #plutus_data_list_var = plutus_data::is_plutus_data::aux::parse_constr_with_tag(#plutus_data_input_var, 0)?; + let #plutus_data_list_var = plutus_ledger_api::plutus_data::parse_constr_with_tag(#plutus_data_input_var, 0)?; #from_plutus_data_list }) @@ -537,7 +537,7 @@ fn struct_with_unnamed_fields_to_plutus_data_list(fields: &FieldsUnnamed) -> Blo let to_list_of_plutus_data = struct_with_unnamed_fields_to_list_of_plutus_data(fields); parse_quote!({ - plutus_data::PlutusData::List(#to_list_of_plutus_data) + plutus_ledger_api::plutus_data::PlutusData::List(#to_list_of_plutus_data) }) } @@ -551,7 +551,7 @@ fn struct_with_unnamed_fields_from_plutus_data_list( struct_with_unnamed_fields_from_list_of_plutus_data(fields, &list_of_plutus_data_var); parse_quote!({ - let #list_of_plutus_data_var = plutus_data::is_plutus_data::aux::parse_list(#plutus_data_input_var)?; + let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_list(#plutus_data_input_var)?; #from_list_of_plutus_data }) @@ -561,7 +561,7 @@ fn struct_with_unnamed_fields_to_plutus_data_constr(fields: &FieldsUnnamed) -> B let to_list_of_plutus_data = struct_with_unnamed_fields_to_list_of_plutus_data(fields); parse_quote!({ - plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) + plutus_ledger_api::plutus_data::PlutusData::Constr(0.into(), #to_list_of_plutus_data) }) } @@ -574,7 +574,7 @@ fn struct_with_unnamed_fields_from_plutus_data_constr( let from_fields = struct_with_unnamed_fields_from_list_of_plutus_data(fields, &fields_var); parse_quote!({ - let #fields_var = plutus_data::is_plutus_data::aux::parse_constr_with_tag(#plutus_data_input_var, 0)?; + let #fields_var = plutus_ledger_api::plutus_data::parse_constr_with_tag(#plutus_data_input_var, 0)?; #from_fields }) @@ -591,7 +591,7 @@ fn struct_with_no_field_from_plutus_data_list(plutus_data_input_var: &Ident) -> data_with_no_fields_from_list_of_plutus_data(&parse_quote!(Self), &list_of_plutus_data_var); parse_quote!({ - let #list_of_plutus_data_var = plutus_data::is_plutus_data::aux::parse_list(#plutus_data_input_var)?; + let #list_of_plutus_data_var = plutus_ledger_api::plutus_data::parse_list(#plutus_data_input_var)?; #from_list_of_plutus_data }) @@ -608,7 +608,7 @@ fn struct_with_no_field_from_plutus_data_constr(plutus_data_input_var: &Ident) - data_with_no_fields_from_list_of_plutus_data(&parse_quote!(Self), &fields_var); parse_quote!({ - let #fields_var = plutus_data::is_plutus_data::aux::parse_constr_with_tag(#plutus_data_input_var, 0)?; + let #fields_var = plutus_ledger_api::plutus_data::parse_constr_with_tag(#plutus_data_input_var, 0)?; #from_fields }) @@ -641,14 +641,14 @@ fn data_with_named_fields_from_list_of_plutus_data( let field_decoded_stmts = field_idents.clone().zip(unparsed_field_idents.clone()).map( |(field_ident, unparsed_field_ident)| -> Stmt { parse_quote!( - let #field_ident = plutus_data::IsPlutusData::from_plutus_data(#unparsed_field_ident)?; + let #field_ident = plutus_ledger_api::plutus_data::IsPlutusData::from_plutus_data(#unparsed_field_ident)?; ) }, ); parse_quote!( { - let [ #(#unparsed_field_idents),* ] = plutus_data::is_plutus_data::aux::parse_fixed_len_constr_fields::<#field_count>(#plutus_data_list_var)?; + let [ #(#unparsed_field_idents),* ] = plutus_ledger_api::plutus_data::parse_fixed_len_constr_fields::<#field_count>(#plutus_data_list_var)?; #(#field_decoded_stmts)* Ok(#constructor{ #(#field_idents),* }) } @@ -678,7 +678,7 @@ fn data_with_unnamed_fields_from_list_of_plutus_data( }); parse_quote!({ - let [ #(#unparsed_field_idents),* ] = plutus_data::is_plutus_data::aux::parse_fixed_len_constr_fields::<#field_count>(#plutus_data_list_var)?; + let [ #(#unparsed_field_idents),* ] = plutus_ledger_api::plutus_data::parse_fixed_len_constr_fields::<#field_count>(#plutus_data_list_var)?; #(#field_decoded_stmts)* Ok(#constructor(#(#parsed_field_idents),*)) }) @@ -689,7 +689,7 @@ fn data_with_no_fields_from_list_of_plutus_data( list_of_plutus_data_var: &Ident, ) -> Block { parse_quote!({ - let [ ] = plutus_data::is_plutus_data::aux::parse_fixed_len_constr_fields::<0>(#list_of_plutus_data_var)?; + let [ ] = plutus_ledger_api::plutus_data::parse_fixed_len_constr_fields::<0>(#list_of_plutus_data_var)?; Ok(#constructor) }) } diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index e2f7fa2b..79fed433 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -608,19 +608,6 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" -[[package]] -name = "plutus-data" -version = "0.1.0" -dependencies = [ - "data-encoding", - "is-plutus-data-derive", - "lbr-prelude", - "num-bigint", - "serde", - "serde_json", - "thiserror", -] - [[package]] name = "plutus-ledger-api" version = "2.0.0-beta.1" @@ -631,11 +618,11 @@ dependencies = [ "data-encoding", "goldie", "impl_ops", + "is-plutus-data-derive", "lbr-prelude", "linked-hash-map", "num-bigint", "num-traits", - "plutus-data", "proptest", "serde", "serde_json", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index d09b07f5..1ece4816 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -22,13 +22,13 @@ num-traits = "~0.2.17" impl_ops = "0.1.1" chrono = { version = "0.4.34", optional = true } cardano-serialization-lib = "12.1.0" +is-plutus-data-derive = { path = ".extras/is-plutus-data-derive-0" } anyhow = "1.0.86" -plutus-data = { path = ".extras/plutus-data-0", features = [ "derive" ]} [features] default = [] -serde = ["dep:serde", "num-bigint/serde", "dep:serde_json", "plutus-data/serde"] -lbf = ["dep:lbr-prelude", "dep:serde_json", "plutus-data/lbf"] +serde = ["dep:serde", "num-bigint/serde", "dep:serde_json"] +lbf = ["dep:lbr-prelude", "dep:serde_json"] chrono = ["dep:chrono"] [dev-dependencies] diff --git a/plutus-ledger-api/src/lamval.rs b/plutus-ledger-api/src/lamval.rs index 366e3b72..7a3459bc 100644 --- a/plutus-ledger-api/src/lamval.rs +++ b/plutus-ledger-api/src/lamval.rs @@ -1,4 +1,6 @@ -use crate::plutus_data::{self, PlutusData, PlutusDataError}; +use crate::plutus_data::PlutusDataError; +use crate::plutus_data::{self, PlutusData}; + use num_bigint::BigInt; pub fn case_plutus_data<'a, T: 'a>( diff --git a/plutus-ledger-api/src/plutus_data.rs b/plutus-ledger-api/src/plutus_data.rs index e446ed77..0be189b7 100644 --- a/plutus-ledger-api/src/plutus_data.rs +++ b/plutus-ledger-api/src/plutus_data.rs @@ -1,27 +1,109 @@ //! Plutus Data related types and traits + +use std::collections::{BTreeMap, BTreeSet}; + use cardano_serialization_lib as csl; use num_bigint::BigInt; use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; -pub use plutus_data::{ - is_plutus_data::aux::*, IsPlutusData, PlutusData, PlutusDataError, PlutusType, +pub use is_plutus_data_derive::IsPlutusData; + +#[cfg(feature = "lbf")] +use data_encoding::HEXLOWER; +#[cfg(feature = "lbf")] +use lbr_prelude::error::Error; +#[cfg(feature = "lbf")] +use lbr_prelude::json::{ + case_json_constructor, case_json_object, json_constructor, json_object, Json, }; -/// Deserialise a Plutus data using parsers for each variant -pub fn case_plutus_data<'a, T>( - ctor_case: impl FnOnce(&'a BigInt) -> Box) -> T>, - list_case: impl FnOnce(&'a Vec) -> T, - int_case: impl FnOnce(&'a BigInt) -> T, - other_case: impl FnOnce(&'a PlutusData) -> T, - pd: &'a PlutusData, -) -> T { - match pd { - PlutusData::Constr(tag, args) => ctor_case(&tag)(&args), - PlutusData::List(args) => list_case(&args), - PlutusData::Integer(i) => int_case(&i), - other => other_case(&other), +#[cfg(feature = "serde")] +use serde::{Deserialize, Serialize}; + +/// Data representation of on-chain data such as Datums and Redeemers +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +pub enum PlutusData { + Constr(BigInt, Vec), + Map(Vec<(PlutusData, PlutusData)>), + List(Vec), + Integer(BigInt), + Bytes(Vec), +} + +#[derive(Clone, Debug)] +pub enum PlutusType { + Constr, + Map, + List, + Integer, + Bytes, +} + +pub trait IsPlutusData { + fn to_plutus_data(&self) -> PlutusData; + + fn from_plutus_data(plutus_data: &PlutusData) -> Result + where + Self: Sized; +} + +// TODO(chfanghr): improve error reporting +#[derive(Clone, Debug, thiserror::Error)] +pub enum PlutusDataError { + #[error("Expected a PlutusData type {wanted:?}, but got {got:?}")] + UnexpectedPlutusType { got: PlutusType, wanted: PlutusType }, + #[error("Expected a PlutusData type as {wanted:?}, but got {got:?}")] + UnexpectedPlutusInvariant { got: String, wanted: String }, + #[error("Expected a Plutus List with {wanted:?} elements, but got {got:?} elements")] + UnexpectedListLength { got: usize, wanted: usize }, + #[error("Some internal error happened: {0}")] + InternalError(String), +} + +impl From<&PlutusData> for PlutusType { + fn from(plutus_data: &PlutusData) -> Self { + match plutus_data { + PlutusData::Constr(_, _) => PlutusType::Constr, + PlutusData::Map(_) => PlutusType::Map, + PlutusData::List(_) => PlutusType::List, + PlutusData::Integer(_) => PlutusType::Integer, + PlutusData::Bytes(_) => PlutusType::Bytes, + } + } +} + +impl PlutusData { + pub fn constr(tag: u32, fields: Vec) -> Self { + PlutusData::Constr(BigInt::from(tag), fields) + } + + pub fn map(fields: Vec<(PlutusData, PlutusData)>) -> Self { + PlutusData::Map(fields) + } + + pub fn list(fields: Vec) -> Self { + PlutusData::List(fields) + } + + pub fn integer(value: u32) -> Self { + PlutusData::Integer(BigInt::from(value)) + } + + pub fn bytes(value: Vec) -> Self { + PlutusData::Bytes(value) + } +} + +impl IsPlutusData for PlutusData { + fn to_plutus_data(&self) -> PlutusData { + self.clone() + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + Ok(plutus_data.clone()) } } @@ -44,6 +126,399 @@ impl TryFromCSL for PlutusData { } } +#[cfg(feature = "lbf")] +impl Json for PlutusData { + fn to_json(&self) -> serde_json::Value { + match self { + PlutusData::Constr(index, fields) => json_constructor( + "Constr", + vec![json_object(vec![ + ("index".to_string(), index.to_json()), + ("fields".to_string(), fields.to_json()), + ])], + ), + PlutusData::Map(map) => json_constructor("Map", vec![map.to_json()]), + PlutusData::List(list) => json_constructor("List", vec![list.to_json()]), + PlutusData::Integer(int) => json_constructor("Integer", vec![int.to_json()]), + PlutusData::Bytes(bytes) => { + json_constructor("Bytes", vec![String::to_json(&HEXLOWER.encode(bytes))]) + } + } + } + + fn from_json(value: &serde_json::Value) -> Result { + case_json_constructor( + "PlutusV1.PlutusData", + vec![ + ( + "Constr", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => case_json_object( + |obj| { + let index = obj.get("index").ok_or(Error::UnexpectedFieldName { + wanted: "index".to_owned(), + got: obj.keys().cloned().collect(), + parser: "PlutusV1.PlutusData".to_owned(), + })?; + + let fields = + obj.get("fields").ok_or(Error::UnexpectedFieldName { + wanted: "fields".to_owned(), + got: obj.keys().cloned().collect(), + parser: "PlutusV1.PlutusData".to_owned(), + })?; + Ok(PlutusData::Constr( + BigInt::from_json(index)?, + >::from_json(fields)?, + )) + }, + val, + ), + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ( + "Map", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => Ok(PlutusData::Map(Json::from_json(val)?)), + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ( + "List", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => Ok(PlutusData::List(Json::from_json(val)?)), + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ( + "Integer", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => Ok(PlutusData::Integer(Json::from_json(val)?)), + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ( + "Bytes", + Box::new(|ctor_fields| match &ctor_fields[..] { + [val] => { + let bytes = String::from_json(val).and_then(|str| { + HEXLOWER.decode(&str.into_bytes()).map_err(|_| { + Error::UnexpectedJsonInvariant { + wanted: "base16 string".to_owned(), + got: "unexpected string".to_owned(), + parser: "Plutus.V1.Bytes".to_owned(), + } + }) + })?; + Ok(PlutusData::Bytes(bytes)) + } + _ => Err(Error::UnexpectedArrayLength { + wanted: 1, + got: ctor_fields.len(), + parser: "PlutusV1.PlutusData".to_owned(), + }), + }), + ), + ], + value, + ) + } +} + +// MARK: Orphan IsPlutusData Instances + +impl IsPlutusData for BigInt { + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Integer(self.clone()) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::Integer(int) => Ok(int.clone()), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Integer, + got: PlutusType::from(plutus_data), + }), + } + } +} + +impl IsPlutusData for Vec { + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Bytes(self.clone()) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::Bytes(bytes) => Ok(bytes.clone()), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Bytes, + got: PlutusType::from(plutus_data), + }), + } + } +} + +const BOOL_FALSE_TAG: u32 = 0; +const BOOL_TRUE_TAG: u32 = 1; + +impl IsPlutusData for bool { + fn to_plutus_data(&self) -> PlutusData { + if *self { + PlutusData::Constr(BOOL_TRUE_TAG.into(), vec![]) + } else { + PlutusData::Constr(BOOL_FALSE_TAG.into(), vec![]) + } + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let (tag, fields) = parse_constr(plutus_data)?; + let [] = parse_fixed_len_constr_fields::<0>(fields)?; + match tag { + BOOL_TRUE_TAG => Ok(true), + BOOL_FALSE_TAG => Ok(false), + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + wanted: format!("Constr with tag {BOOL_TRUE_TAG} or {BOOL_FALSE_TAG}"), + got: tag.to_string(), + }), + } + } +} + +impl IsPlutusData for String { + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Bytes(self.as_bytes().into()) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::Bytes(bytes) => String::from_utf8(bytes.clone()).map_err(|err| { + PlutusDataError::InternalError(format!( + "Couldn't convert Plutus bytes to String: {:?}", + err + )) + }), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Bytes, + got: PlutusType::from(plutus_data), + }), + } + } +} + +impl IsPlutusData for char { + fn to_plutus_data(&self) -> PlutusData { + String::from(*self).to_plutus_data() + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + String::from_plutus_data(plutus_data).and_then(|str| { + let mut chars = str.chars(); + let ch = chars.next(); + let rest = chars.next(); + match (ch, rest) { + (Some(ch), None) => Ok(ch), + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + got: "string".to_owned(), + wanted: "char".to_owned(), + }), + } + }) + } +} + +const OPTION_SOME_TAG: u32 = 0; +const OPTION_NONE_TAG: u32 = 1; + +impl IsPlutusData for Option +where + T: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + match self { + Some(val) => PlutusData::Constr(OPTION_SOME_TAG.into(), vec![val.to_plutus_data()]), + None => PlutusData::Constr(OPTION_NONE_TAG.into(), vec![]), + } + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let (tag, fields) = parse_constr(plutus_data)?; + + match tag { + OPTION_SOME_TAG => { + let [data] = parse_fixed_len_constr_fields::<1>(fields)?; + Ok(Some(T::from_plutus_data(data)?)) + } + OPTION_NONE_TAG => { + let [] = parse_fixed_len_constr_fields::<0>(fields)?; + Ok(None) + } + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + wanted: format!("Constr with tag {OPTION_SOME_TAG} or {OPTION_NONE_TAG}"), + got: tag.to_string(), + }), + } + } +} + +const RESULT_ERR_TAG: u32 = 0; +const RESULT_OK_TAG: u32 = 1; + +impl IsPlutusData for Result +where + T: IsPlutusData, + E: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + match self { + Err(err) => PlutusData::Constr(RESULT_ERR_TAG.into(), vec![err.to_plutus_data()]), + Ok(val) => PlutusData::Constr(RESULT_OK_TAG.into(), vec![val.to_plutus_data()]), + } + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let (tag, fields) = parse_constr(plutus_data)?; + let [field] = parse_fixed_len_constr_fields::<1>(fields)?; + + match tag { + RESULT_ERR_TAG => Ok(Err(E::from_plutus_data(field)?)), + RESULT_OK_TAG => Ok(Ok(T::from_plutus_data(field)?)), + _ => Err(PlutusDataError::UnexpectedPlutusInvariant { + wanted: format!("Constr with tag {RESULT_ERR_TAG} or {RESULT_OK_TAG}"), + got: tag.to_string(), + }), + } + } +} + +impl IsPlutusData for Vec +where + T: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + let values = self + .iter() + .map(|val| val.to_plutus_data()) + .collect::>(); + + PlutusData::List(values) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let list = parse_list(plutus_data)?; + list.iter().map(T::from_plutus_data).collect() + } +} + +impl IsPlutusData for BTreeSet +where + T: IsPlutusData + Eq + Ord, +{ + fn to_plutus_data(&self) -> PlutusData { + let set = self + .iter() + .map(|val| val.to_plutus_data()) + .collect::>(); + + PlutusData::List(set) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::List(vec) => vec + .iter() + .map(|val| T::from_plutus_data(val)) + .collect::>(), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::List, + got: PlutusType::from(plutus_data), + }), + } + } +} + +impl IsPlutusData for BTreeMap +where + K: IsPlutusData + Eq + Ord, + V: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + let assoc_map = self + .iter() + .map(|(key, val)| (key.to_plutus_data(), val.to_plutus_data())) + .collect::>(); + + PlutusData::Map(assoc_map) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + match plutus_data { + PlutusData::Map(dict) => dict + .iter() + .map(|(key, val)| Ok((K::from_plutus_data(key)?, V::from_plutus_data(val)?))) + .collect::>(), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Map, + got: PlutusType::from(plutus_data), + }), + } + } +} + +const UNIT_TAG: u32 = 0; + +impl IsPlutusData for () { + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Constr(UNIT_TAG.into(), vec![]) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let fields = parse_constr_with_tag(plutus_data, UNIT_TAG)?; + let [] = parse_fixed_len_constr_fields::<0>(fields)?; + Ok(()) + } +} + +const PAIR_TAG: u32 = 0; + +impl IsPlutusData for (A, B) +where + A: IsPlutusData, + B: IsPlutusData, +{ + fn to_plutus_data(&self) -> PlutusData { + PlutusData::Constr( + BigInt::from(PAIR_TAG), + vec![self.0.to_plutus_data(), self.1.to_plutus_data()], + ) + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result { + let fields = parse_constr_with_tag(plutus_data, PAIR_TAG)?; + let [a, b] = parse_fixed_len_constr_fields::<2>(fields)?; + Ok((A::from_plutus_data(a)?, B::from_plutus_data(b)?)) + } +} + +// MARK: Orphan TryFromCSL instances + impl TryFromCSL for Vec { fn try_from_csl(value: &csl::PlutusList) -> Result { (0..value.len()) @@ -109,3 +584,86 @@ impl TryFromPLA> for csl::PlutusMap { }) } } + +// MARK: Aux functions + +/// Deserialise a Plutus data using parsers for each variant +pub fn case_plutus_data<'a, T>( + ctor_case: impl FnOnce(&'a BigInt) -> Box) -> T>, + list_case: impl FnOnce(&'a Vec) -> T, + int_case: impl FnOnce(&'a BigInt) -> T, + other_case: impl FnOnce(&'a PlutusData) -> T, + pd: &'a PlutusData, +) -> T { + match pd { + PlutusData::Constr(tag, args) => ctor_case(&tag)(&args), + PlutusData::List(args) => list_case(&args), + PlutusData::Integer(i) => int_case(&i), + other => other_case(&other), + } +} + +/// Given a vector of PlutusData, parse it as an array whose length is known at +/// compile time. +/// +/// This function is used by the derive macro. +pub fn parse_fixed_len_constr_fields( + v: &[PlutusData], +) -> Result<&[PlutusData; LEN], PlutusDataError> { + v.try_into() + .map_err(|_| PlutusDataError::UnexpectedListLength { + got: v.len(), + wanted: LEN, + }) +} + +/// Given a PlutusData, parse it as PlutusData::Constr and its tag as u32. Return +/// the u32 tag and fields. +/// +/// This function is used by the derive macro. +pub fn parse_constr(data: &PlutusData) -> Result<(u32, &Vec), PlutusDataError> { + match data { + PlutusData::Constr(tag, fields) => u32::try_from(tag) + .map_err(|err| PlutusDataError::UnexpectedPlutusInvariant { + got: err.to_string(), + wanted: "Constr bigint tag within u32 range".into(), + }) + .map(|tag| (tag, fields)), + _ => Err(PlutusDataError::UnexpectedPlutusType { + wanted: PlutusType::Constr, + got: PlutusType::from(data), + }), + } +} + +/// Given a PlutusData, parse it as PlutusData::Constr and verify its tag. +/// +/// This function is used by the derive macro. +pub fn parse_constr_with_tag( + data: &PlutusData, + expected_tag: u32, +) -> Result<&Vec, PlutusDataError> { + let (tag, fields) = parse_constr(data)?; + + if tag != expected_tag { + Err(PlutusDataError::UnexpectedPlutusInvariant { + got: tag.to_string(), + wanted: format!("Constr with tag {}", expected_tag), + }) + } else { + Ok(fields) + } +} + +/// Given a PlutusData, parse it as PlutusData::List. Return the plutus data list. +/// +/// This function is used by the derive macro. +pub fn parse_list(data: &PlutusData) -> Result<&Vec, PlutusDataError> { + match data { + PlutusData::List(list_of_plutus_data) => Ok(list_of_plutus_data), + _ => Err(PlutusDataError::UnexpectedPlutusType { + got: PlutusType::from(data), + wanted: PlutusType::List, + }), + } +} diff --git a/plutus-ledger-api/src/v1/address.rs b/plutus-ledger-api/src/v1/address.rs index f3c1abad..1da054cf 100644 --- a/plutus-ledger-api/src/v1/address.rs +++ b/plutus-ledger-api/src/v1/address.rs @@ -3,19 +3,22 @@ use std::str::FromStr; use anyhow::anyhow; use cardano_serialization_lib as csl; -use plutus_data::is_plutus_data::aux::{parse_constr, parse_fixed_len_constr_fields}; -use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; -use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; -use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; -use crate::v1::crypto::Ed25519PubKeyHash; -use crate::v1::script::ValidatorHash; #[cfg(feature = "lbf")] use lbr_prelude::json::{self, Error, Json}; use num_bigint::BigInt; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +use crate as plutus_ledger_api; +use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; +use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; +use crate::plutus_data::{ + parse_constr, parse_fixed_len_constr_fields, IsPlutusData, PlutusData, PlutusDataError, +}; +use crate::v1::crypto::Ed25519PubKeyHash; +use crate::v1::script::ValidatorHash; + ///////////// // Address // ///////////// diff --git a/plutus-ledger-api/src/v1/crypto.rs b/plutus-ledger-api/src/v1/crypto.rs index 4555ff9b..6565e1a4 100644 --- a/plutus-ledger-api/src/v1/crypto.rs +++ b/plutus-ledger-api/src/v1/crypto.rs @@ -3,13 +3,16 @@ use cardano_serialization_lib as csl; use data_encoding::HEXLOWER; #[cfg(feature = "lbf")] use lbr_prelude::json::{Error, Json}; -use plutus_data::IsPlutusData; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; -use crate::csl::{ - csl_to_pla::FromCSL, - pla_to_csl::{TryFromPLA, TryFromPLAError}, +use crate as plutus_ledger_api; +use crate::{ + csl::{ + csl_to_pla::FromCSL, + pla_to_csl::{TryFromPLA, TryFromPLAError}, + }, + plutus_data::IsPlutusData, }; /////////////////////// diff --git a/plutus-ledger-api/src/v1/datum.rs b/plutus-ledger-api/src/v1/datum.rs index 49901ab5..c74fbbc0 100644 --- a/plutus-ledger-api/src/v1/datum.rs +++ b/plutus-ledger-api/src/v1/datum.rs @@ -2,13 +2,13 @@ use cardano_serialization_lib as csl; +use crate as plutus_ledger_api; use crate::csl::csl_to_pla::FromCSL; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; use crate::plutus_data::{IsPlutusData, PlutusData}; use crate::v1::crypto::LedgerBytes; #[cfg(feature = "lbf")] use lbr_prelude::json::Json; - #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; diff --git a/plutus-ledger-api/src/v1/interval.rs b/plutus-ledger-api/src/v1/interval.rs index eb789273..db827f8d 100644 --- a/plutus-ledger-api/src/v1/interval.rs +++ b/plutus-ledger-api/src/v1/interval.rs @@ -1,12 +1,13 @@ //! Types related to PlutusInterval + use crate::feature_traits::FeatureTraits; -use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; +use crate::plutus_data::{ + parse_constr, parse_constr_with_tag, parse_fixed_len_constr_fields, IsPlutusData, PlutusData, + PlutusDataError, +}; #[cfg(feature = "lbf")] use lbr_prelude::json::Json; use num_bigint::BigInt; -use plutus_data::is_plutus_data::aux::{ - parse_constr, parse_constr_with_tag, parse_fixed_len_constr_fields, -}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; use std::cmp; diff --git a/plutus-ledger-api/src/v1/redeemer.rs b/plutus-ledger-api/src/v1/redeemer.rs index c46e39a7..beeb6161 100644 --- a/plutus-ledger-api/src/v1/redeemer.rs +++ b/plutus-ledger-api/src/v1/redeemer.rs @@ -7,6 +7,7 @@ use lbr_prelude::json::Json; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +use crate as plutus_ledger_api; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; use crate::plutus_data::{IsPlutusData, PlutusData}; use crate::v1::crypto::LedgerBytes; diff --git a/plutus-ledger-api/src/v1/script.rs b/plutus-ledger-api/src/v1/script.rs index 5afcf2a4..e3f73b98 100644 --- a/plutus-ledger-api/src/v1/script.rs +++ b/plutus-ledger-api/src/v1/script.rs @@ -7,6 +7,7 @@ use lbr_prelude::json::Json; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +use crate as plutus_ledger_api; use crate::csl::csl_to_pla::FromCSL; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; use crate::plutus_data::IsPlutusData; diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index 44c45334..2ef775e6 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -16,6 +16,7 @@ use super::{ value::{CurrencySymbol, Value}, }; +use crate as plutus_ledger_api; use crate::csl::{csl_to_pla::FromCSL, pla_to_csl::TryFromPLA}; use crate::{ csl::pla_to_csl::{TryFromPLAError, TryToCSL}, diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index 88ce2771..4c34c0c1 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -18,6 +18,7 @@ use serde::{Deserialize, Serialize}; #[cfg(feature = "lbf")] use serde_json; +use crate as plutus_ledger_api; use crate::csl::csl_to_pla::FromCSL; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; diff --git a/plutus-ledger-api/src/v2/datum.rs b/plutus-ledger-api/src/v2/datum.rs index 9a3ec6c4..2afce837 100644 --- a/plutus-ledger-api/src/v2/datum.rs +++ b/plutus-ledger-api/src/v2/datum.rs @@ -7,6 +7,7 @@ use lbr_prelude::json::{self, Error, Json}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +use crate as plutus_ledger_api; pub use crate::v1::datum::{Datum, DatumHash}; use crate::{ csl::{ @@ -16,6 +17,7 @@ use crate::{ plutus_data::IsPlutusData, }; +// use crate as plutus_data/ ///////////////// // OutputDatum // ///////////////// diff --git a/plutus-ledger-api/src/v2/transaction.rs b/plutus-ledger-api/src/v2/transaction.rs index 2b2fab06..45c1c5e8 100644 --- a/plutus-ledger-api/src/v2/transaction.rs +++ b/plutus-ledger-api/src/v2/transaction.rs @@ -9,6 +9,7 @@ use num_bigint::BigInt; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +use crate as plutus_ledger_api; use crate::csl::csl_to_pla::{FromCSL, TryFromCSL, TryFromCSLError, TryToPLA}; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; use crate::plutus_data::IsPlutusData; From 84f92b6a7920e2dddfca37c0a156273f1bccd401 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 21 Oct 2024 20:29:32 +0800 Subject: [PATCH 21/94] remove plutus-data --- flake.nix | 1 - plutus-data/.envrc | 1 - plutus-data/Cargo.lock | 657 ------------------ plutus-data/Cargo.toml | 19 - plutus-data/build.nix | 19 - plutus-data/src/is_plutus_data/aux.rs | 66 -- plutus-data/src/is_plutus_data/instances.rs | 292 -------- .../src/is_plutus_data/is_plutus_data.rs | 22 - plutus-data/src/is_plutus_data/mod.rs | 3 - plutus-data/src/lib.rs | 8 - plutus-data/src/plutus_data.rs | 183 ----- plutus-ledger-api/build.nix | 1 - 12 files changed, 1272 deletions(-) delete mode 100644 plutus-data/.envrc delete mode 100644 plutus-data/Cargo.lock delete mode 100644 plutus-data/Cargo.toml delete mode 100644 plutus-data/build.nix delete mode 100644 plutus-data/src/is_plutus_data/aux.rs delete mode 100644 plutus-data/src/is_plutus_data/instances.rs delete mode 100644 plutus-data/src/is_plutus_data/is_plutus_data.rs delete mode 100644 plutus-data/src/is_plutus_data/mod.rs delete mode 100644 plutus-data/src/lib.rs delete mode 100644 plutus-data/src/plutus_data.rs diff --git a/flake.nix b/flake.nix index 29f46ea0..8d68e4df 100644 --- a/flake.nix +++ b/flake.nix @@ -24,7 +24,6 @@ ./plutus-ledger-api/build.nix ./is-plutus-data-derive/build.nix - ./plutus-data/build.nix ]; debug = true; systems = [ "x86_64-linux" "x86_64-darwin" ]; diff --git a/plutus-data/.envrc b/plutus-data/.envrc deleted file mode 100644 index 6841e870..00000000 --- a/plutus-data/.envrc +++ /dev/null @@ -1 +0,0 @@ -use flake .#dev-plutus-data-rust diff --git a/plutus-data/Cargo.lock b/plutus-data/Cargo.lock deleted file mode 100644 index 690b9931..00000000 --- a/plutus-data/Cargo.lock +++ /dev/null @@ -1,657 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "autocfg" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" - -[[package]] -name = "bit-set" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" -dependencies = [ - "bit-vec", -] - -[[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - -[[package]] -name = "bitflags" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "data-encoding" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" - -[[package]] -name = "dissimilar" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59f8e79d1fbf76bdfbde321e902714bf6c49df88a7dda6fc682fc2979226962d" - -[[package]] -name = "equivalent" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" - -[[package]] -name = "errno" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "fastrand" -version = "2.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "getrandom" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" -dependencies = [ - "cfg-if", - "libc", - "wasi", -] - -[[package]] -name = "glob" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" - -[[package]] -name = "hashbrown" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" - -[[package]] -name = "indexmap" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" -dependencies = [ - "equivalent", - "hashbrown", -] - -[[package]] -name = "is-plutus-data-derive" -version = "0.1.0" -dependencies = [ - "proc-macro2", - "quote", - "syn", - "thiserror", -] - -[[package]] -name = "itoa" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" - -[[package]] -name = "lazy_static" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" - -[[package]] -name = "lbr-prelude" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21471892874c4667636a067ed7a158b9691178988a4c5988585e1010e9b5817d" -dependencies = [ - "data-encoding", - "lbr-prelude-derive", - "num-bigint", - "proptest", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "lbr-prelude-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "370d0aa0809ee84ccf7c6d84ae2d6ac97b84cb1337b3d145101bcf6a7319deac" -dependencies = [ - "proc-macro2", - "quote", - "syn", - "trybuild", -] - -[[package]] -name = "libc" -version = "0.2.160" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0b21006cd1874ae9e650973c565615676dc4a274c965bb0a73796dac838ce4f" - -[[package]] -name = "libm" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" - -[[package]] -name = "linux-raw-sys" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" - -[[package]] -name = "memchr" -version = "2.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" - -[[package]] -name = "num-bigint" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" -dependencies = [ - "num-integer", - "num-traits", - "serde", -] - -[[package]] -name = "num-integer" -version = "0.1.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" -dependencies = [ - "autocfg", - "libm", -] - -[[package]] -name = "once_cell" -version = "1.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" - -[[package]] -name = "plutus-data" -version = "0.1.0" -dependencies = [ - "data-encoding", - "is-plutus-data-derive", - "lbr-prelude", - "num-bigint", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "ppv-lite86" -version = "0.2.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" -dependencies = [ - "zerocopy", -] - -[[package]] -name = "proc-macro2" -version = "1.0.88" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "proptest" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" -dependencies = [ - "bit-set", - "bit-vec", - "bitflags", - "lazy_static", - "num-traits", - "rand", - "rand_chacha", - "rand_xorshift", - "regex-syntax", - "rusty-fork", - "tempfile", - "unarray", -] - -[[package]] -name = "quick-error" -version = "1.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" - -[[package]] -name = "quote" -version = "1.0.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "libc", - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom", -] - -[[package]] -name = "rand_xorshift" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" -dependencies = [ - "rand_core", -] - -[[package]] -name = "regex-syntax" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" - -[[package]] -name = "rustix" -version = "0.38.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" -dependencies = [ - "bitflags", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - -[[package]] -name = "rusty-fork" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" -dependencies = [ - "fnv", - "quick-error", - "tempfile", - "wait-timeout", -] - -[[package]] -name = "ryu" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" - -[[package]] -name = "serde" -version = "1.0.210" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.210" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "serde_json" -version = "1.0.128" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" -dependencies = [ - "itoa", - "memchr", - "ryu", - "serde", -] - -[[package]] -name = "serde_spanned" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" -dependencies = [ - "serde", -] - -[[package]] -name = "syn" -version = "2.0.79" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "tempfile" -version = "3.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" -dependencies = [ - "cfg-if", - "fastrand", - "once_cell", - "rustix", - "windows-sys 0.59.0", -] - -[[package]] -name = "termcolor" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "thiserror" -version = "1.0.64" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.64" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "toml" -version = "0.8.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" -dependencies = [ - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit", -] - -[[package]] -name = "toml_datetime" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" -dependencies = [ - "serde", -] - -[[package]] -name = "toml_edit" -version = "0.22.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" -dependencies = [ - "indexmap", - "serde", - "serde_spanned", - "toml_datetime", - "winnow", -] - -[[package]] -name = "trybuild" -version = "1.0.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8923cde76a6329058a86f04d033f0945a2c6df8b94093512e4ab188b3e3a8950" -dependencies = [ - "dissimilar", - "glob", - "serde", - "serde_derive", - "serde_json", - "termcolor", - "toml", -] - -[[package]] -name = "unarray" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" - -[[package]] -name = "unicode-ident" -version = "1.0.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" - -[[package]] -name = "wait-timeout" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" -dependencies = [ - "libc", -] - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "winapi-util" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets", -] - -[[package]] -name = "windows-sys" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets", -] - -[[package]] -name = "windows-targets" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" -dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_gnullvm", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" - -[[package]] -name = "winnow" -version = "0.6.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" -dependencies = [ - "memchr", -] - -[[package]] -name = "zerocopy" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" -dependencies = [ - "byteorder", - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] diff --git a/plutus-data/Cargo.toml b/plutus-data/Cargo.toml deleted file mode 100644 index ade68904..00000000 --- a/plutus-data/Cargo.toml +++ /dev/null @@ -1,19 +0,0 @@ -[package] -name = "plutus-data" -version = "0.1.0" -edition = "2021" - -[dependencies] -serde = { version = "^1.0.189", features = ["derive"], optional = true } -serde_json = { version = "1.0.128", optional = true } -num-bigint = "~0.4" -is-plutus-data-derive = { path = ".extras/is-plutus-data-derive-0", optional = true } -lbr-prelude = { version = "0.1.1", optional = true } -data-encoding = { version = "2.6.0", optional = true } -thiserror = "1.0.64" - -[features] -default = [] -serde = ["dep:serde", "num-bigint/serde", "dep:serde_json"] -lbf = ["dep:lbr-prelude", "dep:serde_json", "dep:data-encoding"] -derive = ["dep:is-plutus-data-derive"] diff --git a/plutus-data/build.nix b/plutus-data/build.nix deleted file mode 100644 index 33b00935..00000000 --- a/plutus-data/build.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ inputs, ... }: { - perSystem = { config, system, ... }: - let - rustFlake = - inputs.flake-lang.lib.${system}.rustFlake { - src = ./.; - version = "0"; - crateName = "plutus-data"; - devShellHook = config.settings.shell.hook; - cargoNextestExtraArgs = "--all-features"; - extraSources = [ - config.packages.is-plutus-data-derive-rust-src - ]; - }; - in - { - inherit (rustFlake) packages checks devShells; - }; -} diff --git a/plutus-data/src/is_plutus_data/aux.rs b/plutus-data/src/is_plutus_data/aux.rs deleted file mode 100644 index b793f7f5..00000000 --- a/plutus-data/src/is_plutus_data/aux.rs +++ /dev/null @@ -1,66 +0,0 @@ -use crate::{PlutusData, PlutusDataError, PlutusType}; - -/// Given a vector of PlutusData, parse it as an array whose length is known at -/// compile time. -/// -/// This function is used by the derive macro. -pub fn parse_fixed_len_constr_fields( - v: &[PlutusData], -) -> Result<&[PlutusData; LEN], PlutusDataError> { - v.try_into() - .map_err(|_| PlutusDataError::UnexpectedListLength { - got: v.len(), - wanted: LEN, - }) -} - -/// Given a PlutusData, parse it as PlutusData::Constr and its tag as u32. Return -/// the u32 tag and fields. -/// -/// This function is used by the derive macro. -pub fn parse_constr(data: &PlutusData) -> Result<(u32, &Vec), PlutusDataError> { - match data { - PlutusData::Constr(tag, fields) => u32::try_from(tag) - .map_err(|err| PlutusDataError::UnexpectedPlutusInvariant { - got: err.to_string(), - wanted: "Constr bigint tag within u32 range".into(), - }) - .map(|tag| (tag, fields)), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Constr, - got: PlutusType::from(data), - }), - } -} - -/// Given a PlutusData, parse it as PlutusData::Constr and verify its tag. -/// -/// This function is used by the derive macro. -pub fn parse_constr_with_tag( - data: &PlutusData, - expected_tag: u32, -) -> Result<&Vec, PlutusDataError> { - let (tag, fields) = parse_constr(data)?; - - if tag != expected_tag { - Err(PlutusDataError::UnexpectedPlutusInvariant { - got: tag.to_string(), - wanted: format!("Constr with tag {}", expected_tag), - }) - } else { - Ok(fields) - } -} - -/// Given a PlutusData, parse it as PlutusData::List. Return the plutus data list. -/// -/// This function is used by the derive macro. -pub fn parse_list(data: &PlutusData) -> Result<&Vec, PlutusDataError> { - match data { - PlutusData::List(list_of_plutus_data) => Ok(list_of_plutus_data), - _ => Err(PlutusDataError::UnexpectedPlutusType { - got: PlutusType::from(data), - wanted: PlutusType::List, - }), - } -} diff --git a/plutus-data/src/is_plutus_data/instances.rs b/plutus-data/src/is_plutus_data/instances.rs deleted file mode 100644 index 5c7838a4..00000000 --- a/plutus-data/src/is_plutus_data/instances.rs +++ /dev/null @@ -1,292 +0,0 @@ -use std::collections::{BTreeMap, BTreeSet}; - -use num_bigint::BigInt; - -use crate::{IsPlutusData, PlutusData, PlutusDataError, PlutusType}; - -use super::aux::{parse_constr, parse_constr_with_tag, parse_fixed_len_constr_fields, parse_list}; - -impl IsPlutusData for PlutusData { - fn to_plutus_data(&self) -> PlutusData { - self.clone() - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - Ok(plutus_data.clone()) - } -} - -// MARK: Orphan Instances - -impl IsPlutusData for BigInt { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Integer(self.clone()) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Integer(int) => Ok(int.clone()), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Integer, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for Vec { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Bytes(self.clone()) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Bytes(bytes) => Ok(bytes.clone()), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Bytes, - got: PlutusType::from(plutus_data), - }), - } - } -} - -const BOOL_FALSE_TAG: u32 = 0; -const BOOL_TRUE_TAG: u32 = 1; - -impl IsPlutusData for bool { - fn to_plutus_data(&self) -> PlutusData { - if *self { - PlutusData::Constr(BOOL_TRUE_TAG.into(), vec![]) - } else { - PlutusData::Constr(BOOL_FALSE_TAG.into(), vec![]) - } - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - let (tag, fields) = parse_constr(plutus_data)?; - let [] = parse_fixed_len_constr_fields::<0>(fields)?; - match tag { - BOOL_TRUE_TAG => Ok(true), - BOOL_FALSE_TAG => Ok(false), - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: format!("Constr with tag {BOOL_TRUE_TAG} or {BOOL_FALSE_TAG}"), - got: tag.to_string(), - }), - } - } -} - -impl IsPlutusData for String { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Bytes(self.as_bytes().into()) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Bytes(bytes) => String::from_utf8(bytes.clone()).map_err(|err| { - PlutusDataError::InternalError(format!( - "Couldn't convert Plutus bytes to String: {:?}", - err - )) - }), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Bytes, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for char { - fn to_plutus_data(&self) -> PlutusData { - String::from(*self).to_plutus_data() - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - String::from_plutus_data(plutus_data).and_then(|str| { - let mut chars = str.chars(); - let ch = chars.next(); - let rest = chars.next(); - match (ch, rest) { - (Some(ch), None) => Ok(ch), - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - got: "string".to_owned(), - wanted: "char".to_owned(), - }), - } - }) - } -} - -const OPTION_SOME_TAG: u32 = 0; -const OPTION_NONE_TAG: u32 = 1; - -impl IsPlutusData for Option -where - T: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - match self { - Some(val) => PlutusData::Constr(OPTION_SOME_TAG.into(), vec![val.to_plutus_data()]), - None => PlutusData::Constr(OPTION_NONE_TAG.into(), vec![]), - } - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - let (tag, fields) = parse_constr(plutus_data)?; - - match tag { - OPTION_SOME_TAG => { - let [data] = parse_fixed_len_constr_fields::<1>(fields)?; - Ok(Some(T::from_plutus_data(data)?)) - } - OPTION_NONE_TAG => { - let [] = parse_fixed_len_constr_fields::<0>(fields)?; - Ok(None) - } - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: format!("Constr with tag {OPTION_SOME_TAG} or {OPTION_NONE_TAG}"), - got: tag.to_string(), - }), - } - } -} - -const RESULT_ERR_TAG: u32 = 0; -const RESULT_OK_TAG: u32 = 1; - -impl IsPlutusData for Result -where - T: IsPlutusData, - E: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - match self { - Err(err) => PlutusData::Constr(RESULT_ERR_TAG.into(), vec![err.to_plutus_data()]), - Ok(val) => PlutusData::Constr(RESULT_OK_TAG.into(), vec![val.to_plutus_data()]), - } - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - let (tag, fields) = parse_constr(plutus_data)?; - let [field] = parse_fixed_len_constr_fields::<1>(fields)?; - - match tag { - RESULT_ERR_TAG => Ok(Err(E::from_plutus_data(field)?)), - RESULT_OK_TAG => Ok(Ok(T::from_plutus_data(field)?)), - _ => Err(PlutusDataError::UnexpectedPlutusInvariant { - wanted: format!("Constr with tag {RESULT_ERR_TAG} or {RESULT_OK_TAG}"), - got: tag.to_string(), - }), - } - } -} - -impl IsPlutusData for Vec -where - T: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - let values = self - .iter() - .map(|val| val.to_plutus_data()) - .collect::>(); - - PlutusData::List(values) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - let list = parse_list(plutus_data)?; - list.iter().map(T::from_plutus_data).collect() - } -} - -impl IsPlutusData for BTreeSet -where - T: IsPlutusData + Eq + Ord, -{ - fn to_plutus_data(&self) -> PlutusData { - let set = self - .iter() - .map(|val| val.to_plutus_data()) - .collect::>(); - - PlutusData::List(set) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::List(vec) => vec - .iter() - .map(|val| T::from_plutus_data(val)) - .collect::>(), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::List, - got: PlutusType::from(plutus_data), - }), - } - } -} - -impl IsPlutusData for BTreeMap -where - K: IsPlutusData + Eq + Ord, - V: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - let assoc_map = self - .iter() - .map(|(key, val)| (key.to_plutus_data(), val.to_plutus_data())) - .collect::>(); - - PlutusData::Map(assoc_map) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - match plutus_data { - PlutusData::Map(dict) => dict - .iter() - .map(|(key, val)| Ok((K::from_plutus_data(key)?, V::from_plutus_data(val)?))) - .collect::>(), - _ => Err(PlutusDataError::UnexpectedPlutusType { - wanted: PlutusType::Map, - got: PlutusType::from(plutus_data), - }), - } - } -} - -const UNIT_TAG: u32 = 0; - -impl IsPlutusData for () { - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr(UNIT_TAG.into(), vec![]) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - let fields = parse_constr_with_tag(plutus_data, UNIT_TAG)?; - let [] = parse_fixed_len_constr_fields::<0>(fields)?; - Ok(()) - } -} - -const PAIR_TAG: u32 = 0; - -impl IsPlutusData for (A, B) -where - A: IsPlutusData, - B: IsPlutusData, -{ - fn to_plutus_data(&self) -> PlutusData { - PlutusData::Constr( - BigInt::from(PAIR_TAG), - vec![self.0.to_plutus_data(), self.1.to_plutus_data()], - ) - } - - fn from_plutus_data(plutus_data: &PlutusData) -> Result { - let fields = parse_constr_with_tag(plutus_data, PAIR_TAG)?; - let [a, b] = parse_fixed_len_constr_fields::<2>(fields)?; - Ok((A::from_plutus_data(a)?, B::from_plutus_data(b)?)) - } -} diff --git a/plutus-data/src/is_plutus_data/is_plutus_data.rs b/plutus-data/src/is_plutus_data/is_plutus_data.rs deleted file mode 100644 index 4f73c158..00000000 --- a/plutus-data/src/is_plutus_data/is_plutus_data.rs +++ /dev/null @@ -1,22 +0,0 @@ -use crate::{PlutusData, PlutusType}; - -pub trait IsPlutusData { - fn to_plutus_data(&self) -> PlutusData; - - fn from_plutus_data(plutus_data: &PlutusData) -> Result - where - Self: Sized; -} - -// TODO(chfanghr): improve error reporting -#[derive(Clone, Debug, thiserror::Error)] -pub enum PlutusDataError { - #[error("Expected a PlutusData type {wanted:?}, but got {got:?}")] - UnexpectedPlutusType { got: PlutusType, wanted: PlutusType }, - #[error("Expected a PlutusData type as {wanted:?}, but got {got:?}")] - UnexpectedPlutusInvariant { got: String, wanted: String }, - #[error("Expected a Plutus List with {wanted:?} elements, but got {got:?} elements")] - UnexpectedListLength { got: usize, wanted: usize }, - #[error("Some internal error happened: {0}")] - InternalError(String), -} diff --git a/plutus-data/src/is_plutus_data/mod.rs b/plutus-data/src/is_plutus_data/mod.rs deleted file mode 100644 index 526bebf2..00000000 --- a/plutus-data/src/is_plutus_data/mod.rs +++ /dev/null @@ -1,3 +0,0 @@ -pub mod aux; -mod instances; -pub mod is_plutus_data; diff --git a/plutus-data/src/lib.rs b/plutus-data/src/lib.rs deleted file mode 100644 index c2c607a5..00000000 --- a/plutus-data/src/lib.rs +++ /dev/null @@ -1,8 +0,0 @@ -pub mod is_plutus_data; -pub mod plutus_data; - -#[cfg(feature = "derive")] -pub use is_plutus_data_derive::IsPlutusData; - -pub use is_plutus_data::is_plutus_data::{IsPlutusData, PlutusDataError}; -pub use plutus_data::{PlutusData, PlutusType}; diff --git a/plutus-data/src/plutus_data.rs b/plutus-data/src/plutus_data.rs deleted file mode 100644 index 9c3cbfc5..00000000 --- a/plutus-data/src/plutus_data.rs +++ /dev/null @@ -1,183 +0,0 @@ -use num_bigint::BigInt; - -#[cfg(feature = "lbf")] -use data_encoding::HEXLOWER; -#[cfg(feature = "lbf")] -use lbr_prelude::error::Error; -#[cfg(feature = "lbf")] -use lbr_prelude::json::{ - case_json_constructor, case_json_object, json_constructor, json_object, Json, -}; - -#[cfg(feature = "serde")] -use serde::{Deserialize, Serialize}; - -/// Data representation of on-chain data such as Datums and Redeemers -#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] -pub enum PlutusData { - Constr(BigInt, Vec), - Map(Vec<(PlutusData, PlutusData)>), - List(Vec), - Integer(BigInt), - Bytes(Vec), -} - -#[derive(Clone, Debug)] -pub enum PlutusType { - Constr, - Map, - List, - Integer, - Bytes, -} - -impl From<&PlutusData> for PlutusType { - fn from(plutus_data: &PlutusData) -> Self { - match plutus_data { - PlutusData::Constr(_, _) => PlutusType::Constr, - PlutusData::Map(_) => PlutusType::Map, - PlutusData::List(_) => PlutusType::List, - PlutusData::Integer(_) => PlutusType::Integer, - PlutusData::Bytes(_) => PlutusType::Bytes, - } - } -} - -impl PlutusData { - pub fn constr(tag: u32, fields: Vec) -> Self { - PlutusData::Constr(BigInt::from(tag), fields) - } - - pub fn map(fields: Vec<(PlutusData, PlutusData)>) -> Self { - PlutusData::Map(fields) - } - - pub fn list(fields: Vec) -> Self { - PlutusData::List(fields) - } - - pub fn integer(value: u32) -> Self { - PlutusData::Integer(BigInt::from(value)) - } - - pub fn bytes(value: Vec) -> Self { - PlutusData::Bytes(value) - } -} - -#[cfg(feature = "lbf")] -impl Json for PlutusData { - fn to_json(&self) -> serde_json::Value { - match self { - PlutusData::Constr(index, fields) => json_constructor( - "Constr", - vec![json_object(vec![ - ("index".to_string(), index.to_json()), - ("fields".to_string(), fields.to_json()), - ])], - ), - PlutusData::Map(map) => json_constructor("Map", vec![map.to_json()]), - PlutusData::List(list) => json_constructor("List", vec![list.to_json()]), - PlutusData::Integer(int) => json_constructor("Integer", vec![int.to_json()]), - PlutusData::Bytes(bytes) => { - json_constructor("Bytes", vec![String::to_json(&HEXLOWER.encode(bytes))]) - } - } - } - - fn from_json(value: &serde_json::Value) -> Result { - case_json_constructor( - "PlutusV1.PlutusData", - vec![ - ( - "Constr", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => case_json_object( - |obj| { - let index = obj.get("index").ok_or(Error::UnexpectedFieldName { - wanted: "index".to_owned(), - got: obj.keys().cloned().collect(), - parser: "PlutusV1.PlutusData".to_owned(), - })?; - - let fields = - obj.get("fields").ok_or(Error::UnexpectedFieldName { - wanted: "fields".to_owned(), - got: obj.keys().cloned().collect(), - parser: "PlutusV1.PlutusData".to_owned(), - })?; - Ok(PlutusData::Constr( - BigInt::from_json(index)?, - >::from_json(fields)?, - )) - }, - val, - ), - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ( - "Map", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => Ok(PlutusData::Map(Json::from_json(val)?)), - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ( - "List", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => Ok(PlutusData::List(Json::from_json(val)?)), - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ( - "Integer", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => Ok(PlutusData::Integer(Json::from_json(val)?)), - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ( - "Bytes", - Box::new(|ctor_fields| match &ctor_fields[..] { - [val] => { - let bytes = String::from_json(val).and_then(|str| { - HEXLOWER.decode(&str.into_bytes()).map_err(|_| { - Error::UnexpectedJsonInvariant { - wanted: "base16 string".to_owned(), - got: "unexpected string".to_owned(), - parser: "Plutus.V1.Bytes".to_owned(), - } - }) - })?; - Ok(PlutusData::Bytes(bytes)) - } - _ => Err(Error::UnexpectedArrayLength { - wanted: 1, - got: ctor_fields.len(), - parser: "PlutusV1.PlutusData".to_owned(), - }), - }), - ), - ], - value, - ) - } -} diff --git a/plutus-ledger-api/build.nix b/plutus-ledger-api/build.nix index 4fa25179..67602f53 100644 --- a/plutus-ledger-api/build.nix +++ b/plutus-ledger-api/build.nix @@ -13,7 +13,6 @@ ]; extraSources = [ config.packages.is-plutus-data-derive-rust-src - config.packages.plutus-data-rust-src ]; }; From e84bbb02284e27f4af2dc955632ce89f495da692 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 21 Oct 2024 20:40:02 +0800 Subject: [PATCH 22/94] fogot to commit .envrc --- is-plutus-data-derive/.envrc | 1 + 1 file changed, 1 insertion(+) create mode 100644 is-plutus-data-derive/.envrc diff --git a/is-plutus-data-derive/.envrc b/is-plutus-data-derive/.envrc new file mode 100644 index 00000000..f7f6ae55 --- /dev/null +++ b/is-plutus-data-derive/.envrc @@ -0,0 +1 @@ +use flake ../#dev-is-plutus-data-derive-rust From 32b00e6c6630b59ea3d95dc319de3b76ee8ae13f Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 21 Oct 2024 20:44:41 +0800 Subject: [PATCH 23/94] update changelog --- plutus-ledger-api/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index 385b92b2..325603be 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -8,6 +8,8 @@ Changelog](https://keepachangelog.com/en/1.1.0). ### Added +- Added the ability to derive `IsPlutusData` instances ([#56](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/56)) + ### Changed ### Removed From 2fd89e1bcf3d0fa7a239ce14b5f261e274250473 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Fri, 18 Oct 2024 17:07:51 +0800 Subject: [PATCH 24/94] add v3 types --- plutus-ledger-api/src/lib.rs | 1 + plutus-ledger-api/src/v1/value.rs | 10 ++ plutus-ledger-api/src/v3/mod.rs | 2 + plutus-ledger-api/src/v3/ratio.rs | 29 ++++ plutus-ledger-api/src/v3/transaction.rs | 217 ++++++++++++++++++++++++ 5 files changed, 259 insertions(+) create mode 100644 plutus-ledger-api/src/v3/mod.rs create mode 100644 plutus-ledger-api/src/v3/ratio.rs create mode 100644 plutus-ledger-api/src/v3/transaction.rs diff --git a/plutus-ledger-api/src/lib.rs b/plutus-ledger-api/src/lib.rs index ac37079b..e788cad2 100644 --- a/plutus-ledger-api/src/lib.rs +++ b/plutus-ledger-api/src/lib.rs @@ -6,6 +6,7 @@ pub mod lamval; pub mod plutus_data; pub mod v1; pub mod v2; +pub mod v3; #[cfg(feature = "lbf")] pub use lbr_prelude::json; pub mod csl; diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index 4c34c0c1..045d49d9 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -672,3 +672,13 @@ mod test { assert_eq!(token_name.try_into_string().unwrap(), name); } } + +//////////////// +// Lovelace // +//////////////// + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct Lovelace(pub BigInt); diff --git a/plutus-ledger-api/src/v3/mod.rs b/plutus-ledger-api/src/v3/mod.rs new file mode 100644 index 00000000..8c73a0ca --- /dev/null +++ b/plutus-ledger-api/src/v3/mod.rs @@ -0,0 +1,2 @@ +pub mod ratio; +pub mod transaction; diff --git a/plutus-ledger-api/src/v3/ratio.rs b/plutus-ledger-api/src/v3/ratio.rs new file mode 100644 index 00000000..1433d525 --- /dev/null +++ b/plutus-ledger-api/src/v3/ratio.rs @@ -0,0 +1,29 @@ +#[cfg(feature = "lbf")] +use lbr_prelude::json::Json; +use num_bigint::BigInt; +#[cfg(feature = "serde")] +use serde::{Deserialize, Serialize}; + +use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; + +// TODO(chfanghr): maintain the invariants mentioned here: https://github.com/IntersectMBO/plutus/blob/master/plutus-tx/src/PlutusTx/Ratio.hs#L65-L68 +/// Represents an arbitrary-precision ratio. +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct Rational(pub BigInt, pub BigInt); + +impl IsPlutusData for Rational { + fn to_plutus_data(&self) -> PlutusData { + (self.0.clone(), self.1.clone()).to_plutus_data() + } + + fn from_plutus_data(plutus_data: &PlutusData) -> Result + where + Self: Sized, + { + let (n, d) = IsPlutusData::from_plutus_data(plutus_data)?; + + Ok(Self(n, d)) + } +} diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs new file mode 100644 index 00000000..cb54fb4c --- /dev/null +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -0,0 +1,217 @@ +#[cfg(feature = "lbf")] +use lbr_prelude::json::Json; +use num_bigint::BigInt; +#[cfg(feature = "serde")] +use serde::{Deserialize, Serialize}; + +use crate::{ + self as plutus_ledger_api, + plutus_data::{IsPlutusData, PlutusData}, + v1::{ + address::{Credential, StakingCredential}, + assoc_map::AssocMap, + crypto::{PaymentPubKeyHash, StakePubKeyHash}, + datum::{Datum, DatumHash}, + redeemer::Redeemer, + script::ScriptHash, + transaction::{POSIXTimeRange, TransactionHash, TransactionInput}, + value::{CurrencySymbol, Lovelace, Value}, + }, + v2::transaction::{TransactionOutput, TxInInfo}, +}; + +use super::ratio::Rational; + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct ColdCommitteeCredential(pub Credential); + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct HotCommitteeCredential(pub Credential); + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct DRepCredential(pub Credential); + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub enum DRep { + DRep(DRepCredential), + AlwaysAbstain, + AlwaysNoConfidence, +} + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub enum Delegatee { + Stake(StakePubKeyHash), + Vote(DRep), + StakeVote(StakePubKeyHash, DRep), +} + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub enum TxCert { + RegStaking(StakingCredential, Option), + UnRegStaking(StakingCredential, Option), + DelegStaking(StakingCredential, Delegatee), + RegDeleg(StakingCredential, Delegatee, Lovelace), + RegDRep(DRepCredential, Lovelace), + UpdateDRep(DRepCredential), + UnRegDRep(DRepCredential, Lovelace), + PoolRegister(PaymentPubKeyHash, PaymentPubKeyHash), + PoolRetire(PaymentPubKeyHash, BigInt), + AuthHotCommittee(ColdCommitteeCredential, HotCommitteeCredential), + ResignColdCommittee(ColdCommitteeCredential), +} + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub enum Voter { + CommitteeVoter(HotCommitteeCredential), + DRepVoter(DRepCredential), + StakePoolVoter(PaymentPubKeyHash), +} + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub enum Vote { + VoteNo, + VoteYes, + Abstain, +} + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct GovernanceActionId { + pub tx_id: TransactionHash, + pub gov_action_id: BigInt, +} + +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct Committee { + pub members: AssocMap, + pub quorum: Rational, +} + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct Constitution { + pub constitution_script: Option, +} + +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct ProtocolVersion { + pub major: BigInt, + pub minor: BigInt, +} + +// TODO(chfanghr): check invariant according to https://github.com/IntersectMBO/plutus/blob/bb33f082d26f8b6576d3f0d423be53eddfb6abd8/plutus-ledger-api/src/PlutusLedgerApi/V3/Contexts.hs#L338-L364 +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct ChangeParameters(pub PlutusData); + +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub enum GovernanceAction { + ParameterChange( + Option, + ChangeParameters, + Option, + ), + HardForkInitiation(Option, ProtocolVersion), + TreasuryWithdrawals(AssocMap, Option), + NoConfidence(Option), + UpdateCommittee( + Option, + Vec, + AssocMap, + ), + NewConstitution(Option, Constitution), + InfoAction, +} + +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct ProtocolProcedure { + pub deposit: Lovelace, + pub return_addr: Credential, + pub governance_action: GovernanceAction, +} + +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub enum ScriptPurpose { + Minting(CurrencySymbol), + Spending(TransactionInput), + Rewarding(Credential), + Certifying(BigInt, TxCert), + Voting(Voter), + Proposing(BigInt, ProtocolProcedure), +} + +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub enum ScriptInfo { + Minting(CurrencySymbol), + Spending(TransactionInput, Option), + Rewarding(Credential), + Certifying(BigInt, TxCert), + Voting(Voter), + Proposing(BigInt, ProtocolProcedure), +} + +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct TransactionInfo { + pub inputs: Vec, + pub reference_inputs: Vec, + pub outputs: Vec, + pub fee: Lovelace, + pub mint: Value, + pub tx_certs: Vec, + pub wdrl: AssocMap, + pub valid_range: POSIXTimeRange, + pub signatories: Vec, + pub redeemers: AssocMap, + pub datums: AssocMap, + pub id: TransactionHash, + pub votes: AssocMap>, + pub protocol_procedures: Vec, + pub current_treasury_amount: Option, + pub treasury_donation: Option, +} + +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct ScriptContext { + pub tx_info: TransactionInfo, + pub redeemer: Redeemer, + pub script_info: ScriptInfo, +} From 98953669d1581a2d12841a87494e7e9f383ab878 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Fri, 18 Oct 2024 18:20:42 +0800 Subject: [PATCH 25/94] implement generators for v3 types --- .../src/generators/correct/mod.rs | 1 + .../src/generators/correct/v1.rs | 11 +- .../src/generators/correct/v3.rs | 266 ++++++++++++++++++ 3 files changed, 277 insertions(+), 1 deletion(-) create mode 100644 plutus-ledger-api/src/generators/correct/v3.rs diff --git a/plutus-ledger-api/src/generators/correct/mod.rs b/plutus-ledger-api/src/generators/correct/mod.rs index db042bfb..69032467 100644 --- a/plutus-ledger-api/src/generators/correct/mod.rs +++ b/plutus-ledger-api/src/generators/correct/mod.rs @@ -2,3 +2,4 @@ pub mod primitive; pub mod v1; pub mod v2; +pub mod v3; diff --git a/plutus-ledger-api/src/generators/correct/v1.rs b/plutus-ledger-api/src/generators/correct/v1.rs index 85b6c66b..37d08a6d 100644 --- a/plutus-ledger-api/src/generators/correct/v1.rs +++ b/plutus-ledger-api/src/generators/correct/v1.rs @@ -8,7 +8,7 @@ use crate::v1::address::{ Address, CertificateIndex, ChainPointer, Credential, Slot, StakingCredential, TransactionIndex, }; use crate::v1::assoc_map::AssocMap; -use crate::v1::crypto::{Ed25519PubKeyHash, LedgerBytes, PaymentPubKeyHash}; +use crate::v1::crypto::{Ed25519PubKeyHash, LedgerBytes, PaymentPubKeyHash, StakePubKeyHash}; use crate::v1::datum::{Datum, DatumHash}; use crate::v1::interval::{Extended, Interval, LowerBound, PlutusInterval, UpperBound}; use crate::v1::redeemer::{Redeemer, RedeemerHash}; @@ -17,6 +17,7 @@ use crate::v1::transaction::{ DCert, POSIXTime, ScriptContext, ScriptPurpose, TransactionHash, TransactionInfo, TransactionInput, TransactionOutput, TxInInfo, }; +use crate::v1::value::Lovelace; use crate::v2::value::{AssetClass, CurrencySymbol, TokenName, Value}; use num_bigint::BigInt; use proptest::collection::btree_map; @@ -402,3 +403,11 @@ pub fn arb_script_context() -> impl Strategy { (arb_script_purpose(), arb_transaction_info()) .prop_map(|(purpose, tx_info)| ScriptContext { purpose, tx_info }) } + +pub fn arb_lovelace() -> impl Strategy { + arb_natural(1).prop_map(Lovelace) +} + +pub fn arb_stake_pub_key_hash() -> impl Strategy { + arb_ed25519_pub_key_hash().prop_map(StakePubKeyHash) +} diff --git a/plutus-ledger-api/src/generators/correct/v3.rs b/plutus-ledger-api/src/generators/correct/v3.rs new file mode 100644 index 00000000..d5afb498 --- /dev/null +++ b/plutus-ledger-api/src/generators/correct/v3.rs @@ -0,0 +1,266 @@ +use lbr_prelude::generators::correct::arb_integer; +use proptest::{ + collection::vec, + option, + prelude::{Just, Strategy}, + prop_oneof, +}; + +use crate::{ + generators::correct::v1::{ + arb_currency_symbol, arb_datum, arb_lovelace, arb_payment_pub_key_hash, + arb_stake_pub_key_hash, arb_staking_credential, arb_transaction_input, + }, + v3::{ + ratio::Rational, + transaction::{ + ChangeParameters, ColdCommitteeCredential, Committee, Constitution, DRep, + DRepCredential, Delegatee, GovernanceAction, GovernanceActionId, + HotCommitteeCredential, ProtocolProcedure, ProtocolVersion, ScriptContext, ScriptInfo, + ScriptPurpose, TransactionInfo, TxCert, Vote, Voter, + }, + }, +}; + +use super::{ + primitive::arb_natural, + v1::{ + arb_assoc_map, arb_credential, arb_datum_hash, arb_plutus_data, + arb_plutus_interval_posix_time, arb_redeemer, arb_script_hash, arb_transaction_hash, + arb_value, + }, + v2::{arb_transaction_output, arb_tx_in_info}, +}; + +pub fn arb_cold_committee_credential() -> impl Strategy { + arb_credential().prop_map(ColdCommitteeCredential) +} + +pub fn arb_hot_committee_credential() -> impl Strategy { + arb_credential().prop_map(HotCommitteeCredential) +} + +pub fn arb_d_rep_credential() -> impl Strategy { + arb_credential().prop_map(DRepCredential) +} + +pub fn arb_d_rep() -> impl Strategy { + prop_oneof![ + arb_d_rep_credential().prop_map(DRep::DRep), + Just(DRep::AlwaysAbstain), + Just(DRep::AlwaysNoConfidence) + ] +} + +pub fn arb_delegatee() -> impl Strategy { + prop_oneof![ + arb_stake_pub_key_hash().prop_map(Delegatee::Stake), + arb_d_rep().prop_map(Delegatee::Vote), + (arb_stake_pub_key_hash(), arb_d_rep()).prop_map(|(h, r)| Delegatee::StakeVote(h, r)) + ] +} + +pub fn arb_tx_cert() -> impl Strategy { + prop_oneof![ + (arb_staking_credential(), option::of(arb_lovelace())) + .prop_map(|(c, l)| TxCert::RegStaking(c, l)), + (arb_staking_credential(), option::of(arb_lovelace())) + .prop_map(|(c, l)| TxCert::UnRegStaking(c, l)), + (arb_staking_credential(), arb_delegatee()).prop_map(|(c, d)| TxCert::DelegStaking(c, d)), + (arb_staking_credential(), arb_delegatee(), arb_lovelace()) + .prop_map(|(c, d, l)| TxCert::RegDeleg(c, d, l)), + (arb_d_rep_credential(), arb_lovelace()).prop_map(|(d, l)| TxCert::RegDRep(d, l)), + arb_d_rep_credential().prop_map(TxCert::UpdateDRep), + (arb_d_rep_credential(), arb_lovelace()).prop_map(|(d, l)| TxCert::UnRegDRep(d, l)), + (arb_payment_pub_key_hash(), arb_payment_pub_key_hash()) + .prop_map(|(pkh1, pkh2)| TxCert::PoolRegister(pkh1, pkh2)), + (arb_payment_pub_key_hash(), arb_integer()).prop_map(|(pkh, i)| TxCert::PoolRetire(pkh, i)), + ( + arb_cold_committee_credential(), + arb_hot_committee_credential() + ) + .prop_map(|(c, h)| TxCert::AuthHotCommittee(c, h)), + arb_cold_committee_credential().prop_map(TxCert::ResignColdCommittee) + ] +} + +pub fn arb_voter() -> impl Strategy { + prop_oneof![ + arb_hot_committee_credential().prop_map(Voter::CommitteeVoter), + arb_d_rep_credential().prop_map(Voter::DRepVoter), + arb_payment_pub_key_hash().prop_map(Voter::StakePoolVoter) + ] +} + +pub fn arb_vote() -> impl Strategy { + prop_oneof![Just(Vote::VoteNo), Just(Vote::VoteYes), Just(Vote::Abstain)] +} + +pub fn arb_governance_action_id() -> impl Strategy { + (arb_transaction_hash(), arb_integer()).prop_map(|(tx_id, gov_action_id)| GovernanceActionId { + tx_id, + gov_action_id, + }) +} + +pub fn arb_committee() -> impl Strategy { + ( + arb_assoc_map(arb_cold_committee_credential(), arb_integer()), + arb_rational(), + ) + .prop_map(|(members, quorum)| Committee { members, quorum }) +} + +pub fn arb_rational() -> impl Strategy { + (arb_integer(), arb_integer()).prop_map(|(n, d)| Rational(n, d)) +} + +pub fn arb_constitution() -> impl Strategy { + option::of(arb_script_hash()).prop_map(|constitution_script| Constitution { + constitution_script, + }) +} + +pub fn arb_protocol_version() -> impl Strategy { + (arb_integer(), arb_integer()).prop_map(|(major, minor)| ProtocolVersion { major, minor }) +} + +pub fn arb_change_parameters() -> impl Strategy { + arb_plutus_data().prop_map(ChangeParameters) +} + +pub fn arb_governance_action() -> impl Strategy { + prop_oneof![ + ( + option::of(arb_governance_action_id()), + arb_change_parameters(), + option::of(arb_script_hash()) + ) + .prop_map(|(g, c, s)| GovernanceAction::ParameterChange(g, c, s)), + ( + option::of(arb_governance_action_id()), + arb_protocol_version() + ) + .prop_map(|(g, p)| GovernanceAction::HardForkInitiation(g, p)), + ( + arb_assoc_map(arb_credential(), arb_lovelace()), + option::of(arb_script_hash()) + ) + .prop_map(|(a, s)| GovernanceAction::TreasuryWithdrawals(a, s)), + option::of(arb_governance_action_id()).prop_map(GovernanceAction::NoConfidence), + ( + option::of(arb_governance_action_id()), + vec(arb_cold_committee_credential(), 5), + arb_assoc_map(arb_cold_committee_credential(), arb_integer()) + ) + .prop_map(|(g, c, cm)| GovernanceAction::UpdateCommittee(g, c, cm)), + (option::of(arb_governance_action_id()), arb_constitution()) + .prop_map(|(g, c)| GovernanceAction::NewConstitution(g, c)), + Just(GovernanceAction::InfoAction) + ] +} + +pub fn arb_protocol_procedure() -> impl Strategy { + (arb_lovelace(), arb_credential(), arb_governance_action()).prop_map(|(l, c, g)| { + ProtocolProcedure { + deposit: l, + return_addr: c, + governance_action: g, + } + }) +} + +pub fn arb_script_purpose() -> impl Strategy { + prop_oneof![ + arb_currency_symbol().prop_map(ScriptPurpose::Minting), + arb_transaction_input().prop_map(ScriptPurpose::Spending), + arb_credential().prop_map(ScriptPurpose::Rewarding), + (arb_integer(), arb_tx_cert()).prop_map(|(i, c)| ScriptPurpose::Certifying(i, c)), + arb_voter().prop_map(ScriptPurpose::Voting), + (arb_integer(), arb_protocol_procedure()).prop_map(|(i, p)| ScriptPurpose::Proposing(i, p)) + ] +} + +pub fn arb_script_info() -> impl Strategy { + prop_oneof![ + arb_currency_symbol().prop_map(ScriptInfo::Minting), + (arb_transaction_input(), option::of(arb_datum())) + .prop_map(|(i, d)| ScriptInfo::Spending(i, d)), + arb_credential().prop_map(ScriptInfo::Rewarding), + (arb_integer(), arb_tx_cert()).prop_map(|(i, c)| ScriptInfo::Certifying(i, c)), + arb_voter().prop_map(ScriptInfo::Voting), + (arb_integer(), arb_protocol_procedure()).prop_map(|(i, p)| ScriptInfo::Proposing(i, p)) + ] +} + +pub fn arb_transaction_info() -> impl Strategy { + ( + vec(arb_tx_in_info(), 5), + vec(arb_tx_in_info(), 5), + vec(arb_transaction_output(), 5), + arb_lovelace(), + arb_value(), + vec(arb_tx_cert(), 5), + arb_assoc_map(arb_staking_credential(), arb_natural(1)), + arb_plutus_interval_posix_time(), + vec(arb_payment_pub_key_hash(), 5), + arb_assoc_map(arb_script_purpose(), arb_redeemer()), + arb_assoc_map(arb_datum_hash(), arb_datum()), + // HACK(chfanghr): Strategy is not implemented for longer tuples + ( + arb_transaction_hash(), + arb_assoc_map( + arb_voter(), + arb_assoc_map(arb_governance_action_id(), arb_vote()), + ), + vec(arb_protocol_procedure(), 5), + option::of(arb_lovelace()), + option::of(arb_lovelace()), + ), + ) + .prop_map( + |( + inputs, + reference_inputs, + outputs, + fee, + mint, + tx_certs, + wdrl, + valid_range, + signatories, + redeemers, + datums, + (id, votes, protocol_procedures, current_treasury_amount, treasury_donation), + )| { + TransactionInfo { + inputs, + reference_inputs, + outputs, + fee, + mint, + tx_certs, + wdrl, + valid_range, + signatories, + redeemers, + datums, + id, + votes, + protocol_procedures, + current_treasury_amount, + treasury_donation, + } + }, + ) +} + +pub fn arb_script_context() -> impl Strategy { + (arb_transaction_info(), arb_redeemer(), arb_script_info()).prop_map( + |(tx_info, redeemer, script_info)| ScriptContext { + tx_info, + redeemer, + script_info, + }, + ) +} From 688be1ce1b7fb300b5e3d1082af0dbaa6065d08f Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Fri, 18 Oct 2024 18:42:55 +0800 Subject: [PATCH 26/94] add property tests for v3 types --- .../src/generators/correct/v3.rs | 10 +- plutus-ledger-api/tests/lbf.rs | 104 +++++++++++++++ plutus-ledger-api/tests/plutus_data.rs | 124 ++++++++++++++++++ .../tests/serde.proptest-regressions | 15 --- plutus-ledger-api/tests/serde.rs | 103 +++++++++++++++ 5 files changed, 337 insertions(+), 19 deletions(-) delete mode 100644 plutus-ledger-api/tests/serde.proptest-regressions diff --git a/plutus-ledger-api/src/generators/correct/v3.rs b/plutus-ledger-api/src/generators/correct/v3.rs index d5afb498..518da68e 100644 --- a/plutus-ledger-api/src/generators/correct/v3.rs +++ b/plutus-ledger-api/src/generators/correct/v3.rs @@ -1,4 +1,3 @@ -use lbr_prelude::generators::correct::arb_integer; use proptest::{ collection::vec, option, @@ -7,9 +6,12 @@ use proptest::{ }; use crate::{ - generators::correct::v1::{ - arb_currency_symbol, arb_datum, arb_lovelace, arb_payment_pub_key_hash, - arb_stake_pub_key_hash, arb_staking_credential, arb_transaction_input, + generators::correct::{ + primitive::arb_integer, + v1::{ + arb_currency_symbol, arb_datum, arb_lovelace, arb_payment_pub_key_hash, + arb_stake_pub_key_hash, arb_staking_credential, arb_transaction_input, + }, }, v3::{ ratio::Rational, diff --git a/plutus-ledger-api/tests/lbf.rs b/plutus-ledger-api/tests/lbf.rs index a71ac3ed..36e04106 100644 --- a/plutus-ledger-api/tests/lbf.rs +++ b/plutus-ledger-api/tests/lbf.rs @@ -159,4 +159,108 @@ mod lb_json_roundtrip_tests { } } } + + mod v3 { + use super::from_to_json; + use plutus_ledger_api::generators::correct::v3::*; + use proptest::prelude::*; + + proptest! { + #[test] + fn test_cold_committee_credential(val in arb_cold_committee_credential()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_hot_committee_credential(val in arb_hot_committee_credential()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_d_rep_credential(val in arb_d_rep_credential()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_delegatee(val in arb_delegatee()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_tx_cert(val in arb_tx_cert()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_voter(val in arb_voter()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_vote(val in arb_vote()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_governance_action_id(val in arb_governance_action_id()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_committee(val in arb_committee()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_rational(val in arb_rational()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_constitution(val in arb_constitution()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_protocol_version(val in arb_protocol_version()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_change_parameters(val in arb_change_parameters()) { + assert_eq!(val, from_to_json(&val)?) + } + + + #[test] + fn test_governance_action(val in arb_governance_action()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_protocol_procedure(val in arb_protocol_procedure()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_script_purpose(val in arb_script_purpose()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_script_info(val in arb_script_info()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_transaction_info(val in arb_transaction_info()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_script_context(val in arb_script_context()) { + assert_eq!(val, from_to_json(&val)?) + } + } + } } diff --git a/plutus-ledger-api/tests/plutus_data.rs b/plutus-ledger-api/tests/plutus_data.rs index 5d53f427..66260894 100644 --- a/plutus-ledger-api/tests/plutus_data.rs +++ b/plutus-ledger-api/tests/plutus_data.rs @@ -338,6 +338,12 @@ mod plutusdata_roundtrip_tests { fn v1_script_context(val in arb_script_context()) { assert_eq!(val, from_to_plutus_data(&val)?) } + + + #[test] + fn v1_lovelace(val in arb_lovelace()) { + assert_eq!(val, from_to_plutus_data(&val)?) + } } } mod golden_v2 { @@ -406,4 +412,122 @@ mod plutusdata_roundtrip_tests { } } } + + mod prop_v3 { + use super::from_to_plutus_data; + use plutus_ledger_api::generators::correct::v3::*; + use proptest::prelude::*; + + proptest! { + #[test] + fn v3_cold_committee_credential(val in arb_cold_committee_credential()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + #[test] + fn v3_hot_committee_credential(val in arb_hot_committee_credential()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + #[test] + fn v3_d_rep_credential(val in arb_d_rep_credential()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_d_rep(val in arb_d_rep()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_delegatee(val in arb_delegatee()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_tx_cert(val in arb_tx_cert()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_voter(val in arb_voter()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_vote(val in arb_vote()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_governance_action_id(val in arb_governance_action_id()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + #[test] + fn v3_committee(val in arb_committee()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + #[test] + fn v3_rational(val in arb_rational()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + #[test] + fn v3_constitution(val in arb_constitution()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_protocol_version(val in arb_protocol_version()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_change_parameters(val in arb_change_parameters()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_governance_action(val in arb_governance_action()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + #[test] + fn v3_protocol_procedure(val in arb_protocol_procedure()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + #[test] + fn v3_script_purpose(val in arb_script_purpose()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + #[test] + fn v3_script_info(val in arb_script_info()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + + #[test] + fn v3_transaction_info(val in arb_transaction_info()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + + #[test] + fn v3_script_context(val in arb_script_context()) { + assert_eq!(val, from_to_plutus_data(&val)?); + } + } + } } diff --git a/plutus-ledger-api/tests/serde.proptest-regressions b/plutus-ledger-api/tests/serde.proptest-regressions deleted file mode 100644 index ef0ed420..00000000 --- a/plutus-ledger-api/tests/serde.proptest-regressions +++ /dev/null @@ -1,15 +0,0 @@ -# Seeds for failure cases proptest has generated in the past. It is -# automatically read and these particular cases re-run before any -# novel cases are generated. -# -# It is recommended to check this file in to source control so that -# everyone who runs the test benefits from these saved cases. -cc b1c17d89cb2c4087ca1f95b15b7f1312a37c33526bd37afc13254e8030ede155 # shrinks to val = TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(000000000000000000000001b3ac92cbb5c5386f63579aab8d275075)))) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1323a50422e1cefc776900417e9a2c65b7d62c3c69d773990eb55eed))): {TokenName(24e4a63b3550f034484bc3cdb4acd4e0f2ecaf9d92f804e6c35bf13d3cd06712): 4052692294, TokenName(62b4c5e42779e5f33f34884c0f747c6c8218016de3d3bc16aa53212fb57dca64): 806378676, TokenName(877f2c64113927b43e3174544dc03a14f318a0b341347e497bc599c54ab329d1): 1330682733, TokenName(e1665048fc1253c116fbdbd5274cd5831cd42c4a1e7866b3b347845303ce0a35): 3833112553, TokenName(fc96020ec9705256c2dd221c98f151b5bab9c6267e4815a04a5ced7cd0bc15a5): 2966980009}, NativeToken(MintingPolicyHash(ScriptHash(1a578eb605337e7975d3bfb7a499b7bf6c5dce67f5369bdd0c1b0204))): {TokenName(4fa6ea25c720b41ce50852f4c0f45714716f33761d34d0102d86912d1e31c448): 3970296511, TokenName(90d6b22e6dddec599e14280f3ca3ffce0d5e5e39125e2e71ad44d907f4c1a657): 3950474072, TokenName(94ed7a0cb19ec9e8e273b4ca593e96c58fd2ea426d85ec8f0fd10b4a34e0c3c4): 2568538332, TokenName(9b28aaca088d92bdadae12eea29f38f5a68b7b5394dc3f66d39eeaca18cba8ab): 1520145484, TokenName(a06be355b020fde56946bda558c5269a6b58e791ffc49616969ad6dbff2d449a): 1987977824}, NativeToken(MintingPolicyHash(ScriptHash(6bdd2b58833f83b83b63d4614fc519662d8d099351570f4397603307))): {TokenName(1dd469853e7868eb330d75bb018cca1a07c9da4d6add9eb250b84e6a5628c96d): 2144987589, TokenName(3a03221f8ef5c831853c598c6f025af529fd4fb3be46075c114be9512e0b5b1f): 3787481019, TokenName(793b8ea5d945b96f9223a2c2fc13f7fedeb68928aeee9724c240564351c7675c): 2478716803, TokenName(b743679afcc2fce2ba105f4d7029d4c9808a79fb95a7364ced89aa02288a76d7): 3505601434, TokenName(e77d85645a2a19dcdfe0201b33e77cec2785d8f93e70843fc5651f54a4024db1): 1813187621}, NativeToken(MintingPolicyHash(ScriptHash(770ecf6a777ee674b01d2fee75e086f381ec7ac3cf8fb372b3335614))): {TokenName(113f0b5ea9b6f4b886fe37e50cf7e9c1140dab723b444909fcdbe26481c9d6ee): 2174643095, TokenName(18ddc1bd38875cef3e85c309eeb6d3c542f5a08a59e2566b899e8a195021367a): 2966220028, TokenName(47545e0285fe6eb7b36e7d8bc9e10b28251056ae45898033d2c4904e9ee77e55): 2126438577, TokenName(5fd1ae3e2e71d5bc2ca6b63a91a3249bbc20bc1d02eace02187330dd37b62ca2): 585634295, TokenName(805294b21b804c232a573b26f4a68b025dffccf8a389bcbfccc9a1133fa949bb): 2574511089}, NativeToken(MintingPolicyHash(ScriptHash(aa5e20202d7ebcef3722640132058784312adbe1462de47de6476420))): {TokenName(83659f7546f8475b53ac412167261b41aa8fe39a840c0bb6640fb895e376405d): 1333949599, TokenName(d50096f8f220094cdc6bfcc09d4027b2c8d9aa76bc832135e3f759a79c1c8c21): 1139917772, TokenName(da48eb636c0f71f69265516ff18818a0abca6097d2b36d1941b96edd6fbd8f6b): 1795366150, TokenName(dea5d26f08da84f4d41c7bbdc80ebcd0ebda8529be91c633947707ada74d936e): 1440752344, TokenName(e81efb96588cfc9a3f39d05f2c5104be830832ba7ebcbfd7b8c360c84d74f534): 1487908621}}), datum: None, reference_script: None } } -cc 13e6892c12a0adb0a78d1574f42bda31a80466e9f11374a9dafa15c86cab2302 # shrinks to val = TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({Ada: {TokenName(): 3351355059690873586}, NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000c4a412e95f656d23a96328922a900d2ee5fc53f): 4007578882, TokenName(11a4f0f03e60e63d6d117f49ea2e9ad9da2c3035418335886be7219f9a3475cc): 3734091249, TokenName(14059d2a785e91a4de0fa379f6b692bb7ccec27f37fa7a94cbb52680be837267): 211916204, TokenName(16ec936c15c6efac15dc0a52edf49207429d581c5e81eb3c3c90715978771747): 813082854}, NativeToken(MintingPolicyHash(ScriptHash(1807c470904538fca75a8bef3c58477b6dc55e942d18ba7a77f7bbd9))): {TokenName(2ae27047fac788c1b510a203a57d9bdd18d990025f292e8cb1cd92376593b9a2): 3589724762, TokenName(2dfcc2f461b0fdaf1cf4d648674fda4882f84d87b013f3db8fb52863b40643a3): 2466834830, TokenName(59859fd60af5ea72e0ef60e81b6926ff3adf3ecddf7e70d864feaf81598e66b6): 3768615940, TokenName(91fae3ce742d4d6e474cbb5908718d07480938d5c4bf299fe3519f20fe5bdcf0): 3457482975, TokenName(a28cc6ec581dabaa93a22bcfff7e093b280dc03cb5d2c2d1f5abd93f4104c8de): 1750809165}, NativeToken(MintingPolicyHash(ScriptHash(6bac92a2a3351e841fd7ffc1f3b4198f1f47fe4e33ef96d2903569c4))): {TokenName(03edaff3b48cde1872af44ee6c92922cedc4411ee0338af1b171a21b21084d26): 991468614, TokenName(14b56c27a338c8b6b70ad4237c54ea412ff431593f43369eb8b494560c336572): 2996247931, TokenName(41d6bebf8662e7bab8f746e3bae279b7864ef7e0101454514a4962b7adf5957c): 2956570886, TokenName(51b4bf33fb1559d603262face6c4428d0d87945fdd682652bc8d7dd030ebab50): 2254790562, TokenName(624d2e1fb8df51befe3bf161ecc4cef0f77f706dc4e16aef853dc268904559ea): 1710855054}, NativeToken(MintingPolicyHash(ScriptHash(79a516785f9797629f9c2c32afec01bf422d2fb103e1f84aaa99326e))): {TokenName(127cc8a57b489b8aaaa254d27524c5ffdb98244864fdc99e10041e0c70b9e7bb): 2911123850, TokenName(26c7a7d0e6a64c4d28d5297f9d10bbc2c61f28482a4fa2c3125ffdf41075981e): 1533600818, TokenName(5e938908c855f0d5631501da422f9f6b24b79482cd3e4d7ad8c7d35717404ca9): 1158808136, TokenName(6bc88da6b280231b3648fe273be94f29bdb9cd8de23b2f3b5a93d8a7bce0ed32): 4220629354, TokenName(d912b414d54a571ef3d97d7818572f281a889160f906eac0159055c31d6ea72b): 2055194512}, NativeToken(MintingPolicyHash(ScriptHash(d7562bd106cc7fa0e674604afa71e913d2e801157f61e2a2c99cf4a3))): {TokenName(2b6fac61611a8c905e9b2c26862a67c4d07938692a627023a66e4adb0031bf83): 2124892851, TokenName(77b22426fd6e190fbcbc666f0412d896eff5b701b583f1b013c3fc7faf41b8c0): 2827264884, TokenName(d85fa013fcb417b5334c54dee99cefe8bf7ca8322f9bde074db675a6b939f701): 2233309242, TokenName(dd584dcedc92ae2baf2feb81349e5f696b6b9aa9e9f1fb58afae45a45b7335cf): 2360756438, TokenName(de403ae8065c27720e1f26fc9fe6b723a6268c5b092f23273c649795be99bd52): 1094933406}}), datum_hash: None } } -cc efb15ee8f6ff1c2694b1ad1eb4cf367aff3c071647f3e71ce13189757ece5224 # shrinks to val = TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({Ada: {TokenName(): 1943354996870588357}, NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000004): 474051645, TokenName(421f978c4ae0a4d161dc60fa8d7cd877511c57cdc806c1b5986deb4da430dfa7): 2488334975, TokenName(59a4c85bb911454672bcebe7310d375adf018772548276da34b975fedb2d0f8b): 4248903206, TokenName(e0df732440159f9ff19b6e9c8e77e1386e4a9aee48382e97fb6994e9e2056562): 741409653}, NativeToken(MintingPolicyHash(ScriptHash(46be1b75a4ce4ef920f10727da674b0204aacc63206d17949be033db))): {TokenName(1eac4f3046bb7931ae0b0c081a82fb1b8da200e975b82a168d17aff0fd83fc1f): 2085167816, TokenName(2b011d497091730c3b2d071a6eedafd5718bdb5bfb68f38020077ccba58eb0a8): 2371561513, TokenName(92907875642cc284c5ab15539232419c66924efc6d771e0a670dccaf18e3c781): 642398574, TokenName(a207c7f26b68b64fdd3e689635e804ebb83a81c8a702662a2263d55ee74935dd): 2426539045, TokenName(c9d904185fee6bfb95adb0c7a2830ecb11686817ecec7ec73d0c2dfb20a67eba): 2871074309}, NativeToken(MintingPolicyHash(ScriptHash(9815c5ed4fe164bd67cef3a2c3c1e205631eff1e1129a113a66b861a))): {TokenName(108397c797da52b1527f985bc4b2bfab81b8ac0d642dc85c359db03eaf918d9d): 298995140, TokenName(4fdf093700645828bf414ae34c5965832eaa415f24ff2ae94b960db3c21e9450): 397599212, TokenName(51723e9be351097934bcba1454bbe5fb56e93eb8c6a9974ee8534a04d319735c): 3375646872, TokenName(bb9c8cd43399152337b43c68923555a011ebf13772ad5db39e0f58bfa43bd118): 3516553824, TokenName(e074c7540f1cbf4424684374d6ff2eca7373201c384bffc055abe5ed95b3c340): 4233369511}, NativeToken(MintingPolicyHash(ScriptHash(bcc202ae2e4a8a7c8bac99cfdc7a95fe0cecb89abd6c58f8b5fa19fc))): {TokenName(36df927af2c2e9a241ca88303c3a3a8230f442229c263dc7a7a578d4a92a7902): 136786585, TokenName(3f464eeb4a907e94c68a5fd7c8ecfb94aa8aac39efb4717d7b473c88e31ecbad): 3425350380, TokenName(51b3a012475fe96a0eb494fd25b3956b6b6a6b22820dbeeae2812ef5b9e70ad5): 827307920, TokenName(5ab8ed6811129a7596182c90a0a655ce4ebc484dc46f6efc73412c6198672274): 901225683, TokenName(91433841d02999c7f0213617f82bb3876884bce04c8c784defc3634f0cfa6626): 3044386477}, NativeToken(MintingPolicyHash(ScriptHash(f825436d4f6be16c7323cf984f4aa271e77c4bc1fa677e8c3bcce61b))): {TokenName(311bed49fd59f549915fbd7d5dc084bcc18320157e680b76fc154d0bc4a548c6): 2380644840, TokenName(664ca0142210f54f7a7a717e0ee1024eed3f3e79831b52214206349811a4ffbb): 3567838447, TokenName(925bd975df9f7e47d6baa7dbb82dcc5a4c0be3e351334103503a51fbc69914f2): 974361472, TokenName(ab83002f92dad8b86c304e7f5b4ca546a82271c68fc8598ff913d3c7121aecc4): 2435923687, TokenName(c8c34606302581726ffef12ff4f51381796834d38292428ac7d55ecca2385ae1): 2493215310}}), datum: DatumHash(DatumHash(16ccc094024c712b49cf1c19730d8822604721ffc09dab0423f3cfe539c7a4f8)), reference_script: Some(ScriptHash(f8eaa89d7fb3767c920fc463cabc2be5409cd34f3d9ddea38e022da1)) } -cc 23e9ea394bb0feb9f097fcbe50e1c617ab693e281348967adecf030c32bf9d96 # shrinks to val = TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({Ada: {TokenName(): 11307790846066098720}, NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000001): 0, TokenName(00000000000000000000000000000164922cdcd23b8e8ba4570a33f8d41c321b): 1572532578, TokenName(98dcc17b144163371f67593dbd99919f8af1e4eeea262ee8ca22ffd48312a811): 4051480068, TokenName(b34394f9dbe0ef4c71502776a2cd2757937967d0a43fd687d0646ee0df046fbb): 1336019099}, NativeToken(MintingPolicyHash(ScriptHash(256b9ee71ab62a5faf06f4062012cdc740ef1395d0c433dcd7be01c7))): {TokenName(2a169c8050297a1c30551ec2772ef8d1e8b9d771d9523dceff7d7ade4e9b7012): 1796313873, TokenName(50de778b5c82dc5113d84c97bac82c2348e6e4a4a9510a91b979ef075e116ddd): 722992515, TokenName(a030f7592af2fbe6992a90ed642de3cb8c4ef0697ef3c2720360c2db66e851ea): 3391589749, TokenName(b89611b5951937e1d3de3bd9d012b6e193a5204cd2decd314703d737c5bd1573): 3746419003, TokenName(feef6c66a1a5ad207418108dfe9fc19136d977de6710bf4e154ca6970a5ffa10): 1788244832}, NativeToken(MintingPolicyHash(ScriptHash(779d9fe9e83cbb2909567f530a2ac9d3a2d6499d15b016121f0988c8))): {TokenName(1c65160f41a60a9039bc1c690e462a73a09953c926c0ae96a99e7934ec16eefb): 4206602492, TokenName(34760a4de83d356878951d56466b9ad69515a32c593ed87e79786254f8008de0): 3681013152, TokenName(473fa050cb5d36e2387958289294b250984e96b4775ab135ea7da523099eeaf0): 2635040445, TokenName(6e58bb62b49bedc75e29aaa03f0d0bbd7ff93bef7ffe65fc1f5d27532f68b0dd): 2245578388, TokenName(d218432f5a8c7d2a3dd12346bfa490e7fbe436c85445b2f01346a8d5542e731e): 963588298}, NativeToken(MintingPolicyHash(ScriptHash(aceaf9912f63b6ca6eaea4b4826189d2de6cc8bea808b3bb6d291527))): {TokenName(1fd79d7b69811162e4aa0986cb5327419b9470b2b5f72ef694e53d964838e458): 2111302467, TokenName(3e953c061fa00a1227226c11eee35f64f28b7dcd27c3737c8384984d47dd5fe6): 971503309, TokenName(54ddf4c6b1ef026116fc31c4d7a0566be4c2343997148e31031c316b8d10f153): 1492445650, TokenName(aa81e77e5415f608e37df77666506b8003a832b5b315ebcdf467f4ebd0afae67): 4271805958, TokenName(f84deba5e443ab5ba20e79c104061b7ed957b06a74025e901552c34f621ec60b): 770820613}, NativeToken(MintingPolicyHash(ScriptHash(d8df147ed8b9d38c064f9861203205505399a9111e96fcc9e7050a26))): {TokenName(6d39b06ee9fb5ac4d5069d2931c481396b5a1a1ac97d4e35148fc9b34252517e): 2549362015, TokenName(70858ce665aa73bceaa8c3f0880015f3d8f420b09164918aef4c6fd8e29bb462): 1916783923, TokenName(7413c1696410281fad993156d7df79ae2deb14e4aa61a4debf461fb1b5efad06): 2856706283, TokenName(7560669a950f1b8a24cf8dbd7ec0b9631f48a16c062740df3be00f1f12e578ac): 3487241612, TokenName(dcd392c34baf0b7e97cd35b4075162cb2530b8ff9fedcdf26cc47e4680e7314d): 253797432}}), datum_hash: Some(DatumHash(3156abae7adb8f67ea12ac36bf969dafe6ac5846329ff2163e35c65f6cd31ef4)) } -cc 543e956766923f668ce342e8ce383f28dd9e72231b64d13e4ceb7a71bb98a0d3 # shrinks to val = Value({Ada: {TokenName(): 14424837469395343527}, NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000001): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000002): 0, TokenName(0000000000010967b27594d209d7070e5a0249e42a094d95f948ee043439c25c): 1788463841, TokenName(30888ee8d51a9ed949b594f7a1f1a40e78da76bc7444504f1d911647ce8f9e63): 650020242}, NativeToken(MintingPolicyHash(ScriptHash(0ea196d3b8a562932397da7fb2c94f8082bd9e64283bab714e094ebd))): {TokenName(4d20c3abfb8f4b1bfdb8d242359a0d7957a19922db440ebad25d3c12a87e6e8f): 3304779373, TokenName(5a20e1e8dd1d4a7cf812f102cbb0de08581584861d8f629b67deb9de7f216026): 1842503113, TokenName(92d26c1737334d7e4fde203bf7c98b5b64834dd678e1150e5be0369b4e728e4d): 3651598782, TokenName(c29ce34659540f2c15969e476e3aea9bf24796afde8a7c0cc5005a029eedfffe): 1907117525, TokenName(e73f3f478aedb38b2f78527e3d56e1b1693f15e0e062f6e873b38bffaf0da284): 273641939}, NativeToken(MintingPolicyHash(ScriptHash(394528ab0076d0245ede5d7aa6ccf8b89e32a27b8055e2e54f6aacb2))): {TokenName(0ea975b7110055681aed9d579fb115ba5c716c6f2dcebf69320511e41b8ffc64): 1656666742, TokenName(68ceb85082724dd89fe00b2148ae1982d767eacbf6c468466030d7da3da5136d): 2137852647, TokenName(a44b0079b391a5c725e8972a9ca3e05e3631f9a2d7f754fe9c5e52e8ac0dbc2e): 4183214932, TokenName(ad8bad35c15d89c074b1aa70f6bc62ac10b489710e1dfe1a3df52cc503f3b7ff): 361263401, TokenName(f9ba51f47615c86af84e4a5c9e798244dbe28230498a2b9ef4b7a55630ae004f): 2929477375}, NativeToken(MintingPolicyHash(ScriptHash(97f25ec089dceedb7e4e47eba212a79d153e74e24446f48359a01c13))): {TokenName(66a14a5165c74437340c0161f9cbd3dc10b7d89992e1c96cbd0d0f0254b04545): 1726978085, TokenName(6c31dd856fafdabdc5250bc1d8f6c44615cd0429213748caa3ef6b93df3357fb): 192819734, TokenName(b34d6468a5043a1e1fe3691e1f345f25968c87d39b5cd6142bf526d9127c1309): 3572494951, TokenName(d7f1ae6f89bdb1c17c498e75cb3158c40e288171783c9cb032775edabe8a1bc7): 3350017561, TokenName(ec5ed545b36adaf6c1df0fa6acbefda2ad62221ba9cc38e37e3425a6415c0311): 2179161864}, NativeToken(MintingPolicyHash(ScriptHash(ff386873341b1bcaae8ab05ad80533ab4c4c4b6b884db97f59f968c3))): {TokenName(369f2ba9131db399e3b61838992581f68a4dbd4fb3aa06aa0e15041079447d4f): 1900606450, TokenName(6a76151ce50cf711d63c29c51b8f307b904bd1e412b90963f37ef83716de39dc): 4233782127, TokenName(8ee60f629af8e9fdb7f88009f5019bd14cfaf6230123d41a594a314c6cf0d91e): 3597316093, TokenName(cc4ef63ad384995a2416781166808ca8d51cdeb1ace960da440769edc7d29e12): 2153679071, TokenName(f503b52b34c5b9e621d3360038f55dc5242c1626821606aa11d19625875c3e21): 2091888762}}) -cc 52590d67b91538cc3fcd06d3e709aca62126f18b7363189db12383c4362fead2 # shrinks to val = TransactionInfo { inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(00000000000000000000000000000407edf8adb91cf89541e545e72496f07a20): 374039361, TokenName(1d0b453824ce557bf6fca45a77965a26f495bc7db5e70aa4bf403fe9c5e16303): 3558846317, TokenName(86bacc62b41afdea27a3ad67e2347e10655ce679e764a922394381ac19943919): 828865406, TokenName(a350897df7bac32ce8796e269191595ec98863b02b3537317d75681e84a8e429): 1731759626}, NativeToken(MintingPolicyHash(ScriptHash(110676327075ab343912349bb85ccb77019b8ae5b396e4cd416a3c0d))): {TokenName(32bc97530e7a592b2f8630e2a480118421275e58c196b5c3aa2889dfaef39e54): 4100972697, TokenName(49a899b2e5173fcf358ecf74bd9610b117d6bb75eaa6a002b431faa2c734665c): 1009551356, TokenName(91221cf10db922a1a209f75dda756b2e7df8a16318000456e4cb7c277bcf8f14): 2148844087, TokenName(cceab4a5173762e2c01973e1f5f1aec24418692a4797e0d01734877231b9258c): 1591908534, TokenName(e90f5d97fa42a95d2f7f69376fa00340245cd698a90cf200bfbc98f3e2dfc3fc): 1860292516}, NativeToken(MintingPolicyHash(ScriptHash(4bdcd1523ed412e4ab67035eb368ad1b759062c7a410ba1d209fdec8))): {TokenName(188fde12d24aaf8a7dc15aae14d3fffa150b888cbf14c8e182b21c092fcc4d59): 1244087303, TokenName(4edd8bfd264c0569408a288f86522ecf82c6515e487e62e3bddc7eb5916db2e8): 537602506, TokenName(55fb644db0c596e92bbc3c217e9a1394c3d007474209e2079baa1b5dca2eea0c): 673098567, TokenName(7652799c4712d9a009f7c5846f35efc8fcea5a45817428d6e4241c9fce120535): 2409979608, TokenName(c2d8d50e8b1319019b0deeeb9fa49c83b8322c23c82fa18b87f0f533706bc856): 1259902524}, NativeToken(MintingPolicyHash(ScriptHash(cc79a057808e4c804cd8304253deb5e21f0f58335d108a22d014d0d0))): {TokenName(5b87217cb1ff8ed33f592726e9be4256cded3f725aad00c2f8bae54de1aaea60): 1662572243, TokenName(624bbc52eca808726e6e76d4631e857472200e724363a77690c783bc9fdcfe17): 1857662724, TokenName(a390b7761fdd484ff1123e88ce732c064fc79eaa7de470b31fb5a6c3be75f12f): 630637122, TokenName(e295f370af39b67a23986955a776696000bd8e4e8604aa8a5530f238e82cc482): 3765641512, TokenName(ffcd7aa906d79906871384ac2b7b7147d0812417f30511793a4b88aa5c40788a): 4156446257}, NativeToken(MintingPolicyHash(ScriptHash(edf779b2d3812f0c4d84c6dd0c4ad7b8dc3438a93bb6081221b92024))): {TokenName(26d2c9596bcb2a6c2d75ea90a3049bb569d247286526a9b8251a2a6c011c5d73): 3986757752, TokenName(273a66461623a3e686eda206bcbba9df540c2cad7b4a4bd5bd7bbda79d4e9787): 422699215, TokenName(9ddab29f7066cc2261ab86de5a5dd75be3dd6fd25314f2232f2576bdd5bafa2d): 2898291720, TokenName(f7ff19017f0773b48a8ed759706a2dcb81c0a92f643a9e42c3ec6ead8271408e): 1872832045, TokenName(f89c670ba8b564019eb56d5625db89092f30d65c52b69d86b59235b6f84f6c24): 1227840929}}), datum_hash: Some(DatumHash(2b30dddbf7e4d84702f001d4cb2e44f1fdd265d349b62dd40db52545de220a29)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(3608caa8c9a441bdeb618bbc888410c67429df878a186df9c8d4667577437171), index: 2505034753 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(93ffdf43517f1d5fc59790532451ac5c5df8e740b939d3ada063ccc6))), staking_credential: Some(Hash(Script(ValidatorHash(ScriptHash(3e7260a6c88929d0a414fa09ddce0a82a85dd6250947b98d4fa4f16c))))) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0a230b516f31a9b7e773c59b1df65b53d6f28fe040ee4f4ebff14c90))): {TokenName(3d167921ef314f97fd811237208dea5796376e54d2fca024f5931f4cba4beb70): 1706344604, TokenName(93d5d7d5137a2188f63b632b1324426bcc18783b229b90f40ae6e57a9c872d25): 3878789206, TokenName(a16898c99e4d0d3355b7929794c485b59c33c4167c2e700a70fa54e03c6bb381): 1316155636, TokenName(d3f5d06afa3a7a686636fbda3a995c4695ce993674dd9b91f2e8814edf8ee8d5): 98210038, TokenName(e44c49b9dcbe4061398269076cf0577bd1060bc6a5c41d9961e21c3c421fb536): 110055982}, NativeToken(MintingPolicyHash(ScriptHash(769b33031842dddae11463eb167e1cbd4b97a7cf6d9306d298d3af27))): {TokenName(43a6ce056b96ffab54133ef9a5ae732d40ecf89e56eb64137f326604634bdd84): 1169283178, TokenName(4b2b68721b75f00c82af508cc844d778718153f0bfa2f38d04897dd3d684109f): 2296085414, TokenName(d0d45e806140bd49ed236ebba7b5836e1dceb49bd7bfd87c66d0fa2e65cc7059): 4242343236, TokenName(d2bb9bbb0726ad1f41ce1d1431e5dcbebf033938a53ed147c81df0a96d75386c): 1548897659, TokenName(ff382d5bdef55129479c3e9a1829bfb783a426bc4cbb0c7d2c860707b3ebdbc8): 816548483}, NativeToken(MintingPolicyHash(ScriptHash(803dc93b340c00d17d3d734f37d15364e305edb314f1bd77e427229c))): {TokenName(80434afd415c5dcc31b26d9b33adc917fd05fc07bd4bac40b8e433cc917e14b8): 4036724512, TokenName(862c26cf7d50ec6b3e2cbfacef5f7003bcb1bc67d3b9667c879634967577c913): 3483301905, TokenName(bc928483ab6ddd4254a8dc0a35743ca403535a2de7b2f5b7db96b91d0f5cf36b): 2789696563, TokenName(c2365d912588993a20a7b7ad04ab12447110c0029871c2f8a9879d0052c1fce2): 3274018622, TokenName(caf7975d5fa73649574fc3dd143ecddac576f008599aa80c3c73cd0da38a4498): 495832125}, NativeToken(MintingPolicyHash(ScriptHash(892d1a24e3527b900968d75baefee5b234d39e26bd798f2987b4b718))): {TokenName(03b45d84ed114acb7f74db5d0b3b683631fe25ae954f96cba5d55cfed2d5eba5): 1637132504, TokenName(4e271d6bd9e3690da6a38f9952ef6111abc0f9cea1a9327f1c3af748abc6f53a): 2401555099, TokenName(a5537dfb34e7f25509c97d600fce489cecbf57d22e72f35f6a3fdf726121e7f3): 3356064449, TokenName(af969adba96fa98725c9c91b709348d18fd9aac47948c8da7293fa9ac2e92396): 4281688255, TokenName(ec94e85bdc9d175489a6cff2285a1f24d8fc378bca3b07cccf0baa7f274e320d): 4256109274}, NativeToken(MintingPolicyHash(ScriptHash(bcd2c9ad98f80a84ab431a5a9c22d40650a8aa2a03e4bdd2c1cd20bf))): {TokenName(0b082058d082a6bd98f66b8411ad9fea78518d9e03e36d28f8aa27dedbfdee70): 78234265, TokenName(0eeae96e6388083152ccec03087524cfcea79e6a875b87af2ccad1e687cd8e27): 216657798, TokenName(778c0c8ce081eb594c3c9ce1db4c605d42445e5ec43885609e4e18010626876f): 3507391797, TokenName(be767ff84f4639851a91f78a2ac29764e03c37921840e10a7cee90e24ee2a816): 701477366, TokenName(dc5c0fc93198fb3feba93c0ba69c0332aab4fd85a1d350febeaab7002a61f3af): 1752261894}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(d1b645658455c3134237115a3ab9400a4a0b1c710bc123bd554d01382c61b12e), index: 3115642705 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(080939e906e3622f3b6f617b0172a9729df1ba466aca07c9d5f210cf))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(77b8331a27e268833e2b7af865d07823696edea7ff672bd2b2bfa8bc)))) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(058ac06a37eb7510ad1cb9bcbae06d95a7ca57ce31b994cfb7ba0e28))): {TokenName(0982a4e2b9a6e499319e22d3a0fa20813f0c3994d8cf9fab1dfc79ff80612860): 436208616, TokenName(1c5db4a3484d72cadad51957c766273aafc050f970e4b531c2d888406768b90f): 2299825712, TokenName(33d5aac8a293c1791f7df32aa4b2fe1361f034b7d277f4836a7ad4590af5f805): 2609244847, TokenName(9a3f3005afd4dc7580ac8021309ff09846c80c48e9b6117e4bc5a98c0d9dc5ab): 1331037799, TokenName(cf77241468aa2453665300d280b2c94586c75546ab205c634c42b0234d852fbc): 2916744388}, NativeToken(MintingPolicyHash(ScriptHash(3fb8d00144adb2d2f63f61d4012b172c854cb675b43899a9a342f986))): {TokenName(41daa9c61e4d9de30265b4df35f0ecac7fea5b5664ef44649c1e3245132f93f9): 1119356175, TokenName(6fd515c51e30a3a6dae3d4e563a8e14d81208906c93ece49da73abe0559392e9): 3894143546, TokenName(83c0dcc9640b18c255272c421366d651f360c471f340426293132dbabfae5bf2): 1619325732, TokenName(9680687326d471f9335c494cb25eb51c0d2b8dfa143732e0b7cd8c8ecf7e78cf): 2412586278, TokenName(b6ee08e2981a46b92bfc6c2365978f116a2f1677126a38f31c3861f60d8f515d): 2042428623}, NativeToken(MintingPolicyHash(ScriptHash(66d3e927c9db5ac0983e81b47d3a61215e0210095179f739ff39e59d))): {TokenName(118dcbe5303078a367a24ec358e672b0132c3be07e608242f06ce9e0b9cb7fd2): 2650236921, TokenName(320db7f8a3e729bda48d3c044c2006fe59bc1fdee3eb55d5092059e94e0fb2be): 1054482504, TokenName(470f191908a1b3bc0b28a94176a99e2c6c8d2cb155ba9c79b48f1925d1915dad): 365539338, TokenName(b78b4782520720d8e19139ae80269bdb181bdb997567221d102a2aaa37c5e66c): 376692965, TokenName(f392a44b3bbe452ded1ff4f8e3abaa82c6d6a57fcfa89f9a5a22d504a4bbd6af): 2377338980}, NativeToken(MintingPolicyHash(ScriptHash(6c71a1a7c5c43fb2cbcb2e5c1d3fabc97da44d2432bcb2dbc998b6ae))): {TokenName(2f415a59dca91e067ee0e1063d78baa1737856e6e0a6a4db89fa35169efb0ab6): 1444969153, TokenName(bf2ba9c840adfc871b11366de3b98c47117a630bb9e9450f703b3774156e6ca6): 789595036, TokenName(c5917f94f3d44cce3ca2f57b9d96a5a479ee1e303aba0a8cdbe57d5b7b3ea5db): 3567555179, TokenName(dce3232c49a4d3eb10fa3d5805c2caab98d1edbfa01e050c1b4bb6a8baca6136): 636556504, TokenName(e3cb029eb81c9ed25781c011bcd2067a592fbffc5aa286f6e4869f493e61bbb0): 2229180782}, NativeToken(MintingPolicyHash(ScriptHash(8f6fa4dc5f3b3435b5dd5e46aba6a1332dda83d58bc4041e21d159ed))): {TokenName(2f8e26285f838f215da993196558056a72b38c14bc83a5c436452372beedde3b): 2084712920, TokenName(3545998c584076d85b9d3e04aa7dfe4ddee44cae8a9a496e0892d2fa1711074c): 1583163728, TokenName(3a3bbaee789440cc16880f11711c1cdd1840cb9930e4b4834a83dfc7099ca410): 875965494, TokenName(8802f5a073f2a567a9fcc558a5a10deb3ea61c853e6901fc9e0fb591144d214e): 2198651115, TokenName(9558b1aca92f7b6f4645bdba1b84e258f545d4f18b4bb1e34bfb19355ed266b3): 1818984028}}), datum_hash: Some(DatumHash(30e7bc4cecc08267735aa03b6503e91c33ae4218e5bfcd7c1db26dfb426e01c4)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(b788a2ba61e9680498536f8b28daf3ad323a47ed6044b636041e2272715ab17f), index: 2534781838 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(4b8950e75906d624ab2b1bd938a7730033fa710b80575d3cca9216a1))), staking_credential: None }, value: Value({Ada: {TokenName(): 710163555261585332}, NativeToken(MintingPolicyHash(ScriptHash(31f30fc21616a16366ef9aa79038b498c89bfddca46cd4b9898f3ba3))): {TokenName(336c9708249e632b51249a465da394eb4c7755eaa5345d2cb2e18b99a9883d29): 2736465276, TokenName(66de15d9ac8f220385059884c847f1ebe36b71fbcf026d8988c54c9b33ee8164): 1033802914, TokenName(a12988707cd40b76c73e20b1fccbdcd441a60a8b7101fa269780687ef40b3690): 4098961484, TokenName(c16a762291b6ea2ed16cd879edd2351fcb938d8e07e4d347e1845501a34d708a): 1942554846, TokenName(d926a03adcfabde2dc39b451c540d59f4cc01ab04a62cc39e6ea85cf8063b2bf): 2882376297}, NativeToken(MintingPolicyHash(ScriptHash(513997501d96c4e3d87e0d4c5484c73acfeaca8b22116dcfffba8e5b))): {TokenName(234413823848dd5724e87c58870c9916f83bf835cc83a65ae13d280b6b8cdc0e): 3912994292, TokenName(31a73843eaf00472ff4cabdf736351ba096c628c11903646a8fe770fe8d7791a): 1527714607, TokenName(a734cb2591a9751a69e3913d21ebc51449065bf735468c623593654b962f5b02): 2431254021, TokenName(e6af621e3940f1dc0b6005eeae3a410f6876c539aed2fed7a7602ae1da80f0b8): 1458257302, TokenName(f21ca9056cdd1863de155e2cd3facdbfd5372655d0b82710852ef4d51ec1947b): 3043983130}, NativeToken(MintingPolicyHash(ScriptHash(c6aeacfc700f1802b15c94de96facedde6c384eacfc9c3bc33d710e6))): {TokenName(0150f42a12d4ac7ca8193c8286ed0d72c26cd2808dd724973511ae8b9ff27e3f): 3680159812, TokenName(4998b6923dc0350f8f64963bc19d0664b29d448430a67fc42d40e162b35f61c9): 3257935214, TokenName(868b7622c4b934723dcad517c217e2581c6587025fd8948ffa57ef933297a4cb): 3842022460, TokenName(bc776864c4181d25a63bbec854732922a93d88c981c1963e6b1716c3f17792a4): 1580999213, TokenName(ed32637548c1b6dccbcb94f6bf7562221301500e9c028379a5dac8280afc2452): 1635662888}, NativeToken(MintingPolicyHash(ScriptHash(cb2df132bcbba5fe4ef4c37a58faeba72408095b6e5554376441c799))): {TokenName(6c81a116a383a027d608a6a1cce43177b48ab9be9c97568b52126351901a0e58): 980604308, TokenName(776f6232e0b982d48f7ca90a2d8cde32609fe02c38a06146a6f3874d2119d891): 2470546106, TokenName(780870ed9c222cd5897c26f2126b7ae90af045a881a82ab84ca55cabb1aecb1d): 3928169243, TokenName(d7f334bca02f48525e60784dd0d69945319cae5df431e583434cf6cc4e9c647b): 1087682919, TokenName(f6b37b15d15002ce4d6d810a10fd7a9dc213c78b6392639a3f3ca7f5e13e7d2d): 3319137902}, NativeToken(MintingPolicyHash(ScriptHash(fa9ab505768e962dfda560fd76233795b5e68ff6d7bf3230ff1dc237))): {TokenName(5f02262215086aaaafdeef624a81b6fc0b9d72dc839d30369126036d963b047a): 1297264053, TokenName(8e25287a0ab0575eb64dedfeb4b7e94d91bc193486ea1eafbe5152ace98e8eb7): 2436422543, TokenName(9585a430900c1155782abc26ac10a1d4e8da9b3cc12c3d04eb0987e7f42a62ad): 24027131, TokenName(a8a3dd1f763b8ceefe4f828b6acb69833127cd49f1945c25e907999aa4d5f5f0): 4078987097, TokenName(e9000da8709aa255c9119a1b913a04d6fc90d149936eb938988abe3bba6dbaa3): 1463922281}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(4a58917cb81a66bd673b31f0725985620676f7342dc40c57621f5dd5ddef0cdb), index: 2237120378 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(dc6adc7152a569a1e6dfc6ea8f7de5663acb00b9a916ee26773fde5e)), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(07f3ada2f3cbaed53e74da54502d785beece52f456887289c36b01c5)))) }, value: Value({Ada: {TokenName(): 2187420690785327395}, NativeToken(MintingPolicyHash(ScriptHash(0f1f0bfe953adca264f10d0f36b98bc7c0e3549da5f3355b2ebb1f90))): {TokenName(2f5c5e1da40a7c4f5911f3b87fe5b534b5e9442caa4750362e26d3a940cd7ad9): 1749869049, TokenName(4e34cff6cc2c1e294990ee06385aa2d87feef581c4c0d18b5441d958af529857): 3386749994, TokenName(6dfa637c9edf7f237a7531d3eb097083c95655aa2bc74136dc863669f1dc7f8e): 3424902970, TokenName(96ea480d56abf56c4dda47713b1c90d1225b4d00cecc104e4dd8db51a5121699): 120786680, TokenName(eeaaffcc1c1113116cffd9c89b1c839cdd6dadb83660046b1f58bc5aeae42c13): 1935378831}, NativeToken(MintingPolicyHash(ScriptHash(416961201c75acdf68f31c44af7b0554b5472a90f512282e09d8d952))): {TokenName(43c11832e5f18a7844b82d95b5b050df3d38b41fd74a5f0f1947e479d1dbfd5e): 2308196071, TokenName(5a790a21d4b34e56a031c7bf91dd3347dd9e8f0e7142c21385bcf176617ba1e0): 2762092532, TokenName(5e1428a96f901496627a35371821057f6b1197bacc6968500788f1ca667f7de5): 1786463607, TokenName(9b8297349851f9282f4fcd613be37d77188d19a2c8e9573df52910030761dc67): 2644675782, TokenName(f4c7bd912e86616df00638c4e8bec5da29a9e30c7d2beec1b93fe2470cc536a6): 4029499366}, NativeToken(MintingPolicyHash(ScriptHash(42a4921232c02536a092966b7e1f7e844cfb8d2d6d6d109c74efb801))): {TokenName(084b6abede319fe531033d514a51211dd13f3b1fd2bd2c1ac463a314979babe4): 1031801373, TokenName(3caad7cc2a7ae5831de551a8b5df1ef5375a4505c0563c3e81fa69d11ea08ba1): 1340469765, TokenName(7cd76fbb5e86aff6f3bca788b308b7fcbbda7e6b6975f6dce8857c4f0ae574a2): 813064888, TokenName(c195267200a0ddd3d157df366b68a38d8bbce29e26a420d2a3731bf8115c5748): 665272959, TokenName(dc0e6c374d47a156f53b4be95d50935db6912557d7bdd05037eae16581f8bbea): 1921030566}, NativeToken(MintingPolicyHash(ScriptHash(8b7aebc7fe45bb6fb781710a83d38187da62ade2ad3f53ee909ffff6))): {TokenName(2d84c91747ddb380cdafd7eebe9d46d221dc7c94d2afb620a5a66bf9d575fea4): 49037436, TokenName(6fa872799f3408ff0d4d42cd62c9ea6554a09521517bcf33f0b8be988f2a3253): 3271104944, TokenName(97adba75d68e15a7407644beeaedcd8f63b5884c962e8b0eb34a819ce83ae154): 233593306, TokenName(bbe31681e67fe34142121e601f5e2b9644bf8f728a6f6a7026290f2dd82952db): 1750148926, TokenName(cbae3a183bc5ae195ecc652ddcd3b188f284bbdec219c031be824beb656d40fc): 3238415812}, NativeToken(MintingPolicyHash(ScriptHash(c9e14350262805ec43aff9e7d55b32ca41846b0ce0ab2300c5c675ba))): {TokenName(5c9b3e8e3e2b1a4ea0525101e9767947129ef90fbddc6a05622d05badf2738fb): 2427201629, TokenName(739c8bc0c52f2bfbda95110b524168863218f3835692bcac78c11400dbb93214): 3091824608, TokenName(bc573f5d85e3e0c1feaa6d806361d1ec7c45075c9c29d6f1523a1b265c070a80): 2339288559, TokenName(f094e25d97a677fb29e5da08a8c406a26bb84a82f6623e159fa08f6ff20cd5e0): 3772179716, TokenName(fcde86156ebb0a156c28b144aecc6a78222550a751ac7ae7e0539496db4ea770): 2816272552}}), datum_hash: None } }], outputs: [TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(14ce7cefdb3ffd53fb230b760dbce0ebe19bb48097de17dc3369e402))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(e64a7a19755505e403bf9ba623f3004d156daded23758e5e6597df76)))) }, value: Value({Ada: {TokenName(): 3204140381163145128}, NativeToken(MintingPolicyHash(ScriptHash(be06e679e27b762534f97a4a615fa6af8881833e159ae0cdc701d3aa))): {TokenName(5577d1cf8ce79d631922e020751334ae728616cde48563583e167916b8fe6ba6): 80422922, TokenName(a8e7f8c425a21fdaf9762b631438719d492020586337853be7f14636b0715d85): 1994695392, TokenName(b25ac4f1492b0642dfd5cacf0c424e54210e5a7f50307c7e56641b563d5b8e65): 4132953472, TokenName(c79c9bb99b410689217b7b03cb6c0c852c6532d494a417977a850cec1a5de666): 2925597833, TokenName(f7832185435abd19f1a39742376c292f4011ce0f90ea5edcc6cf52fc3a70d859): 1708481710}, NativeToken(MintingPolicyHash(ScriptHash(c1aeacdb9717886401d576c5db4ed7e39934a348d0fd34c9505774da))): {TokenName(47ea055512efb5a13c235e8eab36996f4cee8c26eb451162f721a2a82b161843): 3072137652, TokenName(5d162452b4d41ad2847d8140fdb3bbac45bbeddbad03cca2ef5b5accd75dd90c): 3139757021, TokenName(ae90d22adf87f70dc7f4f2f7e5a1c390355a0051886965358b9a5ebd0f732f80): 3717552077, TokenName(bf00a996eb8799484b37a699aaa4f17eaee0a6c31b42c4c72aae2bc6e39260e9): 781313480, TokenName(cf4ec8aa9e5374b7f69dbecde5c1086fa74200bc62672daf62022d33990209a3): 3278215950}, NativeToken(MintingPolicyHash(ScriptHash(c3b726543b9a3c64b9f1424f92cae3347b2b619063eb445f526352dd))): {TokenName(196942fc8fb02984afd653fbc389b5099e739915ebdc45ad5e77367dd425c550): 1852062128, TokenName(38d4203a5324de3b8c320b42e577a59563f469f510a92d953fa81e58abd3cc5d): 2566486165, TokenName(39e389a962dcd308d67cde5a32cea16385980336ca851be16c44fdf0b7e928a7): 413787175, TokenName(4bcb5b53b8a530bcd77776e97fe622b5f78db97c90ab801e4002ba237213a923): 1445582470, TokenName(fbf9db6e9878215925c303119aef35221db420ac43835ba17c539f9c538ac870): 2854834655}, NativeToken(MintingPolicyHash(ScriptHash(c8f52c2542aeb46959372de09adeaa83910059fdf6aa79791787e4be))): {TokenName(1362e2cb1b42cf5f247144df06dc7935c60fa91c451bcce69c512b981846cb23): 1234526972, TokenName(2fca898a35a43a85a9c9378c6c7a33e6e097b2eaedea11004f3c777a10d2ac62): 904175189, TokenName(7f1f9be4d46fd601b8a051ce503f2c19f5ce1ee0ed04eb1c724cbc399572a428): 3707513607, TokenName(877ad2da29efd6086b62ca5487c50147940cf9b44b5c35d7f505b39c0c8e48c8): 4102078761, TokenName(95d3031a95dfc9dba9027f6f9fcd6d8d2dad16a4b2a4d66702a123d38586c288): 254174447}, NativeToken(MintingPolicyHash(ScriptHash(cff14a45d976e85a1a8383ec5c945aa01ac47c8bbb22938539fcc306))): {TokenName(152ac3c0b6f871fcb493b84b9c200de7a0e4cbbf63c9c2ff471ff1b8d2dce339): 2115577256, TokenName(35dd497aec2fd036b1a94622d7d991ac6cffd492521424d9746bb985c65ebba1): 245872665, TokenName(6c32d1dada638009f2cc44102c43f9a02011e9ed5660692f3bd0908908d0d3d4): 2101072084, TokenName(89952bde248e770a36c839ed08bbe60011d502778037ddf12ebf662ebd896284): 2334605192, TokenName(9a3e9cc8a4c5f2931d23f0bb7ff2157912f85c47de221a1301288ec79450b84a): 892292307}}), datum_hash: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(1bd6451ac3423f9199ba899886fa2858b37127935c66173140b38b4b)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(2127fa9639ee45983358cb96beda3695bf98d62937793363d6c87b7b))): {TokenName(0440bc1fceafed5cb7fe218fda89311fc5f776b22886ba601758ffa155cdecd7): 2977875133, TokenName(864d6359fb3e30a135fafaa3a9f382ce4ae3353daf0d6fb8eef2aff9b06fcf93): 1987814508, TokenName(9df46bb33bc4e64dc49d68f967bcb7cdc24049fc543eaecd5f6c72d72ece35e9): 698488157, TokenName(c6b83b83d7da52833579eb92b302a92d4bf9f797fc7c73ce0c8451609f800ffe): 776047550, TokenName(feb81145f36a5db83955f1a0d9cd948ba194eeff2eb788dbe35db6b563db65ba): 2185584919}, NativeToken(MintingPolicyHash(ScriptHash(5d7f0f90bfc04135763bd67cc5d095aa485cc6ba5e28c1536c7f1f23))): {TokenName(4164556b03af8ce62b77dff178fabf79c5872d307eb7ae3b21e5b8318c47ccc4): 2436169930, TokenName(822fda798db60d45f9b1e8a2f1883a26396b1a3f789478f3cc874b05e092cefc): 1815487654, TokenName(8743900397f1434ff96f72f2c0149647707fa7a9de4ae1e97a21d4be8bc56efe): 405332397, TokenName(aefa2f3b87dafe90952ba15769b170196286124ca5a545e2d02713cf61033d3b): 373101445, TokenName(d69e8a200a8f1c3eb3f4d1c2d5df008614c57da2c5e4be42c1370df66b119dbb): 3675765993}, NativeToken(MintingPolicyHash(ScriptHash(73614882564e717e8a410b3f450f4a867cf392e38874e85a3c0cc11b))): {TokenName(15f27bf0e9ccd4380f7d04a2b41cb4ea9620ee6cd1832e4287c3c2865504aefe): 2990546610, TokenName(778d5f9f2038e5317303a339632c964485aa01a8f049281cdd395012d895b3e7): 2828286019, TokenName(a480b6b257de7d65544689429bd3685c94e4b3d4f02d4e6c2af8a30c7a9d96a3): 2960566335, TokenName(b5e5ef445306a87c68ad16b13db2cb11a43c9cbead8fa6d273a4db6bf21979ad): 2003513283, TokenName(cb0837dee220176f304d6c27fc2132b47d5051bd7de5135a4a1a668f0f72d1d5): 728382953}, NativeToken(MintingPolicyHash(ScriptHash(ed5ec393f4eb319aca49968d0252c036ffd2756c0a1cd6193bc55c8f))): {TokenName(05ed240a69d035eba26e6ec044f1e8c8ebbe7dc53946c1e653e92aa287c6ec2d): 855436172, TokenName(7d9b08efebc14a5b6b53b61b7d95ef5ac2ef93f8c011309b60ab82a3a3135b79): 2841148457, TokenName(91723f81c7fa60a343bf75316864e2e96b92b7cbb780d5418a266e3ae4926df1): 1751292367, TokenName(edeb6b562a1db406bb6c5061a8fe33db9788a81603f98358a55ccb7d85ee5407): 1261153895, TokenName(fb066e91e81ee821a9b65147971e9a5e0fdbe232ace09bf2589eb407051dd90c): 1058727688}, NativeToken(MintingPolicyHash(ScriptHash(f0e52737544c0b422de1f403f69af968ee9eed4246a5b14c282d8fb5))): {TokenName(203e46596645d1a7a4141708d351e374a10d9a7e43af147b6ed63600989cf304): 1552260197, TokenName(7859a7e9c2abcc99c35b556204ca58d5b0667d7dca41f52116685f137e4d2992): 3661700872, TokenName(9cd8a5d5c1ea8d06f0d0e668bfdaf9d0314d4e6e0f166a3c9a987989febd2e9c): 3261841714, TokenName(aba4d7563c0c020759bb0d6cc64ab5895aae74940c13e8b43d3709e8f8fe2e52): 168222759, TokenName(f38f7d8a057a07f22878680c79fea54fb49cddb18ace4903e11d2b0eff10c61f): 1154769142}}), datum_hash: Some(DatumHash(f7daced41605156921f79b3f24626dcd73a44e055f1e211413101fc1df5617e9)) }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a81191d7bb7ac16c9debe0843fc64bc9e25c5bc8cce600025d8628af))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(3511d437e44f5356364f24ffe1f8e9a3aa730317cb025d17bbf295fe))): {TokenName(34947371e5e098ec2030200a6b28c2a98720f0a9f3909ddad928f746c2e3b854): 4279030183, TokenName(4f59be7434a1bde2bdfaa5c99a3508f4ed60be02a112bcf7abf242aa85535f68): 2924357960, TokenName(9ac2fb572ee7673e9ec2cec0aae9ce3cd48bdde86662f9d8fefdea63fcb8bfbc): 1959595321, TokenName(c0af18379d7fd92561c7d60bca085bfbc3b5d942977c5b558d7105dcd834fef2): 3426883453, TokenName(f1858ee761571c36310108e946be719819b1827c30ebb1d482efaba8c25d7d75): 1657981309}, NativeToken(MintingPolicyHash(ScriptHash(52970355790060b77a1cc3fd46d7ecbaa2c91f10e5ba540b04ac4033))): {TokenName(0f28b2cd94631e1fc01f160c5fe7a728b689eed4516947e67452bce812dac2d9): 2912791554, TokenName(6c49c40da0821b8eab4a04262b389c1e8264819019e47b55ba10ba5eab12f788): 2004867540, TokenName(9648245b6d266c4484be7428a2ddedf31858af9e87f20eb3b11124afee8beacb): 497951342, TokenName(98fd3d501999a99b13c18a348e985516e71a437f19b6e6a52b435aa41c252655): 2647984422, TokenName(ee1f8ec07346c0c7abc29fe40160b76f43087e533fb65239f80016aee530a804): 2109310571}, NativeToken(MintingPolicyHash(ScriptHash(5936fe5cbf098e413db3d568db0c06665bab351a81058289376ef3fb))): {TokenName(00e4dfee874175678ff80fad99fb214753b3da0e0db7786df2c37253f2b6ae79): 3236125097, TokenName(2f2f522fa03885411cb23fd253f35c6834093afade46738da410fa2395771bce): 4246110326, TokenName(47b94183753e7eb7fd1bd09e28e2f12a8b3243067dbe15c8c8f7347050a27d97): 1554141356, TokenName(add3e8fb43d9d2ab4c7c9715bb86a680bebe22ff74ef3dfb0b293d3506c9ae37): 3188851922, TokenName(ef4cf276a25bc90a45e2c9126749f903d1cbb7f5f29e997eeb9c33c8c25425f6): 2831608162}, NativeToken(MintingPolicyHash(ScriptHash(d0f5da3e947b351534e1f62b7badaccfa9f564bf3becd4d600ec6d96))): {TokenName(29c0b978d88ea88f66ae632307f106121713eac900ff1c47f297e71058428201): 687422574, TokenName(7354bf72a2bc0b8eff89329d09cec4cdfc94db652068ad1ba8cd4ad3c1ecdece): 1889761630, TokenName(9306f02f943900c6a8af5858dda798204d637deb94f01c10b8d04e041c768c95): 1894987416, TokenName(aa3dccbd0029e01e72c9e8e0c074285e687548823c11c8173a940a3d097bf781): 1383955432, TokenName(b5818124ad743b4c585e07e835c353272ec009c322be1f92481ff88ac197035b): 1848236160}, NativeToken(MintingPolicyHash(ScriptHash(ef9c81fb293691f601959f875c274e7d991524c7084b65162ad8cc0e))): {TokenName(2e8d7363b28abb48b2aa1148b1d53baf69ff88d57edb957bd216ebe9dd476143): 3675083634, TokenName(5ee27d43d0a024728484d479467e2ac7da2365740d750fef37ab9474bb3eed86): 3545813450, TokenName(7c7607597ac9b0a863e6fe7d14c28882291f4c36886ddc5947069cd5f997b1b5): 4171611603, TokenName(80a12802a489ffc9c9961e3669ea18baf650369b26cb81727a05348673381859): 3351283778, TokenName(cfab13d81c0262e698530e522a69a979f8f7afad97c4e272743fe120201e3151): 3574590105}}), datum_hash: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(1366944a0dc97d42df4b5ef692da0b50d364b157596854224549310b))), staking_credential: None }, value: Value({Ada: {TokenName(): 13351802756234715509}, NativeToken(MintingPolicyHash(ScriptHash(3333493a6a0157506c83e5cbc9eb143af73e261ebc1da2e7b6ca4658))): {TokenName(04b52fc497106ff6332109b2695f6ca120d322475d948f150a5cdfa27ca4fd74): 3492284099, TokenName(1236a2f81af40e3459ef7519ced218c599fd4b0ea10e5763cc2f75ce3347cbb3): 4047643179, TokenName(1bf54142556d10216306606dd0017a42e32bcb5d8a0de7fa9852b36f6dacb0cd): 1683687412, TokenName(57eb0883f6678dbfbb4cbeea135f459ff288f7318c8e42c36fa62b0bd9c30d47): 4289493069, TokenName(a1f86dea69bfdee6bc21ba3b7c2c09e9fc60c9fdcd8c42365b51cd4540f42019): 2995685947}, NativeToken(MintingPolicyHash(ScriptHash(9ac99cf97e2cde774e506eddd63986fdcd865e0c9de39b1e3c9e5a4c))): {TokenName(37bb89ba393b3e5bb675deb498fc172e4d1648b44b7ef506e63a808fe753772d): 3129145689, TokenName(3c4568114829f9b232f1f9d956170107f29b8b0c5e8019330bfae84cadb7c193): 1156157674, TokenName(cfe957c3c20d32c87b45c9f88aa7d30e92b1dcf7d41b4db1fe2f40525b4ebd25): 1223547497, TokenName(d41ea6e7d657fa623551aacb2f8efafd9afc4dcc37e8081428bdef7691a9611e): 2198119818, TokenName(d5384a89b0e366d4c400de9d0e5b12e2393b8caf118a0c2b459d83e280ca4f59): 805613717}, NativeToken(MintingPolicyHash(ScriptHash(a26a00aa6e9f2117f9138c2a9ff5f76ee2656163b7118db1786ae38c))): {TokenName(4afed342390256dee5d3d9b5c47155873dbe02075749ddbedc599343b2fc34ab): 2929375856, TokenName(50d6046903bce5a7fbff220459139702f1ec2c8a57aeeb4e76b67379b6743efd): 2409147650, TokenName(70d35321ce9dd1b41711ae1b326241da331a35a6ccc464c727922068a67fbd4c): 1766121644, TokenName(808217e1ac34641897a824d1f6769fe55a1ee4fda6a59bd3f1f255edf1448f80): 1248412111, TokenName(a6dd643fbeb6d5a9cc8c318115ef704de77b11fbc6acaa06030937b216096f9c): 582545510}, NativeToken(MintingPolicyHash(ScriptHash(dda30ea82e162802f2c91c65ed47afaab607af9c4a8a5a1219400604))): {TokenName(5b41ac71275861ff2ec5dfa1de2990c19b417511ae4478d9e89ff7b483067172): 3449412633, TokenName(a3da564c457a2435006659f191f8b2c21b767fa8ada7f44fcea28708151aebc4): 3439364834, TokenName(b52601702a31b72c6fa6184f97e1618e6edc802096c30ec7a43273f82e83546e): 1845099946, TokenName(b81594580ed31cca2d5d2983743c2ef3cd467feb798cf9125bde3a1e54c9ffbb): 2233546504, TokenName(de7a95404a66c0064191243f052add40850b9d41b362a9a67209467d6cce1af0): 1194625508}, NativeToken(MintingPolicyHash(ScriptHash(f6af65a78fbbdae33ffa1dc33a7d00fc9d55fc9c31a57b595ac21f73))): {TokenName(199ae885b98c11ce28a6aa0abc2fc4301438ef1e5e2adf9a9dd2c65eae8bc25b): 1672237215, TokenName(28b5c3af3d1956aebeca97354c6c5f1fea5bc4cdb96306cfe42cd8b8a3834e02): 2522397673, TokenName(840c246ee8e65971214b2ce1842a83fdfe9dfccc2f6ebbaee6382afd0d548d7f): 3508342103, TokenName(a7e5d3b09cfa389972fcf38cf5c9b4669bf3d8ac8ebedc8f93188cf8bb102202): 1316451132, TokenName(e11fdedccb9d317851c500be87e44ccd447d335a8587413b372cd27e5c9f7511): 2841616680}}), datum_hash: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(247ec5924a2e8d049a1ed1a7c030b7b945f77481fb4b4e905017d562)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2450805533), transaction_index: TransactionIndex(3725415279), certificate_index: CertificateIndex(992538979) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(3097ab6b9f11ac41b2b62a2b187376bdb749894df054363cf85091fe))): {TokenName(00652e47ade1743699fd5b1653446d5f1a1feba494061001f85f78d66b6461d1): 1911922049, TokenName(4ee8a0136cacff3b1b911ef1ffef30296fc068829bf2baa77467f15c03164e16): 1242398632, TokenName(5b9ad3b1912c0bab37be2e540abcbf3f2ccc0b03ed815db3afbe66d1f646f631): 4054076827, TokenName(cd32139a69d6b6325de16431451cca2b91e574e7c8178d0e09d5fd99031eb492): 4287503836, TokenName(e1c9456c964d607e97926955eaaba6c741212527e1aef265f723a485cac705ca): 1886959299}, NativeToken(MintingPolicyHash(ScriptHash(5ee25ce0cac04974b19bb292e6125bacb4745f01cade2a38f2fcddcd))): {TokenName(40106f4e64081437699085ab258ad8cb7caab53c0bdbf1d3c4d26b626ed1cabf): 1982887309, TokenName(84f985f8d580c7e5fb8ebfcf846596871490e5d7cfbcd7e3ccc2120d305b76ad): 2169968749, TokenName(8dba0028dd4d76f77fda3ab995c10060320015a5d60e783f2a08bc46b6dc0413): 4127905617, TokenName(99c65e7a82bd3d31b90bc08417bbf1dd5d9792ca23665cc19956d7d20e05efd4): 770108781, TokenName(9b0c9da4b82f393883b6a1acaec32469c887a16f9c53cbae086c6ed5cc18d30e): 3974021517}, NativeToken(MintingPolicyHash(ScriptHash(6e24ebf6513091773ebd4294fda9bd6b83e64c2a0353376dec8127d7))): {TokenName(0e695a2befebae2598cc133574f4c82e9f90e9e3aa78a3ecc97bc7e36a18ed71): 3082909143, TokenName(770727d6f3e76fb630db24f10305e3bb455f6c8375f5f6c39002b9bb9cf502d7): 2029396459, TokenName(88010c000289f7dbbe362b895b698f3a0b61cf43a3f01d681c122797e30d7fc4): 525582582, TokenName(88d3306e41a945c166df7a4e76593f614fd48eb034f2cd4ba8355220b223e264): 354710608, TokenName(c9bd4cbe78d3c0a251480c0449029b3dc6de569e9df872fb3829953abba97485): 4143978965}, NativeToken(MintingPolicyHash(ScriptHash(87689a7b197a246ff4933f38181eb1a772a051356fc9f16c21fcf4dd))): {TokenName(99861eecd1fb25e288bbc4eea32469478d11707fabe67998a28f969fafe6145f): 4004005865, TokenName(9a7c48fc20693b162e4f3f2e274567b2ccb4e538f4a88b3fb88d9b5635253e8c): 1034688184, TokenName(cd916da66c003e332443a3c64cd79aa142abea71d8bfe2e2de4993ed41a77f0a): 3233870665, TokenName(f69d57f73c6f35b14fcfeb0d75183db23e64ceae817984509b83537554673aed): 3999837128, TokenName(f844611c343db68f6d9bc7e8d927de6af6837fc6bb1c94d9502a4b8b72537644): 2503352227}, NativeToken(MintingPolicyHash(ScriptHash(d317388e192a34f51df8eec430e2d53aca7d04ad315e0e3074af3fe1))): {TokenName(10666a619d5c83a471e786f9b81c9ed1a7a573334c4667169f01211e1ca0b58b): 314137795, TokenName(11851deaaee3721c83ed53b211e63356dc7afa3f9f1dc9ebfe75e98f9eead160): 3135406278, TokenName(8d2a1bfc081a54fcdf59523de72bee9512b4392c07d61377fb984204e1ad82f8): 1963530350, TokenName(a00d6bbc3b0fe894277ffa8d0e23d9a23d5463e8d8c426a8ff45b29a3528a5b0): 1440594174, TokenName(eb7daf04a6aaf9b17ae0e21436c3c694b2531f31d176f8fb0878f115757352ec): 1860614444}}), datum_hash: None }], fee: Value({NativeToken(MintingPolicyHash(ScriptHash(4f4ed647979104581198f38cc33bf18dc9d39eccc4c7847ea67be5f2))): {TokenName(b277a337e0f7c277dbb940662f774374d0cd4fc412e1c82f75da3111527ff50e): 2712245377, TokenName(b73f41ff0bf0fd19f4b91687b0146b48074634cbf18429d8104f0f0e806c47cf): 2724470942, TokenName(d6d0537b727c896b09eec212320aa1326488a794c446bb4218145803866cc1ca): 204951555, TokenName(e5fdba2517c9236f6727ea47f6269686e7159ef08c1376f18145331d7272b16f): 2946639197, TokenName(ea8f9bd188f63366fd4b36751fd19400e1c57b78a43ce9795b57b64b7c13b9b6): 1514162206}, NativeToken(MintingPolicyHash(ScriptHash(5c7fd335b0394b5b2fbf0894beda0a21f0db530ee5df4825222da8b6))): {TokenName(1d2eecaee62e606b2b409f07344c89249aa96f2f5648df7fc1bd1a2f7e1f0abe): 3149830167, TokenName(4640b5aa19c9467a8e2b882cbfd05568a123ea28523cd49071baa3e0aa240234): 1114408917, TokenName(5c29ed6d0c1270e719022fa598a198daf6cf61443d0fbf381949426102a0acca): 418466267, TokenName(bf86fad3ceacf34cbac8250997970e1eddf0c80c37447f41a0d81559026e6da3): 3114176567, TokenName(d487d6d1f2f03e7d5088ce48f660c92a1eb9b233b7a5f583229691e5037a9636): 371392486}, NativeToken(MintingPolicyHash(ScriptHash(96e7a3aacfcc19415ac2dd90d7ce6d66427ba594379d42f3b5b4e375))): {TokenName(17216189aca3503be5fb66d78f3b73839cb2bbc6fd9d9b281c9b9c7901bf102b): 2512001971, TokenName(18bd046901ab530e298d0ba093abd80e227e7b1fbc466c95d35d7030eea9a286): 3202447959, TokenName(2f02812f7bb3eaecdbc92fad8258f5d6b3db66d3080427517a8554050347a9e9): 2603671614, TokenName(66301a2107d40924082226d0f22e7b795009900f7a3a0328899435d439da6286): 403207560, TokenName(85fd2679f45d1d6b50cb36f5d64b85b65dee962d5be1bff4f57b377a8f35e7ec): 397536103}, NativeToken(MintingPolicyHash(ScriptHash(a978ad1fbfa0f0754fe1e3264ad0e7c92d4d23aac03f2ae51ce83057))): {TokenName(8ab36cea5ef850b0ce53f382c68c621ea705d5495f86db0cf55078f656b3ac23): 3764521872, TokenName(c98797bb1838a97368c48e0c601f437ab8ae4822c38f93403be750a123c5a1a3): 2621956, TokenName(e178df31fde9c97f1228734be022968f16f7fe4d78c9a92f966b50e679c9a72c): 235299451, TokenName(e74032fb845768d55c40a00ab97900a863d7e406f5baf84a349ac4e84beb38f9): 2784055924, TokenName(fdd46af0d5d1310646186a959be3b1b317b92922110841501c8c18420babc19d): 108793125}, NativeToken(MintingPolicyHash(ScriptHash(c7d0db00c2d19e9eba8c3b9f619fcfe0e43046cd8117eefad382e389))): {TokenName(30df48f1d8bb627bb182a2da47677c29674baaecc70d1e80db35f3bb7a40aafc): 3190993488, TokenName(9421c103289b7f6c602ef2ec25d041cc7015dd05d741997aeb30238043f7a424): 767833255, TokenName(ad475eb7e695eaddf149b7bf2ee885456b046dfa6838b446d888c9ef8782df8e): 2424177239, TokenName(f55ea0beddfd731499ae4dc3018046918aeeb3d461cb2a1309ebf87903d31c4b): 827024207, TokenName(fea6a093d67c81f8161c51bcc0d9e137cd97042bb4f35629fe7c96558b085a7e): 3082106472}}), mint: Value({Ada: {TokenName(): 4484255954812903887}, NativeToken(MintingPolicyHash(ScriptHash(16c6230f2f56186845dc2008bfa823db71539a5ed563f176250edc06))): {TokenName(35a0d926f60cbec1e088955fbbeb5aeec5203e3612dee4a880bfa997e17a684f): 2465735697, TokenName(6267b28a797103321be91df5a3b7c199e16d279dce457f8a856f4b2517313ba2): 251472862, TokenName(7caeb6eb3b2e9b7c902821836e4c101d49747799c9b79d8d5cc582afbaf6ea34): 2418753347, TokenName(9cd555aafc3e8fd7b91ba539f952cf1624b746af7216b7ec661dcbce62b3f284): 1685614024, TokenName(f831a804a92fe5bc468aef8db7482d967763d1c0ebe41b1ced5f4aa5f69e5692): 2725077761}, NativeToken(MintingPolicyHash(ScriptHash(4af71503e23015e31ff35994b1cd2c820b484baeb21fec7360392b1c))): {TokenName(26a82b25adc3982dfb2e1b9e9ecd78db0a428768ffa6304b6bdee9ca7809c947): 2509698740, TokenName(544b3d47be42de0880c70db985bccdf4368e7875d2f655f20d721363307b63d6): 4111962369, TokenName(54c885afb2f13b7aec9ed0effbbc81662ae2a0053f56f8807aa62e09d537ff24): 4044612435, TokenName(87dbe312baf0d7feac7548f9a155a55569ba7aa6c13d78b84eb09032ed60ffe7): 1674068454, TokenName(bfb1a81ac798b327de792926e337cb4899c4668a8031ec408d0cb98af0134564): 2932569205}, NativeToken(MintingPolicyHash(ScriptHash(506554a77c0bc35df1947eb3250fbd9e292f4432a4a2ff74128a397f))): {TokenName(439d05f17c19d161244fa33839aee5a99bd0d1d96ef3ab76df7030e52c45c774): 267031124, TokenName(b78a7e2d0b8f0f0c2d681890b1993e4d07475ece09b8299b338a59d5e34ef741): 26262469, TokenName(be5d2c2298065f139f51271c2152185f1439918931e2a01fad8ca4679903bdba): 3444892365, TokenName(dba75da7e05379972a38b0bcc662964b2c54c90d64c4827248ff7401f23faab9): 1821064483, TokenName(dbe5b65491100fa42fe74d95699d52141d711578ceb72e76e80b3ee6126ba736): 938105178}, NativeToken(MintingPolicyHash(ScriptHash(c52708db8b7bf379da28b854585b9e41e1ef4ddf280637242234c7c3))): {TokenName(39304d824080db9a5f92393396fadb520caf77b59005cdab0e7577fa3302175e): 1358842347, TokenName(9625a14dec1bdd9c5213a0bdfa94b1f2c1a0b7df4ecb242793c14a3b31372a31): 1058507408, TokenName(b0138894459709be46c58cb72296528b733914a9180fa065276c9b0d6e3903ae): 357692970, TokenName(c8758a70c8f7c460a6b8ae7abfdfd1ca71ee6b3ba1ad0715ff4e73ee185c2fb8): 1430671755, TokenName(d1c16ca432c4c1cc92ab405a97187a95004a3fd080124fde773bad74ace36b5c): 1799919870}, NativeToken(MintingPolicyHash(ScriptHash(d5094112526dc3c02d9b13f9b413d6cff40fd5c49b7d527ed6c77f41))): {TokenName(16ea7c5ba3b66835508e420048d0dd8d41dc2738491eca2c3abb90e44288e86e): 99281503, TokenName(1f993c4e33549663b914e109b07febe0a75720cd4960868b2cdf0a5d5843f22f): 1347731095, TokenName(2139f3b6f0f5a9e72ae394625f74e1a12ef8532cbc0ac071d67fbb3b95ff9698): 3585489705, TokenName(6afa274e6ffb96915d6db3194efecd2dde12f27aa9c5c34df9696bb502175d17): 3202351991, TokenName(a84e820c2e895166915d731acf01b890a13e90cfe15270276c6a3768fe0d1544): 3632298943}}), d_cert: [DelegRegKey(Hash(PubKey(Ed25519PubKeyHash(79a0ba43c4dc29215aaa34288b7b224ae89601f3fc5389d20766f02f)))), PoolRegister(PaymentPubKeyHash(Ed25519PubKeyHash(b95b9f24ec9eefc8844d44457aaef71f3e8423fa97bc73fdd8eaf96f)), PaymentPubKeyHash(Ed25519PubKeyHash(f54ab714fa6c5a7cae872c8cdb41c775bda9884f584a167ece55bfad))), DelegRegKey(Pointer(ChainPointer { slot_number: Slot(3263202212), transaction_index: TransactionIndex(1615444231), certificate_index: CertificateIndex(3527070464) })), DelegDeRegKey(Hash(PubKey(Ed25519PubKeyHash(8615ab504d3c130a55f6a0df284c7567b4a364d7f3cf84f7a198b4a1)))), PoolRetire(PaymentPubKeyHash(Ed25519PubKeyHash(f8230b5a2e33017dc500b50a4d6ca2e972684a1a4ea702f02847fa35)), 233332572)], wdrl: [(Pointer(ChainPointer { slot_number: Slot(1937832358), transaction_index: TransactionIndex(1604387045), certificate_index: CertificateIndex(2991349637) }), 3602438527), (Hash(Script(ValidatorHash(ScriptHash(f80da816a225e3d053edb7c0a4359ff32b912a281520270d46198cd2)))), 2565874968), (Hash(Script(ValidatorHash(ScriptHash(648918be182456922c4fb9b12bc741aa21d65671a89bae866e4a9b22)))), 537790796), (Hash(Script(ValidatorHash(ScriptHash(78068cdbff32a36b7e5cba9020908329833f1f4429b661fb50aa4b32)))), 1854272316), (Pointer(ChainPointer { slot_number: Slot(60968441), transaction_index: TransactionIndex(139981048), certificate_index: CertificateIndex(3245224625) }), 3908710790)], valid_range: PlutusInterval { from: LowerBound { bound: Finite(POSIXTime(27131238)), closed: false }, to: UpperBound { bound: Finite(POSIXTime(706034310)), closed: true } }, signatories: [PaymentPubKeyHash(Ed25519PubKeyHash(ad36d045a57bf97ee7bf174af25891d8353250891086da213b593038)), PaymentPubKeyHash(Ed25519PubKeyHash(963567c0e649c14a9a382c29c9dce945685d117d6d1925e142b23585)), PaymentPubKeyHash(Ed25519PubKeyHash(ecbdcd8fcaaf29f36fd1bcd6bd10adc07058e101096d7ceee5679218)), PaymentPubKeyHash(Ed25519PubKeyHash(62c7695cafb6cedaa6d472ea0a940c61be92e94fe9c16ac2120746f2)), PaymentPubKeyHash(Ed25519PubKeyHash(b48e241660b29965fbe69fe7715ba77da52b44b7718193d6e62c8876))], datums: [(DatumHash(07c4afac8aa4febb64542fbcacd4302ffa63b4e839c2afd30e1f67fdfa6573de), Datum(Bytes([155, 31, 63, 241, 225, 191, 146, 49, 122, 27, 155, 59, 207, 177, 102, 7, 227, 113, 176, 183, 38, 44, 146, 16, 184, 183, 224, 244, 49, 179, 141, 252, 227, 31, 107, 159, 204, 75, 37, 33, 230, 81, 148, 155, 105, 192, 129, 255, 178, 64, 48, 55, 214, 70, 87, 226, 70, 79, 147, 223, 60, 247, 33, 212, 193, 70, 115]))), (DatumHash(5721a5f6c687c22b7c570d6aed4fffb594152802ea233d3d40f7e2165e6a1e64), Datum(Integer(-12882160068102115190))), (DatumHash(edf391db47922f85345ad6d6a2b4b6b3127e3cf3b7dc3606a0e7c906536af5f3), Datum(List([Integer(3907966504468315242), Bytes([39, 242, 75, 167, 202, 196, 13, 129, 184, 13, 32]), Integer(6525451893793250397), Integer(16764816957189074843), Bytes([245, 208, 254, 72, 135, 209, 189, 179, 20, 1, 43, 244, 216, 38, 21, 7, 126, 228, 245, 110, 165, 170, 198, 223, 176, 165, 229, 12, 38, 174, 117, 217, 27, 24, 203, 254, 189, 198, 33, 102, 154, 74, 72, 183, 186, 228, 67, 225, 143, 174, 63, 161, 81, 221, 188, 139, 227, 111, 43, 6, 80, 79, 73, 28, 203, 137, 46, 118, 37, 139, 249, 32, 89, 129, 50, 112, 39, 212, 208, 182, 211])]))), (DatumHash(c480643d03944212c448a34b299112f4c5a413ac456d2187d7085aea1fd7540c), Datum(Constr(3887588070, [Bytes([15, 124, 53, 171, 89, 35, 14, 221, 6, 253, 13, 15, 211, 61, 118, 42, 152, 184, 133, 131, 153, 99, 214, 173, 163, 85, 5, 92, 129, 247, 170, 69, 3, 248, 43, 108, 139, 24, 176, 6, 112, 115, 220, 6, 136, 103, 184, 64, 35, 72, 163, 232, 42, 166, 150, 140, 69, 230, 152, 230, 175, 178, 187, 154, 42, 135, 179, 103, 159, 67, 177, 52, 243, 20, 216, 235, 235, 215, 209, 60, 197, 44, 103, 10, 210, 91, 97, 24, 184, 73]), Integer(4317692085593261322), Bytes([24, 52, 41, 140, 0, 221, 148, 139, 145, 76, 209, 48, 197, 219, 62, 18, 128, 191, 62, 48, 19, 212, 113, 181, 225, 186, 0, 153, 64, 136, 32, 142, 234, 231, 156, 97, 220, 124, 133, 7, 18, 28, 144, 194, 60, 34, 42, 155, 151, 65, 34, 15, 54, 121, 97, 60, 95, 127, 169, 73, 247, 202, 125, 59, 120, 164, 36, 86, 149, 191, 216, 61, 237, 100, 155, 130, 195, 42, 86, 114, 207, 124, 131, 153, 4, 201, 152, 11, 47]), Bytes([188, 95, 116, 198, 186, 117, 13, 98, 227, 200, 223, 87, 163, 7, 168, 229, 216, 128, 12, 168, 243, 170, 57, 78, 108, 124, 24, 229, 141, 222, 120, 34, 65, 225, 73, 22, 58, 84, 155, 153, 13, 219, 47, 183, 55, 37, 53, 20, 113, 215, 239, 175, 148, 237, 27, 137, 111, 213, 124, 182, 18, 42, 145, 221, 124, 82, 24, 193, 62, 156, 159, 136, 187, 183, 56, 36, 19, 91, 250, 53, 186, 67, 182, 152]), Integer(2739006915478014080)]))), (DatumHash(5ecfd3be33d50f1700eaf26bc89b5321440da25da6a6b3cd28239dc2ee862c14), Datum(Integer(-5478635978075832525)))], id: TransactionHash(10070c59ae8c54e6a55f5fd485be722f2188813a2d4ee85b967c1dabb8844024) } -cc 5b67775395d00084146293e9c736691f6b9d7e7c02bd598321e92dbe73e96092 # shrinks to val = ScriptContext { tx_info: TransactionInfo { inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(000000000000000000000000000191474a76853450311e459ea0bcbf))): {TokenName(02b8261c1a919c2a4edc1336f3f800f7d3ce205b855b663715ee419987f88bd9): 3741398057, TokenName(122e280b426bc6440c4914bbab64f6716c473cd7a834e69121531a5fafb8601f): 654288552, TokenName(1ef9add2aa5b5e0398f77271c961698672d4d5fa325e6d013ff5c56bdfcf7cd3): 3559370096, TokenName(5fb8fd82d40a6718a99e9dfbec998930d8bbcae694172c5fda599c34109186a4): 2326038209, TokenName(f29f9fb017cf64c52e99aa6f929a69a338ce851fefecbec0de399dc7c17eca2f): 420951512}, NativeToken(MintingPolicyHash(ScriptHash(09ad47fb5d427c06ead6c080704c5b54db22f8839e5d3dd3d9f3be7b))): {TokenName(0cbb0b58cc8fe06f68f1a051bd9b01139e29f9df94c41af7e9e613ca3f24d167): 3210002966, TokenName(1bfe601a6acbcb51b1ddb78f72c513d2bf675f083f2a9cb11b6271c23ef88303): 2878634423, TokenName(68c65ad36070cb103054fe517afc32f834795cfb7b396e1f81294f3c8ce0a7fd): 3424265698, TokenName(77cdaac6df8e71fbdfabdf10c59a8ab916d164f6f47962e1fcdf4a4fdb08fe57): 186575199, TokenName(89c7383b9b247ff0dc033db43bfa07e41643607d4ef1f723a9042aa20f97628f): 3027129771}, NativeToken(MintingPolicyHash(ScriptHash(5c6028075971111bb7d5a311620a9f9598a55012b17fcc9bf34d8e51))): {TokenName(0a4881d8358303a6783dff3d3a73e595e5f8c01fab43cab26b5cc9a5a2adae59): 2460376216, TokenName(2345badbe25dc64f27c6d95aba4765b2c8f296f5e289ecdb90682206f6cc9359): 406994353, TokenName(a49de8d5803e9b560ce09a8af3f35eb350bbe87c8fd05e5ab07d1346bbd1059d): 3808232177, TokenName(c01e87fef3a79fd3341efbd3f18ee3d7823871582944fb9f21554a2ae9c2dc03): 3723094029, TokenName(e1757f18a06e8f4d074b922cb8df6a2be2efcb009808683347a8556521f07065): 820504965}, NativeToken(MintingPolicyHash(ScriptHash(7c6669cdc6f244e73658891d9b1e325f86d93d90a9e7502c797f2365))): {TokenName(155b07443913def1ffc7519d09512b79cccfe7ddf41f88f03b40e75a018b4a50): 638751769, TokenName(1e70a74aabf7e7ffc1971ca0729f393f0ed1c62350688e19d6c3a0315bf5a1a2): 3770825174, TokenName(a0465ffbd5acce57dc044b1268690c8fda0b913138145471e5d6e0fb3f15adf0): 1179534545, TokenName(be97d351b0dafe427bccf0f681c003c0bc89b06df02f9f3189195da954b7de01): 1552631648, TokenName(c0dfc617ed50ddb1e558474e6279c9e04ddb7a7c86067263b2aca5723a24687b): 1913074831}, NativeToken(MintingPolicyHash(ScriptHash(a3d435f2e7c8994929ba4e35d582110837cfca86e09ad3fa3a211bcc))): {TokenName(00a5d2f993fb2f2b9e81bade8ab3bf17401ace6d37620dbad95b34dfb864fad4): 964051070, TokenName(0259879921cf5b941f55f2c39a89ebd0588fd001e5eda5850c64f9389e1ec74e): 4066364501, TokenName(12121d337fbc5df3c61ff51a6eda2b32a635a141767f37ecb598711960a74398): 200844655, TokenName(421e4dec5dcd04567fb0722a1e22f09be6347d842c0549f5764629c9e20d6214): 1508702313, TokenName(661d5e817282516b0bf2de71b7da3bf3f31eb02b25e973e147cbdd9659f7a3aa): 3223840276}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(90968a9f232f9a4040c212665057fe487e28ce184d4306d903f0e34f7c224096), index: 3641377350 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(6553dc7078f97704252e42ea40751c8722fc88941100d5565d696f84))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(35443bf673c7b6e9a4d9bdc516d651a5d70c9c5e5c57cb9b7140baf5))): {TokenName(0d6c266b803c69c8cf7abcf12f009f3317f141e4e0e8640bc3f63bccbfbad126): 3220666971, TokenName(0e3ade09e2a305d4404ff0e66dd8d8e12afa6a7d31ec6a71636d9efcd45896f1): 3258366934, TokenName(456627e2f2ee9feb907f47d18c372fb02a305af3793eb53db91fe832e41e4444): 310994589, TokenName(68104a07401575ef47973cb5fa1e99c202b0da1734a34a0e59c7b9f093a59575): 1709980727, TokenName(df4a24784f4580939d8572d82996fd0c4c7ca5e8c266feddbf7b45f960075a1b): 1789775407}, NativeToken(MintingPolicyHash(ScriptHash(58596adbd52059eb96a87b60716545d064e07958131652dabd266ec5))): {TokenName(20867789de37754aee286df02b2d990ba7f6269fa9000ce35f8b4cf0fb5dea34): 3812777250, TokenName(6412c6875897a645fe2897e359e636334a2e9e1371292c09a132c64f7cd4f0ff): 1539272861, TokenName(662cc9ab8cf6df0f65069b86911e3ee924ba3cdd9e39e422d61c77032da139e5): 799707873, TokenName(b7f3fb70a4cd95836612de6334d68bd4316f357aff00d39b28e380b9f26cb2fd): 1299895896, TokenName(fd4d076e65e99ed503be37ba9c4601c11ed4b4bc8d04e6db25af4d5e4b7a3f81): 2058427791}, NativeToken(MintingPolicyHash(ScriptHash(6cfbfda004d5bf6c151a42c5346a964593497dead12cd96af9eb3eea))): {TokenName(2caf6a41e297f15c679cc92b87889c248fc443e86c9ebf4984dbb2760305fb99): 2039368744, TokenName(4699c6cf992949d42e66b83ef85ea3e97013954367e81bb0f312e7ad8c5effec): 822612872, TokenName(b803b6de56c16a077dbcfffddd6244a272e3e145e92d3764f59eb3dea01629c2): 4243055907, TokenName(bb1d53625c876b46bcd5318e00a74fff66a73baeb5f76a22ad7e72751f67d97d): 1460137028, TokenName(e5d3b3e8d61b256b5bacab98b24d63adc043260a48c90e57b5cf42c28e6d85f3): 624435344}, NativeToken(MintingPolicyHash(ScriptHash(7563f3d45817170b9d62bf297011c8e97673742663f717501c8c2d65))): {TokenName(4189bbf0935681c636c80b1d7174fa72fea56b8134b37700f5ffd281a17ca51e): 842749751, TokenName(7bae52f99dbf9370e82919e2559076784048ebccfab2666969b6d14c6c8a9fc0): 3797446519, TokenName(bdf8a0ba95bb1a9163b899eb36885da0fbab28fec4bfa33f0c7f8220d2f08b23): 34063203, TokenName(bf1471aee72a680fc44a61c367d54329011f96518e3f9f9499c2544d0ff9cc73): 1140296512, TokenName(efdde985c6e67c42b2dbb265ac37de2367f534c5c41d092ce6ccebd27f602416): 3103884496}, NativeToken(MintingPolicyHash(ScriptHash(bfae0e5f766ada3d5f465826372272f0bc04ceb787a72dfaa2a0b7af))): {TokenName(0804e35e6de2c11f269a8fdbb1a140a6202d1572f6694f9d31343250ba6262b5): 1800349224, TokenName(1bfb03fca76bbe5649070c25c428cd471d630a1034368b9666657d241d25427a): 2875064961, TokenName(4350135b9fb0839afad76923a1619f7625b799f8d6b930f22a6144c28e61f3ec): 2290497488, TokenName(6ef334575535fe2171fe3c73b0924c3819221f1755a15f118ec7c8a41fb2ea46): 900110570, TokenName(b0dc8a3f410328a6594cfcf03fb41dea7da07242865d5613123c88387423f7e7): 2605534417}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(6a17f19622e54a4aa37b064ee4e24a20dfdcb07b3de6f47fb3c371b6f8613749), index: 100036086 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(f9760bab71336319d2f2bb914f6b6d330a23d1506a487669766aa7d4)), staking_credential: Some(Hash(Script(ValidatorHash(ScriptHash(f3a9529dcaf233c0fd0adab1b69e37fe644c6d4abb992d6392b34777))))) }, value: Value({Ada: {TokenName(): 11066297076483743775}, NativeToken(MintingPolicyHash(ScriptHash(031d9bb3d1411830b73ba1fc049615e9f45fa540eacde49571f7c301))): {TokenName(3f1d1b0282cd4fba8702f11fa55b09d992e71e91105dc8921361be00b1e8cec9): 1574137814, TokenName(a3d6f82f057ecfe85e84598adf4f65f45785e2f9be068eb50723dd6c0db7888d): 1938268472, TokenName(b5cc2ecf75a2c0b216fb3d8205646ea0b0e927b64610b3bd55a570d1f005f0e3): 676331517, TokenName(c5e3402a575a7c6ae3e212cf095049be55803c89dd9dc3d91b22bc555e33234f): 2841681065, TokenName(e046b40f7eee648cffe0626d3e2a8f7ac604fce6d45e60ef5f1c269d4ae6973d): 1431309354}, NativeToken(MintingPolicyHash(ScriptHash(1967a4a232cc3759fe999a7dd98ae362e4a40fc39a8aae762b6fe684))): {TokenName(3605b2c90af1caae18eb81ffbb2b368b175a884531fd3dc9bae80e362395351b): 4060630825, TokenName(417870f35c6e30e5f3a4d851627b6130ddf0499ad40efc555fb831000c7af841): 4124959856, TokenName(484975a0f681a225d3385a10f2d65e6284049c73dc40db5f6f2779f3d2e4252c): 3927739254, TokenName(4c3e7b6caaa12a52a6ba46b497f3179c2ad56964f2157112156f73284ae06be8): 2891551242, TokenName(664d4d2357681f8194918bba9065deba4c259dbbc5a884df79decc6865d2334f): 4068940355}, NativeToken(MintingPolicyHash(ScriptHash(5d44c88feb6fd0af06f7771634c378184f55ae4bec36d1514757c70e))): {TokenName(0141ef48409c65b88ee9e4915072dc70fb0807c1d5a2edf872594db7efa5d451): 1863090885, TokenName(28ec4004b285b5ea031ab117b7ba8c861c4c0e87224e25a3779013862dd1a54e): 2618154546, TokenName(3d78cb6af48805c0629ed76522b460fce1c67a029653e5ae0d28a6f35a1675ee): 3906139411, TokenName(df643c48efe37d66bdf259d3e089600094e1eb74a0627a51adc0001b13c4b2d0): 915052555, TokenName(e7175a657466a47834e5d7588c9299afde82db686fab8e1d9eb8c5c5c2cf99cd): 3407814322}, NativeToken(MintingPolicyHash(ScriptHash(cc8714a53e1f4dcba661b80fad7070c3fc90b76986a89e51752cf98b))): {TokenName(a7f41f959a06fe70f6220f5b97522d48053a72e7917c1553ed915ef84f66704f): 1973847202, TokenName(a8ae516b2cf4e515ffb674529e6f2258a36829b19fd3fd92ae71e2cf783bc156): 896623724, TokenName(c6568a357f6df7853a1e06ad5bd141cb0de9776e7b0094fefe9241dd53777878): 268506596, TokenName(cab7c2316939386ce4b949ccb600a2bf42c5245b03fe48384e5b4b887881a95c): 123529537, TokenName(dce1f1f8bef90320a2e5cbae9229febf8ee19430bcb0b588aa98c3cd626eecd2): 3870790961}, NativeToken(MintingPolicyHash(ScriptHash(d94a89403fa59a90d30e24d4fa2d3016d11c7d54225b6d15a6dfa362))): {TokenName(50bf6d1415b195fda1639e70a69ae25bb8afc4a76fcedd55e2a9aa6813736f97): 1884504357, TokenName(58214e0e88dd2b118a788fe10bf71420cda84bf0e45d3e6e20e109a5fd1ba53c): 1968034309, TokenName(5f0764733b323a02bb0c92cce9fb830c068d689d30da5813b36ce733cdc14b84): 3976413660, TokenName(9744f243b0e341e18a308a1df8b476ebe076f1f30e7201b918ea9052ad17d400): 1491965510, TokenName(b0fcf171cb061ff37d359d337d3a8926edf3a051e00fc2c647b00d18a6208d49): 1195040897}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(f4c9da0c2f11149a84b29d8b029dc6845e4404626cf09c9f19840b831f6e1fd3), index: 3471291294 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(6a5536fd7cbcd6d15e3f36f291cead975171e36a9382d2cd5651d268)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1892659501f0b262889f4333e1b06f3e29c093822f1b62946bae97d1))): {TokenName(221f39f94ca6e001b5067384db616b6a7acfad993652d5841a08e3c4d30ff024): 2435908946, TokenName(28874851aae59945689b4f67424cbefe463a083bc974077d7697db2f25a4c8d1): 983369265, TokenName(70fc9dbdf7cd3c5c91c23266f33d7074c2bc7a8f1da436241fc0b633f5ff855c): 3942208370, TokenName(7fab7dd506ae6b9b4206545d41f2f78d851acc80a9087f8e53959d185ed5900a): 2836654077, TokenName(dd5d410d8e0ad8189f1b6538559a214a04fe38d987157de9c50e40f7046192a6): 2545022988}, NativeToken(MintingPolicyHash(ScriptHash(2f47f0226f42521492880e6e943cf101db929cd2c3df834177504300))): {TokenName(361ddc1bded66001064ee3ca623b2e456a93a572897eceddb1c7b4bc7e346c58): 785013788, TokenName(6bded178d1d759bebadbd549155540a5afbf88807434ce4e6b50086ed011440d): 2613671219, TokenName(772b8c64b3ab50676580a9ecb60d3545307e4d5a6ba97c667e67e1c10dfeec5d): 1809722074, TokenName(7bee84902cacce82806302cab231771d0d545876782500aab5639e1eaf443900): 2950267549, TokenName(cf9a694d089c3d25fc23ebb4aee9cb0f49629fe92d4aea823aac3ca22696060b): 2670860841}, NativeToken(MintingPolicyHash(ScriptHash(b3388ed819850cdf2e2d912502ac2abb28e5d70a9eff6bd82b74361d))): {TokenName(2e9c3e991caa2158f2737271414d1cc721a797c793b47bce36e9eada8fa58ce9): 263107722, TokenName(8c8e5656a2f9d4a3ef583ad9cbb1782b93b87a879222613b37a0409fcb95d7fd): 3215128855, TokenName(c724c4ae0635fbd270064643ccf1a8cf9f6ae91e66cfeff0d7be3281ceabe5e8): 4168052425, TokenName(ce9d4a1748fcfc074f0685cdbf4e319ded7b5bcdad0ebd52189bcf9b16a588cb): 2351570092, TokenName(d4efe360d4d1d6741c8efd2b69905a389cd0207b14c8185290318bfe63ca3ad5): 3724700142}, NativeToken(MintingPolicyHash(ScriptHash(cba1beb2925fa51eb87b6b65056021353dd5b7449db7c7b944facbfc))): {TokenName(466fb1ee99b1bc4588a62ff02f1d1cfc1e87c5f2a5ce323237994983967163e2): 1657790938, TokenName(ac1c04610899fe8bdb6ddf0e50359268c9e70ece93f0989f1574a8f592d40a25): 1032818888, TokenName(b24b23a373a1b04e93dec3da52e8d39ed80a215b724ae9f4deb35191c6427490): 2572413570, TokenName(b5c7725559b6c2056c7f3836d9f318f0ba04a785e2948a683e03e5e479dd9c27): 3435926259, TokenName(ee8ee91703a3653b45403e5f5291ee77e9d1b101ba8c2ff1e0a1548993ca12f1): 1118399916}, NativeToken(MintingPolicyHash(ScriptHash(da17ce0dd9fc880a89e1729304018f458db72abd131036b33573f259))): {TokenName(48a966713ab5b07d7d73fb48c605c3c3be66a51244f10220827c9207d778936b): 1773930055, TokenName(4d3fa0536f5564719d1de1923eac9643870284f1b8d97c6ceee834531d5af347): 1604427068, TokenName(790e51d1aec36d087a862bb9e3cad7ac523f8d151fb5e6d42aeb8408c68fee13): 4257658286, TokenName(dc6639db2c3ffd56ec090984d0ead105d845f25290f6ddb4f443bff69dd31451): 3146067101, TokenName(dd125c092d4c63b702ea569114f15c41ab4981bc1669350299ff0e41d44b5fb6): 271827712}}), datum_hash: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(5879dd6967db44cedc62952106884e56aecf4e7c4320dabf4b5935b58ba5b180), index: 3485704920 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(16d5ed17d22b43269cf47734eb3b4791779bb8f0fd4ee8228cafd674))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1b64d0eff8511e7e71840c375382108a416a2e1693cc9a8267c57d8c))): {TokenName(276ea1e86fda2273cb40f402d7a2460cb27639da86abb2ef78b0194d1a31a2f4): 1211614096, TokenName(601b8aa8570cd9708e461818c8397225ff3f2bfb567f576bbd75c3dce165a460): 1969511630, TokenName(6175f3679a1cbe4af4cbd9cc838f1e454442b5114a800efdc1cd2dce973930df): 3358248541, TokenName(bfcf5347dc6dc55145329b53d20c6b021025998ade52cd93788c1cf9036d12b1): 3446740241, TokenName(f1929d7ff3c4a1125f0aa39a6ff07cd5c441e5be96f2dbf26c9850f8255e61ae): 101120211}, NativeToken(MintingPolicyHash(ScriptHash(33320ba5d954cec458cedeb51f379d8f1a03c63bf2c766575aa290bf))): {TokenName(659fd962a912782749f64099d5ef62c7bdd76df0e47e801dd52355ec2df96772): 3681355845, TokenName(9555fbee47bcc0e066c2b057dd0b58a7afcf00f683375a5300215044a2e703b0): 718630574, TokenName(992f3a2b9d1bd964fde0f28702f127a5eb6dad458cc9ad0975c8bd2c6dacd281): 3143767483, TokenName(a6d3dc33838e4dd7d5854840cf7266ba2de7a9f2cc645e0bba2a83158d518d51): 4001142531, TokenName(f86ae4385152adaa40bb91d1e324d5b9108142315fef1d745b3383c7bdd5e818): 1669088936}, NativeToken(MintingPolicyHash(ScriptHash(4ec368489e7c56d7f33c05f0f13e0d01c262aea9e9b7b9b1cc4ee5d6))): {TokenName(1da397e76c46dfd80a6ba27cd499780fb3010015fe1eeb414e57609f5b3b33c5): 1021749616, TokenName(4e8e2c6617ed3c8ce96534e7bddb53acbc5466c8b94add08cac996cc83dc3518): 2046357757, TokenName(5debc1e877eeaa22c8f297fdf2ce594d796d96cc321b2b1615c88a26630e8b7d): 2281547075, TokenName(63f44d9e7015d3a4fed840475fc6f044dc05ede4aa87275423d06df5df19d2f2): 989038786, TokenName(9ca72b88afafb80d5cf76f4ac650448a67b22a89cdfd4af40f12c322e2cd4efe): 1137235049}, NativeToken(MintingPolicyHash(ScriptHash(6eb6f16596b164edaeda09d0668c970246766bfb483c8d1b5b626dba))): {TokenName(2fb5aa9f090019f81e67e7e18dbddd538112e7be1c05c7071887f00a425d9b2d): 1239704588, TokenName(4d8ed293429a0b79a2f49b6647a018642cca2d18bae093d15437d0076d82e8de): 1776598507, TokenName(7b07018feac1207c443cf68d29249e633a362922c4d748fb7f4cbd943afc6b4b): 3822481022, TokenName(874d2a492dd2b6c282b09816503cea74a3374cd8913a38cb5297ef0bff5af29e): 437540623, TokenName(a1e6f7a9b2592d8a74933b6018143fce50f2cdcfe22fe7753c0e3c59a7e66d62): 395590863}, NativeToken(MintingPolicyHash(ScriptHash(999ca846b08dda1099ecc43c7b5e110174d0d25866181f1236ffa98d))): {TokenName(019eb9984fe708f75e2617a90ca8f330b68ca0ea30a43324e62cb2f29792a941): 238253765, TokenName(24ffed416278eca29e73cf12ea2308500a71f889f765690d51b6bb1b1f22a0a7): 753468915, TokenName(5dbb7cc66a29e0a44163d6223794ec202c880557907574e8e0af58b82dc974b4): 3722048720, TokenName(e2304c5ca3f88be964f9b2bc6ade3e3e267cfdae3732df80cbc97d4fc98dbce3): 1151645541, TokenName(e779ad879e44b0dc7a8e40c39908c27fd05993c111ef255f422b6c8e13a98e63): 4157772306}}), datum_hash: Some(DatumHash(657287e635f99601d25672040b09ac56ea18a55960088dd59b70ad7d04fe7116)) } }], outputs: [TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(5410f27c1072cfb57633a166cb06dc7f63d197f57b280dae1c92e373)), staking_credential: None }, value: Value({Ada: {TokenName(): 2236402502608423157}, NativeToken(MintingPolicyHash(ScriptHash(37f5493926c37b8fd2fa750e7c5ac4453500925fed31390d16d187a7))): {TokenName(8abef3b5a2e98a58775628e7d02411c91c9210efb788695245aa1ef9b58aba3e): 1120796524, TokenName(8fe2c5a30b736ae7dc3490502fc0ef84064753d439034097ef9ee379473c7dc3): 3576353478, TokenName(b27b491ef2b05836aaca9ef9b2e611dad4e0ede978758d071aeba684972426af): 83661867, TokenName(be70ed4d37a8ff547c1e575c5573170d1401bb3c003ce291c94685a1fe6b1b02): 3643189005, TokenName(c16f5aa74fb45b833aa6168fa7a2ce1231d5314e62264dc8ebea2194cac41c84): 1032182263}, NativeToken(MintingPolicyHash(ScriptHash(4a4c1e843bf65ecc5ca696ab9cab914183a997e16f4f3fa6265cb750))): {TokenName(1f115bc73e8f1c04d5c3a9edf3b9e83c09b5fe1e3104d8d7cd2bc99df23ff186): 3531971084, TokenName(297ff50147d03a27d09a2de562db7ed2292ccaec76c8700bedc2d135c7944ab7): 1219519124, TokenName(308d8ff13de1001b0848be9e9d13b9697d0417368d989571683c1bba36a1363c): 3605905568, TokenName(bec2f9b28b8a267f3fe5d5d5c711ae27ddf76b3ee505938d06fd51927ee037e8): 3060620575, TokenName(f026bcc21051e5ad2a321ab61c4b14a871dd1d45d61e4f98d8992b59ad983420): 3862631933}, NativeToken(MintingPolicyHash(ScriptHash(4d5f93ccd2c9b5bc0bc51df9555f9a5b3823139c67d859e538204dfb))): {TokenName(08deae698d8c725836a144e4721bf546222c04f47df98acf4e0c4f86534085e7): 2338878597, TokenName(229cc3aba89c317e4e04094c9fea0001c7346be0d0c303803a51896ce607294d): 979340440, TokenName(72eddb58606fb5bf6a259fb145f21ca13150d2830bd8001c47d7d2921cb53177): 1633054632, TokenName(79133b5053a3cbb622df9e3f314e8e6139e98434bf8f48585b07eefcfebc860a): 3762308518, TokenName(97b726bcd8eab247a4811dd05af608abea0db5b9941aee61efbbf6afb1565a1d): 1480211334}, NativeToken(MintingPolicyHash(ScriptHash(6be3949f84d857200364320e1a260682af5892931a7f5e66a1e6b22b))): {TokenName(0e36e47218f60e0e59e2bf44d460ebf7cc8a30b93f86ebea8fa58f6beec1ca77): 3590196303, TokenName(2bc0d6562ad16687f5a8eb2cf42fefda4cbd1cbafd663c8dbe478f89d2744795): 105976987, TokenName(5e5c56d42e5315b2a5a7003427e4e02070a2f222e689c60310a93b6890841368): 4109335879, TokenName(5fccfd2181d9544e2795a4521d2c397ac1f0d7c4a191656c3b604eac4b568583): 1270584497, TokenName(86918a5b0a3342877df524fe304b2e6b4d3c2f11873e14ec3f2ab3e4cb892e41): 3009525002}, NativeToken(MintingPolicyHash(ScriptHash(9fc9a94a4a5090b71f2a27860023b053298e49960420009eeb40e622))): {TokenName(01585c6fbabd257130a002f4c3a91fcc0139de3fff030a9959d0e2018018e963): 171502532, TokenName(56c81ccbad02d0f567ab9299134088a0882b4026bbee5a7d6c5708587f15b5a8): 3059613463, TokenName(6cd1ee5901d7547d5673dc72e07d20a10aa27d226dbe6fbe350185b70b48cc2a): 1483144782, TokenName(88e27c6a9fa0a32499dba4068bf904d8dbbbe7953fbb61f8863d726f2365a92d): 3942060868, TokenName(916ada24b31ac4a91b574e136c2a1c20cb911f14e88a513586f9fb871fdb443e): 1287286334}}), datum_hash: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a8030bfa36be16a64f8ac42b15c32243403ef169c43f61f82ee34f60))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2526288468), transaction_index: TransactionIndex(1423893661), certificate_index: CertificateIndex(1434755680) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(16b697ef79174cbff09178e9913caba27e7fc6388e93e9921a6c7535))): {TokenName(4cf873940e6b18c637aec69c9fd1aafd8e6928bec40e36afa91ba88892a087ec): 65884883, TokenName(5cf79433ddb13b2170a6401ffa528a969f5a4b98aae9cbbdf34276dbe4a10369): 1245109372, TokenName(9aef3dbd3f7fbbcf12acfebcf3c0b15cdbc3538d5b3d981932ba85c9ed7f2320): 3480773757, TokenName(cc20daadb793f37dd582e6cfb6656b0bea4c0b7807b695b5f8a49ea9b2f792de): 3171074411, TokenName(d90371478085e9f9fff95c83025ae4113ac2baf817f810dd466518b20f723505): 2368810595}, NativeToken(MintingPolicyHash(ScriptHash(35f1c74fb4c5ea9c12effb4102533fa0b170e35bce4a8e53369f81e1))): {TokenName(29d086ee45857772eb6be342451c74a5722bcce88df144fc285661d827fef1c9): 1392013783, TokenName(4c3d2ca9248357a385a6105906aa9700c861ef741ff21f09493b844124ab9b75): 725500744, TokenName(8f83c910e5ad53ec564a4c882b36293fc163a535730f37eb706f569e6e696812): 1744470819, TokenName(94917f4b89958bfba62d02bdabdc00a28d0491293a2d0a6770a5629152e605bd): 1150828174, TokenName(f632ac7774b14cf5ae8071a87bcb371ad0d0747157abd598a04d6b1643cde18c): 388479184}, NativeToken(MintingPolicyHash(ScriptHash(67849ecd96a82888f73345d0667f792be240c89d2a0dd4f962fb06aa))): {TokenName(5dc223b452bd882745a3c0f28acee5188a28063806f07af312e29f4ac906779e): 1574752114, TokenName(bf65de834423af4259aa29415d2705532c9bc5553bdb3fae9d88a79bd43a8f70): 736416511, TokenName(c6a2166230b639294ba5b794a809f495ba80e3c136b3f10d4efedbf0473c901b): 287728001, TokenName(cbf25d0dbc7172a5f932660210bafce1223d3420facd2a991d8510fa07ba6b8f): 4271054289, TokenName(eac70ec87a809b8cda02430b90e8041cfce0e9cc09f4e8972cead8ab1cd35204): 3829911799}, NativeToken(MintingPolicyHash(ScriptHash(c87e6ad4a77c08a9cd62704ac664b4847b8d3955343cc764e6799a76))): {TokenName(0ebf4dc6be026d31b6d3e89616a9b854274eaa6b27586684004732ef06ecc7cb): 3331548695, TokenName(714224a04712f420831f663035b5d31e676e11f76070d083912d5cdc9312f0b3): 3198236104, TokenName(8ca93cf893162b4eb0dff19d86db7652f949355b0c0ada237b0a3e6996fa03d8): 19227515, TokenName(9e6f2d32150069f192452f45da2fbb8ed5184f4ebb312744cc638c42756ad4ea): 2833663308, TokenName(a0e5f4ee93c14d2d0acc9d69451b5c4b7fbd492db0b2bb11979f98fb40afdb88): 3016347740}, NativeToken(MintingPolicyHash(ScriptHash(c94de030926a397f8f2eb5689d191ad62b2e55b0baeed260b1e1eabf))): {TokenName(09509d4b63818755ac0f87929ef885c36c51fc130b2b258b97a5c0392a9f1103): 4248747602, TokenName(78946fa16f926786d4bbde8a66a405d90c4553ffd44234518e3a734873c653b1): 3224251699, TokenName(bbaf846cc30bfe5df9a63d2b16b02cf4471aff42d12a9de48f72d75f4a108a3c): 1539058509, TokenName(ca348017e38d302443b33a3884262415bce7c2f81ec8c755533e31139f3892fe): 3749331943, TokenName(d398fc91851ef1074e08e4b9e4bfa89df3eb80f82473597e91df3e6ebf7768a1): 3885424405}}), datum_hash: Some(DatumHash(b628b6277edfff8d284ebc42ddf97d4a5efc09d629dab71f712398cddd60d820)) }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(bd0a12cd4086632eacadff7a35117757a005e09abd27e17182f82474)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2906389819), transaction_index: TransactionIndex(2498004148), certificate_index: CertificateIndex(2910959286) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0cb2a99edc13cb44382b865663f5f4a65dbc24e7841ba2aec5011028))): {TokenName(2c1184e9ef870aeeb81c9d0b3840e409908a48df2dfe83aed36b55f3167138dc): 1647705484, TokenName(8a774cc8014f0295cc6b50d65f61af46bb85b2cb26644bb9242642dbc2768cdc): 1375149956, TokenName(9e43844045f151ab9a64a727946b9c6d80959ed239109c24c2c814dbea4c09dc): 3736400037, TokenName(eb0e8c7312462a2388c7b76eab0e1fd8388ca9b54380efef95bc2ef4ab130ca5): 2516519196, TokenName(fbd7769644ccaf2a55bdb8af9caa0276101f7cfee2049b20d5a653fc532528c7): 1753111857}, NativeToken(MintingPolicyHash(ScriptHash(1d5428cd7a033b9b904169b213da8402625c298f88dc37a50be43d8c))): {TokenName(0145d030a9b4304b520b1c60a5fb897dd053b310030df6c5131afc4245f874cd): 2946533521, TokenName(03d49d46b9f69298a585bb7759c1d2f4c1bfce7d0187692c1897cbf2490aee00): 1883058736, TokenName(05e6883aadca625019882ba68fa8cdb1fd8267adefbf56ce16ff63e0c5daa9a6): 1828812533, TokenName(3d9cbd49c03af33640e1494a94f250dc97b826bfbaa4473a9544b4c96d062c64): 423948032, TokenName(a9284081504726dd673907aa6f6b0f4b4406e69474a9d8346f47d82319dbad76): 1980557188}, NativeToken(MintingPolicyHash(ScriptHash(a2bb8d90c8ab47d346d975e980a1d43f045dec292535093e0d51c864))): {TokenName(02f4d4e68cbc706e0d0c0837201675f3bdcbad8c0cbe95270f87b7e677e74589): 4059186037, TokenName(0d27ac444015385dc142b7f17854f6a2fd226eed40db00e5471135abd2614910): 893862889, TokenName(4c0ba14a4e81c539b8c1927676051248e1f0470a0bdedbbad99ba757742c37a8): 3677005175, TokenName(9f54572f0d7dbc278f65252ec8a9fdd605514b0eb146b43f7548637b5bdb6d98): 865230738, TokenName(ff85c18aaa31427a17d09dd8b1c92deefa98de67dd95b5134876d69bff07fa1a): 2197769791}, NativeToken(MintingPolicyHash(ScriptHash(cf5353435cb62d2163224104e0dae0078a694a4aaf190fee0ae34a02))): {TokenName(1648c8d0d1b49102baa656497e482412767fd18bb4cdf1cef1b3c358d7a89f71): 1711195694, TokenName(26bb953943de5e600739f97c4ce75a75764a1ab8a067cb3e7c29f3016217adcb): 2877718150, TokenName(815e21da7c69f3e64b810907bf5c44933407c2c5e8ad953abdad6e2b0a799e70): 977946915, TokenName(9353e34d7f9c8621f44f914dac8dde9cfd5000b9dee7ac693708d228ed718076): 283297721, TokenName(a1054626db4e0d335f46d7a7f2c40b742ad6c70b78c9f88254f1f84fc3ea8589): 968690886}, NativeToken(MintingPolicyHash(ScriptHash(dea44770355f847a4eaf18ba83b0d401bdbf98908efb0e8b1f897f83))): {TokenName(4921eb7143be35f9cdfee9b098bfb4e6c76a6fa916ba52f80e222caad6e57f46): 2851452302, TokenName(6a6493bf51f70f648010e4c5d9ab406fdea3f05951b51b917e846d03f01c50d9): 4152676206, TokenName(71d6a6180f26982f144f2cf289c96664eab73ea43b9ee9fee2fca7ea3b9a6468): 1380940925, TokenName(b6ab7566b6ea3fc735c39ba9b1431c3e5d1b0c8cb77325b4696035ab4d2cf546): 1747434410, TokenName(b902a0f2088eecb1f3f7f4f2b88c685a5840b62bb7ecc06416612b4cb9b7efd8): 2641353882}}), datum_hash: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(b2b038341412cba317cf86df6ef6e935449381af66030af75ff42e51)), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(3342422d590ccd428b2f3fcaca1aa9b4d1e8f7366b546b1c6445f894)))) }, value: Value({Ada: {TokenName(): 4948328761542502746}, NativeToken(MintingPolicyHash(ScriptHash(072fdda177af7847e1d87877c624158aa2d98cfd659324f2b373c262))): {TokenName(320c45c154400fc4d8d6b5a8cc4ceb9f51f8ede2daf8baf0d4ba0316d675eda4): 411254330, TokenName(77e69c2eb1e08684727019bfeae04c43687cef2526d2940436d7d7368a816d92): 1855020307, TokenName(8a1cb9930c75f32f95ff8f133ea76ee23e833d3e0450c4a846328b5b9944710b): 250752536, TokenName(c48f515f70d52822afd8ec7f704a53eca595542f7ccfcd37fde27af4dd5c26df): 2374474381, TokenName(e3b15cfb883a25f465bcce8f501af658cf8efbee426829a9531b9763fc37ab11): 2313747249}, NativeToken(MintingPolicyHash(ScriptHash(093ee8ff80c2d0096a9fb455bef075e199fccfc1954bb2986326aba8))): {TokenName(44591cefd9a148f95a280dcde2ab7ef30813cda04c082fe16c2df07ab91283bd): 3029068441, TokenName(69e2c5f840466eab3308985fd9e16d25b366eaf31df06b19ade95aef1f306bef): 3504873071, TokenName(a8da02edfd4e5b1176ac9961ba56da291fe9907565da43a2a79202bdcd5bb4f0): 1138322246, TokenName(bb2f1a91b2ac39def8a7e55d990d4490a66a8c4415aa0399d0bada760b6db917): 1512771149, TokenName(bcfebd930b1735f727da96689b8a672368000e30de9877cb4e4bfa235b336242): 3239823677}, NativeToken(MintingPolicyHash(ScriptHash(5b07738191c965fbf02211ce93a8be82b130af907d547679d6b3c7e1))): {TokenName(130ef730af540f6e578167e20aaed3664978c350f0b29a5401ddc5bba0475fb0): 2033047369, TokenName(6652918dd53130e4cd9e04fc6bc61e86972acb68d642284a63885b162490505c): 733077339, TokenName(7f333a23849fa278b7b4c94f059915205a5f12147eef9ea272491799f73bfd2e): 87433845, TokenName(804070fb43e317d87955b340b5344a8a433e80da64cd36d2ea4ea57fd299179a): 1631450234, TokenName(870f4bc4ce866180c857901e4aa71cf8a1879916e3aacc0bef31651a429aabcc): 1324734331}, NativeToken(MintingPolicyHash(ScriptHash(90cfa5b959bb2669038f943b5bd9324b64f1fd7aa175d1e04bf593f2))): {TokenName(44c2177821ab02387c05145daea415f5ed1e17c9daaf44073db5e4c8f2a09b95): 1125997943, TokenName(5085d9c0c0ec21749772b2dd1d833dc89740983dcd0c23a68e2e6ecac1514153): 2928004275, TokenName(959bbf7dc15d9a6a0fed3f43f5d9b05d974dca9957da7a95e128721cb0b6dfc9): 2886942365, TokenName(cb9169ed8349bbc980d191c3a7f6a5a203b0f8f7b60876b5d2b1393d5f7e0036): 3635081973, TokenName(cd884cbd66ac62ea2aeaa479203c11bbe7ffe99c1e07d32809cf042521f146b3): 1702000497}, NativeToken(MintingPolicyHash(ScriptHash(a0db8a554393782bf4db132fb516da7278dca0ce40c0db3baa142a4a))): {TokenName(00d094c2cea576664164a22fd766a5cabf6ebd344528fb09bba89ab562ef305e): 4192416526, TokenName(0b428b95a12e8c9c5ce6682e5dcc6b1c3fb3899a4b707552afcf5dbd0154baa9): 2331618111, TokenName(0cec1dc6336fa94860d66be7580d78aebac53c1c970395eec552ad9b508b7b4d): 1504969392, TokenName(1d4a8587b38efb2b79414a04342c3d05f252ce3fdadca54a45f207e8f9c29beb): 2777991698, TokenName(53b02a79e80c31c85b84e0493abc93d536043ecd524cfd7d7fea032d05a6e7e2): 4119511346}}), datum_hash: Some(DatumHash(ff527f3d10e8feb4b6b49b4e5878f2048461ba3839a09858ba10b0f46bb5c171)) }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(e05c6baab226429642a0d4baa4a6dcdf0bc263d3435f5ae166c9a139))), staking_credential: None }, value: Value({Ada: {TokenName(): 4553602872540099082}, NativeToken(MintingPolicyHash(ScriptHash(17cf83ec7b334a11f0b4afeaca399f3f0655df3d47b8ae389b867cb7))): {TokenName(0fdb6a936ef95425fac91e840d467b4af2002c01cf41174166287b25cca7a05f): 2730309942, TokenName(1014fec598837f1f57a0d8932b527162d300dbc38461884018b7056f090bdf5a): 2791151522, TokenName(5576dc44909b08bad91f97cc4ec172a2d84291eeab5c53203668ee5110d58f08): 811998201, TokenName(a35801eb73e0f2cafe000dc265c49190b9edd8aa8846b5d7a4865c0927c4b397): 4122858360, TokenName(eaee31b7ac5fbb6b11665bb43ec0662b4a6e64e2797ccb45b8f0a75e280f1619): 2270382587}, NativeToken(MintingPolicyHash(ScriptHash(1ef6385877ca6778cf88e5ffd054ed90d66da25378cd568565a096ae))): {TokenName(329a62259a89c9ecad955d28201e94bcfe386a67190bb4b051b7166c45b1796f): 1494858695, TokenName(749240046949124728861c7baf181a7b5ad4a8f0c37d884dc79ccb907e6e5af4): 1710360777, TokenName(bd6abd5b26ac8e1a109190b25708d94da4bdc16cf244e79a096c72be24e0a0e4): 2190753389, TokenName(ecde2b1d7c514389b66afd1d24cbaa2723f07caaeee61913a9f9701e8349e36c): 1232171392, TokenName(f121d76461bb94330c69f12b123c279ec26b092f669dbb079ea18cd0a876add6): 4026230494}, NativeToken(MintingPolicyHash(ScriptHash(23b29f5815c42402017db7bd79d21037c19947ed7f2c11f7757ae6e1))): {TokenName(0e289ea4f9af5cfc43e20f747dcb24d12d3c7ce1a40d0ede72b9c0cf579041ca): 1173553796, TokenName(1692c126e0ee9010182a8cb4849aefe076fcb9a1f4bc94c274c311b2ef9e5fca): 284175176, TokenName(28e7a278b4893a6afb4ea92e417549ca644be330f15581a9cf8ce75b441eea1a): 2358327012, TokenName(af490988fae42de1353cea6a530d4b19a0c08ee8fbc39a216d8c83916d8b09cf): 3410120375, TokenName(c14d13fc0b208e9cce0bdab33085ba6c59a8852af0d47bac55a17fccbb1e7f80): 3055786762}, NativeToken(MintingPolicyHash(ScriptHash(7ffee3ce8d283d8aa14745314091ed0458569b8ea9e84c0f3e8fef22))): {TokenName(02ae89ed9dff3b2a587d4a4137dbddebcfacb888ecd2eb24003bc69b3e3208d4): 3054823407, TokenName(184d800153b13706258004f4d896b86d7228c5f0fc9437c5b5b26b7b1eb0fd44): 2454894028, TokenName(662bd5eae7d2166f3ef6d2d1ea8e0273f202caf1bb2cd7e6b54066a6a9d23051): 3022759543, TokenName(b31ff8f7cae312f932cc13677a0eeaeeb77fae01c49117ed7aa8a58960f30674): 3188065398, TokenName(c07142a9e17cb03285e1ae8a17a16bbfed16fef9effbc22857044d4289fa8364): 1465431524}, NativeToken(MintingPolicyHash(ScriptHash(e8e9baf27214acb30ebfbf7c000b8f613cac2e0bdd663626eeb0267a))): {TokenName(13e6135a846bf7bc213d4ae04670c5d5c886419513a99d4997193b552bde6dae): 4084850878, TokenName(37ae5df9337fe81423d7c7a41d217cb66368d85949a899c9312750eb5792c347): 3709611353, TokenName(a92e2356e20f6a58903c882805d1672dcf95e2447e42f22284f466dd8c6db2db): 228959620, TokenName(c589ec27c134fbedbc5ec2c33da74785245808c85c796903164d6a770b90001f): 1239222555, TokenName(e9f13cc81c4cd36d8684f0c049f92324c738137cc36b69546090385a717fa8b7): 3850436574}}), datum_hash: None }], fee: Value({Ada: {TokenName(): 969633109869906273}, NativeToken(MintingPolicyHash(ScriptHash(8d6723525ba3d1f1d6997c0ae46f9d85502e6765dd041161633c3560))): {TokenName(06303428b96cb3f1b1d275527a0b6039afda0c190ed10b559478d9cec0b7da42): 3814140804, TokenName(3467ba2a37839479cfbad1d28281dedf585a6c0109a4fa238371f65e9a4bf60d): 1131929688, TokenName(658e9b6b33c3eda9de19ea577dc497311d2a0b96dc8d6ff27893b035848b9547): 250668046, TokenName(8599f7565c24adcc16f57a3b856c4dce7e7a5efa48d9a0a91df313ab66845f24): 1236629975, TokenName(921f9da770507d599e88df415f5b5fd1ef2dce3388b2abe1cbeb8819eeb2752a): 1375718269}, NativeToken(MintingPolicyHash(ScriptHash(a171c162fa95d08d59c680fbe807508d41460683e736f2964856e2e3))): {TokenName(1aabd16381297021a0281493745863dba32e12553bd1b96556bf2e88506140ac): 3291925497, TokenName(2050da14445b8940d5dcdbdea4d274e6bf7873455431b2e634c72d0c4465c051): 620717311, TokenName(4f19c4aca84ea4a29ffee3440d3d824566e19c06010a04507ff7a5a59e302a99): 379732248, TokenName(a13bb873c9e1de1bb2cdc7f48863712f5e80eb212804c14b1db8ddba6dcdb29f): 2246452864, TokenName(f39ee6358be13089fad7c84120980839632dc2c4704e58df41d490d6690a7a38): 3334683934}, NativeToken(MintingPolicyHash(ScriptHash(ac9446f80204a60030165546ac6714046dead84812f05eadd94551a3))): {TokenName(25a0ee877632392e02cd43d00aa6a7ca261ba4556193e0dc396cf98c2af31c6b): 3444385402, TokenName(3e01f229172eebbc73423db906f42c63cadfb707992eec85eab601aaf5dc1251): 3790718980, TokenName(a58da0fc2411a07ed3e0bc47af2a2b29d6c113a4488a3be79b92aa3323986f60): 1134977431, TokenName(d66116b4056bdd548a4da2780337013fcf1c4a75abc7e94bb6cc446e404a3780): 2609803911, TokenName(e9d67a85cb032f4116e0ac6c323eab6404a56e1148b367a2bc8f8c55fe0825e4): 1014384257}, NativeToken(MintingPolicyHash(ScriptHash(e564398c9d94ef31ba6b710d366cd39a3a790dfd302991d2fa642e32))): {TokenName(0bfa888d52987c26166e90cf2304068253d96258e0c71e74a178604a84e89a5c): 4003280998, TokenName(31d69eab408c70a8c0f0449c9c84f8331a4a2abb1a427e712b3a6f48fe4fd256): 1888595874, TokenName(d624bc70dd5f611aa436de15c3e1e7535bba75e7b42342959e2391d7fe4c5c6a): 1989441865, TokenName(ed5d23f659fecceee3347e90127d2c4c44e161f547a4ae595ff29b6f88ba53ba): 2198525552, TokenName(f603ead8ade9a61b1b88bcb269b1c5f784a65451e29f1e7a0ecb8c48239fdb45): 3645297236}, NativeToken(MintingPolicyHash(ScriptHash(f46ef9af924ab79c91aed4987fd890b61fe27abb8ed9254e96c74cc8))): {TokenName(59094af9093043e8a96b5a6bf5a335b12ededcb9f01878f91495fd2819aa67f0): 1766038848, TokenName(93b8854769f208a0256f9ea596df9e52a3fbb06850c2498488f40c6b93f94da4): 3559068440, TokenName(a8ccaaea3d611fce0be3df7b58a22e351ac9e255c72bbb7d37855b81f910bc9c): 543249717, TokenName(be59a0fc8ce2d78d60882d184c66faffaf77657003d8dc9f70cf920147f8e0a1): 3750383943, TokenName(cb241e54a1f5e0ed7f8be8b6c54c5e128111ec57015afedc6e73913c17e97ce1): 2954796306}}), mint: Value({Ada: {TokenName(): 7631164501003577366}, NativeToken(MintingPolicyHash(ScriptHash(000b638318708d6910d2d4ca2cf92eb08f54aa76ef9288860580bdf3))): {TokenName(118c464ebe2af200f4a14649f8bed0b0ef50ee1bfed814a8de00953f89bb050b): 2442299996, TokenName(1849c62509f9c1f054d41d926038c23b684a646b1968e8cfcc4a3647a28754fa): 2030710250, TokenName(22cd5e8112cc3a3d413eb1d4de1d9c383b7534f45ea2e829b43844c22ad159d0): 471205976, TokenName(a945c6e456cbc77f35eb25e2b936de6282a93b0c0b63183f607da00278b92302): 3274228680, TokenName(ad86d0ad387617c24e81a4343fb745231aab4912a61bbff939f782cbb56d2968): 3179376177}, NativeToken(MintingPolicyHash(ScriptHash(0e0ad372d8a5549a9280d97575060f8d2f292ef7b1e173a60c4fca61))): {TokenName(9005e23d6a7edd5a420284842e7ae4097e9521bd2a4ca4bad7bdecca8b75d9be): 1363897572, TokenName(b7755a335efa50067a4757dab725ca8f41b1a0c751ff53d3dc21d0a05291c7d3): 2898233279, TokenName(ccd71950b2ba7cc3dc8bb1717bba2927ed15142e84934ccfff98d1c6d23c7d91): 1289247048, TokenName(d1312a57e53827c11f1df869b828865c50d17482a205e4edc945582385e08706): 3074462666, TokenName(eecbf9e4f9d0ef421f7a59868225cebf18f7000f6de30e0f8493cbfee4d04194): 4135510026}, NativeToken(MintingPolicyHash(ScriptHash(14c373113770b8e9a72a862f1abf89da699f73f44eb9b74db712a10d))): {TokenName(0fcf4d730e7463311d146a4d32a365364c6520bd22d40a4811ce659c05019cde): 1253206852, TokenName(25830271bae303c2a40cfe96cb91492f9abeb5da45b51facd1399c6c2b3aa76c): 1256411084, TokenName(58067388a86c970eeabf01414993b019d237593fbb4515b40fc7d6e29a52df85): 471578325, TokenName(6b7023af0f471f0bc78c7616ec90ea0f9fe0c8e4e3b0134e227d45736785d676): 183113714, TokenName(c9813c42fb1f38e268cedf35457615fcca99cc094405926ad16aaf4ae82567a8): 1385894198}, NativeToken(MintingPolicyHash(ScriptHash(4fdce36936b4e15aef63e7f608f0414dcba259852aca6893e5d2b9a2))): {TokenName(1a9d777417acc7644ceeb3d52f5586c0bda66302bfe3aeb680b87f06c7c4712c): 2870070021, TokenName(383a08a33046a06148ef0b38605246a0577d7ddfc2a9621ce83165164491167e): 1995923698, TokenName(9170ae6672cfffa3d2bfa40aa08a337aaed400edceace5c518da9f034aa217bc): 3250266866, TokenName(af5319c39aa37eb907271cb377aab921dcfb82cd28985bcd471fae49da966f75): 4015499506, TokenName(ceceac952f631978885d18466f653b68cfd4ce8ef8ac171ecd82a5f92a289d02): 636890669}, NativeToken(MintingPolicyHash(ScriptHash(e05864b623516a63e9f9e515522404b98b02b0b2221c54598fdcb6e9))): {TokenName(11d8fee4e2adaee17e985fccf6c56c114f86c60734853082add8441bf990b63b): 2496407695, TokenName(603ece16dbbb888998f91d1238c4a456ebfdc957834debf70fbb10d91ad7460c): 1108103483, TokenName(627d25c701d7696dcb6834b71612b51d575b931f91a5ef2e58fb5e8efad32ac2): 1195013276, TokenName(c13ae1979f893e33e49acea02651b6ebdc4482195d852ce9191499b39811a4af): 2197115122, TokenName(e891c9a502e6f8bd48e6ec0da44bf42d86e7f38840491f262d2cbba4f2752464): 2321083779}}), d_cert: [Genesis, DelegDelegate(Hash(PubKey(Ed25519PubKeyHash(33a2aeaaa2f2ea80b5090a2b82f487b57ceb931d469b58e01e43b94c))), PaymentPubKeyHash(Ed25519PubKeyHash(6a77b6f28a34ce07ad408232717d4946c493748591b8f35b94d0f25b))), DelegRegKey(Pointer(ChainPointer { slot_number: Slot(433742330), transaction_index: TransactionIndex(1845628647), certificate_index: CertificateIndex(2772472914) })), DelegDeRegKey(Pointer(ChainPointer { slot_number: Slot(742649179), transaction_index: TransactionIndex(704895891), certificate_index: CertificateIndex(2566189219) })), DelegDelegate(Hash(Script(ValidatorHash(ScriptHash(542497dc23302d140546cd8be6b86b518f704b858edcf808ac2cadbc)))), PaymentPubKeyHash(Ed25519PubKeyHash(7daeb663c2955e1c7bb6afa4005fda2c6ebcbd5bfef080b2e84395e0)))], wdrl: [(Hash(PubKey(Ed25519PubKeyHash(68aee271f2f2ed00343c237a0284243116bac2eb69c5d3800054efac))), 3319729642), (Hash(PubKey(Ed25519PubKeyHash(3a70e62fb80a360afab75373ca182ccd8b12145917e679784d82d799))), 1883636234), (Pointer(ChainPointer { slot_number: Slot(2507536261), transaction_index: TransactionIndex(2809721782), certificate_index: CertificateIndex(3948189935) }), 1091631966), (Hash(PubKey(Ed25519PubKeyHash(675e7d0092f2131828a0a0c1161d1cb2966896b189fb2508f33e3bc3))), 1036524356), (Hash(Script(ValidatorHash(ScriptHash(2a0df4e2705f4f465b7500d0448f5b86ce338f8f3a1ffc81936d613c)))), 2084137754)], valid_range: PlutusInterval { from: LowerBound { bound: Finite(POSIXTime(509290088)), closed: true }, to: UpperBound { bound: Finite(POSIXTime(1589796949)), closed: false } }, signatories: [PaymentPubKeyHash(Ed25519PubKeyHash(e113607d8a6900dc57999fbf7436a2b258b265c9de34b66adbfabfbe)), PaymentPubKeyHash(Ed25519PubKeyHash(9919208d63b0eab1469561b6160e620514a330a5c9687ea4da91eba5)), PaymentPubKeyHash(Ed25519PubKeyHash(84cd67e498c6e295a7f6d060445cefb3769342c7e6d80e49d9572f16)), PaymentPubKeyHash(Ed25519PubKeyHash(4510294c5ff167ecce09307c0e7754b9810023f91ab4a13c283ded1d)), PaymentPubKeyHash(Ed25519PubKeyHash(07843ba0ac368ac6fa41d8a68df466e6ce43290a792f43c925834220))], datums: [(DatumHash(1dd2ddd0f1687da13c0471227100821e5caafea2a6c0bd1836031a71d959296f), Datum(List([Integer(12111198339882327665), Bytes([148, 36, 223, 226, 122, 56, 252, 144, 89, 156, 32, 217, 100, 206, 105, 13, 220, 245, 56, 220, 245, 97, 79, 5, 11, 193, 163, 60, 49, 107, 143, 205, 45, 119, 143, 111, 0, 52, 158, 154, 35, 166, 69, 162, 159, 87, 136, 252, 138, 16, 197]), Integer(14917055000583713380), Bytes([250, 84, 182, 96, 4, 26, 241, 41, 166, 168, 99, 85, 41, 235, 69, 187, 56, 88, 226, 193, 14, 75, 123, 98, 232, 13, 157, 32, 177, 152, 85, 123, 59, 243, 111, 246, 108, 68, 235, 177, 226, 125, 225, 26, 197, 84, 217, 173, 246, 216, 173, 47, 89, 189, 140, 201, 145, 56, 94, 125, 200, 166, 205, 103, 149]), Bytes([28, 53, 48, 133, 148, 22, 66, 28, 53, 97, 115, 177])]))), (DatumHash(ac4bb31a4b8c0e5dcb712f54b54e403407223cd43f07ec9714d079ae10136e67), Datum(List([Bytes([26, 174, 162, 173, 112, 10, 99, 29, 35, 19, 111, 56, 63, 186, 224, 219, 148, 130, 223, 192, 49, 243, 125, 69, 173, 244, 191, 205, 226, 116, 205, 167, 227, 248, 232, 175, 27, 26, 90, 105, 140, 133, 134, 28, 145, 71, 212, 33, 187, 111, 89, 108, 130, 174, 210, 57, 117, 154, 220, 41, 211, 115, 13, 145, 148, 221]), Integer(10600455703549979744), Bytes([48, 253, 65, 239, 169, 140, 189, 124, 221, 144]), Bytes([122, 155, 53, 41, 41, 192, 134, 181, 116, 240, 45, 233, 57, 218, 36, 241, 20, 139, 199, 77, 235, 23, 233, 152, 217, 187, 184, 240, 64, 231, 25, 250, 160, 21, 228, 126, 204, 131, 219, 58, 41, 185, 223, 80, 221, 176, 79, 161, 85, 199, 223, 80, 194, 18, 180, 222, 49, 41, 202, 222, 137, 255, 29, 22, 213, 10, 144, 58, 238, 42, 6, 35, 243, 58, 15, 217, 40, 111, 25, 2, 25, 212, 229, 253, 136, 26, 133]), Integer(9156334723734449835)]))), (DatumHash(10d026a0084cf4a9945756217eaa5d6ff2451e56467e6c5cd42122f11f628b24), Datum(Constr(1096592962, [Integer(7149187219739976565), Bytes([244, 46, 11, 183, 246, 67, 232, 48, 14, 111, 216, 61, 118, 10, 48, 192, 253, 92, 61, 142, 111, 168, 197, 243, 114, 219, 132, 77, 186, 116, 95, 182, 67, 6, 152, 233, 53, 228, 57, 252, 22, 243, 240, 95, 48, 129, 49, 92, 42, 218, 9, 254, 135, 99, 92, 245, 250, 24, 66, 204, 229, 188, 203, 128, 251, 48, 125, 182, 72]), Map([(Integer(-14934554458418146212), Integer(-8733990149434153712)), (Bytes([157, 49, 60, 178, 244, 196, 156, 140, 229, 102, 124, 77, 45, 73, 113, 181, 20, 32, 240, 195, 67, 122, 70, 157, 85, 189, 198, 104, 227, 153, 108, 116, 243, 239, 13, 21, 141, 175, 93, 15, 145, 104, 60, 190, 223, 107, 49, 78, 85, 161, 59, 133, 31, 163, 136, 68, 172, 105, 155, 248, 15, 46, 121, 150, 56, 53, 216, 85, 226, 230, 68, 8, 144, 93, 67, 132, 57, 30, 123, 165, 83, 105, 12, 42, 157, 139, 220, 146, 70, 9, 114, 199, 169, 84, 160, 175, 176, 177]), Bytes([212, 160, 118, 135, 239, 173, 227, 137, 220, 211, 1, 137, 239, 171, 193, 85, 157, 221, 47, 64, 78, 148, 111, 79, 202, 215, 31, 55, 99, 113, 99, 33, 80, 188, 17, 229, 90, 58, 49, 78, 70, 152, 129, 34, 74, 122, 108, 44, 43, 148, 116, 194, 164, 205, 177, 138, 49, 227, 121, 50, 76, 97, 251, 6, 190, 209, 228, 81, 151, 157, 151, 186, 114, 42, 138, 59, 17, 100, 15, 231, 231, 236, 40])), (Integer(2664178424296852335), Integer(-6867474426338311931)), (Integer(-1806391647205798784), Bytes([244, 53, 57, 234, 143, 202, 109, 129, 44, 201, 203, 12, 149, 133, 165, 145, 226, 111, 34, 114, 123, 80, 137, 14, 222, 219])), (Integer(256972643692214470), Bytes([192, 141, 215, 60, 238, 113, 69, 5, 164, 130, 54, 109, 144, 128, 95]))]), Bytes([59, 154, 183, 176, 156, 136, 223, 146, 60, 72, 113, 242, 46, 117, 33, 119, 142, 142, 84, 82, 222, 26, 148, 174, 241, 32, 226, 186, 212, 118, 88, 182, 17, 227, 241, 15, 57, 187, 211, 236, 129, 190, 84, 150, 110, 40, 44, 147, 190, 148, 159, 89, 4, 115, 51, 75, 139, 182, 84, 133, 207, 120, 115, 228, 93, 37, 233, 105, 214, 95, 222, 46, 230, 49, 15, 87, 227, 237, 39, 80, 86, 48, 194, 63, 174, 168, 31, 26, 86, 0, 164]), Bytes([21, 128, 222, 61, 54, 46, 143, 58, 29, 162, 173, 205, 8, 93, 130, 28, 235, 165, 198, 155, 110, 55, 178, 168, 73, 221, 254, 89, 22, 202, 215, 217, 150, 20, 33, 221, 81, 203, 118, 156, 127, 214, 131, 22, 249, 99, 25, 251, 36, 75, 178, 190, 224, 124, 42, 52, 203, 128, 143, 114, 226, 183, 124, 199, 20, 200, 170, 194, 34, 236, 242, 129, 144, 176, 10, 150, 160, 228, 8, 42, 111, 44, 231, 234, 58, 32, 91, 44, 24, 71, 168, 60, 91, 93, 222, 241, 58, 192])]))), (DatumHash(5a9e575b9c15ed46c23d13d6dca4332e65173baaed23a0a85c089605454e21ec), Datum(Constr(2595342282, [Integer(3451760200702215501), Integer(4010655019245624044), Integer(-8093943009169867001), List([Bytes([193, 156, 95, 88, 91, 123, 132, 115, 55, 37, 203, 156, 24, 192, 167, 27, 135, 198, 243, 62, 76, 106, 186, 69, 71, 165, 93, 10, 114, 226, 203, 138, 84, 132, 238, 230, 3, 253, 200, 148, 45, 209, 211, 174, 173, 159, 35, 89, 13, 41, 247, 107, 96, 106, 96, 145, 94, 249, 77, 37, 173, 207, 74, 182]), Integer(-16665941241912134423), Bytes([20, 84, 186, 180, 237, 24]), Bytes([103, 149, 173, 37, 34, 114, 167, 61, 2, 216, 158, 169, 89, 50, 186, 106, 24, 166, 17, 67, 58, 10, 94, 127, 158, 87, 232, 65, 73, 31, 74, 194, 21, 100]), Integer(5453360218659488194)]), Bytes([2, 117, 98, 171, 152, 219, 55, 178, 129, 208, 146, 96, 237, 7, 220, 3, 253, 59, 7, 79, 213, 97, 5, 93, 163, 33, 195])]))), (DatumHash(2f9de4fc167f0b49183bc40817fc15942ab2f597897940cf768ef87c93fa0544), Datum(Integer(11619849138673604607)))], id: TransactionHash(dcd169344bc415da546970cf271abd433f7a03753088565f726230b5c9f40c67) }, purpose: Minting(Ada) } -cc 4ea6dee47095eed7adb6b2f1b4469e3ca031194fcbf8f58cb6c857342741fa9f # shrinks to val = TransactionInfo { inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(0000000000000000000000000000000000000000000000000000000000000000), index: 0 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(00000000000000000000000000000000000000000000000000000000)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(000000000000000000000000000000000000000000019f5c475c78db))): {TokenName(1f4f6c406310702632f4c3fa47392446d1b98889c00f9aa1626a94b980159df0): 298478092, TokenName(4c24672d372a413cdf59d512547e7231f0ef38e178b7018cb52a5ed6e9fdf4d4): 3492788874, TokenName(52cea5842a7d2e038ac4f72bda0bd3c6bbbf089aee1cd4f11ef1cd3190b12f71): 964251169, TokenName(a40750b39fe5116fb949a2cd52c88eb9357a3ec26036c260a69bceed6b3887a5): 2159064232, TokenName(ed869353d807ec5cc5ecd4d2aab993f4b0499fe03f8d34737974dff784818f32): 1725260373}, NativeToken(MintingPolicyHash(ScriptHash(325e8084cbbe91a0a80e30d8cc27cfc349085d2001111a51514d4d0d))): {TokenName(15b5a50db50d46d5ec5514cde300e35009062f30992d3931d3c1667e96584d70): 1865081206, TokenName(4ab14e32ac37481caa92dd11a64bffd7f7b1aeb57d9a5d2b96d27996eac65ab1): 2349547655, TokenName(9a64b19570409bd4fccacc8a554282769978875bdce4d923b1ab75d10f1296bf): 1851207128, TokenName(afb8270e291d11257fa7652e55830f0ccb1f7acc1f4f232c614a87333535d29c): 4017700958, TokenName(bfc27034cd3673af9f4dc828ee1aefd4ad7df8a57adee4a867c6ff7525f48bdc): 854588756}, NativeToken(MintingPolicyHash(ScriptHash(8cfd71a4b893f1b0ba1a663cdeea73c0ff9a116fec5bfeffad7f81c5))): {TokenName(17afadb47268d366e5422aa9fef69dc008099528e1b09b6c486ec432d7216419): 674029915, TokenName(1e2a9944808d8babb9c9e1baf683ac3ba14f161ec62431578a54abd2330f77f5): 1791958212, TokenName(9be89f1dcf4ca802510a01aecc9691008477ff1f9c7872ec339ef518ce215222): 995249238, TokenName(9d4c66b90efc1b0a9705a873394225bfec7a4c9897897f43476e7435a98ddd7e): 873638795, TokenName(f859d8be597503ec124919ce41f49f86452a6ae4045e005fb550c41cf46a7894): 664491160}, NativeToken(MintingPolicyHash(ScriptHash(aaf82f6194c9a2c9c22a2d84a6018f3db15baf1eef34ac9112df0f27))): {TokenName(42bb0f091664d20924f1233561b35a78888dbad58e3b730366c3f8d2afbabf7a): 2130410640, TokenName(a038c562498b1039ae48c86f1e0d2caf745cf52ed10765c5ad50c18766fd1e8d): 2441312155, TokenName(b603aa5b76770eaa33b7aff1e2f08ff7766a167442ea3cfe32433d2e5d7c1898): 1235255672, TokenName(c4e50f0caf814feac611970baf05e6a95ef681a4d3e18b5241f86a47e0e16c80): 3111581855, TokenName(d212a2247adf4ed99ab7a76e151c01392164857b4072fc429cbba28d10d9f5cf): 696705209}, NativeToken(MintingPolicyHash(ScriptHash(e43d40d173224446ee47f3996602239ba997eebbc89b90c5f7aff85e))): {TokenName(08f7a3d6aa99731f8f1c29408f3545f34acd59be5dd3f236f54d5a944a1b81f5): 225263698, TokenName(5f9ce2dcd7818cf2083128f9e54f98f8f60828e40bbcf3ab1f0f9522f7c788be): 733392177, TokenName(b2de3f0aa352b169490ebeb0633e4f7b2a0ad5d4977f31cbc714fcdd8eb58ca3): 2712434547, TokenName(cd30493be7306304470842dac2612255d72fed4d2d9f50e465c2a87e065df13e): 3399809590, TokenName(fdae4677b30e10039e118fd2f05ba8e9a1fe96b76a96bf568a3d31993672507b): 1218974563}}), datum: InlineDatum(Datum(Bytes([144, 218, 0, 205, 49, 206, 112, 203, 48, 141, 239, 85, 127, 139, 47, 136, 195, 94, 212, 234, 63, 151, 197, 4, 120, 67, 14, 234, 165, 232, 150, 48, 144, 82, 55, 157, 8, 74, 76, 4, 173, 68, 162, 249, 241, 69, 132, 219, 251, 173, 217, 213, 57, 186, 93, 252, 23, 255, 92, 206, 182]))), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(a2df58c0f9342ae1a01de26bb37d3fa10a8a8de1f68792f93488be3de867bb13), index: 2288900289 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(1e5801da8ba2c61f4aad552ba2666db78e014c5a0516e114e2485e49)), staking_credential: None }, value: Value({Ada: {TokenName(): 9077772753944363893}, NativeToken(MintingPolicyHash(ScriptHash(17c19a9d3c9fd2721fcd21d355cf215efc1677f4f51233868240d838))): {TokenName(487d6467f40f902700815c1f753c7472d255968fffb9700e6a88ece58c2e3e5c): 2661724228, TokenName(6772362ef6d7f7e3d48932c682d1623232c7a37c0780627bc762d544a37301d7): 432390567, TokenName(7c23d2fb743212b3aea606e7105c09bdeb8f13c41796acee993d6621ee390b22): 1475735511, TokenName(9b999b9a1d36eb0e007ba06d96ae00843d7429374861d8a0016c0ace862d54f0): 3837974677, TokenName(d2506f4269053153d864e0af42bafded34403ae0c8cee18fafc42b3bacb7df82): 3627314589}, NativeToken(MintingPolicyHash(ScriptHash(352d5f0781220fa28efa8bc69f074289772b3f7c9fd491ac771686e3))): {TokenName(0403dd3da072efb42c40980e52efc6d5ffd0d5e7de0a5184a9933e5de0804359): 2443674359, TokenName(32ec0495fb8205d2449ee8e44f17f514478d4556b7510d569491c7cfe3bd3296): 326409729, TokenName(53ff5a21aa4bb3655d02c626878d893c9673665582de1cc894d5560bffec7c50): 2758731830, TokenName(66653c46782300fe860dea0a5ae9f19d72016d2f1a789a91ae26aa667f8b02e1): 2490347972, TokenName(ce898f46d5737005a5525cdf56eb77e1f90ee1e9d32d7d49e69d49d9ce855866): 1911570543}, NativeToken(MintingPolicyHash(ScriptHash(669953cc87a77b91a385c5ac8d70bac264bacc90661ddc6a6d97b4fa))): {TokenName(56cc0e046d8b300ef14612df0ec5f196fe2c0a245c6379992e275867106a42d6): 2967458774, TokenName(7eb354e2cac70aa2076485e569ef5b8eb2cfdff1b5d478b575a9be90bdab044a): 4252955295, TokenName(a1738371cf5dc8a2781d875c18ddd7b4240f186396cd5e3988980c0eb021332f): 3304613221, TokenName(c0d6e3f303bf1a4ff710b2c600baa688908b8c3cdf172adfa86401c0d2023660): 1865242021, TokenName(df281eb7bb8a6a8421304cefb45d5ccbd250336c0eb4fb4c9c01c73537acc803): 3531359257}, NativeToken(MintingPolicyHash(ScriptHash(c2a3d01e2c668d57015ac8c793f559bc2335dbd93b216d9a39b097db))): {TokenName(0fbf10dce451b0ef5938dd50612b00ddfd7568a3dc0832675569581fa8d788e7): 745911105, TokenName(219eef88f2b12ac6e2395186f96db803914e249a79f0fc9270571edb29cf90dc): 354711841, TokenName(5bd274aab4e5113eeb5ff08d12f5c2c94e99c6b505f04b3bb9cefc62868116bf): 3519212836, TokenName(b231222b345e2003f6ce5edb59b79d4ce9aa5083f2b1124710987b6142d61157): 866543946, TokenName(e35aa0de564f94f459b3600570bb3493f61201d36233570ab8c57e6a7c97cd7d): 952891787}, NativeToken(MintingPolicyHash(ScriptHash(e4d28ba4b28ae7428db79ba76bfde03480d979cba1fbecee20e01d71))): {TokenName(13348b10567872245a3ae7378351aca35d05cbbedabce6e1274d7d9e2b2394bb): 95487821, TokenName(215634911664a4316b7f02e81b6d26100751fe9b93b4542e837675a1a64390f0): 945209453, TokenName(6a5879902fd5eb999ec210f1ba9cf3924bec25f8f5afc0573c205f4222590171): 2628764579, TokenName(7913873afa53bab60882c4017b0e69f3de328079266b74ada2ba3747357c6f51): 1087784257, TokenName(8338e35b27f5757dec720221bbacfb7f16255b0451f8db02235fb5c6e2e8ab2f): 2074210583}}), datum: DatumHash(DatumHash(d45897f55f130908190639ecec271ac407ca36c981f40d5a644be632d773d0e6)), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(20b81a65dff4205bbbeb1353bb9abce3d3ac873db8c5413da1eea8be82384e28), index: 1401515414 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(bf408dd6d4d82476144322cfca102a11207501d6a7fc0e0276abbf10)), staking_credential: None }, value: Value({Ada: {TokenName(): 17226239645628683221}, NativeToken(MintingPolicyHash(ScriptHash(05737918037b436a5e19b9a3b976846d9b884cf075fdfbe8ab2837da))): {TokenName(30dbbca2b96c05786840bc34d2c9f8a0d93ee3567866902e0c3ba9c63a715390): 1922299337, TokenName(68f052e86dd26d7657eb2e660f327beb8ba06824980091a02bf0ac4ebcdc416a): 4241694833, TokenName(7d486476de91c59f471c958f72946b3d2304e91a8ed6992de7f656e0c7ab7ba3): 1286087871, TokenName(b634ffabebe78cb006a382dd4a1603477668f221fdbdcb4fc7cb5890d3e00d12): 2722243297, TokenName(fa571a84a604363ef386b6667e638c811ceec8fde4a339e78f08a441074f5b05): 2572314377}, NativeToken(MintingPolicyHash(ScriptHash(089b760914e173437485ed05492680dc23e4692607c794ce784aa16c))): {TokenName(4b50c28899cd46744537a5004204c9d9d728f5f06b5d0a58d85a4c9b78093fed): 3055907814, TokenName(90c09083d35712db73fadfc7e3aae9e32f031930a0ac43a7d87bdabe8ad6994f): 2891085892, TokenName(a67f5a95dd298f03fa824da698785d4ee1aa9cd58f8a584a734ab7ce3f6d8049): 3604978156, TokenName(d4ba150d183a99c3f7d557d5c318ea022e03281b9c92fc58dd297c18ea687f94): 2119709419, TokenName(f801b35606a5819c8b364944bd7a29b6ef9ea121c2d2e5714129f9480d00637e): 3050410399}, NativeToken(MintingPolicyHash(ScriptHash(2e8cd2f85e70af3d9b60b3ca1e8901c9504b9692a574108f381cee04))): {TokenName(13158a46be1784110e381c1c922f81e9b7eeea899d51365f487fc139356e185f): 4105100998, TokenName(21c14848b68896df4f244589a8b97c96ecfc61f03fb340b80cf69547fd5dc94f): 2297652702, TokenName(33390b5ae6a08c25671b9712d86f57e0c5ec0a244531cf1901ac535bdd731d87): 1005754467, TokenName(e13acac311416fdd3c94b89f2cfe33d9216c4a0a1a92337438e8897124e7eacf): 3474217748, TokenName(fac1b7beb919570c8f02474c6454a1f6503a09a852c7632ebca8e89ed74728a7): 773564202}, NativeToken(MintingPolicyHash(ScriptHash(6e1ffe77b1ef21cc672c8571e46c7d0455103948e0ba13389138655a))): {TokenName(059c757801e8ece193ed78e8d4b3d10cd0b9e5165a0f563d3d60a3813af9e336): 2787529088, TokenName(6452c2fee5c3fcbc09ec4068beaf194979c1a63308561e3b2f79cc21803b618a): 1795408408, TokenName(71e6f03ad83cbebdae82f68e3a87aa2fbbad90e1e992ca49e0b8e8ed23180786): 1601844901, TokenName(e70008d3615b2d226bc617d9209ecf164ad856a10d6bfafbc3b3011f720e5930): 968495623, TokenName(f9f96d99599e0efdf46248c2a0e06f454dd5361174881f1394fdbf17ca8d5e1d): 3306415807}, NativeToken(MintingPolicyHash(ScriptHash(fbd3ebb4c1d925958b48e029b2ddbc42587ebb8a74957f779fc898b2))): {TokenName(13d4d39b83dc7ceef2756422f6b41a01176fcc63c767f9bc2f9cbd112917f75d): 2582056088, TokenName(6524fff49e693803978743da09b95209dd4158828db8e2277ca5cffc29cc274a): 2164982155, TokenName(8bab4483e62a24e056d6972f887d4203ded62d3fe678666df1706512e2251d9b): 1620361746, TokenName(9646bf625ca0578323664e482040061c4754fe26bb2499030a886d1b9f2ad3ea): 533109910, TokenName(9d5b726eb1e1b0642bd54d22f25b82eadf5675fdce754f89704112ae31b4f0a4): 4075031947}}), datum: DatumHash(DatumHash(f7178eff489ef41dbb22ed848e1bc5d9e6293bb548979d5e68a447fb1f1ed8c8)), reference_script: Some(ScriptHash(fb289ea6747fcdca3e7e049bfa455e8faff05017a33cfc2b0543f4e2)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(559d234f19bc9fd6b3c1601b5fab8dffe0c8763abb0e988a76bf5b862b003968), index: 4009668832 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(2e2f1e1cfe2c0bb6515d6d7695b0b7fed5c4eee6290d8110566081e8)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2666152860), transaction_index: TransactionIndex(4264677920), certificate_index: CertificateIndex(3656972724) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(28b906c2469c30a32687e54890d81e4fa305e4dae5a1c6aa904f4481))): {TokenName(588fbbe44d8b4162967e9a644987aa83c235fdc507a8d55e583cd42385b986a9): 381441679, TokenName(737b9a4468ce66070b24dc1ee40675f9aa7b13e002d3e55b30961adc440f9ff2): 3543701530, TokenName(79c76b9c30595cdad3fb62b0e16fe9702433fd0c19992f22a4f087784ec0ba83): 2387693680, TokenName(953f9d0bc5b4777387c0d963e51027cd662b7b6e9157e71e0dbb2517fa6f26af): 1049034266, TokenName(d1911b3f8d1cdbd93977e58d2a20498108d9d6aa537c86d7fb57856f01e42595): 285686768}, NativeToken(MintingPolicyHash(ScriptHash(521075444c4e02a8adeb39630f33204f4aa57a08419c5061a4d7b83c))): {TokenName(43a27d5e26c83ba64631942c4c9a283095cf87742799dc8f89bffd4ae2869253): 3945412173, TokenName(7da8074067919d62193c1523a67853a08666e3841e33ccc80c92168bd8f03b3f): 1773466242, TokenName(8c2304f2ae7992e7028d8c365f3b297914b1d204761c949c07fb6211b4522fae): 2147886411, TokenName(c8ed9873dbfcda2cb149fac2ac367120aa8350c0b9ffed2c7dcaccea65b9230c): 1652301103, TokenName(e1c58e70ae1f74e3dc53068609a983afb2ba2803985e081019cb4007c5a4a42f): 1647130755}, NativeToken(MintingPolicyHash(ScriptHash(9c2d2c5cbded3c9a7376bbe56776f7e72f3fc4e6b535c92f2cf3156c))): {TokenName(5230abbf696d75f31f70900a2fa9110c6ffaaa6810cc83a06b15d1bb3459771a): 1293869912, TokenName(6fdb5bf139e643629c61e44a7376574d55d06b9578ba2e7b963a4d4ebfb0dbd6): 374768536, TokenName(e23691b12dd6f37371fc685cdb07f887bb64c1011f5112ab906e60feeb342523): 3231861304, TokenName(e6ee99a53df32a5b763c19f5b6554edf9280d6003df607da0798cee2fabfef4f): 4159172298, TokenName(eaae34a4b19c419158b9ff98399f76b346555ae862a1d14e3ec2ab4ee1b9087e): 203744017}, NativeToken(MintingPolicyHash(ScriptHash(bd61cbff190876a881619f86d73a5d55264c86b56d02cc948b14bdc5))): {TokenName(3bb69975e72dbb1db6d4b9472c155db4e688cd9dbd816db71cf52c3efa13e0da): 3233720600, TokenName(8724e429a0c490b4c1c761904c0a4649503ba5162f23e3e2900c9263ef8ee348): 907798956, TokenName(ae809a3c48ce61182537914dee7d4ebc3044ef99a9bd889fda1d02a58a2c5412): 3122440309, TokenName(b609ca4c5bcd5c0c9b3aabd65d005a5bbfc1843481dfe549ade9e05ecc931f06): 2322382137, TokenName(f5740705a56e988c151cc398a18ed5837b1b25fe5f0cb49fd539c8d9fb9b958a): 1243817373}, NativeToken(MintingPolicyHash(ScriptHash(d420e0e5f8d8047a710a8f62654f8494c449af745732d6981862a710))): {TokenName(58cc66455a862097a010123985fef3c078ffa10680b0513a63d3712a078db254): 2202239110, TokenName(5e6cb177c2b701c3fa733e533f011dde3000e33a9a13a7ce2880a00e8fedb69e): 3534401538, TokenName(73d08fafff2bb03a4c297fd150437195c24d03328fa0656720ff4d5f078305fe): 3153435883, TokenName(9b58c4e16fbf0b715fc7cfbadbd7bf42329bf7ec6eb5165b7f9d46eb4cfe5e78): 2162236305, TokenName(daadf610c4b72759caf3cc74a68ccb4efd19c8264e0c95d162372669edab8b70): 779747504}}), datum: DatumHash(DatumHash(49d222c0ac35c9b277f1fb5dc57261e12bfd237aecfdb7997e89bc728c0e0db1)), reference_script: Some(ScriptHash(7195783a1c80a32e9bedc6f4c580272033dfc6a564e1b2f1ec439af2)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(5bf01807de9c6759a3040495c46900d6f1e1004f3f4f545929077f875853ddd8), index: 3510854106 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(3397e121372202825c4e91627e122623215a0019b5ad766d5bd3b259))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1e6319017bc6d35870dfbfdeeef73fd9ffb82a10471f02ecda7f30bf))): {TokenName(07ffde46fbb00dcba2284f68b2d54db29792c298a5323da8cd721077db38fcd1): 3007032970, TokenName(8bd025268c55fe46310811f006e3cf45e411bec5a9a312c9d0a1effffd359737): 573362926, TokenName(d4f6b2b4a9b8149905f5df2506054274e2bbcd7e6b337ef47b7e7eae4c23b2be): 1877352224, TokenName(d7a434c0b2a267afdaef4186da1b5163b246cce62c5810d00e52639cee538dce): 3875247984, TokenName(ef0efcd032b2ba178cfe8e6d1ce3488a7342725cb822cd2bf40755d807cf13bb): 2395546946}, NativeToken(MintingPolicyHash(ScriptHash(6096e4d59492507b837e304772ec84dfde49a2257cffc8fb1f9e1ab7))): {TokenName(49ff3246d4e6cd47f30c2574385b525c9c25dbec7a11845406060a37f6ff71d3): 3001461710, TokenName(58b6fcda5fd1478f810fdb91e93d590d563eb52836f0bda948383c82096f1838): 3909115795, TokenName(9f8c2968e3335942e64b8834377acd2e39ff74c49c7398deffa0d60d47b30a4b): 2820312981, TokenName(bf1e3ebc6ca0e89dad0c502bae61e0b80641060d423ccb5b42b16d6e6d6d32b0): 441029893, TokenName(d397907889f6e56e44d1e1db064e617c154c66bdce2ca6122a9b93f5dfe08044): 4227151298}, NativeToken(MintingPolicyHash(ScriptHash(91fc120a6bc95ed35e6d1c3de97437b88c9c0df7a42c3c6633609749))): {TokenName(8a2591f2823d48dfb34b43cd88ec0156ded5d20073cf600a83fbe7d77f90cce7): 906054177, TokenName(b74c12412fbdf969b8e25dcde612cdb30438532a9910300684ffd76c40a8ee28): 654832590, TokenName(d55b8371ced3d49abcd773d6c544eae044629b7f13c8e0649b8fadb243edefb0): 4096721826, TokenName(eb1b0a89d22d1ecfbded6adeecb7288c11b6d7f9f2fdaa9c9aeac2ae9ee4c961): 1432617745, TokenName(fa41f7f80953bd2d6a8f8b48d6de89167ec41048207bca1094fc9ec62badf84c): 3792596042}, NativeToken(MintingPolicyHash(ScriptHash(ca11f8a4aa299ed89410ca59f46056bfba173c541d1b17cee8b3ada8))): {TokenName(34a9842c88047e70dd7ba5f429fae7e4548afdb2c33f30b917b1b7f540460e05): 2855078087, TokenName(70f10b73e86031c44e9d7879f6fde7705357ad25f9d1dfed815bf3c1c57aeaaa): 3190021105, TokenName(8363d689f91d0c6a3ea19860e1f612922cc252b41ebdc58439e78d3f152a6b73): 630956407, TokenName(c2e8b562eb4372ed2e582efa03e416c6a0c072119e15a12bdadb43e87b745564): 1048663251, TokenName(d827c3f71c3f1b0e280af73253cff6ea8bd33f90beabcd15ec326ea8c8c46767): 2217654504}, NativeToken(MintingPolicyHash(ScriptHash(f326f11b693529a85b8c99d504fea277cfd8efd184c21542d61d4cf1))): {TokenName(1e22c06a65b4f4ff321ceea30a50b355c58eb1c2ee7c53f9b8809401c0ebb9fc): 248800710, TokenName(3cc271e8515140ea3fa8a9405a4bf8181b3e5d449856d9d229b9f82fc794e087): 2126954849, TokenName(aa47821195e4b19b9e7a85953c5c117d95207058bdd214c84db24883f78f69a3): 4016464483, TokenName(d0837ad600e0a990eb292b9b5987c8be5b05ed8a8a8234d9d8fc26f91512c420): 4214225111, TokenName(f48663127098c9ce94abbddb78b845cf38055f8e25df2b0f9bece6f6f1589b38): 1601232670}}), datum: DatumHash(DatumHash(04975756d0faf9b1b030c54f60108983d5d33b302e45f940736bc7f96f083087)), reference_script: None } }], reference_inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(df415a517550c6447e0151075818b245d038c64041b32b0e40ade78aa6ae0a45), index: 1616464634 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(5a739f3de0668e36ba44a52f4d49868efcbefe4083311254ac405b08))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(1642185967), transaction_index: TransactionIndex(1760037649), certificate_index: CertificateIndex(663801260) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1f523e96ccd098cd6df5a5564c7bbab3a15dce3b6b6fac5fb174a476))): {TokenName(24ade8d92c0b61f74867695068f41422fbfe4f2ad4af58a029152d31b54e4f0e): 73890963, TokenName(590d57b4d32c0f3ff17a0245ebe29d546081bb18a2540d4c1ca62d9337e9e82d): 432334435, TokenName(83fefc093db994f9f94e58d3b4493da6514e63f4a26d57205d7c9ae9e9999726): 520557240, TokenName(a390bf268fdd95cd2d7a3d4d5a36fefc44746363c0decf8fea06dc1fb810ba07): 2017639615, TokenName(ab2a2d6409074e673ce5d02136d684126ae5081fd056026c762ae682ba6566d3): 3371327882}, NativeToken(MintingPolicyHash(ScriptHash(3ff91680463d13e8658e6622e8cfcbb874a2c1c06b1d3d77a1f01cd7))): {TokenName(341dd49ce78f0d05e07bf7836a9401268df81394d5fb1e63dca1d1b7c624e2a1): 1636164768, TokenName(3ae27a73f159587bdc5e7a337dd8fc8fdbeffd3a83cebabc55dcaf2608e0edfc): 2434315557, TokenName(41b20167c545b9197f967307e9d7d6ce58a173ed9ff283054a3db3c815053428): 1875763754, TokenName(49bd43ec952138899db4dcfbf784ea824037506fef27cd4c2e90b78959b7f365): 3707640368, TokenName(58214c3b2e9efd3ff5b082ba446e879c07807df1c3ee7bbad4d865aa223fec3b): 1984329010}, NativeToken(MintingPolicyHash(ScriptHash(663bfe989ebc5a2c47a3d40882de274a7ad1b999a30c470996e15bea))): {TokenName(25b9e20732e2e4097b00f2b1c708be697d2c9310721413a5452591c104f9804f): 2953456755, TokenName(488ba5b3c0807faaa44f59175a45aad0f7418103355116ceb853c0c72663a78c): 1465740540, TokenName(ec0fd3cf042a8075bb044a640d5ceb1f9916600fc4a26ab577dcaf9388a2aa38): 1111893591, TokenName(f34082bba61c76b0d69b585f8bcbb47cf68b4c7ef6ebbc91b8cc7688b1c02dd9): 895735227, TokenName(fc1c46beecbed4ce405834a512e57e6525431abd9d34e1aab842503a10560df8): 1571903970}, NativeToken(MintingPolicyHash(ScriptHash(8272c6bf89dec17e0c7fa6f89112b83b981546fa5ecd21ed84b3dca8))): {TokenName(1cebb482ef4947b994c00bafdaa4aa940f63c3a9ec059d8667da977fd7376e5f): 3166366252, TokenName(937d23126ad90929c9ec06ad19648fbf8b7dd6ebe2a1fcb2fe00933ce9c476c5): 626618109, TokenName(98eaf07a98270c03afc15f8d0ccc99015c3b8b4c7436732a5834d209cb09b09d): 4274731156, TokenName(da08ead990006575b9a4bc9dafb61a54e3be96284c6b6e5aae55bdf642cd5144): 2040089960, TokenName(f9257d246196b66d06273f31f2e2ff44295b3d4500bd74d93f8c111cbaa1166c): 2184766469}, NativeToken(MintingPolicyHash(ScriptHash(a720ea7e0809c3ac5c713b5087ff3e644933054e60daacdf05ec3664))): {TokenName(4d9c8a991d927f5a3a48e23c6901e33ef40517d951b6f85a13e62738c53cdc88): 728993400, TokenName(6a2e66d1bf469d3700d9cc659789f48d7871af58f20e23d17e7bc4c5993ebbd7): 1636587822, TokenName(923f2410e1a26de90deb9321d6e8131513bd95997317af85c297db0f4ee98c59): 3168320013, TokenName(f4e4dae63403db9b5422f649344e93765b5939fecfebcf865ab43ad189012fd9): 1619540935, TokenName(feba086c2a67091b06654cf2581e0958433bb98a7684bdc45c4382ab0d2287b5): 1112864610}}), datum: DatumHash(DatumHash(aa381003c42ab45f09cde6aa098ba1d100c1102f1a95c03700ce661edc9d2792)), reference_script: Some(ScriptHash(9deca16118132eb6b89f3e97efed1c0017f116c80af86bc0d944b5ee)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(c79f9376867c429a8d6307bf1ba38a78b92ca5099b64d353f2bd5f13d21e47f3), index: 1046223877 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(5ebc06922a39ad8a6d8ddd73e2741e2d5213a188fb27a71d50e4e2bb))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(0b63d507e5a04c9716e3858d22a325a72a5eeee0a6f68a1484a43b2e)))) }, value: Value({Ada: {TokenName(): 1437288783675715623}, NativeToken(MintingPolicyHash(ScriptHash(0074a43a2693b26cffc8757369540be4be08d0e5b83eaf9161269a8e))): {TokenName(03a926192b9f9f59d0fc810a03723010edf357233ac3969bab8cc3266e439a26): 1131830174, TokenName(1b5f59283e42113f6ffd272dca36695f730d9bd0d4bfa37ed38e59d74e87e702): 1440155443, TokenName(2b9455fe459033a04b7b1c1b4838d4bee12154b74ff66b87bfbe89238908d9ab): 4054564423, TokenName(3de84e7135ca95aecc0d000c738094ce096fe02f1b5218e283b69b1c55457463): 737078855, TokenName(7569a3d99a6e907ff8c5656f2a1c6d2e712fadc5cef23a00124dd3e1727126a5): 564960642}, NativeToken(MintingPolicyHash(ScriptHash(a1bd784d3e3023605fb9c95fa2ad4cb30fb915c884551f219c8f33be))): {TokenName(06747581c17ec06e4411dd9ccd2e22816df772f1ca8c97244901d3b43713bc32): 3692834816, TokenName(a246734c268a8dd05ae3a670ad3c6ba506a3957e57c403ca70aa97d033f1e617): 784084324, TokenName(a6e0cb8449baa701071e0f177e348d5ea2044cfc71bd08386c013a4e4c7d0daa): 604805320, TokenName(e799900d7136ec8aea19eeec9ad8a32aa836004cbc95518cb079498cbba1edab): 278927102, TokenName(e89402e1d2b5691a22eaaf2d65b6565aa4b6ffa4a48d2ea8ccbec2e092bb8272): 3634787523}, NativeToken(MintingPolicyHash(ScriptHash(b8e9a529c5cea23ebdaffd63012a782443b1e19aadd5c0b4248b0b47))): {TokenName(00c25213c4b035d4103ff424dc82318beaf1d5c1910f5b132bebb6f29bd16ee3): 594035392, TokenName(3f13e06840cecfc2d1a615b3193d0a3e41c5e9c2ca0cc706c02d15ccb0bd95e1): 3394473675, TokenName(591f635766d756c3295d3cea405f872d31365962f275fb0fd3fed619c796207e): 2482322837, TokenName(6925e28f1645454951027774f31eed7256784b14e51d2bcc14b6cfcb59eba06b): 1270601231, TokenName(dca0e1ba39e0cbf67c07f9ff559bc7bfda83576e2d8319f436e75a9e0d334437): 1732855562}, NativeToken(MintingPolicyHash(ScriptHash(b97d707f5fafb96cdaa3e2a19c39f1f12a8d0081c2e6fea3cceffefb))): {TokenName(173172bccb64ddab80accb733e3d96f10a8d062ecca6859a19644ab94bc6fac0): 3621726364, TokenName(17e742690edb942f790c0f97ca1948fe64d9f575c9d0ef4d423b1f3f0e2c4b8a): 2191440209, TokenName(220eb801bbc5a14fdc4553788f2a9e57197ad2f56afa2030ac36ef591b6d36e0): 1170382379, TokenName(b5570a8fd206cbee80a07e58733deeecde9b7222b8897102fbacc978fb0b3d7d): 3932551032, TokenName(cd897fee77c48f0fa95ee408e2037e2b8ab3bf4c44c5d41a7e9b157c9b17bc3d): 2794123672}, NativeToken(MintingPolicyHash(ScriptHash(f672e09b3595ee889e63e3b9b4023fb5467711b252222ced42783ab5))): {TokenName(1630a8bd2d937d0d2070f26440e057f0e12ceadaa1c34c0460d96b466a004729): 3163183386, TokenName(23a039a307d2e849cdcf47db0a685036424e5ff57730c424b8c45fbada65b3d9): 3199400815, TokenName(29169bc37d2e748eb3600d47ca6bd98eb14e3817d6b7d099d144b52f84c5c93a): 1882230065, TokenName(7ccb634032bbeb2e1c4312c1a1cca9a9bd685f5306f751178f4076a8f37469b7): 4271780163, TokenName(7d3501889609d089e4a1a4274a8854b210d7d9b28e398ed272ad0df770f467b8): 1943632457}}), datum: None, reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(574dc3fffdf7f3ed60aca80d1ca2a2205b5e3fa9e1a9667091d42dab240bcc43), index: 1737862752 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(15311b4673879ef3dff1bcda3f0af14f1b655cf8de19a8ac983975a0)), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(98b3e048de37f98c02a7fd31af92e9db6c20d781b0168c2822bb66c0)))) }, value: Value({Ada: {TokenName(): 16230381661492709578}, NativeToken(MintingPolicyHash(ScriptHash(0d1ceb7ca1121466f7ada249ca1c3e5fcce9d44021140a3ecf3e9cc8))): {TokenName(10fc501c063c1a74a2359a2172841ade6771462fe78d29095f7f0f3266968281): 2582985031, TokenName(3724a231d84bd925d7dabaaf5d94a15f151c2dd54ff9fe58ab199e7509c227aa): 3694507265, TokenName(39480acef125beed8909b29de204983105398b33f33358d86f98777c5451503f): 2205022978, TokenName(3f8c6652c58249e0c35a5da6546f80c5926f1f42b0285ea1d54999079df5f1c4): 3407071085, TokenName(e2b6e1f8e5b0e80c928bc651891b77e4ebe207db7e6c1f537c4bdc9a350bf4f2): 872356174}, NativeToken(MintingPolicyHash(ScriptHash(3c73b484f46bdf1d7bb96e1ae533d3e5aa1d16edd2863fb360fb7b55))): {TokenName(06d12763b7542590703fa42e2e43318df066acd7409fb22739d6515bb0a03d79): 1819498667, TokenName(16fde59d7533b1380be38121eea39be53709450cf2e726050d8c60e47ad62933): 806139923, TokenName(569253efe1ec413410968ef31e432def344eb3d2492a7db72fc3b73d21281755): 1878438217, TokenName(b1ca962fdce4f75ccba251d99f165a789ce31c6d09559a94974b33a03c3a88ae): 4007461623, TokenName(dbaada2cf21170b22e59b6ac3e7a5533d1bf48b34724aa92b62decd929c934f7): 2697836738}, NativeToken(MintingPolicyHash(ScriptHash(46d6ae712b079556715503b24eba3a475eaa94606f8d78feedf2c65f))): {TokenName(18b811a121897ba78680bc39eadbe33a18739aa183a434d59552ae7f24bc32de): 3777657427, TokenName(2326797398f3e07284b60b036c05f6590150cb1038190ca59f55377e206f5ace): 2877689602, TokenName(8362d78368776a9e80d66afa84462c2dbb6a5907d44729ab9279d4dfa723f6c2): 2145995569, TokenName(a9bbd487d4fcdbbe140d117b189d72a27a68c26edd9e8e5e54bf943f29692453): 1808718724, TokenName(cec5091ca8b1c71d5501f5fe589f285b175807b2bef03ad8ccdd457e7b08908d): 3272690649}, NativeToken(MintingPolicyHash(ScriptHash(e3338024c8a5ffb0c28de02741209d83447b3c0675e2eb6d70996a4a))): {TokenName(49ba7085f9ac95c4c599c4d52a861bc5426329867ff6021ab505e3b12ad48aed): 3370763027, TokenName(a764c5883ba2bf19caf1b1aa118a0f2cbca77b2e6bb8870fc2c17e5df8c57c59): 2806304134, TokenName(c43ac5b2c342c26147fc855afcdf90980b35c568dbcc9008372c046ff7de43e4): 1106846568, TokenName(fd898129fba868d557758e7e32ae34c8503d8c62e068a961c115ce212758f392): 339702258, TokenName(ffd9e142dad2df259756fcd01505238c02b9b13e3195c3ba5a8c82d196827c03): 2218489873}, NativeToken(MintingPolicyHash(ScriptHash(f0131469c07a63ea397e90bb085ef69d6cbe8edab961ad5ab1428238))): {TokenName(36412d5b62f159da7013a415d819aa24e04351e112cea03e3c6d150fa50f566f): 3116135450, TokenName(5e3d08814c6f9c2e1429277f69ec637133298007ba5e61c8073c7c4e5dced40e): 311137970, TokenName(7b725f052075c12b6a694ab63685621c6cd87db9cf3a7e4c676c9e4537722e84): 339725338, TokenName(d0063f34929204a161283b38bfe7b86ef20696150d9d0b2dcf5cfae7e57e97b3): 3418255052, TokenName(faa9585105f14e92d29cb2fba076ccc8825eb3a7554d99f1482024539f857023): 2693480752}}), datum: DatumHash(DatumHash(1eaf166dbb0bce4763cfeddc4ed3bd2ef481139d3c151016d768e7efb1f6c02f)), reference_script: Some(ScriptHash(729732baece33f3bc70839225a3b5c905e687e252a1f7012fea33263)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(a6ed2bb95a666a41b3c3fb8839b684effc7fa7bf6e9e54a7b33b46393fd65d66), index: 1928408220 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(4a1e2a6888b02a397b323e2533d0750f671bb4e79bcc85ebc4cdb531)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0fc8fc17b384722cd400d4c54cbd71d5e2a5ac29bb6cc09be8f2f755))): {TokenName(35938b0962341321406231d16c53e72c6bf689d8cc05ca674281ca11f26efb2d): 3055792083, TokenName(59378f9e0eb588818f85c71944354887f2dcee121f80fc5067ac767c42452775): 3070254985, TokenName(95b542ce3eb0392e33535cd223c096a958e4f3763284b1281f9c7e8815d87751): 449976769, TokenName(f1753a148eab554119b5a22104a5c6733122c84e856356e9ee61c8e91495d3e6): 2498916922, TokenName(fbfbcde34f443cabab43678abdbc28f846f39c38122ecce88b12dcbae1b59333): 1101837015}, NativeToken(MintingPolicyHash(ScriptHash(3edddd71eca5f8a70d09324867d7ead9f9d33233e1041810332d15f4))): {TokenName(1da1c3fa4ed1c921b34e069024199c079938272ebfdea23c6baf5b4b1fd613cc): 343871666, TokenName(3056be3c98d4c7bf3034ad5a94dfb0e9de83b7c53743a379e9fb763a92f3cb70): 1496672825, TokenName(566ac02682a92c4e51cbe0b585f70d930999a27bc060dc44bedfec1aeb969318): 2143451717, TokenName(84c4215a802391fa6e881b67ca81645235634c4436e328e2fe9e489c154a71ba): 582051554, TokenName(ab7df4886ecf1c201a5cc0f2c3e11732064c0383c12a45e8284bc6be35552ee9): 2477410850}, NativeToken(MintingPolicyHash(ScriptHash(50aad9b6b1457fb78ebe72a6d0c4c81aa39014a6ada137b03b959a4f))): {TokenName(058767cf5b7fe8aa163ca3d9d3815e3342fbb064f78ba69bc5ef35740a5fac2b): 89405133, TokenName(96bec1ef9b53b4b1bfd65c5c5bd1c751d365a535acd4bb11401a4e4172e83fdc): 1758977106, TokenName(a0f0d60221eb611b192c0318fe46915f41b03839e9922c40bdc1a326483cc36f): 2123971366, TokenName(d4ce842c79fddfe255e81c25bb4189e53e419cf4f74c35d5aaff12c198466456): 823370924, TokenName(d6cc40ab3a5f47dd590dc0bd2a87761f556b9277fc7301dfab8c1dc42327f51b): 614533644}, NativeToken(MintingPolicyHash(ScriptHash(7dc5472beef575dedeba07247adae0b43317f20c7d4f7d29d2ddbd4f))): {TokenName(201daf01c4717c5f43241ef5f170ae2e873bd73aa67444f5c49f3ff1356e9bb6): 1107385662, TokenName(4f55db736a7417bfa461633252e53767be23915fbf2262e308a0f843c6254d8d): 2200142665, TokenName(9028f491cb42e1f58077de7b860148eaba964c356aeb17948f51fc4d1cd05162): 3435285839, TokenName(c0bd6aace9ea7035000bdca54a0f75b94cc500ddb7c72a45e178556ac122e575): 1855012893, TokenName(f86c5c22cc8fc83b9ff9887919723ad0f52c74a35608b4486868d48309d12dcf): 292819744}, NativeToken(MintingPolicyHash(ScriptHash(d1e78e1b55ecc37099b09c19c4e43bc7d80091f6f7eb04a3dfecaf7b))): {TokenName(46fa6f11a1a1804d62e54e99c6008a8d4dbbee7e1ca8ece13723f41b7ae91ae3): 1958321457, TokenName(98b6a889c7f845563a43ae3d7b9b79175178dad15a89aa17857833797e478b2a): 3410658069, TokenName(991a5a44dff719183517b49de66e4e7e5407332e255997d4b00f9f2ca935416a): 2785847006, TokenName(b17a60c7d3b9be063fe04e5d7eac10680d3638a4b7c1d89d1a00b48db679dc1a): 3566753732, TokenName(b6ec271b2023f299b9be96cbb9eb0777f070f50b1c216e1dbc40bc226642bd6a): 495228508}}), datum: None, reference_script: Some(ScriptHash(82634bd33f7891bb389fcbdd6115237f7b65023ee592d3f11d24df1a)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(e8d0512bebc3f22bdcc230f16e701440d7658f93e54483160d65b6f62ab57c29), index: 2071800198 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(dcb280b41876837f300028983756d137e7215df92c08fb9b79f75a86)), staking_credential: None }, value: Value({Ada: {TokenName(): 5624235340638428308}, NativeToken(MintingPolicyHash(ScriptHash(1bac1e9619c62c8feef66128745efbb22d6f0a64aa631f461368ca63))): {TokenName(044bf02b9bcc5f707eaee855f0bc004a381b0d824bbab801f6d8c29fb58c9ee0): 3379296639, TokenName(36561fe689fba2eb8293e2cb270b3eaf53aeb390cf54f4f601f4dc006f8dbc14): 1047494172, TokenName(76b3183a61ea1fe69c0849452b46c6fd89d1a73e2f53de79bb6dd5d232dd4d88): 1290674388, TokenName(ca9f04a8a1510e023d8c044e4795ca4acb6596969280e22c37575e9e89c43cd4): 353384854, TokenName(ea41a6b1405d779ff6f61c6c8bbc8e0b9cda6bbf0412bc578e481da04676167f): 3704700847}, NativeToken(MintingPolicyHash(ScriptHash(1cd2215b34584d4dda4bab887b76f94d89de01a13abb61e5a9650528))): {TokenName(321a8831d15a104684ded815355bcf613f029df63346b4526b446880321c7a11): 2279194748, TokenName(52c417351a1782ae31c242a4cea1422f21279745f58b5e86351a755c5d049c74): 447980304, TokenName(58f95e1ad406bffc94e98d115ed4143f6da0fc5020344922e2d1d330c4ed4e32): 1746535223, TokenName(89887ad74d75176efcfd911b64d5e91155a4ae30fddf75b3074fbf215fbd4e4b): 3134212159, TokenName(921074537b962c105e1bc93216b3206fdfdf532c9a5f84f2691d5de18b27bd54): 495942185}, NativeToken(MintingPolicyHash(ScriptHash(25cd2e487a68d1714489f0bd1a74544ff02faa453ee82a18bbc666b9))): {TokenName(2b60bb3694f2894cd0a0a8b384c54cff4dd4e742998634bb27476bda6609f533): 2655304319, TokenName(3c86f4af2e89fddc5617cdde51d98dcd92fb90dbe3d97c7399e52e99f758ae73): 2837538083, TokenName(cf8ff5e5069ed337f0b84eca5b5ca2245db5dd7a3f1f5876d45ad887e306489f): 3133768452, TokenName(e870a213c3bf8136803d4a89c5562527828ee169d5a656bbe9f9083365e7216e): 1159067530, TokenName(ea558ec6232b2e6a59f3b92b937c9448f9d37ff4da3329e6b7291b6b3e1776fa): 538535041}, NativeToken(MintingPolicyHash(ScriptHash(87bd1e399ef87a366c2f862af586f7a88f07966a2e0688a2ef75c166))): {TokenName(02c2dbd555cc125cafd605272dbf268cca09067dfefdaec562ad9e1f31bdb59b): 1031204712, TokenName(19d88465a294458f0e949947be5bdfe74f6ad0e52aa92d7e69d714d88be82509): 1211739728, TokenName(3090a67fba097b8f60b320ba8a0eb0c1b73d1c37ef1a9e9888a50b5a9dc948ba): 2089163239, TokenName(74f2a85523073b48388f8649d1981d46bda39db4aa82ff1775b53ab686b83ff6): 2360565832, TokenName(ed16ac0eeae5444117899b1a858abbe2b9773633165a15d33b94725a0138dca6): 434838110}, NativeToken(MintingPolicyHash(ScriptHash(e1d315f27b5cd3cbe257dd6503679813d062d5c657841c5cf9c70367))): {TokenName(0adb1377740dfbb286c40b30b42982ea96b55b2d1bdc45486b72eb361d27429b): 548348522, TokenName(62e52135eb6d417910f8f8a88e75c9d6e6dc681f555633c9e25320305a02a46b): 3899433438, TokenName(6d83cc65bbea2df50bdd3ec930330892797278df582d8479dfa624f3a63cc412): 1029726376, TokenName(d80a519c322837737f5a3a91920577f3c39d398ba4b78626e032be10fe8ba3a2): 284355618, TokenName(e71556ea487ef26bfbcecbbc1e2d5b51cebc06b7a2f3b87f9ba8e70cafb92700): 2559183258}}), datum: InlineDatum(Datum(Integer(-9956574158313405922))), reference_script: Some(ScriptHash(52cee8e61aab51d5f7609891697546ac7d87eeed93c2c6dc3acd04ed)) } }], outputs: [TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(9c58589c8daea6e0b0409c4f7ad0b5f81c77da6ea341f3f41bc72905)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(3059909667), transaction_index: TransactionIndex(289629170), certificate_index: CertificateIndex(418984329) })) }, value: Value({Ada: {TokenName(): 1778766396015761356}, NativeToken(MintingPolicyHash(ScriptHash(1197c6b68c6ea8cc3bd9c65e839851e3da58a6361c76251bc74117bb))): {TokenName(321d367c79a4aceaa2e8bc758200abe1f124f537e911df4fb33b4445f92a4900): 3508830932, TokenName(64bebe7bd1091a3eb2c1c8434ab3a20920e5564d1bcd8dc0df82d7eef7dbfc86): 790197286, TokenName(6bb8ac3d79705dd2ee39d16cc1c4a10b8ce210cab7cd570da8e9ae0cf331bdf8): 3371814343, TokenName(aee720de84015b51f7e36d957c7f6fe676da8baa71343c84fe55a1696714218c): 1578127368, TokenName(db14a6aa9dc0f0d2cb7610fdec3fb3b75a5a91c51cf8b31f8beaaf69436ca212): 3210872368}, NativeToken(MintingPolicyHash(ScriptHash(2a5ddd5284b67cedbbc0b9542944c54fd596e6a43d481de474ef0167))): {TokenName(1f8804ad5e8d32d68ba6e80dc84093fb057f25df3966741a3cefd239f779a289): 2829558214, TokenName(c1cae4a50ab84144428a9000d3e3fb22ba871982a53722ee99d65a41dbf2eb46): 1823425964, TokenName(c1fabaf56e2d6b9b575e2e66a1179a86e36660ec9acf91371cfb6d9c09490a32): 550930646, TokenName(c387c1bced5c13129aca014db0288e2244027e119d113d09a763c350612cdc67): 4216692701, TokenName(f4fc067b6a112f17b33008aec89995b5bf82a7d713d7310d655665ba75b0a0d8): 2786331769}, NativeToken(MintingPolicyHash(ScriptHash(35ba236db90c96c3c68b24a811395ecec20ad533dd5bc7a1a5e201da))): {TokenName(341e212c607383fab014eedb084bee56f2748007830aef3de482b12435f3db07): 3512203437, TokenName(562569975b624cf11e43043c032a114f8c7bb1d599a42a71481b86093e1234c3): 3589545001, TokenName(79dcb3e70bc3c6d22526a623d219c8bb0de1a8dcb45997a41a78b1a760e598bc): 3627015719, TokenName(a72a5e390b047db8f424664553f2a2f66914a974d7d5ad613f6e673e0b66b46f): 3523736973, TokenName(b5a42eeac1876b471fed880f36d92f4039dc906d2d518bf44122382b057088ed): 645553009}, NativeToken(MintingPolicyHash(ScriptHash(60c58a89772f3f858ca9ff76f1ec016afba91f196ff136a65439928f))): {TokenName(2362bad679a7ef42722ed43dbaebcad84b37d0054f9c64222d5d791cb4002e65): 2033594753, TokenName(48a009b659e52be6a9d9965f2f17db6f67203af28f5d0c92a21a1a0cb1ec7bf8): 598407792, TokenName(73989a41f7a31ce95ed23c1194448f66f5ca8fbd22f3c9fa83aeb7f3906167eb): 4045763823, TokenName(814d6964cd4464d1ab56f8e37105c739074096e16f0603d6889390431f362326): 2385763296, TokenName(e20e4a40482613712852f8299166bfcb350d3df88ac203fe43463558ef580228): 3226393680}, NativeToken(MintingPolicyHash(ScriptHash(b44b437978704052f799c0dc85035e0a00418d70341e4b215131b99b))): {TokenName(8a840ac55856e507341465ba66a1b23c6ae7fba76c73d5fdb415cae1eb8853fe): 2344408113, TokenName(8d81c723280fc3c49b8a09ac006fdca235cc712d764ccc4b2ac973c7cb3b067e): 3349808160, TokenName(b3bc1bafa4c4310fba9a68a081e692371d8c7b735bd62d84c1d336640fcb08e3): 4201247644, TokenName(d2fd15449c1b0168df70370038ca3f7b4ce291be306af4ca47672e6d891d824f): 3290109883, TokenName(d6e4c6a99371599e79f9412425696f389808809c52793ea63cd860fdf0742c59): 3890841551}}), datum: None, reference_script: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(0faca775bb455e5e7201dc2e15b8419c60b5af395a0ca6458a4f45c3))), staking_credential: None }, value: Value({Ada: {TokenName(): 17191670480344166570}, NativeToken(MintingPolicyHash(ScriptHash(13b616f498a53cd6d76ff003cad8dfbfb943862699d6ae1dd2f6d634))): {TokenName(1461c1038be0d7c206f85ea0b74bfe9dc2ee27274ed6712dd56cffb7898c7696): 1324640563, TokenName(198bad8abb024b7a1eb03cc65b6809f546b0396a90251df6c6b754be3aba7b84): 1867992264, TokenName(534228e3eff9fb336aa0367983f54199fd331220b4218d01b8123a981a80495b): 89428173, TokenName(97801264b4899a0a218373e01685c6dd4a9434a01ece135db94d15c6ee25d67d): 359436282, TokenName(bbfd804238fb1c4d9cb616ce09448145efb2a2dd549fdb36debf6bdbe4833e4e): 4275275621}, NativeToken(MintingPolicyHash(ScriptHash(8dbafc2e9759cc031dda7d36617b7e05560f192a2c20f2af78fcd76f))): {TokenName(55a428280d87a1eaf60a893a0f60fd237400df3466b7ce5802487bd2de8163dd): 967396829, TokenName(8499c0da34c51e108b13d1c676e3a9c6856d138be064c386570d11099bb46253): 3160710516, TokenName(9a727bda26b5febcbdf4b453b59224649c413bdad806a554698e8405547d7bd8): 1816487296, TokenName(9f906cc1e3fb83b442d8a23944015b45f4b6d71ed71c1e81875ca77e9050a0bc): 2866195868, TokenName(ee0afd07c03db18cc80f8d773cb25bac7165e63b2a6c68462d0b9247553b831c): 1570877030}, NativeToken(MintingPolicyHash(ScriptHash(a251260a0b82b0d05a91ed969ef66eee43699da7191faa844dba8425))): {TokenName(4ee98a99dea47d7d7284bad0fdd29a0723f769d63c05806134739506a2021b89): 2346037911, TokenName(65dbf707d2322852c658be02d749b38c59401e0409e300ddde0d12a34447b6ab): 1315013433, TokenName(6d0db7a763a6f24695afee481a6416327c0568c9fe2689568a04d332e54d9881): 1499516955, TokenName(7b874bf3977c665b77d50cc4eb476fba32dffa6e2b71f5d9d5703a28e228f5a7): 580680245, TokenName(8d36fd16080e83ceb493dee8288cfb8bfb79aad0343111b1709d617d13927918): 3616164132}, NativeToken(MintingPolicyHash(ScriptHash(a3cd9d960a5361d08a68a62b391bce02f40db08014e790fc50237226))): {TokenName(01ef3f234dd923cdec095839be17822c67ef030c04b575d9e095e39d897a434d): 103555697, TokenName(2821f1e8c7e4f204bb4fbcc85a963902874039f8dc2ff00b703954e3393da340): 1155791812, TokenName(4fa210c049dc8d7da88885b68dc0eecb2fef421fbf3415ad37eea80d10cfe43c): 398998325, TokenName(882f0a31380fd236fb3a37d2d265ee00435de875bed57f9535ec842d11c1f1fc): 2842051405, TokenName(98b2bea36a9a055d2c13012ffde883f02876d1a9c232ec7b400d0c19ef209db2): 626549601}, NativeToken(MintingPolicyHash(ScriptHash(da54406e8a31e3bec9e2902f116a036b657cd4edcdbf1abafecdaa15))): {TokenName(00ded037e41a50f777d585bfa6d5c455aecb2d44ba4106d23537b9e214d2ecea): 2915435893, TokenName(0971f6078400812c5e84f8f3b2dda6442b60d4342955c1262a8668e10cd7e84a): 4088687709, TokenName(acb5df938c0510ebcdd443d28e98fb4d3ca3b88a3f5f80147cfecadeedfb6d17): 1175270776, TokenName(adadbbdc61b5e5553fa34ff6fe9ad6c6bddc9083017300ae994a1cdd1bf277b3): 225174560, TokenName(b5ac403a4a9c86760b29815d564fb7835acb9c24dedd2ae20abf3ced5ee2627e): 3526364138}}), datum: DatumHash(DatumHash(1f1cb46dde0b2e062f29bdd4eaf704590dfd4e75a24a594fccd6efdcad82c28b)), reference_script: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(9a3bc0719ea5cefb5c19d499e7f789f208d186900d5af551f968ef90)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(09d8289290e5a43c238a7bd3e4ca9c165fc96ece0d43acfded07d0a9))): {TokenName(003f5993d9e6be11b15e094030b592e24fc6bd70e3bb475fc1e6a9f8a1480449): 1815528716, TokenName(7ad73078397aa3477623017b9a3264df30a68b40d65096e13c9af7555f083cef): 1229163749, TokenName(7dbfeae24bca1701c87c91c25697a06bf478e35bcfa0c2444e93ebc20480ab68): 1382274669, TokenName(88b26817e33204a94f0898c894cbdb6970f41a699c4ee2bd73749b01659302f6): 411281757, TokenName(c089595ea7ac47a21b89c9383af436dcdcd6a93373fc42bd9f2cb5f6e0d6c7ca): 717514761}, NativeToken(MintingPolicyHash(ScriptHash(86f55c87fdd257e4bacf0136c5d28ea39d360f855c7e5cf6f242bd45))): {TokenName(23b21e6cdfcd23c5a999b219f085f2053aea2dea8bae3e5c75c36fe5e2408a9e): 2338625822, TokenName(4a7bf08cd87cd3bac81e17ec6552ebad9d2c140f70a39c0bb5745a0220ba8146): 3024758461, TokenName(5456d402fbfe36c7af4caf42fdd39e6f4a0aa1661c0fa10fc0723f8271bf89ef): 2136873665, TokenName(998f379a2407323ce62513463f459530daab36205d0aae750d86978d29660cee): 1783137114, TokenName(c24ae0cf5df8dedf4dec6f0112c6d0dc4adafc90159bf9651efc7fa2c701de33): 2718346328}, NativeToken(MintingPolicyHash(ScriptHash(8e81ab149961745cf535f1cdc0cc81950d076f4e98fa40847ed43100))): {TokenName(176b0db781b4cdfc59c2c2e4fb22733e1c228bf81107c7eff14d8213a1a00a74): 3843140964, TokenName(2d47eb236d7f4f8f422a27329df18b7c9d52202528be053c666eb9a968a357fb): 2710449835, TokenName(3779482f325b3889e3ba4387017bb05bcbafe02ed258f48363d42bee29fbf693): 3203306923, TokenName(4c97ee670e6061f0ef51987ea97c630c026c3895466e0e94db71a40bad69e112): 1343640868, TokenName(9bde7c9632b4f7bc5a0578468e510d860359416cc378d8580f82042bd2d76e23): 1013243267}, NativeToken(MintingPolicyHash(ScriptHash(b55a221780d89ed4cfe3446500f37676f8862a18d5fe9ffd029e6b54))): {TokenName(2faea7bb72d2f4f42f421ca3474f57ed7a0bc49bfe50e7fe6b4aa0bfcd7559f6): 2052560625, TokenName(5f55ff60553ee1d98dc86caa26f9f54feb69183fe583e9137bb2aec2a072c000): 3241834987, TokenName(61c6b54180c029682f51b1b918d3fc22b6bc053964b6d35801f59271a752dde5): 3108922155, TokenName(7e5a58d41c5b2354da63977dc1d505ebbad9ba92badc235cc74d4f9f3e4b7849): 349744316, TokenName(81b1b4d3f19c1e926398d6509d7459c1b4b4a5e3f487e4b152ff11f495ce0d6d): 2585552279}, NativeToken(MintingPolicyHash(ScriptHash(f95aaaf4f41f58473d9950d942dd875f619a55983bf4d437b18ee209))): {TokenName(33542a248239c86bc6a840b57eee80168862a706ef23a2aee3df3799f0a3ffab): 424813100, TokenName(59f9c15b98b54f119212d7828dee1b9c550fff5a2f9611bdac7edfeb8081bd07): 852321931, TokenName(a4b10c965633930f1c7e035b8c6aa2c3b4a8ccc7aa90486054ab85f355d87013): 902256490, TokenName(cb10703e6869e04bd24c9aaa966e90077ab20f5693703afeb75954372d684b54): 2343434831, TokenName(e306aa8b0e176caf6d36fdf9133ca07913a7e1166bc235f9b3f44be504fe033e): 3855295454}}), datum: None, reference_script: Some(ScriptHash(30f531f0d8f059a6b00bb17e95a7c718959fa751558f44a327857b25)) }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(ec761eea39c340a69c6fb3eaa372aeaf800555638c910e1e025c9a7d))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(03ac18eb0e12b53579997623a8f72fb3c429c5ebf5a41a4ccdd21d70))): {TokenName(19ab57f5fa488fc110644ebbf08da6fcd4b7f1b544f38da09b040f8739bbbedb): 2518964382, TokenName(62416073bdb421c7242bb19a546771a2b0409daaa66292d95c1cb33bc8943f8d): 1656408066, TokenName(a151df70ea8442edcebbde742098385809fad19a7b5ca9a467352a7ca1958143): 3908199478, TokenName(b397d9094ca4d8ac4c5890f63535cc519961a2fb6ed2ae85f85762d71ee39bd3): 1352267552, TokenName(d9e7c9df00f284849ccf4a99facb9e93a3dd6086747da76aa8676b4804bdf618): 2861143482}, NativeToken(MintingPolicyHash(ScriptHash(91fa53087d9026ebf8829416fcbfa3cba44ff5fd2de2cbf4dae4c766))): {TokenName(04463079dbfede339bd942f061f977f96d29eb8dd332c95ba7a83fac6dfae3d0): 144548287, TokenName(0924d74204259a14f3d79dcc4c562a9c6ab0117e6a27a88f7bfa7b739fa96e07): 3509554855, TokenName(6f27b648acdaa4746354b892be555c591747a0cd6f913548cc2473e4eee6f3e0): 1675798510, TokenName(8b5353741929fce6b960b675ae375bf2e94ce5f82889c7346c29b591054cdfad): 3578297260, TokenName(bde71f055d9c5f0286f337a6b82f6bf66e29aa8d5a5f5bf5302477be2aadf3c2): 608042687}, NativeToken(MintingPolicyHash(ScriptHash(b9064d7a8c2a1110a531d561d7b6bf7337b4e1960fc29a4eb8eafeba))): {TokenName(21056bad64decded64532114b0a37e8aa53f6149b07cf63064b0ab36a2cffd8b): 2632119827, TokenName(30ea01ce043be88cd6b868c2c7ff30cd91c2f17c9dffc0a53d264d6ea9528011): 1463337029, TokenName(456a14b9402437b057f06aef1918df492c47449f647845b9195042f40edde7d8): 2064017649, TokenName(648370902f82759dc8d0c3bca60a64b846b69e5334893a8458c1c64286ba6403): 3348192523, TokenName(bbbd9e146deee40b156040457e7b754dccd7c9a0867e6414980422b5e227049e): 2358894817}, NativeToken(MintingPolicyHash(ScriptHash(da4e9f3ddfe199c006d0f9ab721925c22c30b7c8772e7d0c230baf37))): {TokenName(620317ce5c7b640b464c7f273df9901b8472d8a6716d31977174050fdc3eaa16): 2076682926, TokenName(a3f5deaba8007f644a26988f6cda2a4d809799eab21325b21c2fb6fdce086f9e): 2412943953, TokenName(c5030f54495f3701c9e2887469a15ceaea3cdc15bb40f39906bc831019ed31f7): 615192849, TokenName(d5c5be324bb653d422258215ea5443be65d9ccbcea6c5cd2b3b5631bb4725439): 1142290255, TokenName(f7dc7edf6ea29fddd77a29324effeee617d2d45432ee9cf2cddc6d17382d9a26): 880307032}, NativeToken(MintingPolicyHash(ScriptHash(f2c054a52cfba3b2a48a2f5289be9a77e198260ec32064194a2b7998))): {TokenName(2213ca331cf1f07dde0a0718f74b63e2ecc6edb3d215eaa2b792558e65ee5447): 4208271782, TokenName(4b29dc7827b40bfa065d39957ec18f96bfe9f58dd0f5c076aa5324210e733521): 2669906136, TokenName(6d98fe0599f37e23d774f1a6cd209df36f85483c03ca564a22589144b2f9e914): 3749525743, TokenName(a6c0242a0756a62ec28075ec9bafe4059a5adb9cb92c3cc76bd8bf3a8b983e3d): 3155040882, TokenName(ec1605860834af7b073dc112ada90e6ab530c5ab9fdc1fbcddc3dab021d25137): 69909880}}), datum: DatumHash(DatumHash(24a7af37e514f61fb4bdc1d22c1ee8ececb9afdf8aac797571b5704c237380db)), reference_script: Some(ScriptHash(631d2a7109fc05b54a600e1172cbfcff9ef662b4883266c285a2283f)) }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(08627132179484c51bb35060102f121a0735f61f8d1e42c220dfe487)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1efa734d67168fbc8d93170f7fc65a9870f8f43b212b0cbd57295751))): {TokenName(17268d28e91d74342d4991fa12c3bae621a7af526238e3095be461fa9d26e46b): 2570813478, TokenName(36b28819d1ca7ce52536c5cf0a9cca828f96644b7bb41bc6d0d4467537bebc8d): 3393761679, TokenName(7cdd0baf63bf3b26b4bf8069bca24fe336646bf65c66646568efa80df3b90560): 418721239, TokenName(8a2d4ec9912b245c011791cb914e9904b29c7466f51fd45dfe07f4259a694639): 4033126661, TokenName(f768447ba0fbab3ba8ac8385859a0d89c573706179ff8c7bc41dd1dbaf3cc015): 1275518025}, NativeToken(MintingPolicyHash(ScriptHash(30b958c36b3e9506471e962ac0d6ca6409cc26940e79c2f17063d43b))): {TokenName(0af86696aee816f944107fc689dae0ed62da4f78b7a8eba25af007e366682ab8): 4102103124, TokenName(42d0dfee36a8fdb7a522ce21366da8e11f54e79b1ecbd8f4e36481adaab5b395): 3750284091, TokenName(60c7cf7a2b4bc6cf0ebb20a6faf7585d323649b72f8a912ef213c7d93e317c5c): 3130665970, TokenName(71419f4cf1b8686ca6af11192ac643f8617e2dd3628748654f0a864c9c9ceddb): 3747489957, TokenName(7d4d39214d8ebb33e3c4c4f1b997274d6f8d93bce93fec7df8c5c2943ddc5899): 2707795912}, NativeToken(MintingPolicyHash(ScriptHash(3d5f6d8bb70891a015ce82c8b7d55638f61ecf52b7ee2ac12f557a02))): {TokenName(148a2348d53afc797ffdb9df38001bae9000793ac8dc60804e745b8a87404a9e): 675953931, TokenName(2999da457948714f1ad9c33bd540ef5e4db4725a3789d7532f3abe87e9ebfcff): 1144848020, TokenName(3ab918add85b549820719f580aa09e5cef6d82b1e447fb5b0a2200d75550ad1a): 3837268611, TokenName(4ad0746080153f2099046d58f94349e051314a13dcef24add1027f15e53d1916): 1350699108, TokenName(6760b9ff5ecdb761b4240bfb67764d9f10f3171b738611945a7ccf0d0c55ef1f): 1646471413}, NativeToken(MintingPolicyHash(ScriptHash(45e3ff091c274f7dab3fc0b6bc8522150eae804573e65d4060a82458))): {TokenName(89004b31dcee69f16fee1d1c14f339e969b5f8e5622042e2ea6a60fc18c1fd6f): 3535052531, TokenName(b0514600cdee8a5c64d4c5f94f232e2ad5cd7bfbb3705f18e52b2aa3de278f57): 3551698795, TokenName(b71760084577c9f984a3801b1c549ba7bea5699da16e9a3fd6b88ae2824d18c5): 4130989591, TokenName(bbedeb8f323991e258dfc55530ba7ba8c66c572c83da45fb4e64d85bec43baf4): 3803686025, TokenName(f36ddf2e0ac6ff05d34598255d1773c22f42ee976c817ee63678962a42653f5c): 2086145863}, NativeToken(MintingPolicyHash(ScriptHash(bdc5fdddde9806d91f7da86b3abcf56400aaaee4e1713f6ac3791ce9))): {TokenName(383b831d85af8a481a7d3eb6e755fc66a307810bb6a8c7cd4408aedc7a169729): 1587342539, TokenName(84dd802f39b9420b27b80b0008df3edf69647bd075ab1fe7454c6a6ddf9e7c7f): 4029852972, TokenName(8d2592f85c7d81c201b05cc8b5848a3c881caa9266744023d76df570460b18cf): 2123956503, TokenName(db8016743c4af9aeb82ba48cd4b92a35e674e9f2a6e5d3e408b49c044e625843): 1811830174, TokenName(e78f7a8668cafe8fb9eb907d11310e2e7a2c91586c7e65f26b4e4e1edd6594e0): 1199343382}}), datum: None, reference_script: Some(ScriptHash(dd3246fe6e30d877cdb57609b8756a93ea209cf83d17ee3e549e00b5)) }], fee: Value({NativeToken(MintingPolicyHash(ScriptHash(2f9863727367b0d7e2acc0779f9c4d7276a3ce14434168e939788955))): {TokenName(429a3f398cd615e887111585b6e80098cfaeaf114b041ed632e59b9241198a30): 1555683774, TokenName(4d47642d7314dfebbc8e604fdc780f696363ad680403355e87ae4da7816b9638): 3592907140, TokenName(4dbfdfa0dd57671ad6d070e511f3dcea18f6345278f5236b0f0a760071b5aca7): 3408980460, TokenName(562cb1afdd67f13de123f96ff4a329e164b1d1fde34e64c5e000bacf443d2b5c): 3168086864, TokenName(aa5f81ea275a4b5d4541c1593376bb4b6daa83b4ffcb00be9e9e07070ee8d323): 169981035}, NativeToken(MintingPolicyHash(ScriptHash(3a4df10551937e229f522b733111206a4c59a2388628a8749004108c))): {TokenName(187e6fde82358b63c03451b8dd1361fc53a2b6905303bb9632013cc1be34ab5e): 734045897, TokenName(3403e18344cfbb6653951c9edba43e1aaf427c9f5a635db3aeb96079c556ea45): 4010288560, TokenName(bb520dd935e854714c3167fcf8b605928c56f1d087f26440593b67dce8264ebe): 989031355, TokenName(d5f9e314b5460128827a0dbf88b0fe21df985ea3f3405461fb5b6d3a0d1b5d2a): 2046624902, TokenName(e882a0be331fcc394f7dc1ac99e729972d51b9d55aaa1cb7f97341cae75450d7): 273147440}, NativeToken(MintingPolicyHash(ScriptHash(68110ef703304ae479c444a6201c03997cfc10b6295f998274dbf2ea))): {TokenName(06f4266e7f2c030891cbb9ed55bd1f0c3fd41f54c0063757f5070977f4df742a): 895390465, TokenName(538d1edde8cdcbcff022266c300676a2deaf83659c1b51737340585536ad0076): 1716482888, TokenName(62b19a0454f9c2ba8f44bf1bc53bbfc3856d11b30c9f0958f2fdfe6e7973fe51): 1173906700, TokenName(a34f088141c5c4bee0c735d8bded3da2122c6279c33fcfe32cf900c0f4c5cd5c): 1478004184, TokenName(cfb00dd9c985a6c5cee0444bbcf147fc7afc6e05c2d85fbed2833ae410e3efb8): 3063484456}, NativeToken(MintingPolicyHash(ScriptHash(9d0fe31ab7e3f2f7406e878e08376aff36e10dfd56844f8981ea3a66))): {TokenName(132efcfbae23f5c18a0ffa9bb7b258ee701abb3797f38a1097dc6851308986b9): 985486808, TokenName(24a8b01676fdbc399e6a1589e6a7bb33d766395c9d78da8d113d451201d54690): 3241903114, TokenName(598c739a09af4bb634c708c30fdd6fc34cd633f5bcd1a7d6dd7731f83c5c98e0): 3005678126, TokenName(a8b0b1e5142cf0f1cac3f104fdcad8dc55dd65800ef64d1b6e57829a8891cb4d): 2988582047, TokenName(c80a9edb35ff6b5fe9292140e284f3b110034ac1cea95bef2eb2a4c1849b4dd9): 553307105}, NativeToken(MintingPolicyHash(ScriptHash(b2fbfbf224eb9cfc223bd3ed11f6c0a4cb4375f5f4cfb7e34754a613))): {TokenName(1d14511e247931cb6733fede871fb50c5b889a8191b26d534ea2420e6b5fb793): 4043197660, TokenName(49617ae47d57e3ff6dd8129b181f3f4bda7df20219a6be2cd2265c23449a96d9): 273104966, TokenName(6288fbea5a0135345990f9f79adac3f81b0644e8e5175f6242aab3f387084237): 66366596, TokenName(72b6c30b1ee0e44aec201e0361e8e3df1e18ba238d8aa6ddc4b0817755d11b8d): 2062758746, TokenName(83622b675752a919f2aa1ff4c68ed11354374b2abebb1029ad88f1a93a831fb4): 1099160643}}), mint: Value({Ada: {TokenName(): 4104180352706495912}, NativeToken(MintingPolicyHash(ScriptHash(1a5eb483f29e60cf94d6db289237c92aefb6f00cd17116ee999734b9))): {TokenName(25da6b3e9e675b6a8bdd597de4ac48c9b3a880ac5ccc63acd65cf62f27f9008c): 1231233814, TokenName(427420e13c51ebd62c14bc0efff31f770328482a204911d1e6b32e8a6e3146d4): 1996334957, TokenName(710e81cc94a0cbdf08b522ca8e02ba017b2c57ed3ee360b0bba12f1dd39afbda): 2661078626, TokenName(ded843f4173fd92c5d1b6c343da011cc5373eaebd74046b8effa159b95b0b4fc): 399673598, TokenName(fed348c8726ce77dc3e317ead26f820379e5eb998e3215a6c45aac9eaa1434ea): 4151868046}, NativeToken(MintingPolicyHash(ScriptHash(1cf98e68f452aa7d791c36d9495f37dd9d98a44cd70deb233aab4a8c))): {TokenName(488e54b0111d8ab0110f091a930ab1a3bf29648f15e9ce291b445fa74c271e4c): 427903071, TokenName(96744d9e07184dc82d51b499e984838834744a02a59d6d5f0b213e318936cb85): 1997947289, TokenName(9b6160513350d1f3cd0bc865c76ac9ff4f17b0157220d569226c7a10b636a24b): 669481020, TokenName(bb3a60a8f39d1df1afd753eeeea00993bee72535f3ccdb5cdc3911ec1cc31021): 4067912973, TokenName(d2adcb9b62c6646a8653c822e91b87de8a9abcbac84b799b808ef43639a4b016): 3918566276}, NativeToken(MintingPolicyHash(ScriptHash(870ecba83cde3dfd018ea32d685cb450d2d4295f5cb4073f29bafa9a))): {TokenName(0403f0c9cb67117c895168ae75deb3bbfb9c9d13b43a2ecfef164b3c9cb7a855): 2905897182, TokenName(1f6d139cd673123d10495454fbbba2d3b72c8bf630011164b8ddb16e078808e7): 2763742922, TokenName(9b4c9f57c613b8dc4ccdaa59ad95dbf3bbafecc90821b014f4bf77211b2799fa): 2647325274, TokenName(d7a183b7753afe71a94ffc4b9e1f23c8f59fa916ed981127f9b2741a24243acf): 1630302619, TokenName(fb047eb4525d6ef3550b3e87597cebdadf66dfb547dc23250ffc478ee03e40f5): 2645150031}, NativeToken(MintingPolicyHash(ScriptHash(a186daa8e4f866e46d68808ad115232a5ee746fd0875bfb18ac1b8d7))): {TokenName(7a134f9e9c448fe6e97557fd36f3d7a81639d04e609bce6dc37d4a8257596a20): 149746960, TokenName(7bd98296d4c5a45f14e45f1ef70b44e323e1a4a342d5950048ad28ed102bbfd2): 3131521095, TokenName(ac9aa0564b12e5ea103a569c59713d6ea1bc9fb890a618e39a87597121d3be55): 3147076479, TokenName(afc3bec871cdcf99569a69ac50dca88cc75eec498d1d1c269e896fda014a1c76): 258148948, TokenName(b5348d158cb92e19b81c56990d7ee1e705abc19a3a422d77d81153ea5832ebb9): 713428795}, NativeToken(MintingPolicyHash(ScriptHash(c92bdff49727138c31cb3d49176e054816447dbbc79d39f189f8f676))): {TokenName(153334516784cb259748056bb312cc5416c04e15c36db4fe9cc2336b21ab4253): 835283426, TokenName(591e68815b2c0f8d66418a11fd031d6bfa1e1c64587d7988963fcb158dd6f8be): 3356235553, TokenName(8b9065fa54273dacc3752b3a703daeeefe6dcba97e0a9db43c97fca1224b4858): 3794081327, TokenName(c9401e06d8dcdd84d9556d06589915eaadef20ce3897ebc5df76607b06b61435): 1689084015, TokenName(f944a8b7e0c7f94173f35a1d7a0e4c51174f9ac89e20f71df3aded3db66feffc): 2290874670}}), d_cert: [DelegRegKey(Pointer(ChainPointer { slot_number: Slot(1255069606), transaction_index: TransactionIndex(3060645162), certificate_index: CertificateIndex(1133172045) })), DelegRegKey(Pointer(ChainPointer { slot_number: Slot(2058101779), transaction_index: TransactionIndex(2683260422), certificate_index: CertificateIndex(2332862830) })), DelegDeRegKey(Pointer(ChainPointer { slot_number: Slot(2949232829), transaction_index: TransactionIndex(2376444952), certificate_index: CertificateIndex(1584659227) })), Mir, PoolRetire(PaymentPubKeyHash(Ed25519PubKeyHash(56a7cd13edc88705dcc4e7b5c3a4be407e4cc15556fd31ff61da3de7)), 1704978752)], wdrl: AssocMap([(Pointer(ChainPointer { slot_number: Slot(2518930256), transaction_index: TransactionIndex(3594332237), certificate_index: CertificateIndex(832943901) }), 283529990), (Hash(Script(ValidatorHash(ScriptHash(99b971201b74682b3aec8d3599b5f7b04f69787ae11b56381e2e89a8)))), 1315944064), (Hash(PubKey(Ed25519PubKeyHash(8ee1d52a365940ccd463dd7e9c5ede976637263358db336f85ef20c6))), 697469854), (Pointer(ChainPointer { slot_number: Slot(1144497856), transaction_index: TransactionIndex(3973812288), certificate_index: CertificateIndex(2551665535) }), 1781367262), (Hash(Script(ValidatorHash(ScriptHash(166e40822092ce009e3863b6af2192415ec2bea68df4d223ad081be8)))), 1007921653), (Hash(Script(ValidatorHash(ScriptHash(6f60de84d117a5e915908cbdaf4b4516b7da7d61c745810f3f2587a5)))), 3106659847), (Hash(Script(ValidatorHash(ScriptHash(b7bae71e2d057c4ac0f4337c854bbb30ede877c2d7f9c5adda3f5ee5)))), 1053145090), (Pointer(ChainPointer { slot_number: Slot(3714372803), transaction_index: TransactionIndex(72042050), certificate_index: CertificateIndex(1509327066) }), 3940037914), (Hash(Script(ValidatorHash(ScriptHash(7067f6b6fb9add1cd4409a061781c24c8f9d2aa56b630b312db2e3d5)))), 4079720784), (Hash(Script(ValidatorHash(ScriptHash(a4b4a8e347008aa489f35b98272a6ca4fc25959b0bd20a68f8592e44)))), 1584515697)]), valid_range: PlutusInterval { from: LowerBound { bound: Finite(POSIXTime(838409353)), closed: true }, to: UpperBound { bound: Finite(POSIXTime(361863719)), closed: true } }, signatories: [PaymentPubKeyHash(Ed25519PubKeyHash(b4819d111711ba48868cd06ff8d99ab5b55e7534aece8ee98e6c455a)), PaymentPubKeyHash(Ed25519PubKeyHash(2d3ce5635fd6ef2beead54164759fe87df4853d7f504ed1061c8338e)), PaymentPubKeyHash(Ed25519PubKeyHash(a0d48ce56b063a264ae1828159fabf544ba69525c37766835b6bcb68)), PaymentPubKeyHash(Ed25519PubKeyHash(f11701c55ba58e812def810ce8b5c18d49945dafa67456b3903b8ec9)), PaymentPubKeyHash(Ed25519PubKeyHash(ad5b51db58abaea6ee92412e6b8c27f95d8d4c6e5541edd97b049e81))], redeemers: AssocMap([(Certifying(Mir), Redeemer(List([Integer(6239320199750037689), Integer(15913589025057844587), Bytes([133, 208, 148, 171, 114, 67, 36, 209, 169, 38, 209, 97, 67, 163, 204, 172, 104, 82, 231, 119, 134, 19, 204, 55, 74, 236, 118, 116, 35, 78, 54, 53, 104, 127, 234, 93, 97, 1, 136, 194, 168, 56, 83, 218, 179, 78, 64, 76, 211, 140, 137, 196, 45, 229, 40, 84, 74, 108, 200, 193, 96, 13, 20, 253, 113, 214, 237, 215, 101, 39, 154, 249, 114, 229, 169, 161, 170, 19, 210, 86, 32, 56, 11, 48, 207, 147, 209, 27, 150, 80, 46, 39, 62]), Integer(-16623484847137450040), Bytes([36, 80, 100])]))), (Spending(TransactionInput { transaction_id: TransactionHash(79cf6c453b2acdbe0bb65db560233f5a227950ff0880c3a2a3eb775c679fbc7d), index: 2947145207 }), Redeemer(Map([(Integer(10749594368703218252), Bytes([113, 229, 13, 115, 192, 166, 124, 147, 99, 41, 140, 63, 8, 115, 75, 57, 186, 46, 31, 55, 114, 209, 243, 143, 249, 212, 236, 67, 212, 53, 60, 154, 211, 97, 73, 162, 200, 224, 182, 175, 216, 214, 186, 10, 11, 106, 166, 155, 106, 231, 208, 60, 39, 70, 47, 238, 202, 215, 225, 240, 19, 231, 63, 166, 171, 126, 253, 30, 22, 220, 251, 116, 226, 194, 175, 6, 28, 223, 222, 35, 97, 43, 59, 74, 192, 58, 147, 111, 59, 69])), (Bytes([202, 49, 16, 204, 32, 74, 62, 160, 224, 58, 222, 187, 174, 91, 237, 234, 57, 89, 93, 11, 49, 122, 142, 239, 159, 142, 219, 204, 85, 238, 86, 8, 80, 102, 79, 15, 243, 138, 205, 202, 75, 86, 77, 111, 35, 212, 106, 250, 82, 122, 8, 179, 55, 121, 68, 62, 112, 167, 160, 174, 5, 98, 250, 250, 108, 63, 184, 95, 213, 212, 254, 125, 247, 233, 104, 222, 14, 5, 87, 51, 1, 38, 91, 79, 75, 87, 172, 159]), Integer(-16105624062234957364)), (Bytes([206, 100, 252, 224, 85, 67, 0, 146, 168, 134, 14, 141, 81, 163, 252, 204, 27, 37, 184, 60, 209, 69, 172, 37, 216, 220, 201, 131, 24, 255, 210, 173, 18, 180, 30, 27, 195, 201, 108, 124, 17, 229, 134, 3, 13, 93, 143, 181, 22, 222, 66, 113, 71, 26, 184, 240, 82, 213, 23, 220, 232, 88, 169, 245, 143, 171, 37, 48, 173, 226, 1, 103, 3, 75, 183, 216, 69, 208, 12, 242, 53, 187, 227, 103]), Bytes([49, 98, 69, 40, 146, 13, 63, 49, 174, 103, 155, 108, 107, 131, 192, 222, 105, 202, 36, 61])), (Integer(17641650114553881220), Bytes([19, 66, 173, 252, 116, 20, 193, 176, 60, 114, 77, 32, 12, 83, 46, 11, 241, 32, 5, 15, 184, 106, 252, 164, 244, 132, 224, 65, 158, 241, 107, 104, 107, 169, 176, 206, 32, 67, 3, 171, 142, 133, 54, 95, 43, 225, 86, 220, 155, 165, 230, 61, 219, 16, 185, 72, 208, 213, 81, 82, 25, 190, 195, 183, 161, 182, 126, 50, 130, 58, 200, 128, 130, 214, 11, 206, 120, 145, 226, 233, 122, 232, 80, 155, 39, 51, 181, 59, 140, 73, 224, 9])), (Constr(126032016, [Integer(7787559864735705180), Integer(2127818927508617713), Integer(5155631119871866475), Integer(-18396566547523949959), Bytes([63, 188, 198, 248, 216, 139, 137, 73, 106, 210, 221, 155, 224, 44, 66, 140, 68, 4, 51, 22, 74, 125, 60, 8, 202, 245, 241, 108, 140, 43, 50, 209, 231, 253, 2, 38, 123, 153, 16, 65, 52])]), Integer(-16409732504822602435))]))), (Minting(NativeToken(MintingPolicyHash(ScriptHash(db6549ac5a932d508911a7343478c85b8519a13fb960c15e7442bf14)))), Redeemer(Map([(Integer(4864576940907377842), Bytes([175, 126, 3, 7, 3, 123, 228, 255, 206, 187, 163, 236, 222, 174, 77, 185, 186, 43, 203, 218, 255, 102, 34, 200, 39, 35, 29, 12, 207, 218, 121, 145, 223, 192, 194, 214, 27, 219, 211, 230, 233, 174, 251, 210, 215, 238, 139, 249, 167, 19, 144, 139, 108, 208, 188, 111, 26, 120])), (Integer(17866170359980033590), Integer(9968111103518514952)), (Integer(7062931128494742539), Bytes([188, 212, 63, 126, 119, 180, 238, 112, 224, 137, 119, 72, 21, 83, 225, 164, 31, 97, 157, 123, 61, 101, 47, 197, 225, 249, 4, 135, 207, 56, 212, 79, 16, 84, 226])), (Integer(2986177198920072604), Bytes([205, 136, 177, 63, 94, 84, 219, 157, 150, 134, 131, 146, 214, 32, 175, 103, 31, 187, 171, 187, 180, 180, 205, 39, 117, 68, 99, 159, 96, 73, 228, 247, 183, 227])), (Bytes([88, 132, 17, 231, 27, 248, 82, 197, 215, 196, 142, 69, 179, 145, 113, 95, 202, 25, 91, 116, 94, 207, 21, 43, 242, 200, 199, 29, 138, 33, 236, 4, 24, 132, 241, 112, 84, 194, 187, 116, 22, 131, 75, 30, 118, 48, 138, 240, 125, 34, 135, 115, 236, 164, 122, 214, 65, 2, 27, 192, 10, 235, 145, 20, 138, 243, 100, 213, 6, 108, 50, 19, 185, 8, 175]), Bytes([243, 50, 250, 219, 146, 10, 119, 162, 24, 46, 123, 40, 64, 77, 233, 17, 114, 235, 37, 32, 129, 131, 127, 214, 129, 134, 15, 176, 86, 230, 81, 87, 199, 75, 107, 27, 228, 190, 25, 132, 190, 237, 99, 177, 137, 249, 184, 72, 188, 106, 216, 171, 71, 2, 3, 95, 120, 102, 202, 178, 6, 31, 153, 232, 3, 11, 136, 192, 194, 61, 126]))]))), (Spending(TransactionInput { transaction_id: TransactionHash(7224c90041ca10dda085de5afacad591f9e7b847242c3dcff572f3b04e8d172e), index: 944131020 }), Redeemer(List([Bytes([155, 139, 250, 173, 109, 126, 116, 148, 239, 105, 35, 166, 250, 209, 138, 254, 143, 100, 91, 188, 57, 202, 217, 165, 20, 197, 58, 251, 25, 142, 25, 220, 9, 166, 0, 184, 86, 229, 139, 202, 24, 255, 67, 234, 104, 32]), Bytes([137, 215, 194, 162, 74, 174, 65, 28, 13, 61, 160, 169, 76, 236, 134, 201]), Bytes([190, 87, 61, 95, 191, 155, 191, 200, 213, 232, 191, 174, 140, 244, 84, 142, 24, 244, 149, 238, 175, 31, 67, 159, 192, 88, 153, 133, 62, 41, 181, 131, 165, 0, 240, 101, 162, 100, 211, 89, 179, 132, 224, 61, 147, 74, 142, 247, 229, 79, 191, 178, 76, 12, 39, 235, 39, 197, 108, 190, 27, 131, 214, 210]), Integer(10877039398281208866), Bytes([245, 49, 133, 212, 69, 170, 182])]))), (Certifying(PoolRetire(PaymentPubKeyHash(Ed25519PubKeyHash(0e2c3e533b548d4ad5b0cddf94dff6140554fcd04df242a344713595)), 3596605903)), Redeemer(Bytes([237, 84, 107, 181, 142, 178, 35, 247, 44]))), (Minting(NativeToken(MintingPolicyHash(ScriptHash(34acf9d27298848ceb4c0d40c846e2647f5d7af9cabe7c16250fff36)))), Redeemer(List([Bytes([78, 90, 214, 144, 251, 187, 188, 123, 244, 237, 165, 1, 72, 126, 218, 125, 133, 234, 74, 239, 96, 94, 24, 90, 190, 3, 60, 95, 181, 152, 108, 110, 41]), Integer(5731157922341262668), Integer(-4335164808407264972), Bytes([134, 242, 84, 26, 178, 183, 212, 54, 149, 70, 5, 162, 180, 53, 242, 114, 206, 81, 85, 175, 206, 100, 53, 103, 209, 73, 207, 182, 228, 79, 115, 193, 145, 70, 95, 242, 115, 87, 106, 159, 89, 91, 30, 68, 193, 124, 115, 47, 31, 40, 133, 80, 151, 255]), Integer(15690818283624318033)]))), (Minting(Ada), Redeemer(List([Integer(2069942577745421945), Integer(13319561239276934380), Bytes([196, 179, 178, 122, 8, 111, 2, 199, 170, 233, 14, 123, 96, 184, 66, 46, 225, 233, 3, 53, 155, 75, 255, 105, 39, 145, 114]), Bytes([56, 119, 56, 131, 146, 197, 103, 153, 31, 8, 223, 37, 83, 233, 80, 62, 156, 89, 168, 164, 218, 28, 160, 9, 92, 136, 167, 173, 41, 222, 180, 128, 42, 87, 188, 131, 254, 134, 213, 86, 80, 160, 7, 55, 235, 106, 226, 219, 204, 69, 37, 195, 38, 32, 113, 52, 133, 95, 193, 110, 228, 97, 53, 180]), Bytes([29, 31, 81, 90, 253, 98, 22, 39, 253, 185, 103, 37, 32, 104, 81, 205, 210, 190, 31, 104, 156, 109, 252, 171, 217, 248, 61, 253, 159, 190, 24, 150, 162, 35, 71, 9, 77, 217, 199, 96, 35, 190, 214, 40, 167, 249, 82, 47, 216, 16, 95, 234, 130, 233, 141, 153, 102, 238, 1, 119, 118, 249, 47, 59, 194, 46, 190, 53, 2, 238, 46, 216, 239, 12, 200, 247, 206, 36, 61, 53, 4, 32, 16, 248, 175, 190, 107, 208, 110, 99, 213, 178, 253, 208, 76, 40, 64, 192])]))), (Spending(TransactionInput { transaction_id: TransactionHash(4b9a8f093e2e8b1822e4c68ba111a60d7ad9cbfcac0674f6fb7c5b16bd0d8fd8), index: 20566719 }), Redeemer(Constr(597936047, [Integer(-401514188748236140), Integer(15735402432053599665), Integer(-3275194184185951579), Bytes([248, 175, 249, 54, 46, 96, 253, 85, 101, 158, 120, 145, 117, 109, 38, 171, 72, 81, 53, 87, 129, 96, 39, 255, 77, 147, 31, 182, 206, 87, 21, 181]), Bytes([141, 216, 99, 172, 227, 36, 116, 196, 8, 1, 233, 126, 99, 32, 214, 115, 145, 152, 137, 183, 242, 86, 151, 33, 219, 162, 67, 26, 178, 51, 232, 189, 40, 92, 28, 68, 193, 212, 246, 155, 115, 27, 157, 43, 152, 124, 113, 68, 176, 176, 125, 154, 157, 23, 13, 226, 127, 242, 79, 239, 221, 243, 183, 24, 221, 237, 111, 127, 157, 194, 99, 110])]))), (Spending(TransactionInput { transaction_id: TransactionHash(48eebeaef8deeffd6fba7b1b98e118a5cc2086b63641eff458daa48b6553877c), index: 845727722 }), Redeemer(Integer(-16728904964620355042))), (Spending(TransactionInput { transaction_id: TransactionHash(0d57988e521e371aff11852b58e1088fe19726abb33f16bbf1206a67475d575d), index: 2941169133 }), Redeemer(Integer(10497112379505076689)))]), datums: AssocMap([(DatumHash(2d193c5ceaf445b29ae12d5ba957b3824cc13133825c9da6f963407ee6cee6d3), Datum(Constr(196802684, [Bytes([14, 76, 99, 234, 208, 48, 115, 11, 29, 123, 216, 168, 109, 191, 12, 116, 70, 21, 116, 253, 152, 47, 3, 151, 129, 0, 214, 127, 244, 166, 131, 139, 79, 80, 150, 48, 189, 167, 181, 71, 183, 127, 21, 201, 37, 213, 8, 17, 111, 13, 243, 233, 41, 139, 217, 234, 6, 148, 194, 164, 241, 138, 82, 181, 213, 52, 191, 176, 235, 60, 150]), Integer(81961458671434559), Bytes([240, 107, 34, 91, 249, 1, 37, 212, 169, 237, 172, 193, 25, 129, 199, 165, 217, 53, 77, 159, 67, 196, 182, 226, 50, 54, 83, 202, 145, 29, 240, 51, 33, 36, 25, 231, 192, 71, 49, 200, 49, 19, 182, 243]), Bytes([100, 160, 6, 29, 159, 137, 51, 13, 245, 169, 84, 74, 167, 90, 1, 41, 176, 246, 93, 181, 98, 116, 75, 182, 159, 109, 79, 71, 90, 92, 105, 208, 44, 195, 220, 176, 194, 116, 180, 187, 198, 86, 160, 77, 110, 41, 147, 67, 82, 95, 185, 81, 102, 44, 23, 185, 79]), Integer(16239469322319425174)]))), (DatumHash(fdf11482da690539eef20c26cd27cecd7f5cfb6d12852a4b72dddaded7158c74), Datum(Map([(Bytes([214, 212, 251, 238, 8, 244, 215, 48, 250, 101, 190, 51, 192, 14, 170, 57, 47, 186, 48, 216, 192, 147, 47, 92, 9, 198, 24, 233, 73, 134, 93, 64, 172, 119, 170, 191, 179, 11, 50, 112, 144, 229, 125, 97, 210, 147, 168, 202, 158]), Bytes([5, 14, 29, 114, 190, 203, 143, 180, 12, 165, 116, 1, 182, 219, 108, 83, 132, 117, 54, 100, 31, 156, 211, 88, 159, 68, 197, 29, 114, 150, 232, 216, 77, 148, 92, 125, 136, 191, 36, 188, 119, 221, 156, 10, 51, 10, 69, 138, 150, 166, 7, 223, 31, 253, 113, 25, 145, 56, 125, 79, 174, 179, 20, 23, 12, 167, 229, 207, 70, 100, 75, 114, 220, 175, 221, 159, 194, 103, 16, 67, 253, 138, 44])), (Integer(-13599185349541535264), Integer(12320948268393618043)), (Integer(-6026077469102340747), Bytes([147, 219, 79, 148, 176, 252, 123, 58, 118, 60, 164])), (Integer(10908679578297618426), Bytes([25, 54, 73, 167, 50, 78, 131, 108, 146, 58, 96, 138, 136, 33, 116, 32, 23, 12, 107, 202, 25, 172, 104, 71, 132, 79, 154, 117, 51, 97, 230, 166, 231, 148, 193, 57, 53, 193, 129, 13, 117, 143, 111, 38, 180, 130, 164, 214, 184, 233, 165, 215, 5, 124, 47, 140, 166, 210, 103, 157, 118])), (Bytes([110, 19, 70, 212, 173, 55, 3, 64, 181, 219, 160, 252, 245, 170, 104, 163, 6, 200, 103, 164, 16, 62, 211, 89, 125, 254, 49, 12, 64, 24, 139, 34, 88, 54, 65, 84, 173, 82, 114, 24, 118, 150, 178, 136, 212, 111, 234, 169, 23, 28, 18, 201, 156, 63, 208, 223, 147, 25, 3, 7, 195, 63, 145, 209, 248, 125, 23, 173, 215, 13, 0, 48, 195, 77, 235, 204, 238, 85, 250, 32, 167, 73, 94, 154, 132, 208, 219, 171, 242, 104, 215, 146, 91, 252]), Integer(-9199529737147709059))]))), (DatumHash(f033e4f6e37ed83b3145d1d01525488437d7ca41bbe52a39aab31a97f1224e43), Datum(Integer(-593552128947493946))), (DatumHash(e8aca7e61f69e1260d8d8e0cb8b6ca34b2b6a11a26f22f69e88bbcf644fb08b4), Datum(Constr(4088868737, [Integer(4177234764228082000), Integer(3603356264052409860), Integer(8465656476941222898), Bytes([202, 93, 174, 183, 221, 67, 107, 168, 93, 30, 39, 68, 104, 207, 226, 0, 230, 8, 86, 190, 251, 78, 138, 209, 6, 212, 115, 70]), Integer(-17617145114892162587)]))), (DatumHash(d3da487bca94b2ae59991c9704d0a3d381b88531125c0f9ee4dc13a0e0061067), Datum(List([Bytes([186, 52, 194, 43, 73, 74, 176, 184, 214, 121, 67, 158, 62, 120, 30, 157, 180, 112, 132, 250, 216, 165, 198, 213, 253, 98, 230, 17, 32, 53, 165, 193]), Bytes([148, 34, 172, 191, 198, 193, 41, 148, 30, 153, 51, 181, 164, 64, 122, 165, 155, 71, 126, 89, 76, 81, 248, 225, 168, 50, 118, 52, 67, 34, 147, 134, 165, 234, 234, 147, 202, 6, 209, 137, 34, 136, 11, 10, 203, 12, 7, 128, 15, 136, 64, 4, 45, 8, 82, 239, 86, 206, 119, 96, 89, 163]), Bytes([]), Bytes([146, 61, 87, 35, 59, 214, 192, 241, 62, 172, 13, 232, 50, 195, 214, 253, 2, 218, 189, 136, 143, 1, 21, 241, 175, 218, 119, 49, 125, 166, 227, 48, 202, 165, 176, 149, 43, 154, 2, 125, 194, 198, 90, 147, 21, 140, 237, 246, 227]), Integer(9971176567098175649)]))), (DatumHash(c61c8ce968a5382e749189706386376dd97818d9ec3e59123fbf224fb282605f), Datum(Bytes([107, 27, 72, 2, 106, 154, 29, 15, 2, 16, 140, 88, 37, 220, 111, 108, 172, 80, 114, 175, 140, 140]))), (DatumHash(0d7e84d00ba68cb161e724f157f15b429995bc6bec06219abb6ebb0e05321182), Datum(List([Integer(16237504671388057912), Integer(-16285226431970625050), Bytes([247, 109, 75, 197, 44, 133, 186, 4, 72, 71, 51, 193, 0, 113, 147]), Integer(-10372740837566876008), Integer(11123773230320431390)]))), (DatumHash(598bf36b92c1b696f4edeca936c026ea54fcedc4a9255c78794fec17379be8c8), Datum(Integer(13795168235298107099))), (DatumHash(49624a0f85084a48045f84298a6addfdfa6479473e82f77e4ade173f07a4d772), Datum(List([Bytes([71, 229, 111, 177, 61, 96, 150, 100, 214, 56, 249, 163, 231, 18, 20, 0, 217, 46, 148, 214, 164, 155, 11, 75, 184, 34, 147, 94, 115, 69, 195, 23, 213, 203, 128, 138, 238, 122, 53, 173, 210, 12, 74, 94, 43, 183, 228, 164, 95, 18, 159, 11, 131, 5, 119, 178, 85, 181, 88, 168, 61, 102]), Integer(14293894423366455123), Integer(1221696318822708709), Integer(-12695428866911314187), Bytes([37, 105])]))), (DatumHash(61284967c2a9fa4e359cf84d716a443fa4a1e6deff58a59548aa74c89cd90b88), Datum(Integer(6734396926988172344)))]), id: TransactionHash(17b27f69606574edea9d5a1f15e8c9abd732c7e2fd2f123a654b341d88b08e12) } -cc 6754dc117f31dda503b9cea982aad28214fd39069e2a35e276e7a80693b5a7ac # shrinks to val = ScriptContext { tx_info: TransactionInfo { inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(00000000000000000000000011d5322bb28add0c541afac5f59c2415cd39baea), index: 1172339953 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a1321bc06e424938c7e5a3db667a16cde2f7d4145662c8a8cbcc7eae))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(132492f5ef8c29cafeaed2adfe4abb1009c40bc2bd1d0cb7fbc73482))): {TokenName(0563cf40cc97ba5f6e71e11188fa463b3caf052a5f888afdbddd0231e05890e9): 4267529379, TokenName(319d34aaef3166fc693e7da784a17b3a380ec8413adf4a053a89fbdbfa8c8688): 3022272300, TokenName(5d1f501fdbb8e2b043051a37bf3e6f4462f58ea3459b168e06566d7a223b4964): 1472647335, TokenName(7c780c5081be1ee268e5a8983b2093b50a6d68188442c6cda8f35a61babf8f7c): 1407873443, TokenName(8a318158cd161fb7a25a338c20423bc2b7f3fd53b7b2349a64c36efd87965592): 2983736929}, NativeToken(MintingPolicyHash(ScriptHash(4601585ff8414333098dd5c528dd7164188ef66b73e7a50b5403f7d4))): {TokenName(21503d22ee6638c1b9f86d9f216749cfcdd7b9c3f05cd63b3735bafc99d56e35): 268819850, TokenName(690a9d25e0ce3f8c96977cb27c91255e5c8251779a9cb890ec23d6b56df5ccbe): 2049992157, TokenName(bfb672e721a9bb93772abd070b280a57033d1217ea7e7f82fcb6c84b194b4513): 314390417, TokenName(d10cd94de9a3b91a3d0b156a0f8b656c0f0133d0fef376dbe85ee1247cb47ad8): 1019985646, TokenName(f76c898e35e477b7d4f658dd21e4aa3b7d99b9911f53134287474293c1ad5c48): 1337489045}, NativeToken(MintingPolicyHash(ScriptHash(4f9ee1cbdc2abd45e53841e9bc178930148d637edc244f19827d1b82))): {TokenName(4dc84a6f8f1db80a1f074b07adcc80f559465cff416470ab6095b767de801458): 226509656, TokenName(b665e1f8a1bd6c867aa6868bda6b66739b2c4ad97130e7d85167b92933e612e5): 3081002613, TokenName(d23696e1a682f98fd0fc046476049f42f89d5cc24835b0784b7100254c818ee5): 1540836842, TokenName(d3f3a02c9e046d64f19caa44f964f0d043ff655fdbae0dcef4ef2ca6279d1da9): 857302425, TokenName(e237c96477dcf222829b69dab4d3bbdde33abc18bfb9d43f995a28a085a11600): 4025060393}, NativeToken(MintingPolicyHash(ScriptHash(ca7fd51fbe9bb1cb116145a4f2870bbc022b6bd0ff423a099b159b51))): {TokenName(23708eae008cf5a8c0f80de6e7a234f5da2a7bd70e77dd982b9fffa737931e48): 2826237570, TokenName(3c39631b60c542bfed5c5aa3810a46ce8a16a7bcdbf85ffef02f82a610a8e0b7): 4034833149, TokenName(45e3651220d382bbaacc96a1fb53ada50353788b1455514b3a81017c1564357f): 334707204, TokenName(e76929505adeb664e97b73280866c39e6d7a7375f3d2c07db9e29b2aaa1a64a9): 4267139948, TokenName(f43d5d1b593a13cbadbbf2ff662ac97c07ff7b612a4dfac10780490fe5c77eb4): 2861426176}, NativeToken(MintingPolicyHash(ScriptHash(ccb13a35f256b140e44c02b4af30764b1d12c57a7043cb1fb326f377))): {TokenName(44843230b3fcfbc9f25a9ace669fb0a80d65cb45e0900c346bb8dd464c1e2c24): 3886874923, TokenName(59c78285a99d5f06d60e33913bb25499e7f191da5e7e5fe0c19b34e0c4b8de24): 2372979482, TokenName(6ac148aece10f6c09c683719fcda91b2d1a5fef071693fc176df2942bfee6afd): 2142107358, TokenName(b58cd5725e4b0bb298802dbe2b7a6f294bf4e771f6f23e584487b792cf859c67): 1813112534, TokenName(f1af2ca64c1aeba2037fefb1eabc8c385da50cda787395ad88102ab05287f69d): 1241001126}}), datum: None, reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(2b07b7877a2b46bc4579ec595aefd73b398b1bf1129edabab45f9dae2958d81f), index: 1243967587 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(11c5699e46aa23a4bdbb1521e5ef13f0af4cbd8ccbbe11a7197d55f9)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(1728648231), transaction_index: TransactionIndex(3590170767), certificate_index: CertificateIndex(4283880003) })) }, value: Value({Ada: {TokenName(): 7748603629653168127}, NativeToken(MintingPolicyHash(ScriptHash(0c02e4d718f96291697fb0bd36769f5cd5b37bd67d1bd272343e9fe2))): {TokenName(5c72315a5de9bc63bcadb6dbec2af6d5dd22e67ae080a75b692cb650dab05166): 1927482761, TokenName(8099c9a487bdf002ee3137cfa733edd6244225c73eb0da98e404fe2d472ef4cf): 3185204016, TokenName(8d1d8eb3f49354015db84c27b0dde13c4e35494c822ad72ef79b81061322c556): 148143710, TokenName(91e2210236086e3326cebbca8e3113d4b2245c9d596cd38d05fe5a4b537fb3c1): 3953111174, TokenName(e8c032c78e4cc50fef69f11cff90ea4d005acbdffc12a8d4532858dba1e43264): 2028865169}, NativeToken(MintingPolicyHash(ScriptHash(280be125df57f2457a23dcf6051c2f9d7a808a4525cd863a3da33627))): {TokenName(189e7dc25d4453ae7fe26c665e2678ba87e01e8edb4a468006ccc4f201571a9e): 4185894986, TokenName(2d08b6a48320fd20d083e3e2d5bbb552c6190990b112c51f72a53ba50416e1ec): 3575835787, TokenName(4784527077bf4fae44b72289d7f386ebfc85a7027e666e343fb77fe30f9ee062): 1633553840, TokenName(5afb59bda895da2ede5739ae3cdc8a3822763fb69b01c00e5e1508c15cab8ea5): 490427526, TokenName(bfd5ab94d71e159d4b1f8e0100285868d4db2ae35478776e7a6cec74bbff5758): 2797161448}, NativeToken(MintingPolicyHash(ScriptHash(4ccbe3c3b80623782fa30aa49abc0b5d90810fa18f997f183fd745e2))): {TokenName(23222734017052d6945e2e56deb35b2b1e7586a7d98c4a4645bdac533dcf5f51): 1708191530, TokenName(423583311cc5510ee57122a1153d6215049a53819927d9f5e5202b00d6eb36a0): 4210856024, TokenName(5c002dba64cb8afc8c7ea7533ece13c195d029ed9dd664c85559f0674407d920): 1179183873, TokenName(7e590fa6de16d366094f4091043d7d118ebf719fac24313646eee33aef392089): 2073268386, TokenName(d7f83d86e2b4c8ecdd3b4ef5876cb2802e6100cf1d09963bbdec106dffeda8cc): 927853813}, NativeToken(MintingPolicyHash(ScriptHash(7cd50420383651da418a92da5c91d727e31bc34c07ac3d22995435d4))): {TokenName(0b059a492843318861b9a242173695674ee3730818031d31e9393b6725aac77b): 2317693307, TokenName(4547699b8126d931915793b4bd95852b6de579bbefbae3e88a1531fce25fcee0): 583744481, TokenName(5e61db5b1a03c309654f1a4d9bd65477011aea838970b1150b8b18262f02ba49): 290296387, TokenName(9b6b72305e7fbd0c3ed605e23e474991582e70f63878e53b4e9c869b040f5f5b): 1480523016, TokenName(c83fb9d4f892e8261037fc7054011a0b5a374a23d488d535dd49b108eb191442): 736650869}, NativeToken(MintingPolicyHash(ScriptHash(8d673ba1a215d046ea7bba4d80257f6499134acf667d658633f276d4))): {TokenName(02ca529425c42b3e95e4f42e49d16bcc6021554d7400ce4ae7dda185991994a9): 748377391, TokenName(5f82bccb82a27e6566ec1011b5035ea3655295c2be1e9fc0c40829b731c8c961): 2438112588, TokenName(7c27a2a9d896ac4d4b4fc1c80a15311a430de3b5b37a3fc7f3b3a7cdd861334e): 733744395, TokenName(91fbe467bc389da8540eefd9aa06340927a19a56d727b0fbffaa47accc8d614c): 2138315087, TokenName(dc2268f072bda291c348b91fc1ffaa9821e2c848662b239319a636ec39471579): 3177580649}}), datum: InlineDatum(Datum(Integer(15075788117240937958))), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(603d1fdf0eb705103314a22989c4e5eb73ba742026913342c41ed86d2fdf3660), index: 2051295606 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a4216e25edb29e77a8d0aad24d129def1842d9579c9d4e3f682dc55c))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(ea7b33747144d1d7d13aa14f7df6697eabaec5fad6ac2161f0693214)))) }, value: Value({Ada: {TokenName(): 8925537596683938766}, NativeToken(MintingPolicyHash(ScriptHash(29093716b5f94efe6dc0d363eeb0597e465edaf28e3d6ab44147944d))): {TokenName(1981ac8871574081e37734e62f42d59e5694a149d3e1a8a39954f0b9fe2b591f): 2432836977, TokenName(4acd5d154c2ab392c1710859c193efcdeb9a4535cbc8e0dcd046b640d4eb7552): 902076967, TokenName(753bd5b750c94c9f6ce5f8a3ddae424f72936cda90ac9aab4b38b95f5e714cbd): 332318396, TokenName(9a9e5e9f0223500222f9b75d0ffb77d2ce7531291c845e8bb6689de491d692d5): 340392667, TokenName(9b686d2e05165f022cba64fadf1088914bb366a507ab213c8c3ddaf7ee7a46c1): 3685600604}, NativeToken(MintingPolicyHash(ScriptHash(4d626f6a9399c5bfa902fff30c083c3fab316fb674ceb3cadf2ec9b1))): {TokenName(74e5f89afcc7d5991f383af40c46ac32834030978c0189980e190c6bc61927eb): 2660653260, TokenName(7d85353bbb7de907ea35ceaa7d1059e9673af6e70cf03b7795d35f64b8d989f9): 4038719552, TokenName(9aa7e1d8519ea3ba3080f75482fcced303c43a06ddb5fc86cf1a1d61ee9647a3): 3376008048, TokenName(c9d0f508f235c15477ed3b0541c7df528d194c81e691322502c80bbce3e72b93): 2552040617, TokenName(f45c9fd4835fb6862c993e732af56ce86f6f80fe52d87ad2b34ca87c33ddda5f): 93882121}, NativeToken(MintingPolicyHash(ScriptHash(83af1664cf3e4ffa798d43afbdb681e14bb316513ded6f041717ffe4))): {TokenName(0c8d91e2eba3751e7448c2993f15d727f9be1f1a761ad02e14fb0ce89f78feb7): 1580835092, TokenName(1c6ae29f6ce2d7da849da44b7a726196e68095729ef6b4d8c7c0eb361747a31f): 3375235636, TokenName(cee109e119cdb548e08d433d900d28dd53402b097cb2e2b2660da4d1def1d60d): 4128095315, TokenName(d05c690fae152227daf62a7798b42688152838022e541483ecd9c035c3e0b98e): 214072117, TokenName(f47aa961eb58d8500069e96172432cd06e985d50abf1d5cbd1ffc7f4b76b5d4d): 4115183080}, NativeToken(MintingPolicyHash(ScriptHash(aa8ac7ac8c3301cbe6a4f79f7bdbebad4a135d9638a6a8c4fcd6a79d))): {TokenName(5462d975dc29be0ae56412567c9a4b3402cb41a8032a14226434147c5da1c03e): 2745335079, TokenName(7d663f36b92ef6ee6eb57c396344f199fe9e5de46db02fa4ac77ce3e1d861218): 2197791936, TokenName(8a7729799beb6cc12532b6354bf9bd7cb9e286c3b3fd876de4743f4d51bc9a58): 824585603, TokenName(af3af3e4808cf616c5d52524c3cb4e661c51c4ee8df6f746030e2777518cae5d): 3376409866, TokenName(ceefb226d3775a95b9ffaf22eeb5de5e07c140610d7a35c777c7d708db648999): 255007278}, NativeToken(MintingPolicyHash(ScriptHash(f251d0a77f02db88b11a55a7e28ffca19f7784971cf06bc8fb59b3b7))): {TokenName(896fc5052de9928da0dce4f9f7027c82210dff01137734a0cfbc0d68b6cd3223): 306344900, TokenName(9ac2f97ea90bd314e1f3e367ee1822b857c932254fe2e8af46ea400845bf16de): 4186517141, TokenName(ae7833ac678940e9ae4fdb023981607f48622f1887201f1ea87b218e3d4a5802): 2705283853, TokenName(b72b9e7d554c3bc5f31594c249d56eec8b49bbf65cdfbe1dc8379940a38b7a2d): 3341327994, TokenName(c91ffa8366cacc28917ed8b0b951fd276c9cb85ef3a6741b33825dda546c1c50): 4167661001}}), datum: DatumHash(DatumHash(2b4131e00a320d0725797d982946dfe0c11d9068b0825c8465712f66be2d87da)), reference_script: Some(ScriptHash(ff7e2343bfe108a8a274717bddb6bec8765505c848218d03c78f2e05)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(63e71f3ed0b72ce795acd81022fc40804542770cafac1643749ece536c82f743), index: 3473660016 }, output: TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(01519a6eaab23e224e3a730777da99c9482523f48f947e068e20d67b)), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(3c232332ad432fa3bc474d1448fc06ec13c9045582f7f1532bf65f36))): {TokenName(02ced3f4669e6f1d5de68b002773f43a303ac1f818ebf36cd4cbc6e52f5da94f): 696656815, TokenName(0c915be63ac8e42869e2266cde84695b1d3056e6c716673cb4e3f4a8f1a5b6c8): 425545477, TokenName(251f94d99daf5dd6b9cdbe7d6cdeb03319ccba15d7be17e81400304c5ad2c88c): 1797429777, TokenName(28d62192084e26396fcab568e94896c7345857172934f450539cfbd6b947733c): 836609154, TokenName(a5ce984550eb3ff4591d37fce44e3913b2187f3bb5a9a826d25ee64b1b098eb3): 3380257614}, NativeToken(MintingPolicyHash(ScriptHash(3dd797a91a6823977bff7c3cd03170d1de3348a0b210adeaa88b79d6))): {TokenName(121ffb277c0db5ec48a8eb058e0c054cd4641d75780b415ced1318886f26e35e): 4069578957, TokenName(b7cddd8baee136938f93127de502055a5bb6da34067000ff30283a94d54723a3): 203685091, TokenName(d8092b3cfdff2fe5e1e8247b794dee3b7e6cbd8c9703350792705916e19671db): 2208159976, TokenName(e81744921f1aa0f3a441c788ecce3b6204d8d37b1bc1dbd37cced02bcb0622d7): 3789726687, TokenName(f5b7a5111b8feaf9f47baa25bccda014ea60ee1678b49e61dcbdcf88857aa6f7): 2781647908}, NativeToken(MintingPolicyHash(ScriptHash(768f53818971a0ea66b0ca1dd4e29d97963dc85c778c9ec4d5fc94a2))): {TokenName(08a33ef1c5c75d2b979ededfc7898535366cc743fe6d92097bbc1ef9e304caa6): 1663049919, TokenName(0c2aed8449ab1e4e0f0acd5caa6c4f22d46192a72b013721b48d74d72c8a41ac): 2294787973, TokenName(7e5c8e73cae565519aa6c4ed9d6647a3d18e44cc8af73708847892bf0c40102d): 3966512321, TokenName(a4482d820e7f3dfb2e78c953784c3578016a5f74dc3f24b8f900df70a6a25c6f): 2867611653, TokenName(d19427fb71c83d685805532e52bf798f9d68b8887a071781dd98af27169e5a08): 3457975349}, NativeToken(MintingPolicyHash(ScriptHash(9216b26e7161977e8d6d2baa59622d4f61e6e1719181a555734a2f5f))): {TokenName(70e9a2bb2794875b847fd4692f3300c4032e4d36aaf3a0a1cb48504ec6e898c2): 2409066633, TokenName(98091904386ddc71ad16d277bf544467ffbc66ce5c0f19254cc5c401087ca94e): 2236215107, TokenName(9f931891cc743575035282022929a975b8605fbb332e927c2822efe0543eb86b): 1825752575, TokenName(c3cc1ff4a516b48eb26501c419409c253b463f5873e26a68acb688ed10729f7a): 2543388652, TokenName(e88bc3947bd1256e59ebafef62dd42cc35254e32bc6c1d8e2c1af8082515f876): 1955706972}, NativeToken(MintingPolicyHash(ScriptHash(a9b68d234435c5920f22063eeedeabb3d9cebf922f69b90fc4912103))): {TokenName(10d53d8555aa1d766af64524899283cdd58d9b2a3d0522966385131f0c79f090): 3709039757, TokenName(552164813a95fb2a807e14bfcde12d897eba1888cce42fc506b66d6ce2e27aaf): 2570348155, TokenName(e6b46e5ae30378002de0f194a4d6e12dc2974e2cf825765b5c029b79c9ce3ea7): 2735422298, TokenName(ee9457852a462c0485900378df8a82db5b9f294b90ffadcda8d3ec23175c3202): 2913431510, TokenName(fe73f1ba83f705dbfb669c68524f91a66ed434860ae9134a7eefed52605a7b8c): 3067821360}}), datum: None, reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(09cf43b747a5975081574107d549c120ac31d43b991410677847c96e37d3a33a), index: 995961261 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(2544219b3b272f8affb97453b893ce3f618054a41ea2f4698b4926a3))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2612535545), transaction_index: TransactionIndex(2837987253), certificate_index: CertificateIndex(169250896) })) }, value: Value({Ada: {TokenName(): 5785086996295989328}, NativeToken(MintingPolicyHash(ScriptHash(24d3daec3335fe935a2dab1a9f72a106b491ea9514446b6e6eda7a44))): {TokenName(261095f4c6c9a636501c1a9f286ae75dda843399ba769b11ca9eafeed99c999e): 3372569647, TokenName(396b56bae233a8791c740f10d69e169acd6db3a77357355745bf75f83f5fa6a2): 3445609636, TokenName(5fd3a4024903053bc81ebcd2572868f726650252760de89549c1dbbb48ea8ee4): 4098907285, TokenName(635afa33d221ebcd8135c51d2c6ccef517ab8a03afabca02b1b3daa2f2e40d49): 1937604927, TokenName(bf171ca9b23bbaa1789f7608a3b0822263152ad7f17004a04c4806d8f49f5574): 191326486}, NativeToken(MintingPolicyHash(ScriptHash(73a3c06e278dbff68844f15ca850c7961dd572d7cf7dd17896ff7018))): {TokenName(305a534019a8eaa982f9e48ebd7fd29832e61cee7dfc4ef484db78d7c68d5532): 738652252, TokenName(61c785b7f8c206a14dd23d6154fc0dd201df0a50a70ef286610c4d4e789f45ea): 57281176, TokenName(9fbf7f92d5eb1e7a67eaff98c0028b6bd6d66c5866f871dcc415053152200634): 4024650166, TokenName(ec23e54ce23e1c3dbbf1b09b8183ebcd8387600823f4daee6323f0443373f2f5): 3484556259, TokenName(fb5c66d2dc5fcb3de669a10464d8f338e87c3f52bb92bf05bb6bb44774ff5e4c): 750166036}, NativeToken(MintingPolicyHash(ScriptHash(977b0103e7e4e19272752ce64715f8186441f6bf1f1d488a4f6e5740))): {TokenName(0a82e97549b50abdbf4d773a369231b08c1b7b6156f3c9a7f278c22585e577b8): 2913503834, TokenName(16a46677b19c6e2943c38dd581412e0f6b9b3d900dce33faea712a6dfb427776): 3758849122, TokenName(d0603db40b588c5f3859ea5928924537869d1963394f0aa63acda40143850d5e): 663744825, TokenName(df0364ce03c1c98d81a39ba2d3ea20ed7c95ad96532460d5a98fda854d7a6adc): 753062651, TokenName(e784df7764e83764422618a1392e20471d6ccc29a2ecf52cf5bd7caa0a6b75e4): 2955831740}, NativeToken(MintingPolicyHash(ScriptHash(ec5517e94a51a1578d4210c84c9ccb6aad4d9787e320a24942c33546))): {TokenName(0964c4d537213556c3b48d1ef2959908da834856189b4a396053d6722534bf30): 1476539119, TokenName(70780e606c49e25c446f369684747ef0d741d1f4ed0a147f7011505c842221ca): 3018400531, TokenName(a097f076c4d43992236e75e78a33ca6739151a846c903b7cf6436ec021255e66): 3888307119, TokenName(ce883d696c8db1229ae4ebcbc0e470407cddcc736bf7cf58827a8ae9e16755b6): 4070548983, TokenName(e3bb6f9753811c1d98c82c4a145c31a16204900cf53f4e6790edd6273c82d66a): 1174691894}, NativeToken(MintingPolicyHash(ScriptHash(f4ccbd6a6de163cddf206c16ef35b190f380459a63952d1b1895dd6f))): {TokenName(05c0f563fdb2515ff573c60a8388d47433a14e2e40ecce72ea238f82725c8170): 2294748904, TokenName(19828d0731bc0fb884b6085a14e70867dcbdb58a0e0ef0cd190bfd64ade91564): 4125510808, TokenName(3917ee9c0502cddb3cb8eb5f664b3cfe4f831a77c7ce23bc434a2017576d210e): 795989689, TokenName(7bb9055244ee6059f459922e9697febb411efa46aa7f02aaf04c8b67acb87751): 179016285, TokenName(94710aab52e891351cb3215b1190357af69efb64fa68dd3ed0fec2f8af5e124e): 627950714}}), datum: None, reference_script: Some(ScriptHash(19d34805b0db537602cd9e61601b0ee891803db283a88cab71641068)) } }], reference_inputs: [TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(646c5ab020b4e0bdba45dc39270c69c1578f6275aac4e5c7d2e1994a1d4a9ae7), index: 2130406616 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(96100aa59444a37b9fbd6f905c83b4ccfbb6756361795d7079ef9b0d))), staking_credential: Some(Hash(PubKey(Ed25519PubKeyHash(974ba2cbbc09ef5d0edfc553b9e1d714cf5c490f3b30e6634da4e4c5)))) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(2025c1c32ec8e186d74a28f893fc84914b6f889bdd159d3c3e4294e4))): {TokenName(30bc58ed8dc6e5d1239e196ef0333a1cf8734bf2719f25e210f2b581c17c283d): 3138538209, TokenName(8b6543496f447f20a4412270f317dc35524ee3eba336add3bad964ee1fd5973b): 4097751066, TokenName(b8a6fae91dae37a54c5f1f2748d1702f1829aad1af6ccefcfa9be575386ad69d): 1698135801, TokenName(d1ece0fd967fb550c45ad773ab9216f074f2290ae8d861aa334aadd8a83e3e43): 2379338132, TokenName(eeb7979e4f9a0fe0ddb6ddd99f02bba8f369d2deeabcd634d8b3bd0d17762e1f): 1144425251}, NativeToken(MintingPolicyHash(ScriptHash(96431eb431dc160ce8528c595b8527fd37d8623a658ff5b4e2910310))): {TokenName(187400bfe405947a0c85026af447540639c896f98168f1b2a321bf70767329f9): 780087136, TokenName(229866110b973a27788d02e04c82facaeef7f3baf3d10304820fb7c3f7162e6f): 3698607039, TokenName(26287b743dcebe10d2c79b2de972a578ec4f114be1824f3286a202ab779c599a): 3551441967, TokenName(b7e5afa79a5c6d138357f37f4a7d2aa891399a6aac98aa6ad53c547de534c69d): 188390724, TokenName(fd7481e9c7e26d8ced3941a1bc9e5aebeec9a1cb544fdf950f00f88bccf8e6ab): 1096813748}, NativeToken(MintingPolicyHash(ScriptHash(b8ceab26b6ec226c0a59e3253ac1983a0ae723b4b05d4b664adbd75f))): {TokenName(8b0e37aaa16b68908baec30d4ef4f15cbad1552e8a7af5de7d490f26ec221ee2): 2958418805, TokenName(acead95d21b48bd1bd984290391d9ade32cac36cca9b20b6d99f85069698b735): 764473882, TokenName(cb1bc51b825125e32fce52e5df29589e45d9d3a75bfbdd35ba7517d1c66dca2c): 158222626, TokenName(cbe38044887af69a5eb7a3d6d8de642a6bad8c7dd94b51f4d2d7dde9a098728e): 733176453, TokenName(de2616b83869ddfe31d427a7bd915e6bb481f9602e4deec63367246536b6d170): 4096836745}, NativeToken(MintingPolicyHash(ScriptHash(bb8a610ddbd715ba31202d918f194b8a91be206d9eedd8895a20cc2b))): {TokenName(6c9323150bc643e37322e95d33a8a14f429f75b8c7c62434e2d976e626ff3ad8): 72174935, TokenName(78d6fee92717c0d497933bab0ff3e8e24e420ffdb1ea1cd1db1f1080d77687fa): 3839528739, TokenName(ce0a9672afbff271b9a6c717d7dabb85cd0a280aedbf8f9708205b087a510a3e): 190791990, TokenName(ced17423c8acb2ca8138307e51d3d87626a6f37412e1c1f28079b542c324a9f5): 3341648181, TokenName(f61de49e729b1fef2493ecc84890474faddd1ac67d75588ca2d7e8b3e1c632fd): 3007165824}, NativeToken(MintingPolicyHash(ScriptHash(e4294bbaca3f5fd9c0d411d58dcf0727c1fa9b2fc2599cfa762dc10b))): {TokenName(05e1943ea4866dd92d18ccc944b702d14b8b9fc54433301314bf79ab6b189c7b): 3287269245, TokenName(654fed4b393e723741eac2833f6308f46ef79a23ed0d4634b1728ec047b2929b): 2637736497, TokenName(6decce0caacba946cf43c83beb736f44ce8845049af156cc8acd7d9ac3b8099a): 1185579404, TokenName(e14f8585ad69f0bcb39a99891a7b0127158317343627765717aac9b109f10e72): 3437265369, TokenName(f9bdc38e8c0b819272e5cf00769d0bc5f968a0ead94c046f03f6818a2763ccd3): 776023997}}), datum: InlineDatum(Datum(Bytes([144, 173, 223, 201, 140, 121, 148, 204, 192]))), reference_script: Some(ScriptHash(94007b6185b7346bc984bd7ad95afcfc40d40f1553912a99dda88794)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(b6b64499eca0629b83b141ff8928ea942f12f43b3499dd22cee3ec324b085075), index: 3829671490 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(e26318be52d90808041b52c61dea2742f853bf5256f8efda5deba934))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(870375327), transaction_index: TransactionIndex(1246192293), certificate_index: CertificateIndex(2668375927) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(2d29d583a565a7c5664554ae73786ecc852b3705834a56207904b9b5))): {TokenName(1606f7628e7732dd5ae6464621e4e1455a97c7a4f4a7cc0286b6943be5915a24): 1832724581, TokenName(88c34e27758409463f67122289d19abb38829c0e30c7ff737b56817c097bb4f0): 518606772, TokenName(d74c5e3c383a4fbacc69ae35e824d49f7dea29b8763ce837eec4d8fce13864f5): 3713597674, TokenName(e069beba1b8c7ca90e7c2cc24c3d2baaa0d7345fe017225ee751ca5cc04e4677): 247823558, TokenName(ec6b9e4701fb6cd7788cdc49eb506ac29875a4edb19e2662a95d0f3d6f02588c): 3728361650}, NativeToken(MintingPolicyHash(ScriptHash(419e1f3287f74a6ecd6b7dda0dc332fb85c4b2b9a21965073b9ae8ee))): {TokenName(186e64b3bf7f12983292b62c47651d7f609b11c461a370d8a907e6e83e73ce1f): 3809259102, TokenName(3c89442f9a1013a06894baf60361a50cec905c672f4e8ddfa0bfd2e6f7852efa): 2030150634, TokenName(cc5e1525f397c479665ceb6dba4f19fea7bf8738a56308dc8e045f8d68b42910): 2779674349, TokenName(eb58bf23499953ed40fe55dfadc766b5e87c04fae463b0a05871ded80a89a4a8): 2622975792, TokenName(fcd607e5f4333727b779480f9e95b9d7cbed1fda1fc20ecdc219bd9c2ffa8792): 2991420154}, NativeToken(MintingPolicyHash(ScriptHash(90ce09cac5a7c5999221bc657e06a3f5d0e62ce0d33878d2e41dbce8))): {TokenName(9acf4262141f5acb8e98de1ec52bfedeaabf2b18c48264fe823adbf57cc29603): 1924413208, TokenName(a4802f086ebf26a2b4e3d16bfc04729cb8ed709c29451e8654fe5c969f249852): 3388478348, TokenName(c1434306da913ffa233a5b2006ff00de3c6483f591da63fa8cd61dfaa4759f94): 3354611819, TokenName(f28be7ddd7371e33148cc070296929277679733fc5af5feac2841662434d259b): 2551327226, TokenName(f707345ed60c0fc657fb699f7528a5d77456161f2aab5873f984421505869d81): 4187154854}, NativeToken(MintingPolicyHash(ScriptHash(95cd10afb254ea65079c3843e18cb313399b126dd042bddc38e86fca))): {TokenName(2c025ca7026d843a87832fb56a0d95c3d2b629d10eae2b287fbf2a57ebe01bad): 99849342, TokenName(97a30ebf70e75b14edf59bda226ad48a236a97a526f53a45c4241eaeb09cb216): 1440733641, TokenName(a68840161fd5d25b87a703b724d6ee62eabe573d16ddef143ce434994bcfe7be): 1525056038, TokenName(aa740250918bb880ea544664c1513ac01431f3fe698237bdd87556a0a3570e44): 3675185957, TokenName(f29b9b52614134f76b39468df80c6c6767ac0289c5b21ddea01222935793f946): 2328116611}, NativeToken(MintingPolicyHash(ScriptHash(9751742fc2515edde873bd9dc4709ffac7e44afc6311899d7b120fe8))): {TokenName(3a305ba2e185dfbe658bece2bf4309d98a27150cb911daac96dbcb3c88825579): 2013425254, TokenName(5e3cea53b9975b1540fa5e97e1a4cb8d47286febc4e37e418874ee00317fd42b): 1430243102, TokenName(b97cd54dbdd4f5339146bb7c12f86233097539fe99437d3e7a132608a89f6686): 3640949646, TokenName(ccd68210c540d2e70b1b3b8ddb3da71afbc3d84c80b80f19fea307270bf91ca5): 3085066512, TokenName(dbe81cf006fdca9a3b4f1126fc829e46f0f0b3851443bdde4a6d8e2263337920): 1798570448}}), datum: DatumHash(DatumHash(6ce0fe1ddd86f2210d67b6768c34f26aa206ac0c7fe63cc045b4fb87f3d6da08)), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(1a8628cb331c8ed648bee37951f17a2a4ff16ead08d374387745957df684d510), index: 1909219806 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(bc17ab562fb24627336dccc799e7bc3a138ed82f77b7fd0279dd9b96))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(761437903), transaction_index: TransactionIndex(1679473444), certificate_index: CertificateIndex(957930270) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0ae3735fe68192459d4b2ef8ae30ca9560528b586fa40b95008f9219))): {TokenName(1b48b00ea46a5ce95a01c4fb95874c6a1a4c180769069bbafec6bd42d9e9584b): 1271347592, TokenName(3121d8b957fa7c96206960b7b84c589d60f02e5581bfcdd1d8c9657ca3e51178): 1716028803, TokenName(487cd18ea350068bea61713d305c27effc6e05e1247b59ffafd2f8d130ddcb06): 1980622124, TokenName(5eb9f51b040f78203f5c185c46bed5a499ea00e3808614c4573fe9ca9e8a29fb): 3367802477, TokenName(f7c612d491d33a4c3d6fef580134e5a4c599305bb08b295c924a3880e065d67e): 507756363}, NativeToken(MintingPolicyHash(ScriptHash(695a8c13b8152b5ea46cd7c9f1d0daf2e4311286ccb26b5b8af50e1a))): {TokenName(1f282df05100229503c87c1b6f001c7aafcc823231d81b1ddcb36746b20af82d): 3786938144, TokenName(873128617bfbd595e0a784929f6dd84b6bd28908df6fd3339c7948788c3cf7f4): 4262995817, TokenName(b9569b2eb0974527f78eed65cb4a329a6c1f4f80469fcc422737c71f466e0984): 1292462706, TokenName(d066788b9cbf13df2897e6d918fd506016c0fb96c8be194fb1673bb313f10496): 2349739461, TokenName(d12bd2164a090ccac674be88b6d9d5ed89292773f0caddf134463787d4e58221): 2541659157}, NativeToken(MintingPolicyHash(ScriptHash(8e4f4fe9648492f0360f4051d94e2a92e6d75f653af78bc482c7013d))): {TokenName(0f87b3a2c1bce2f6bd26854dc946935b03adc3012ed795fc8577dddb707fd543): 3227061065, TokenName(55a2fc934fbee7247339f0c52a1e1ce7faed6d4e13d03337b449467982dc9216): 483049655, TokenName(6222702ef60fb8506ff5d1787203b0c6472ccb98f4d561ea4ddcce01297a7cfe): 1725796137, TokenName(dcfaee0cc3f32cffdd57d822861179574880de2f6e2dc58c0ab0b5704cd4dc34): 3670968241, TokenName(e61632ca43edeab1bbfe8562d31889b65044fb6b79f6a83e7f35c4b9b378065e): 3962241471}, NativeToken(MintingPolicyHash(ScriptHash(a37934a127d3e87ff3c99fbb1137c9c8e9ede17817fc2cfe4e636bda))): {TokenName(8cca9cff66be72436b1a33c005cea8b5e09af05a68ee1486155dc36ea8dbf89d): 1332569697, TokenName(a20ae21714fb6005c71a6da893f6e0ba7742428708a383f920014e87af72d865): 3704577329, TokenName(b8373ec1f3bafde0c5a901a2021aa868d3b6d3f5a62d86e06cee54150be43a56): 2244211345, TokenName(f84082a08bdc5cc91c570a0e5122aa56c81a2c9f875f42f02efc99d3853b1eaa): 3317333304, TokenName(fd429f5dd49fc8d124de2be99e0c726325d3a128557619593ed3b19cf47324d5): 2247405293}, NativeToken(MintingPolicyHash(ScriptHash(b6aac5a73a52ec1eae3b182fec231e3d42397d63ab0533fda93ccbf6))): {TokenName(01859cfdd9763efb845bf2cb8838e3e0d3a54f06fce3cccfba72a10878fbe4ad): 3826300014, TokenName(59b873b6e1badb452077003bcd9c051289433db2810a40ba45ad3841bc63f23c): 2818072503, TokenName(7141ade3951c51424a1e0aa5abd99d1b46afb62658899017e1692a5712cbf7a6): 22430721, TokenName(ecafb3a36da7eb4e41fb5582be578cbb27edee114d49c5721fa96e641dd390cb): 170615864, TokenName(f0bdf9fa62e0ea72ef9ed9d2f77fccffe658dc6d14097b9fb72bf26aa3197996): 420350960}}), datum: DatumHash(DatumHash(9b40e29d7da6fb93d37c4bc8e9a0c2a0bc4414d7074b27b9af6173f586198bd7)), reference_script: None } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(83f0b03d92da9ea6aaed8b3168c6bd1a0f2d98a14e4139a5035ecf4c01749077), index: 540155390 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(1b4366c158dcb5bf5a9b416cf881327062682339bb6db13dbb35ea41))), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2067503976), transaction_index: TransactionIndex(2585448354), certificate_index: CertificateIndex(3646125818) })) }, value: Value({Ada: {TokenName(): 12552441740616864806}, NativeToken(MintingPolicyHash(ScriptHash(3d51228ed975c19514b4f11f8bcf1f803878e75ed01337c8be8bc19a))): {TokenName(35391eed4337bea447bd9ef1f525f99dc9bfa5ea0a748cb3bbfd2c9715876625): 1179301494, TokenName(3600788453825ea4304b2ddb7575d8abff9326a66f55452f3dfb4203be9e3427): 609877132, TokenName(395db378fc56d33b3e28da1f68455a82473507e7047aa3f1f6f5e25f7bf1624c): 4063400532, TokenName(bb0baec22640b1096f65430a14405fe7d100988342ed94d40b73d1a521ac356d): 2159632668, TokenName(e867990428a8f4dcb694b1479ef2b39448287af311013575e0377dbb80adc077): 183808920}, NativeToken(MintingPolicyHash(ScriptHash(49e99cd9d95cee180c7b468834e430781c0e7cabfd936d44d03b0b0f))): {TokenName(2abdae1c2337b9c1bc424986be62f52267d7675ecc260fcb8e6f459673737b1d): 3155480505, TokenName(2c440d4964412914f032b0b32de573782682a4433180c7bb9aa3216a414e1e03): 141822420, TokenName(4720f24fa43f44926be7616861058b8e36190452a0cb158956be6908e659b3dc): 3085723435, TokenName(5a2d2f37e9a6baa7e1016c0cb1eac4f63ff5dbd57b97a0895b594c85be8760c9): 3344221632, TokenName(e67ceb5b0f0199a1f9b9d308e23c82aa2c261939e4d48aab9647ac1940ea8221): 87311652}, NativeToken(MintingPolicyHash(ScriptHash(67a17765d3a41131b81223cad0d53e560a18f58783d45997595e97b1))): {TokenName(2eb7795cd0b7e76bd99b05447bbc60da4a97d1d2a1cf762500aa9a29ad216f02): 2183399998, TokenName(33e9d80e08e035e914c82cdb8e0329be399caab7545ec96b0b3e33cb995bd75d): 1095828543, TokenName(4d4549797dd6bd2ca70832e7b70087e11d02c36bd085b79f703718cd10fb84ce): 1627164280, TokenName(9d48819ab9b6155bb41ca8c431a3ce317284b9982ea74941d77bd20e76f5a2d5): 660108007, TokenName(bdbceafa4c1a9f584a877fb01a14256f599c65e3aabeef247fc29329da931435): 1372680189}, NativeToken(MintingPolicyHash(ScriptHash(80f49de9bb420f7f65e18db26b010b18f1b391a4acd7b51701d9c389))): {TokenName(23a9b01506659529a62658bd37ba00af9244afe5675fd205e3fce00ecb1b26fc): 1479964789, TokenName(7e634331e067fa27a79a95d40b9255aec2d8107e644d72faa2db3cf1efd42c1b): 1821433452, TokenName(a30b26dca267b7e932f6131f6b8bce807eed828d4b74a08190e2739b533b3a10): 2263626605, TokenName(b753886ee2bd686df8ca7a36cab6f5a87ff3775a51421a1eb5bfc681064988c7): 1850967796, TokenName(ca3f7c8b2cd8771890fe00d3d341cb542d1cb8cdf09aee894ceefee459e73d4f): 1639961577}, NativeToken(MintingPolicyHash(ScriptHash(bdce1a0f7ad780af057293a8a64ceef56f8afbc51c01356a13974bcd))): {TokenName(0c0fccdb20591022833ca0e7708df3b0cd506a68e4b83293408bd0cec2e49d6a): 1654625365, TokenName(1cb71f74ff9debaa2251f91b962654498792947ddb105ac7e613402ec29572f7): 1271857943, TokenName(9066b032e01080776eeedc15bc2bad71f1b8a0e831d9087ea22533537730e7e7): 1269402878, TokenName(e025b7ffacd4edb007b6d8947417a539d130a5605ed13569884671248f0c69af): 3368054984, TokenName(e63c0acf468dafbae64fcdbffd6221753500b67f4df1f4042ca10a494a4b2db0): 615929597}}), datum: DatumHash(DatumHash(c8d371812b1cb8b53f974c16c45a6b9c46bcb9abdaa1e442856751a65a4a6706)), reference_script: Some(ScriptHash(c82fd2f11a9194e341c61a2ae7225ff63ffd7e630417cab5916ced87)) } }, TxInInfo { reference: TransactionInput { transaction_id: TransactionHash(c7cbef04dfc2f87d2999e1d0397f53a53027fe499a2b32edd651a6d938d6c0ae), index: 1077270253 }, output: TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(a71b65ef8c2ded85bd584a8e2b191bd63d6c60bbccf3421945eb4ecf))), staking_credential: None }, value: Value({Ada: {TokenName(): 7156803453470119240}, NativeToken(MintingPolicyHash(ScriptHash(1161b610c86c1e75edf3f0d038d405f8f59ba8eaecb23eef6fb16620))): {TokenName(98a4513639f157e409cad17ec3a235a735cb35ae4f5ff7194e3f79d667784c2f): 3163495675, TokenName(ab0752e01c794dd2287447e78a45d7e9b49f78e8c22942133a2e9f601fb01e33): 1210163815, TokenName(bcc334756c5974daebcd66b2998aee37c70a8569ca3438040c1d4a2fd249d78d): 487106306, TokenName(db15cfa89f63737abae9987d3ce7ad2ed4be9c8e9d3ce82aa2d3b5580e3329e6): 4253691530, TokenName(e9b9c4cac8fe3b45ebce38cbcfc262c63aaa02607702b2e27b5addeb3cbd0812): 2339395740}, NativeToken(MintingPolicyHash(ScriptHash(4e8fd2bb2a6dc8ab479e7c8bc1a4649375cd8127a3cd9ace7cc2497b))): {TokenName(91bfdea1dd2b9260abe7beb1e38cb66574d59e54b6985e1d01e33cf97c97a947): 916427158, TokenName(bc827ef5f962681762fa3aaa69930fbc08bf3417fe94388949dedfbb7f7ed4ec): 891234669, TokenName(e94eb3cf8e966322a3cce9c85282cf754af375ab0de6b06dc8023fb97e0572f7): 1598503206, TokenName(ee51f54f8d1510b9cd8d7c83953933158276d17207fca777ad298d178a513aca): 539141427, TokenName(fa6867c6d93307b281feb2813fe7ff70f4e8a8ef14f7199313052a8fca2e2974): 729910279}, NativeToken(MintingPolicyHash(ScriptHash(5516f34e8fb492032688a7b273a9358ec32b3cbcf48061c220cb4017))): {TokenName(4e90d7a121d81e3623bde4b482a81ae695caa5b475d505f078116c88bb44d80a): 1845425198, TokenName(626d9f52379dbacfb2d09b7a8c75313facc4e8ce2f280e1deec485adf3d7956c): 3593534598, TokenName(a4d4b930af00a6fd82868df4d51207b17e9b41343afc66ee8fb6b1e48facf1bc): 1311996403, TokenName(af74f5502ce5bb7a731903bd84c09461d8d241db6b6d7222e2c8b14a4205c465): 4208117114, TokenName(d13b4c2742b5678822bd7939b32ad4fb7ae90fceb1de1e9458df258b703f3062): 3037895863}, NativeToken(MintingPolicyHash(ScriptHash(b6d3a54f8dcf71c9f0c61322ba8d9572f1c47810881c1e87ddae3cf6))): {TokenName(161506d868904713582acc1df6b36e39fcbd19381a799e1af71ab5e688385242): 2340600922, TokenName(16edb18ed24c99ab83d90fdbfcc78a0fb0093c2b124e1c4b76db08c34d006dd3): 3502052496, TokenName(35f421d013e66786764f5945e355fcbbc7654d758e452b4b399a190c117f13b9): 71254364, TokenName(9088b8384e5e9fdfd8035f16b705db02059a79c6f6293adeb8f10b75ea40a655): 1823461577, TokenName(923e9cb3206fba7e9b02ae0f90c974b94317a650eac406cfc14ab6a811dc6b12): 1856719175}, NativeToken(MintingPolicyHash(ScriptHash(bf2a05f904d60252a7df18749b600e002df789ef486e9fdb71d0a49b))): {TokenName(31f826f150f88681e0f1c1e73c4a58663344449ec089476eb0deee5fc6e5ff26): 95503230, TokenName(4508b41507b3d60d806d62799cdfd6c79593cbfcc37e2043ed34403cd02b17fb): 1008817678, TokenName(5e01100ea0d776e9a3c473f8c816415883c3e75e84eb2e9c1cb42dbcaf524759): 1872868478, TokenName(a696e051c9382ac9eddc79815789b5e25f555337a02c4199c457080443e4aecc): 2154123498, TokenName(bafd57ff69329b22c461bc3b169d3190c149bc6dfc74886246a169ecf6e8401b): 2108335683}}), datum: DatumHash(DatumHash(14eb14d5b8bcbcacf39f126e689a849a031d34dd03d6e07ea437b0c2616f1a0d)), reference_script: Some(ScriptHash(49e78fa1de3cc9640d11c3f5f7f119126a7f927c2b55f680fe6fbfb8)) } }], outputs: [TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(ba445747b88212fb3149fd9a4e2114bb17bbac60e3e5f2cbadcfcf98)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(899768585), transaction_index: TransactionIndex(2759915814), certificate_index: CertificateIndex(4112801973) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(1bff977e7da5f5ebb1ccf27789e223aaf6ebb81c25f12be7844811b7))): {TokenName(10cf1a17450644793a81563cc2fe53bc4a01d27d1c541ba1b1c0a41b079fd5a3): 779878032, TokenName(4b87861edd9328c6726d9232dba42b7d217f84539d9a0146b576f1027ceb38b6): 3901662060, TokenName(7b6084343b304f8fa95b96f6561844a12ea60fc89704391879318be2792b6ed6): 1875546898, TokenName(7c6133c8dd0340e41ae5f0d2317497a4ac4c5d50b08a16ff3bed5f6255b7e94f): 3707629028, TokenName(83de5db633ef34e346dfb0a7c38fb28d8e6272e3718aef89d87b1dd9caab9369): 2343619670}, NativeToken(MintingPolicyHash(ScriptHash(24d043b2017560d073f421021cecba5a0425a4ebc0efedaa6a45d454))): {TokenName(259a7e7efc7706e523bbad30e85c8dce6980c5867e169209e544ecc9cadf5fa0): 2895044326, TokenName(46a84240b4a1c6ef8721a4f763f0d9475d2d79d70f83ccdcce85ba1cba36618c): 1222114718, TokenName(db322ef98973afda5164ec3638450be5453baaae04fd5a54837654acca642f7d): 3738279108, TokenName(df0647d7590282ea27752b0434446c827380ff7791b9c1cc7a162552431d5bfa): 3147940003, TokenName(e3e53108ea87e41484bebe7ede167bfda6389b988e7182438598f162fe67dc92): 1985240142}, NativeToken(MintingPolicyHash(ScriptHash(71322fb14a67a2c0eb30db7083ffce94a516cbd67178ef81ee86ba48))): {TokenName(132f973fd88fa462fbb0569bf6356b4fb87eedd7abab1c09c6f54a6767462724): 22415309, TokenName(4f9297d598fed68e8a083cdc2814d31b1f9dd0b98fa6f096b3ebcea6c15b4755): 3055702483, TokenName(9726f3a59a7efd85f21fee20e83a8399b80133f4895cc7556efaf86e663ce3d0): 3426937370, TokenName(b00c59e99b9e18a80f477288887a30aa3fa5261f8c26ce0d7fb502642d01a572): 3636537275, TokenName(b61d1cabbc7baf1714dbff1b50d165b08638c53dee7ec98785569ce05cd7f4d3): 88385042}, NativeToken(MintingPolicyHash(ScriptHash(9698fab4dda9983aa171a07503c807c3f6c34624cc1349268dded999))): {TokenName(072355c208e4158d58a8d61ff048b4c2d90a19ff4918495add3b7f23ac187a9c): 1573299677, TokenName(1aed6b0a4fe3d21668cc913580c3e81b4695b2fb75bdb6b80cc644c475054dde): 423429763, TokenName(7ee6d0cc3cdef3c7d254caabfcb13006afa6de3d01d116cf58875d131bdd97e2): 267477376, TokenName(9092e84be17b25a85c1489943b195078d880a3515fd055be7e01c53fe491e0d3): 1698930157, TokenName(a1c5d50d8dd3be80119312674f25e57a871d9950afbb40a0f44cf7dbefb3423d): 345034190}, NativeToken(MintingPolicyHash(ScriptHash(9f4c36211c209a17f4efd9abf60646f325f8e7dcd612c25c504de62c))): {TokenName(0e95f2005fb3a217a8dd6eac3d86f98888e9e69c33ddf805e8305f02dcbf443a): 1351697681, TokenName(188d5931fcfe4e6445e7fa9caece48bc33477782ecfa5695605cba2f1f20ce1d): 1178440262, TokenName(c3c3888825b634b1607e7cbe7f861a419d2ca8ce43326fc8abc2e4f8172d39f5): 3300428800, TokenName(ca61bd29644ec9b78e2095e3293a88ec49c6b2e7ebbbc19dc3015aefbd23ff92): 289391054, TokenName(d5eda8dfbb617d151e13fe600c82ee3a0370beca4b35950982a6ae7cc3c302a1): 2203548854}}), datum: InlineDatum(Datum(Bytes([172, 204, 122, 65, 176, 130, 242, 101, 212, 76, 35, 122, 89, 174, 206, 189, 109, 183, 207, 132, 59, 71, 112, 58, 71, 137, 112, 254, 154, 221, 37, 193, 138, 1, 170, 244, 230, 10, 62, 69, 166, 159, 94, 195, 168, 210, 140, 36, 184, 208, 204, 11, 253, 18, 218, 169, 94, 94, 60, 143, 103, 51, 82, 39, 229, 172, 224, 43, 64, 4, 180, 151, 6, 160, 108, 129, 229, 1, 45, 59, 85, 250, 215, 25, 5, 85, 56, 226, 150, 85, 216, 42, 152, 28, 68, 213]))), reference_script: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(bdbfa23d8deefb93ffa4bf890462dbd7616b99aa2680ab1672241099))), staking_credential: None }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(31619c614acc3222f75219a01ab74b3cd9708b00f62bf520b041e225))): {TokenName(678f3c6ac8db8612e9d73f057f4515ca08f7e404fa0cbcfb71bd649fb0980d09): 3589168136, TokenName(91c84501f96205bdf4b6aca99d7d2f5c709aa014800e20006a21a5cf9c59b92a): 759784216, TokenName(bae7c0271cd70340268dfabb18d6f54913d985bea566066eedcd7707d1bdc6c8): 3929250270, TokenName(c6af7d45c3b984df6b0757022f8861b152299af8d4d38bdf298b4f601cea8b58): 1029156462, TokenName(fa9bfe0586b8880408a0af9b05b40f123290a085acffcd04d81c3b21534a0e65): 2698477718}, NativeToken(MintingPolicyHash(ScriptHash(4a2c57b3c17580c1d723f832ccfc0241176153ba975e85610913a300))): {TokenName(1d2d2d7d5168c9997d4b9d4329a2dc94d47d12ebced35b3d36a06131b4fe92ad): 802237653, TokenName(200fa9f4ef1d7dc517f0403f54ebff78e8f1869a69580ed006b59555e561c838): 2312135985, TokenName(6f41355034af0ed50f3a4025f34c3899610f3c61fd6203e361cc6cd50003b20f): 569937628, TokenName(ddb162c84740652400857a798b265db775e8dbf8292ea4e046689d3a7906f898): 1871747574, TokenName(e11640b32d4d9056476747d0bb7e66b1ad3aebf591028fbf43a12f984221759a): 1080171958}, NativeToken(MintingPolicyHash(ScriptHash(640fed20ef8924e123f322e14333c773c7f1b87c6a5708fcedeb1a79))): {TokenName(1ed1e9839d58ecc982023381f05339b42dc26a5a98cb9c0c3d108436328a1ec6): 4109321831, TokenName(285cdaa0fb44838fe4c27185e29a855b17f895bdc044b73d980c39fd5289ba9a): 1479211059, TokenName(4000b3e6566ebfdcbde1f74c603feff94d530bff71a291655311580caa81706d): 1971840017, TokenName(9b95a24a591bc88f3d223c228d716148e8fc19029ab41e65de58dfa912d09c30): 744486814, TokenName(f5c3d8e8a58bbe712cbb355b0e043aee752d7fe2bea523f1cad591dc60f09017): 2299665746}, NativeToken(MintingPolicyHash(ScriptHash(69f1d75647d26ff61a254714e978d787b753c9a7db7588443090eaca))): {TokenName(5b27a5e9b66f913386a3872645aec1e61d5541124301c55c19fd3c77d4046b4a): 1010087636, TokenName(908b399df3fa67379d20a785d7377809c503cfbb186022c52e8c50c2a550e78b): 1071051906, TokenName(9e2022e53b37914365c63da9f80f65e4021f30476e0d2732301af3f97a10ef42): 1959909187, TokenName(b6941e9be539426bfee82fff33c3c712ddbc3adc1443dde8ffdd19affab04f54): 2115767810, TokenName(b7fc7f881762a1449ebe331d17fa1b5f1ebfbc59ebac954698e26ae22f418543): 1344923748}, NativeToken(MintingPolicyHash(ScriptHash(cdb588931bb9cf54a180db3b6f4c3f2a421107afe0a387fb7ad733eb))): {TokenName(073e40ae288ca3dca695d8a1d67f90cd144aaa66d9c70750f31db0730abb4b72): 720007408, TokenName(106ec0a096501f488e0971ccd91a10e82c6ec3d825ad717cbeb80d40103132b8): 1978215740, TokenName(8143fbd0788dfe619e0c6ad0fcb20b37af6db08f762afe0612129bb6edc86737): 2023491291, TokenName(94624006be92dcd0c635049f31e965dee7884809da7b283f6ebce1251452973d): 2458305516, TokenName(d2485a5e03eabc36abb9f53605c126743f0e1f93ce238c5d02a6515962eb9498): 2130436929}}), datum: DatumHash(DatumHash(30baf44468c67d2ca8c71cdca08e011c5198f3ed6dfa5f32230106fc689b8730)), reference_script: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(e6bac9a34c5d8e1d87f4de324bd290972466b8dfc37cb993cfe4994e)), staking_credential: None }, value: Value({Ada: {TokenName(): 2345619003581031683}, NativeToken(MintingPolicyHash(ScriptHash(691cf06acd0567c9e228a3e5464163b72cf74df61b3854be97fa4a4f))): {TokenName(3ba833e2f71598e57b6b3e56680d073f4d202ead017e4c957ba263f808e19175): 982856673, TokenName(4b5d85d9a851ba616ae76c36fb7a9b8767d90dca49997135e3c7a7553391448d): 2722557260, TokenName(e9beeaac7ecd8154d4556eab163516d2f23f6b14f1b0df35b3991becd729c8d0): 2236608870, TokenName(ea139e8a13a72295e43c47471b90bc1c60c36e1e395fd7fe291899f5d9f839c1): 2111553428, TokenName(f133ec5ce25e504fbea1b5f07eb81830b6aa51ef0a444a7c66826e445d270067): 567966558}, NativeToken(MintingPolicyHash(ScriptHash(6d6bdc127e5a142df4164a58634ed279ee23c7dfc4d1890e01f710c7))): {TokenName(120399209c28732de97fca2258f0a5882ab7a43e4908c6d90200c020ac475654): 2232606251, TokenName(1c016c718141e3e32287e07e21006b28b198f4209da3d7eb9e5df107ab6b935a): 1783983425, TokenName(7ba4b45f6dcf0836bcbf8c28ae5baf0ffa628feb868c080f3c6b7f8fae3ce2e7): 1880185242, TokenName(b33032b9cce3b8a353d8decebbc8b4e3098b8d7f175cf7e4caa49fc0960f8285): 2946189586, TokenName(b68f1a7ae21895c735848a47919039dac10232e7c0bad7dac31f763298cdf78d): 2148785780}, NativeToken(MintingPolicyHash(ScriptHash(95ccc105961f20b642d496575c8618ab45778aafeff72114eaca3c87))): {TokenName(19d50a0aedd0c0af9f4962fc29848afea286e8a25cf76676b72794055e5cdf24): 3486082732, TokenName(4ab6a7f6672103b16e90215284bcbc305cfa09efca1cd7d5830c85fbdb1e95f3): 3539097440, TokenName(7b7b96f68731e738219a3d4a9c06443ad74aa5bf064d682ad74f0bac2485181f): 3176132363, TokenName(cde11ab41bbd39741a04004079f2eaff3e99e2a12bd84af790a392e84aeb7541): 550985563, TokenName(f5bc1a1db541abcedf99c4ff89fda1e0c9db9006b07ab1c564969aebebd09a22): 4087481348}, NativeToken(MintingPolicyHash(ScriptHash(dac03c917ea11a9a5a2019f0ef38dc71f50ae6da4fef7ab249b59a92))): {TokenName(255915696336604e690d5cdcd5e8caefc8c2cc7ba14c4ecf90d14b27e3cfc127): 3785128112, TokenName(2cba8c1eabc7864239d980f529ade5101532ea8fe09d77203c91f61e34c5fcd7): 1135484162, TokenName(b2f11129a271944764222ccf1cc2198da61fffb57d369387682fde0f20f34879): 2814977963, TokenName(bf7e8119e2b3dec3d6cdc6b303139e166939312940949de45c5cc4371ea7a907): 1892917545, TokenName(e20e58faba49eddf0fcf29cd18de169efd245c4144d6c3f3c90d6a20901913cc): 1380583014}, NativeToken(MintingPolicyHash(ScriptHash(dc51a951d79cfe5723775a9b68ecaaf914c0bd4ca333c97a33bd5a78))): {TokenName(1b4c96c4f76fb3977b8ac414d12cca36bafeea1b18c9332b6527c567b3dc0ad3): 4047894026, TokenName(4a251d7b17c1688b67436848f4b085a6e85787cf4367db02f1f339f0b639d8a7): 2105094856, TokenName(4b657838392205527c62f57656ccbb43b8ebb557e56797a930c6b007d60675af): 3999884748, TokenName(d22e85b376f205061b77fdd8635ae3519b91277e6573aa5e05404502c092a9a9): 1098536676, TokenName(f7f65974967b3c0f0b59ec46ab1e39f4b3ef7a01b578a9a6be72aa1e2b612979): 1852889996}}), datum: None, reference_script: None }, TransactionOutput { address: Address { credential: Script(ValidatorHash(ScriptHash(8a1f70957ecc5bcf07237a514caff635f9756113d819f5d76f699f51))), staking_credential: None }, value: Value({Ada: {TokenName(): 1875050608586845498}, NativeToken(MintingPolicyHash(ScriptHash(5ffad07ebd776892eb9cf70be33ff89959ac8bf23e9144aec3dade9b))): {TokenName(2c0e09f291d5fe4e56308a4d053a30790d8180afe401474a0a9b8d9a68fe84b0): 3419174824, TokenName(33d20e7e257e8115bafc6277f1528150275d7532d1f4d40a84160e83f400d09f): 1233415608, TokenName(634c0f9175f3b7f80a68e4d6d0ead26c37259ba69359e4e045f22f99c93de76b): 502702735, TokenName(7642483c7c5b82394543bd6a0e82e39b511473fc0b11aca15a739e0334548573): 1957847211, TokenName(fbb16ae3311e95d9824500586e2d40ef71fd93b9e04b92baa6b629c991445644): 3743842378}, NativeToken(MintingPolicyHash(ScriptHash(a7e61d902489094101ae4065dd67f63c8e194e7d04c4e3780f3db47d))): {TokenName(1cc2fdb067c066553991327877808728bd064116debb5db6a475d37dd6b65435): 582182882, TokenName(5b42bdc1cf920a6926365f2d3c2ea62ba7196bdaea0381e879e0cc1064f63edd): 1077275549, TokenName(6c896858fb9e11506a9e7a7ed52728f9ceb432ba5756997be71e0728f35c2d84): 842216307, TokenName(cd50b8569e102c9b1227161ce0e12705cc399b70706ec78e4f64a19a34511aa4): 2394710341, TokenName(f5be742a06da27af05d251af4652feb6102a306824a66338f074fab8a13b1719): 1958201718}, NativeToken(MintingPolicyHash(ScriptHash(d0a6bf87db69adf84ce36aef9ef5befd4bb6be47a124cc219fd76802))): {TokenName(07c3d821c1485fdcb00810a3b5c141217252c61a24513271f30741078029f92c): 3890529542, TokenName(229d8d778334b7f0a3988987575c2e6c9738cba75d8bb04241309cac0ebbec40): 1630686667, TokenName(2703fac3434f25c23a336dbc8c60ee952fd606d485a8f1d14f7d45278f902876): 2142684854, TokenName(43b46257959c0067e91d1678d6d1928031584110bc425d362de0f470b3bbdb13): 1155914263, TokenName(57498f6d566edb2750b7786de3273213d38d784edc1b5663795af6d83000df05): 3798578233}, NativeToken(MintingPolicyHash(ScriptHash(df3d1ac555fe681926052336f96b7237f896dc98b5fd45ed98a4c118))): {TokenName(0aa392ff72eb2e15bd76f081ee194e9c92ab0c5a9cf13f0c1afb98c5d23f923f): 3632623055, TokenName(37988b88ccfeebf8c96553676844d522808a9c189a93a1faafd75412ae41b1cb): 2529992407, TokenName(8cbdd7d69d4dd33c5fa25020b6fae979778c101ee1d15a021de2c4d2f0205f90): 1159873407, TokenName(ab3e2eb78d15c89f7534cef7f735391072821ef558368bdb99c1362465f8fdbe): 2838666169, TokenName(f9b27d6f3432e9dd010ca1dfc51af6b592f1dc6be77f85f1453cc89c0d5f794c): 320800172}, NativeToken(MintingPolicyHash(ScriptHash(fae71851e0c869d670710c4cd5cc380cda0b6c77cc12bc8d404a088a))): {TokenName(19561f4e59d0b31c731632465805369636a0d830fd373808d343c881a515a98c): 1523624715, TokenName(4b95c6d6eef55e7860333ca1c77fbaf416ea40462e464d4028fe1bb6d9fa8a8f): 2672564629, TokenName(5e857d5d57f459d890316b3d7279aa5c90ff56a7ee089c93f20558898bd56d8e): 2676225451, TokenName(d0fd43d731f7636b964dea6b8c80a3d5318b285d65fa18cd2644343ec79d0042): 2068220055, TokenName(fcf5a2a03633681227d43c0168f905c4b67d3bef71fb713d18f169a2b718d064): 4168155326}}), datum: DatumHash(DatumHash(826d7a66d45db89c49132f6f0d47bb60dd0c671eed8bba33cfd1cf722f0752d4)), reference_script: None }, TransactionOutput { address: Address { credential: PubKey(Ed25519PubKeyHash(9f5a9609101b26415da5bd82fd838ccc530fddee001b04415f659a21)), staking_credential: Some(Pointer(ChainPointer { slot_number: Slot(2202497918), transaction_index: TransactionIndex(2126350206), certificate_index: CertificateIndex(821134753) })) }, value: Value({NativeToken(MintingPolicyHash(ScriptHash(0c6f149015fbf25e0bcb8a612d06d075c985fec2854fb069ecbe5d67))): {TokenName(0fbada78724dddfb7dca902d36487563632ef647b0d12b7d286a6252decf855b): 3328392272, TokenName(29f966bb059400c62d419aeaaf87f7b152261133371b3ac137b53e07c428efbb): 996923888, TokenName(57fd19bf614e4a3e5ba431ad041b359b8b74b8c58760c665504f937ec8fba8fb): 4136587877, TokenName(59aaf95e06f3bcd456f1838b11dbe8d68365b7dc64093a9dbdd9c9cb41c5e4d7): 3090979415, TokenName(d2ae5bf39dd75fca8e7f26bd7344898e5f42384f36c76d0d86449ca7d1cd6e2c): 3907724448}, NativeToken(MintingPolicyHash(ScriptHash(953d1aa7c8a6597ea255436096b7b8653d3ef99af22584df3be25b9e))): {TokenName(160adfb15854c5ecd6adfcaa5c6536461b42af6d802908dd17a33c6da70015c6): 1063620687, TokenName(1808a791db8b06d9152eb2b36b5b1593e20f11d2a4a4e3e29d567c664a40638b): 3788863571, TokenName(7f39bd22a48bae016ffea03a21da657edd97785eadc12c044ce8e185466e6e33): 3102480397, TokenName(900b2383360942743b2d715045286063849c0fd58d0baf4218cb1bba36f239e2): 2873646979, TokenName(f1ae7c12c75370249b24a2b4b6a0bcd583e67f08933c5372c87b999913c91bb4): 2416656345}, NativeToken(MintingPolicyHash(ScriptHash(bba45db883e225c91725659b7cbdad0b4e3ed6fd762a880e757db587))): {TokenName(1e234a3b4bdf50113ecfeb00d6499751654ab66e314e26d453d7db2ed89df561): 4141472780, TokenName(344822f1c18b6021081821ca1d8a6fe3dd62b1966bb38c5596604cc4d857c6f9): 3120952892, TokenName(df630d96f19a6e9105a7192f1d5d5d2d5c0b087ac03332fcdbd560100634e5f3): 639708949, TokenName(eb3ba991372a4a3d8c55f27ffe66ac4eef04b7af7daebea3d6dfac437fab9384): 2233927639, TokenName(fe0b8f25d4e3823f5f33c2fedad4b225ce9e1402bb2cba591091e4b9b3fc5350): 2923985628}, NativeToken(MintingPolicyHash(ScriptHash(dbc813806f603986046859c9a1233f82a60a5d5be22875c7257829e8))): {TokenName(223da369e60152a4eccfba4f5e66dec74719a7e11b707ed045b2722040d387bc): 2816803314, TokenName(466e9624f30622c39e429787d8dabcebc433cfd97ee8f74c7fcd30eca007ad47): 4241284657, TokenName(b59a08ea8d7638266fbc88937361c010fc97a487be00e214c6a27237aaecc6aa): 2793411479, TokenName(de16ee01ccaf7bec5d970f7f8eb406b30a0a519d7a21ef8f13e619435fe51359): 3457509201, TokenName(fcb79dce7287c26da98445c5633171009fccb8f5d4a9e10cf7fdb8cc2988e9a4): 1973183991}, NativeToken(MintingPolicyHash(ScriptHash(f93c4aac2c238a53839dec1f85e0f6d7b0f794a5d26d5a547335a57a))): {TokenName(2044ee496ab8736a05cf92574c9f02947d107804e3be9156606b614f379d7d4b): 3903125479, TokenName(7daa60cd5695a6fe07e4ce83510aa5948b8af205eabf83683dfdc8a546f5caf2): 3447520966, TokenName(8836545aa709f54efa76dea09acd6cef5e79aae6327a92241a0a1f750ff75284): 766065464, TokenName(b49ed50fe0f51d3331947f589665125b77728606188fa49956a4d70eac4a2253): 2263306418, TokenName(d8f448fef891d6c37018e9c7e77d80fba9df64e4c0818af64306c777c36a9ba8): 2507925515}}), datum: InlineDatum(Datum(List([Integer(18341390424677414674), Integer(-15188219571950571493), Integer(-12618291903575643987), Integer(12604060985820067889), Integer(1711885320080205276)]))), reference_script: Some(ScriptHash(567a963be3f865a25e5a36ed088b020dbc7ee2824c99f1061f0c470c)) }], fee: Value({Ada: {TokenName(): 15803115623070617160}, NativeToken(MintingPolicyHash(ScriptHash(51af9658be40865278fd47f42d017d860682df63a06f1c0b6e14864c))): {TokenName(00576a3a5f458896aa30b52876cfb69549af50f0058f1b28560c1e3530f7f655): 1891164644, TokenName(346fe26f4fcf7436e8d3d1d94159a86a136beb779d05e610474ea5a5fde683a0): 231309602, TokenName(6a030d5bd54aefb998274c8305eb4915b359a58fa39aec5ead75b67ba94a51c4): 1408961262, TokenName(e368b8e6a939313a805442efcf28bad130952f255a3c0e554acf962c3e925eb3): 2028257270, TokenName(ecb5162c612556f713b3d434a6fa8b7f4dfbefa787c8f9ee8340c335a2f95ead): 2505255268}, NativeToken(MintingPolicyHash(ScriptHash(59a48ee567ffbd294754a2e58ded4ba6ab3f327cd8c7c1f1bc6a8701))): {TokenName(056aae0d11e020963fde9202797e0ba7a6155a5e03a9e40f06ed001dff1f868e): 4062212792, TokenName(6398b5866d75538c40b3114713c7e6e927b19b777e69ab3d85d585ba683e39a3): 179831580, TokenName(a32be848542f1c36fcb05fd76957d93f9a3753e35834d0cc4cdecda2c959c713): 2573060774, TokenName(da053c704706ab24b9d4d6279869447c0609a973850d7cfdacb0b5650bad39b4): 1744184575, TokenName(f8a507a37d0c9f936d3fffa96a9bffdbd7b7c458c6d7e8db3bbdc1c89abd6889): 4216496880}, NativeToken(MintingPolicyHash(ScriptHash(67a0397effe1d763f3065fff9555c652dee27c9c3b08bb2dc34544c8))): {TokenName(417ef25e64dc8bf269771508b80f09daf2c793f2761acdac2447c5f4230d8964): 68891500, TokenName(833e13de8f099d6438ce362f4ebd4011e8583dd1d08c3105b51856db4fed6d72): 2842042184, TokenName(89e79630f1a370d4a9dcff62a4b9e733f65d77a189c68cc92b976a8b47ebc458): 124004641, TokenName(a6ae571e2be0904fdf544d2c1050771e23d265fae40e61d5bcb43fb913e1868d): 1140594532, TokenName(b6cb38fa26dd3c6d4e44bd30d92cc0df4ae412db903b3a12c6c562d8830dbcad): 1884238911}, NativeToken(MintingPolicyHash(ScriptHash(6ec5286b5cd9e1d99247cb163669b313fdc2bcd00caf3748bd2cee4b))): {TokenName(0368a5459a02f850ac1a593ce239f37e2c8b086be8af88d965a82f0a67d9d82d): 2103763571, TokenName(4b4d7e8c41ed1e4824ec752ec88a0f5dc5d69ced7b42fa86f12211626aa90053): 1150630860, TokenName(6a845f861fbd500421b52b4d3be75efe66be526061f379c2517f3e30d809ef37): 611065587, TokenName(9581c41d62560ae5e71cdfce8bb299dd3813e640c2929d4fccfb72cf8153f12e): 2733787951, TokenName(c00bfc5e7fd044062e6902173586840a2fffdd4abbf25ff2b42aa1d4b02e41dd): 2640075632}, NativeToken(MintingPolicyHash(ScriptHash(d695c62120cd646fc72784bfb336c3c16d6b42ce98120c34ea8f7886))): {TokenName(0299561ef7c9a456e1780ba3804163bb2d9693e0722c89902b0712c0e12611f6): 3896231851, TokenName(0e6c1a5f6061a79284b3ce2d29bb0db5e06d95921035dc94dd495a0886c40040): 715083743, TokenName(9af7bdc7bbc9c28f9d17174cf8aee887cb08c7f839aeab22b9f680fdd3f0f938): 857505909, TokenName(c3e407bd1fcb3952f0489287ffe4ef81321ff1bbd120b601fe81edae5bd58ac8): 3247714681, TokenName(e5297cdb851b5d5d782a6885c25b2e459a03f14e8b816b40345cd2953af034e3): 67613300}}), mint: Value({NativeToken(MintingPolicyHash(ScriptHash(333113c894fe11a52f1141e3e7b9ee9ead73a981547e952f654e4bcd))): {TokenName(31b5a8c6e22bbf81e0e8580d4419d2a8a9c8410594ddf13a3f587200ff3bf99f): 3510970424, TokenName(39508322dcba87e333b88e27561450e92b9ed21f07c85897d0a5ae27a6328037): 2623597566, TokenName(3f27fbddc77e5f31716cea0741ca384aed2e0beb2f0d10d42e841d6555d416b4): 4223901033, TokenName(bf168eda2ad99e4ec1f18925c00f61ee99764c3849e1c828d332cb6e4d8c2866): 745442573, TokenName(d86514ffb5f7395ac2345689684e2a49efeaa199979ccf366e6303ecae38de2d): 2070654651}, NativeToken(MintingPolicyHash(ScriptHash(4855f437d5b8f64369d4f22448101a2a90d400d6465befceb9f7b644))): {TokenName(329a1bf5d5969a43640a8969f8be7ee09cd2be00534eafcaa963995dfd74bd99): 1939130107, TokenName(a9d2be008e98ad835a4cc68913f50a5ae80b370d78510fe7a1ee488d2aab3589): 2400496195, TokenName(aaa74287e48b6fab53ad1581a6ef7ee6ce2f86692e0175071371e7232c9af9fa): 3336964384, TokenName(b13d68dddeae7aa3eae33ab1929804f9181b521283f7d137d61ba56b91ea7adb): 3587800286, TokenName(da96e9444c0fda9a2bfa20da460fb30cab627a8a3cb912d881e44f062a8076ab): 1083941161}, NativeToken(MintingPolicyHash(ScriptHash(ba30dda1dbcb2af4319fa18f3f97ee4a40b881e94d83f735350212a8))): {TokenName(126b2ba20d350849e97d2ad5535debe2ab61f8192117539aa08a0046786d5184): 2037947589, TokenName(2d2f0c2fab2b10b2b2142ceef43259bc0a33634d19070a63843cfa9f725f6987): 3683714516, TokenName(3f17cbd53d6c15154066c664668fc69664f13a8176ee62d77d91b249844310e9): 1356465783, TokenName(7163f2327a83e4a8e60334cc8359fadd1c4496441631fefea0d3748cd47cb095): 153963067, TokenName(8e849037f18f4144bf0dc017fef9b889c5521f5e635e0dbed6afac762996e0b5): 1439049856}, NativeToken(MintingPolicyHash(ScriptHash(d2887e00d8e7aea32a0b0fd2bdf41f71f06cee73806b40ac6a8aea16))): {TokenName(1178f53dbac3ef33fbb8dd891c8e3576d616bce31de995eae9f666d14f87d538): 3700885807, TokenName(2661ee1a540c4da700f528edfbfaf601f132ab14e4380f5b8ccaeb25bffc8677): 3840572024, TokenName(4a490ddd6dcacdecd2daa50b57463ee62203d3514bee6bdc5801f13529bf868d): 2529075641, TokenName(c36f6439b01b042fedd05714e11d3486e6458c62398a148027be8cf7a70a69a1): 1293554079, TokenName(ca8ba4a96cea31e139f9e7e7cef3769280c7750c44ae24974179c58086912d95): 1370877010}, NativeToken(MintingPolicyHash(ScriptHash(de6e84d8a6687b9d0448ab71958dde1d1f3f3eddd3113862c3216d53))): {TokenName(2b27b7e3ffc5f0fa11809739b7dcfa4f0174375506be1ea4c26ed74a12c4f85f): 1503890893, TokenName(2da2fde1bb357aa579dddd8f57d6c399786519ac3de7a0126e01b3018eaf8b91): 199024162, TokenName(3755b21f2864e630e52af59406dff60761821a7f3da2e59140e41aee956031a9): 1152035766, TokenName(85df67e42252466fd8c73c04155ffda08f1aef716440c8a09e26701f80d78363): 1718120637, TokenName(8f07d214cdcc525faad400498aab4495bbcb2543f388e8c9b9efddac617d6d94): 4225038705}}), d_cert: [DelegDelegate(Hash(Script(ValidatorHash(ScriptHash(2026c1e7a5a9312222e66a86b1df6a56c74f0f54c7380649503be4e9)))), PaymentPubKeyHash(Ed25519PubKeyHash(7eda1c44fd39f1ce8aa1c9502b43dbdd0a1f787c42940a7ab77a588c))), DelegRegKey(Pointer(ChainPointer { slot_number: Slot(2851043036), transaction_index: TransactionIndex(2709126557), certificate_index: CertificateIndex(715274452) })), Genesis, Genesis, DelegDeRegKey(Pointer(ChainPointer { slot_number: Slot(761337367), transaction_index: TransactionIndex(3811942017), certificate_index: CertificateIndex(894925047) }))], wdrl: AssocMap([(Hash(PubKey(Ed25519PubKeyHash(de3d5474477888f52dc73c3219a9df08929721720c1ffbf7778b46a4))), 1188800935), (Pointer(ChainPointer { slot_number: Slot(2561259123), transaction_index: TransactionIndex(4083476119), certificate_index: CertificateIndex(1585308347) }), 263857381), (Hash(PubKey(Ed25519PubKeyHash(87cebed31148f5e0c6434f5b29f19ed709538c4b86addd8930b2aed7))), 1856686000), (Hash(PubKey(Ed25519PubKeyHash(68d692439b1d02991261428f3565deb31e19b207de1670aeb001b348))), 1338798631), (Pointer(ChainPointer { slot_number: Slot(132451218), transaction_index: TransactionIndex(221312802), certificate_index: CertificateIndex(3760676452) }), 3400108145), (Pointer(ChainPointer { slot_number: Slot(2964679271), transaction_index: TransactionIndex(1953655207), certificate_index: CertificateIndex(3832592502) }), 217527895), (Hash(Script(ValidatorHash(ScriptHash(5b2bce504e16c9d1b9f1e72fb9da01aa37f7369823e109516c44c1aa)))), 3742334973), (Hash(Script(ValidatorHash(ScriptHash(939d095936089874fed61fbcb4b6ad1bdc13a2ba2c557fdbbf903732)))), 2677634697), (Hash(Script(ValidatorHash(ScriptHash(f1d99bfe32b36ee4ea5d278329b23a99fb119823517f69277c78c88e)))), 2637902573), (Pointer(ChainPointer { slot_number: Slot(3188648279), transaction_index: TransactionIndex(3069628652), certificate_index: CertificateIndex(2280472759) }), 3561615259)]), valid_range: PlutusInterval { from: LowerBound { bound: Finite(POSIXTime(1947697823)), closed: false }, to: UpperBound { bound: PosInf, closed: true } }, signatories: [PaymentPubKeyHash(Ed25519PubKeyHash(84232c9099056f56e6a0a9f0f749f65ea5c64d2eb528daf7e8799df1)), PaymentPubKeyHash(Ed25519PubKeyHash(6e8667593ac31ae80eb81d65f51f07789992ff9ad7aa8b1691f71f30)), PaymentPubKeyHash(Ed25519PubKeyHash(8ed98e3eb6fc1940eea87da038ee40b0f1b692e2f901638c4577e739)), PaymentPubKeyHash(Ed25519PubKeyHash(a93d3a6ce845817e502b34057e09cd1126cc2003a2cef4ce492889da)), PaymentPubKeyHash(Ed25519PubKeyHash(fbd74df32d509d3534b1eb660bd9b2d756207bfb1e97116134c794ff))], redeemers: AssocMap([(Spending(TransactionInput { transaction_id: TransactionHash(3684758d3317af19ab7e0f19f5f060b1b3d85abea6b07b5c39f2b5494895b7df), index: 402668050 }), Redeemer(Integer(2810963777676229418))), (Minting(NativeToken(MintingPolicyHash(ScriptHash(175fd4d257035282bf6cc6aaf5ecad5e14f33cd271603da5a9023c30)))), Redeemer(Bytes([174, 91, 255, 132, 236, 210, 74, 206, 199, 181, 33, 217, 105, 3, 55, 121, 209, 111, 245]))), (Spending(TransactionInput { transaction_id: TransactionHash(45597a6c4ada1ce6df045684b4ee6c1582930205ab9a922e4e31e9ba5396d984), index: 2195186866 }), Redeemer(Bytes([155, 103, 42, 214, 236, 40, 73, 165, 239, 119, 211, 29, 147, 176, 117, 7, 28, 206, 207, 208, 249, 171, 103, 247, 248, 61, 137, 254, 220, 50, 154, 132, 101, 60, 15, 72, 17, 155, 23, 70, 132, 1, 81, 83, 120, 7, 69, 180, 132, 97, 114, 186, 220, 171, 103, 86, 23, 156, 194, 217, 142, 55, 150, 88, 10, 223]))), (Spending(TransactionInput { transaction_id: TransactionHash(f7060289b31d2eee6dd60a50f49781e9f797c0b393dd60daab103b8d3fb3a889), index: 2516227782 }), Redeemer(Constr(2228932073, [Integer(-10040748169353365345), Integer(-16348844488077936941), Bytes([118, 93, 98, 129, 35, 22, 191, 164, 62, 30, 202, 33, 85, 193, 208, 111, 241, 39, 106, 154, 19, 219, 98, 56, 12, 246, 117, 89, 106, 46, 233, 205, 11, 175, 53, 10, 6, 2, 31, 95, 164, 14, 60, 19, 178, 150, 29, 233, 66, 93, 85, 173, 148, 167, 108, 49, 175, 34, 103, 17, 119, 89, 95, 164, 147, 83, 198, 248, 64, 131, 74, 211, 39, 75, 73, 29, 53, 18, 140, 103, 143, 10, 54, 33, 144, 84, 101, 98, 215, 250, 206, 78, 102]), Constr(158106493, [Bytes([242, 195, 61, 243, 253, 83, 48, 120, 89, 168, 176, 167, 27, 231, 203, 105, 129, 159, 133, 196, 149, 178, 212, 61, 147, 8]), Bytes([121, 26, 202, 42, 214, 164, 29, 215, 24, 55, 57, 90, 30, 226, 5, 155, 51, 187, 84, 51, 73, 214, 246, 152, 53, 233, 111, 179, 151, 54, 188, 164, 72, 17, 55, 221, 183]), Bytes([82, 208, 81, 26, 131, 41, 237, 37, 232, 32, 197, 229, 84, 37, 15, 29, 56, 227, 100, 46, 7, 217, 39, 189, 187, 175, 191, 31, 54, 199, 219]), Bytes([5, 147, 3, 242, 139, 200, 16, 190, 224, 198, 251, 71, 91, 209, 123, 30, 12, 148, 231, 171, 144, 241, 128, 20, 133, 6, 48]), Integer(-16674154303761446734)]), Bytes([20, 244, 82, 105, 235, 25, 226, 247, 129, 240, 230, 48, 237, 54, 191, 180, 45])]))), (Certifying(Genesis), Redeemer(Integer(-6322583901471666111))), (Rewarding(Hash(Script(ValidatorHash(ScriptHash(5a2229d81a04f63baf4be9ce6823eec3f236c98e2f96c2a8f41c7adc))))), Redeemer(Constr(2108123717, [Bytes([48, 143, 62, 144, 22, 28, 118, 97, 5, 243, 108, 134, 212, 235, 67, 31, 91, 156, 207, 64, 227, 71, 29, 152, 79, 46, 155, 69, 96, 133, 136, 90, 108, 212, 102, 152, 80, 253, 230, 208, 247, 38, 230, 128, 173, 79, 132, 251, 104]), Integer(-8068460302907919505), Bytes([230, 22, 48, 43, 56, 31, 65, 114, 46, 61, 233, 217, 124, 158, 221, 38, 8, 156, 148, 9, 210, 198, 197, 224, 133, 20, 221, 192, 28]), Bytes([200, 255, 188, 74, 6, 165, 182, 28, 113, 173, 107, 255, 120, 129, 167, 2, 19, 155, 246, 49, 226, 105, 38, 110, 217, 136, 231, 16, 69, 214]), Integer(14568000902052266110)]))), (Spending(TransactionInput { transaction_id: TransactionHash(e3c73cee29ccc3a93f4908faacd2039c80e6e11f4af461609357150e1ccdc9f7), index: 1997757407 }), Redeemer(Map([(Integer(-12617781173585543840), Integer(707927533030626591)), (Bytes([87, 37, 253, 91, 240, 70, 15, 48, 131, 76, 16, 79, 136, 70, 70, 78, 172, 177, 143, 150, 204, 99, 121, 161, 162, 154]), Bytes([152, 43, 219, 158, 55, 149, 84, 234, 246, 9, 94, 13, 170, 138, 189, 57, 16, 37, 238, 118, 106, 30, 143, 67, 67, 4, 248, 251, 68, 243, 156, 97, 67, 111, 96, 51, 90, 0, 159, 255, 37, 228, 89, 6, 253, 99, 190, 181, 96, 128, 180, 20, 248, 23, 21, 179, 52, 154, 126, 179, 194, 77, 90, 64, 73, 138, 210, 232, 215, 183, 4, 18, 181, 213, 58])), (Bytes([79, 154, 247, 87, 37, 204, 80, 46, 89, 234, 172, 52, 5, 191, 52, 130, 85, 170, 76, 22, 242, 207, 207, 30, 142, 90, 100, 15, 55, 165, 53, 205, 251, 71, 175, 222, 244, 80, 34, 62, 132, 223, 123, 198, 192, 68, 196, 141, 190, 198, 87, 229, 189, 51, 141, 171, 12, 53, 91, 198, 37, 25, 246, 92, 152, 89, 128, 43, 234, 45, 128, 68, 207, 46]), Integer(-14322734530933966339)), (Integer(-3861535558087861398), Bytes([111, 41, 2, 76, 196, 41, 156])), (Bytes([85, 81, 119, 35, 33, 228, 212, 131, 254, 255, 32, 126, 133, 24, 188, 74, 128, 66, 21, 125, 180, 215, 36, 14, 79, 226, 249, 63, 75, 180, 149, 208, 146, 42, 243, 2, 144, 135, 62, 126, 127, 197, 227, 169, 79, 219, 149, 139, 213, 60, 122, 208]), Bytes([118, 214, 241, 123, 244, 200, 9, 151, 218, 221, 87, 178, 16, 107, 48, 16, 192, 199, 131, 111, 9, 182, 13, 37, 202, 47, 135, 184, 246, 146, 245, 12, 215, 67, 167, 172, 223, 212, 149, 99, 144, 182, 16, 178, 188, 146, 235, 109, 215, 116, 233, 23, 82, 149]))]))), (Spending(TransactionInput { transaction_id: TransactionHash(62c42e4202f656c5bc421000ca55519453b3baf0cdd7939350b4714a505b6e63), index: 2111527653 }), Redeemer(Integer(16458574750339611711))), (Minting(NativeToken(MintingPolicyHash(ScriptHash(cfc4818d9f1d2b8846520e2483eac0a3c1e73c74626f767efee3eb30)))), Redeemer(Constr(2140196213, [Integer(15708456767238457497), Bytes([122, 118, 45, 12, 134, 125, 206, 188, 13, 26, 125, 183, 190, 94, 85, 69, 90, 224, 199, 233, 45, 227, 21, 185, 2, 145, 49, 184, 113]), Integer(10944798376073413757), Integer(-5781556765119698737), Integer(-5775803905611332833)]))), (Certifying(DelegDelegate(Pointer(ChainPointer { slot_number: Slot(1535946222), transaction_index: TransactionIndex(973501788), certificate_index: CertificateIndex(1721835424) }), PaymentPubKeyHash(Ed25519PubKeyHash(8da7434927217fad2dbc685e7dad4061ec2446602a443024505e085a)))), Redeemer(Integer(-105968194133868962)))]), datums: AssocMap([(DatumHash(3f13f0f11489a611f86854e1798b705dd42e223dcd41cf122b05b747088df20a), Datum(Map([(Bytes([118, 161, 39, 170, 34, 79, 212, 83, 167, 238, 67, 67, 185, 243, 138, 101, 174, 188, 204, 187, 12, 126, 60, 238, 79, 239, 170, 171, 228, 2, 248, 6, 30, 98, 242, 74, 47, 48, 224, 207, 194, 177, 8, 43, 97, 98, 176, 12, 149, 193, 103, 18]), Integer(1977499462978565508)), (Integer(10862498357460938208), Bytes([])), (Bytes([67, 12, 8, 166, 225, 88, 2, 238, 247, 93, 98, 86, 56, 50, 64, 102, 127, 141, 197, 139, 108, 146, 176, 236, 141, 156, 200, 55, 183, 106, 24, 97, 33, 55, 134, 129, 99, 150, 169, 142, 128, 135, 106, 162, 69, 26, 240, 100, 110, 218, 87, 86, 167, 120, 120, 44, 10, 229, 36, 95, 24, 174, 110, 117, 93, 134, 234, 60, 107, 157, 243, 227, 238, 57, 78, 254, 100]), Bytes([118, 181, 227, 178, 88, 220, 250, 9])), (Bytes([49, 106, 11, 48, 139, 75, 97, 236, 204, 210, 22, 64, 193, 204, 10, 142, 78, 223, 187, 250, 174, 115, 174, 255, 237, 96, 134, 215, 167, 181, 181, 46, 208, 35, 18, 220, 218, 202, 234, 200, 40, 69, 114, 132, 251, 216, 101, 15, 243, 21, 175, 13, 14, 225, 55, 191, 74, 187, 218]), Bytes([158, 73, 152, 185, 193, 123, 92, 130, 151, 32, 167, 168, 198, 205, 25, 174, 41, 76, 41, 187, 76, 26, 243, 192, 137, 127, 166, 40, 164, 253, 40, 21, 224, 55, 145, 89, 166, 140, 219, 94, 46, 213, 40, 183, 164, 44, 64, 211, 69, 108, 31, 162, 223, 59, 190, 37, 228, 74, 200, 146, 193, 210, 63, 12, 18, 21, 219, 188, 65, 211, 8, 150, 10, 202, 79, 62, 120, 79, 166, 175, 235, 221, 86, 233, 90, 56, 133])), (Bytes([167, 85, 73, 175, 24, 104, 70, 32, 188, 82, 35, 33, 38, 46, 206, 145, 16, 109, 229, 184, 122, 246, 16, 104, 137, 149, 13, 161, 11, 81, 119, 34, 174, 95, 234, 93, 187, 208, 174, 42, 15, 116, 27, 30, 23, 195, 184, 134, 138, 141, 153, 84, 122, 173, 49, 31, 157, 228, 111, 132, 171, 29, 249, 213, 125, 51, 162, 171]), Bytes([173, 43, 61, 171, 40, 132, 160, 0, 51, 38, 60, 156, 84, 190, 38, 250, 42, 247, 134, 141, 15, 1, 196, 220, 95, 69, 182, 97, 217, 254, 96, 149, 68, 207, 173]))]))), (DatumHash(2d3b3784524ee6b3209de5f067eafbb855ab2fea6d84520bd4c498ad3bb4a9bf), Datum(List([Integer(8367189122487879926), Bytes([85, 73, 133, 238, 111, 220, 15, 18, 34, 163, 152, 66, 155, 1, 153, 190, 23, 83, 30, 150, 251, 76, 114, 20, 47, 119, 18, 159, 134, 192, 115, 230, 52, 234, 155, 13, 215, 6, 248, 17, 51, 29, 215, 86, 35, 160, 223, 109, 125, 211, 26, 104, 87, 162, 115, 72, 13, 229, 161, 209, 221, 69, 127, 153, 191, 239, 254, 213, 190, 148, 126, 34, 248, 117, 0, 79, 198, 252, 69, 21, 103, 203, 238, 38, 166, 112, 197, 236, 29]), Bytes([39, 11, 165, 215, 13, 7, 168, 38, 171, 158, 216, 76, 205, 219, 175, 173, 48, 249, 55, 120, 163, 252, 3, 212, 100, 14, 72, 36, 250, 217, 182, 224, 86, 144, 68, 194, 171, 125, 18, 95, 195, 61, 107, 252, 44, 39, 245, 35, 250, 44, 178, 100, 200, 35, 0, 48, 63, 66, 113, 222, 254, 104, 87, 211, 218, 133, 146, 5, 79, 181, 128, 131, 143, 239, 41, 184, 153, 133, 201, 49, 186]), Integer(-9962985770080429271), Integer(3300264540542865748)]))), (DatumHash(8ce152b89a27ba57337b595010a34f555046c8c6cd7e3afc906bc4c94a518acd), Datum(Constr(936155300, [Bytes([179, 191, 241, 133, 205, 121, 248, 205, 87, 116, 230, 31, 187, 169, 193, 199, 132, 206, 141, 5, 158, 46, 152, 8]), Integer(-8673110579305453718), Integer(-12537810982799057929), Bytes([236, 213, 37, 205, 7, 12, 74, 160, 98, 55, 208, 158, 197, 160, 241, 14, 9, 245, 193, 187, 17, 154, 236, 190, 39, 221, 146, 248, 86, 217, 88, 64, 68, 89, 51, 163, 48, 73, 250]), Bytes([42, 75, 165, 156, 215, 125, 186, 112, 165, 63, 87, 175, 5, 5, 124, 160, 177, 17, 156, 186, 248, 216, 118, 192, 0, 170, 64, 192, 137, 107, 42, 219, 222, 71, 54, 233, 248, 169, 209, 18, 179, 146, 90, 25, 178, 214, 70, 44, 46, 106, 178, 251, 144, 150, 106, 136, 106, 167, 57, 94, 192, 75, 46, 72, 249, 114, 31, 157, 137, 96, 172, 168, 87, 22, 151, 33, 123, 232, 228, 180])]))), (DatumHash(c8f2f2962fa2008d80d74845ce6e1c9fa07c59a72a7855bbc8327038173d7a14), Datum(Integer(-11014695058603834993))), (DatumHash(feacbf167e7362c034b6094309acfc199eef89c762627afbc3e26c17077498a3), Datum(List([Bytes([114, 25, 55, 213, 115, 15, 223, 38, 109, 128, 137, 138, 28, 217, 153, 135, 174, 69, 209, 57, 123, 255, 187, 27, 170, 28, 30, 141, 116, 75, 200, 255, 29, 219, 73, 40, 84, 123, 56, 231, 12, 208, 17, 101, 51]), Bytes([227, 109, 163, 146, 239, 116, 37, 217, 246, 179, 7, 40, 159, 217, 8, 3, 179, 245, 239, 159, 171, 125, 172, 127, 182, 68, 122, 122, 139, 99, 139, 228, 221, 182, 166, 177, 122, 1, 124, 113, 195, 83, 148]), Bytes([131, 145, 78, 12, 160, 95, 28, 195, 41, 9, 33, 59, 95, 198, 214, 159, 126, 28, 49, 170, 237, 148, 108, 179]), Bytes([45, 124, 127, 231, 243, 103, 86, 59, 47, 155, 129, 97, 177, 66, 26, 11, 184, 40, 133, 137, 192, 84, 185, 181, 211, 85, 130, 6, 77, 126, 112, 73, 89, 51, 29, 13, 120, 196, 78, 3, 194, 122, 8, 196, 136, 165, 175, 203, 155, 142, 255, 31, 25, 227, 119, 233, 226, 126, 140, 150, 236, 212, 12, 232]), Bytes([236, 105, 73, 166, 64, 27, 13, 211, 82, 60, 159, 146, 183, 63, 198, 4, 87, 147, 135, 68, 72, 75, 39, 114, 56, 116, 41, 102, 79, 4, 176, 86, 100, 27, 188, 166, 198, 137, 145])]))), (DatumHash(fcd1cd0c9180a200774e56effadbc3f4ede5fd45dfacf13beae30604ceba4d02), Datum(Map([(Bytes([102, 71, 154, 227, 34, 164, 72, 15, 62, 209, 6, 126, 235, 53, 244, 194, 37, 198, 130, 182, 186, 180, 77, 97, 253, 124, 97, 31, 201, 11, 220, 27, 11, 145, 104, 76, 209, 12, 226, 243, 14, 113, 158, 184, 67]), Bytes([156, 198, 199, 223, 210, 171, 2, 198, 253, 32, 1, 207, 227, 120, 89, 171, 250, 233, 34, 36, 165, 30, 52, 49, 138, 121, 141, 24, 247, 28, 46, 216, 184, 111, 63, 0, 64, 118, 225, 208, 201, 50, 34, 89, 44, 28, 231, 72, 6, 94, 227, 27, 203, 204, 174, 235, 20, 94, 72, 239, 131])), (Integer(-2969090282184661921), Bytes([125, 19, 184, 92, 117, 251, 235, 8, 107, 208, 51, 169, 11, 253, 58, 113, 223, 233, 67, 94, 71, 44, 89, 97])), (Integer(17796746725610530894), Integer(8075163424182805764)), (Bytes([244, 107, 201, 18, 134, 48, 213, 105, 51, 128, 1, 151, 228, 127, 29, 157, 162, 18, 173, 238, 173, 14, 85, 187, 135, 114, 105, 183, 193, 255, 16, 187, 138, 102, 89, 61, 26, 18, 207, 51, 253, 62, 228, 194]), Integer(-14377981926416437422)), (Map([(Bytes([211, 1, 54, 201, 102, 224, 170, 36, 164, 75, 27, 57, 100, 213, 241, 22, 92, 100, 154, 82, 235, 155, 134, 145, 123, 16, 203, 188, 83, 54, 207, 143, 223, 239, 176, 88, 192, 255, 39, 71, 220, 70, 97, 233, 155, 157, 231, 205, 135, 124, 169, 240, 196, 106, 1, 158, 139, 164, 241, 199, 232]), Bytes([97, 117, 12, 196, 123, 121, 85, 214, 54, 1, 0, 226, 26, 217, 1, 111, 149, 2, 54, 65, 205, 48, 254, 235, 250, 195, 18, 127, 224, 102, 88, 162, 103, 248, 130, 233, 9, 239, 166, 90, 42, 82, 13, 220, 111, 61, 140, 118, 242, 118, 235, 113, 159, 60, 116, 140, 136, 40, 61, 250, 217, 9, 89, 136, 191, 17])), (Bytes([85, 213, 155, 19, 60, 53, 46, 3, 226, 168, 46, 67, 46, 129, 230, 122, 209, 62, 9, 124, 98, 175, 31, 63, 167, 107, 39, 103, 167, 216, 54, 247, 244, 26, 25, 89, 13, 22, 207, 97, 234, 33, 25, 59, 74, 206, 115, 30, 66, 219, 189, 121, 73]), Integer(-16621810592565322148)), (Bytes([33, 111, 35, 64, 60, 84, 220, 71, 149, 201, 14, 243, 229, 138, 62, 126, 130, 117, 206, 111, 7, 231, 44, 115, 31, 94, 14, 128, 231, 248, 187, 117, 176, 73, 181, 201, 139, 82, 36, 234, 45, 233, 175, 232, 44, 71, 251, 204, 186, 193, 240, 76, 124, 138, 53, 146, 228, 222, 145, 160, 61, 215, 1]), Integer(-5616026625525347953)), (Integer(-15368326499810788275), Integer(-5411407110371635891)), (Bytes([121, 199, 241, 3, 239, 178, 8, 176, 18, 209, 250, 183, 82, 144, 190, 49, 227, 7, 247, 31, 20, 187, 222, 178, 232, 92, 199, 105, 89, 82, 71, 231, 10, 191, 193, 5, 124, 147, 117, 7, 194, 186, 164, 160, 84, 157, 33, 34, 126, 183, 81, 82, 109]), Integer(5342965962032016216))]), Bytes([13, 23, 139, 158, 175, 64, 255, 73, 159, 124, 122]))]))), (DatumHash(5c5d715d9e3551a9021f822ffd68fc7187a56a796700ec476c7c334e68e65663), Datum(Constr(663131710, [Bytes([214, 101, 129, 57, 237, 61, 223, 147, 236, 225, 27, 252, 144, 165, 96, 38, 69, 64, 226, 43, 226, 234, 102, 200, 44, 93, 233, 91, 151, 226, 72, 127, 164, 161, 28, 251, 104, 202]), Bytes([186, 16, 175, 75, 233, 80, 124, 167, 75, 26, 94, 158, 34, 18, 139, 0, 205, 180, 123, 173, 78, 240, 2, 2, 53, 138, 78, 29, 233, 191, 78, 180, 122]), Integer(12098763251034896583), Bytes([242, 108, 143, 197, 95, 204, 253, 41, 30, 104, 70, 45, 148, 146, 47]), Integer(-18208626424618199086)]))), (DatumHash(0810a61c23167fc11763c0f2cc1c19eb692de08057660dda497ae1324884b03c), Datum(Bytes([187, 176, 217, 74, 224, 238, 227, 18, 12, 163, 119, 220, 90, 66, 86, 87, 111, 21, 188, 160, 247, 201, 51, 130, 216, 45, 71, 40, 12, 85, 23, 82, 226, 157, 103, 187, 254, 242, 214, 83, 76, 121, 67, 246, 65, 215, 160, 242, 165, 225, 232, 246, 86, 26, 185, 194, 21, 95, 125, 84, 155, 11, 137, 232, 51, 115, 207, 22, 217, 121, 240, 91, 0, 100]))), (DatumHash(1077d50c8c9d00b88dab41f27c086fe33cfac17a2659955a2483ea6b037cdc41), Datum(Integer(-11442988182361136122))), (DatumHash(e6d3df05dceb3d55d52dff3d32771cbc5fc3576bac7a9d29f7e7306652d26232), Datum(List([Integer(4619328115424865498), Bytes([114, 27, 219, 211, 103, 182, 175, 216, 124, 11, 156, 134, 35, 249, 243, 233, 125, 92, 89, 196, 75, 209, 196, 168, 123, 219, 153, 135, 11, 90, 205, 73, 182, 249, 220, 75, 105, 72, 146, 98, 38, 46, 231, 8, 52, 128, 129, 209, 250, 80, 7, 255, 251, 99, 216, 75, 2, 75, 156]), Bytes([147, 62, 177, 149, 214, 198, 177, 195, 142, 52, 235, 147, 142, 79, 135, 241, 190, 38, 39, 254, 34, 194, 190, 224, 167, 203, 110, 168, 79, 162, 170, 53, 173, 238, 248, 222, 95, 206, 216, 39, 211, 236, 169]), Bytes([50, 44, 234, 175, 76, 236, 214, 179, 84, 61, 123, 107, 55, 225, 37, 14, 145, 87, 60, 187, 9, 119, 184, 126, 49, 160, 76, 160, 62, 141, 86, 51, 254, 104, 97, 8, 179, 169, 129, 145, 165, 24, 1, 73, 167, 204, 34, 30, 183, 178, 139, 232, 177, 63, 22, 13, 40, 249]), Integer(6130350804586057685)])))]), id: TransactionHash(d6d5074a70133bbb4552745bf3b5acd65b3e47656322b7fefb29ef8627607b47) }, purpose: Minting(Ada) } diff --git a/plutus-ledger-api/tests/serde.rs b/plutus-ledger-api/tests/serde.rs index 8ddf8e32..cc583b94 100644 --- a/plutus-ledger-api/tests/serde.rs +++ b/plutus-ledger-api/tests/serde.rs @@ -158,4 +158,107 @@ mod serde_roundtrip_tests { } } } + mod v3 { + use super::from_to_json; + use plutus_ledger_api::generators::correct::v3::*; + use proptest::prelude::*; + + proptest! { + #[test] + fn test_cold_committee_credential(val in arb_cold_committee_credential()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_hot_committee_credential(val in arb_hot_committee_credential()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_d_rep_credential(val in arb_d_rep_credential()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_delegatee(val in arb_delegatee()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_tx_cert(val in arb_tx_cert()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_voter(val in arb_voter()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_vote(val in arb_vote()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_governance_action_id(val in arb_governance_action_id()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_committee(val in arb_committee()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_rational(val in arb_rational()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_constitution(val in arb_constitution()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_protocol_version(val in arb_protocol_version()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_change_parameters(val in arb_change_parameters()) { + assert_eq!(val, from_to_json(&val)?) + } + + + #[test] + fn test_governance_action(val in arb_governance_action()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_protocol_procedure(val in arb_protocol_procedure()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_script_purpose(val in arb_script_purpose()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_script_info(val in arb_script_info()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_transaction_info(val in arb_transaction_info()) { + assert_eq!(val, from_to_json(&val)?) + } + + #[test] + fn test_script_context(val in arb_script_context()) { + assert_eq!(val, from_to_json(&val)?) + } + } + } } From 6864a9a5fe93b6a097e83c1058efdb484635b85c Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Fri, 18 Oct 2024 23:53:46 +0800 Subject: [PATCH 27/94] explicitly mark derive strategies --- plutus-ledger-api/src/v3/transaction.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index cb54fb4c..649ce008 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -41,6 +41,7 @@ pub struct HotCommitteeCredential(pub Credential); pub struct DRepCredential(pub Credential); #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum DRep { @@ -50,6 +51,7 @@ pub enum DRep { } #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum Delegatee { @@ -59,6 +61,7 @@ pub enum Delegatee { } #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum TxCert { @@ -76,6 +79,7 @@ pub enum TxCert { } #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum Voter { @@ -85,6 +89,7 @@ pub enum Voter { } #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum Vote { @@ -94,6 +99,7 @@ pub enum Vote { } #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct GovernanceActionId { @@ -102,6 +108,7 @@ pub struct GovernanceActionId { } #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct Committee { @@ -110,6 +117,7 @@ pub struct Committee { } #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct Constitution { @@ -117,6 +125,7 @@ pub struct Constitution { } #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct ProtocolVersion { @@ -132,6 +141,7 @@ pub struct ProtocolVersion { pub struct ChangeParameters(pub PlutusData); #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum GovernanceAction { @@ -153,6 +163,7 @@ pub enum GovernanceAction { } #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct ProtocolProcedure { @@ -162,6 +173,7 @@ pub struct ProtocolProcedure { } #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum ScriptPurpose { @@ -174,6 +186,7 @@ pub enum ScriptPurpose { } #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum ScriptInfo { @@ -186,6 +199,7 @@ pub enum ScriptInfo { } #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct TransactionInfo { @@ -208,6 +222,7 @@ pub struct TransactionInfo { } #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct ScriptContext { From e7279879d6a2462856e0d103138475278259224c Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 21 Oct 2024 18:52:49 +0800 Subject: [PATCH 28/94] remove true from dependencies --- plutus-ledger-api/Cargo.lock | 7 ------- plutus-ledger-api/Cargo.toml | 1 - 2 files changed, 8 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 79fed433..007ded40 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -627,7 +627,6 @@ dependencies = [ "serde", "serde_json", "thiserror", - "true", ] [[package]] @@ -1007,12 +1006,6 @@ dependencies = [ "winnow", ] -[[package]] -name = "true" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "548ec159e98411c04bee9b458df4ccd2da2a0a5e50c08cbd7e90b00b154c5a9a" - [[package]] name = "trybuild" version = "1.0.99" diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 1ece4816..0ff63de0 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -14,7 +14,6 @@ lbr-prelude = { version = "0.1.1", optional = true } serde_json = { version = "1.0.128", optional = true } num-bigint = "~0.4" serde = { version = "^1.0.189", features = ["derive"], optional = true } -true = { version = "~0.1.0", optional = true } data-encoding = "^2.4.0" thiserror = "^1.0.50" linked-hash-map = "~0.5.6" From 2d51d1cf143916e73c25c911b2749f5f266664e8 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 21 Oct 2024 19:25:22 +0800 Subject: [PATCH 29/94] doc strings --- .../src/generators/correct/v3.rs | 5 +- plutus-ledger-api/src/v3/ratio.rs | 7 ++- plutus-ledger-api/src/v3/transaction.rs | 51 +++++++++++++++++-- 3 files changed, 56 insertions(+), 7 deletions(-) diff --git a/plutus-ledger-api/src/generators/correct/v3.rs b/plutus-ledger-api/src/generators/correct/v3.rs index 518da68e..e77cab20 100644 --- a/plutus-ledger-api/src/generators/correct/v3.rs +++ b/plutus-ledger-api/src/generators/correct/v3.rs @@ -153,9 +153,10 @@ pub fn arb_governance_action() -> impl Strategy { ( option::of(arb_governance_action_id()), vec(arb_cold_committee_credential(), 5), - arb_assoc_map(arb_cold_committee_credential(), arb_integer()) + arb_assoc_map(arb_cold_committee_credential(), arb_integer()), + arb_rational() ) - .prop_map(|(g, c, cm)| GovernanceAction::UpdateCommittee(g, c, cm)), + .prop_map(|(g, c, cm, q)| GovernanceAction::UpdateCommittee(g, c, cm, q)), (option::of(arb_governance_action_id()), arb_constitution()) .prop_map(|(g, c)| GovernanceAction::NewConstitution(g, c)), Just(GovernanceAction::InfoAction) diff --git a/plutus-ledger-api/src/v3/ratio.rs b/plutus-ledger-api/src/v3/ratio.rs index 1433d525..55c46707 100644 --- a/plutus-ledger-api/src/v3/ratio.rs +++ b/plutus-ledger-api/src/v3/ratio.rs @@ -11,7 +11,12 @@ use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] -pub struct Rational(pub BigInt, pub BigInt); +pub struct Rational( + /// numerator + pub BigInt, + /// denominator + pub BigInt, +); impl IsPlutusData for Rational { fn to_plutus_data(&self) -> PlutusData { diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index 649ce008..9772d5bf 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -65,15 +65,30 @@ pub enum Delegatee { #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum TxCert { + /// Register staking credential with an optional deposit amount RegStaking(StakingCredential, Option), + /// Un-Register staking credential with an optional refund amount UnRegStaking(StakingCredential, Option), + /// Delegate staking credential to a Delegatee DelegStaking(StakingCredential, Delegatee), + /// Register and delegate staking credential to a Delegatee in one certificate. Note that deposit is mandatory. RegDeleg(StakingCredential, Delegatee, Lovelace), + /// Register a DRep with a deposit value. The optional anchor is omitted. RegDRep(DRepCredential, Lovelace), + /// Update a DRep. The optional anchor is omitted. UpdateDRep(DRepCredential), + /// UnRegister a DRep with mandatory refund value UnRegDRep(DRepCredential, Lovelace), - PoolRegister(PaymentPubKeyHash, PaymentPubKeyHash), + /// A digest of the PoolParams + PoolRegister( + /// pool id + PaymentPubKeyHash, + // pool vrf + PaymentPubKeyHash, + ), + /// The retirement certificate and the Epoch in which the retirement will take place PoolRetire(PaymentPubKeyHash, BigInt), + /// Authorize a Hot credential for a specific Committee member's cold credential AuthHotCommittee(ColdCommitteeCredential, HotCommitteeCredential), ResignColdCommittee(ColdCommitteeCredential), } @@ -98,6 +113,7 @@ pub enum Vote { Abstain, } +/// Similar to TransactionInput, but for GovernanceAction. #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -112,7 +128,9 @@ pub struct GovernanceActionId { #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct Committee { + /// Committee members with epoch number when each of them expires pub members: AssocMap, + /// Quorum of the committee that is necessary for a successful vote pub quorum: Rational, } @@ -121,6 +139,7 @@ pub struct Committee { #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct Constitution { + /// Optional guardrail script pub constitution_script: Option, } @@ -134,6 +153,7 @@ pub struct ProtocolVersion { } // TODO(chfanghr): check invariant according to https://github.com/IntersectMBO/plutus/blob/bb33f082d26f8b6576d3f0d423be53eddfb6abd8/plutus-ledger-api/src/PlutusLedgerApi/V3/Contexts.hs#L338-L364 +/// A Plutus Data object containing proposed parameter changes. #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -145,19 +165,34 @@ pub struct ChangeParameters(pub PlutusData); #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub enum GovernanceAction { + /// Propose to change the protocol parameters ParameterChange( Option, ChangeParameters, + // The hash of the constitution script Option, ), + /// Propose to update protocol version HardForkInitiation(Option, ProtocolVersion), - TreasuryWithdrawals(AssocMap, Option), + /// Propose to withdraw from the cardano treasury + TreasuryWithdrawals( + AssocMap, + // The hash of the constitution script + Option, + ), + /// Propose to create a state of no-confidence in the current constitutional committee NoConfidence(Option), + /// Propose to update the members of the constitutional committee and/or its signature threshold and/or terms UpdateCommittee( Option, + /// Committee members to be removed Vec, + /// Committee members to be added AssocMap, + /// New quorum + Rational, ), + /// Propose to modify the constitution or its guardrail script NewConstitution(Option, Constitution), InfoAction, } @@ -180,9 +215,17 @@ pub enum ScriptPurpose { Minting(CurrencySymbol), Spending(TransactionInput), Rewarding(Credential), - Certifying(BigInt, TxCert), + Certifying( + /// 0-based index of the given `TxCert` in `the `tx_certs` field of the `TransactionInfo` + BigInt, + TxCert, + ), Voting(Voter), - Proposing(BigInt, ProtocolProcedure), + Proposing( + /// 0-based index of the given `ProposalProcedure` in `protocol_procedures` field of the `TransactionInfo` + BigInt, + ProtocolProcedure, + ), } #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] From e96c707a6619a38fea8d7dab7c16cce410434906 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 21 Oct 2024 19:46:30 +0800 Subject: [PATCH 30/94] more doc strings --- .../src/generators/correct/v3.rs | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/plutus-ledger-api/src/generators/correct/v3.rs b/plutus-ledger-api/src/generators/correct/v3.rs index e77cab20..afeea407 100644 --- a/plutus-ledger-api/src/generators/correct/v3.rs +++ b/plutus-ledger-api/src/generators/correct/v3.rs @@ -34,18 +34,22 @@ use super::{ v2::{arb_transaction_output, arb_tx_in_info}, }; +/// Strategy to generate cold committee credentials pub fn arb_cold_committee_credential() -> impl Strategy { arb_credential().prop_map(ColdCommitteeCredential) } +/// Strategy to generate hot committee credentials pub fn arb_hot_committee_credential() -> impl Strategy { arb_credential().prop_map(HotCommitteeCredential) } +/// Strategy to generate DRep credentials pub fn arb_d_rep_credential() -> impl Strategy { arb_credential().prop_map(DRepCredential) } +/// Strategy to generate DReps pub fn arb_d_rep() -> impl Strategy { prop_oneof![ arb_d_rep_credential().prop_map(DRep::DRep), @@ -54,6 +58,7 @@ pub fn arb_d_rep() -> impl Strategy { ] } +/// Strategy to generate delegatees pub fn arb_delegatee() -> impl Strategy { prop_oneof![ arb_stake_pub_key_hash().prop_map(Delegatee::Stake), @@ -62,6 +67,7 @@ pub fn arb_delegatee() -> impl Strategy { ] } +/// Strategy to generate tx certs pub fn arb_tx_cert() -> impl Strategy { prop_oneof![ (arb_staking_credential(), option::of(arb_lovelace())) @@ -86,6 +92,7 @@ pub fn arb_tx_cert() -> impl Strategy { ] } +/// Strategy to generate voters pub fn arb_voter() -> impl Strategy { prop_oneof![ arb_hot_committee_credential().prop_map(Voter::CommitteeVoter), @@ -94,10 +101,12 @@ pub fn arb_voter() -> impl Strategy { ] } +/// Strategy to generate votes pub fn arb_vote() -> impl Strategy { prop_oneof![Just(Vote::VoteNo), Just(Vote::VoteYes), Just(Vote::Abstain)] } +/// Strategy to generate governance action ids pub fn arb_governance_action_id() -> impl Strategy { (arb_transaction_hash(), arb_integer()).prop_map(|(tx_id, gov_action_id)| GovernanceActionId { tx_id, @@ -105,6 +114,7 @@ pub fn arb_governance_action_id() -> impl Strategy { }) } +/// Strategy to generate committees pub fn arb_committee() -> impl Strategy { ( arb_assoc_map(arb_cold_committee_credential(), arb_integer()), @@ -113,24 +123,29 @@ pub fn arb_committee() -> impl Strategy { .prop_map(|(members, quorum)| Committee { members, quorum }) } +/// Strategy to generate rationals pub fn arb_rational() -> impl Strategy { (arb_integer(), arb_integer()).prop_map(|(n, d)| Rational(n, d)) } +/// Strategy to generate constitutions pub fn arb_constitution() -> impl Strategy { option::of(arb_script_hash()).prop_map(|constitution_script| Constitution { constitution_script, }) } +/// Strategy to generate protocol versions pub fn arb_protocol_version() -> impl Strategy { - (arb_integer(), arb_integer()).prop_map(|(major, minor)| ProtocolVersion { major, minor }) + (arb_natural(1), arb_natural(1)).prop_map(|(major, minor)| ProtocolVersion { major, minor }) } +/// Strategy to generate change parameters pub fn arb_change_parameters() -> impl Strategy { arb_plutus_data().prop_map(ChangeParameters) } +/// Strategy to generate governance actions pub fn arb_governance_action() -> impl Strategy { prop_oneof![ ( @@ -163,6 +178,7 @@ pub fn arb_governance_action() -> impl Strategy { ] } +/// Strategy to generate protocol procedures pub fn arb_protocol_procedure() -> impl Strategy { (arb_lovelace(), arb_credential(), arb_governance_action()).prop_map(|(l, c, g)| { ProtocolProcedure { @@ -173,6 +189,7 @@ pub fn arb_protocol_procedure() -> impl Strategy { }) } +/// Strategy to generate script purposes pub fn arb_script_purpose() -> impl Strategy { prop_oneof![ arb_currency_symbol().prop_map(ScriptPurpose::Minting), @@ -184,6 +201,7 @@ pub fn arb_script_purpose() -> impl Strategy { ] } +/// Strategy to generate script info pub fn arb_script_info() -> impl Strategy { prop_oneof![ arb_currency_symbol().prop_map(ScriptInfo::Minting), @@ -196,6 +214,7 @@ pub fn arb_script_info() -> impl Strategy { ] } +/// Strategy to generate transaction info pub fn arb_transaction_info() -> impl Strategy { ( vec(arb_tx_in_info(), 5), @@ -258,6 +277,7 @@ pub fn arb_transaction_info() -> impl Strategy { ) } +/// Strategy to generate script contexts pub fn arb_script_context() -> impl Strategy { (arb_transaction_info(), arb_redeemer(), arb_script_info()).prop_map( |(tx_info, redeemer, script_info)| ScriptContext { From cf119bae80e02641beb5d23e59fbb5027bd1adef Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 21 Oct 2024 19:47:50 +0800 Subject: [PATCH 31/94] even more doc strings --- plutus-ledger-api/src/generators/correct/v3.rs | 4 ++++ plutus-ledger-api/src/v3/ratio.rs | 2 ++ plutus-ledger-api/src/v3/transaction.rs | 2 ++ 3 files changed, 8 insertions(+) diff --git a/plutus-ledger-api/src/generators/correct/v3.rs b/plutus-ledger-api/src/generators/correct/v3.rs index afeea407..6e7f5bc3 100644 --- a/plutus-ledger-api/src/generators/correct/v3.rs +++ b/plutus-ledger-api/src/generators/correct/v3.rs @@ -1,3 +1,7 @@ +//! Proptest strategies for Plutus V3 types +//! +//! These strategies always return valid values. + use proptest::{ collection::vec, option, diff --git a/plutus-ledger-api/src/v3/ratio.rs b/plutus-ledger-api/src/v3/ratio.rs index 55c46707..c1347195 100644 --- a/plutus-ledger-api/src/v3/ratio.rs +++ b/plutus-ledger-api/src/v3/ratio.rs @@ -1,3 +1,5 @@ +//! Types related to rational values + #[cfg(feature = "lbf")] use lbr_prelude::json::Json; use num_bigint::BigInt; diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index 9772d5bf..68cf9987 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -1,3 +1,5 @@ +//! Types related to Cardano transactions. + #[cfg(feature = "lbf")] use lbr_prelude::json::Json; use num_bigint::BigInt; From 413e2e7515a1d6e1a4fc04d19a676cbca1c34bc2 Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Mon, 21 Oct 2024 20:47:54 +0800 Subject: [PATCH 32/94] update changelog --- plutus-ledger-api/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index 325603be..13567920 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -8,6 +8,7 @@ Changelog](https://keepachangelog.com/en/1.1.0). ### Added +- Added v3 plutus ledger types ([#57](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/57)) - Added the ability to derive `IsPlutusData` instances ([#56](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/56)) ### Changed From 0f7507c236157e598a6ac2b67e88981084840c1d Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Tue, 5 Nov 2024 09:43:07 +0100 Subject: [PATCH 33/94] Reexport v2 types in v3 module --- plutus-ledger-api/src/v3/mod.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/plutus-ledger-api/src/v3/mod.rs b/plutus-ledger-api/src/v3/mod.rs index 8c73a0ca..6350950a 100644 --- a/plutus-ledger-api/src/v3/mod.rs +++ b/plutus-ledger-api/src/v3/mod.rs @@ -1,2 +1,15 @@ +//! Plutus types and utilities for Plutus V3 +//! +//! Types and utilities unchanged in the new version are re-exported from the v2 module. pub mod ratio; pub mod transaction; + +// Inherited from v2 +pub use crate::v2::address; +pub use crate::v2::assoc_map; +pub use crate::v2::crypto; +pub use crate::v2::datum; +pub use crate::v2::interval; +pub use crate::v2::redeemer; +pub use crate::v2::script; +pub use crate::v2::value; From 71cf0961d529d28a8b78672224d6a4c260e2a9f4 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Tue, 5 Nov 2024 10:30:16 +0100 Subject: [PATCH 34/94] Implement golden tests for Display implementations --- plutus-ledger-api/src/goldens/v1.rs | 2 +- plutus-ledger-api/src/v1/value.rs | 53 +++++++----- plutus-ledger-api/tests/display.rs | 84 +++++++++++++++++++ .../tests/testdata/v1_address_display.golden | 1 + .../testdata/v1_address_display_1.golden | 1 + .../testdata/v1_address_display_2.golden | 1 + .../testdata/v1_asset_class_display.golden | 1 + .../v1_currency_symbol_display_1.golden | 1 + .../v1_currency_symbol_display_2.golden | 0 .../v1_currency_symbol_display_3.golden | 1 + .../testdata/v1_token_name_display_1.golden | 1 + .../testdata/v1_token_name_display_2.golden | 1 + .../testdata/v1_token_name_display_3.golden | 1 + .../testdata/v1_token_name_display_4.golden | 1 + .../v1_transaction_input_display.golden | 1 + .../tests/testdata/v1_value_display_1.golden | 1 + .../tests/testdata/v1_value_display_2.golden | 1 + 17 files changed, 131 insertions(+), 21 deletions(-) create mode 100644 plutus-ledger-api/tests/display.rs create mode 100644 plutus-ledger-api/tests/testdata/v1_address_display.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_address_display_1.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_address_display_2.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_asset_class_display.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_currency_symbol_display_1.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_currency_symbol_display_2.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_currency_symbol_display_3.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_token_name_display_1.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_token_name_display_2.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_token_name_display_3.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_token_name_display_4.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_transaction_input_display.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_value_display_1.golden create mode 100644 plutus-ledger-api/tests/testdata/v1_value_display_2.golden diff --git a/plutus-ledger-api/src/goldens/v1.rs b/plutus-ledger-api/src/goldens/v1.rs index 09b24b00..843b25bc 100644 --- a/plutus-ledger-api/src/goldens/v1.rs +++ b/plutus-ledger-api/src/goldens/v1.rs @@ -39,7 +39,7 @@ pub fn sample_value() -> Value { &sample_currency_symbol(), &sample_token_name(), &BigInt::from(123), - ) + ) + Value::ada_value(&BigInt::from(234)) } pub fn sample_plutus_interval() -> PlutusInterval { diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index 045d49d9..f445a3d3 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -41,20 +41,16 @@ pub enum CurrencySymbol { impl fmt::Display for CurrencySymbol { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - let asset_class_str = match self { + match self { CurrencySymbol::Ada => { if f.alternate() { - "lovelace".to_string() + write!(f, "lovelace") } else { - "".to_string() + write!(f, "") } } - CurrencySymbol::NativeToken(symbol) => { - format!("{}", symbol.0 .0) - } - }; - - write!(f, "{}", asset_class_str) + CurrencySymbol::NativeToken(symbol) => write!(f, "{}", symbol.0 .0), + } } } @@ -293,26 +289,43 @@ impl Value { .collect(), ) } + + /// Create a vector with each distinct value + pub fn flatten(&self) -> Vec<(&CurrencySymbol, &TokenName, &BigInt)> { + self.0 + .iter() + .flat_map(|(currency_symbol, assets)| { + assets + .iter() + .map(move |(token_name, amount)| (currency_symbol, token_name, amount)) + }) + .collect() + } } impl fmt::Display for Value { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - let value_str = self + let mut it = self .0 .iter() .flat_map(|(currency_symbol, assets)| { - assets.iter().map(move |(token_name, amount)| { - if token_name.is_empty() { - format!("{} {}", currency_symbol, amount) - } else { - format!("{}.{} {}", currency_symbol, token_name, amount) - } - }) + assets + .iter() + .map(move |(token_name, amount)| (currency_symbol, token_name, amount)) }) - .collect::>() - .join("+"); + .peekable(); + while let Some((cur_sym, tn, amount)) = it.next() { + if tn.is_empty() { + write!(f, "{} {}", cur_sym, amount)?; + } else { + write!(f, "{}.{} {}", cur_sym, tn, amount)?; + } + if it.peek().is_some() { + write!(f, "+")?; + } + } - write!(f, "{}", value_str) + Ok(()) } } diff --git a/plutus-ledger-api/tests/display.rs b/plutus-ledger-api/tests/display.rs new file mode 100644 index 00000000..a746a62d --- /dev/null +++ b/plutus-ledger-api/tests/display.rs @@ -0,0 +1,84 @@ +#[cfg(test)] +mod display_serialisation_tests { + mod golden_v1 { + use plutus_ledger_api::{ + goldens::v1::{ + sample_address, sample_asset_class, sample_currency_symbol, + sample_transaction_input, sample_value, + }, + v1::value::CurrencySymbol, + v3::value::TokenName, + }; + + #[test] + fn v1_currency_symbol_display_1() { + goldie::assert!(format!("{}", sample_currency_symbol())) + } + + #[test] + fn v1_currency_symbol_display_2() { + goldie::assert!(format!("{}", CurrencySymbol::Ada)) + } + + #[test] + fn v1_currency_symbol_display_3() { + goldie::assert!(format!("{:#}", CurrencySymbol::Ada)) + } + + #[test] + fn v1_token_name_display_1() { + goldie::assert!(format!( + "{}", + TokenName::from_bytes(vec![255, 244, 233, 222]) + )) + } + + #[test] + fn v1_token_name_display_2() { + goldie::assert!(format!("{}", TokenName::from_string("TestToken"))) + } + + #[test] + fn v1_token_name_display_3() { + goldie::assert!(format!( + "{:#}", + TokenName::from_bytes(vec![255, 244, 233, 222]) + )) + } + + #[test] + fn v1_token_name_display_4() { + goldie::assert!(format!("{:#}", TokenName::from_string("TestToken"))) + } + + #[test] + fn v1_asset_class_display() { + goldie::assert!(format!("{}", sample_asset_class())) + } + + #[test] + fn v1_value_display_1() { + goldie::assert!(format!("{}", sample_value())) + } + + #[test] + fn v1_value_display_2() { + goldie::assert!(format!("{:#}", sample_value())) + } + + #[test] + fn v1_address_display_1() { + goldie::assert!(format!("{}", sample_address().with_extra_info(0))) + } + + #[test] + fn v1_address_display_2() { + goldie::assert!(format!("{}", sample_address().with_extra_info(1))) + } + + #[test] + fn v1_transaction_input_display() { + goldie::assert!(format!("{}", sample_transaction_input())) + } + } +} diff --git a/plutus-ledger-api/tests/testdata/v1_address_display.golden b/plutus-ledger-api/tests/testdata/v1_address_display.golden new file mode 100644 index 00000000..f8310f03 --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_address_display.golden @@ -0,0 +1 @@ +addr_test1yqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqsjen49f \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_address_display_1.golden b/plutus-ledger-api/tests/testdata/v1_address_display_1.golden new file mode 100644 index 00000000..f8310f03 --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_address_display_1.golden @@ -0,0 +1 @@ +addr_test1yqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqsjen49f \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_address_display_2.golden b/plutus-ledger-api/tests/testdata/v1_address_display_2.golden new file mode 100644 index 00000000..fe6e8e16 --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_address_display_2.golden @@ -0,0 +1 @@ +addr1yyqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqs30w4fk \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_asset_class_display.golden b/plutus-ledger-api/tests/testdata/v1_asset_class_display.golden new file mode 100644 index 00000000..3460266c --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_asset_class_display.golden @@ -0,0 +1 @@ +00000000000000000000000000000000000000000000000000000000.536f6d657468696e67 \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_1.golden b/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_1.golden new file mode 100644 index 00000000..f1423cec --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_1.golden @@ -0,0 +1 @@ +00000000000000000000000000000000000000000000000000000000 \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_2.golden b/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_2.golden new file mode 100644 index 00000000..e69de29b diff --git a/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_3.golden b/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_3.golden new file mode 100644 index 00000000..cf33dc1a --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_3.golden @@ -0,0 +1 @@ +lovelace \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_token_name_display_1.golden b/plutus-ledger-api/tests/testdata/v1_token_name_display_1.golden new file mode 100644 index 00000000..488c931d --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_token_name_display_1.golden @@ -0,0 +1 @@ +fff4e9de \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_token_name_display_2.golden b/plutus-ledger-api/tests/testdata/v1_token_name_display_2.golden new file mode 100644 index 00000000..820efda1 --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_token_name_display_2.golden @@ -0,0 +1 @@ +54657374546f6b656e \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_token_name_display_3.golden b/plutus-ledger-api/tests/testdata/v1_token_name_display_3.golden new file mode 100644 index 00000000..9c98efef --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_token_name_display_3.golden @@ -0,0 +1 @@ +0xfff4e9de \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_token_name_display_4.golden b/plutus-ledger-api/tests/testdata/v1_token_name_display_4.golden new file mode 100644 index 00000000..74dc4fbc --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_token_name_display_4.golden @@ -0,0 +1 @@ +TestToken \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_transaction_input_display.golden b/plutus-ledger-api/tests/testdata/v1_transaction_input_display.golden new file mode 100644 index 00000000..a7af3878 --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_transaction_input_display.golden @@ -0,0 +1 @@ +0000000000000000000000000000000000000000000000000000000000000000#3 \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_value_display_1.golden b/plutus-ledger-api/tests/testdata/v1_value_display_1.golden new file mode 100644 index 00000000..7e190900 --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_value_display_1.golden @@ -0,0 +1 @@ + 234+00000000000000000000000000000000000000000000000000000000.536f6d657468696e67 123 \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_value_display_2.golden b/plutus-ledger-api/tests/testdata/v1_value_display_2.golden new file mode 100644 index 00000000..7e190900 --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_value_display_2.golden @@ -0,0 +1 @@ + 234+00000000000000000000000000000000000000000000000000000000.536f6d657468696e67 123 \ No newline at end of file From ae25646c97a5194cf433d2313c9a178bdf87a865 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Tue, 5 Nov 2024 11:31:25 +0100 Subject: [PATCH 35/94] Update goldens --- .../tests/testdata/v1_script_context.golden | 68 +++++++++++++++ .../tests/testdata/v1_transaction_info.golden | 68 +++++++++++++++ .../testdata/v1_transaction_output.golden | 17 ++++ .../tests/testdata/v1_tx_in_info.golden | 17 ++++ .../tests/testdata/v1_value.golden | 17 ++++ .../tests/testdata/v2_script_context.golden | 85 +++++++++++++++++++ .../tests/testdata/v2_transaction_info.golden | 85 +++++++++++++++++++ .../testdata/v2_transaction_output.golden | 17 ++++ .../tests/testdata/v2_tx_in_info.golden | 17 ++++ 9 files changed, 391 insertions(+) diff --git a/plutus-ledger-api/tests/testdata/v1_script_context.golden b/plutus-ledger-api/tests/testdata/v1_script_context.golden index b3be0f27..7bcafe7a 100644 --- a/plutus-ledger-api/tests/testdata/v1_script_context.golden +++ b/plutus-ledger-api/tests/testdata/v1_script_context.golden @@ -152,6 +152,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -353,6 +370,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -458,6 +492,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -518,6 +569,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ diff --git a/plutus-ledger-api/tests/testdata/v1_transaction_info.golden b/plutus-ledger-api/tests/testdata/v1_transaction_info.golden index 4d6d21b7..65e6dddb 100644 --- a/plutus-ledger-api/tests/testdata/v1_transaction_info.golden +++ b/plutus-ledger-api/tests/testdata/v1_transaction_info.golden @@ -149,6 +149,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -350,6 +367,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -455,6 +489,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -515,6 +566,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ diff --git a/plutus-ledger-api/tests/testdata/v1_transaction_output.golden b/plutus-ledger-api/tests/testdata/v1_transaction_output.golden index 0a98a9d9..2cb51071 100644 --- a/plutus-ledger-api/tests/testdata/v1_transaction_output.golden +++ b/plutus-ledger-api/tests/testdata/v1_transaction_output.golden @@ -92,6 +92,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ diff --git a/plutus-ledger-api/tests/testdata/v1_tx_in_info.golden b/plutus-ledger-api/tests/testdata/v1_tx_in_info.golden index a394d41c..09107874 100644 --- a/plutus-ledger-api/tests/testdata/v1_tx_in_info.golden +++ b/plutus-ledger-api/tests/testdata/v1_tx_in_info.golden @@ -144,6 +144,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ diff --git a/plutus-ledger-api/tests/testdata/v1_value.golden b/plutus-ledger-api/tests/testdata/v1_value.golden index ac756e76..d57efd6b 100644 --- a/plutus-ledger-api/tests/testdata/v1_value.golden +++ b/plutus-ledger-api/tests/testdata/v1_value.golden @@ -1,5 +1,22 @@ Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ diff --git a/plutus-ledger-api/tests/testdata/v2_script_context.golden b/plutus-ledger-api/tests/testdata/v2_script_context.golden index f44208a0..4dc8879a 100644 --- a/plutus-ledger-api/tests/testdata/v2_script_context.golden +++ b/plutus-ledger-api/tests/testdata/v2_script_context.golden @@ -152,6 +152,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -424,6 +441,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -644,6 +678,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -768,6 +819,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -828,6 +896,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ diff --git a/plutus-ledger-api/tests/testdata/v2_transaction_info.golden b/plutus-ledger-api/tests/testdata/v2_transaction_info.golden index 9ac751d8..9c4381dd 100644 --- a/plutus-ledger-api/tests/testdata/v2_transaction_info.golden +++ b/plutus-ledger-api/tests/testdata/v2_transaction_info.golden @@ -149,6 +149,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -421,6 +438,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -641,6 +675,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -765,6 +816,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ @@ -825,6 +893,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ diff --git a/plutus-ledger-api/tests/testdata/v2_transaction_output.golden b/plutus-ledger-api/tests/testdata/v2_transaction_output.golden index e7110a75..373f6461 100644 --- a/plutus-ledger-api/tests/testdata/v2_transaction_output.golden +++ b/plutus-ledger-api/tests/testdata/v2_transaction_output.golden @@ -92,6 +92,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ diff --git a/plutus-ledger-api/tests/testdata/v2_tx_in_info.golden b/plutus-ledger-api/tests/testdata/v2_tx_in_info.golden index d07191ec..9aa6ad76 100644 --- a/plutus-ledger-api/tests/testdata/v2_tx_in_info.golden +++ b/plutus-ledger-api/tests/testdata/v2_tx_in_info.golden @@ -144,6 +144,23 @@ Constr( ), Map( [ + ( + Bytes( + [], + ), + Map( + [ + ( + Bytes( + [], + ), + Integer( + 234, + ), + ), + ], + ), + ), ( Bytes( [ From 489969676f703a79652d6567436f0fc5181a3694 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Tue, 5 Nov 2024 11:39:44 +0100 Subject: [PATCH 36/94] Update deps --- plutus-ledger-api/Cargo.lock | 92 ++++++++++++++++++------------------ plutus-ledger-api/Cargo.toml | 4 +- 2 files changed, 47 insertions(+), 49 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 007ded40..31391db6 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -31,9 +31,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.89" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" +checksum = "74f37166d7d48a0284b99dd824694c26119c700b53bf0d1540cdb147dbdaaf13" [[package]] name = "autocfg" @@ -97,9 +97,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "cardano-serialization-lib" -version = "12.1.0" +version = "12.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abfd14f5a2250d86a3c673a70c49851c21207ee8537f9f11b3dba9cc67095ef7" +checksum = "72a6b87191e22d30d2fd9cf52a8db1acd0611d119f432e3dc676650c76f67840" dependencies = [ "bech32", "cbor_event", @@ -137,9 +137,9 @@ checksum = "089a0261d1bc59e54e8e11860031efd88593f0e61b921172c474f1f38c2f2d3c" [[package]] name = "cc" -version = "1.1.24" +version = "1.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "812acba72f0a070b003d3697490d2b55b837230ae7c6c6497f05cc2ddbb8d938" +checksum = "67b9470d453346108f93a59222a9a1a5724db32d0a4727b7ab7ace4b4d822dc9" dependencies = [ "shlex", ] @@ -340,9 +340,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.0" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" +checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" [[package]] name = "hashlink" @@ -361,9 +361,9 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] name = "iana-time-zone" -version = "0.1.60" +version = "0.1.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -395,7 +395,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", - "hashbrown 0.15.0", + "hashbrown 0.15.1", ] [[package]] @@ -425,9 +425,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "js-sys" -version = "0.3.64" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" +checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" dependencies = [ "wasm-bindgen", ] @@ -467,15 +467,15 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.159" +version = "0.2.161" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" +checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" [[package]] name = "libm" -version = "0.2.8" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" [[package]] name = "linked-hash-map" @@ -595,12 +595,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.1" +version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82881c4be219ab5faaf2ad5e5e5ecdff8c66bd7402ca3160975c93b24961afd1" -dependencies = [ - "portable-atomic", -] +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" [[package]] name = "opaque-debug" @@ -610,7 +607,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "2.0.0-beta.1" +version = "2.0.0" dependencies = [ "anyhow", "cardano-serialization-lib", @@ -629,12 +626,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "portable-atomic" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" - [[package]] name = "ppv-lite86" version = "0.2.20" @@ -656,9 +647,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" dependencies = [ "unicode-ident", ] @@ -784,9 +775,9 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rustix" -version = "0.38.37" +version = "0.38.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" +checksum = "375116bee2be9ed569afe2154ea6a99dfdffd257f533f187498c2a8f5feaf4ee" dependencies = [ "bitflags 2.6.0", "errno", @@ -839,9 +830,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.210" +version = "1.0.214" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" +checksum = "f55c3193aca71c12ad7890f1785d2b73e1b9f63a0bbc353c08ef26fe03fc56b5" dependencies = [ "serde_derive", ] @@ -859,9 +850,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.210" +version = "1.0.214" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" +checksum = "de523f781f095e28fa605cdce0f8307e451cc0fd14e2eb4cd2e98a355b147766" dependencies = [ "proc-macro2", "quote", @@ -881,9 +872,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.128" +version = "1.0.132" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" +checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" dependencies = [ "itoa", "memchr", @@ -921,15 +912,21 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "syn" -version = "2.0.79" +version = "2.0.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" +checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" dependencies = [ "proc-macro2", "quote", "unicode-ident", ] +[[package]] +name = "target-triple" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42a4d50cdb458045afc8131fd91b64904da29548bcb63c7236e0844936c13078" + [[package]] name = "tempfile" version = "3.13.0" @@ -954,18 +951,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.64" +version = "1.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +checksum = "02dd99dc800bbb97186339685293e1cc5d9df1f8fae2d0aecd9ff1c77efea892" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.64" +version = "1.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +checksum = "a7c61ec9a6f64d2793d8a45faba21efbe3ced62a886d44c36a009b2b519b4c7e" dependencies = [ "proc-macro2", "quote", @@ -1008,15 +1005,16 @@ dependencies = [ [[package]] name = "trybuild" -version = "1.0.99" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "207aa50d36c4be8d8c6ea829478be44a372c6a77669937bb39c698e52f1491e8" +checksum = "8dcd332a5496c026f1e14b7f3d2b7bd98e509660c04239c58b0ba38a12daded4" dependencies = [ "dissimilar", "glob", "serde", "serde_derive", "serde_json", + "target-triple", "termcolor", "toml", ] diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 0ff63de0..c1788c48 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "2.0.0-beta.1" +version = "2.0.0" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" @@ -20,7 +20,7 @@ linked-hash-map = "~0.5.6" num-traits = "~0.2.17" impl_ops = "0.1.1" chrono = { version = "0.4.34", optional = true } -cardano-serialization-lib = "12.1.0" +cardano-serialization-lib = "12.1.1" is-plutus-data-derive = { path = ".extras/is-plutus-data-derive-0" } anyhow = "1.0.86" From d09a7312684e38a26e601809dd26db6562470dcf Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Tue, 5 Nov 2024 11:39:54 +0100 Subject: [PATCH 37/94] Update CHANGELOG --- plutus-ledger-api/CHANGELOG.md | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index 13567920..83f2538d 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -4,27 +4,20 @@ This changelog is based on [Keep A Changelog](https://keepachangelog.com/en/1.1.0). -## Unreleased - -### Added - -- Added v3 plutus ledger types ([#57](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/57)) -- Added the ability to derive `IsPlutusData` instances ([#56](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/56)) - -### Changed - -### Removed - ## v2.0.0 ### Added - Added cardano-serialization-lib conversion traits (`ToCSL` and `FromCSL`) +- Added v3 plutus ledger types ([#57](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/57)) +- Added the ability to derive `IsPlutusData` instances ([#56](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/56)) +- Added a few utility functions for Values +- Added Display and Debug implementations for CurrencySymbol, TokenName, Value, AddressWithExtraInfo ### Changed - Fixed `serde` serialization of Plutus `Value`s -- Updated cardano-serialization-lib to Conway compatible 12.1.0 +- Updated cardano-serialization-lib to Conway compatible 12.1.1 ## v1.0.0 From 1acaa8b348c02e21880091e2dc372bb01e718a4a Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Tue, 5 Nov 2024 17:36:47 +0100 Subject: [PATCH 38/94] Add FromStr parsers --- plutus-ledger-api/CHANGELOG.md | 5 +- plutus-ledger-api/Cargo.lock | 17 ++ plutus-ledger-api/Cargo.toml | 1 + plutus-ledger-api/src/{utils => }/aux.rs | 31 +++ plutus-ledger-api/src/error.rs | 47 +++++ plutus-ledger-api/src/goldens/v1.rs | 2 +- plutus-ledger-api/src/lib.rs | 3 +- plutus-ledger-api/src/utils/mod.rs | 1 - plutus-ledger-api/src/v1/crypto.rs | 34 +++ plutus-ledger-api/src/v1/script.rs | 43 ++++ plutus-ledger-api/src/v1/transaction.rs | 73 ++++++- plutus-ledger-api/src/v1/value.rs | 197 ++++++++++++++++-- .../tests/display.proptest-regressions | 8 + plutus-ledger-api/tests/display.rs | 67 +++++- .../testdata/v1_asset_class_display.golden | 2 +- .../v1_currency_symbol_display_1.golden | 2 +- .../tests/testdata/v1_value_display_1.golden | 2 +- .../tests/testdata/v1_value_display_2.golden | 2 +- 18 files changed, 506 insertions(+), 31 deletions(-) rename plutus-ledger-api/src/{utils => }/aux.rs (61%) create mode 100644 plutus-ledger-api/src/error.rs delete mode 100644 plutus-ledger-api/src/utils/mod.rs create mode 100644 plutus-ledger-api/tests/display.proptest-regressions diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index 83f2538d..2964b754 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -12,7 +12,10 @@ Changelog](https://keepachangelog.com/en/1.1.0). - Added v3 plutus ledger types ([#57](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/57)) - Added the ability to derive `IsPlutusData` instances ([#56](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/56)) - Added a few utility functions for Values -- Added Display and Debug implementations for CurrencySymbol, TokenName, Value, AddressWithExtraInfo +- Added Display and Debug implementations for + CurrencySymbol, TokenName, Value, AddressWithExtraInfo and some other types +- Added FromStr implementations for CurrencySymbol, TokenName, Value, Address + and some other types ### Changed diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 31391db6..a4455ab6 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -501,6 +501,22 @@ version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + [[package]] name = "noop_proc_macro" version = "0.3.0" @@ -618,6 +634,7 @@ dependencies = [ "is-plutus-data-derive", "lbr-prelude", "linked-hash-map", + "nom", "num-bigint", "num-traits", "proptest", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index c1788c48..9164feb1 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -23,6 +23,7 @@ chrono = { version = "0.4.34", optional = true } cardano-serialization-lib = "12.1.1" is-plutus-data-derive = { path = ".extras/is-plutus-data-derive-0" } anyhow = "1.0.86" +nom = "7.1.3" [features] default = [] diff --git a/plutus-ledger-api/src/utils/aux.rs b/plutus-ledger-api/src/aux.rs similarity index 61% rename from plutus-ledger-api/src/utils/aux.rs rename to plutus-ledger-api/src/aux.rs index e6408426..c98c9301 100644 --- a/plutus-ledger-api/src/utils/aux.rs +++ b/plutus-ledger-api/src/aux.rs @@ -1,8 +1,22 @@ use std::{ collections::BTreeMap, iter::{empty, once}, + str::FromStr, }; +use nom::{ + branch::alt, + character::complete::{char, digit1}, + combinator::{map_res, opt, recognize}, + error::VerboseError, + multi::many1, + sequence::tuple, + IResult, +}; +use num_bigint::BigInt; + +use crate::error::ConversionError; + /// Create a container C from one element. pub fn singleton(value: T) -> C where @@ -50,3 +64,20 @@ pub fn union_b_tree_maps_with, expected: usize) -> Result, ConversionError> { + if bytes.len() == expected { + Ok(bytes) + } else { + Err(ConversionError::invalid_bytestring_length( + ctx, expected, "equal to", &bytes, + )) + } +} + +pub(crate) fn big_int(i: &str) -> IResult<&str, BigInt, VerboseError<&str>> { + map_res( + recognize(tuple((opt(alt((char('-'), char('+')))), many1(digit1)))), + |s: &str| BigInt::from_str(s), + )(i) +} diff --git a/plutus-ledger-api/src/error.rs b/plutus-ledger-api/src/error.rs new file mode 100644 index 00000000..ec2cb737 --- /dev/null +++ b/plutus-ledger-api/src/error.rs @@ -0,0 +1,47 @@ +use data_encoding::HEXLOWER; +use thiserror::Error; + +#[derive(Debug, Error)] +pub enum ConversionError { + #[error("ByteString length must be {relation} {expected} but got {got} with value{value_hex}")] + InvalidByteStringLength { + ctx: String, + expected: usize, + got: usize, + value_hex: String, + relation: String, + }, + + #[error("String cannot be parsed as a hexadecimal value: {value_hex}")] + HexDecodeError { + value_hex: String, + source: data_encoding::DecodeError, + }, + + #[error(transparent)] + ParseError(anyhow::Error), +} + +impl ConversionError { + pub fn invalid_bytestring_length( + ctx: &str, + expected: usize, + relation: &str, + bytes: &[u8], + ) -> Self { + ConversionError::InvalidByteStringLength { + ctx: ctx.to_string(), + expected, + got: bytes.len(), + relation: relation.to_string(), + value_hex: HEXLOWER.encode(bytes), + } + } + + pub fn hex_decode_error(err: data_encoding::DecodeError, value_hex: &str) -> Self { + ConversionError::HexDecodeError { + source: err, + value_hex: value_hex.to_string(), + } + } +} diff --git a/plutus-ledger-api/src/goldens/v1.rs b/plutus-ledger-api/src/goldens/v1.rs index 02fd57af..5413c805 100644 --- a/plutus-ledger-api/src/goldens/v1.rs +++ b/plutus-ledger-api/src/goldens/v1.rs @@ -27,7 +27,7 @@ pub fn sample_currency_symbol() -> CurrencySymbol { } pub fn sample_token_name() -> TokenName { - TokenName::from_string("Something") + TokenName::from_string("Something").unwrap() } pub fn sample_asset_class() -> AssetClass { diff --git a/plutus-ledger-api/src/lib.rs b/plutus-ledger-api/src/lib.rs index e788cad2..c65bb286 100644 --- a/plutus-ledger-api/src/lib.rs +++ b/plutus-ledger-api/src/lib.rs @@ -9,8 +9,9 @@ pub mod v2; pub mod v3; #[cfg(feature = "lbf")] pub use lbr_prelude::json; +pub mod aux; pub mod csl; -pub mod utils; +pub mod error; #[macro_use] extern crate impl_ops; diff --git a/plutus-ledger-api/src/utils/mod.rs b/plutus-ledger-api/src/utils/mod.rs deleted file mode 100644 index a8a7dcdb..00000000 --- a/plutus-ledger-api/src/utils/mod.rs +++ /dev/null @@ -1 +0,0 @@ -pub mod aux; diff --git a/plutus-ledger-api/src/v1/crypto.rs b/plutus-ledger-api/src/v1/crypto.rs index 6565e1a4..c7e7ee8d 100644 --- a/plutus-ledger-api/src/v1/crypto.rs +++ b/plutus-ledger-api/src/v1/crypto.rs @@ -3,10 +3,12 @@ use cardano_serialization_lib as csl; use data_encoding::HEXLOWER; #[cfg(feature = "lbf")] use lbr_prelude::json::{Error, Json}; +use nom::{combinator::map_res, error::VerboseError, IResult}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; use crate as plutus_ledger_api; +use crate::error::ConversionError; use crate::{ csl::{ csl_to_pla::FromCSL, @@ -93,6 +95,38 @@ impl std::fmt::Display for LedgerBytes { } } +pub(crate) fn ledger_bytes(input: &str) -> IResult<&str, LedgerBytes, VerboseError<&str>> { + map_res(nom::character::complete::hex_digit0, |hex_bytes: &str| { + HEXLOWER + .decode(&hex_bytes.to_owned().to_ascii_lowercase().into_bytes()) + .map(LedgerBytes) + })(input) +} + +pub(crate) fn hash28(input: &str) -> IResult<&str, LedgerBytes, VerboseError<&str>> { + map_res(ledger_bytes, |bytes: LedgerBytes| { + if bytes.0.len() == 28 { + Ok(bytes) + } else { + Err(ConversionError::invalid_bytestring_length( + "hash28", 28, "equal to", &bytes.0, + )) + } + })(input) +} + +pub(crate) fn hash32(input: &str) -> IResult<&str, LedgerBytes, VerboseError<&str>> { + map_res(ledger_bytes, |bytes: LedgerBytes| { + if bytes.0.len() == 32 { + Ok(bytes) + } else { + Err(ConversionError::invalid_bytestring_length( + "hash32", 32, "equal to", &bytes.0, + )) + } + })(input) +} + #[cfg(feature = "lbf")] impl Json for LedgerBytes { fn to_json(&self) -> serde_json::Value { diff --git a/plutus-ledger-api/src/v1/script.rs b/plutus-ledger-api/src/v1/script.rs index e3f73b98..f83b3988 100644 --- a/plutus-ledger-api/src/v1/script.rs +++ b/plutus-ledger-api/src/v1/script.rs @@ -4,15 +4,22 @@ use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use lbr_prelude::json::Json; +use nom::combinator::map; +use nom::error::{context, VerboseError}; +use nom::IResult; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; use crate as plutus_ledger_api; +use crate::aux::guard_bytes; use crate::csl::csl_to_pla::FromCSL; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; +use crate::error::ConversionError; use crate::plutus_data::IsPlutusData; use crate::v1::crypto::LedgerBytes; +use super::crypto::hash28; + /////////////////// // ValidatorHash // /////////////////// @@ -30,6 +37,16 @@ impl FromCSL for ValidatorHash { } } +impl ValidatorHash { + pub fn from_bytes(bytes: Vec) -> Result { + Ok(ValidatorHash(ScriptHash::from_bytes(bytes)?)) + } +} + +pub(crate) fn validator_hash(input: &str) -> IResult<&str, ValidatorHash, VerboseError<&str>> { + context("validator_hash", map(script_hash, ValidatorHash))(input) +} + /////////////////////// // MintingPolicyHash // /////////////////////// @@ -41,6 +58,12 @@ impl FromCSL for ValidatorHash { #[cfg_attr(feature = "lbf", derive(Json))] pub struct MintingPolicyHash(pub ScriptHash); +impl MintingPolicyHash { + pub fn from_bytes(bytes: Vec) -> Result { + Ok(MintingPolicyHash(ScriptHash::from_bytes(bytes)?)) + } +} + impl FromCSL for MintingPolicyHash { fn from_csl(value: &csl::PolicyID) -> Self { MintingPolicyHash(ScriptHash(LedgerBytes(value.to_bytes()))) @@ -53,6 +76,12 @@ impl TryFromPLA for csl::PolicyID { } } +pub(crate) fn minting_policy_hash( + input: &str, +) -> IResult<&str, MintingPolicyHash, VerboseError<&str>> { + context("minting_policy_hash", map(script_hash, MintingPolicyHash))(input) +} + //////////////// // ScriptHash // //////////////// @@ -64,6 +93,16 @@ impl TryFromPLA for csl::PolicyID { #[cfg_attr(feature = "lbf", derive(Json))] pub struct ScriptHash(pub LedgerBytes); +impl ScriptHash { + pub fn from_bytes(bytes: Vec) -> Result { + Ok(ScriptHash(LedgerBytes(guard_bytes( + "ScriptHash", + bytes, + 28, + )?))) + } +} + impl FromCSL for ScriptHash { fn from_csl(value: &csl::ScriptHash) -> Self { ScriptHash(LedgerBytes(value.to_bytes())) @@ -76,3 +115,7 @@ impl TryFromPLA for csl::ScriptHash { .map_err(TryFromPLAError::CSLDeserializeError) } } + +pub(crate) fn script_hash(input: &str) -> IResult<&str, ScriptHash, VerboseError<&str>> { + context("script_hash", map(hash28, ScriptHash))(input) +} diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index 2ef775e6..21c18b67 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -1,27 +1,38 @@ //! Types related to Cardano transactions. -use std::fmt; +use std::{fmt, str::FromStr}; +use anyhow::anyhow; use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use lbr_prelude::json::Json; +use nom::{ + character::complete::char, + combinator::{all_consuming, map}, + error::{context, VerboseError}, + sequence::preceded, + Finish, IResult, +}; use num_bigint::BigInt; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; use super::{ address::{Address, StakingCredential}, - crypto::{LedgerBytes, PaymentPubKeyHash}, + crypto::{hash32, LedgerBytes, PaymentPubKeyHash}, datum::{Datum, DatumHash}, interval::PlutusInterval, value::{CurrencySymbol, Value}, }; -use crate as plutus_ledger_api; -use crate::csl::{csl_to_pla::FromCSL, pla_to_csl::TryFromPLA}; +use crate::{self as plutus_ledger_api, aux::big_int}; use crate::{ csl::pla_to_csl::{TryFromPLAError, TryToCSL}, plutus_data::IsPlutusData, }; +use crate::{ + csl::{csl_to_pla::FromCSL, pla_to_csl::TryFromPLA}, + error::ConversionError, +}; ////////////////////// // TransactionInput // @@ -82,6 +93,39 @@ impl TryFromPLA> for csl::TransactionInputs { } } +pub(crate) fn transaction_input( + input: &str, +) -> IResult<&str, TransactionInput, VerboseError<&str>> { + let (input, tx_id) = transaction_hash(input)?; + + let (input, idx) = preceded(char('#'), big_int)(input)?; + + Ok(( + input, + TransactionInput { + transaction_id: tx_id, + index: idx, + }, + )) +} + +impl FromStr for TransactionInput { + type Err = ConversionError; + + fn from_str(s: &str) -> Result { + all_consuming(transaction_input)(s) + .finish() + .map_err(|err| { + ConversionError::ParseError(anyhow!( + "Error while parsing TransactionInput '{}': {}", + s, + err + )) + }) + .map(|(_, cs)| cs) + } +} + ///////////////////// // TransactionHash // ///////////////////// @@ -115,6 +159,27 @@ impl TryFromPLA for csl::TransactionHash { } } +pub(crate) fn transaction_hash(input: &str) -> IResult<&str, TransactionHash, VerboseError<&str>> { + context("transaction_hash", map(hash32, TransactionHash))(input) +} + +impl FromStr for TransactionHash { + type Err = ConversionError; + + fn from_str(s: &str) -> Result { + all_consuming(transaction_hash)(s) + .finish() + .map_err(|err| { + ConversionError::ParseError(anyhow!( + "Error while parsing TransactionHash '{}': {}", + s, + err + )) + }) + .map(|(_, cs)| cs) + } +} + /////////////////////// // TransactionOutput // /////////////////////// diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index f445a3d3..a72907de 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -1,5 +1,6 @@ //! Types related to Cardano values, such as Ada and native tokens. +use std::str::FromStr; use std::string::String; use std::{ collections::BTreeMap, @@ -8,9 +9,20 @@ use std::{ }; use std::{fmt, ops}; +use anyhow::anyhow; use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use lbr_prelude::json::{Error, Json, JsonType}; +use nom::{ + branch::alt, + character::complete::{char, space0}, + combinator::{all_consuming, eof, map, map_res, success}, + error::{context, VerboseError}, + multi::separated_list0, + sequence::preceded, + sequence::tuple, + Finish, IResult, +}; use num_bigint::BigInt; use num_traits::Zero; #[cfg(feature = "serde")] @@ -19,13 +31,17 @@ use serde::{Deserialize, Serialize}; use serde_json; use crate as plutus_ledger_api; +use crate::aux::{big_int, singleton, union_b_tree_maps_with, union_btree_maps_with}; use crate::csl::csl_to_pla::FromCSL; use crate::csl::pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}; +use crate::error::ConversionError; use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError}; -use crate::utils::aux::{singleton, union_b_tree_maps_with, union_btree_maps_with}; use crate::v1::crypto::LedgerBytes; use crate::v1::script::{MintingPolicyHash, ScriptHash}; +use super::crypto::ledger_bytes; +use super::script::minting_policy_hash; + //////////////////// // CurrencySymbol // //////////////////// @@ -39,6 +55,18 @@ pub enum CurrencySymbol { NativeToken(MintingPolicyHash), } +impl CurrencySymbol { + pub fn from_bytes(bytes: Vec) -> Result { + if bytes.is_empty() { + Ok(CurrencySymbol::Ada) + } else { + Ok(CurrencySymbol::NativeToken(MintingPolicyHash::from_bytes( + bytes, + )?)) + } + } +} + impl fmt::Display for CurrencySymbol { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { match self { @@ -54,11 +82,28 @@ impl fmt::Display for CurrencySymbol { } } +impl FromStr for CurrencySymbol { + type Err = ConversionError; + + fn from_str(s: &str) -> Result { + all_consuming(currency_symbol)(s) + .finish() + .map_err(|err| { + ConversionError::ParseError(anyhow!( + "Error while parsing CurrencySymbol '{}': {}", + s, + err + )) + }) + .map(|(_, cs)| cs) + } +} + impl IsPlutusData for CurrencySymbol { fn to_plutus_data(&self) -> PlutusData { match self { - CurrencySymbol::Ada => String::from("").to_plutus_data(), CurrencySymbol::NativeToken(policy_hash) => policy_hash.to_plutus_data(), + CurrencySymbol::Ada => String::from("").to_plutus_data(), } } @@ -100,6 +145,27 @@ impl Json for CurrencySymbol { } } +pub(crate) fn currency_symbol(input: &str) -> IResult<&str, CurrencySymbol, VerboseError<&str>> { + context( + "currency symbol", + alt(( + map_res(ledger_bytes, |bytes: LedgerBytes| { + if bytes.0.is_empty() { + Ok(CurrencySymbol::Ada) + } else { + Err(ConversionError::invalid_bytestring_length( + "currency_symbol_ada", + 0, + "equal to", + &bytes.0, + )) + } + }), + map(minting_policy_hash, CurrencySymbol::NativeToken), + )), + )(input) +} + /////////// // Value // /////////// @@ -301,6 +367,11 @@ impl Value { }) .collect() } + + pub fn unflatten(list: &[(CurrencySymbol, TokenName, BigInt)]) -> Self { + list.iter() + .fold(Value::new(), |v, (cs, tn, am)| v.insert_token(cs, tn, am)) + } } impl fmt::Display for Value { @@ -329,6 +400,37 @@ impl fmt::Display for Value { } } +pub(crate) fn flat_value( + input: &str, +) -> IResult<&str, (CurrencySymbol, TokenName, BigInt), VerboseError<&str>> { + let (input, cs) = currency_symbol(input)?; + + let (input, tn) = alt((preceded(char('.'), token_name), success(TokenName::ada())))(input)?; + + let (input, amount) = preceded(char(' '), big_int)(input)?; + + Ok((input, (cs, tn, amount))) +} + +pub(crate) fn value(input: &str) -> IResult<&str, Value, VerboseError<&str>> { + let (input, flat_values) = separated_list0(tuple((space0, char('+'))), flat_value)(input)?; + + Ok((input, Value::unflatten(&flat_values))) +} + +impl FromStr for Value { + type Err = ConversionError; + + fn from_str(s: &str) -> Result { + all_consuming(value)(s) + .finish() + .map_err(|err| { + ConversionError::ParseError(anyhow!("Error while parsing Value '{}': {}", s, err)) + }) + .map(|(_, cs)| cs) + } +} + impl Zero for Value { fn zero() -> Self { Default::default() @@ -592,6 +694,7 @@ impl FromCSL for Value { pub struct TokenName(pub LedgerBytes); impl TokenName { + /// Ada tokenname (empty bytestring) pub fn ada() -> TokenName { TokenName(LedgerBytes(Vec::with_capacity(0))) } @@ -600,19 +703,62 @@ impl TokenName { self.0 .0.is_empty() } - pub fn from_bytes(bytes: Vec) -> Self { - TokenName(LedgerBytes(bytes)) + pub fn from_bytes(bytes: Vec) -> Result { + if bytes.len() <= 32 { + Ok(TokenName(LedgerBytes(bytes))) + } else { + Err(ConversionError::invalid_bytestring_length( + "TokenName", + 32, + "less than or equal to", + &bytes, + )) + } } - pub fn from_string(str: &str) -> Self { - TokenName(LedgerBytes(String::from(str).into_bytes())) + /// Convert a UTF8 string into a TokenName (use from_str to convert from a hexadecimal string) + pub fn from_string(str: &str) -> Result { + TokenName::from_bytes(String::from(str).into_bytes()) } + /// Convert TokenName to string if it is a valid UTF8 bytestring pub fn try_into_string(self) -> Result { String::from_utf8(self.0 .0) } } +impl FromStr for TokenName { + type Err = ConversionError; + + fn from_str(s: &str) -> Result { + all_consuming(token_name)(s) + .finish() + .map_err(|err| { + ConversionError::ParseError(anyhow!( + "Error while parsing TokenName '{}': {}", + s, + err + )) + }) + .map(|(_, cs)| cs) + } +} + +pub(crate) fn token_name(input: &str) -> IResult<&str, TokenName, VerboseError<&str>> { + map_res(ledger_bytes, |bytes: LedgerBytes| { + if bytes.0.len() <= 32 { + Ok(TokenName(bytes)) + } else { + Err(ConversionError::invalid_bytestring_length( + "token_name", + 32, + "less than or equal to", + &bytes.0, + )) + } + })(input) +} + impl IsPlutusData for TokenName { fn to_plutus_data(&self) -> PlutusData { self.0.to_plutus_data() @@ -673,19 +819,40 @@ impl fmt::Display for AssetClass { } } -#[cfg(test)] -mod test { - use super::*; +impl FromStr for AssetClass { + type Err = ConversionError; - #[test] - fn to_from_string_token_name() { - let name = "Hello"; - let token_name = TokenName::from_string(name); - - assert_eq!(token_name.try_into_string().unwrap(), name); + fn from_str(s: &str) -> Result { + all_consuming(asset_class)(s) + .finish() + .map_err(|err| { + ConversionError::ParseError(anyhow!( + "Error while parsing AssetClass '{}': {}", + s, + err + )) + }) + .map(|(_, cs)| cs) } } +pub(crate) fn asset_class(input: &str) -> IResult<&str, AssetClass, VerboseError<&str>> { + let (input, cs) = currency_symbol(input)?; + + let (input, tn) = alt(( + preceded(eof, success(TokenName::ada())), + preceded(char('.'), token_name), + ))(input)?; + + Ok(( + input, + AssetClass { + currency_symbol: cs, + token_name: tn, + }, + )) +} + //////////////// // Lovelace // //////////////// diff --git a/plutus-ledger-api/tests/display.proptest-regressions b/plutus-ledger-api/tests/display.proptest-regressions new file mode 100644 index 00000000..193e2d7a --- /dev/null +++ b/plutus-ledger-api/tests/display.proptest-regressions @@ -0,0 +1,8 @@ +# Seeds for failure cases proptest has generated in the past. It is +# automatically read and these particular cases re-run before any +# novel cases are generated. +# +# It is recommended to check this file in to source control so that +# everyone who runs the test benefits from these saved cases. +cc f28698f393b1933268f15226ce5938cff4237e12ddbc2a4a043362f4d8b53dd4 # shrinks to val = "ࡀA\u{ec8}a𑵐𞟨𐨀Ø\u{16d70}0ꫛ\u{fe20}" +cc dafca272147ae56cc689fcc524f9eacc984ab5edb7d8a870c3beaccff6c283cd # shrinks to val = Ada diff --git a/plutus-ledger-api/tests/display.rs b/plutus-ledger-api/tests/display.rs index a746a62d..c0318aa1 100644 --- a/plutus-ledger-api/tests/display.rs +++ b/plutus-ledger-api/tests/display.rs @@ -29,26 +29,29 @@ mod display_serialisation_tests { fn v1_token_name_display_1() { goldie::assert!(format!( "{}", - TokenName::from_bytes(vec![255, 244, 233, 222]) + TokenName::from_bytes(vec![255, 244, 233, 222]).unwrap() )) } #[test] fn v1_token_name_display_2() { - goldie::assert!(format!("{}", TokenName::from_string("TestToken"))) + goldie::assert!(format!("{}", TokenName::from_string("TestToken").unwrap())) } #[test] fn v1_token_name_display_3() { goldie::assert!(format!( "{:#}", - TokenName::from_bytes(vec![255, 244, 233, 222]) + TokenName::from_bytes(vec![255, 244, 233, 222]).unwrap() )) } #[test] fn v1_token_name_display_4() { - goldie::assert!(format!("{:#}", TokenName::from_string("TestToken"))) + goldie::assert!(format!( + "{:#}", + TokenName::from_string("TestToken").unwrap() + )) } #[test] @@ -81,4 +84,60 @@ mod display_serialisation_tests { goldie::assert!(format!("{}", sample_transaction_input())) } } + + mod props_v1 { + use std::{fmt::Display, str::FromStr}; + + use plutus_ledger_api::{ + generators::correct::v1::{ + arb_address, arb_asset_class, arb_currency_symbol, arb_transaction_input, arb_value, + }, + v1::{address::Address, value::TokenName}, + }; + use proptest::{prelude::*, string::string_regex}; + + fn from_to_string(val: &T) -> Result + where + T: FromStr + Display + PartialEq, + { + T::from_str(&val.to_string()) + } + + proptest! { + + #[test] + fn currency_symbol(val in arb_currency_symbol()) { + assert_eq!(val, from_to_string(&val)?); + } + + #[test] + fn token_name(val in string_regex("[a-zA-Z0-9]{0,32}").unwrap()) { + let token_name = TokenName::from_string(&val).unwrap(); + + assert_eq!(token_name.try_into_string().unwrap(), val); + } + + #[test] + fn asset_class(val in arb_asset_class()) { + assert_eq!(val, from_to_string(&val)?); + } + + #[test] + fn value(val in arb_value()) { + assert_eq!(val, from_to_string(&val)?); + } + + #[test] + fn address(val in arb_address()) { + let roundtripped = Address::from_str(&val.with_extra_info(0).to_string()).unwrap(); + + assert_eq!(val, roundtripped); + } + + #[test] + fn transaction_input(val in arb_transaction_input()) { + assert_eq!(val, from_to_string(&val)?); + } + } + } } diff --git a/plutus-ledger-api/tests/testdata/v1_asset_class_display.golden b/plutus-ledger-api/tests/testdata/v1_asset_class_display.golden index 3460266c..d77aa174 100644 --- a/plutus-ledger-api/tests/testdata/v1_asset_class_display.golden +++ b/plutus-ledger-api/tests/testdata/v1_asset_class_display.golden @@ -1 +1 @@ -00000000000000000000000000000000000000000000000000000000.536f6d657468696e67 \ No newline at end of file +01010101010101010101010101010101010101010101010101010101.536f6d657468696e67 \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_1.golden b/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_1.golden index f1423cec..45e17975 100644 --- a/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_1.golden +++ b/plutus-ledger-api/tests/testdata/v1_currency_symbol_display_1.golden @@ -1 +1 @@ -00000000000000000000000000000000000000000000000000000000 \ No newline at end of file +01010101010101010101010101010101010101010101010101010101 \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_value_display_1.golden b/plutus-ledger-api/tests/testdata/v1_value_display_1.golden index 7e190900..d3e40d2d 100644 --- a/plutus-ledger-api/tests/testdata/v1_value_display_1.golden +++ b/plutus-ledger-api/tests/testdata/v1_value_display_1.golden @@ -1 +1 @@ - 234+00000000000000000000000000000000000000000000000000000000.536f6d657468696e67 123 \ No newline at end of file + 234+01010101010101010101010101010101010101010101010101010101.536f6d657468696e67 123 \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_value_display_2.golden b/plutus-ledger-api/tests/testdata/v1_value_display_2.golden index 7e190900..d3e40d2d 100644 --- a/plutus-ledger-api/tests/testdata/v1_value_display_2.golden +++ b/plutus-ledger-api/tests/testdata/v1_value_display_2.golden @@ -1 +1 @@ - 234+00000000000000000000000000000000000000000000000000000000.536f6d657468696e67 123 \ No newline at end of file + 234+01010101010101010101010101010101010101010101010101010101.536f6d657468696e67 123 \ No newline at end of file From 36c41331f8aa274994525779f82243a03ab13a79 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 7 Nov 2024 14:57:15 +0100 Subject: [PATCH 39/94] Final touches before v2 --- plutus-ledger-api/CHANGELOG.md | 8 +- plutus-ledger-api/src/aux.rs | 9 +- plutus-ledger-api/src/v1/crypto.rs | 28 +--- plutus-ledger-api/src/v1/script.rs | 19 --- plutus-ledger-api/src/v1/transaction.rs | 50 ++++--- plutus-ledger-api/src/v1/value.rs | 127 +++++++++--------- plutus-ledger-api/src/v3/transaction.rs | 8 +- .../tests/display.proptest-regressions | 3 +- .../tests/testdata/v1_value_display_1.golden | 2 +- .../tests/testdata/v1_value_display_2.golden | 2 +- 10 files changed, 118 insertions(+), 138 deletions(-) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index 2964b754..d40ac65d 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -8,14 +8,14 @@ Changelog](https://keepachangelog.com/en/1.1.0). ### Added -- Added cardano-serialization-lib conversion traits (`ToCSL` and `FromCSL`) +- Added cardano-serialization-lib conversion traits (`ToCSL` and `FromCSL`) ([#55](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/55)) - Added v3 plutus ledger types ([#57](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/57)) - Added the ability to derive `IsPlutusData` instances ([#56](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/56)) -- Added a few utility functions for Values +- Added a few utility functions for Values ([#55](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/55)) - Added Display and Debug implementations for - CurrencySymbol, TokenName, Value, AddressWithExtraInfo and some other types + CurrencySymbol, TokenName, Value, AddressWithExtraInfo and some other types ([#55](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/55)) - Added FromStr implementations for CurrencySymbol, TokenName, Value, Address - and some other types + and some other types ([#55](https://github.com/mlabs-haskell/plutus-ledger-api-rust/pull/55)) ### Changed diff --git a/plutus-ledger-api/src/aux.rs b/plutus-ledger-api/src/aux.rs index c98c9301..a4329829 100644 --- a/plutus-ledger-api/src/aux.rs +++ b/plutus-ledger-api/src/aux.rs @@ -65,7 +65,12 @@ pub fn union_b_tree_maps_with, expected: usize) -> Result, ConversionError> { +/// Verify that a given bytestring has the expected length +pub(crate) fn guard_bytes( + ctx: &str, + bytes: Vec, + expected: usize, +) -> Result, ConversionError> { if bytes.len() == expected { Ok(bytes) } else { @@ -75,6 +80,8 @@ pub fn guard_bytes(ctx: &str, bytes: Vec, expected: usize) -> Result } } +/// Nom parser for BigInt +/// Expects an arbitrary length integer, optionally signed pub(crate) fn big_int(i: &str) -> IResult<&str, BigInt, VerboseError<&str>> { map_res( recognize(tuple((opt(alt((char('-'), char('+')))), many1(digit1)))), diff --git a/plutus-ledger-api/src/v1/crypto.rs b/plutus-ledger-api/src/v1/crypto.rs index c7e7ee8d..25ed6bd5 100644 --- a/plutus-ledger-api/src/v1/crypto.rs +++ b/plutus-ledger-api/src/v1/crypto.rs @@ -8,7 +8,6 @@ use nom::{combinator::map_res, error::VerboseError, IResult}; use serde::{Deserialize, Serialize}; use crate as plutus_ledger_api; -use crate::error::ConversionError; use crate::{ csl::{ csl_to_pla::FromCSL, @@ -95,6 +94,9 @@ impl std::fmt::Display for LedgerBytes { } } +/// Nom parser for LedgerBytes +/// Expects a hexadecimal string of arbitrary length (0 length is allowed) +/// E.g.: 00112233445566778899aabbcc pub(crate) fn ledger_bytes(input: &str) -> IResult<&str, LedgerBytes, VerboseError<&str>> { map_res(nom::character::complete::hex_digit0, |hex_bytes: &str| { HEXLOWER @@ -103,30 +105,6 @@ pub(crate) fn ledger_bytes(input: &str) -> IResult<&str, LedgerBytes, VerboseErr })(input) } -pub(crate) fn hash28(input: &str) -> IResult<&str, LedgerBytes, VerboseError<&str>> { - map_res(ledger_bytes, |bytes: LedgerBytes| { - if bytes.0.len() == 28 { - Ok(bytes) - } else { - Err(ConversionError::invalid_bytestring_length( - "hash28", 28, "equal to", &bytes.0, - )) - } - })(input) -} - -pub(crate) fn hash32(input: &str) -> IResult<&str, LedgerBytes, VerboseError<&str>> { - map_res(ledger_bytes, |bytes: LedgerBytes| { - if bytes.0.len() == 32 { - Ok(bytes) - } else { - Err(ConversionError::invalid_bytestring_length( - "hash32", 32, "equal to", &bytes.0, - )) - } - })(input) -} - #[cfg(feature = "lbf")] impl Json for LedgerBytes { fn to_json(&self) -> serde_json::Value { diff --git a/plutus-ledger-api/src/v1/script.rs b/plutus-ledger-api/src/v1/script.rs index f83b3988..28dd3586 100644 --- a/plutus-ledger-api/src/v1/script.rs +++ b/plutus-ledger-api/src/v1/script.rs @@ -4,9 +4,6 @@ use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use lbr_prelude::json::Json; -use nom::combinator::map; -use nom::error::{context, VerboseError}; -use nom::IResult; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; @@ -18,8 +15,6 @@ use crate::error::ConversionError; use crate::plutus_data::IsPlutusData; use crate::v1::crypto::LedgerBytes; -use super::crypto::hash28; - /////////////////// // ValidatorHash // /////////////////// @@ -43,10 +38,6 @@ impl ValidatorHash { } } -pub(crate) fn validator_hash(input: &str) -> IResult<&str, ValidatorHash, VerboseError<&str>> { - context("validator_hash", map(script_hash, ValidatorHash))(input) -} - /////////////////////// // MintingPolicyHash // /////////////////////// @@ -76,12 +67,6 @@ impl TryFromPLA for csl::PolicyID { } } -pub(crate) fn minting_policy_hash( - input: &str, -) -> IResult<&str, MintingPolicyHash, VerboseError<&str>> { - context("minting_policy_hash", map(script_hash, MintingPolicyHash))(input) -} - //////////////// // ScriptHash // //////////////// @@ -115,7 +100,3 @@ impl TryFromPLA for csl::ScriptHash { .map_err(TryFromPLAError::CSLDeserializeError) } } - -pub(crate) fn script_hash(input: &str) -> IResult<&str, ScriptHash, VerboseError<&str>> { - context("script_hash", map(hash28, ScriptHash))(input) -} diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index 21c18b67..05f25f53 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -7,9 +7,9 @@ use cardano_serialization_lib as csl; use lbr_prelude::json::Json; use nom::{ character::complete::char, - combinator::{all_consuming, map}, + combinator::{all_consuming, map, map_res}, error::{context, VerboseError}, - sequence::preceded, + sequence::{preceded, tuple}, Finish, IResult, }; use num_bigint::BigInt; @@ -18,13 +18,16 @@ use serde::{Deserialize, Serialize}; use super::{ address::{Address, StakingCredential}, - crypto::{hash32, LedgerBytes, PaymentPubKeyHash}, + crypto::{ledger_bytes, LedgerBytes, PaymentPubKeyHash}, datum::{Datum, DatumHash}, interval::PlutusInterval, value::{CurrencySymbol, Value}, }; -use crate::{self as plutus_ledger_api, aux::big_int}; +use crate::{ + self as plutus_ledger_api, + aux::{big_int, guard_bytes}, +}; use crate::{ csl::pla_to_csl::{TryFromPLAError, TryToCSL}, plutus_data::IsPlutusData, @@ -93,20 +96,19 @@ impl TryFromPLA> for csl::TransactionInputs { } } +/// Nom parser for TransactionInput +/// Expects a transaction hash of 32 bytes in hexadecimal followed by a # and an integer index +/// E.g.: 1122334455667788990011223344556677889900112233445566778899001122#1 pub(crate) fn transaction_input( input: &str, ) -> IResult<&str, TransactionInput, VerboseError<&str>> { - let (input, tx_id) = transaction_hash(input)?; - - let (input, idx) = preceded(char('#'), big_int)(input)?; - - Ok(( - input, - TransactionInput { - transaction_id: tx_id, - index: idx, + map( + tuple((transaction_hash, preceded(char('#'), big_int))), + |(transaction_id, index)| TransactionInput { + transaction_id, + index, }, - )) + )(input) } impl FromStr for TransactionInput { @@ -146,6 +148,16 @@ impl fmt::Display for TransactionHash { } } +impl TransactionHash { + pub fn from_bytes(bytes: Vec) -> Result { + Ok(TransactionHash(LedgerBytes(guard_bytes( + "ScriptHash", + bytes, + 32, + )?))) + } +} + impl FromCSL for TransactionHash { fn from_csl(value: &csl::TransactionHash) -> Self { TransactionHash(LedgerBytes(value.to_bytes())) @@ -159,8 +171,16 @@ impl TryFromPLA for csl::TransactionHash { } } +/// Nom parser for TransactionHash +/// Expects a hexadecimal string representation of 32 bytes +/// E.g.: 1122334455667788990011223344556677889900112233445566778899001122 pub(crate) fn transaction_hash(input: &str) -> IResult<&str, TransactionHash, VerboseError<&str>> { - context("transaction_hash", map(hash32, TransactionHash))(input) + context( + "transaction_hash", + map_res(ledger_bytes, |LedgerBytes(bytes)| { + TransactionHash::from_bytes(bytes) + }), + )(input) } impl FromStr for TransactionHash { diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index a72907de..41c482f0 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -13,10 +13,11 @@ use anyhow::anyhow; use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use lbr_prelude::json::{Error, Json, JsonType}; +use nom::combinator::{map, opt}; use nom::{ branch::alt, character::complete::{char, space0}, - combinator::{all_consuming, eof, map, map_res, success}, + combinator::{all_consuming, eof, map_res, success}, error::{context, VerboseError}, multi::separated_list0, sequence::preceded, @@ -40,7 +41,6 @@ use crate::v1::crypto::LedgerBytes; use crate::v1::script::{MintingPolicyHash, ScriptHash}; use super::crypto::ledger_bytes; -use super::script::minting_policy_hash; //////////////////// // CurrencySymbol // @@ -65,6 +65,13 @@ impl CurrencySymbol { )?)) } } + + pub fn is_ada(&self) -> bool { + match self { + CurrencySymbol::Ada => true, + CurrencySymbol::NativeToken(_) => false, + } + } } impl fmt::Display for CurrencySymbol { @@ -103,7 +110,7 @@ impl IsPlutusData for CurrencySymbol { fn to_plutus_data(&self) -> PlutusData { match self { CurrencySymbol::NativeToken(policy_hash) => policy_hash.to_plutus_data(), - CurrencySymbol::Ada => String::from("").to_plutus_data(), + CurrencySymbol::Ada => PlutusData::Bytes(Vec::with_capacity(0)), } } @@ -145,24 +152,14 @@ impl Json for CurrencySymbol { } } +/// Nom parser for CurrencySymbol +/// Expects a hexadecimal string representation of 0 (Ada) or 28 bytes (NativeToken) pub(crate) fn currency_symbol(input: &str) -> IResult<&str, CurrencySymbol, VerboseError<&str>> { context( "currency symbol", - alt(( - map_res(ledger_bytes, |bytes: LedgerBytes| { - if bytes.0.is_empty() { - Ok(CurrencySymbol::Ada) - } else { - Err(ConversionError::invalid_bytestring_length( - "currency_symbol_ada", - 0, - "equal to", - &bytes.0, - )) - } - }), - map(minting_policy_hash, CurrencySymbol::NativeToken), - )), + map_res(ledger_bytes, |LedgerBytes(bytes)| { + CurrencySymbol::from_bytes(bytes) + }), )(input) } @@ -294,22 +291,14 @@ impl Value { pub fn is_subset(&self, b: &Value) -> bool { (b - self) - .clone() .normalize() // Has negative entries? .filter(|_, _, amount| amount < &BigInt::from(0u32)) .is_empty() } - pub fn is_pure_ada(self) -> bool { - let inner = self.normalize().0; - let inner: Vec<_> = inner.into_iter().collect(); - - match inner.as_slice() { - [] => true, - [(cs, _)] => cs == &CurrencySymbol::Ada, - _ => false, - } + pub fn is_pure_ada(&self) -> bool { + self.0.iter().all(|(cs, _)| cs == &CurrencySymbol::Ada) } /// Apply a function to each token of the value, and use its result as the new amount. @@ -357,6 +346,7 @@ impl Value { } /// Create a vector with each distinct value + /// Warning: is the value is not normalized, the same asset class can appear twice pub fn flatten(&self) -> Vec<(&CurrencySymbol, &TokenName, &BigInt)> { self.0 .iter() @@ -386,10 +376,12 @@ impl fmt::Display for Value { }) .peekable(); while let Some((cur_sym, tn, amount)) = it.next() { - if tn.is_empty() { - write!(f, "{} {}", cur_sym, amount)?; + if cur_sym.is_ada() { + write!(f, "{}", amount)?; + } else if tn.is_empty() { + write!(f, "{} {}", amount, cur_sym)?; } else { - write!(f, "{}.{} {}", cur_sym, tn, amount)?; + write!(f, "{} {}.{}", amount, cur_sym, tn)?; } if it.peek().is_some() { write!(f, "+")?; @@ -400,22 +392,33 @@ impl fmt::Display for Value { } } +/// Nom parser for a single entry in a Value +/// Expects an integer quantity, followed by an asset class after a space character +/// (space is not required for Ada) +/// E.g.: 12 11223344556677889900112233445566778899001122334455667788.001122aabbcc pub(crate) fn flat_value( input: &str, ) -> IResult<&str, (CurrencySymbol, TokenName, BigInt), VerboseError<&str>> { - let (input, cs) = currency_symbol(input)?; - - let (input, tn) = alt((preceded(char('.'), token_name), success(TokenName::ada())))(input)?; - - let (input, amount) = preceded(char(' '), big_int)(input)?; - - Ok((input, (cs, tn, amount))) + map( + tuple((big_int, opt(preceded(char(' '), asset_class)))), + |(amount, asset_class)| match asset_class { + None => (CurrencySymbol::Ada, TokenName::ada(), amount), + Some(AssetClass { + currency_symbol, + token_name, + }) => (currency_symbol, token_name, amount), + }, + )(input) } +/// Nom parser for Value +/// Expects flat Value entries divided by a `+` sign +/// E.g.: 123+12 11223344556677889900112233445566778899001122334455667788.001122aabbcc pub(crate) fn value(input: &str) -> IResult<&str, Value, VerboseError<&str>> { - let (input, flat_values) = separated_list0(tuple((space0, char('+'))), flat_value)(input)?; - - Ok((input, Value::unflatten(&flat_values))) + map( + separated_list0(tuple((space0, char('+'))), flat_value), + |flat_values| Value::unflatten(&flat_values), + )(input) } impl FromStr for Value { @@ -636,21 +639,12 @@ impl FromCSL for BTreeMap { impl FromCSL for BTreeMap { fn from_csl(value: &csl::MintsAssets) -> Self { - let mut m_ass_vec = Vec::new(); - - // This is so stupid. `MintsAssets` doesn't have a `len` method for some reason. - for idx in 0.. { - if let Some(m_ass) = value.get(idx) { - m_ass_vec.push(m_ass); - } else { - break; - } - } - - m_ass_vec.into_iter().fold(BTreeMap::new(), |acc, m| { - let ass = BTreeMap::from_csl(&m); - union_b_tree_maps_with(|l, r| l + r, [&acc, &ass]) - }) + (0..value.len()) + .map(|idx| value.get(idx).unwrap()) + .fold(BTreeMap::new(), |acc, m| { + let ass = BTreeMap::from_csl(&m); + union_b_tree_maps_with(|l, r| l + r, [&acc, &ass]) + }) } } @@ -744,18 +738,11 @@ impl FromStr for TokenName { } } +/// Nom parser for TokenName +/// Expects a hexadecimal string representation of up to 32 pub(crate) fn token_name(input: &str) -> IResult<&str, TokenName, VerboseError<&str>> { - map_res(ledger_bytes, |bytes: LedgerBytes| { - if bytes.0.len() <= 32 { - Ok(TokenName(bytes)) - } else { - Err(ConversionError::invalid_bytestring_length( - "token_name", - 32, - "less than or equal to", - &bytes.0, - )) - } + map_res(ledger_bytes, |LedgerBytes(bytes)| { + TokenName::from_bytes(bytes) })(input) } @@ -836,6 +823,12 @@ impl FromStr for AssetClass { } } +/// Nom parser for AssetClass +/// Expects a currency symbol and token name both in hexadecimal format, divided by a `.` +/// In case the token name is empty, the divider is not required +/// E.g.: +/// - 11223344556677889900112233445566778899001122334455667788.001122aabbcc +/// - 11223344556677889900112233445566778899001122334455667788 pub(crate) fn asset_class(input: &str) -> IResult<&str, AssetClass, VerboseError<&str>> { let (input, cs) = currency_symbol(input)?; diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index 68cf9987..124a0d50 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -6,20 +6,22 @@ use num_bigint::BigInt; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +pub use crate::v2::transaction::{ + DCert, POSIXTime, POSIXTimeRange, TransactionHash, TransactionInput, TransactionOutput, + TxInInfo, +}; use crate::{ self as plutus_ledger_api, plutus_data::{IsPlutusData, PlutusData}, - v1::{ + v2::{ address::{Credential, StakingCredential}, assoc_map::AssocMap, crypto::{PaymentPubKeyHash, StakePubKeyHash}, datum::{Datum, DatumHash}, redeemer::Redeemer, script::ScriptHash, - transaction::{POSIXTimeRange, TransactionHash, TransactionInput}, value::{CurrencySymbol, Lovelace, Value}, }, - v2::transaction::{TransactionOutput, TxInInfo}, }; use super::ratio::Rational; diff --git a/plutus-ledger-api/tests/display.proptest-regressions b/plutus-ledger-api/tests/display.proptest-regressions index 193e2d7a..8a57c053 100644 --- a/plutus-ledger-api/tests/display.proptest-regressions +++ b/plutus-ledger-api/tests/display.proptest-regressions @@ -4,5 +4,4 @@ # # It is recommended to check this file in to source control so that # everyone who runs the test benefits from these saved cases. -cc f28698f393b1933268f15226ce5938cff4237e12ddbc2a4a043362f4d8b53dd4 # shrinks to val = "ࡀA\u{ec8}a𑵐𞟨𐨀Ø\u{16d70}0ꫛ\u{fe20}" -cc dafca272147ae56cc689fcc524f9eacc984ab5edb7d8a870c3beaccff6c283cd # shrinks to val = Ada +cc 73e529160154e82412cbfecc3b5a54e6a585c636492eb877021b4c25b26db267 # shrinks to val = Value({NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000001): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000002): 0, TokenName(00000000000000000d8229a17eadcd1469253bcf6608a65f314403f587053ff7): 2532403571, TokenName(a1dec97f4b53d0132fe7d16be928c0c0a5011a72c0f9e9a60bb9f132daa07ac2): 3411616235}, NativeToken(MintingPolicyHash(ScriptHash(14feaea1bd1512f19932541c80e80b812cdc077b9aef3029def6a5ff))): {TokenName(1ecc82a9216cd1427121349b5938c84bfef7be11e2e21a6b340efb53bdb45300): 157640827, TokenName(455e7a15711940029516f9c067cb1265a8936e7259cda7eaf31a9762631bd2b9): 1600413667, TokenName(4a15e3aad05949bdc39b8be95c34ef1e62df160ba30d2db99cdb6e4972d8a795): 1073007635, TokenName(bdf633bf616fb212d576c9c20452aafd0aebd75bc3f2777cdbea01390f901edb): 3043700082, TokenName(e55bff3749413a05be28429b438571ac00d22e168b503ecf1013810b211dcf45): 1834019470}, NativeToken(MintingPolicyHash(ScriptHash(1d89f770dd9bd49da8231bb541ecd05d0e3dd236feec524913a555a2))): {TokenName(09e255fc19f1e0df017e7b3f1fb0ac82b01c153ae99797032d8a3e5f59e3cb8b): 4022630384, TokenName(49d5d8a619f37f4f248cfc841048b888a1acda182c755d41c73de2e77ebc5a83): 3987855178, TokenName(9bc27e3f4f41169d57f3a20e1c05a439eb3de67ad6c3ec8abee445cf38f481e5): 3154222365, TokenName(b0a06e6ed40fce0fe5a010bfa90418ddfbd1946112f9aacead0c5c9c3930d56a): 4232555145, TokenName(f81c9b9e7c9d7cf2f2064c7ffa45bec406ff8e64c73af32f895227af0c9c3119): 630069146}, NativeToken(MintingPolicyHash(ScriptHash(1e2f1b28fac0aaa1c3441067c84b627029f457162b09180012130a7e))): {TokenName(252cf7e62a173276b0d3456692f5e8e99ae54add9f431fa6389a4267d7f343ff): 2154752195, TokenName(3d0e87e8d9abb3699a52dcde08a9ae7d0db5d9930a129e93e8a575f410b2c109): 3258224356, TokenName(ca1b2950c30003112df27daf27cb6d2626d7a3703c8aaf9e46387c837f797604): 2836533300, TokenName(d6673a538989a4c2724b8f8209bf598d9b9df7fa975b8e759956a7b783a611c3): 3731206483, TokenName(d68f5b751be1db24cfeb351249099a927ce5fb7f788e028643e19035a2432011): 3732451668}, NativeToken(MintingPolicyHash(ScriptHash(879ffd1e552ce28c55918753e93d727a05aceb6536ab96c56158ec62))): {TokenName(51079e8bfb848c45ba01fa809249a5d9a778dbd8c9460e09ac0a9e1e34b19229): 1211516382, TokenName(8322395ec5772b6951c777489b83f17127f211fa21ceb932548fa2a0cb24dc81): 1518100146, TokenName(94aaf59094956df10dc8e263ee1124bd0b05434029523936dc73a5d553ae3bed): 2119556654, TokenName(b926a6a398efef951640205e5db37df783caa5fde6d5e2c8609db8245dec4efe): 1265886353, TokenName(ca2424736877c1299a8af23e22b86d89ca356ea88b0ea54a1168ac5d06fef7ff): 566447027}}) diff --git a/plutus-ledger-api/tests/testdata/v1_value_display_1.golden b/plutus-ledger-api/tests/testdata/v1_value_display_1.golden index d3e40d2d..c7d22410 100644 --- a/plutus-ledger-api/tests/testdata/v1_value_display_1.golden +++ b/plutus-ledger-api/tests/testdata/v1_value_display_1.golden @@ -1 +1 @@ - 234+01010101010101010101010101010101010101010101010101010101.536f6d657468696e67 123 \ No newline at end of file +234+123 01010101010101010101010101010101010101010101010101010101.536f6d657468696e67 \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_value_display_2.golden b/plutus-ledger-api/tests/testdata/v1_value_display_2.golden index d3e40d2d..c7d22410 100644 --- a/plutus-ledger-api/tests/testdata/v1_value_display_2.golden +++ b/plutus-ledger-api/tests/testdata/v1_value_display_2.golden @@ -1 +1 @@ - 234+01010101010101010101010101010101010101010101010101010101.536f6d657468696e67 123 \ No newline at end of file +234+123 01010101010101010101010101010101010101010101010101010101.536f6d657468696e67 \ No newline at end of file From c21d9ecd4d2f50f94ff378ca2381bd914e07ce08 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 7 Nov 2024 14:57:31 +0100 Subject: [PATCH 40/94] Migrate over csl roundtrip tests --- plutus-ledger-api/tests/csl.rs | 132 +++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) create mode 100644 plutus-ledger-api/tests/csl.rs diff --git a/plutus-ledger-api/tests/csl.rs b/plutus-ledger-api/tests/csl.rs new file mode 100644 index 00000000..78a7fa24 --- /dev/null +++ b/plutus-ledger-api/tests/csl.rs @@ -0,0 +1,132 @@ +#[cfg(test)] +mod csl_pla_roundtrip_tests { + use cardano_serialization_lib as csl; + use num_bigint::BigInt; + use plutus_ledger_api::{ + csl::{ + csl_to_pla::{FromCSL, TryFromCSL}, + pla_to_csl::TryToCSL, + }, + generators::correct::v1::{ + arb_address, arb_certificate_index, arb_chain_pointer, arb_credential, arb_datum_hash, + arb_ed25519_pub_key_hash, arb_minting_policy_hash, arb_plutus_data, arb_script_hash, + arb_slot, arb_token_name, arb_transaction_hash, arb_transaction_index, + arb_transaction_input, arb_value, + }, + v1::{ + address::{Address, StakingCredential}, + value::Value, + }, + }; + use proptest::{prop_assert_eq, proptest, strategy::Strategy, test_runner::TestCaseError}; + + fn try_to_from_prop + FromCSL + PartialEq + std::fmt::Debug>( + v: A, + ) -> Result<(), TestCaseError> { + Ok(prop_assert_eq!( + A::from_csl(&>::try_to_csl(&v)?), + v + )) + } + + fn try_to_try_from_prop + TryFromCSL + PartialEq + std::fmt::Debug>( + v: A, + ) -> Result<(), TestCaseError> { + Ok(prop_assert_eq!( + A::try_from_csl(&>::try_to_csl(&v)?)?, + v + )) + } + + proptest! { + #[test] + fn test_token_name(val in arb_token_name()) { + try_to_from_prop(val)? + } + + #[test] + fn test_minting_policy_hash(val in arb_minting_policy_hash()) { + try_to_from_prop(val)? + } + + // This is special because the CSL machinery always puts in at least a zero Ada in the value + // But the arbitrary generated value by PLA does not. + #[test] + fn test_value(val in arb_value()) { + let csl_val: csl::Value = val.try_to_csl()?; + prop_assert_eq!( + Value::from_csl(&csl_val), + // Add a zero ada value. + Value::ada_value(&BigInt::from(0)) + val + ) + } + + #[test] + fn test_transaction_hash(val in arb_transaction_hash()) { + try_to_from_prop(val)? + } + + #[test] + fn test_transaction_input(val in arb_transaction_input()) { + try_to_from_prop(val)? + } + + #[test] + fn test_ed25519_pub_key_hash(val in arb_ed25519_pub_key_hash()) { + try_to_from_prop::(val)? + } + + #[test] + fn test_script_hash(val in arb_script_hash()) { + try_to_from_prop(val)? + } + + #[test] + fn test_staking_credential(val in arb_credential().prop_map(StakingCredential::Hash)) { + try_to_from_prop::(val)? + } + + #[test] + fn test_credential(val in arb_credential()) { + try_to_from_prop(val)? + } + + #[test] + fn test_slot(val in arb_slot()) { + try_to_from_prop(val)? + } + + #[test] + fn test_transaction_index(val in arb_transaction_index()) { + try_to_from_prop(val)? + } + + #[test] + fn test_certificate_index(val in arb_certificate_index()) { + try_to_from_prop(val)? + } + + #[test] + fn test_chain_pointer(val in arb_chain_pointer()) { + try_to_from_prop(val)? + } + + #[test] + fn test_plutus_data(val in arb_plutus_data()) { + try_to_try_from_prop(val)? + } + + #[test] + fn test_datum_hash(val in arb_datum_hash()) { + try_to_from_prop(val)? + } + + #[test] + fn test_address(val in arb_address()) { + prop_assert_eq!( + Address::try_from_csl(&val.with_extra_info(1).try_to_csl()?)?, + val + ) + } + } +} From 12109485e3a525e60e162bcbb4eaa0bc3cfbe3e5 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 7 Nov 2024 15:08:10 +0100 Subject: [PATCH 41/94] Address PR comments --- plutus-ledger-api/src/aux.rs | 2 +- plutus-ledger-api/tests/display.proptest-regressions | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) delete mode 100644 plutus-ledger-api/tests/display.proptest-regressions diff --git a/plutus-ledger-api/src/aux.rs b/plutus-ledger-api/src/aux.rs index a4329829..7c854bd9 100644 --- a/plutus-ledger-api/src/aux.rs +++ b/plutus-ledger-api/src/aux.rs @@ -81,7 +81,7 @@ pub(crate) fn guard_bytes( } /// Nom parser for BigInt -/// Expects an arbitrary length integer, optionally signed +/// Expects an arbitrary length decimal integer, optionally signed pub(crate) fn big_int(i: &str) -> IResult<&str, BigInt, VerboseError<&str>> { map_res( recognize(tuple((opt(alt((char('-'), char('+')))), many1(digit1)))), diff --git a/plutus-ledger-api/tests/display.proptest-regressions b/plutus-ledger-api/tests/display.proptest-regressions deleted file mode 100644 index 8a57c053..00000000 --- a/plutus-ledger-api/tests/display.proptest-regressions +++ /dev/null @@ -1,7 +0,0 @@ -# Seeds for failure cases proptest has generated in the past. It is -# automatically read and these particular cases re-run before any -# novel cases are generated. -# -# It is recommended to check this file in to source control so that -# everyone who runs the test benefits from these saved cases. -cc 73e529160154e82412cbfecc3b5a54e6a585c636492eb877021b4c25b26db267 # shrinks to val = Value({NativeToken(MintingPolicyHash(ScriptHash(00000000000000000000000000000000000000000000000000000000))): {TokenName(0000000000000000000000000000000000000000000000000000000000000000): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000001): 0, TokenName(0000000000000000000000000000000000000000000000000000000000000002): 0, TokenName(00000000000000000d8229a17eadcd1469253bcf6608a65f314403f587053ff7): 2532403571, TokenName(a1dec97f4b53d0132fe7d16be928c0c0a5011a72c0f9e9a60bb9f132daa07ac2): 3411616235}, NativeToken(MintingPolicyHash(ScriptHash(14feaea1bd1512f19932541c80e80b812cdc077b9aef3029def6a5ff))): {TokenName(1ecc82a9216cd1427121349b5938c84bfef7be11e2e21a6b340efb53bdb45300): 157640827, TokenName(455e7a15711940029516f9c067cb1265a8936e7259cda7eaf31a9762631bd2b9): 1600413667, TokenName(4a15e3aad05949bdc39b8be95c34ef1e62df160ba30d2db99cdb6e4972d8a795): 1073007635, TokenName(bdf633bf616fb212d576c9c20452aafd0aebd75bc3f2777cdbea01390f901edb): 3043700082, TokenName(e55bff3749413a05be28429b438571ac00d22e168b503ecf1013810b211dcf45): 1834019470}, NativeToken(MintingPolicyHash(ScriptHash(1d89f770dd9bd49da8231bb541ecd05d0e3dd236feec524913a555a2))): {TokenName(09e255fc19f1e0df017e7b3f1fb0ac82b01c153ae99797032d8a3e5f59e3cb8b): 4022630384, TokenName(49d5d8a619f37f4f248cfc841048b888a1acda182c755d41c73de2e77ebc5a83): 3987855178, TokenName(9bc27e3f4f41169d57f3a20e1c05a439eb3de67ad6c3ec8abee445cf38f481e5): 3154222365, TokenName(b0a06e6ed40fce0fe5a010bfa90418ddfbd1946112f9aacead0c5c9c3930d56a): 4232555145, TokenName(f81c9b9e7c9d7cf2f2064c7ffa45bec406ff8e64c73af32f895227af0c9c3119): 630069146}, NativeToken(MintingPolicyHash(ScriptHash(1e2f1b28fac0aaa1c3441067c84b627029f457162b09180012130a7e))): {TokenName(252cf7e62a173276b0d3456692f5e8e99ae54add9f431fa6389a4267d7f343ff): 2154752195, TokenName(3d0e87e8d9abb3699a52dcde08a9ae7d0db5d9930a129e93e8a575f410b2c109): 3258224356, TokenName(ca1b2950c30003112df27daf27cb6d2626d7a3703c8aaf9e46387c837f797604): 2836533300, TokenName(d6673a538989a4c2724b8f8209bf598d9b9df7fa975b8e759956a7b783a611c3): 3731206483, TokenName(d68f5b751be1db24cfeb351249099a927ce5fb7f788e028643e19035a2432011): 3732451668}, NativeToken(MintingPolicyHash(ScriptHash(879ffd1e552ce28c55918753e93d727a05aceb6536ab96c56158ec62))): {TokenName(51079e8bfb848c45ba01fa809249a5d9a778dbd8c9460e09ac0a9e1e34b19229): 1211516382, TokenName(8322395ec5772b6951c777489b83f17127f211fa21ceb932548fa2a0cb24dc81): 1518100146, TokenName(94aaf59094956df10dc8e263ee1124bd0b05434029523936dc73a5d553ae3bed): 2119556654, TokenName(b926a6a398efef951640205e5db37df783caa5fde6d5e2c8609db8245dec4efe): 1265886353, TokenName(ca2424736877c1299a8af23e22b86d89ca356ea88b0ea54a1168ac5d06fef7ff): 566447027}}) From 2d93aa3c7d4c19a09d5624f74e2195f7de887693 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 7 Nov 2024 15:21:42 +0100 Subject: [PATCH 42/94] Update cargo files --- is-plutus-data-derive/Cargo.lock | 2 +- is-plutus-data-derive/Cargo.toml | 7 +++++-- plutus-ledger-api/Cargo.lock | 2 +- plutus-ledger-api/Cargo.toml | 2 +- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/is-plutus-data-derive/Cargo.lock b/is-plutus-data-derive/Cargo.lock index 00cbc005..d3c6e310 100644 --- a/is-plutus-data-derive/Cargo.lock +++ b/is-plutus-data-derive/Cargo.lock @@ -4,7 +4,7 @@ version = 3 [[package]] name = "is-plutus-data-derive" -version = "0.1.0" +version = "1.0.0" dependencies = [ "proc-macro2", "quote", diff --git a/is-plutus-data-derive/Cargo.toml b/is-plutus-data-derive/Cargo.toml index 770f5199..0e6ac4b5 100644 --- a/is-plutus-data-derive/Cargo.toml +++ b/is-plutus-data-derive/Cargo.toml @@ -1,12 +1,15 @@ [package] name = "is-plutus-data-derive" -version = "0.1.0" +version = "1.0.0" edition = "2021" +license = "Apache-2.0" +description = "Derive macro for IsPlutusData" +repository = "https://github.com/mlabs-haskell/plutus-ledger-api-rust" [dependencies] proc-macro2 = "^1.0.66" quote = "1.0.37" -syn = { version = "2.0.79", features = ["full", "extra-traits"]} +syn = { version = "2.0.79", features = ["full", "extra-traits"] } thiserror = "1.0.64" [lib] diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index a4455ab6..522057a8 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -400,7 +400,7 @@ dependencies = [ [[package]] name = "is-plutus-data-derive" -version = "0.1.0" +version = "1.0.0" dependencies = [ "proc-macro2", "quote", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 9164feb1..161a7ef8 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -21,7 +21,7 @@ num-traits = "~0.2.17" impl_ops = "0.1.1" chrono = { version = "0.4.34", optional = true } cardano-serialization-lib = "12.1.1" -is-plutus-data-derive = { path = ".extras/is-plutus-data-derive-0" } +is-plutus-data-derive = { version = "1.0.0", path = ".extras/is-plutus-data-derive-0" } anyhow = "1.0.86" nom = "7.1.3" From 4e43169dcd36f1629adbdf885eb7d0dc0139a60e Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Fri, 8 Nov 2024 09:38:11 +0100 Subject: [PATCH 43/94] Bump csl --- plutus-ledger-api/CHANGELOG.md | 10 ++++++++++ plutus-ledger-api/Cargo.lock | 6 +++--- plutus-ledger-api/Cargo.toml | 4 ++-- plutus-ledger-api/src/csl/mod.rs | 1 + 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index d40ac65d..646cb9d5 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -4,6 +4,16 @@ This changelog is based on [Keep A Changelog](https://keepachangelog.com/en/1.1.0). +## v2.1.0 + +### Added + +- Re-exported cardano-serialization-lib as `plutus-ledger-api::csl::lib` + +### Changed + +- Updated to cardano-serialization-lib 13.1.0 + ## v2.0.0 ### Added diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 522057a8..c1e6988e 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -97,9 +97,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "cardano-serialization-lib" -version = "12.1.1" +version = "13.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72a6b87191e22d30d2fd9cf52a8db1acd0611d119f432e3dc676650c76f67840" +checksum = "a060cf6912878c0132ce9ac8577eb62f151ba8f00fe2e75a57f85260c696e421" dependencies = [ "bech32", "cbor_event", @@ -623,7 +623,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "2.0.0" +version = "2.1.0" dependencies = [ "anyhow", "cardano-serialization-lib", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 161a7ef8..d05ca5e5 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "2.0.0" +version = "2.1.0" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" @@ -20,7 +20,7 @@ linked-hash-map = "~0.5.6" num-traits = "~0.2.17" impl_ops = "0.1.1" chrono = { version = "0.4.34", optional = true } -cardano-serialization-lib = "12.1.1" +cardano-serialization-lib = "13.1.0" is-plutus-data-derive = { version = "1.0.0", path = ".extras/is-plutus-data-derive-0" } anyhow = "1.0.86" nom = "7.1.3" diff --git a/plutus-ledger-api/src/csl/mod.rs b/plutus-ledger-api/src/csl/mod.rs index 8af54b59..989ce28a 100644 --- a/plutus-ledger-api/src/csl/mod.rs +++ b/plutus-ledger-api/src/csl/mod.rs @@ -1,2 +1,3 @@ pub mod csl_to_pla; pub mod pla_to_csl; +pub use cardano_serialization_lib as lib; From 874b5597e4ba0e07627af50aad122d15e5a37c02 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Wed, 20 Nov 2024 16:06:11 +0100 Subject: [PATCH 44/94] Fix V3 typos --- plutus-ledger-api/CHANGELOG.md | 6 +++++ plutus-ledger-api/Cargo.lock | 2 +- plutus-ledger-api/Cargo.toml | 2 +- .../src/generators/correct/v3.rs | 24 +++++++++---------- plutus-ledger-api/src/v3/transaction.rs | 14 +++++------ plutus-ledger-api/tests/lbf.rs | 4 ++-- plutus-ledger-api/tests/plutus_data.rs | 4 ++-- plutus-ledger-api/tests/serde.rs | 4 ++-- 8 files changed, 33 insertions(+), 27 deletions(-) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index 646cb9d5..3bfadaa4 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -4,6 +4,12 @@ This changelog is based on [Keep A Changelog](https://keepachangelog.com/en/1.1.0). +## v2.2.0 + +### Changed + +- Fixed typos in V3 types + ## v2.1.0 ### Added diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index c1e6988e..2fb09948 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -623,7 +623,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "2.1.0" +version = "2.2.0" dependencies = [ "anyhow", "cardano-serialization-lib", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index d05ca5e5..f5d4e6f2 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "2.1.0" +version = "2.2.0" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" diff --git a/plutus-ledger-api/src/generators/correct/v3.rs b/plutus-ledger-api/src/generators/correct/v3.rs index 6e7f5bc3..6bdcfe0e 100644 --- a/plutus-ledger-api/src/generators/correct/v3.rs +++ b/plutus-ledger-api/src/generators/correct/v3.rs @@ -20,9 +20,9 @@ use crate::{ v3::{ ratio::Rational, transaction::{ - ChangeParameters, ColdCommitteeCredential, Committee, Constitution, DRep, + ChangedParameters, ColdCommitteeCredential, Committee, Constitution, DRep, DRepCredential, Delegatee, GovernanceAction, GovernanceActionId, - HotCommitteeCredential, ProtocolProcedure, ProtocolVersion, ScriptContext, ScriptInfo, + HotCommitteeCredential, ProposalProcedure, ProtocolVersion, ScriptContext, ScriptInfo, ScriptPurpose, TransactionInfo, TxCert, Vote, Voter, }, }, @@ -145,8 +145,8 @@ pub fn arb_protocol_version() -> impl Strategy { } /// Strategy to generate change parameters -pub fn arb_change_parameters() -> impl Strategy { - arb_plutus_data().prop_map(ChangeParameters) +pub fn arb_changed_parameters() -> impl Strategy { + arb_plutus_data().prop_map(ChangedParameters) } /// Strategy to generate governance actions @@ -154,7 +154,7 @@ pub fn arb_governance_action() -> impl Strategy { prop_oneof![ ( option::of(arb_governance_action_id()), - arb_change_parameters(), + arb_changed_parameters(), option::of(arb_script_hash()) ) .prop_map(|(g, c, s)| GovernanceAction::ParameterChange(g, c, s)), @@ -183,9 +183,9 @@ pub fn arb_governance_action() -> impl Strategy { } /// Strategy to generate protocol procedures -pub fn arb_protocol_procedure() -> impl Strategy { +pub fn arb_proposal_procedure() -> impl Strategy { (arb_lovelace(), arb_credential(), arb_governance_action()).prop_map(|(l, c, g)| { - ProtocolProcedure { + ProposalProcedure { deposit: l, return_addr: c, governance_action: g, @@ -201,7 +201,7 @@ pub fn arb_script_purpose() -> impl Strategy { arb_credential().prop_map(ScriptPurpose::Rewarding), (arb_integer(), arb_tx_cert()).prop_map(|(i, c)| ScriptPurpose::Certifying(i, c)), arb_voter().prop_map(ScriptPurpose::Voting), - (arb_integer(), arb_protocol_procedure()).prop_map(|(i, p)| ScriptPurpose::Proposing(i, p)) + (arb_integer(), arb_proposal_procedure()).prop_map(|(i, p)| ScriptPurpose::Proposing(i, p)) ] } @@ -214,7 +214,7 @@ pub fn arb_script_info() -> impl Strategy { arb_credential().prop_map(ScriptInfo::Rewarding), (arb_integer(), arb_tx_cert()).prop_map(|(i, c)| ScriptInfo::Certifying(i, c)), arb_voter().prop_map(ScriptInfo::Voting), - (arb_integer(), arb_protocol_procedure()).prop_map(|(i, p)| ScriptInfo::Proposing(i, p)) + (arb_integer(), arb_proposal_procedure()).prop_map(|(i, p)| ScriptInfo::Proposing(i, p)) ] } @@ -239,7 +239,7 @@ pub fn arb_transaction_info() -> impl Strategy { arb_voter(), arb_assoc_map(arb_governance_action_id(), arb_vote()), ), - vec(arb_protocol_procedure(), 5), + vec(arb_proposal_procedure(), 5), option::of(arb_lovelace()), option::of(arb_lovelace()), ), @@ -257,7 +257,7 @@ pub fn arb_transaction_info() -> impl Strategy { signatories, redeemers, datums, - (id, votes, protocol_procedures, current_treasury_amount, treasury_donation), + (id, votes, proposal_procedures, current_treasury_amount, treasury_donation), )| { TransactionInfo { inputs, @@ -273,7 +273,7 @@ pub fn arb_transaction_info() -> impl Strategy { datums, id, votes, - protocol_procedures, + proposal_procedures, current_treasury_amount, treasury_donation, } diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index 124a0d50..8c941653 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -162,7 +162,7 @@ pub struct ProtocolVersion { #[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] -pub struct ChangeParameters(pub PlutusData); +pub struct ChangedParameters(pub PlutusData); #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] @@ -172,7 +172,7 @@ pub enum GovernanceAction { /// Propose to change the protocol parameters ParameterChange( Option, - ChangeParameters, + ChangedParameters, // The hash of the constitution script Option, ), @@ -205,7 +205,7 @@ pub enum GovernanceAction { #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] -pub struct ProtocolProcedure { +pub struct ProposalProcedure { pub deposit: Lovelace, pub return_addr: Credential, pub governance_action: GovernanceAction, @@ -226,9 +226,9 @@ pub enum ScriptPurpose { ), Voting(Voter), Proposing( - /// 0-based index of the given `ProposalProcedure` in `protocol_procedures` field of the `TransactionInfo` + /// 0-based index of the given `ProposalProcedure` in `proposal_procedures` field of the `TransactionInfo` BigInt, - ProtocolProcedure, + ProposalProcedure, ), } @@ -242,7 +242,7 @@ pub enum ScriptInfo { Rewarding(Credential), Certifying(BigInt, TxCert), Voting(Voter), - Proposing(BigInt, ProtocolProcedure), + Proposing(BigInt, ProposalProcedure), } #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] @@ -263,7 +263,7 @@ pub struct TransactionInfo { pub datums: AssocMap, pub id: TransactionHash, pub votes: AssocMap>, - pub protocol_procedures: Vec, + pub proposal_procedures: Vec, pub current_treasury_amount: Option, pub treasury_donation: Option, } diff --git a/plutus-ledger-api/tests/lbf.rs b/plutus-ledger-api/tests/lbf.rs index 36e04106..4e27c7a4 100644 --- a/plutus-ledger-api/tests/lbf.rs +++ b/plutus-ledger-api/tests/lbf.rs @@ -227,7 +227,7 @@ mod lb_json_roundtrip_tests { } #[test] - fn test_change_parameters(val in arb_change_parameters()) { + fn test_changed_parameters(val in arb_changed_parameters()) { assert_eq!(val, from_to_json(&val)?) } @@ -238,7 +238,7 @@ mod lb_json_roundtrip_tests { } #[test] - fn test_protocol_procedure(val in arb_protocol_procedure()) { + fn test_proposal_procedure(val in arb_proposal_procedure()) { assert_eq!(val, from_to_json(&val)?) } diff --git a/plutus-ledger-api/tests/plutus_data.rs b/plutus-ledger-api/tests/plutus_data.rs index 66260894..6875b2e1 100644 --- a/plutus-ledger-api/tests/plutus_data.rs +++ b/plutus-ledger-api/tests/plutus_data.rs @@ -493,7 +493,7 @@ mod plutusdata_roundtrip_tests { #[test] - fn v3_change_parameters(val in arb_change_parameters()) { + fn v3_changed_parameters(val in arb_changed_parameters()) { assert_eq!(val, from_to_plutus_data(&val)?); } @@ -504,7 +504,7 @@ mod plutusdata_roundtrip_tests { } #[test] - fn v3_protocol_procedure(val in arb_protocol_procedure()) { + fn v3_proposal_procedure(val in arb_proposal_procedure()) { assert_eq!(val, from_to_plutus_data(&val)?); } diff --git a/plutus-ledger-api/tests/serde.rs b/plutus-ledger-api/tests/serde.rs index cc583b94..d7088c98 100644 --- a/plutus-ledger-api/tests/serde.rs +++ b/plutus-ledger-api/tests/serde.rs @@ -225,7 +225,7 @@ mod serde_roundtrip_tests { } #[test] - fn test_change_parameters(val in arb_change_parameters()) { + fn test_changed_parameters(val in arb_changed_parameters()) { assert_eq!(val, from_to_json(&val)?) } @@ -236,7 +236,7 @@ mod serde_roundtrip_tests { } #[test] - fn test_protocol_procedure(val in arb_protocol_procedure()) { + fn test_proposal_procedure(val in arb_proposal_procedure()) { assert_eq!(val, from_to_json(&val)?) } From 62f8e5a15e01a6d772964e6e1462bb155823f826 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Mon, 9 Dec 2024 17:04:31 +0100 Subject: [PATCH 45/94] Add missing reexports --- plutus-ledger-api/src/v3/transaction.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index 8c941653..87de8ea2 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -7,8 +7,8 @@ use num_bigint::BigInt; use serde::{Deserialize, Serialize}; pub use crate::v2::transaction::{ - DCert, POSIXTime, POSIXTimeRange, TransactionHash, TransactionInput, TransactionOutput, - TxInInfo, + DCert, POSIXTime, POSIXTimeRange, TransactionHash, TransactionId, TransactionInput, + TransactionOutput, TxInInfo, }; use crate::{ self as plutus_ledger_api, From cfa7faa2c51d21cbdfc140e74dadf74f5c79dba2 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Mon, 9 Dec 2024 21:08:46 +0100 Subject: [PATCH 46/94] Fix Display alternatives --- plutus-ledger-api/src/v1/address.rs | 3 ++ plutus-ledger-api/src/v1/transaction.rs | 1 + plutus-ledger-api/src/v1/value.rs | 28 +++++++++++++++---- plutus-ledger-api/src/v3/transaction.rs | 6 ++-- plutus-ledger-api/tests/display.rs | 7 ++++- ...golden => v1_asset_class_display_1.golden} | 0 .../testdata/v1_asset_class_display_2.golden | 1 + .../tests/testdata/v1_value_display_2.golden | 2 +- 8 files changed, 38 insertions(+), 10 deletions(-) rename plutus-ledger-api/tests/testdata/{v1_asset_class_display.golden => v1_asset_class_display_1.golden} (100%) create mode 100644 plutus-ledger-api/tests/testdata/v1_asset_class_display_2.golden diff --git a/plutus-ledger-api/src/v1/address.rs b/plutus-ledger-api/src/v1/address.rs index 1da054cf..0dc81378 100644 --- a/plutus-ledger-api/src/v1/address.rs +++ b/plutus-ledger-api/src/v1/address.rs @@ -85,6 +85,8 @@ impl TryFromCSL for Address { } #[derive(Clone, Debug)] +/// Address with network information. The `WithExtraInfo` variant has Display instance, serializing into +/// a bech32 address format. pub struct AddressWithExtraInfo<'a> { pub address: &'a Address, pub network_tag: u8, @@ -109,6 +111,7 @@ impl TryFromPLA> for csl::Address { } } +/// Serializing into a bech32 address format. impl std::fmt::Display for AddressWithExtraInfo<'_> { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { let bech32_addr: Option = self diff --git a/plutus-ledger-api/src/v1/transaction.rs b/plutus-ledger-api/src/v1/transaction.rs index 05f25f53..54f59f0f 100644 --- a/plutus-ledger-api/src/v1/transaction.rs +++ b/plutus-ledger-api/src/v1/transaction.rs @@ -54,6 +54,7 @@ pub struct TransactionInput { pub index: BigInt, } +/// Serializing into a hexadecimal tx hash, followed by an tx id after a # (e.g. aabbcc#1) impl fmt::Display for TransactionInput { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { write!(f, "{}#{}", self.transaction_id.0, self.index) diff --git a/plutus-ledger-api/src/v1/value.rs b/plutus-ledger-api/src/v1/value.rs index 41c482f0..92190b2e 100644 --- a/plutus-ledger-api/src/v1/value.rs +++ b/plutus-ledger-api/src/v1/value.rs @@ -74,6 +74,8 @@ impl CurrencySymbol { } } +/// Serialize into hexadecimal string, or empty string if Ada +/// It returns `lovelace` instead of the empty string when the alternate flag is used (e.g.: format!("{:#}", cs)) impl fmt::Display for CurrencySymbol { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { match self { @@ -377,14 +379,20 @@ impl fmt::Display for Value { .peekable(); while let Some((cur_sym, tn, amount)) = it.next() { if cur_sym.is_ada() { - write!(f, "{}", amount)?; + amount.fmt(f)?; } else if tn.is_empty() { - write!(f, "{} {}", amount, cur_sym)?; + amount.fmt(f)?; + " ".fmt(f)?; + cur_sym.fmt(f)?; } else { - write!(f, "{} {}.{}", amount, cur_sym, tn)?; + amount.fmt(f)?; + " ".fmt(f)?; + cur_sym.fmt(f)?; + ".".fmt(f)?; + tn.fmt(f)?; } if it.peek().is_some() { - write!(f, "+")?; + "+".fmt(f)?; } } @@ -756,6 +764,9 @@ impl IsPlutusData for TokenName { } } +/// Serialize into a hexadecimal string +/// It tries to decode the token name from UTF8 when the alternate flag is used (e.g.: format!("{:#}", ac)), +/// if failsed it prepends the hex value with `0x` impl fmt::Display for TokenName { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { if f.alternate() { @@ -796,12 +807,17 @@ pub struct AssetClass { pub token_name: TokenName, } +/// Serialize into two hexadecimal strings divided by a . (e.g. aabbcc.001122) +/// It tries to decode the token name from UTF8 when the alternate flag is used (e.g.: format!("{:#}", ac)), +/// if failsed it prepends the hex value with `0x` impl fmt::Display for AssetClass { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { if self.token_name.is_empty() { - write!(f, "{}", self.currency_symbol) + self.currency_symbol.fmt(f) } else { - write!(f, "{}.{}", self.currency_symbol, self.token_name) + self.currency_symbol.fmt(f)?; + ".".fmt(f)?; + self.token_name.fmt(f) } } } diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index 87de8ea2..1140b0e7 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -6,9 +6,11 @@ use num_bigint::BigInt; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; +#[cfg(feature = "chrono")] +pub use crate::v1::transaction::POSIXTimeConversionError; pub use crate::v2::transaction::{ - DCert, POSIXTime, POSIXTimeRange, TransactionHash, TransactionId, TransactionInput, - TransactionOutput, TxInInfo, + DCert, POSIXTime, POSIXTimeRange, TransactionHash, TransactionInput, TransactionOutput, + TransactionOutputWithExtraInfo, TxInInfo, WithdrawalsWithExtraInfo, }; use crate::{ self as plutus_ledger_api, diff --git a/plutus-ledger-api/tests/display.rs b/plutus-ledger-api/tests/display.rs index c0318aa1..96da0d60 100644 --- a/plutus-ledger-api/tests/display.rs +++ b/plutus-ledger-api/tests/display.rs @@ -55,10 +55,15 @@ mod display_serialisation_tests { } #[test] - fn v1_asset_class_display() { + fn v1_asset_class_display_1() { goldie::assert!(format!("{}", sample_asset_class())) } + #[test] + fn v1_asset_class_display_2() { + goldie::assert!(format!("{:#}", sample_asset_class())) + } + #[test] fn v1_value_display_1() { goldie::assert!(format!("{}", sample_value())) diff --git a/plutus-ledger-api/tests/testdata/v1_asset_class_display.golden b/plutus-ledger-api/tests/testdata/v1_asset_class_display_1.golden similarity index 100% rename from plutus-ledger-api/tests/testdata/v1_asset_class_display.golden rename to plutus-ledger-api/tests/testdata/v1_asset_class_display_1.golden diff --git a/plutus-ledger-api/tests/testdata/v1_asset_class_display_2.golden b/plutus-ledger-api/tests/testdata/v1_asset_class_display_2.golden new file mode 100644 index 00000000..8347e89d --- /dev/null +++ b/plutus-ledger-api/tests/testdata/v1_asset_class_display_2.golden @@ -0,0 +1 @@ +01010101010101010101010101010101010101010101010101010101.Something \ No newline at end of file diff --git a/plutus-ledger-api/tests/testdata/v1_value_display_2.golden b/plutus-ledger-api/tests/testdata/v1_value_display_2.golden index c7d22410..03eb27d6 100644 --- a/plutus-ledger-api/tests/testdata/v1_value_display_2.golden +++ b/plutus-ledger-api/tests/testdata/v1_value_display_2.golden @@ -1 +1 @@ -234+123 01010101010101010101010101010101010101010101010101010101.536f6d657468696e67 \ No newline at end of file +234+123 01010101010101010101010101010101010101010101010101010101.Something \ No newline at end of file From 9016fc0b8aefa34c1c3e8dbd21e2e40bfd3654f9 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Mon, 9 Dec 2024 21:11:05 +0100 Subject: [PATCH 47/94] Bump version --- plutus-ledger-api/CHANGELOG.md | 4 +++- plutus-ledger-api/Cargo.lock | 2 +- plutus-ledger-api/Cargo.toml | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index 3bfadaa4..89fe929c 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -1,14 +1,16 @@ + # Changelog This changelog is based on [Keep A Changelog](https://keepachangelog.com/en/1.1.0). -## v2.2.0 +## v3.0.0 ### Changed - Fixed typos in V3 types +- Fixed Display alternative implementations ## v2.1.0 diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 2fb09948..5884a194 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -623,7 +623,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "2.2.0" +version = "3.0.0" dependencies = [ "anyhow", "cardano-serialization-lib", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index f5d4e6f2..c5f7a8a1 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "2.2.0" +version = "3.0.0" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" From 32a0d6954846e432e6254ec4200be045ce1fe95a Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Mon, 9 Dec 2024 21:25:50 +0100 Subject: [PATCH 48/94] Update deps --- plutus-ledger-api/Cargo.lock | 88 ++++++++++++++++++------------------ plutus-ledger-api/Cargo.toml | 20 ++++---- 2 files changed, 54 insertions(+), 54 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 5884a194..60922335 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -31,9 +31,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.92" +version = "1.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74f37166d7d48a0284b99dd824694c26119c700b53bf0d1540cdb147dbdaaf13" +checksum = "c1fd03a028ef38ba2276dce7e33fcd6369c158a1bca17946c4b1b701891c1ff7" [[package]] name = "autocfg" @@ -97,9 +97,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "cardano-serialization-lib" -version = "13.1.0" +version = "13.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a060cf6912878c0132ce9ac8577eb62f151ba8f00fe2e75a57f85260c696e421" +checksum = "44ab8700b9a4bc42f48a06f9555ea28c7cb958a3cb470de5727b8e0d76c2a702" dependencies = [ "bech32", "cbor_event", @@ -137,9 +137,9 @@ checksum = "089a0261d1bc59e54e8e11860031efd88593f0e61b921172c474f1f38c2f2d3c" [[package]] name = "cc" -version = "1.1.34" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67b9470d453346108f93a59222a9a1a5724db32d0a4727b7ab7ace4b4d822dc9" +checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" dependencies = [ "shlex", ] @@ -152,9 +152,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.38" +version = "0.4.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" dependencies = [ "android-tzdata", "iana-time-zone", @@ -190,9 +190,9 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" -version = "0.2.14" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" +checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" dependencies = [ "libc", ] @@ -259,19 +259,19 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.9" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "fastrand" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" +checksum = "486f806e73c5707928240ddc295403b1b93c96a02038563881c4a2fd84b81ac4" [[package]] name = "fnv" @@ -340,9 +340,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" [[package]] name = "hashlink" @@ -390,12 +390,12 @@ checksum = "90f97a5f38dd3ccfbe7aa80f4a0c00930f21b922c74195be0201c51028f22dcf" [[package]] name = "indexmap" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", - "hashbrown 0.15.1", + "hashbrown 0.15.2", ] [[package]] @@ -419,9 +419,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.11" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "js-sys" @@ -467,9 +467,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.161" +version = "0.2.167" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" +checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" [[package]] name = "libm" @@ -664,9 +664,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.89" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -792,9 +792,9 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rustix" -version = "0.38.39" +version = "0.38.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "375116bee2be9ed569afe2154ea6a99dfdffd257f533f187498c2a8f5feaf4ee" +checksum = "d7f649912bc1495e167a6edee79151c84b1bad49748cb4f1f1167f459f6224f6" dependencies = [ "bitflags 2.6.0", "errno", @@ -847,9 +847,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.214" +version = "1.0.215" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55c3193aca71c12ad7890f1785d2b73e1b9f63a0bbc353c08ef26fe03fc56b5" +checksum = "6513c1ad0b11a9376da888e3e0baa0077f1aed55c17f50e7b2397136129fb88f" dependencies = [ "serde_derive", ] @@ -867,9 +867,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.214" +version = "1.0.215" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de523f781f095e28fa605cdce0f8307e451cc0fd14e2eb4cd2e98a355b147766" +checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", @@ -889,9 +889,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.132" +version = "1.0.133" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" +checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377" dependencies = [ "itoa", "memchr", @@ -929,9 +929,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "syn" -version = "2.0.87" +version = "2.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" +checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" dependencies = [ "proc-macro2", "quote", @@ -946,9 +946,9 @@ checksum = "42a4d50cdb458045afc8131fd91b64904da29548bcb63c7236e0844936c13078" [[package]] name = "tempfile" -version = "3.13.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" +checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c" dependencies = [ "cfg-if", "fastrand", @@ -968,18 +968,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.68" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02dd99dc800bbb97186339685293e1cc5d9df1f8fae2d0aecd9ff1c77efea892" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.68" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7c61ec9a6f64d2793d8a45faba21efbe3ced62a886d44c36a009b2b519b4c7e" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", @@ -1050,9 +1050,9 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" +checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" [[package]] name = "unicode-width" diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index c5f7a8a1..7dd0c3d5 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -9,20 +9,20 @@ repository = "https://github.com/mlabs-haskell/plutus-ledger-api-rust" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -proptest = "^1.3.1" -lbr-prelude = { version = "0.1.1", optional = true } -serde_json = { version = "1.0.128", optional = true } +proptest = "^1.5.0" +lbr-prelude = { version = "0.1.3", optional = true } +serde_json = { version = "1.0.133", optional = true } num-bigint = "~0.4" -serde = { version = "^1.0.189", features = ["derive"], optional = true } -data-encoding = "^2.4.0" -thiserror = "^1.0.50" +serde = { version = "^1.0.215", features = ["derive"], optional = true } +data-encoding = "^2.6.0" +thiserror = "^1.0.69" linked-hash-map = "~0.5.6" -num-traits = "~0.2.17" +num-traits = "~0.2.19" impl_ops = "0.1.1" -chrono = { version = "0.4.34", optional = true } -cardano-serialization-lib = "13.1.0" +chrono = { version = "0.4.39", optional = true } +cardano-serialization-lib = "13.2.0" is-plutus-data-derive = { version = "1.0.0", path = ".extras/is-plutus-data-derive-0" } -anyhow = "1.0.86" +anyhow = "1.0.94" nom = "7.1.3" [features] From ff65b212904610ebe77d71aea535dbf48983e02f Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Wed, 18 Dec 2024 15:41:58 +0100 Subject: [PATCH 49/94] Fix v3 type structural bugs --- flake.lock | 10568 ++++++++++------ plutus-ledger-api/Cargo.lock | 2 +- plutus-ledger-api/Cargo.toml | 2 +- plutus-ledger-api/build.nix | 2 +- .../src/generators/correct/v3.rs | 21 +- plutus-ledger-api/src/v3/transaction.rs | 22 +- 6 files changed, 6860 insertions(+), 3757 deletions(-) diff --git a/flake.lock b/flake.lock index 2b4b8e17..f3127c93 100644 --- a/flake.lock +++ b/flake.lock @@ -3,11 +3,11 @@ "CHaP": { "flake": false, "locked": { - "lastModified": 1702742788, - "narHash": "sha256-lSU0M27LC0d60cJ2C2Kdo6gBwTCCYRiALbD528CoTtc=", + "lastModified": 1724915143, + "narHash": "sha256-SKluKP0iuRTYMQWzkxOtqW39+1zjw6oeZY+J8RJytGM=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "4a236a8ad9e3c6d20235de27eacbe3d4de72479c", + "rev": "92b3a071083372209af9c89c936f4f184ad5e3f6", "type": "github" }, "original": { @@ -20,15 +20,15 @@ "CHaP_2": { "flake": false, "locked": { - "lastModified": 1686070892, - "narHash": "sha256-0yAYqvCg2/aby4AmW0QQK9RKnU1siQczfbUC6hOU02w=", - "owner": "input-output-hk", + "lastModified": 1702906471, + "narHash": "sha256-br+hVo3R6nfmiSEPXcLKhIX4Kg5gcK2PjzjmvQsuUp8=", + "owner": "IntersectMBO", "repo": "cardano-haskell-packages", - "rev": "596cf203a0a1ba252a083a79d384325000faeb49", + "rev": "48a359ac3f1d437ebaa91126b20e15a65201f004", "type": "github" }, "original": { - "owner": "input-output-hk", + "owner": "IntersectMBO", "ref": "repo", "repo": "cardano-haskell-packages", "type": "github" @@ -37,11 +37,11 @@ "CHaP_3": { "flake": false, "locked": { - "lastModified": 1695160702, - "narHash": "sha256-+Mfc6eGA1ZwQ/ZjKzMoMWkHzd+sgR1JbxY0i849HjEU=", + "lastModified": 1686070892, + "narHash": "sha256-0yAYqvCg2/aby4AmW0QQK9RKnU1siQczfbUC6hOU02w=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "9932690af3713ef034c928850252eb1b88450ee6", + "rev": "596cf203a0a1ba252a083a79d384325000faeb49", "type": "github" }, "original": { @@ -54,11 +54,11 @@ "CHaP_4": { "flake": false, "locked": { - "lastModified": 1694601145, - "narHash": "sha256-p7ZxorrOvoow6N+JKvfrCiRYFtUSPiEMgt8MR+rcTT4=", + "lastModified": 1702593630, + "narHash": "sha256-IWu27+sfPtazjIZiWLUm8G4BKvjXmIL+/1XT/ETnfhg=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "e8298604717dbaa311c1e42e021b571670f4b039", + "rev": "9783a177efcea5beb8808aab7513098bdab185ba", "type": "github" }, "original": { @@ -71,15 +71,15 @@ "CHaP_5": { "flake": false, "locked": { - "lastModified": 1683268896, - "narHash": "sha256-Bf2XIbQ3YCYPbkySLlPmmxRdEQeZMqTM1mA/VQvB9sc=", - "owner": "input-output-hk", + "lastModified": 1724197463, + "narHash": "sha256-/ZHOKRX84tXckstr6rTYyjytF2yfrIpvGujRLyjZfUE=", + "owner": "intersectmbo", "repo": "cardano-haskell-packages", - "rev": "b5da84a9711693e408ec94ad17fbb02883a3b87b", + "rev": "610a202920ffe1d371035d35053152e9a0c77fce", "type": "github" }, "original": { - "owner": "input-output-hk", + "owner": "intersectmbo", "ref": "repo", "repo": "cardano-haskell-packages", "type": "github" @@ -88,45 +88,11 @@ "CHaP_6": { "flake": false, "locked": { - "lastModified": 1708970955, - "narHash": "sha256-k6Y9WjDej7wCkUowVi/tdsWP6EWUMZTSRU9r+4lMJmU=", - "owner": "IntersectMBO", - "repo": "cardano-haskell-packages", - "rev": "f09964311e8894a5f09e258f308a9c3d4221f029", - "type": "github" - }, - "original": { - "owner": "IntersectMBO", - "ref": "repo", - "repo": "cardano-haskell-packages", - "type": "github" - } - }, - "CHaP_7": { - "flake": false, - "locked": { - "lastModified": 1703398734, - "narHash": "sha256-DVaL6dBqgGOOjr3kyHi3NgtD4UrwTVsSMLkpUToyPt4=", - "owner": "input-output-hk", - "repo": "cardano-haskell-packages", - "rev": "dbfa903050eb861fcbd0c22dd5a4746f68d6d42e", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "repo", - "repo": "cardano-haskell-packages", - "type": "github" - } - }, - "CHaP_8": { - "flake": false, - "locked": { - "lastModified": 1703398734, - "narHash": "sha256-DVaL6dBqgGOOjr3kyHi3NgtD4UrwTVsSMLkpUToyPt4=", + "lastModified": 1683268896, + "narHash": "sha256-Bf2XIbQ3YCYPbkySLlPmmxRdEQeZMqTM1mA/VQvB9sc=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "dbfa903050eb861fcbd0c22dd5a4746f68d6d42e", + "rev": "b5da84a9711693e408ec94ad17fbb02883a3b87b", "type": "github" }, "original": { @@ -264,6 +230,102 @@ "type": "github" } }, + "ameba-src": { + "flake": false, + "locked": { + "lastModified": 1679041484, + "narHash": "sha256-pc9mtVR/PBhM5l1PnDkm+y+McxbrfAmQzxmLi761VF4=", + "owner": "crystal-ameba", + "repo": "ameba", + "rev": "7c74d196d6d9a496a81a0c7b79ef44f39faf41b8", + "type": "github" + }, + "original": { + "owner": "crystal-ameba", + "ref": "v1.4.3", + "repo": "ameba", + "type": "github" + } + }, + "auth-keys-hub": { + "inputs": { + "crystal": "crystal", + "flake-parts": "flake-parts_2", + "inclusive": "inclusive", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "cardano-parts", + "nixpkgs" + ], + "statix": "statix", + "treefmt-nix": "treefmt-nix" + }, + "locked": { + "lastModified": 1691483346, + "narHash": "sha256-wvn84eGcc+PMbq/qSCWcZ/kV7/bjwuGOVSn/9rGaaKw=", + "owner": "input-output-hk", + "repo": "auth-keys-hub", + "rev": "ab7c79f49886b8f24cfae4b967a59ea62af9156e", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "auth-keys-hub", + "type": "github" + } + }, + "bats-assert": { + "flake": false, + "locked": { + "lastModified": 1636059754, + "narHash": "sha256-ewME0l27ZqfmAwJO4h5biTALc9bDLv7Bl3ftBzBuZwk=", + "owner": "bats-core", + "repo": "bats-assert", + "rev": "34551b1d7f8c7b677c1a66fc0ac140d6223409e5", + "type": "github" + }, + "original": { + "owner": "bats-core", + "repo": "bats-assert", + "type": "github" + } + }, + "bats-support": { + "flake": false, + "locked": { + "lastModified": 1548869839, + "narHash": "sha256-Gr4ntadr42F2Ks8Pte2D4wNDbijhujuoJi4OPZnTAZU=", + "owner": "bats-core", + "repo": "bats-support", + "rev": "d140a65044b2d6810381935ae7f0c94c7023c8c3", + "type": "github" + }, + "original": { + "owner": "bats-core", + "repo": "bats-support", + "type": "github" + } + }, + "bdwgc-src": { + "flake": false, + "locked": { + "lastModified": 1661523039, + "narHash": "sha256-UYJQGeSykmfydGAmTlNJNyAPBasBkddOSoopBHiY7TI=", + "owner": "ivmai", + "repo": "bdwgc", + "rev": "cd1fbc1dbfd2cc888436944dd2784f39820698d7", + "type": "github" + }, + "original": { + "owner": "ivmai", + "ref": "v8.2.2", + "repo": "bdwgc", + "type": "github" + } + }, "blank": { "locked": { "lastModified": 1625557891, @@ -309,9 +371,54 @@ "type": "github" } }, + "blank_4": { + "locked": { + "lastModified": 1625557891, + "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", + "owner": "divnix", + "repo": "blank", + "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "blank", + "type": "github" + } + }, + "blank_5": { + "locked": { + "lastModified": 1625557891, + "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", + "owner": "divnix", + "repo": "blank", + "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "blank", + "type": "github" + } + }, + "blank_6": { + "locked": { + "lastModified": 1625557891, + "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", + "owner": "divnix", + "repo": "blank", + "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "blank", + "type": "github" + } + }, "blockfrost": { "inputs": { - "nixpkgs": "nixpkgs_2" + "nixpkgs": "nixpkgs" }, "locked": { "lastModified": 1693412637, @@ -328,6 +435,25 @@ "type": "github" } }, + "blockfrost_2": { + "inputs": { + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1716466734, + "narHash": "sha256-h1LdfN/2KlD/XRjgj7rDNRInxSKZCOx6OF4jak/3c/E=", + "owner": "blockfrost", + "repo": "blockfrost-backend-ryo", + "rev": "7204204615be69b2f298ddf11f9a23dbbb184e55", + "type": "github" + }, + "original": { + "owner": "blockfrost", + "ref": "v2.0.3", + "repo": "blockfrost-backend-ryo", + "type": "github" + } + }, "blst": { "flake": false, "locked": { @@ -382,17 +508,17 @@ "blst_4": { "flake": false, "locked": { - "lastModified": 1691598027, - "narHash": "sha256-oqljy+ZXJAXEB/fJtmB8rlAr4UXM+Z2OkDa20gpILNA=", + "lastModified": 1656163412, + "narHash": "sha256-xero1aTe2v4IhWIJaEDUsVDOfE77dOV5zKeHWntHogY=", "owner": "supranational", "repo": "blst", - "rev": "3dd0f804b1819e5d03fb22ca2e6fac105932043a", + "rev": "03b5124029979755c752eec45f3c29674b558446", "type": "github" }, "original": { "owner": "supranational", - "ref": "v0.3.11", "repo": "blst", + "rev": "03b5124029979755c752eec45f3c29674b558446", "type": "github" } }, @@ -414,6 +540,40 @@ } }, "blst_6": { + "flake": false, + "locked": { + "lastModified": 1691598027, + "narHash": "sha256-oqljy+ZXJAXEB/fJtmB8rlAr4UXM+Z2OkDa20gpILNA=", + "owner": "supranational", + "repo": "blst", + "rev": "3dd0f804b1819e5d03fb22ca2e6fac105932043a", + "type": "github" + }, + "original": { + "owner": "supranational", + "ref": "v0.3.11", + "repo": "blst", + "type": "github" + } + }, + "blst_7": { + "flake": false, + "locked": { + "lastModified": 1691598027, + "narHash": "sha256-oqljy+ZXJAXEB/fJtmB8rlAr4UXM+Z2OkDa20gpILNA=", + "owner": "supranational", + "repo": "blst", + "rev": "3dd0f804b1819e5d03fb22ca2e6fac105932043a", + "type": "github" + }, + "original": { + "owner": "supranational", + "ref": "v0.3.11", + "repo": "blst", + "type": "github" + } + }, + "blst_8": { "flake": false, "locked": { "lastModified": 1656163412, @@ -430,7 +590,7 @@ "type": "github" } }, - "blst_7": { + "blst_9": { "flake": false, "locked": { "lastModified": 1691598027, @@ -620,11 +780,11 @@ "cabal-34_3": { "flake": false, "locked": { - "lastModified": 1640353650, - "narHash": "sha256-N1t6M3/wqj90AEdRkeC8i923gQYUpzSr8b40qVOZ1Rk=", + "lastModified": 1645834128, + "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", "owner": "haskell", "repo": "cabal", - "rev": "942639c18c0cd8ec53e0a6f8d120091af35312cd", + "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", "type": "github" }, "original": { @@ -756,11 +916,11 @@ "cabal-36_3": { "flake": false, "locked": { - "lastModified": 1641652457, - "narHash": "sha256-BlFPKP4C4HRUJeAbdembX1Rms1LD380q9s0qVDeoAak=", + "lastModified": 1669081697, + "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", "owner": "haskell", "repo": "cabal", - "rev": "f27667f8ec360c475027dcaee0138c937477b070", + "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", "type": "github" }, "original": { @@ -855,25 +1015,58 @@ "type": "github" } }, + "call-flake": { + "locked": { + "lastModified": 1687380775, + "narHash": "sha256-bmhE1TmrJG4ba93l9WQTLuYM53kwGQAjYHRvHOeuxWU=", + "owner": "divnix", + "repo": "call-flake", + "rev": "74061f6c241227cd05e79b702db9a300a2e4131a", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "call-flake", + "type": "github" + } + }, + "capkgs": { + "locked": { + "lastModified": 1697123727, + "narHash": "sha256-uSXZAELJF5EfivH9qyLssBUAvhcf3RM9sKhD3W2mdhc=", + "owner": "input-output-hk", + "repo": "capkgs", + "rev": "b197e225592dfe38afb80c94b628d99968c0541d", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "capkgs", + "type": "github" + } + }, "cardano-automation": { "inputs": { - "flake-utils": "flake-utils", + "flake-utils": "flake-utils_4", "haskellNix": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", "haskellNix" ], "nixpkgs": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", "nixpkgs" ], "tullia": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", "tullia" ] }, @@ -891,5759 +1084,7800 @@ "type": "github" } }, - "cardano-configurations": { - "flake": false, - "locked": { - "lastModified": 1699561895, - "narHash": "sha256-bLNN6lJUe5dR1EOdtDspReE2fu2EV7hQMHFGDinxf5Y=", - "owner": "input-output-hk", - "repo": "cardano-configurations", - "rev": "d952529afdfdf6d53ce190b1bf8af990a7ae9590", - "type": "github" + "cardano-automation_2": { + "inputs": { + "flake-utils": "flake-utils_9", + "haskellNix": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "haskellNix" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "nixpkgs" + ], + "tullia": "tullia_2" }, - "original": { - "owner": "input-output-hk", - "repo": "cardano-configurations", - "rev": "d952529afdfdf6d53ce190b1bf8af990a7ae9590", - "type": "github" - } - }, - "cardano-configurations_2": { - "flake": false, "locked": { - "lastModified": 1694019972, - "narHash": "sha256-TQEvb6W2VlOWxqIFa4r8UFBVbu82Bb2hRaDtN5Zbiuk=", + "lastModified": 1679408951, + "narHash": "sha256-xM78upkrXjRu/739V/IxFrA9m+6rvgOiolt4ReKLAog=", "owner": "input-output-hk", - "repo": "cardano-configurations", - "rev": "65ef979cf69f420efca0a7aaf0412a610bc48097", + "repo": "cardano-automation", + "rev": "628f135d243d4a9e388c187e4c6179246038ee72", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-configurations", + "repo": "cardano-automation", "type": "github" } }, - "cardano-haskell-packages": { - "flake": false, - "locked": { - "lastModified": 1717745122, - "narHash": "sha256-RW0mbVghzN/ywg3CVsdHPB3WCj8KAEAS0egV4PFro/4=", - "owner": "input-output-hk", - "repo": "cardano-haskell-packages", - "rev": "a8d2c3e2b819e2f331aae71de5544a855a267e65", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "repo", - "repo": "cardano-haskell-packages", - "type": "github" - } - }, - "cardano-mainnet-mirror": { - "inputs": { - "nixpkgs": "nixpkgs_3" - }, - "locked": { - "lastModified": 1642701714, - "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", - "owner": "input-output-hk", - "repo": "cardano-mainnet-mirror", - "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "nix", - "repo": "cardano-mainnet-mirror", - "type": "github" - } - }, - "cardano-node": { + "cardano-automation_3": { "inputs": { - "CHaP": "CHaP_2", - "cardano-automation": "cardano-automation", - "cardano-mainnet-mirror": "cardano-mainnet-mirror", - "customConfig": "customConfig", - "em": "em", - "empty-flake": "empty-flake", - "flake-compat": "flake-compat", - "hackageNix": "hackageNix", - "haskellNix": "haskellNix", - "hostNixpkgs": [ + "flake-utils": "flake-utils_16", + "haskellNix": [ "flake-lang", "ctl", "cardano-node", - "nixpkgs" + "haskellNix" ], - "iohkNix": "iohkNix", - "nix2container": "nix2container", "nixpkgs": [ "flake-lang", "ctl", "cardano-node", - "haskellNix", - "nixpkgs-unstable" - ], - "ops-lib": "ops-lib", - "std": [ - "flake-lang", - "ctl", - "cardano-node", - "tullia", - "std" + "nixpkgs" ], - "tullia": "tullia", - "utils": "utils_2" + "tullia": "tullia_3" }, "locked": { - "lastModified": 1687190129, - "narHash": "sha256-JCa9+QhZ2RVSIKkhz2WCZqTKCgdUSuezWS2YsQ5vhM4=", + "lastModified": 1679408951, + "narHash": "sha256-xM78upkrXjRu/739V/IxFrA9m+6rvgOiolt4ReKLAog=", "owner": "input-output-hk", - "repo": "cardano-node", - "rev": "6f79e5c3ea109a70cd01910368e011635767305a", + "repo": "cardano-automation", + "rev": "628f135d243d4a9e388c187e4c6179246038ee72", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "8.1.1", - "repo": "cardano-node", + "repo": "cardano-automation", "type": "github" } }, - "cardano-shell": { + "cardano-configurations": { "flake": false, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "lastModified": 1721870874, + "narHash": "sha256-qiReN+xxtbb4kEfdIWbBcqcJpPGD8he0p/TVD7U3CqM=", "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "repo": "cardano-configurations", + "rev": "7969a73e5c7ee1f3b2a40274b34191fdd8de170b", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-shell", + "repo": "cardano-configurations", + "rev": "7969a73e5c7ee1f3b2a40274b34191fdd8de170b", "type": "github" } }, - "cardano-shell_2": { + "cardano-configurations-8.1.1": { "flake": false, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "lastModified": 1692193634, + "narHash": "sha256-cKw+iXKoMNrfN8M34/CtUelUZVLktVtzNzOYHI20dC0=", "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "repo": "cardano-configurations", + "rev": "9b69b59ef2fb2838855017f19af57b38c5d4abe4", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-shell", + "repo": "cardano-configurations", + "rev": "9b69b59ef2fb2838855017f19af57b38c5d4abe4", "type": "github" } }, - "cardano-shell_3": { + "cardano-configurations-8.7.3": { "flake": false, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "lastModified": 1702085095, + "narHash": "sha256-IJChESftdO2tj2pRB+82xMaLP/RqyKHzttE7QMLqvBQ=", "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "repo": "cardano-configurations", + "rev": "21249e0d5c68b4e8f3661b250aa8272a8785d678", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-shell", + "repo": "cardano-configurations", + "rev": "21249e0d5c68b4e8f3661b250aa8272a8785d678", "type": "github" } }, - "cardano-shell_4": { - "flake": false, + "cardano-db-sync": { + "inputs": { + "CHaP": "CHaP_2", + "cardano-parts": "cardano-parts", + "flake-compat": "flake-compat_4", + "hackageNix": "hackageNix", + "haskellNix": "haskellNix", + "iohkNix": "iohkNix", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "haskellNix", + "nixpkgs-unstable" + ], + "utils": "utils" + }, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", - "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "lastModified": 1707925775, + "narHash": "sha256-z3YUrUImpV/wmJi+pfw6YuhBw+2Xd3jGlSWk7WI69/4=", + "owner": "intersectmbo", + "repo": "cardano-db-sync", + "rev": "ed3dc8bbb79f07c26ec43f10bad661b0bef3b915", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "cardano-shell", + "owner": "intersectmbo", + "ref": "13.2.0.1", + "repo": "cardano-db-sync", "type": "github" } }, - "cardano-shell_5": { + "cardano-db-sync-schema": { "flake": false, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "lastModified": 1688568916, + "narHash": "sha256-XTGTi3PzCcbLL+63JSXTe7mQmGKB0YgEoW1VpqdX2d0=", "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "repo": "cardano-db-sync", + "rev": "6e69a80797f2d68423b25ca7787e81533b367e42", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-shell", + "ref": "13.1.1.3", + "repo": "cardano-db-sync", "type": "github" } }, - "cardano-shell_6": { + "cardano-db-sync-schema-ng": { "flake": false, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "lastModified": 1694078776, + "narHash": "sha256-QBnUDobTwWQmooCNr1WcaAzRbAKokon8lvAN6VQ1u34=", "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "repo": "cardano-db-sync", + "rev": "b44eb735fe64fe4e8079935df722d0a32a41c2a4", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-shell", + "ref": "sancho-1-1-0", + "repo": "cardano-db-sync", "type": "github" } }, - "cardano-shell_7": { + "cardano-db-sync-service": { "flake": false, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "lastModified": 1688568916, + "narHash": "sha256-XTGTi3PzCcbLL+63JSXTe7mQmGKB0YgEoW1VpqdX2d0=", "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "repo": "cardano-db-sync", + "rev": "6e69a80797f2d68423b25ca7787e81533b367e42", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-shell", + "ref": "13.1.1.3", + "repo": "cardano-db-sync", "type": "github" } }, - "cardano-shell_8": { + "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "lastModified": 1732134025, + "narHash": "sha256-BBz3q09+DqDMYnLLgqXYyAxj9amVibxuEevHzgqL6UM=", "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "repo": "cardano-haskell-packages", + "rev": "d36fcfb3c0f2632bdaf4637c72e91b93f7eada56", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-shell", + "ref": "repo", + "repo": "cardano-haskell-packages", "type": "github" } }, - "crane": { + "cardano-mainnet-mirror": { "inputs": { - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs_15" }, "locked": { - "lastModified": 1717895724, - "narHash": "sha256-dHwxCMe/Ki1xOAnbF9jQTXSFAMujpTnwWMbXvxcb5Uo=", - "owner": "ipetkov", - "repo": "crane", - "rev": "a21d14679fb306ab8fa6ae0255eb9dc185039367", + "lastModified": 1642701714, + "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", + "owner": "input-output-hk", + "repo": "cardano-mainnet-mirror", + "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", "type": "github" }, "original": { - "owner": "ipetkov", - "repo": "crane", + "owner": "input-output-hk", + "ref": "nix", + "repo": "cardano-mainnet-mirror", "type": "github" } }, - "ctl": { + "cardano-mainnet-mirror_2": { "inputs": { - "CHaP": "CHaP", - "blockfrost": "blockfrost", - "cardano-configurations": "cardano-configurations", - "cardano-node": "cardano-node", - "db-sync": [ - "flake-lang", - "db-sync-ctl" - ], - "easy-purescript-nix": "easy-purescript-nix", - "flake-compat": "flake-compat_4", - "hackage-nix": "hackage-nix", - "haskell-nix": "haskell-nix", - "hercules-ci-effects": "hercules-ci-effects", - "iohk-nix": "iohk-nix", - "kupo": "kupo", - "kupo-nixos": "kupo-nixos", - "nixpkgs": [ - "flake-lang", - "ctl", - "haskell-nix", - "nixpkgs-unstable" - ], - "ogmios": "ogmios", - "ogmios-nixos": "ogmios-nixos", - "plutip": "plutip" + "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1717435748, - "narHash": "sha256-v60NKFCPGuFydhojgWZV1tNr5sF+SP1PXj+q3O+jA3k=", - "owner": "plutonomicon", - "repo": "cardano-transaction-lib", - "rev": "bff8bf9c0247c32d931fc0c18ec5fab909e18e8e", + "lastModified": 1642701714, + "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", + "owner": "input-output-hk", + "repo": "cardano-mainnet-mirror", + "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", "type": "github" }, "original": { - "owner": "plutonomicon", - "ref": "develop", - "repo": "cardano-transaction-lib", + "owner": "input-output-hk", + "ref": "nix", + "repo": "cardano-mainnet-mirror", "type": "github" } }, - "customConfig": { + "cardano-mainnet-mirror_3": { + "inputs": { + "nixpkgs": "nixpkgs_34" + }, "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "lastModified": 1642701714, + "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", + "repo": "cardano-mainnet-mirror", + "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "empty-flake", + "ref": "nix", + "repo": "cardano-mainnet-mirror", "type": "github" } }, - "customConfig_2": { + "cardano-nix": { + "inputs": { + "blockfrost": "blockfrost_2", + "cardano-configurations-8.1.1": "cardano-configurations-8.1.1", + "cardano-configurations-8.7.3": "cardano-configurations-8.7.3", + "cardano-db-sync": "cardano-db-sync", + "cardano-node-8.1.1": "cardano-node-8.1.1", + "cardano-node-8.7.3": "cardano-node-8.7.3", + "crane": "crane_3", + "devour-flake": "devour-flake", + "devshell": "devshell_4", + "flake-parts": "flake-parts_5", + "flake-root": "flake-root", + "hercules-ci-effects": "hercules-ci-effects", + "nixpkgs": [ + "flake-lang", + "ctl", + "nixpkgs" + ], + "oura": "oura", + "pre-commit-hooks-nix": "pre-commit-hooks-nix", + "treefmt-nix": "treefmt-nix_3" + }, "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", - "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", + "lastModified": 1724967699, + "narHash": "sha256-rsj28Jq7DX/YCzykfvy2LJ9y6AE37i3MCyoAFeRHyEM=", + "owner": "mlabs-haskell", + "repo": "cardano.nix", + "rev": "3eb9384b2e1c43d4dcdf2eb23d0210d5d7e612af", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "empty-flake", + "owner": "mlabs-haskell", + "repo": "cardano.nix", "type": "github" } }, - "db-sync-ctl": { + "cardano-node": { "inputs": { "CHaP": "CHaP_5", - "customConfig": "customConfig_2", - "flake-compat": "flake-compat_8", - "haskellNix": "haskellNix_2", - "iohkNix": "iohkNix_2", - "nixpkgs": [ + "cardano-automation": "cardano-automation_3", + "cardano-mainnet-mirror": "cardano-mainnet-mirror_3", + "customConfig": "customConfig_3", + "em": "em_3", + "empty-flake": "empty-flake_4", + "flake-compat": "flake-compat_15", + "hackageNix": "hackageNix_4", + "haskellNix": "haskellNix_4", + "hostNixpkgs": [ "flake-lang", - "db-sync-ctl", - "haskellNix", - "nixpkgs-unstable" + "ctl", + "cardano-node", + "nixpkgs" ], - "std": [ + "iohkNix": "iohkNix_4", + "nix2container": "nix2container_6", + "nixpkgs": [ "flake-lang", - "db-sync-ctl", - "tullia", - "std" + "ctl", + "cardano-node", + "haskellNix", + "nixpkgs-unstable" ], - "tullia": "tullia_2", - "utils": "utils_4" + "ops-lib": "ops-lib_3", + "std": "std_5", + "utils": "utils_8" }, "locked": { - "lastModified": 1688568916, - "narHash": "sha256-XTGTi3PzCcbLL+63JSXTe7mQmGKB0YgEoW1VpqdX2d0=", + "lastModified": 1724944858, + "narHash": "sha256-7zV11vZ4e81cDIpk9OpkAnYV9EA5WWH134iei3n8+S8=", "owner": "input-output-hk", - "repo": "cardano-db-sync", - "rev": "6e69a80797f2d68423b25ca7787e81533b367e42", + "repo": "cardano-node", + "rev": "d7abccd4e90c38ff5cd4d6a7839689d888332056", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "13.1.1.3", - "repo": "cardano-db-sync", + "repo": "cardano-node", + "rev": "d7abccd4e90c38ff5cd4d6a7839689d888332056", "type": "github" } }, - "devshell": { + "cardano-node-8.1.1": { "inputs": { - "flake-utils": [ + "CHaP": "CHaP_3", + "cardano-automation": "cardano-automation", + "cardano-mainnet-mirror": "cardano-mainnet-mirror", + "customConfig": "customConfig", + "em": "em", + "empty-flake": "empty-flake_2", + "flake-compat": "flake-compat_6", + "hackageNix": "hackageNix_2", + "haskellNix": "haskellNix_2", + "hostNixpkgs": [ "flake-lang", "ctl", - "cardano-node", - "tullia", - "std", - "flake-utils" + "cardano-nix", + "cardano-node-8.1.1", + "nixpkgs" ], + "iohkNix": "iohkNix_2", + "nix2container": "nix2container", "nixpkgs": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", + "haskellNix", + "nixpkgs-unstable" + ], + "ops-lib": "ops-lib", + "std": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", "tullia", - "std", - "nixpkgs" - ] + "std" + ], + "tullia": "tullia", + "utils": "utils_3" }, "locked": { - "lastModified": 1663445644, - "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", - "owner": "numtide", - "repo": "devshell", - "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "lastModified": 1687190129, + "narHash": "sha256-JCa9+QhZ2RVSIKkhz2WCZqTKCgdUSuezWS2YsQ5vhM4=", + "owner": "intersectmbo", + "repo": "cardano-node", + "rev": "6f79e5c3ea109a70cd01910368e011635767305a", "type": "github" }, "original": { - "owner": "numtide", - "repo": "devshell", + "owner": "intersectmbo", + "ref": "8.1.1", + "repo": "cardano-node", "type": "github" } }, - "devshell_2": { + "cardano-node-8.7.3": { "inputs": { - "flake-utils": [ + "CHaP": "CHaP_4", + "cardano-automation": "cardano-automation_2", + "cardano-mainnet-mirror": "cardano-mainnet-mirror_2", + "customConfig": "customConfig_2", + "em": "em_2", + "empty-flake": "empty-flake_3", + "flake-compat": "flake-compat_10", + "hackageNix": "hackageNix_3", + "haskellNix": "haskellNix_3", + "hostNixpkgs": [ "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "flake-utils" + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "nixpkgs" ], + "iohkNix": "iohkNix_3", + "nix2container": "nix2container_4", "nixpkgs": [ "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "haskellNix", + "nixpkgs-unstable" + ], + "ops-lib": "ops-lib_2", + "std": "std_3", + "utils": "utils_5" }, "locked": { - "lastModified": 1663445644, - "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", - "owner": "numtide", - "repo": "devshell", - "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "lastModified": 1702654749, + "narHash": "sha256-fIzSNSKWC7qMRjHUMHfrMnEzHiFu7ac/UUgfofXqaFY=", + "owner": "intersectmbo", + "repo": "cardano-node", + "rev": "a4a8119b59b1fbb9a69c79e1e6900e91292161e7", "type": "github" }, "original": { - "owner": "numtide", - "repo": "devshell", + "owner": "intersectmbo", + "ref": "8.7.3", + "repo": "cardano-node", "type": "github" } }, - "dmerge": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-node", - "tullia", - "std", - "nixpkgs" - ], - "yants": [ - "flake-lang", - "ctl", - "cardano-node", - "tullia", - "std", - "yants" - ] - }, + "cardano-node-service": { + "flake": false, "locked": { - "lastModified": 1659548052, - "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", - "owner": "divnix", - "repo": "data-merge", - "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", + "lastModified": 1690209950, + "narHash": "sha256-d0V8N+y/OarYv6GQycGXnbPly7GeJRBEeE1017qj9eI=", + "owner": "input-output-hk", + "repo": "cardano-node", + "rev": "d2d90b48c5577b4412d5c9c9968b55f8ab4b9767", "type": "github" }, "original": { - "owner": "divnix", - "repo": "data-merge", + "owner": "input-output-hk", + "ref": "8.1.2", + "repo": "cardano-node", "type": "github" } }, - "dmerge_2": { + "cardano-parts": { "inputs": { - "nixlib": [ + "auth-keys-hub": "auth-keys-hub", + "capkgs": "capkgs", + "cardano-db-sync-schema": "cardano-db-sync-schema", + "cardano-db-sync-schema-ng": "cardano-db-sync-schema-ng", + "cardano-db-sync-service": "cardano-db-sync-service", + "cardano-node-service": "cardano-node-service", + "cardano-wallet-service": "cardano-wallet-service", + "colmena": "colmena", + "empty-flake": "empty-flake", + "flake-parts": "flake-parts_3", + "haskell-nix": "haskell-nix", + "inputs-check": "inputs-check", + "iohk-nix": "iohk-nix", + "iohk-nix-ng": "iohk-nix-ng", + "nix": "nix_2", + "nixpkgs": [ "flake-lang", - "db-sync-ctl", - "tullia", - "std", + "ctl", + "cardano-nix", + "cardano-db-sync", "nixpkgs" ], - "yants": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "yants" - ] + "nixpkgs-unstable": "nixpkgs-unstable_2", + "offchain-metadata-tools-service": "offchain-metadata-tools-service", + "sops-nix": "sops-nix", + "terraform-providers": "terraform-providers", + "terranix": "terranix", + "treefmt-nix": "treefmt-nix_2" }, "locked": { - "lastModified": 1659548052, - "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", - "owner": "divnix", - "repo": "data-merge", - "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", + "lastModified": 1697147999, + "narHash": "sha256-mbSWIcmDnt2mlETCNL8MI97nDH1lkOxIxFHKXXfOV28=", + "owner": "input-output-hk", + "repo": "cardano-parts", + "rev": "af8993ee12f78ddfcc31eefe006391669cb11462", "type": "github" }, "original": { - "owner": "divnix", - "repo": "data-merge", + "owner": "input-output-hk", + "repo": "cardano-parts", "type": "github" } }, - "easy-purescript-nix": { + "cardano-shell": { "flake": false, "locked": { - "lastModified": 1696584097, - "narHash": "sha256-a9Hhqf/Fi0FkjRTcQr3pYDhrO9A9tdOkaeVgD23Cdrk=", - "owner": "justinwoo", - "repo": "easy-purescript-nix", - "rev": "d5fe5f4b210a0e4bac42ae0c159596a49c5eb016", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { - "owner": "justinwoo", - "repo": "easy-purescript-nix", + "owner": "input-output-hk", + "repo": "cardano-shell", "type": "github" } }, - "easy-purescript-nix_2": { - "inputs": { - "flake-utils": "flake-utils_10" - }, + "cardano-shell_2": { + "flake": false, "locked": { - "lastModified": 1696584097, - "narHash": "sha256-a9Hhqf/Fi0FkjRTcQr3pYDhrO9A9tdOkaeVgD23Cdrk=", - "owner": "justinwoo", - "repo": "easy-purescript-nix", - "rev": "d5fe5f4b210a0e4bac42ae0c159596a49c5eb016", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { - "owner": "justinwoo", - "repo": "easy-purescript-nix", + "owner": "input-output-hk", + "repo": "cardano-shell", "type": "github" } }, - "easy-purescript-nix_3": { - "inputs": { - "flake-utils": "flake-utils_12" - }, + "cardano-shell_3": { + "flake": false, "locked": { - "lastModified": 1696584097, - "narHash": "sha256-a9Hhqf/Fi0FkjRTcQr3pYDhrO9A9tdOkaeVgD23Cdrk=", - "owner": "justinwoo", - "repo": "easy-purescript-nix", - "rev": "d5fe5f4b210a0e4bac42ae0c159596a49c5eb016", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { - "owner": "justinwoo", - "repo": "easy-purescript-nix", + "owner": "input-output-hk", + "repo": "cardano-shell", "type": "github" } }, - "easy-purescript-nix_4": { - "inputs": { - "flake-utils": "flake-utils_16" - }, + "cardano-shell_4": { + "flake": false, "locked": { - "lastModified": 1696584097, - "narHash": "sha256-a9Hhqf/Fi0FkjRTcQr3pYDhrO9A9tdOkaeVgD23Cdrk=", - "owner": "justinwoo", - "repo": "easy-purescript-nix", - "rev": "d5fe5f4b210a0e4bac42ae0c159596a49c5eb016", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { - "owner": "justinwoo", - "repo": "easy-purescript-nix", + "owner": "input-output-hk", + "repo": "cardano-shell", "type": "github" } }, - "em": { + "cardano-shell_5": { "flake": false, "locked": { - "lastModified": 1684791668, - "narHash": "sha256-JyPm0RiWCfy/8rs7wd/IRSWIz+bTkD78uxIMnKktU2g=", - "owner": "deepfire", - "repo": "em", - "rev": "302cdf6d654fb18baff0213bdfa41a653774585a", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { - "owner": "deepfire", - "repo": "em", + "owner": "input-output-hk", + "repo": "cardano-shell", "type": "github" } }, - "empty-flake": { + "cardano-shell_6": { + "flake": false, "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "empty-flake", + "repo": "cardano-shell", "type": "github" } }, - "flake-compat": { + "cardano-shell_7": { "flake": false, "locked": { - "lastModified": 1647532380, - "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "7da118186435255a30b5ffeabba9629c344c0bec", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "fixes", - "repo": "flake-compat", + "repo": "cardano-shell", "type": "github" } }, - "flake-compat_10": { + "cardano-shell_8": { "flake": false, "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", + "owner": "input-output-hk", + "repo": "cardano-shell", "type": "github" } }, - "flake-compat_11": { + "cardano-wallet-service": { "flake": false, "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "lastModified": 1689751896, + "narHash": "sha256-ijflgIw+1FpLoxM4Rksf4MJvNqnEPAv3gNWE8zMuefU=", + "owner": "cardano-foundation", + "repo": "cardano-wallet", + "rev": "3f0d2f3abe706958fab8cdc528184068bd0453c9", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", + "owner": "cardano-foundation", + "ref": "v2023-07-18", + "repo": "cardano-wallet", "type": "github" } }, - "flake-compat_12": { - "flake": false, + "colmena": { + "inputs": { + "flake-compat": "flake-compat", + "flake-utils": "flake-utils", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "cardano-parts", + "nixpkgs" + ], + "stable": "stable" + }, "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "lastModified": 1684127108, + "narHash": "sha256-01bfuSY4gnshhtqA1EJCw2CMsKkAx+dHS+sEpQ2+EAQ=", + "owner": "zhaofengli", + "repo": "colmena", + "rev": "5fdd743a11e7291bd8ac1e169d62ba6156c99be4", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", + "owner": "zhaofengli", + "ref": "v0.4.0", + "repo": "colmena", "type": "github" } }, - "flake-compat_13": { - "flake": false, + "crane": { "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "lastModified": 1732407143, + "narHash": "sha256-qJOGDT6PACoX+GbNH2PPx2ievlmtT1NVeTB80EkRLys=", + "owner": "ipetkov", + "repo": "crane", + "rev": "f2b4b472983817021d9ffb60838b2b36b9376b20", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", + "owner": "ipetkov", + "repo": "crane", "type": "github" } }, - "flake-compat_14": { - "flake": false, + "crane_2": { + "inputs": { + "flake-compat": "flake-compat_12", + "flake-utils": "flake-utils_14", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "paisano-mdbook-preprocessor", + "nixpkgs" + ], + "rust-overlay": "rust-overlay" + }, "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "lastModified": 1676162383, + "narHash": "sha256-krUCKdz7ebHlFYm/A7IbKDnj2ZmMMm3yIEQcooqm7+E=", + "owner": "ipetkov", + "repo": "crane", + "rev": "6fb400ec631b22ccdbc7090b38207f7fb5cfb5f2", "type": "github" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", + "owner": "ipetkov", + "repo": "crane", "type": "github" } }, - "flake-compat_15": { - "flake": false, + "crane_3": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "lastModified": 1721058578, + "narHash": "sha256-fs/PVa3H5dS1//4BjecWi3nitXm5fRObx0JxXIAo+JA=", + "owner": "ipetkov", + "repo": "crane", + "rev": "17e5109bb1d9fb393d70fba80988f7d70d1ded1a", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", + "owner": "ipetkov", + "repo": "crane", "type": "github" } }, - "flake-compat_16": { - "flake": false, + "crystal": { + "inputs": { + "ameba-src": "ameba-src", + "bdwgc-src": "bdwgc-src", + "crystal-aarch64-darwin": "crystal-aarch64-darwin", + "crystal-src": "crystal-src", + "crystal-x86_64-darwin": "crystal-x86_64-darwin", + "crystal-x86_64-linux": "crystal-x86_64-linux", + "crystalline-src": "crystalline-src", + "flake-parts": "flake-parts", + "nixpkgs": "nixpkgs_3" + }, "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "lastModified": 1683429373, + "narHash": "sha256-Mx5lwMyk2T40wFqOoYcJLs4srwO2UrsepTZhlHNuTrI=", + "owner": "manveru", + "repo": "crystal-flake", + "rev": "e7a443c20e2be6e5dd870586705dd27c91aa9c5c", "type": "github" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", + "owner": "manveru", + "repo": "crystal-flake", "type": "github" } }, - "flake-compat_17": { + "crystal-aarch64-darwin": { "flake": false, "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", - "type": "github" + "narHash": "sha256-NqYaZHM3kHAgYbO0RDJtA8eHqp4vVe4MBpisTOGrRVw=", + "type": "tarball", + "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-darwin-universal.tar.gz" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" + "type": "tarball", + "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-darwin-universal.tar.gz" } }, - "flake-compat_18": { + "crystal-src": { "flake": false, "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "lastModified": 1681995387, + "narHash": "sha256-t+1vM1m62UftCvfa90Dg6nqt6Zseh/GP/Gc1VfOa4+c=", + "owner": "crystal-lang", + "repo": "crystal", + "rev": "a59a3dbd738269d5aad6051c3834fc70f482f469", "type": "github" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", + "owner": "crystal-lang", + "ref": "1.8.1", + "repo": "crystal", "type": "github" } }, - "flake-compat_2": { + "crystal-x86_64-darwin": { "flake": false, "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", - "type": "github" + "narHash": "sha256-NqYaZHM3kHAgYbO0RDJtA8eHqp4vVe4MBpisTOGrRVw=", + "type": "tarball", + "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-darwin-universal.tar.gz" }, "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", - "type": "github" + "type": "tarball", + "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-darwin-universal.tar.gz" } }, - "flake-compat_3": { + "crystal-x86_64-linux": { "flake": false, "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", - "type": "github" + "narHash": "sha256-/Jk3uiglM/hzjygxmMUgVTvz+tuFFjBv8+uUIL05rXo=", + "type": "tarball", + "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-linux-x86_64.tar.gz" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" + "type": "tarball", + "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-linux-x86_64.tar.gz" } }, - "flake-compat_4": { + "crystalline-src": { "flake": false, "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "lastModified": 1681549124, + "narHash": "sha256-kx3rdGqIbrOaHY7V3uXLqIFEYzzsMKzNwZ6Neq8zM3c=", + "owner": "elbywan", + "repo": "crystalline", + "rev": "4ac0ae282c5f4172230fea1e93df51c2b380f475", "type": "github" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", + "owner": "elbywan", + "ref": "v0.9.0", + "repo": "crystalline", "type": "github" } }, - "flake-compat_5": { - "flake": false, + "ctl": { + "inputs": { + "CHaP": "CHaP", + "blockfrost": "blockfrost", + "cardano-configurations": "cardano-configurations", + "cardano-nix": "cardano-nix", + "cardano-node": "cardano-node", + "db-sync": [ + "flake-lang", + "db-sync-ctl" + ], + "easy-purescript-nix": "easy-purescript-nix", + "flake-compat": "flake-compat_17", + "hackage-nix": "hackage-nix", + "haskell-nix": "haskell-nix_2", + "hercules-ci-effects": "hercules-ci-effects_2", + "iohk-nix": "iohk-nix_2", + "nixpkgs": [ + "flake-lang", + "ctl", + "haskell-nix", + "nixpkgs-unstable" + ], + "nixpkgs-arion": "nixpkgs-arion", + "ogmios": "ogmios" + }, "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "lastModified": 1727366337, + "narHash": "sha256-Ut8Wo4msEQP9MDtAaHJDyCW8L+AvKiilJitOXuEwkuM=", + "owner": "plutonomicon", + "repo": "cardano-transaction-lib", + "rev": "391dda3d9566ca969c245369492361d046462588", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", + "owner": "plutonomicon", + "ref": "develop", + "repo": "cardano-transaction-lib", "type": "github" } }, - "flake-compat_6": { - "flake": false, + "customConfig": { "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "owner": "input-output-hk", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", "type": "github" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", + "owner": "input-output-hk", + "repo": "empty-flake", "type": "github" } }, - "flake-compat_7": { - "flake": false, + "customConfig_2": { "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "owner": "input-output-hk", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", "type": "github" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", + "owner": "input-output-hk", + "repo": "empty-flake", "type": "github" } }, - "flake-compat_8": { - "flake": false, + "customConfig_3": { "locked": { - "lastModified": 1647532380, - "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "7da118186435255a30b5ffeabba9629c344c0bec", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "fixes", - "repo": "flake-compat", + "repo": "empty-flake", "type": "github" } }, - "flake-compat_9": { - "flake": false, + "customConfig_4": { "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", + "repo": "empty-flake", "type": "github" } }, - "flake-lang": { + "db-sync-ctl": { "inputs": { - "cardano-haskell-packages": "cardano-haskell-packages", - "crane": "crane", - "ctl": "ctl", - "db-sync-ctl": "db-sync-ctl", - "flake-parts": "flake-parts_2", - "haskell-nix": "haskell-nix_3", - "hci-effects": "hci-effects", - "iohk-nix": "iohk-nix_3", - "nixpkgs": "nixpkgs_21", - "plutarch": "plutarch", - "plutus": "plutus", - "pre-commit-hooks": "pre-commit-hooks", - "rust-overlay": "rust-overlay" + "CHaP": "CHaP_6", + "customConfig": "customConfig_4", + "flake-compat": "flake-compat_19", + "haskellNix": "haskellNix_5", + "iohkNix": "iohkNix_5", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "haskellNix", + "nixpkgs-unstable" + ], + "std": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std" + ], + "tullia": "tullia_4", + "utils": "utils_10" }, "locked": { - "lastModified": 1727178379, - "narHash": "sha256-tnpDsS0R9KTu3SxPsuatAVysGe39F0SwwS82XxWHfT0=", - "owner": "mlabs-haskell", - "repo": "flake-lang.nix", - "rev": "185572ca12812f009456b212f5a6cae4e3e5baf8", + "lastModified": 1688568916, + "narHash": "sha256-XTGTi3PzCcbLL+63JSXTe7mQmGKB0YgEoW1VpqdX2d0=", + "owner": "input-output-hk", + "repo": "cardano-db-sync", + "rev": "6e69a80797f2d68423b25ca7787e81533b367e42", "type": "github" }, "original": { - "owner": "mlabs-haskell", - "repo": "flake-lang.nix", + "owner": "input-output-hk", + "ref": "13.1.1.3", + "repo": "cardano-db-sync", "type": "github" } }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "flake-lang", - "ctl", - "hercules-ci-effects", - "nixpkgs" - ] - }, + "devour-flake": { + "flake": false, "locked": { - "lastModified": 1696343447, - "narHash": "sha256-B2xAZKLkkeRFG5XcHHSXXcP7To9Xzr59KXeZiRf4vdQ=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "c9afaba3dfa4085dbd2ccb38dfade5141e33d9d4", + "lastModified": 1694098737, + "narHash": "sha256-O51F4YFOzlaQAc9b6xjkAqpvrvCtw/Os2M7TU0y4SKQ=", + "owner": "srid", + "repo": "devour-flake", + "rev": "30a34036b29b0d12989ef6c8be77aa949d85aef5", "type": "github" }, "original": { - "id": "flake-parts", - "type": "indirect" + "owner": "srid", + "repo": "devour-flake", + "type": "github" } }, - "flake-parts_2": { + "devshell": { "inputs": { - "nixpkgs-lib": "nixpkgs-lib" + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "std", + "flake-utils" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "std", + "nixpkgs" + ] }, "locked": { - "lastModified": 1717285511, - "narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8", + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", + "owner": "numtide", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "flake-parts", + "owner": "numtide", + "repo": "devshell", "type": "github" } }, - "flake-parts_3": { + "devshell_2": { "inputs": { - "nixpkgs-lib": [ + "flake-utils": [ "flake-lang", - "hci-effects", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "flake-utils" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", "nixpkgs" ] }, "locked": { - "lastModified": 1712014858, - "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", + "owner": "numtide", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", "type": "github" }, "original": { - "id": "flake-parts", - "type": "indirect" + "owner": "numtide", + "repo": "devshell", + "type": "github" } }, - "flake-parts_4": { + "devshell_3": { "inputs": { - "nixpkgs-lib": [ - "hci-effects", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", "nixpkgs" - ] - }, - "locked": { - "lastModified": 1712014858, - "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", - "type": "github" + ], + "systems": "systems_2" }, - "original": { - "id": "flake-parts", - "type": "indirect" - } - }, - "flake-utils": { "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "lastModified": 1686680692, + "narHash": "sha256-SsLZz3TDleraAiJq4EkmdyewSyiv5g0LZYc6vaLZOMQ=", "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "repo": "devshell", + "rev": "fd6223370774dd9c33354e87a007004b5fd36442", "type": "github" }, "original": { "owner": "numtide", - "repo": "flake-utils", + "repo": "devshell", "type": "github" } }, - "flake-utils_10": { + "devshell_4": { "inputs": { - "systems": "systems" + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "nixpkgs" + ], + "systems": "systems_3" }, "locked": { - "lastModified": 1685518550, - "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", + "lastModified": 1695973661, + "narHash": "sha256-BP2H4c42GThPIhERtTpV1yCtwQHYHEKdRu7pjrmQAwo=", "owner": "numtide", - "repo": "flake-utils", - "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", + "repo": "devshell", + "rev": "cd4e2fda3150dd2f689caeac07b7f47df5197c31", "type": "github" }, "original": { "owner": "numtide", - "repo": "flake-utils", + "repo": "devshell", "type": "github" } }, - "flake-utils_11": { + "devshell_5": { "inputs": { - "systems": "systems_2" + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "flake-utils" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ] }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", "owner": "numtide", - "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", "type": "github" }, "original": { "owner": "numtide", - "repo": "flake-utils", + "repo": "devshell", "type": "github" } }, - "flake-utils_12": { + "devshell_6": { "inputs": { - "systems": "systems_3" + "flake-utils": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "flake-utils" + ], + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" + ] }, "locked": { - "lastModified": 1685518550, - "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", "owner": "numtide", - "repo": "flake-utils", - "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", "type": "github" }, "original": { "owner": "numtide", - "repo": "flake-utils", + "repo": "devshell", "type": "github" } }, - "flake-utils_13": { + "dmerge": { "inputs": { - "systems": "systems_4" + "nixlib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "std", + "nixpkgs" + ], + "yants": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "std", + "yants" + ] }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "owner": "divnix", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "divnix", + "repo": "data-merge", "type": "github" } }, - "flake-utils_14": { + "dmerge_2": { "inputs": { - "systems": "systems_5" + "nixlib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ], + "yants": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "yants" + ] }, "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "owner": "divnix", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "divnix", + "repo": "data-merge", "type": "github" } }, - "flake-utils_15": { + "dmerge_3": { "inputs": { - "systems": "systems_6" + "haumea": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "haumea" + ], + "nixlib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "haumea", + "nixpkgs" + ], + "yants": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "yants" + ] }, "locked": { - "lastModified": 1685518550, - "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", + "lastModified": 1686862774, + "narHash": "sha256-ojGtRQ9pIOUrxsQEuEPerUkqIJEuod9hIflfNkY+9CE=", + "owner": "divnix", + "repo": "dmerge", + "rev": "9f7f7a8349d33d7bd02e0f2b484b1f076e503a96", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "divnix", + "ref": "0.2.1", + "repo": "dmerge", "type": "github" } }, - "flake-utils_16": { + "dmerge_4": { "inputs": { - "systems": "systems_7" + "nixlib": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ], + "yants": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "yants" + ] }, "locked": { - "lastModified": 1685518550, - "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "owner": "divnix", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "divnix", + "repo": "data-merge", "type": "github" } }, - "flake-utils_17": { + "dmerge_5": { "inputs": { - "systems": "systems_8" + "haumea": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "haumea" + ], + "nixlib": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "lib" + ], + "yants": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "yants" + ] }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "lastModified": 1686862774, + "narHash": "sha256-ojGtRQ9pIOUrxsQEuEPerUkqIJEuod9hIflfNkY+9CE=", + "owner": "divnix", + "repo": "dmerge", + "rev": "9f7f7a8349d33d7bd02e0f2b484b1f076e503a96", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "divnix", + "ref": "0.2.1", + "repo": "dmerge", "type": "github" } }, - "flake-utils_18": { + "dmerge_6": { "inputs": { - "systems": "systems_9" + "nixlib": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" + ], + "yants": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "yants" + ] }, "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "owner": "divnix", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "divnix", + "repo": "data-merge", "type": "github" } }, - "flake-utils_19": { - "inputs": { - "systems": "systems_10" - }, + "easy-purescript-nix": { + "flake": false, "locked": { - "lastModified": 1685518550, - "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", + "lastModified": 1710161569, + "narHash": "sha256-lcIRIOFCdIWEGyKyG/tB4KvxM9zoWuBRDxW+T+mvIb0=", + "owner": "justinwoo", + "repo": "easy-purescript-nix", + "rev": "117fd96acb69d7d1727df95b6fde9d8715e031fc", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "justinwoo", + "repo": "easy-purescript-nix", "type": "github" } }, - "flake-utils_2": { + "em": { + "flake": false, "locked": { - "lastModified": 1679360468, - "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", - "owner": "hamishmack", - "repo": "flake-utils", - "rev": "e1ea268ff47ad475443dbabcd54744b4e5b9d4f5", + "lastModified": 1684791668, + "narHash": "sha256-JyPm0RiWCfy/8rs7wd/IRSWIz+bTkD78uxIMnKktU2g=", + "owner": "deepfire", + "repo": "em", + "rev": "302cdf6d654fb18baff0213bdfa41a653774585a", "type": "github" }, "original": { - "owner": "hamishmack", - "ref": "hkm/nested-hydraJobs", - "repo": "flake-utils", + "owner": "deepfire", + "repo": "em", "type": "github" } }, - "flake-utils_20": { - "inputs": { - "systems": "systems_11" - }, + "em_2": { + "flake": false, "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "lastModified": 1684791668, + "narHash": "sha256-JyPm0RiWCfy/8rs7wd/IRSWIz+bTkD78uxIMnKktU2g=", + "owner": "deepfire", + "repo": "em", + "rev": "302cdf6d654fb18baff0213bdfa41a653774585a", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "deepfire", + "repo": "em", "type": "github" } }, - "flake-utils_21": { - "inputs": { - "systems": "systems_12" - }, + "em_3": { + "flake": false, "locked": { - "lastModified": 1685518550, - "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", + "lastModified": 1685015066, + "narHash": "sha256-etAdEoYhtvjTw1ITh28WPNfwvvb5t/fpwCP6s7odSiQ=", + "owner": "deepfire", + "repo": "em", + "rev": "af69bb5c2ac2161434d8fea45f920f8f359587ce", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "deepfire", + "repo": "em", "type": "github" } }, - "flake-utils_22": { - "inputs": { - "systems": "systems_13" - }, + "empty-flake": { "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "owner": "input-output-hk", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "repo": "empty-flake", "type": "github" } }, - "flake-utils_3": { + "empty-flake_2": { "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "owner": "input-output-hk", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "repo": "empty-flake", "type": "github" } }, - "flake-utils_4": { + "empty-flake_3": { "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "owner": "input-output-hk", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "repo": "empty-flake", "type": "github" } }, - "flake-utils_5": { + "empty-flake_4": { "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "owner": "input-output-hk", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "empty-flake", "type": "github" } }, - "flake-utils_6": { + "fenix": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "cardano-parts", + "auth-keys-hub", + "statix", + "nixpkgs" + ], + "rust-analyzer-src": "rust-analyzer-src" + }, "locked": { - "lastModified": 1644229661, - "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", + "lastModified": 1645251813, + "narHash": "sha256-cQ66tGjnZclBCS3nD26mZ5fUH+3/HnysGffBiWXUSHk=", + "owner": "nix-community", + "repo": "fenix", + "rev": "9892337b588c38ec59466a1c89befce464aae7f8", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "nix-community", + "repo": "fenix", "type": "github" } }, - "flake-utils_7": { + "fenix_2": { + "inputs": { + "nixpkgs": "nixpkgs_30", + "rust-analyzer-src": "rust-analyzer-src_2" + }, "locked": { - "lastModified": 1679360468, - "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", - "owner": "hamishmack", - "repo": "flake-utils", - "rev": "e1ea268ff47ad475443dbabcd54744b4e5b9d4f5", + "lastModified": 1677306201, + "narHash": "sha256-VZ9x7qdTosFvVsrpgFHrtYfT6PU3yMIs7NRYn9ELapI=", + "owner": "nix-community", + "repo": "fenix", + "rev": "0923f0c162f65ae40261ec940406049726cfeab4", "type": "github" }, "original": { - "owner": "hamishmack", - "ref": "hkm/nested-hydraJobs", - "repo": "flake-utils", + "owner": "nix-community", + "repo": "fenix", "type": "github" } }, - "flake-utils_8": { + "flake-compat": { + "flake": false, "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "edolstra", + "repo": "flake-compat", "type": "github" } }, - "flake-utils_9": { + "flake-compat_10": { + "flake": false, "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "lastModified": 1647532380, + "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "7da118186435255a30b5ffeabba9629c344c0bec", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "ref": "fixes", + "repo": "flake-compat", "type": "github" } }, - "ghc-8.6.5-iohk": { + "flake-compat_11": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", "type": "github" } }, - "ghc-8.6.5-iohk_2": { + "flake-compat_12": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "lastModified": 1673956053, + "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "owner": "edolstra", + "repo": "flake-compat", "type": "github" } }, - "ghc-8.6.5-iohk_3": { + "flake-compat_13": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "owner": "edolstra", + "repo": "flake-compat", "type": "github" } }, - "ghc-8.6.5-iohk_4": { + "flake-compat_14": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "owner": "edolstra", + "repo": "flake-compat", "type": "github" } }, - "ghc-8.6.5-iohk_5": { + "flake-compat_15": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1647532380, + "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "flake-compat", + "rev": "7da118186435255a30b5ffeabba9629c344c0bec", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "ref": "fixes", + "repo": "flake-compat", "type": "github" } }, - "ghc-8.6.5-iohk_6": { + "flake-compat_16": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", "type": "github" } }, - "ghc-8.6.5-iohk_7": { + "flake-compat_17": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "owner": "edolstra", + "repo": "flake-compat", "type": "github" } }, - "ghc-8.6.5-iohk_8": { + "flake-compat_18": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", "type": "github" } }, - "ghc910X": { + "flake-compat_19": { "flake": false, "locked": { - "lastModified": 1714520650, - "narHash": "sha256-4uz6RA1hRr0RheGNDM49a/B3jszqNNU8iHIow4mSyso=", - "ref": "ghc-9.10", - "rev": "2c6375b9a804ac7fca1e82eb6fcfc8594c67c5f5", - "revCount": 62663, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1647532380, + "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "7da118186435255a30b5ffeabba9629c344c0bec", + "type": "github" }, "original": { - "ref": "ghc-9.10", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "input-output-hk", + "ref": "fixes", + "repo": "flake-compat", + "type": "github" } }, - "ghc911": { + "flake-compat_2": { "flake": false, "locked": { - "lastModified": 1714817013, - "narHash": "sha256-m2je4UvWfkgepMeUIiXHMwE6W+iVfUY38VDGkMzjCcc=", - "ref": "refs/heads/master", - "rev": "fc24c5cf6c62ca9e3c8d236656e139676df65034", - "revCount": 62816, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "type": "github" }, "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "input-output-hk", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", + "type": "github" } }, - "ghc98X": { + "flake-compat_20": { "flake": false, "locked": { - "lastModified": 1696643148, - "narHash": "sha256-E02DfgISH7EvvNAu0BHiPvl1E5FGMDi0pWdNZtIBC9I=", - "ref": "ghc-9.8", - "rev": "443e870d977b1ab6fc05f47a9a17bc49296adbd6", - "revCount": 61642, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - }, - "original": { - "ref": "ghc-9.8", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", + "type": "github" } }, - "ghc98X_2": { + "flake-compat_21": { "flake": false, "locked": { - "lastModified": 1696643148, - "narHash": "sha256-E02DfgISH7EvvNAu0BHiPvl1E5FGMDi0pWdNZtIBC9I=", - "ref": "ghc-9.8", - "rev": "443e870d977b1ab6fc05f47a9a17bc49296adbd6", - "revCount": 61642, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "type": "github" }, "original": { - "ref": "ghc-9.8", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" } }, - "ghc98X_3": { + "flake-compat_22": { "flake": false, "locked": { - "lastModified": 1696643148, - "narHash": "sha256-E02DfgISH7EvvNAu0BHiPvl1E5FGMDi0pWdNZtIBC9I=", - "ref": "ghc-9.8", - "rev": "443e870d977b1ab6fc05f47a9a17bc49296adbd6", - "revCount": 61642, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "type": "github" }, "original": { - "ref": "ghc-9.8", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "input-output-hk", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", + "type": "github" } }, - "ghc98X_4": { + "flake-compat_23": { "flake": false, "locked": { - "lastModified": 1696643148, - "narHash": "sha256-E02DfgISH7EvvNAu0BHiPvl1E5FGMDi0pWdNZtIBC9I=", - "ref": "ghc-9.8", - "rev": "443e870d977b1ab6fc05f47a9a17bc49296adbd6", - "revCount": 61642, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" }, "original": { - "ref": "ghc-9.8", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" } }, - "ghc99": { + "flake-compat_3": { "flake": false, "locked": { - "lastModified": 1701580282, - "narHash": "sha256-drA01r3JrXnkKyzI+owMZGxX0JameMzjK0W5jJE/+V4=", - "ref": "refs/heads/master", - "rev": "f5eb0f2982e9cf27515e892c4bdf634bcfb28459", - "revCount": 62197, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1673956053, + "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "type": "github" }, "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" } }, - "ghc99_2": { + "flake-compat_4": { "flake": false, "locked": { - "lastModified": 1701580282, - "narHash": "sha256-drA01r3JrXnkKyzI+owMZGxX0JameMzjK0W5jJE/+V4=", - "ref": "refs/heads/master", - "rev": "f5eb0f2982e9cf27515e892c4bdf634bcfb28459", - "revCount": 62197, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1647532380, + "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "7da118186435255a30b5ffeabba9629c344c0bec", + "type": "github" }, "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "input-output-hk", + "ref": "fixes", + "repo": "flake-compat", + "type": "github" } }, - "ghc99_3": { + "flake-compat_5": { "flake": false, "locked": { - "lastModified": 1701580282, - "narHash": "sha256-drA01r3JrXnkKyzI+owMZGxX0JameMzjK0W5jJE/+V4=", - "ref": "refs/heads/master", - "rev": "f5eb0f2982e9cf27515e892c4bdf634bcfb28459", - "revCount": 62197, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "type": "github" }, "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "input-output-hk", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", + "type": "github" } }, - "ghc99_4": { + "flake-compat_6": { "flake": false, "locked": { - "lastModified": 1701580282, - "narHash": "sha256-drA01r3JrXnkKyzI+owMZGxX0JameMzjK0W5jJE/+V4=", - "ref": "refs/heads/master", - "rev": "f5eb0f2982e9cf27515e892c4bdf634bcfb28459", - "revCount": 62197, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1647532380, + "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "7da118186435255a30b5ffeabba9629c344c0bec", + "type": "github" }, "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "input-output-hk", + "ref": "fixes", + "repo": "flake-compat", + "type": "github" } }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "plutus", - "iogx", - "iogx-template-haskell", - "iogx", - "pre-commit-hooks-nix", - "nixpkgs" - ] + "flake-compat_7": { + "flake": false, + "locked": { + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "type": "github" }, + "original": { + "owner": "input-output-hk", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_8": { + "flake": false, "locked": { - "lastModified": 1660459072, - "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", + "owner": "edolstra", + "repo": "flake-compat", "type": "github" } }, - "gitignore_2": { + "flake-compat_9": { + "flake": false, + "locked": { + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-lang": { "inputs": { - "nixpkgs": [ - "flake-lang", - "plutus", - "iogx", - "iogx-template-vanilla", - "iogx", - "pre-commit-hooks-nix", - "nixpkgs" - ] + "cardano-haskell-packages": "cardano-haskell-packages", + "crane": "crane", + "ctl": "ctl", + "db-sync-ctl": "db-sync-ctl", + "flake-parts": "flake-parts_7", + "haskell-nix": "haskell-nix_3", + "hci-effects": "hci-effects", + "iohk-nix": "iohk-nix_3", + "nixpkgs": "nixpkgs_48", + "plutarch": "plutarch", + "pre-commit-hooks": "pre-commit-hooks", + "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1660459072, - "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "lastModified": 1733469835, + "narHash": "sha256-NkDqMD30gcByCc/Hk9Xifa+D8GPddhlhlxTcHAoQYao=", + "owner": "mlabs-haskell", + "repo": "flake-lang.nix", + "rev": "bf9f458b38904a9eb4bf35f196b61b680adaa6e0", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", + "owner": "mlabs-haskell", + "repo": "flake-lang.nix", "type": "github" } }, - "gitignore_3": { + "flake-parts": { "inputs": { - "nixpkgs": [ - "flake-lang", - "plutus", - "iogx", - "pre-commit-hooks-nix", - "nixpkgs" - ] + "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1660459072, - "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "lastModified": 1672152762, + "narHash": "sha256-U8iWWHgabN07zfbgedogMVWrEP1Zywyf3Yx3OYHSSgE=", "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "repo": "flake-parts", + "rev": "19e0f88324d90509141e192664ded98bb88ef9b2", "type": "github" }, "original": { "owner": "hercules-ci", - "repo": "gitignore.nix", + "repo": "flake-parts", "type": "github" } }, - "gitignore_4": { + "flake-parts_2": { "inputs": { - "nixpkgs": [ - "flake-lang", - "pre-commit-hooks", - "nixpkgs" - ] + "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "lastModified": 1682984683, + "narHash": "sha256-fSMthG+tp60AHhNmaHc4StT3ltfHkQsJtN8GhfLWmtI=", "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "repo": "flake-parts", + "rev": "86684881e184f41aa322e653880e497b66429f3e", "type": "github" }, "original": { "owner": "hercules-ci", - "repo": "gitignore.nix", + "repo": "flake-parts", "type": "github" } }, - "gomod2nix": { + "flake-parts_3": { "inputs": { - "nixpkgs": "nixpkgs_6", - "utils": "utils" + "nixpkgs-lib": "nixpkgs-lib_3" }, "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", + "lastModified": 1690933134, + "narHash": "sha256-ab989mN63fQZBFrkk4Q8bYxQCktuHmBIBqUG1jl6/FQ=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "59cf3f1447cfc75087e7273b04b31e689a8599fb", "type": "github" }, "original": { - "owner": "tweag", - "repo": "gomod2nix", + "owner": "hercules-ci", + "repo": "flake-parts", "type": "github" } }, - "gomod2nix_2": { + "flake-parts_4": { "inputs": { - "nixpkgs": "nixpkgs_14", - "utils": "utils_3" + "nixpkgs-lib": "nixpkgs-lib_4" }, "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", + "lastModified": 1690933134, + "narHash": "sha256-ab989mN63fQZBFrkk4Q8bYxQCktuHmBIBqUG1jl6/FQ=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "59cf3f1447cfc75087e7273b04b31e689a8599fb", "type": "github" }, "original": { - "owner": "tweag", - "repo": "gomod2nix", + "owner": "hercules-ci", + "repo": "flake-parts", "type": "github" } }, - "hackage": { - "flake": false, + "flake-parts_5": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib_5" + }, "locked": { - "lastModified": 1654219082, - "narHash": "sha256-sm59eg5wSrfIAjNXfBaaOBQ8daghF3g1NiGazYfj+no=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "fc90e7c5dea0483bacb01fc00bd2ab8f8e72500d", + "lastModified": 1696343447, + "narHash": "sha256-B2xAZKLkkeRFG5XcHHSXXcP7To9Xzr59KXeZiRf4vdQ=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "c9afaba3dfa4085dbd2ccb38dfade5141e33d9d4", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", + "owner": "hercules-ci", + "repo": "flake-parts", "type": "github" } }, - "hackage-nix": { - "flake": false, + "flake-parts_6": { + "inputs": { + "nixpkgs-lib": [ + "flake-lang", + "ctl", + "hercules-ci-effects", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1702772694, - "narHash": "sha256-KL6ZjbhPBCco1ho0lmh0/dfPSNxjF8qtrTlzQcTN3iw=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "20bd4b5f667f892230d4a28ea4607e85ce9bc44e", + "lastModified": 1712014858, + "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" + "id": "flake-parts", + "type": "indirect" } }, - "hackageNix": { - "flake": false, + "flake-parts_7": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib_6" + }, "locked": { - "lastModified": 1685492843, - "narHash": "sha256-X8dNs5Gfc2ucfaWAgZ1VmkpBB4Cb44EQZu0b7tkvz2Y=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "e7407bab324eb2445bda58c5ffac393e80dda1e4", + "lastModified": 1730504689, + "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "506278e768c2a08bec68eb62932193e341f55c90", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", + "owner": "hercules-ci", + "repo": "flake-parts", "type": "github" } }, - "hackage_2": { - "flake": false, + "flake-parts_8": { + "inputs": { + "nixpkgs-lib": [ + "flake-lang", + "hci-effects", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1684283135, - "narHash": "sha256-kG6+9ke7nYsbdvpMgxFcUi5eLA5WChL0DkP655si89U=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "720c07ced0ec9132ada4cd8f14b908330a1b290b", + "lastModified": 1712014858, + "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", + "id": "flake-parts", + "type": "indirect" + } + }, + "flake-parts_9": { + "inputs": { + "nixpkgs-lib": [ + "hci-effects", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1733312601, + "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", "type": "github" + }, + "original": { + "id": "flake-parts", + "type": "indirect" } }, - "hackage_3": { - "flake": false, + "flake-root": { "locked": { - "lastModified": 1717893607, - "narHash": "sha256-hAPKRc5E6GwiefyXQ+8StJ+Tzfj+/e/nQSWRt4BUBQA=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "021eba0183dede166efc3d6e798862386c78d87f", + "lastModified": 1692742795, + "narHash": "sha256-f+Y0YhVCIJ06LemO+3Xx00lIcqQxSKJHXT/yk1RTKxw=", + "owner": "srid", + "repo": "flake-root", + "rev": "d9a70d9c7a5fd7f3258ccf48da9335e9b47c3937", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", + "owner": "srid", + "repo": "flake-root", "type": "github" } }, - "hackage_4": { - "flake": false, + "flake-utils": { "locked": { - "lastModified": 1709079728, - "narHash": "sha256-tzjb4AeQjm4B/hJgoy6XhoGAS9d2zqX0TQFyGL3IqhQ=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "7b66a4d1a5231a0dd357ab9f290619012e39b2db", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "hackage_5": { - "flake": false, + "flake-utils_10": { "locked": { - "lastModified": 1703636672, - "narHash": "sha256-QVADvglA1x9WpQFij73VvdvnqquCUCNBM0BOFHXQz0Y=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "6a9040a7f72c7e629b286a461cf856d987c163ba", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "hackage_6": { - "flake": false, + "flake-utils_11": { "locked": { - "lastModified": 1703636672, - "narHash": "sha256-QVADvglA1x9WpQFij73VvdvnqquCUCNBM0BOFHXQz0Y=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "6a9040a7f72c7e629b286a461cf856d987c163ba", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskell-nix": { - "inputs": { - "HTTP": "HTTP_2", - "cabal-32": "cabal-32_2", - "cabal-34": "cabal-34_2", - "cabal-36": "cabal-36_2", - "cardano-shell": "cardano-shell_2", - "flake-compat": "flake-compat_5", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_2", - "ghc98X": "ghc98X", - "ghc99": "ghc99", - "hackage": [ - "flake-lang", - "ctl", - "hackage-nix" - ], - "hls-1.10": "hls-1.10_2", - "hls-2.0": "hls-2.0", - "hls-2.2": "hls-2.2", - "hls-2.3": "hls-2.3", - "hls-2.4": "hls-2.4", - "hpc-coveralls": "hpc-coveralls_2", - "hydra": "hydra_2", - "iserv-proxy": "iserv-proxy_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "nixpkgs" - ], - "nixpkgs-2003": "nixpkgs-2003_2", - "nixpkgs-2105": "nixpkgs-2105_2", - "nixpkgs-2111": "nixpkgs-2111_2", - "nixpkgs-2205": "nixpkgs-2205_2", - "nixpkgs-2211": "nixpkgs-2211_2", - "nixpkgs-2305": "nixpkgs-2305", - "nixpkgs-2311": "nixpkgs-2311", - "nixpkgs-unstable": "nixpkgs-unstable_2", - "old-ghc-nix": "old-ghc-nix_2", - "stackage": "stackage_2" - }, + "flake-utils_12": { "locked": { - "lastModified": 1702774226, - "narHash": "sha256-QUQBV05VimFU0pasJlialCcL/jlCumzaTmCM9+6Ncpk=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "6ce1c8ab2a6d4af5721b22bd95968439b8c3c307", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskell-nix_2": { - "inputs": { - "HTTP": "HTTP_3", - "cabal-32": "cabal-32_3", - "cabal-34": "cabal-34_3", - "cabal-36": "cabal-36_3", - "cardano-shell": "cardano-shell_3", - "flake-utils": "flake-utils_6", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_3", - "hackage": "hackage", - "hpc-coveralls": "hpc-coveralls_3", - "hydra": "hydra_3", - "nix-tools": "nix-tools", - "nixpkgs": [ - "flake-lang", - "ctl", - "kupo-nixos", - "haskell-nix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_3", - "nixpkgs-2105": "nixpkgs-2105_3", - "nixpkgs-2111": "nixpkgs-2111_3", - "nixpkgs-unstable": "nixpkgs-unstable_3", - "old-ghc-nix": "old-ghc-nix_3", - "stackage": "stackage_3" - }, + "flake-utils_13": { "locked": { - "lastModified": 1654219238, - "narHash": "sha256-PMS7uSQjYCjsjUfVidTdKcuNtKNu5VPmeNvxruT72go=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "974a61451bb1d41b32090eb51efd7ada026d16d9", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "974a61451bb1d41b32090eb51efd7ada026d16d9", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskell-nix_3": { - "inputs": { - "HTTP": "HTTP_5", - "cabal-32": "cabal-32_5", - "cabal-34": "cabal-34_5", - "cabal-36": "cabal-36_5", - "cardano-shell": "cardano-shell_5", - "flake-compat": "flake-compat_11", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_5", - "ghc910X": "ghc910X", - "ghc911": "ghc911", - "hackage": "hackage_3", - "hls-1.10": "hls-1.10_4", - "hls-2.0": "hls-2.0_2", - "hls-2.2": "hls-2.2_2", - "hls-2.3": "hls-2.3_2", - "hls-2.4": "hls-2.4_2", - "hls-2.5": "hls-2.5", - "hls-2.6": "hls-2.6", - "hls-2.7": "hls-2.7", - "hls-2.8": "hls-2.8", - "hpc-coveralls": "hpc-coveralls_5", - "hydra": "hydra_5", - "iserv-proxy": "iserv-proxy_4", - "nixpkgs": [ - "flake-lang", - "haskell-nix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_5", - "nixpkgs-2105": "nixpkgs-2105_5", - "nixpkgs-2111": "nixpkgs-2111_5", - "nixpkgs-2205": "nixpkgs-2205_4", - "nixpkgs-2211": "nixpkgs-2211_4", - "nixpkgs-2305": "nixpkgs-2305_2", - "nixpkgs-2311": "nixpkgs-2311_2", - "nixpkgs-unstable": "nixpkgs-unstable_5", - "old-ghc-nix": "old-ghc-nix_5", - "stackage": "stackage_5" - }, + "flake-utils_14": { "locked": { - "lastModified": 1717894247, - "narHash": "sha256-NGAVp0Cy3QrnFKjsORkWT+4rBPO2IITYwC7hgDE7P+Y=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "7271027689c8736383e104dd7e55fa81c4c7501e", + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskell-nix_4": { + "flake-utils_15": { "inputs": { - "HTTP": "HTTP_6", - "cabal-32": "cabal-32_6", - "cabal-34": "cabal-34_6", - "cabal-36": "cabal-36_6", - "cardano-shell": "cardano-shell_6", - "flake-compat": "flake-compat_12", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_6", - "ghc98X": "ghc98X_2", - "ghc99": "ghc99_2", - "hackage": [ - "flake-lang", - "plutus", - "hackage" - ], - "hls-1.10": "hls-1.10_5", - "hls-2.0": "hls-2.0_3", - "hls-2.2": "hls-2.2_3", - "hls-2.3": "hls-2.3_3", - "hls-2.4": "hls-2.4_3", - "hls-2.5": "hls-2.5_2", - "hls-2.6": "hls-2.6_2", - "hpc-coveralls": "hpc-coveralls_6", - "hydra": "hydra_6", - "iserv-proxy": "iserv-proxy_5", - "nix-tools-static": "nix-tools-static", - "nixpkgs": [ - "flake-lang", - "plutus", - "haskell-nix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_6", - "nixpkgs-2105": "nixpkgs-2105_6", - "nixpkgs-2111": "nixpkgs-2111_6", - "nixpkgs-2205": "nixpkgs-2205_5", - "nixpkgs-2211": "nixpkgs-2211_5", - "nixpkgs-2305": "nixpkgs-2305_3", - "nixpkgs-2311": "nixpkgs-2311_3", - "nixpkgs-unstable": "nixpkgs-unstable_6", - "old-ghc-nix": "old-ghc-nix_6", - "stackage": "stackage_6" + "systems": "systems_4" }, "locked": { - "lastModified": 1709081399, - "narHash": "sha256-CT3WgpW0+XrD3PUjgiH2ktyeP/cNNuS4fE8zJU6Bm7w=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "446a4ddb87f52de411fce0f166843b4a67f19de9", + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskell-nix_5": { - "inputs": { - "HTTP": "HTTP_7", - "cabal-32": "cabal-32_7", - "cabal-34": "cabal-34_7", - "cabal-36": "cabal-36_7", - "cardano-shell": "cardano-shell_7", - "flake-compat": "flake-compat_13", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_7", - "ghc98X": "ghc98X_3", - "ghc99": "ghc99_3", - "hackage": [ - "flake-lang", - "plutus", - "iogx", - "iogx-template-haskell", - "iogx", - "hackage" - ], - "hls-1.10": "hls-1.10_6", - "hls-2.0": "hls-2.0_4", - "hls-2.2": "hls-2.2_4", - "hls-2.3": "hls-2.3_4", - "hls-2.4": "hls-2.4_4", - "hpc-coveralls": "hpc-coveralls_7", - "hydra": "hydra_7", - "iserv-proxy": "iserv-proxy_6", - "nixpkgs": [ - "flake-lang", - "plutus", - "iogx", - "iogx-template-haskell", - "iogx", - "haskell-nix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_7", - "nixpkgs-2105": "nixpkgs-2105_7", - "nixpkgs-2111": "nixpkgs-2111_7", - "nixpkgs-2205": "nixpkgs-2205_6", - "nixpkgs-2211": "nixpkgs-2211_6", - "nixpkgs-2305": "nixpkgs-2305_4", - "nixpkgs-2311": "nixpkgs-2311_4", - "nixpkgs-unstable": "nixpkgs-unstable_7", - "old-ghc-nix": "old-ghc-nix_7", - "stackage": "stackage_7" - }, + "flake-utils_16": { "locked": { - "lastModified": 1703638209, - "narHash": "sha256-MeEwFKZGA+DEx54IE4JQQi5ss+kplyikHQFlc2pz3NM=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "3e17b0afaa245a660e02af7323de96153124928b", + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskell-nix_6": { - "inputs": { - "HTTP": "HTTP_8", - "cabal-32": "cabal-32_8", - "cabal-34": "cabal-34_8", - "cabal-36": "cabal-36_8", - "cardano-shell": "cardano-shell_8", - "flake-compat": "flake-compat_15", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_8", - "ghc98X": "ghc98X_4", - "ghc99": "ghc99_4", - "hackage": [ - "flake-lang", - "plutus", - "iogx", - "iogx-template-vanilla", - "iogx", - "hackage" - ], - "hls-1.10": "hls-1.10_7", - "hls-2.0": "hls-2.0_5", - "hls-2.2": "hls-2.2_5", - "hls-2.3": "hls-2.3_5", - "hls-2.4": "hls-2.4_5", - "hpc-coveralls": "hpc-coveralls_8", - "hydra": "hydra_8", - "iserv-proxy": "iserv-proxy_7", - "nixpkgs": [ - "flake-lang", - "plutus", - "iogx", - "iogx-template-vanilla", - "iogx", - "haskell-nix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_8", - "nixpkgs-2105": "nixpkgs-2105_8", - "nixpkgs-2111": "nixpkgs-2111_8", - "nixpkgs-2205": "nixpkgs-2205_7", - "nixpkgs-2211": "nixpkgs-2211_7", - "nixpkgs-2305": "nixpkgs-2305_5", - "nixpkgs-2311": "nixpkgs-2311_5", - "nixpkgs-unstable": "nixpkgs-unstable_8", - "old-ghc-nix": "old-ghc-nix_8", - "stackage": "stackage_8" + "flake-utils_17": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_18": { "locked": { - "lastModified": 1703638209, - "narHash": "sha256-MeEwFKZGA+DEx54IE4JQQi5ss+kplyikHQFlc2pz3NM=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "3e17b0afaa245a660e02af7323de96153124928b", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskellNix": { - "inputs": { - "HTTP": "HTTP", - "cabal-32": "cabal-32", - "cabal-34": "cabal-34", - "cabal-36": "cabal-36", - "cardano-shell": "cardano-shell", - "flake-compat": "flake-compat_2", - "flake-utils": "flake-utils_2", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk", - "hackage": [ - "flake-lang", - "ctl", - "cardano-node", - "hackageNix" - ], - "hls-1.10": "hls-1.10", - "hpc-coveralls": "hpc-coveralls", - "hydra": "hydra", - "iserv-proxy": "iserv-proxy", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "nixpkgs" - ], - "nixpkgs-2003": "nixpkgs-2003", - "nixpkgs-2105": "nixpkgs-2105", - "nixpkgs-2111": "nixpkgs-2111", - "nixpkgs-2205": "nixpkgs-2205", - "nixpkgs-2211": "nixpkgs-2211", - "nixpkgs-unstable": "nixpkgs-unstable", - "old-ghc-nix": "old-ghc-nix", - "stackage": "stackage" + "flake-utils_19": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { "locked": { - "lastModified": 1685495397, - "narHash": "sha256-BwbWroS1Qm8BiHatG5+iHMHN5U6kqOccewBROUYuMKw=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "d07c42cdb1cf88d0cab27d3090b00cb3899643c9", + "lastModified": 1679360468, + "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", + "owner": "hamishmack", + "repo": "flake-utils", + "rev": "e1ea268ff47ad475443dbabcd54744b4e5b9d4f5", + "type": "github" + }, + "original": { + "owner": "hamishmack", + "ref": "hkm/nested-hydraJobs", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_20": { + "inputs": { + "systems": "systems_5" + }, + "locked": { + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_21": { + "locked": { + "lastModified": 1679360468, + "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", + "owner": "hamishmack", + "repo": "flake-utils", + "rev": "e1ea268ff47ad475443dbabcd54744b4e5b9d4f5", + "type": "github" + }, + "original": { + "owner": "hamishmack", + "ref": "hkm/nested-hydraJobs", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_22": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_23": { + "locked": { + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_3": { + "locked": { + "lastModified": 1634851050, + "narHash": "sha256-N83GlSGPJJdcqhUxSCS/WwW5pksYf3VP1M13cDRTSVA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c91f3de5adaf1de973b797ef7485e441a65b8935", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_4": { + "locked": { + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_5": { + "locked": { + "lastModified": 1679360468, + "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", + "owner": "hamishmack", + "repo": "flake-utils", + "rev": "e1ea268ff47ad475443dbabcd54744b4e5b9d4f5", + "type": "github" + }, + "original": { + "owner": "hamishmack", + "ref": "hkm/nested-hydraJobs", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_6": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_7": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_8": { + "locked": { + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_9": { + "locked": { + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "ghc-8.6.5-iohk": { + "flake": false, + "locked": { + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", + "type": "github" + } + }, + "ghc-8.6.5-iohk_2": { + "flake": false, + "locked": { + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", + "type": "github" + } + }, + "ghc-8.6.5-iohk_3": { + "flake": false, + "locked": { + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", + "type": "github" + } + }, + "ghc-8.6.5-iohk_4": { + "flake": false, + "locked": { + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", + "type": "github" + } + }, + "ghc-8.6.5-iohk_5": { + "flake": false, + "locked": { + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", + "type": "github" + } + }, + "ghc-8.6.5-iohk_6": { + "flake": false, + "locked": { + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", + "type": "github" + } + }, + "ghc-8.6.5-iohk_7": { + "flake": false, + "locked": { + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", + "type": "github" + } + }, + "ghc-8.6.5-iohk_8": { + "flake": false, + "locked": { + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", + "type": "github" + } + }, + "ghc910X": { + "flake": false, + "locked": { + "lastModified": 1714520650, + "narHash": "sha256-4uz6RA1hRr0RheGNDM49a/B3jszqNNU8iHIow4mSyso=", + "ref": "ghc-9.10", + "rev": "2c6375b9a804ac7fca1e82eb6fcfc8594c67c5f5", + "revCount": 62663, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + }, + "original": { + "ref": "ghc-9.10", + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + } + }, + "ghc911": { + "flake": false, + "locked": { + "lastModified": 1714817013, + "narHash": "sha256-m2je4UvWfkgepMeUIiXHMwE6W+iVfUY38VDGkMzjCcc=", + "ref": "refs/heads/master", + "rev": "fc24c5cf6c62ca9e3c8d236656e139676df65034", + "revCount": 62816, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + }, + "original": { + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + } + }, + "ghc98X": { + "flake": false, + "locked": { + "lastModified": 1696643148, + "narHash": "sha256-E02DfgISH7EvvNAu0BHiPvl1E5FGMDi0pWdNZtIBC9I=", + "ref": "ghc-9.8", + "rev": "443e870d977b1ab6fc05f47a9a17bc49296adbd6", + "revCount": 61642, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + }, + "original": { + "ref": "ghc-9.8", + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + } + }, + "ghc98X_2": { + "flake": false, + "locked": { + "lastModified": 1696643148, + "narHash": "sha256-E02DfgISH7EvvNAu0BHiPvl1E5FGMDi0pWdNZtIBC9I=", + "ref": "ghc-9.8", + "rev": "443e870d977b1ab6fc05f47a9a17bc49296adbd6", + "revCount": 61642, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + }, + "original": { + "ref": "ghc-9.8", + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + } + }, + "ghc99": { + "flake": false, + "locked": { + "lastModified": 1697054644, + "narHash": "sha256-kKarOuXUaAH3QWv7ASx+gGFMHaHKe0pK5Zu37ky2AL4=", + "ref": "refs/heads/master", + "rev": "f383a242c76f90bcca8a4d7ee001dcb49c172a9a", + "revCount": 62040, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + }, + "original": { + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + } + }, + "ghc99_2": { + "flake": false, + "locked": { + "lastModified": 1697054644, + "narHash": "sha256-kKarOuXUaAH3QWv7ASx+gGFMHaHKe0pK5Zu37ky2AL4=", + "ref": "refs/heads/master", + "rev": "f383a242c76f90bcca8a4d7ee001dcb49c172a9a", + "revCount": 62040, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + }, + "original": { + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + } + }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "pre-commit-hooks-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1703887061, + "narHash": "sha256-gGPa9qWNc6eCXT/+Z5/zMkyYOuRZqeFZBDbopNZQkuY=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "43e1aa1308018f37118e34d3a9cb4f5e75dc11d5", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_2": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gomod2nix": { + "inputs": { + "nixpkgs": "nixpkgs_18", + "utils": "utils_2" + }, + "locked": { + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", + "type": "github" + }, + "original": { + "owner": "tweag", + "repo": "gomod2nix", + "type": "github" + } + }, + "gomod2nix_2": { + "inputs": { + "nixpkgs": "nixpkgs_22", + "utils": "utils_4" + }, + "locked": { + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", + "type": "github" + }, + "original": { + "owner": "tweag", + "repo": "gomod2nix", + "type": "github" + } + }, + "gomod2nix_3": { + "inputs": { + "nixpkgs": "nixpkgs_31", + "utils": "utils_7" + }, + "locked": { + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", + "type": "github" + }, + "original": { + "owner": "tweag", + "repo": "gomod2nix", + "type": "github" + } + }, + "gomod2nix_4": { + "inputs": { + "nixpkgs": "nixpkgs_41", + "utils": "utils_9" + }, + "locked": { + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", + "type": "github" + }, + "original": { + "owner": "tweag", + "repo": "gomod2nix", + "type": "github" + } + }, + "hackage": { + "flake": false, + "locked": { + "lastModified": 1692145451, + "narHash": "sha256-kqfyD3Mu5kgiH5W2ZshUhzO46H0zYDpwD1SWz+POMrk=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "9d2daeca0e09002bc6fb552a097a1802a2f3a4e3", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "hackage.nix", + "type": "github" + } + }, + "hackage-nix": { + "flake": false, + "locked": { + "lastModified": 1724977850, + "narHash": "sha256-awqEskjcqDqrT+Xgl9GK8LCPfxtzuwoLH12nbVoOjT8=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "7007cb02b7b0333f7e2c33dd8b5d1de5105d36b4", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "hackage.nix", + "type": "github" + } + }, + "hackageNix": { + "flake": false, + "locked": { + "lastModified": 1702945378, + "narHash": "sha256-mo1MlOphO4bRwZ8T3mDwU5LOtdQcWSA+93lT1HkCcyw=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "e59b9616a744727e8e64f605f9f216464f12f89b", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "hackage.nix", + "type": "github" + } + }, + "hackageNix_2": { + "flake": false, + "locked": { + "lastModified": 1685492843, + "narHash": "sha256-X8dNs5Gfc2ucfaWAgZ1VmkpBB4Cb44EQZu0b7tkvz2Y=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "e7407bab324eb2445bda58c5ffac393e80dda1e4", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "hackage.nix", + "type": "github" + } + }, + "hackageNix_3": { + "flake": false, + "locked": { + "lastModified": 1701303758, + "narHash": "sha256-8XqVEQwmJBxRPFa7SizJuZxbG+NFEZKWdhtYPTQ7ZKM=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "8a0e3ae9295b7ef8431b9be208dd06aa2789be53", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "hackage.nix", + "type": "github" + } + }, + "hackageNix_4": { + "flake": false, + "locked": { + "lastModified": 1724200761, + "narHash": "sha256-IDenOlZc5aph7Jz6xNQXGNnnx896hUYrsRU8mbE4bVw=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "11b43aaf3ff8018897f1b84a3fb60cce9ae7056d", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "hackage.nix", + "type": "github" + } + }, + "hackage_2": { + "flake": false, + "locked": { + "lastModified": 1684283135, + "narHash": "sha256-kG6+9ke7nYsbdvpMgxFcUi5eLA5WChL0DkP655si89U=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "720c07ced0ec9132ada4cd8f14b908330a1b290b", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "hackage.nix", + "type": "github" + } + }, + "hackage_3": { + "flake": false, + "locked": { + "lastModified": 1732408308, + "narHash": "sha256-cD+g07FungRIY0djRv6f7eQWSob9H74wGDxxlxlnVT4=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "1c0d41d9f45b8c6b5007102803a8eaa4353d041c", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "hackage.nix", + "type": "github" + } + }, + "haskell-nix": { + "inputs": { + "HTTP": "HTTP", + "cabal-32": "cabal-32", + "cabal-34": "cabal-34", + "cabal-36": "cabal-36", + "cardano-shell": "cardano-shell", + "flake-compat": "flake-compat_2", + "flake-utils": "flake-utils_2", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk", + "hackage": "hackage", + "hls-1.10": "hls-1.10", + "hls-2.0": "hls-2.0", + "hpc-coveralls": "hpc-coveralls", + "hydra": "hydra", + "iserv-proxy": "iserv-proxy", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "cardano-parts", + "haskell-nix", + "nixpkgs-unstable" + ], + "nixpkgs-2003": "nixpkgs-2003", + "nixpkgs-2105": "nixpkgs-2105", + "nixpkgs-2111": "nixpkgs-2111", + "nixpkgs-2205": "nixpkgs-2205", + "nixpkgs-2211": "nixpkgs-2211", + "nixpkgs-2305": "nixpkgs-2305", + "nixpkgs-unstable": "nixpkgs-unstable", + "old-ghc-nix": "old-ghc-nix", + "stackage": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "cardano-parts", + "empty-flake" + ] + }, + "locked": { + "lastModified": 1692147008, + "narHash": "sha256-ZiRaryaboJbNZ7y7XKZs2xuSfydZyGeupJNOfYpgQSw=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "1970bb2d5b0eb8152f89b305f32d055dbd6857d9", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "haskell.nix", + "type": "github" + } + }, + "haskell-nix_2": { + "inputs": { + "HTTP": "HTTP_6", + "cabal-32": "cabal-32_6", + "cabal-34": "cabal-34_6", + "cabal-36": "cabal-36_6", + "cardano-shell": "cardano-shell_6", + "flake-compat": "flake-compat_18", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_6", + "hackage": [ + "flake-lang", + "ctl", + "hackage-nix" + ], + "hls-1.10": "hls-1.10_6", + "hls-2.0": "hls-2.0_5", + "hls-2.2": "hls-2.2_4", + "hls-2.3": "hls-2.3_4", + "hls-2.4": "hls-2.4_4", + "hls-2.5": "hls-2.5_2", + "hls-2.6": "hls-2.6_2", + "hls-2.7": "hls-2.7_2", + "hls-2.8": "hls-2.8_2", + "hls-2.9": "hls-2.9_2", + "hpc-coveralls": "hpc-coveralls_6", + "hydra": "hydra_6", + "iserv-proxy": "iserv-proxy_6", + "nixpkgs": [ + "flake-lang", + "ctl", + "nixpkgs" + ], + "nixpkgs-2003": "nixpkgs-2003_6", + "nixpkgs-2105": "nixpkgs-2105_6", + "nixpkgs-2111": "nixpkgs-2111_6", + "nixpkgs-2205": "nixpkgs-2205_6", + "nixpkgs-2211": "nixpkgs-2211_6", + "nixpkgs-2305": "nixpkgs-2305_5", + "nixpkgs-2311": "nixpkgs-2311_2", + "nixpkgs-2405": "nixpkgs-2405", + "nixpkgs-unstable": "nixpkgs-unstable_7", + "old-ghc-nix": "old-ghc-nix_6", + "stackage": "stackage_5" + }, + "locked": { + "lastModified": 1724979052, + "narHash": "sha256-hoL0ofZI4L6w4413Wr4eZkMZzj+TyyDXF84FxEjppxU=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "5837bf2e6dbbbc2fc60fe7d27c9a03d9f8e9e974", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "haskell.nix", + "type": "github" + } + }, + "haskell-nix_3": { + "inputs": { + "HTTP": "HTTP_8", + "cabal-32": "cabal-32_8", + "cabal-34": "cabal-34_8", + "cabal-36": "cabal-36_8", + "cardano-shell": "cardano-shell_8", + "flake-compat": "flake-compat_22", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_8", + "hackage": "hackage_3", + "hls-1.10": "hls-1.10_8", + "hls-2.0": "hls-2.0_6", + "hls-2.2": "hls-2.2_5", + "hls-2.3": "hls-2.3_5", + "hls-2.4": "hls-2.4_5", + "hls-2.5": "hls-2.5_3", + "hls-2.6": "hls-2.6_3", + "hls-2.7": "hls-2.7_3", + "hls-2.8": "hls-2.8_3", + "hls-2.9": "hls-2.9_3", + "hpc-coveralls": "hpc-coveralls_8", + "hydra": "hydra_8", + "iserv-proxy": "iserv-proxy_8", + "nixpkgs": [ + "flake-lang", + "haskell-nix", + "nixpkgs-unstable" + ], + "nixpkgs-2003": "nixpkgs-2003_8", + "nixpkgs-2105": "nixpkgs-2105_8", + "nixpkgs-2111": "nixpkgs-2111_8", + "nixpkgs-2205": "nixpkgs-2205_8", + "nixpkgs-2211": "nixpkgs-2211_8", + "nixpkgs-2305": "nixpkgs-2305_6", + "nixpkgs-2311": "nixpkgs-2311_3", + "nixpkgs-2405": "nixpkgs-2405_2", + "nixpkgs-unstable": "nixpkgs-unstable_9", + "old-ghc-nix": "old-ghc-nix_8", + "stackage": "stackage_7" + }, + "locked": { + "lastModified": 1732409520, + "narHash": "sha256-K2QlvQj0CQyYCPvYM2csTr/jM8wHiLQe4LEXl0CCXA8=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "93fdba63d6567643c0dc222fa6b29013a786f9af", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "haskell.nix", + "type": "github" + } + }, + "haskellNix": { + "inputs": { + "HTTP": "HTTP_2", + "cabal-32": "cabal-32_2", + "cabal-34": "cabal-34_2", + "cabal-36": "cabal-36_2", + "cardano-shell": "cardano-shell_2", + "flake-compat": "flake-compat_5", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_2", + "ghc98X": "ghc98X", + "ghc99": "ghc99", + "hackage": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "hackageNix" + ], + "hls-1.10": "hls-1.10_2", + "hls-2.0": "hls-2.0_2", + "hls-2.2": "hls-2.2", + "hls-2.3": "hls-2.3", + "hls-2.4": "hls-2.4", + "hpc-coveralls": "hpc-coveralls_2", + "hydra": "hydra_2", + "iserv-proxy": "iserv-proxy_2", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "haskellNix", + "nixpkgs-unstable" + ], + "nixpkgs-2003": "nixpkgs-2003_2", + "nixpkgs-2105": "nixpkgs-2105_2", + "nixpkgs-2111": "nixpkgs-2111_2", + "nixpkgs-2205": "nixpkgs-2205_2", + "nixpkgs-2211": "nixpkgs-2211_2", + "nixpkgs-2305": "nixpkgs-2305_2", + "nixpkgs-unstable": "nixpkgs-unstable_3", + "old-ghc-nix": "old-ghc-nix_2", + "stackage": "stackage" + }, + "locked": { + "lastModified": 1701053834, + "narHash": "sha256-4sH4//POARjeKJv1mu8aU4W4A28GYqrj9KB3PqusHis=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "7c491c55157208575c70c7b8434e9d4a1cf173a6", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "haskell.nix", + "type": "github" + } + }, + "haskellNix_2": { + "inputs": { + "HTTP": "HTTP_3", + "cabal-32": "cabal-32_3", + "cabal-34": "cabal-34_3", + "cabal-36": "cabal-36_3", + "cardano-shell": "cardano-shell_3", + "flake-compat": "flake-compat_7", + "flake-utils": "flake-utils_5", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_3", + "hackage": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "hackageNix" + ], + "hls-1.10": "hls-1.10_3", + "hpc-coveralls": "hpc-coveralls_3", + "hydra": "hydra_3", + "iserv-proxy": "iserv-proxy_3", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "nixpkgs" + ], + "nixpkgs-2003": "nixpkgs-2003_3", + "nixpkgs-2105": "nixpkgs-2105_3", + "nixpkgs-2111": "nixpkgs-2111_3", + "nixpkgs-2205": "nixpkgs-2205_3", + "nixpkgs-2211": "nixpkgs-2211_3", + "nixpkgs-unstable": "nixpkgs-unstable_4", + "old-ghc-nix": "old-ghc-nix_3", + "stackage": "stackage_2" + }, + "locked": { + "lastModified": 1685495397, + "narHash": "sha256-BwbWroS1Qm8BiHatG5+iHMHN5U6kqOccewBROUYuMKw=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "d07c42cdb1cf88d0cab27d3090b00cb3899643c9", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "haskell.nix", + "type": "github" + } + }, + "haskellNix_3": { + "inputs": { + "HTTP": "HTTP_4", + "cabal-32": "cabal-32_4", + "cabal-34": "cabal-34_4", + "cabal-36": "cabal-36_4", + "cardano-shell": "cardano-shell_4", + "flake-compat": "flake-compat_11", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_4", + "ghc98X": "ghc98X_2", + "ghc99": "ghc99_2", + "hackage": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "hackageNix" + ], + "hls-1.10": "hls-1.10_4", + "hls-2.0": "hls-2.0_3", + "hls-2.2": "hls-2.2_2", + "hls-2.3": "hls-2.3_2", + "hls-2.4": "hls-2.4_2", + "hpc-coveralls": "hpc-coveralls_4", + "hydra": "hydra_4", + "iserv-proxy": "iserv-proxy_4", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "nixpkgs" + ], + "nixpkgs-2003": "nixpkgs-2003_4", + "nixpkgs-2105": "nixpkgs-2105_4", + "nixpkgs-2111": "nixpkgs-2111_4", + "nixpkgs-2205": "nixpkgs-2205_4", + "nixpkgs-2211": "nixpkgs-2211_4", + "nixpkgs-2305": "nixpkgs-2305_3", + "nixpkgs-unstable": "nixpkgs-unstable_5", + "old-ghc-nix": "old-ghc-nix_4", + "stackage": "stackage_3" + }, + "locked": { + "lastModified": 1700441391, + "narHash": "sha256-oJqP1AUskUvr3GNUH97eKwaIUHdYgENS2kQ7GI9RI+c=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "3b6056f3866f88d1d16eaeb2e810d3ac0df0e7cd", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "haskell.nix", + "type": "github" + } + }, + "haskellNix_4": { + "inputs": { + "HTTP": "HTTP_5", + "cabal-32": "cabal-32_5", + "cabal-34": "cabal-34_5", + "cabal-36": "cabal-36_5", + "cardano-shell": "cardano-shell_5", + "flake-compat": "flake-compat_16", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_5", + "ghc910X": "ghc910X", + "ghc911": "ghc911", + "hackage": [ + "flake-lang", + "ctl", + "cardano-node", + "hackageNix" + ], + "hls-1.10": "hls-1.10_5", + "hls-2.0": "hls-2.0_4", + "hls-2.2": "hls-2.2_3", + "hls-2.3": "hls-2.3_3", + "hls-2.4": "hls-2.4_3", + "hls-2.5": "hls-2.5", + "hls-2.6": "hls-2.6", + "hls-2.7": "hls-2.7", + "hls-2.8": "hls-2.8", + "hls-2.9": "hls-2.9", + "hpc-coveralls": "hpc-coveralls_5", + "hydra": "hydra_5", + "iserv-proxy": "iserv-proxy_5", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "nixpkgs" + ], + "nixpkgs-2003": "nixpkgs-2003_5", + "nixpkgs-2105": "nixpkgs-2105_5", + "nixpkgs-2111": "nixpkgs-2111_5", + "nixpkgs-2205": "nixpkgs-2205_5", + "nixpkgs-2211": "nixpkgs-2211_5", + "nixpkgs-2305": "nixpkgs-2305_4", + "nixpkgs-2311": "nixpkgs-2311", + "nixpkgs-unstable": "nixpkgs-unstable_6", + "old-ghc-nix": "old-ghc-nix_5", + "stackage": "stackage_4" + }, + "locked": { + "lastModified": 1718797200, + "narHash": "sha256-ueFxTuZrQ3ZT/Fj5sSeUWlqKa4+OkUU1xW0E+q/XTfw=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "cb139fa956158397aa398186bb32dd26f7318784", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "haskell.nix", + "type": "github" + } + }, + "haskellNix_5": { + "inputs": { + "HTTP": "HTTP_7", + "cabal-32": "cabal-32_7", + "cabal-34": "cabal-34_7", + "cabal-36": "cabal-36_7", + "cardano-shell": "cardano-shell_7", + "flake-compat": "flake-compat_20", + "flake-utils": "flake-utils_21", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_7", + "hackage": "hackage_2", + "hls-1.10": "hls-1.10_7", + "hpc-coveralls": "hpc-coveralls_7", + "hydra": "hydra_7", + "iserv-proxy": "iserv-proxy_7", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "haskellNix", + "nixpkgs-unstable" + ], + "nixpkgs-2003": "nixpkgs-2003_7", + "nixpkgs-2105": "nixpkgs-2105_7", + "nixpkgs-2111": "nixpkgs-2111_7", + "nixpkgs-2205": "nixpkgs-2205_7", + "nixpkgs-2211": "nixpkgs-2211_7", + "nixpkgs-unstable": "nixpkgs-unstable_8", + "old-ghc-nix": "old-ghc-nix_7", + "stackage": "stackage_6" + }, + "locked": { + "lastModified": 1684284676, + "narHash": "sha256-VhZiVvwXqHkWh8Tw81WL8vwMzGsAhag8SQCQWGXQBLs=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "ec345f667f9f1596e3849b530fe4f1573fc07653", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "haskell.nix", + "type": "github" + } + }, + "haumea": { + "inputs": { + "nixpkgs": "nixpkgs_28" + }, + "locked": { + "lastModified": 1685133229, + "narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", + "owner": "nix-community", + "repo": "haumea", + "rev": "34dd58385092a23018748b50f9b23de6266dffc2", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "v0.2.2", + "repo": "haumea", + "type": "github" + } + }, + "haumea_2": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "lib" + ] + }, + "locked": { + "lastModified": 1685133229, + "narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", + "owner": "nix-community", + "repo": "haumea", + "rev": "34dd58385092a23018748b50f9b23de6266dffc2", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "v0.2.2", + "repo": "haumea", + "type": "github" + } + }, + "hci-effects": { + "inputs": { + "flake-parts": "flake-parts_8", + "nixpkgs": "nixpkgs_46" + }, + "locked": { + "lastModified": 1730903510, + "narHash": "sha256-mnynlrPeiW0nUQ8KGZHb3WyxAxA3Ye/BH8gMjdoKP6E=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "b89ac4d66d618b915b1f0a408e2775fe3821d141", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "type": "github" + } + }, + "hci-effects_2": { + "inputs": { + "flake-parts": "flake-parts_9", + "nixpkgs": "nixpkgs_51" + }, + "locked": { + "lastModified": 1733333617, + "narHash": "sha256-nMMQXREGvLOLvUa0ByhYFdaL0Jov0t1wzLbKjr05P2w=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "56f8ea8d502c87cf62444bec4ee04512e8ea24ea", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "type": "github" + } + }, + "hercules-ci-effects": { + "inputs": { + "flake-parts": [ + "flake-lang", + "ctl", + "cardano-nix", + "flake-parts" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1710396488, + "narHash": "sha256-yniBB5i1un44uzR4+luTWvZ6uGvsHSYIBiDZ8Xox4nQ=", + "owner": "mlabs-haskell", + "repo": "hercules-ci-effects", + "rev": "f5ed263ab0585dfb7b067301419fb80d64e8c021", + "type": "github" + }, + "original": { + "owner": "mlabs-haskell", + "ref": "push-cache-effect", + "repo": "hercules-ci-effects", + "type": "github" + } + }, + "hercules-ci-effects_2": { + "inputs": { + "flake-parts": "flake-parts_6", + "nixpkgs": "nixpkgs_39" + }, + "locked": { + "lastModified": 1724947644, + "narHash": "sha256-MHHrHasTngp7EYQOObHJ1a/IsRF+wodHqOckhH6uZbk=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "dba4367b9a9d9615456c430a6d6af716f6e84cef", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "type": "github" + } + }, + "hls-1.10": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-1.10_2": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-1.10_3": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-1.10_4": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-1.10_5": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-1.10_6": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-1.10_7": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-1.10_8": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.0": { + "flake": false, + "locked": { + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.0_2": { + "flake": false, + "locked": { + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.0_3": { + "flake": false, + "locked": { + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.0_4": { + "flake": false, + "locked": { + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.0_5": { + "flake": false, + "locked": { + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.0_6": { + "flake": false, + "locked": { + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.2": { + "flake": false, + "locked": { + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.2_2": { + "flake": false, + "locked": { + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.2_3": { + "flake": false, + "locked": { + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.2_4": { + "flake": false, + "locked": { + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.2_5": { + "flake": false, + "locked": { + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.3": { + "flake": false, + "locked": { + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.3_2": { + "flake": false, + "locked": { + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.3_3": { + "flake": false, + "locked": { + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.3_4": { + "flake": false, + "locked": { + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.3_5": { + "flake": false, + "locked": { + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.4": { + "flake": false, + "locked": { + "lastModified": 1696939266, + "narHash": "sha256-VOMf5+kyOeOmfXTHlv4LNFJuDGa7G3pDnOxtzYR40IU=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "362fdd1293efb4b82410b676ab1273479f6d17ee", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.4.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.4_2": { + "flake": false, + "locked": { + "lastModified": 1696939266, + "narHash": "sha256-VOMf5+kyOeOmfXTHlv4LNFJuDGa7G3pDnOxtzYR40IU=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "362fdd1293efb4b82410b676ab1273479f6d17ee", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.4.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.4_3": { + "flake": false, + "locked": { + "lastModified": 1699862708, + "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.4.0.1", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.4_4": { + "flake": false, + "locked": { + "lastModified": 1699862708, + "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.4.0.1", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.4_5": { + "flake": false, + "locked": { + "lastModified": 1699862708, + "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.4.0.1", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.5": { + "flake": false, + "locked": { + "lastModified": 1701080174, + "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.5.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.5_2": { + "flake": false, + "locked": { + "lastModified": 1701080174, + "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.5.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-2.5_3": { + "flake": false, + "locked": { + "lastModified": 1701080174, + "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", + "owner": "haskell", + "ref": "2.5.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "haskellNix_2": { - "inputs": { - "HTTP": "HTTP_4", - "cabal-32": "cabal-32_4", - "cabal-34": "cabal-34_4", - "cabal-36": "cabal-36_4", - "cardano-shell": "cardano-shell_4", - "flake-compat": "flake-compat_9", - "flake-utils": "flake-utils_7", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_4", - "hackage": "hackage_2", - "hls-1.10": "hls-1.10_3", - "hpc-coveralls": "hpc-coveralls_4", - "hydra": "hydra_4", - "iserv-proxy": "iserv-proxy_3", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "haskellNix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_4", - "nixpkgs-2105": "nixpkgs-2105_4", - "nixpkgs-2111": "nixpkgs-2111_4", - "nixpkgs-2205": "nixpkgs-2205_3", - "nixpkgs-2211": "nixpkgs-2211_3", - "nixpkgs-unstable": "nixpkgs-unstable_4", - "old-ghc-nix": "old-ghc-nix_4", - "stackage": "stackage_4" - }, + "hls-2.6": { + "flake": false, "locked": { - "lastModified": 1684284676, - "narHash": "sha256-VhZiVvwXqHkWh8Tw81WL8vwMzGsAhag8SQCQWGXQBLs=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "ec345f667f9f1596e3849b530fe4f1573fc07653", + "lastModified": 1705325287, + "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", + "owner": "haskell", + "ref": "2.6.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "hci-effects": { - "inputs": { - "flake-parts": "flake-parts_3", - "nixpkgs": "nixpkgs_19" - }, + "hls-2.6_2": { + "flake": false, "locked": { - "lastModified": 1713898448, - "narHash": "sha256-6q6ojsp/Z9P2goqnxyfCSzFOD92T3Uobmj8oVAicUOs=", - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "rev": "c0302ec12d569532a6b6bd218f698bc402e93adc", + "lastModified": 1705325287, + "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "hercules-ci-effects", + "owner": "haskell", + "ref": "2.6.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "hci-effects_2": { - "inputs": { - "flake-parts": "flake-parts_4", - "nixpkgs": "nixpkgs_34" - }, + "hls-2.6_3": { + "flake": false, "locked": { - "lastModified": 1724947644, - "narHash": "sha256-MHHrHasTngp7EYQOObHJ1a/IsRF+wodHqOckhH6uZbk=", - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "rev": "dba4367b9a9d9615456c430a6d6af716f6e84cef", + "lastModified": 1705325287, + "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "hercules-ci-effects", + "owner": "haskell", + "ref": "2.6.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "hercules-ci-effects": { - "inputs": { - "flake-parts": "flake-parts", - "nixpkgs": "nixpkgs_11" - }, + "hls-2.7": { + "flake": false, "locked": { - "lastModified": 1701009247, - "narHash": "sha256-GuX16rzRze2y7CsewJLTV6qXkXWyEwp6VCZXi8HLruU=", - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "rev": "31b6cd7569191bfcd0a548575b0e2ef953ed7d09", + "lastModified": 1708965829, + "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "hercules-ci-effects", + "owner": "haskell", + "ref": "2.7.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "hls-1.10": { + "hls-2.7_2": { "flake": false, "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "lastModified": 1708965829, + "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", "owner": "haskell", "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", "type": "github" }, "original": { "owner": "haskell", - "ref": "1.10.0.0", + "ref": "2.7.0.0", "repo": "haskell-language-server", "type": "github" } }, - "hls-1.10_2": { + "hls-2.7_3": { "flake": false, "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "lastModified": 1708965829, + "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", "owner": "haskell", "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", "type": "github" }, "original": { "owner": "haskell", - "ref": "1.10.0.0", + "ref": "2.7.0.0", "repo": "haskell-language-server", "type": "github" } }, - "hls-1.10_3": { + "hls-2.8": { "flake": false, "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "lastModified": 1715153580, + "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", "owner": "haskell", "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", "type": "github" }, "original": { "owner": "haskell", - "ref": "1.10.0.0", + "ref": "2.8.0.0", "repo": "haskell-language-server", "type": "github" } }, - "hls-1.10_4": { + "hls-2.8_2": { "flake": false, "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "lastModified": 1715153580, + "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", "owner": "haskell", "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", "type": "github" }, "original": { "owner": "haskell", - "ref": "1.10.0.0", + "ref": "2.8.0.0", "repo": "haskell-language-server", "type": "github" } }, - "hls-1.10_5": { + "hls-2.8_3": { "flake": false, "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "lastModified": 1715153580, + "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", "owner": "haskell", "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", "type": "github" }, "original": { "owner": "haskell", - "ref": "1.10.0.0", + "ref": "2.8.0.0", "repo": "haskell-language-server", "type": "github" } }, - "hls-1.10_6": { + "hls-2.9": { "flake": false, "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "lastModified": 1718469202, + "narHash": "sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs=", "owner": "haskell", "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "rev": "0c1817cb2babef0765e4e72dd297c013e8e3d12b", "type": "github" }, "original": { "owner": "haskell", - "ref": "1.10.0.0", + "ref": "2.9.0.1", "repo": "haskell-language-server", "type": "github" } }, - "hls-1.10_7": { + "hls-2.9_2": { "flake": false, "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "lastModified": 1718469202, + "narHash": "sha256-THXSz+iwB1yQQsr/PY151+2GvtoJnTIB2pIQ4OzfjD4=", "owner": "haskell", "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "rev": "40891bccb235ebacce020b598b083eab9dda80f1", "type": "github" }, "original": { "owner": "haskell", - "ref": "1.10.0.0", + "ref": "2.9.0.0", "repo": "haskell-language-server", "type": "github" } }, - "hls-2.0": { + "hls-2.9_3": { "flake": false, "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "lastModified": 1720003792, + "narHash": "sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs=", "owner": "haskell", "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", + "rev": "0c1817cb2babef0765e4e72dd297c013e8e3d12b", "type": "github" }, "original": { "owner": "haskell", - "ref": "2.0.0.1", + "ref": "2.9.0.1", "repo": "haskell-language-server", "type": "github" } }, - "hls-2.0_2": { + "hpc-coveralls": { + "flake": false, + "locked": { + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "type": "github" + }, + "original": { + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "type": "github" + } + }, + "hpc-coveralls_2": { + "flake": false, + "locked": { + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "type": "github" + }, + "original": { + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "type": "github" + } + }, + "hpc-coveralls_3": { + "flake": false, + "locked": { + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "type": "github" + }, + "original": { + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "type": "github" + } + }, + "hpc-coveralls_4": { + "flake": false, + "locked": { + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "type": "github" + }, + "original": { + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "type": "github" + } + }, + "hpc-coveralls_5": { + "flake": false, + "locked": { + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "type": "github" + }, + "original": { + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "type": "github" + } + }, + "hpc-coveralls_6": { "flake": false, "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "hls-2.0_3": { + "hpc-coveralls_7": { "flake": false, "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "hls-2.0_4": { + "hpc-coveralls_8": { "flake": false, "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "hls-2.0_5": { - "flake": false, + "hydra": { + "inputs": { + "nix": "nix", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "cardano-parts", + "haskell-nix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", + "owner": "NixOS", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "hls-2.2": { - "flake": false, + "hydra_2": { + "inputs": { + "nix": "nix_3", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", + "owner": "NixOS", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "hls-2.2_2": { - "flake": false, + "hydra_3": { + "inputs": { + "nix": "nix_4", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", + "owner": "NixOS", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "hls-2.2_3": { - "flake": false, + "hydra_4": { + "inputs": { + "nix": "nix_5", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", + "owner": "NixOS", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "hls-2.2_4": { - "flake": false, + "hydra_5": { + "inputs": { + "nix": "nix_6", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", + "owner": "NixOS", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "hls-2.2_5": { - "flake": false, + "hydra_6": { + "inputs": { + "nix": "nix_7", + "nixpkgs": [ + "flake-lang", + "ctl", + "haskell-nix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", + "owner": "NixOS", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "hls-2.3": { - "flake": false, + "hydra_7": { + "inputs": { + "nix": "nix_8", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", + "owner": "NixOS", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "hls-2.3_2": { - "flake": false, + "hydra_8": { + "inputs": { + "nix": "nix_9", + "nixpkgs": [ + "flake-lang", + "haskell-nix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", + "owner": "NixOS", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "hls-2.3_3": { - "flake": false, + "incl": { + "inputs": { + "nixlib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", + "owner": "divnix", + "repo": "incl", "type": "github" } }, - "hls-2.3_4": { - "flake": false, + "incl_2": { + "inputs": { + "nixlib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", + "owner": "divnix", + "repo": "incl", "type": "github" } }, - "hls-2.3_5": { - "flake": false, + "incl_3": { + "inputs": { + "nixlib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "haumea", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", + "owner": "divnix", + "repo": "incl", "type": "github" } }, - "hls-2.4": { - "flake": false, + "incl_4": { + "inputs": { + "nixlib": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "lib" + ] + }, "locked": { - "lastModified": 1696939266, - "narHash": "sha256-VOMf5+kyOeOmfXTHlv4LNFJuDGa7G3pDnOxtzYR40IU=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "362fdd1293efb4b82410b676ab1273479f6d17ee", + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.4.0.0", - "repo": "haskell-language-server", + "owner": "divnix", + "repo": "incl", "type": "github" } }, - "hls-2.4_2": { - "flake": false, + "incl_5": { + "inputs": { + "nixlib": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", + "owner": "divnix", + "repo": "incl", "type": "github" } }, - "hls-2.4_3": { - "flake": false, + "inclusive": { + "inputs": { + "stdlib": "stdlib" + }, "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", + "lastModified": 1628098927, + "narHash": "sha256-Ft4sdf7VPL8MQtu18AAPiN2s5pUsbv+3RxqzJSa/yzg=", + "owner": "input-output-hk", + "repo": "nix-inclusive", + "rev": "13123eb7a8c3359738a4756b8d645729e8655b27", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", + "owner": "input-output-hk", + "repo": "nix-inclusive", "type": "github" } }, - "hls-2.4_4": { - "flake": false, + "inputs-check": { + "inputs": { + "flake-parts": "flake-parts_4", + "nixpkgs": "nixpkgs_7" + }, "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", + "lastModified": 1692633913, + "narHash": "sha256-f80/49lt2hIapc9AEaTBC93jnRZe5zxlm21JXXewkko=", + "owner": "input-output-hk", + "repo": "inputs-check", + "rev": "1e9f65e56140f4e357c9abaf5311e3ea979d33e9", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", + "owner": "input-output-hk", + "repo": "inputs-check", "type": "github" } }, - "hls-2.4_5": { - "flake": false, + "iohk-nix": { + "inputs": { + "blst": "blst", + "nixpkgs": "nixpkgs_8", + "secp256k1": "secp256k1", + "sodium": "sodium" + }, "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", + "lastModified": 1691469905, + "narHash": "sha256-TV0p1dFGYAMl1dLJEfe/tNFjxvV2H7VgHU1I43q+b84=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "2f3760f135616ebc477d3ed74eba9b63c22f83a0", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "2f3760f135616ebc477d3ed74eba9b63c22f83a0", "type": "github" } }, - "hls-2.5": { - "flake": false, + "iohk-nix-ng": { + "inputs": { + "blst": "blst_2", + "nixpkgs": "nixpkgs_9", + "secp256k1": "secp256k1_2", + "sodium": "sodium_2" + }, "locked": { - "lastModified": 1701080174, - "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", + "lastModified": 1696471795, + "narHash": "sha256-aNNvjUtCGXaXSp5M/HSj1SOeLjqLyTRWYbIHqAEeUp0=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "91f16fa8acb58b312f94977715c630d8bf77e33e", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.5.0.0", - "repo": "haskell-language-server", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "hls-2.5_2": { - "flake": false, - "locked": { - "lastModified": 1701080174, - "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", + "iohk-nix_2": { + "inputs": { + "blst": "blst_7", + "nixpkgs": [ + "flake-lang", + "ctl", + "nixpkgs" + ], + "secp256k1": "secp256k1_7", + "sodium": "sodium_7" + }, + "locked": { + "lastModified": 1721825987, + "narHash": "sha256-PPcma4tjozwXJAWf+YtHUQUulmxwulVlwSQzKItx/n8=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "eb61f2c14e1f610ec59117ad40f8690cddbf80cb", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.5.0.0", - "repo": "haskell-language-server", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "hls-2.6": { - "flake": false, + "iohk-nix_3": { + "inputs": { + "blst": "blst_9", + "nixpkgs": "nixpkgs_47", + "secp256k1": "secp256k1_9", + "sodium": "sodium_9" + }, "locked": { - "lastModified": 1705325287, - "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", + "lastModified": 1732287300, + "narHash": "sha256-lURsE6HdJX0alscWhbzCWyLRK8GpAgKuXeIgX31Kfqg=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "262cb2aec2ddd914124bab90b06fe24a1a74d02c", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.6.0.0", - "repo": "haskell-language-server", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "hls-2.6_2": { - "flake": false, + "iohkNix": { + "inputs": { + "blst": "blst_3", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "nixpkgs" + ], + "secp256k1": "secp256k1_3", + "sodium": "sodium_3" + }, "locked": { - "lastModified": 1705325287, - "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", + "lastModified": 1698999258, + "narHash": "sha256-42D1BMbdyZD+lT+pWUzb5zDQyasNbMJtH/7stuPuPfE=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "73dc2bb45af6f20cfe1d962f1334eed5e84ae764", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.6.0.0", - "repo": "haskell-language-server", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "hls-2.7": { - "flake": false, + "iohkNix_2": { + "inputs": { + "blst": "blst_4", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "nixpkgs" + ], + "secp256k1": "secp256k1_4", + "sodium": "sodium_4" + }, "locked": { - "lastModified": 1708965829, - "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", + "lastModified": 1684223806, + "narHash": "sha256-IyLoP+zhuyygLtr83XXsrvKyqqLQ8FHXTiySFf4FJOI=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "86421fdd89b3af43fa716ccd07638f96c6ecd1e4", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.7.0.0", - "repo": "haskell-language-server", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "hls-2.8": { - "flake": false, + "iohkNix_3": { + "inputs": { + "blst": "blst_5", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "nixpkgs" + ], + "secp256k1": "secp256k1_5", + "sodium": "sodium_5" + }, "locked": { - "lastModified": 1715153580, - "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", + "lastModified": 1698746924, + "narHash": "sha256-8og+vqQPEoB2KLUtN5esGMDymT+2bT/rCHZt1NAe7y0=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "af551ca93d969d9715fa9bf86691d9a0a19e89d9", "type": "github" }, "original": { - "owner": "haskell", - "ref": "2.8.0.0", - "repo": "haskell-language-server", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "hpc-coveralls": { - "flake": false, + "iohkNix_4": { + "inputs": { + "blst": "blst_6", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "nixpkgs" + ], + "secp256k1": "secp256k1_6", + "sodium": "sodium_6" + }, "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "lastModified": 1721825987, + "narHash": "sha256-PPcma4tjozwXJAWf+YtHUQUulmxwulVlwSQzKItx/n8=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "eb61f2c14e1f610ec59117ad40f8690cddbf80cb", "type": "github" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "hpc-coveralls_2": { - "flake": false, + "iohkNix_5": { + "inputs": { + "blst": "blst_8", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "nixpkgs" + ], + "secp256k1": "secp256k1_8", + "sodium": "sodium_8" + }, "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "lastModified": 1684223806, + "narHash": "sha256-IyLoP+zhuyygLtr83XXsrvKyqqLQ8FHXTiySFf4FJOI=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "86421fdd89b3af43fa716ccd07638f96c6ecd1e4", "type": "github" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "hpc-coveralls_3": { + "iserv-proxy": { "flake": false, "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" + "lastModified": 1688517130, + "narHash": "sha256-hUqfxSlo+ffqVdkSZ1EDoB7/ILCL25eYkcCXW9/P3Wc=", + "ref": "hkm/remote-iserv", + "rev": "9151db2a9a61d7f5fe52ff8836f18bbd0fd8933c", + "revCount": 13, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" } }, - "hpc-coveralls_4": { + "iserv-proxy_2": { "flake": false, "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" + "lastModified": 1691634696, + "narHash": "sha256-MZH2NznKC/gbgBu8NgIibtSUZeJ00HTLJ0PlWKCBHb0=", + "ref": "hkm/remote-iserv", + "rev": "43a979272d9addc29fbffc2e8542c5d96e993d73", + "revCount": 14, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" } }, - "hpc-coveralls_5": { + "iserv-proxy_3": { "flake": false, "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" + "lastModified": 1670983692, + "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", + "ref": "hkm/remote-iserv", + "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", + "revCount": 10, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" } }, - "hpc-coveralls_6": { + "iserv-proxy_4": { "flake": false, "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" + "lastModified": 1691634696, + "narHash": "sha256-MZH2NznKC/gbgBu8NgIibtSUZeJ00HTLJ0PlWKCBHb0=", + "ref": "hkm/remote-iserv", + "rev": "43a979272d9addc29fbffc2e8542c5d96e993d73", + "revCount": 14, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" } }, - "hpc-coveralls_7": { + "iserv-proxy_5": { "flake": false, "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "lastModified": 1717479972, + "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", + "owner": "stable-haskell", + "repo": "iserv-proxy", + "rev": "2ed34002247213fc435d0062350b91bab920626e", "type": "github" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", + "owner": "stable-haskell", + "ref": "iserv-syms", + "repo": "iserv-proxy", "type": "github" } }, - "hpc-coveralls_8": { + "iserv-proxy_6": { "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "locked": { + "lastModified": 1717479972, + "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", + "owner": "stable-haskell", + "repo": "iserv-proxy", + "rev": "2ed34002247213fc435d0062350b91bab920626e", "type": "github" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", + "owner": "stable-haskell", + "ref": "iserv-syms", + "repo": "iserv-proxy", "type": "github" } }, - "hydra": { - "inputs": { - "nix": "nix", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, + "iserv-proxy_7": { + "flake": false, "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" + "lastModified": 1670983692, + "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", + "ref": "hkm/remote-iserv", + "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", + "revCount": 10, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" }, "original": { - "id": "hydra", - "type": "indirect" + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" } }, - "hydra_2": { - "inputs": { - "nix": "nix_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "haskell-nix", - "hydra", - "nix", - "nixpkgs" - ] - }, + "iserv-proxy_8": { + "flake": false, "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", + "lastModified": 1717479972, + "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", + "owner": "stable-haskell", + "repo": "iserv-proxy", + "rev": "2ed34002247213fc435d0062350b91bab920626e", "type": "github" }, "original": { - "id": "hydra", - "type": "indirect" + "owner": "stable-haskell", + "ref": "iserv-syms", + "repo": "iserv-proxy", + "type": "github" } }, - "hydra_3": { - "inputs": { - "nix": "nix_3", - "nixpkgs": [ - "flake-lang", - "ctl", - "kupo-nixos", - "haskell-nix", - "hydra", - "nix", - "nixpkgs" - ] - }, + "lib": { "locked": { - "lastModified": 1646878427, - "narHash": "sha256-KtbrofMtN8GlM7D+n90kixr7QpSlVmdN+vK5CA/aRzc=", - "owner": "NixOS", - "repo": "hydra", - "rev": "28b682b85b7efc5cf7974065792a1f22203a5927", + "lastModified": 1694306727, + "narHash": "sha256-26fkTOJOI65NOTNKFvtcJF9mzzf/kK9swHzfYt1Dl6Q=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "c30b6a84c0b84ec7aecbe74466033facc9ed103f", "type": "github" }, "original": { - "id": "hydra", - "type": "indirect" + "owner": "nix-community", + "repo": "nixpkgs.lib", + "type": "github" } }, - "hydra_4": { - "inputs": { - "nix": "nix_4", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, + "lowdown-src": { + "flake": false, "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "id": "hydra", - "type": "indirect" + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" } }, - "hydra_5": { - "inputs": { - "nix": "nix_5", - "nixpkgs": [ - "flake-lang", - "haskell-nix", - "hydra", - "nix", - "nixpkgs" - ] - }, + "lowdown-src_2": { + "flake": false, "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "id": "hydra", - "type": "indirect" + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" } }, - "hydra_6": { - "inputs": { - "nix": "nix_6", - "nixpkgs": [ - "flake-lang", - "plutus", - "haskell-nix", - "hydra", - "nix", - "nixpkgs" - ] - }, + "lowdown-src_3": { + "flake": false, "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "id": "hydra", - "type": "indirect" + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" } }, - "hydra_7": { - "inputs": { - "nix": "nix_7", - "nixpkgs": [ - "flake-lang", - "plutus", - "iogx", - "iogx-template-haskell", - "iogx", - "haskell-nix", - "hydra", - "nix", - "nixpkgs" - ] - }, + "lowdown-src_4": { + "flake": false, "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "id": "hydra", - "type": "indirect" + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" } }, - "hydra_8": { - "inputs": { - "nix": "nix_8", - "nixpkgs": [ - "flake-lang", - "plutus", - "iogx", - "iogx-template-vanilla", - "iogx", - "haskell-nix", - "hydra", - "nix", - "nixpkgs" - ] - }, + "lowdown-src_5": { + "flake": false, "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "id": "hydra", - "type": "indirect" + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" } }, - "incl": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-node", - "tullia", - "std", - "nixpkgs" - ] - }, + "lowdown-src_6": { + "flake": false, "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "owner": "divnix", - "repo": "incl", + "owner": "kristapsdz", + "repo": "lowdown", "type": "github" } }, - "incl_2": { - "inputs": { - "nixlib": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] - }, + "lowdown-src_7": { + "flake": false, "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "owner": "divnix", - "repo": "incl", + "owner": "kristapsdz", + "repo": "lowdown", "type": "github" } }, - "iogx": { - "inputs": { - "CHaP": [ - "flake-lang", - "plutus", - "CHaP" - ], - "easy-purescript-nix": "easy-purescript-nix_2", - "flake-utils": "flake-utils_11", - "hackage": [ - "flake-lang", - "plutus", - "hackage" - ], - "haskell-nix": [ - "flake-lang", - "plutus", - "haskell-nix" - ], - "iogx-template-haskell": "iogx-template-haskell", - "iogx-template-vanilla": "iogx-template-vanilla", - "iohk-nix": [ - "flake-lang", - "plutus", - "iohk-nix" - ], - "nix2container": "nix2container_6", - "nixpkgs": [ - "flake-lang", - "plutus", - "nixpkgs" - ], - "nixpkgs-stable": "nixpkgs-stable_5", - "pre-commit-hooks-nix": "pre-commit-hooks-nix_3", - "sphinxcontrib-haddock": "sphinxcontrib-haddock_3" - }, + "lowdown-src_8": { + "flake": false, "locked": { - "lastModified": 1711386892, - "narHash": "sha256-Au/7A2sh0NwqARvv+N3/Wxr14XODD+CCvZGJva1tvPg=", - "owner": "input-output-hk", - "repo": "iogx", - "rev": "b8d2456daf9d85a55a62cc59744105d5bfcbf82e", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iogx", + "owner": "kristapsdz", + "repo": "lowdown", "type": "github" } }, - "iogx-template-haskell": { - "inputs": { - "iogx": "iogx_2" + "lowdown-src_9": { + "flake": false, + "locked": { + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "type": "github" }, + "original": { + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" + } + }, + "mdbook-kroki-preprocessor": { + "flake": false, "locked": { - "dir": "templates/haskell", - "lastModified": 1708614239, - "narHash": "sha256-7SWCZzXdjyzCspdlawv3gWsF3Sc4ELuG359USBoSz78=", - "owner": "input-output-hk", - "repo": "iogx", - "rev": "b9d68c8e45b1dab0e1a762ac9d51d49d15b724a6", + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", "type": "github" }, "original": { - "dir": "templates/haskell", - "owner": "input-output-hk", - "repo": "iogx", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", "type": "github" } }, - "iogx-template-vanilla": { + "n2c": { "inputs": { - "iogx": "iogx_3" + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "std", + "flake-utils" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "std", + "nixpkgs" + ] }, "locked": { - "dir": "templates/vanilla", - "lastModified": 1708614239, - "narHash": "sha256-7SWCZzXdjyzCspdlawv3gWsF3Sc4ELuG359USBoSz78=", - "owner": "input-output-hk", - "repo": "iogx", - "rev": "b9d68c8e45b1dab0e1a762ac9d51d49d15b724a6", + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", "type": "github" }, "original": { - "dir": "templates/vanilla", - "owner": "input-output-hk", - "repo": "iogx", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "iogx_2": { + "n2c_2": { "inputs": { - "CHaP": "CHaP_7", - "easy-purescript-nix": "easy-purescript-nix_3", - "flake-utils": "flake-utils_13", - "hackage": "hackage_5", - "haskell-nix": "haskell-nix_5", - "iohk-nix": "iohk-nix_4", - "nix2container": "nix2container_4", + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "flake-utils" + ], "nixpkgs": [ "flake-lang", - "plutus", - "iogx", - "iogx-template-haskell", - "iogx", - "haskell-nix", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", "nixpkgs" - ], - "nixpkgs-stable": "nixpkgs-stable", - "pre-commit-hooks-nix": "pre-commit-hooks-nix", - "sphinxcontrib-haddock": "sphinxcontrib-haddock" + ] }, "locked": { - "lastModified": 1704707180, - "narHash": "sha256-m3rsKAHYi3WhJVYC9XLT38yJQILRkJ03fA2L5Ej3msM=", - "owner": "input-output-hk", - "repo": "iogx", - "rev": "0578c08bef2d135f6f1e88353276fd3a31acf026", + "lastModified": 1677330646, + "narHash": "sha256-hUYCwJneMjnxTvj30Fjow6UMJUITqHlpUGpXMPXUJsU=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "ebca8f58d450cae1a19c07701a5a8ae40afc9efc", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iogx", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "iogx_3": { + "n2c_3": { "inputs": { - "CHaP": "CHaP_8", - "easy-purescript-nix": "easy-purescript-nix_4", - "flake-utils": "flake-utils_17", - "hackage": "hackage_6", - "haskell-nix": "haskell-nix_6", - "iohk-nix": "iohk-nix_5", - "nix2container": "nix2container_5", + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "flake-utils" + ], "nixpkgs": [ "flake-lang", - "plutus", - "iogx", - "iogx-template-vanilla", - "iogx", - "haskell-nix", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", "nixpkgs" - ], - "nixpkgs-stable": "nixpkgs-stable_3", - "pre-commit-hooks-nix": "pre-commit-hooks-nix_2", - "sphinxcontrib-haddock": "sphinxcontrib-haddock_2" + ] }, "locked": { - "lastModified": 1704707180, - "narHash": "sha256-m3rsKAHYi3WhJVYC9XLT38yJQILRkJ03fA2L5Ej3msM=", - "owner": "input-output-hk", - "repo": "iogx", - "rev": "0578c08bef2d135f6f1e88353276fd3a31acf026", + "lastModified": 1685771919, + "narHash": "sha256-3lVKWrhNXjHJB6QkZ2SJaOs4X/mmYXtY6ovPVpDMOHc=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "95e2220911874064b5d809f8d35f7835184c4ddf", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iogx", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "iohk-nix": { + "n2c_4": { "inputs": { - "blst": "blst_2", + "flake-utils": "flake-utils_19", "nixpkgs": [ "flake-lang", "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", "nixpkgs" - ], - "secp256k1": "secp256k1_2", - "sodium": "sodium_2" + ] }, "locked": { - "lastModified": 1702362799, - "narHash": "sha256-cU8cZXNuo5GRwrSvWqdaqoW5tJ2HWwDEOvWwIVPDPmo=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "b426fb9e0b109a9d1dd2e1476f9e0bd8bb715142", + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "iohk-nix_2": { + "n2c_5": { "inputs": { + "flake-utils": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "flake-utils" + ], "nixpkgs": [ "flake-lang", - "ctl", - "kupo-nixos", - "haskell-nix", + "db-sync-ctl", + "tullia", + "std", "nixpkgs" ] }, "locked": { - "lastModified": 1653579289, - "narHash": "sha256-wveDdPsgB/3nAGAdFaxrcgLEpdi0aJ5kEVNtI+YqVfo=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "edb2d2df2ebe42bbdf03a0711115cf6213c9d366", + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "edb2d2df2ebe42bbdf03a0711115cf6213c9d366", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "iohk-nix_3": { + "nix": { "inputs": { - "blst": "blst_4", - "nixpkgs": "nixpkgs_20", - "secp256k1": "secp256k1_4", - "sodium": "sodium_4" + "lowdown-src": "lowdown-src", + "nixpkgs": "nixpkgs_6", + "nixpkgs-regression": "nixpkgs-regression" }, "locked": { - "lastModified": 1715898223, - "narHash": "sha256-G1LFsvP53twrqaC1FVard/6rjJJ3oitnpJ1E+mTZDGM=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "29f19cd41dc593cf17bbc24194e34e7c20889fc9", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "owner": "NixOS", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", + "owner": "NixOS", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "iohk-nix_4": { + "nix-nomad": { "inputs": { - "blst": "blst_5", + "flake-compat": "flake-compat_8", + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix", "nixpkgs": [ "flake-lang", - "plutus", - "iogx", - "iogx-template-haskell", - "iogx", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", "nixpkgs" ], - "secp256k1": "secp256k1_5", - "sodium": "sodium_5" + "nixpkgs-lib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "nixpkgs" + ] }, "locked": { - "lastModified": 1702362799, - "narHash": "sha256-cU8cZXNuo5GRwrSvWqdaqoW5tJ2HWwDEOvWwIVPDPmo=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "b426fb9e0b109a9d1dd2e1476f9e0bd8bb715142", + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", + "owner": "tristanpemble", + "repo": "nix-nomad", "type": "github" } }, - "iohk-nix_5": { + "nix-nomad_2": { "inputs": { - "blst": "blst_6", + "flake-compat": "flake-compat_9", + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix_2", "nixpkgs": [ "flake-lang", - "plutus", - "iogx", - "iogx-template-vanilla", - "iogx", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "nixpkgs" + ], + "nixpkgs-lib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", "nixpkgs" - ], - "secp256k1": "secp256k1_6", - "sodium": "sodium_6" - }, - "locked": { - "lastModified": 1702362799, - "narHash": "sha256-cU8cZXNuo5GRwrSvWqdaqoW5tJ2HWwDEOvWwIVPDPmo=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "b426fb9e0b109a9d1dd2e1476f9e0bd8bb715142", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohk-nix_6": { - "inputs": { - "blst": "blst_7", - "nixpkgs": "nixpkgs_31", - "secp256k1": "secp256k1_7", - "sodium": "sodium_7" + ] }, "locked": { - "lastModified": 1709083850, - "narHash": "sha256-6DQ89ktt8rRVV1pXEyX2JwPjaqS0mQkelkmJmka04rg=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "1c793a53ac0bd99b795c2180eb23d37e8389a74b", + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", + "owner": "tristanpemble", + "repo": "nix-nomad", "type": "github" } }, - "iohkNix": { + "nix-nomad_3": { "inputs": { - "blst": "blst", + "flake-compat": "flake-compat_14", + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix_3", "nixpkgs": [ "flake-lang", "ctl", "cardano-node", + "cardano-automation", + "tullia", "nixpkgs" ], - "secp256k1": "secp256k1", - "sodium": "sodium" + "nixpkgs-lib": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "nixpkgs" + ] }, "locked": { - "lastModified": 1684223806, - "narHash": "sha256-IyLoP+zhuyygLtr83XXsrvKyqqLQ8FHXTiySFf4FJOI=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "86421fdd89b3af43fa716ccd07638f96c6ecd1e4", + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", + "owner": "tristanpemble", + "repo": "nix-nomad", "type": "github" } }, - "iohkNix_2": { + "nix-nomad_4": { "inputs": { - "blst": "blst_3", + "flake-compat": "flake-compat_21", + "flake-utils": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix_4", "nixpkgs": [ "flake-lang", "db-sync-ctl", + "tullia", "nixpkgs" ], - "secp256k1": "secp256k1_3", - "sodium": "sodium_3" + "nixpkgs-lib": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "nixpkgs" + ] }, "locked": { - "lastModified": 1684223806, - "narHash": "sha256-IyLoP+zhuyygLtr83XXsrvKyqqLQ8FHXTiySFf4FJOI=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "86421fdd89b3af43fa716ccd07638f96c6ecd1e4", + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", + "owner": "tristanpemble", + "repo": "nix-nomad", "type": "github" } }, - "iserv-proxy": { - "flake": false, - "locked": { - "lastModified": 1670983692, - "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", - "ref": "hkm/remote-iserv", - "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", - "revCount": 10, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "nix2container": { + "inputs": { + "flake-utils": "flake-utils_6", + "nixpkgs": "nixpkgs_17" }, - "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - } - }, - "iserv-proxy_2": { - "flake": false, "locked": { - "lastModified": 1691634696, - "narHash": "sha256-MZH2NznKC/gbgBu8NgIibtSUZeJ00HTLJ0PlWKCBHb0=", - "ref": "hkm/remote-iserv", - "rev": "43a979272d9addc29fbffc2e8542c5d96e993d73", - "revCount": 14, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "lastModified": 1671269339, + "narHash": "sha256-KR2SXh4c2Y+bgbCfXjTGJ74O9/u4CAPFA0KYZHhKf5Q=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "6800fff45afecc7e47c334d14cf2b2f4f25601a0", + "type": "github" }, "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "owner": "nlewo", + "repo": "nix2container", + "type": "github" } }, - "iserv-proxy_3": { - "flake": false, - "locked": { - "lastModified": 1670983692, - "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", - "ref": "hkm/remote-iserv", - "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", - "revCount": 10, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "nix2container_2": { + "inputs": { + "flake-utils": "flake-utils_7", + "nixpkgs": "nixpkgs_19" }, - "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - } - }, - "iserv-proxy_4": { - "flake": false, "locked": { - "lastModified": 1717479972, - "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", - "owner": "stable-haskell", - "repo": "iserv-proxy", - "rev": "2ed34002247213fc435d0062350b91bab920626e", + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", "type": "github" }, "original": { - "owner": "stable-haskell", - "ref": "iserv-syms", - "repo": "iserv-proxy", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "iserv-proxy_5": { - "flake": false, + "nix2container_3": { + "inputs": { + "flake-utils": "flake-utils_10", + "nixpkgs": "nixpkgs_23" + }, "locked": { - "lastModified": 1691634696, - "narHash": "sha256-MZH2NznKC/gbgBu8NgIibtSUZeJ00HTLJ0PlWKCBHb0=", - "ref": "hkm/remote-iserv", - "rev": "43a979272d9addc29fbffc2e8542c5d96e993d73", - "revCount": 14, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "type": "github" }, "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "owner": "nlewo", + "repo": "nix2container", + "type": "github" } }, - "iserv-proxy_6": { - "flake": false, + "nix2container_4": { + "inputs": { + "flake-utils": "flake-utils_12", + "nixpkgs": "nixpkgs_27" + }, "locked": { - "lastModified": 1691634696, - "narHash": "sha256-MZH2NznKC/gbgBu8NgIibtSUZeJ00HTLJ0PlWKCBHb0=", - "ref": "hkm/remote-iserv", - "rev": "43a979272d9addc29fbffc2e8542c5d96e993d73", - "revCount": 14, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "lastModified": 1671269339, + "narHash": "sha256-KR2SXh4c2Y+bgbCfXjTGJ74O9/u4CAPFA0KYZHhKf5Q=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "6800fff45afecc7e47c334d14cf2b2f4f25601a0", + "type": "github" }, "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "owner": "nlewo", + "repo": "nix2container", + "type": "github" } }, - "iserv-proxy_7": { - "flake": false, + "nix2container_5": { + "inputs": { + "flake-utils": "flake-utils_17", + "nixpkgs": "nixpkgs_32" + }, "locked": { - "lastModified": 1691634696, - "narHash": "sha256-MZH2NznKC/gbgBu8NgIibtSUZeJ00HTLJ0PlWKCBHb0=", - "ref": "hkm/remote-iserv", - "rev": "43a979272d9addc29fbffc2e8542c5d96e993d73", - "revCount": 14, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "type": "github" }, "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "owner": "nlewo", + "repo": "nix2container", + "type": "github" } }, - "kupo": { - "flake": false, + "nix2container_6": { + "inputs": { + "flake-utils": "flake-utils_20", + "nixpkgs": "nixpkgs_36" + }, "locked": { - "lastModified": 1668678914, - "narHash": "sha256-XsbAFyUPmevGuoShEFlOVHt/7fFIpyCQuhulIrNzv80=", - "owner": "CardanoSolutions", - "repo": "kupo", - "rev": "c9bc18d99f9e8af1840a265907db82b180d5a4d8", + "lastModified": 1712990762, + "narHash": "sha256-hO9W3w7NcnYeX8u8cleHiSpK2YJo7ecarFTUlbybl7k=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "20aad300c925639d5d6cbe30013c8357ce9f2a2e", "type": "github" }, "original": { - "owner": "CardanoSolutions", - "ref": "v2.2.0", - "repo": "kupo", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "kupo-nixos": { + "nix2container_7": { "inputs": { - "haskell-nix": "haskell-nix_2", - "iohk-nix": "iohk-nix_2", - "kupo": [ - "flake-lang", - "ctl", - "kupo" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "kupo-nixos", - "haskell-nix", - "nixpkgs" - ] + "flake-utils": "flake-utils_22", + "nixpkgs": "nixpkgs_42" }, "locked": { - "lastModified": 1672905539, - "narHash": "sha256-B4vryG94L7WWn/tuIQdtg9eZHAH+FaFzv35Mancd2l8=", - "owner": "mlabs-haskell", - "repo": "kupo-nixos", - "rev": "6f89cbcc359893a2aea14dd380f9a45e04c6aa67", + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", "type": "github" }, "original": { - "owner": "mlabs-haskell", - "repo": "kupo-nixos", - "rev": "6f89cbcc359893a2aea14dd380f9a45e04c6aa67", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "lowdown-src": { - "flake": false, + "nix_2": { + "inputs": { + "flake-compat": "flake-compat_3", + "lowdown-src": "lowdown-src_2", + "nixpkgs": "nixpkgs_10", + "nixpkgs-regression": "nixpkgs-regression_2" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1693573010, + "narHash": "sha256-HBm8mR2skhPtbJ7p+ByrOZjs7SfsfZPwy75MwI1EUmk=", + "owner": "nixos", + "repo": "nix", + "rev": "5568ca5ff130a8a0bc3db5878432eb527c74dd60", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "nixos", + "ref": "2.17-maintenance", + "repo": "nix", "type": "github" } }, - "lowdown-src_2": { - "flake": false, + "nix_3": { + "inputs": { + "lowdown-src": "lowdown-src_3", + "nixpkgs": "nixpkgs_14", + "nixpkgs-regression": "nixpkgs-regression_3" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "owner": "NixOS", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "NixOS", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "lowdown-src_3": { - "flake": false, + "nix_4": { + "inputs": { + "lowdown-src": "lowdown-src_4", + "nixpkgs": "nixpkgs_16", + "nixpkgs-regression": "nixpkgs-regression_4" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "owner": "NixOS", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "NixOS", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "lowdown-src_4": { - "flake": false, + "nix_5": { + "inputs": { + "lowdown-src": "lowdown-src_5", + "nixpkgs": "nixpkgs_26", + "nixpkgs-regression": "nixpkgs-regression_5" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "owner": "NixOS", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "NixOS", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "lowdown-src_5": { - "flake": false, + "nix_6": { + "inputs": { + "lowdown-src": "lowdown-src_6", + "nixpkgs": "nixpkgs_35", + "nixpkgs-regression": "nixpkgs-regression_6" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "owner": "NixOS", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "NixOS", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "lowdown-src_6": { - "flake": false, + "nix_7": { + "inputs": { + "lowdown-src": "lowdown-src_7", + "nixpkgs": "nixpkgs_38", + "nixpkgs-regression": "nixpkgs-regression_7" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "owner": "NixOS", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "NixOS", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "lowdown-src_7": { - "flake": false, + "nix_8": { + "inputs": { + "lowdown-src": "lowdown-src_8", + "nixpkgs": "nixpkgs_40", + "nixpkgs-regression": "nixpkgs-regression_8" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "owner": "NixOS", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "NixOS", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "lowdown-src_8": { - "flake": false, + "nix_9": { + "inputs": { + "lowdown-src": "lowdown-src_9", + "nixpkgs": "nixpkgs_45", + "nixpkgs-regression": "nixpkgs-regression_9" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "owner": "NixOS", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "NixOS", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "n2c": { + "nixago": { "inputs": { "flake-utils": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", "tullia", "std", "flake-utils" ], + "nixago-exts": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.1.1", + "tullia", + "std", + "blank" + ], "nixpkgs": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", "tullia", "std", "nixpkgs" ] }, "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "nix-community", + "repo": "nixago", "type": "github" } }, - "n2c_2": { + "nixago_2": { "inputs": { "flake-utils": [ "flake-lang", - "db-sync-ctl", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", "tullia", "std", "flake-utils" ], + "nixago-exts": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "blank" + ], "nixpkgs": [ "flake-lang", - "db-sync-ctl", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", "tullia", "std", "nixpkgs" ] }, "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "lastModified": 1676075813, + "narHash": "sha256-X/aIT8Qc8UCqnxJvaZykx3CJ0ZnDFvO+dqp/7fglZWo=", + "owner": "nix-community", + "repo": "nixago", + "rev": "9cab4dde31ec2f2c05d702ea8648ce580664e906", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "nix-community", + "repo": "nixago", "type": "github" } }, - "nix": { + "nixago_3": { "inputs": { - "lowdown-src": "lowdown-src", - "nixpkgs": "nixpkgs_4", - "nixpkgs-regression": "nixpkgs-regression" + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "flake-utils" + ], + "nixago-exts": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "blank" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "nixpkgs" + ] }, "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "lastModified": 1683210100, + "narHash": "sha256-bhGDOlkWtlhVECpoOog4fWiFJmLCpVEg09a40aTjCbw=", + "owner": "nix-community", + "repo": "nixago", + "rev": "1da60ad9412135f9ed7a004669fdcf3d378ec630", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "owner": "nix-community", + "repo": "nixago", "type": "github" } }, - "nix-nomad": { + "nixago_4": { "inputs": { - "flake-compat": "flake-compat_3", "flake-utils": [ "flake-lang", "ctl", "cardano-node", + "cardano-automation", "tullia", - "nix2container", + "std", "flake-utils" ], - "gomod2nix": "gomod2nix", - "nixpkgs": [ + "nixago-exts": [ "flake-lang", "ctl", "cardano-node", + "cardano-automation", "tullia", - "nixpkgs" + "std", + "blank" ], - "nixpkgs-lib": [ + "nixpkgs": [ "flake-lang", "ctl", "cardano-node", + "cardano-automation", "tullia", + "std", "nixpkgs" ] }, "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", "type": "github" }, "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", + "owner": "nix-community", + "repo": "nixago", "type": "github" } }, - "nix-nomad_2": { + "nixago_5": { "inputs": { - "flake-compat": "flake-compat_10", "flake-utils": [ "flake-lang", "db-sync-ctl", "tullia", - "nix2container", + "std", "flake-utils" ], - "gomod2nix": "gomod2nix_2", - "nixpkgs": [ + "nixago-exts": [ "flake-lang", "db-sync-ctl", "tullia", - "nixpkgs" + "std", + "blank" ], - "nixpkgs-lib": [ + "nixpkgs": [ "flake-lang", "db-sync-ctl", "tullia", + "std", "nixpkgs" ] }, "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", "type": "github" }, "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", + "owner": "nix-community", + "repo": "nixago", "type": "github" } }, - "nix-tools": { - "flake": false, + "nixpkgs": { "locked": { - "lastModified": 1649424170, - "narHash": "sha256-XgKXWispvv5RCvZzPb+p7e6Hy3LMuRjafKMl7kXzxGw=", - "owner": "input-output-hk", - "repo": "nix-tools", - "rev": "e109c94016e3b6e0db7ed413c793e2d4bdb24aa7", + "lastModified": 1687420147, + "narHash": "sha256-NILbmZVsoP2Aw0OAIXdbYXrWc/qggIDDyIwZ01yUx+Q=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d449a456ba7d81038fc9ec9141eae7ee3aaf2982", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "nix-tools", + "owner": "NixOS", + "ref": "release-23.05", + "repo": "nixpkgs", "type": "github" } }, - "nix-tools-static": { - "flake": false, + "nixpkgs-2003": { "locked": { - "lastModified": 1706266250, - "narHash": "sha256-9t+GRk3eO9muCtKdNAwBtNBZ5dH1xHcnS17WaQyftwA=", - "owner": "input-output-hk", - "repo": "haskell-nix-example", - "rev": "580cb6db546a7777dad3b9c0fa487a366c045c4e", + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "nix", - "repo": "haskell-nix-example", + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix2container": { - "inputs": { - "flake-utils": "flake-utils_3", - "nixpkgs": "nixpkgs_5" + "nixpkgs-2003_2": { + "locked": { + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "type": "github" }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2003_3": { "locked": { - "lastModified": 1671269339, - "narHash": "sha256-KR2SXh4c2Y+bgbCfXjTGJ74O9/u4CAPFA0KYZHhKf5Q=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "6800fff45afecc7e47c334d14cf2b2f4f25601a0", + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix2container_2": { - "inputs": { - "flake-utils": "flake-utils_4", - "nixpkgs": "nixpkgs_7" + "nixpkgs-2003_4": { + "locked": { + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "type": "github" }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2003_5": { "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix2container_3": { - "inputs": { - "flake-utils": "flake-utils_8", - "nixpkgs": "nixpkgs_15" + "nixpkgs-2003_6": { + "locked": { + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "type": "github" }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2003_7": { "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix2container_4": { - "inputs": { - "flake-utils": "flake-utils_14", - "nixpkgs": "nixpkgs_24" + "nixpkgs-2003_8": { + "locked": { + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "type": "github" }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2105": { "locked": { - "lastModified": 1703410130, - "narHash": "sha256-qbJQ8DtdKzFK0fZck7kX64QWkS/3tKefxGjyI+SAQa4=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "6aa8491e73843ac8bf714a3904a45900f356ea44", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2105_2": { + "locked": { + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix2container_5": { - "inputs": { - "flake-utils": "flake-utils_18", - "nixpkgs": "nixpkgs_27" - }, + "nixpkgs-2105_3": { "locked": { - "lastModified": 1703410130, - "narHash": "sha256-qbJQ8DtdKzFK0fZck7kX64QWkS/3tKefxGjyI+SAQa4=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "6aa8491e73843ac8bf714a3904a45900f356ea44", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix2container_6": { - "inputs": { - "flake-utils": "flake-utils_20", - "nixpkgs": "nixpkgs_29" - }, + "nixpkgs-2105_4": { "locked": { - "lastModified": 1703410130, - "narHash": "sha256-qbJQ8DtdKzFK0fZck7kX64QWkS/3tKefxGjyI+SAQa4=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "6aa8491e73843ac8bf714a3904a45900f356ea44", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix_2": { - "inputs": { - "lowdown-src": "lowdown-src_2", - "nixpkgs": "nixpkgs_10", - "nixpkgs-regression": "nixpkgs-regression_2" - }, + "nixpkgs-2105_5": { "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix_3": { - "inputs": { - "lowdown-src": "lowdown-src_3", - "nixpkgs": "nixpkgs_12", - "nixpkgs-regression": "nixpkgs-regression_3" - }, + "nixpkgs-2105_6": { "locked": { - "lastModified": 1643066034, - "narHash": "sha256-xEPeMcNJVOeZtoN+d+aRwolpW8mFSEQx76HTRdlhPhg=", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", "owner": "NixOS", - "repo": "nix", - "rev": "a1cd7e58606a41fcf62bf8637804cf8306f17f62", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { "owner": "NixOS", - "ref": "2.6.0", - "repo": "nix", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix_4": { - "inputs": { - "lowdown-src": "lowdown-src_4", - "nixpkgs": "nixpkgs_13", - "nixpkgs-regression": "nixpkgs-regression_4" - }, + "nixpkgs-2105_7": { "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix_5": { - "inputs": { - "lowdown-src": "lowdown-src_5", - "nixpkgs": "nixpkgs_18", - "nixpkgs-regression": "nixpkgs-regression_5" - }, + "nixpkgs-2105_8": { "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix_6": { - "inputs": { - "lowdown-src": "lowdown-src_6", - "nixpkgs": "nixpkgs_22", - "nixpkgs-regression": "nixpkgs-regression_6" - }, + "nixpkgs-2111": { "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix_7": { - "inputs": { - "lowdown-src": "lowdown-src_7", - "nixpkgs": "nixpkgs_23", - "nixpkgs-regression": "nixpkgs-regression_7" - }, + "nixpkgs-2111_2": { "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nix_8": { - "inputs": { - "lowdown-src": "lowdown-src_8", - "nixpkgs": "nixpkgs_26", - "nixpkgs-regression": "nixpkgs-regression_8" - }, + "nixpkgs-2111_3": { "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nixago": { - "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-node", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "ctl", - "cardano-node", - "tullia", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "tullia", - "std", - "nixpkgs" - ] - }, + "nixpkgs-2111_4": { "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", + "owner": "NixOS", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nixago_2": { - "inputs": { - "flake-utils": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] - }, + "nixpkgs-2111_5": { "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", + "owner": "NixOS", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", "type": "github" } }, - "nixpkgs": { + "nixpkgs-2111_6": { "locked": { - "lastModified": 1717112898, - "narHash": "sha256-7R2ZvOnvd9h8fDd65p0JnB7wXfUvreox3xFdYWd1BnY=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6132b0f6e344ce2fe34fc051b72fb46e34f668e0", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-21.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2003": { + "nixpkgs-2111_7": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixpkgs-21.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2003_2": { + "nixpkgs-2111_8": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixpkgs-21.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2003_3": { + "nixpkgs-2205": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1685573264, + "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "380be19fbd2d9079f677978361792cb25e8a3635", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2003_4": { + "nixpkgs-2205_2": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1685573264, + "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "380be19fbd2d9079f677978361792cb25e8a3635", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2003_5": { + "nixpkgs-2205_3": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1682600000, + "narHash": "sha256-ha4BehR1dh8EnXSoE1m/wyyYVvHI9txjW4w5/oxsW5Y=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "50fc86b75d2744e1ab3837ef74b53f103a9b55a0", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2003_6": { + "nixpkgs-2205_4": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1685573264, + "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "380be19fbd2d9079f677978361792cb25e8a3635", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2003_7": { + "nixpkgs-2205_5": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1685573264, + "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "380be19fbd2d9079f677978361792cb25e8a3635", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2003_8": { + "nixpkgs-2205_6": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1685573264, + "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "380be19fbd2d9079f677978361792cb25e8a3635", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105": { + "nixpkgs-2205_7": { "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1682600000, + "narHash": "sha256-ha4BehR1dh8EnXSoE1m/wyyYVvHI9txjW4w5/oxsW5Y=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "rev": "50fc86b75d2744e1ab3837ef74b53f103a9b55a0", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105_2": { + "nixpkgs-2205_8": { "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1685573264, + "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "rev": "380be19fbd2d9079f677978361792cb25e8a3635", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105_3": { + "nixpkgs-2211": { "locked": { - "lastModified": 1645296114, - "narHash": "sha256-y53N7TyIkXsjMpOG7RhvqJFGDacLs9HlyHeSTBioqYU=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "530a53dcbc9437363471167a5e4762c5fcfa34a1", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105_4": { + "nixpkgs-2211_2": { "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105_5": { + "nixpkgs-2211_3": { "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1682682915, + "narHash": "sha256-haR0u/j/nUvlMloYlaOYq1FMXTvkNHw+wGxc+0qXisM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "rev": "09f1b33fcc0f59263137e23e935c1bb03ec920e4", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105_6": { + "nixpkgs-2211_4": { "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105_7": { + "nixpkgs-2211_5": { "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105_8": { + "nixpkgs-2211_6": { "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111": { + "nixpkgs-2211_7": { "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1682682915, + "narHash": "sha256-haR0u/j/nUvlMloYlaOYq1FMXTvkNHw+wGxc+0qXisM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "rev": "09f1b33fcc0f59263137e23e935c1bb03ec920e4", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111_2": { + "nixpkgs-2211_8": { "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111_3": { + "nixpkgs-2305": { "locked": { - "lastModified": 1648744337, - "narHash": "sha256-bYe1dFJAXovjqiaPKrmAbSBEK5KUkgwVaZcTbSoJ7hg=", + "lastModified": 1690680713, + "narHash": "sha256-NXCWA8N+GfSQyoN7ZNiOgq/nDJKOp5/BHEpiZP8sUZw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0a58eebd8ec65ffdef2ce9562784123a73922052", + "rev": "b81af66deb21f73a70c67e5ea189568af53b1e8c", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111_4": { + "nixpkgs-2305_2": { "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1695416179, + "narHash": "sha256-610o1+pwbSu+QuF3GE0NU5xQdTHM3t9wyYhB9l94Cd8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "rev": "715d72e967ec1dd5ecc71290ee072bcaf5181ed6", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111_5": { + "nixpkgs-2305_3": { "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1695416179, + "narHash": "sha256-610o1+pwbSu+QuF3GE0NU5xQdTHM3t9wyYhB9l94Cd8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "rev": "715d72e967ec1dd5ecc71290ee072bcaf5181ed6", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111_6": { + "nixpkgs-2305_4": { "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1701362232, + "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111_7": { + "nixpkgs-2305_5": { "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1705033721, + "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111_8": { + "nixpkgs-2305_6": { "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1705033721, + "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2205": { + "nixpkgs-2311": { "locked": { - "lastModified": 1682600000, - "narHash": "sha256-ha4BehR1dh8EnXSoE1m/wyyYVvHI9txjW4w5/oxsW5Y=", + "lastModified": 1701386440, + "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "50fc86b75d2744e1ab3837ef74b53f103a9b55a0", + "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", + "ref": "nixpkgs-23.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2205_2": { + "nixpkgs-2311_2": { "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", + "lastModified": 1719957072, + "narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "rev": "7144d6241f02d171d25fba3edeaf15e0f2592105", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", + "ref": "nixpkgs-23.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2205_3": { + "nixpkgs-2311_3": { "locked": { - "lastModified": 1682600000, - "narHash": "sha256-ha4BehR1dh8EnXSoE1m/wyyYVvHI9txjW4w5/oxsW5Y=", + "lastModified": 1719957072, + "narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "50fc86b75d2744e1ab3837ef74b53f103a9b55a0", + "rev": "7144d6241f02d171d25fba3edeaf15e0f2592105", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", + "ref": "nixpkgs-23.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2205_4": { + "nixpkgs-2405": { "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", + "lastModified": 1720122915, + "narHash": "sha256-Nby8WWxj0elBu1xuRaUcRjPi/rU3xVbkAt2kj4QwX2U=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "rev": "835cf2d3f37989c5db6585a28de967a667a75fb1", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", + "ref": "nixpkgs-24.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2205_5": { + "nixpkgs-2405_2": { "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", + "lastModified": 1729242558, + "narHash": "sha256-VgcLDu4igNT0eYua6OAl9pWCI0cYXhDbR+pWP44tte0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "rev": "4a3f2d3195b60d07530574988df92e049372c10e", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", + "ref": "nixpkgs-24.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2205_6": { + "nixpkgs-arion": { "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", + "lastModified": 1725022733, + "narHash": "sha256-M6tvBPNDilgXLh9Bfv4U0ih+TyrQReeYOLkY+U2idy8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "rev": "79eb73f1c49fdfdf75f00b1ee086366380fbc323", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2205_7": { + "nixpkgs-lib": { "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", + "dir": "lib", + "lastModified": 1671359686, + "narHash": "sha256-3MpC6yZo+Xn9cPordGz2/ii6IJpP2n8LE8e/ebUXLrs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "rev": "04f574a1c0fde90b51bf68198e2297ca4e7cccf4", "type": "github" }, "original": { + "dir": "lib", "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2211": { + "nixpkgs-lib_2": { "locked": { - "lastModified": 1682682915, - "narHash": "sha256-haR0u/j/nUvlMloYlaOYq1FMXTvkNHw+wGxc+0qXisM=", + "dir": "lib", + "lastModified": 1682879489, + "narHash": "sha256-sASwo8gBt7JDnOOstnps90K1wxmVfyhsTPPNTGBPjjg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "09f1b33fcc0f59263137e23e935c1bb03ec920e4", + "rev": "da45bf6ec7bbcc5d1e14d3795c025199f28e0de0", "type": "github" }, "original": { + "dir": "lib", "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2211_2": { + "nixpkgs-lib_3": { "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", + "dir": "lib", + "lastModified": 1690881714, + "narHash": "sha256-h/nXluEqdiQHs1oSgkOOWF+j8gcJMWhwnZ9PFabN6q0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "rev": "9e1960bc196baf6881340d53dccb203a951745a2", "type": "github" }, "original": { + "dir": "lib", "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2211_3": { + "nixpkgs-lib_4": { "locked": { - "lastModified": 1682682915, - "narHash": "sha256-haR0u/j/nUvlMloYlaOYq1FMXTvkNHw+wGxc+0qXisM=", + "dir": "lib", + "lastModified": 1690881714, + "narHash": "sha256-h/nXluEqdiQHs1oSgkOOWF+j8gcJMWhwnZ9PFabN6q0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "09f1b33fcc0f59263137e23e935c1bb03ec920e4", + "rev": "9e1960bc196baf6881340d53dccb203a951745a2", "type": "github" }, "original": { + "dir": "lib", "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2211_4": { + "nixpkgs-lib_5": { "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", + "dir": "lib", + "lastModified": 1696019113, + "narHash": "sha256-X3+DKYWJm93DRSdC5M6K5hLqzSya9BjibtBsuARoPco=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "rev": "f5892ddac112a1e9b3612c39af1b72987ee5783a", "type": "github" }, "original": { + "dir": "lib", "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2211_5": { + "nixpkgs-lib_6": { "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", + "lastModified": 1730504152, + "narHash": "sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s=", + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" + } + }, + "nixpkgs-regression": { + "locked": { + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-2211_6": { + "nixpkgs-regression_2": { "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-2211_7": { + "nixpkgs-regression_3": { "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-2305": { + "nixpkgs-regression_4": { "locked": { - "lastModified": 1701362232, - "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-2305_2": { + "nixpkgs-regression_5": { "locked": { - "lastModified": 1701362232, - "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-2305_3": { + "nixpkgs-regression_6": { "locked": { - "lastModified": 1701362232, - "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-2305_4": { + "nixpkgs-regression_7": { "locked": { - "lastModified": 1701362232, - "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-2305_5": { + "nixpkgs-regression_8": { "locked": { - "lastModified": 1701362232, - "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-2311": { + "nixpkgs-regression_9": { "locked": { - "lastModified": 1701386440, - "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-2311_2": { + "nixpkgs-stable": { "locked": { - "lastModified": 1701386440, - "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", + "lastModified": 1690066826, + "narHash": "sha256-6L2qb+Zc0BFkh72OS9uuX637gniOjzU6qCDBpjB2LGY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", + "rev": "ce45b591975d070044ca24e3003c830d26fea1c8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", + "ref": "release-23.05", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2311_3": { + "nixpkgs-stable_2": { "locked": { - "lastModified": 1701386440, - "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", + "lastModified": 1730741070, + "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", + "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", + "ref": "nixos-24.05", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2311_4": { + "nixpkgs-unstable": { "locked": { - "lastModified": 1701386440, - "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", + "lastModified": 1690720142, + "narHash": "sha256-GywuiZjBKfFkntQwpNQfL+Ksa2iGjPprBGL0/psgRZM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", + "rev": "3acb5c4264c490e7714d503c7166a3fde0c51324", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2311_5": { + "nixpkgs-unstable_2": { "locked": { - "lastModified": 1701386440, - "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", - "owner": "NixOS", + "lastModified": 1696577711, + "narHash": "sha256-94VRjvClIKDym1QRqPkX5LTQoAwZ1E6QE/3dWtOXSIQ=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", + "rev": "a2eb207f45e4a14a1e3019d9e3863d1e208e2295", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", + "owner": "nixos", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-lib": { + "nixpkgs-unstable_3": { "locked": { - "lastModified": 1717284937, - "narHash": "sha256-lIbdfCsf8LMFloheeE6N31+BMIeixqyQWbSr2vk79EQ=", - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz" + "lastModified": 1695318763, + "narHash": "sha256-FHVPDRP2AfvsxAdc+AsgFJevMz5VBmnZglFUMlxBkcY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e12483116b3b51a185a33a272bf351e357ba9a99", + "type": "github" }, "original": { - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz" + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" } }, - "nixpkgs-regression": { + "nixpkgs-unstable_4": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1682656005, + "narHash": "sha256-fYplYo7so1O+rSQ2/aS+SbTPwLTeoUXk4ekKNtSl4P8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "6806b63e824f84b0f0e60b6d660d4ae753de0477", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_2": { + "nixpkgs-unstable_5": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1695318763, + "narHash": "sha256-FHVPDRP2AfvsxAdc+AsgFJevMz5VBmnZglFUMlxBkcY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "e12483116b3b51a185a33a272bf351e357ba9a99", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_3": { + "nixpkgs-unstable_6": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1694822471, + "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", "type": "github" }, "original": { - "id": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "indirect" + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", + "type": "github" } }, - "nixpkgs-regression_4": { + "nixpkgs-unstable_7": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1720181791, + "narHash": "sha256-i4vJL12/AdyuQuviMMd1Hk2tsGt02hDNhA0Zj1m16N8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "4284c2b73c8bce4b46a6adf23e16d9e2ec8da4bb", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_5": { + "nixpkgs-unstable_8": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1682656005, + "narHash": "sha256-fYplYo7so1O+rSQ2/aS+SbTPwLTeoUXk4ekKNtSl4P8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "6806b63e824f84b0f0e60b6d660d4ae753de0477", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_6": { + "nixpkgs-unstable_9": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1729980323, + "narHash": "sha256-eWPRZAlhf446bKSmzw6x7RWEE4IuZgAp8NW3eXZwRAY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "86e78d3d2084ff87688da662cf78c2af085d8e73", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_7": { + "nixpkgs_10": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1670461440, + "narHash": "sha256-jy1LB8HOMKGJEGXgzFRLDU1CBGL0/LlkolgnqIsF0D8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "04a75b2eecc0acf6239acf9dd04485ff8d14f425", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixos-22.11-small", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_8": { + "nixpkgs_11": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1690026219, + "narHash": "sha256-oOduRk/kzQxOBknZXTLSEYd7tk+GoKvr8wV6Ab+t4AU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "f465da166263bc0d4b39dfd4ca28b777c92d4b73", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-stable": { + "nixpkgs_12": { "locked": { - "lastModified": 1690680713, - "narHash": "sha256-NXCWA8N+GfSQyoN7ZNiOgq/nDJKOp5/BHEpiZP8sUZw=", + "lastModified": 1675249806, + "narHash": "sha256-u8Rcqekusl3pMZm68hZqr6zozI8Ug5IxqOiqDLAlu1k=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b81af66deb21f73a70c67e5ea189568af53b1e8c", + "rev": "79feedf38536de2a27d13fe2eaf200a9c05193ba", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", - "rev": "b81af66deb21f73a70c67e5ea189568af53b1e8c", "type": "github" } }, - "nixpkgs-stable_2": { + "nixpkgs_13": { "locked": { - "lastModified": 1685801374, - "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=", - "owner": "NixOS", + "lastModified": 1636823747, + "narHash": "sha256-oWo1nElRAOZqEf90Yek2ixdHyjD+gqtS/pAgwaQ9UhQ=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "c37ca420157f4abc31e26f436c1145f8951ff373", + "rev": "f6a2ed2082d9a51668c86ba27d0b5496f7a2ea93", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixos-23.05", + "owner": "nixos", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-stable_3": { + "nixpkgs_14": { "locked": { - "lastModified": 1690680713, - "narHash": "sha256-NXCWA8N+GfSQyoN7ZNiOgq/nDJKOp5/BHEpiZP8sUZw=", + "lastModified": 1657693803, + "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b81af66deb21f73a70c67e5ea189568af53b1e8c", + "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixos-22.05-small", "repo": "nixpkgs", - "rev": "b81af66deb21f73a70c67e5ea189568af53b1e8c", "type": "github" } }, - "nixpkgs-stable_4": { + "nixpkgs_15": { "locked": { - "lastModified": 1685801374, - "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=", + "lastModified": 1642336556, + "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c37ca420157f4abc31e26f436c1145f8951ff373", + "rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixos-23.05", - "repo": "nixpkgs", - "type": "github" + "id": "nixpkgs", + "type": "indirect" } }, - "nixpkgs-stable_5": { + "nixpkgs_16": { "locked": { - "lastModified": 1690680713, - "narHash": "sha256-NXCWA8N+GfSQyoN7ZNiOgq/nDJKOp5/BHEpiZP8sUZw=", + "lastModified": 1657693803, + "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b81af66deb21f73a70c67e5ea189568af53b1e8c", + "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixos-22.05-small", "repo": "nixpkgs", - "rev": "b81af66deb21f73a70c67e5ea189568af53b1e8c", "type": "github" } }, - "nixpkgs-stable_6": { + "nixpkgs_17": { "locked": { - "lastModified": 1685801374, - "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c37ca420157f4abc31e26f436c1145f8951ff373", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-23.05", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-stable_7": { + "nixpkgs_18": { "locked": { - "lastModified": 1710695816, - "narHash": "sha256-3Eh7fhEID17pv9ZxrPwCLfqXnYP006RKzSs0JptsN84=", + "lastModified": 1653581809, + "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "614b4613980a522ba49f0d194531beddbb7220d3", + "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-23.11", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable": { + "nixpkgs_19": { "locked": { - "lastModified": 1682656005, - "narHash": "sha256-fYplYo7so1O+rSQ2/aS+SbTPwLTeoUXk4ekKNtSl4P8=", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6806b63e824f84b0f0e60b6d660d4ae753de0477", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_2": { + "nixpkgs_2": { "locked": { - "lastModified": 1701336116, - "narHash": "sha256-kEmpezCR/FpITc6yMbAh4WrOCiT2zg5pSjnKrq51h5Y=", + "lastModified": 1687420147, + "narHash": "sha256-NILbmZVsoP2Aw0OAIXdbYXrWc/qggIDDyIwZ01yUx+Q=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f5c27c6136db4d76c30e533c20517df6864c46ee", + "rev": "d449a456ba7d81038fc9ec9141eae7ee3aaf2982", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "release-23.05", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_3": { + "nixpkgs_20": { "locked": { - "lastModified": 1648219316, - "narHash": "sha256-Ctij+dOi0ZZIfX5eMhgwugfvB+WZSrvVNAyAuANOsnQ=", - "owner": "NixOS", + "lastModified": 1674407282, + "narHash": "sha256-2qwc8mrPINSFdWffPK+ji6nQ9aGnnZyHSItVcYDZDlk=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "30d3d79b7d3607d56546dd2a6b49e156ba0ec634", + "rev": "ab1254087f4cdf4af74b552d7fc95175d9bdbb49", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", + "owner": "nixos", + "ref": "nixos-22.11", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_4": { + "nixpkgs_21": { "locked": { - "lastModified": 1682656005, - "narHash": "sha256-fYplYo7so1O+rSQ2/aS+SbTPwLTeoUXk4ekKNtSl4P8=", - "owner": "NixOS", + "lastModified": 1665087388, + "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "6806b63e824f84b0f0e60b6d660d4ae753de0477", + "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_5": { + "nixpkgs_22": { "locked": { - "lastModified": 1694822471, - "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", + "lastModified": 1653581809, + "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", + "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixos-unstable", "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", "type": "github" } }, - "nixpkgs-unstable_6": { + "nixpkgs_23": { "locked": { - "lastModified": 1694822471, - "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { "owner": "NixOS", "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", "type": "github" } }, - "nixpkgs-unstable_7": { + "nixpkgs_24": { "locked": { - "lastModified": 1694822471, - "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", - "owner": "NixOS", + "lastModified": 1675940568, + "narHash": "sha256-epG6pOT9V0kS+FUqd7R6/CWkgnZx2DMT5Veqo+y6G3c=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", + "rev": "6ccc4a59c3f1b56d039d93da52696633e641bc71", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", "type": "github" } }, - "nixpkgs-unstable_8": { + "nixpkgs_25": { "locked": { - "lastModified": 1694822471, - "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", + "lastModified": 1642336556, + "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", + "rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6", "type": "github" }, "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", - "type": "github" + "id": "nixpkgs", + "type": "indirect" } }, - "nixpkgs_10": { + "nixpkgs_26": { "locked": { "lastModified": 1657693803, "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", @@ -6659,101 +8893,116 @@ "type": "github" } }, - "nixpkgs_11": { + "nixpkgs_27": { "locked": { - "lastModified": 1697723726, - "narHash": "sha256-SaTWPkI8a5xSHX/rrKzUe+/uVNy6zCGMXgoeMb7T9rg=", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "7c9cc5a6e5d38010801741ac830a3f8fd667a7a0", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_12": { + "nixpkgs_28": { "locked": { - "lastModified": 1632864508, - "narHash": "sha256-d127FIvGR41XbVRDPVvozUPQ/uRHbHwvfyKHwEt5xFM=", - "owner": "NixOS", + "lastModified": 1681001314, + "narHash": "sha256-5sDnCLdrKZqxLPK4KA8+f4A3YKO/u6ElpMILvX0g72c=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "367c0e1086a4eb4502b24d872cea2c7acdd557f4", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixpkgs.lib", + "type": "github" + } + }, + "nixpkgs_29": { + "locked": { + "lastModified": 1675940568, + "narHash": "sha256-epG6pOT9V0kS+FUqd7R6/CWkgnZx2DMT5Veqo+y6G3c=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "82891b5e2c2359d7e58d08849e4c89511ab94234", + "rev": "6ccc4a59c3f1b56d039d93da52696633e641bc71", "type": "github" }, "original": { - "id": "nixpkgs", - "ref": "nixos-21.05-small", - "type": "indirect" + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" } }, - "nixpkgs_13": { + "nixpkgs_3": { "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "lastModified": 1677543769, + "narHash": "sha256-LwbqS8vGisXl2WHpK9r5+kodr0zoIT8F2YB0R4y1TsA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "rev": "b26d52c9feb6476580016e78935cbf96eb3e2115", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.05-small", + "ref": "nixos-22.11", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_14": { + "nixpkgs_30": { "locked": { - "lastModified": 1653581809, - "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", - "owner": "NixOS", + "lastModified": 1677063315, + "narHash": "sha256-qiB4ajTeAOVnVSAwCNEEkoybrAlA+cpeiBxLobHndE8=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", + "rev": "988cc958c57ce4350ec248d2d53087777f9e1949", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_15": { + "nixpkgs_31": { "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", + "lastModified": 1653581809, + "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", + "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_16": { + "nixpkgs_32": { "locked": { - "lastModified": 1674407282, - "narHash": "sha256-2qwc8mrPINSFdWffPK+ji6nQ9aGnnZyHSItVcYDZDlk=", - "owner": "nixos", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "ab1254087f4cdf4af74b552d7fc95175d9bdbb49", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixos-22.11", + "owner": "NixOS", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_17": { + "nixpkgs_33": { "locked": { "lastModified": 1665087388, "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", @@ -6769,86 +9018,68 @@ "type": "github" } }, - "nixpkgs_18": { + "nixpkgs_34": { "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "lastModified": 1642336556, + "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixos-22.05-small", - "repo": "nixpkgs", - "type": "github" + "id": "nixpkgs", + "type": "indirect" } }, - "nixpkgs_19": { + "nixpkgs_35": { "locked": { - "lastModified": 1713714899, - "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", + "lastModified": 1657693803, + "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", + "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", + "ref": "nixos-22.05-small", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_2": { + "nixpkgs_36": { "locked": { - "lastModified": 1687420147, - "narHash": "sha256-NILbmZVsoP2Aw0OAIXdbYXrWc/qggIDDyIwZ01yUx+Q=", + "lastModified": 1712920918, + "narHash": "sha256-1yxFvUcJfUphK9V91KufIQom7gCsztza0H4Rz2VCWUU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d449a456ba7d81038fc9ec9141eae7ee3aaf2982", + "rev": "92323443a56f4e9fc4e4b712e3119f66d0969297", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-23.05", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_20": { + "nixpkgs_37": { "locked": { - "lastModified": 1684171562, - "narHash": "sha256-BMUWjVWAUdyMWKk0ATMC9H0Bv4qAV/TXwwPUvTiC5IQ=", + "lastModified": 1708343346, + "narHash": "sha256-qlzHvterVRzS8fS0ophQpkh0rqw0abijHEOAKm0HmV0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "55af203d468a6f5032a519cba4f41acf5a74b638", + "rev": "9312b935a538684049cb668885e60f15547d4c5f", "type": "github" }, "original": { "owner": "nixos", - "ref": "release-22.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_21": { - "locked": { - "lastModified": 1717936905, - "narHash": "sha256-aSn61YQsi8CInQ3wwoO1tdsnAsQk3gCET8zXKwKeklw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1fec1c179f5f0fcaa20a67f2266cec128af1a00f", - "type": "github" - }, - "original": { - "owner": "NixOS", + "ref": "release-23.11", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_22": { + "nixpkgs_38": { "locked": { "lastModified": 1657693803, "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", @@ -6864,76 +9095,77 @@ "type": "github" } }, - "nixpkgs_23": { + "nixpkgs_39": { "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "lastModified": 1713714899, + "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.05-small", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_24": { + "nixpkgs_4": { "locked": { - "lastModified": 1697269602, - "narHash": "sha256-dSzV7Ud+JH4DPVD9od53EgDrxUVQOcSj4KGjggCDVJI=", - "owner": "NixOS", + "lastModified": 1645013224, + "narHash": "sha256-b7OEC8vwzJv3rsz9pwnTX2LQDkeOWz2DbKypkVvNHXc=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "9cb540e9c1910d74a7e10736277f6eb9dff51c81", + "rev": "b66b39216b1fef2d8c33cc7a5c72d8da80b79970", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_25": { + "nixpkgs_40": { "locked": { - "lastModified": 1689261696, - "narHash": "sha256-LzfUtFs9MQRvIoQ3MfgSuipBVMXslMPH/vZ+nM40LkA=", + "lastModified": 1657693803, + "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "df1eee2aa65052a18121ed4971081576b25d6b5c", + "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixos-22.05-small", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_26": { + "nixpkgs_41": { "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "lastModified": 1653581809, + "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.05-small", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_27": { + "nixpkgs_42": { "locked": { - "lastModified": 1697269602, - "narHash": "sha256-dSzV7Ud+JH4DPVD9od53EgDrxUVQOcSj4KGjggCDVJI=", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9cb540e9c1910d74a7e10736277f6eb9dff51c81", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { @@ -6942,68 +9174,71 @@ "type": "github" } }, - "nixpkgs_28": { + "nixpkgs_43": { "locked": { - "lastModified": 1689261696, - "narHash": "sha256-LzfUtFs9MQRvIoQ3MfgSuipBVMXslMPH/vZ+nM40LkA=", - "owner": "NixOS", + "lastModified": 1674407282, + "narHash": "sha256-2qwc8mrPINSFdWffPK+ji6nQ9aGnnZyHSItVcYDZDlk=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "df1eee2aa65052a18121ed4971081576b25d6b5c", + "rev": "ab1254087f4cdf4af74b552d7fc95175d9bdbb49", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", + "owner": "nixos", + "ref": "nixos-22.11", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_29": { + "nixpkgs_44": { "locked": { - "lastModified": 1697269602, - "narHash": "sha256-dSzV7Ud+JH4DPVD9od53EgDrxUVQOcSj4KGjggCDVJI=", - "owner": "NixOS", + "lastModified": 1665087388, + "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "9cb540e9c1910d74a7e10736277f6eb9dff51c81", + "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_45": { "locked": { - "lastModified": 1642336556, - "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", + "lastModified": 1657693803, + "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6", + "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", "type": "github" }, "original": { - "id": "nixpkgs", - "type": "indirect" + "owner": "NixOS", + "ref": "nixos-22.05-small", + "repo": "nixpkgs", + "type": "github" } }, - "nixpkgs_30": { + "nixpkgs_46": { "locked": { - "lastModified": 1689261696, - "narHash": "sha256-LzfUtFs9MQRvIoQ3MfgSuipBVMXslMPH/vZ+nM40LkA=", + "lastModified": 1713714899, + "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "df1eee2aa65052a18121ed4971081576b25d6b5c", + "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_31": { + "nixpkgs_47": { "locked": { "lastModified": 1684171562, "narHash": "sha256-BMUWjVWAUdyMWKk0ATMC9H0Bv4qAV/TXwwPUvTiC5IQ=", @@ -7019,29 +9254,28 @@ "type": "github" } }, - "nixpkgs_32": { + "nixpkgs_48": { "locked": { - "lastModified": 1710765496, - "narHash": "sha256-p7ryWEeQfMwTB6E0wIUd5V2cFTgq+DRRBz2hYGnJZyA=", + "lastModified": 1732452129, + "narHash": "sha256-etp4MJgiW/XTOyjadi4ScLSuTDvvOPXoeAj10oC4nyM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e367f7a1fb93137af22a3908f00b9a35e2d286a7", + "rev": "c9bcd0e639ac3b2ae527ee786b579f2a35122f38", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_33": { + "nixpkgs_49": { "locked": { - "lastModified": 1706487304, - "narHash": "sha256-LE8lVX28MV2jWJsidW13D2qrHU/RUUONendL2Q/WlJg=", + "lastModified": 1730768919, + "narHash": "sha256-8AKquNnnSaJRXZxc5YmF/WfmxiHX6MMZZasRP6RRQkE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "90f456026d284c22b3e3497be980b2e47d0b28ac", + "rev": "a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc", "type": "github" }, "original": { @@ -7051,112 +9285,114 @@ "type": "github" } }, - "nixpkgs_34": { + "nixpkgs_5": { "locked": { - "lastModified": 1713714899, - "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", - "owner": "NixOS", + "lastModified": 1680945546, + "narHash": "sha256-8FuaH5t/aVi/pR1XxnF0qi4WwMYC+YxlfdsA0V+TEuQ=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", + "rev": "d9f759f2ea8d265d974a6e1259bd510ac5844c5d", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_50": { "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "lastModified": 1728538411, + "narHash": "sha256-f0SBJz1eZ2yOuKUr5CA9BHULGXVSn6miBuUWdTyhUhU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "rev": "b69de56fac8c2b6f8fd27f2eca01dcda8e0a4221", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.05-small", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_5": { + "nixpkgs_51": { "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", + "lastModified": 1733212471, + "narHash": "sha256-M1+uCoV5igihRfcUKrr1riygbe73/dzNnzPsmaLCmpo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", + "rev": "55d15ad12a74eb7d4646254e13638ad0c4128776", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_6": { "locked": { - "lastModified": 1653581809, - "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", + "lastModified": 1657693803, + "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", + "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", + "ref": "nixos-22.05-small", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_7": { "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", - "owner": "NixOS", + "lastModified": 1692339729, + "narHash": "sha256-TUK76/Pqm9qIDjEGd27Lz9EiBIvn5F70JWDmEQ4Y5DQ=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", + "rev": "ae521bd4e460b076a455dca8b13f4151489a725c", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", + "ref": "nixos-23.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_8": { "locked": { - "lastModified": 1674407282, - "narHash": "sha256-2qwc8mrPINSFdWffPK+ji6nQ9aGnnZyHSItVcYDZDlk=", + "lastModified": 1684171562, + "narHash": "sha256-BMUWjVWAUdyMWKk0ATMC9H0Bv4qAV/TXwwPUvTiC5IQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ab1254087f4cdf4af74b552d7fc95175d9bdbb49", + "rev": "55af203d468a6f5032a519cba4f41acf5a74b638", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-22.11", + "ref": "release-22.11", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_9": { "locked": { - "lastModified": 1665087388, - "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", + "lastModified": 1684171562, + "narHash": "sha256-BMUWjVWAUdyMWKk0ATMC9H0Bv4qAV/TXwwPUvTiC5IQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", + "rev": "55af203d468a6f5032a519cba4f41acf5a74b638", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixpkgs-unstable", + "ref": "release-22.11", "repo": "nixpkgs", "type": "github" } @@ -7177,6 +9413,51 @@ } }, "nosys_2": { + "locked": { + "lastModified": 1668010795, + "narHash": "sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI=", + "owner": "divnix", + "repo": "nosys", + "rev": "feade0141487801c71ff55623b421ed535dbdefa", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "nosys", + "type": "github" + } + }, + "nosys_3": { + "locked": { + "lastModified": 1668010795, + "narHash": "sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI=", + "owner": "divnix", + "repo": "nosys", + "rev": "feade0141487801c71ff55623b421ed535dbdefa", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "nosys", + "type": "github" + } + }, + "nosys_4": { + "locked": { + "lastModified": 1668010795, + "narHash": "sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI=", + "owner": "divnix", + "repo": "nosys", + "rev": "feade0141487801c71ff55623b421ed535dbdefa", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "nosys", + "type": "github" + } + }, + "nosys_5": { "locked": { "lastModified": 1667881534, "narHash": "sha256-FhwJ15uPLRsvaxtt/bNuqE/ykMpNAPF0upozFKhTtXM=", @@ -7191,67 +9472,37 @@ "type": "github" } }, - "ogmios": { + "offchain-metadata-tools-service": { "flake": false, "locked": { - "lastModified": 1691769233, - "narHash": "sha256-7CLprKq3RwJfvy31LAPux+DYFLjEmbRBFgvtYDpJA8Q=", - "owner": "CardanoSolutions", - "repo": "ogmios", - "rev": "3d3f359b0987c009ef66fb4d4b4bddce92b9aeb3", + "lastModified": 1684160858, + "narHash": "sha256-2pu/T4uoXBxhI47PrOS6zHRZRwaSM6qA87HJySwwIBo=", + "owner": "input-output-hk", + "repo": "offchain-metadata-tools", + "rev": "a68c12b10fe5ed9802defb4a6ca80919b695d945", "type": "github" }, "original": { - "owner": "CardanoSolutions", - "ref": "v6.0.0", - "repo": "ogmios", + "owner": "input-output-hk", + "ref": "feat-add-password-to-db-conn-string", + "repo": "offchain-metadata-tools", "type": "github" } }, - "ogmios-nixos": { - "inputs": { - "CHaP": "CHaP_3", - "blank": "blank_2", - "cardano-configurations": "cardano-configurations_2", - "cardano-node": [ - "flake-lang", - "ctl", - "cardano-node" - ], - "flake-compat": "flake-compat_6", - "haskell-nix": [ - "flake-lang", - "ctl", - "haskell-nix" - ], - "iohk-nix": [ - "flake-lang", - "ctl", - "iohk-nix" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "nixpkgs" - ], - "ogmios-src": [ - "flake-lang", - "ctl", - "ogmios" - ] - }, + "ogmios": { + "flake": false, "locked": { - "lastModified": 1695289922, - "narHash": "sha256-WeZkYCyvOqnVx9zYgyO2rh0rd3O2DmxH0HZ4OJnf/aw=", - "owner": "mlabs-haskell", - "repo": "ogmios-nixos", - "rev": "78e829e9ebd50c5891024dcd1004c2ac51facd80", + "lastModified": 1720778275, + "narHash": "sha256-OpUeVbztfLy+9d2M5w2Jgx1b/IhDNAQdlr/eP1iKUQI=", + "owner": "CardanoSolutions", + "repo": "ogmios", + "rev": "63a9e9d33eadbca22d1ecc90b9623b962148d174", "type": "github" }, "original": { - "owner": "mlabs-haskell", - "repo": "ogmios-nixos", - "rev": "78e829e9ebd50c5891024dcd1004c2ac51facd80", + "owner": "CardanoSolutions", + "ref": "v6.5.0", + "repo": "ogmios", "type": "github" } }, @@ -7377,182 +9628,377 @@ "old-ghc-nix_8": { "flake": false, "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", + "lastModified": 1631092763, + "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", + "owner": "angerman", + "repo": "old-ghc-nix", + "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", + "type": "github" + }, + "original": { + "owner": "angerman", + "ref": "master", + "repo": "old-ghc-nix", + "type": "github" + } + }, + "ops-lib": { + "flake": false, + "locked": { + "lastModified": 1675186784, + "narHash": "sha256-HqDtrvk1l7YeREzCSEpUtChtlEgT6Tww9WrJiozjukc=", + "owner": "input-output-hk", + "repo": "ops-lib", + "rev": "5be29ed53b2a4cbbf4cf326fa2e9c1f2b754d26d", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "ops-lib", + "type": "github" + } + }, + "ops-lib_2": { + "flake": false, + "locked": { + "lastModified": 1675186784, + "narHash": "sha256-HqDtrvk1l7YeREzCSEpUtChtlEgT6Tww9WrJiozjukc=", + "owner": "input-output-hk", + "repo": "ops-lib", + "rev": "5be29ed53b2a4cbbf4cf326fa2e9c1f2b754d26d", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "ops-lib", + "type": "github" + } + }, + "ops-lib_3": { + "flake": false, + "locked": { + "lastModified": 1713366514, + "narHash": "sha256-0hNlv+grFTE+TeXIbxSY97QoEEaUupOKMusZ4PesdrQ=", + "owner": "input-output-hk", + "repo": "ops-lib", + "rev": "19d83fa8eab1c0b7765f736eb4e8569d84d3e39d", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "ops-lib", + "type": "github" + } + }, + "oura": { + "inputs": { + "crane": [ + "flake-lang", + "ctl", + "cardano-nix", + "crane" + ], + "utils": "utils_6" + }, + "locked": { + "lastModified": 1720226386, + "narHash": "sha256-oBvHLxWM2vN351flm7jWjwuatFEK6la/nX9fHNy9/hk=", + "owner": "txpipe", + "repo": "oura", + "rev": "d94068562d98f43aeef8e224111fbdaeb2bc186c", + "type": "github" + }, + "original": { + "owner": "txpipe", + "ref": "v1.8.6", + "repo": "oura", + "type": "github" + } + }, + "paisano": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ], + "nosys": "nosys_2", + "yants": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "yants" + ] + }, + "locked": { + "lastModified": 1677437285, + "narHash": "sha256-YGfMothgUq1T9wMJYEhOSvdIiD/8gLXO1YcZA6hyIWU=", + "owner": "paisano-nix", + "repo": "core", + "rev": "5f2fc05e98e001cb1cf9535ded09e05d90cec131", "type": "github" }, "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", + "owner": "paisano-nix", + "repo": "core", "type": "github" } }, - "ops-lib": { - "flake": false, + "paisano-actions": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "paisano-mdbook-preprocessor", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1675186784, - "narHash": "sha256-HqDtrvk1l7YeREzCSEpUtChtlEgT6Tww9WrJiozjukc=", - "owner": "input-output-hk", - "repo": "ops-lib", - "rev": "5be29ed53b2a4cbbf4cf326fa2e9c1f2b754d26d", + "lastModified": 1677306424, + "narHash": "sha256-H9/dI2rGEbKo4KEisqbRPHFG2ajF8Tm111NPdKGIf28=", + "owner": "paisano-nix", + "repo": "actions", + "rev": "65ec4e080b3480167fc1a748c89a05901eea9a9b", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "ops-lib", + "owner": "paisano-nix", + "repo": "actions", "type": "github" } }, - "plutarch": { - "flake": false, + "paisano-mdbook-preprocessor": { + "inputs": { + "crane": "crane_2", + "fenix": "fenix_2", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "nixpkgs" + ], + "paisano-actions": "paisano-actions", + "std": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std" + ] + }, "locked": { - "lastModified": 1716772359, - "narHash": "sha256-/hyEm2nj6oaIPMgPNYmwXA3x5iZ6VcewPllS7bT6Y98=", - "owner": "plutonomicon", - "repo": "plutarch-plutus", - "rev": "780d350f1985e89e3294861118f721d4141b2a6a", + "lastModified": 1680654400, + "narHash": "sha256-Qdpio+ldhUK3zfl22Mhf8HUULdUOJXDWDdO7MIK69OU=", + "owner": "paisano-nix", + "repo": "mdbook-paisano-preprocessor", + "rev": "11a8fc47f574f194a7ae7b8b98001f6143ba4cf1", "type": "github" }, "original": { - "owner": "plutonomicon", - "repo": "plutarch-plutus", + "owner": "paisano-nix", + "repo": "mdbook-paisano-preprocessor", "type": "github" } }, - "plutip": { + "paisano-tui": { "inputs": { - "CHaP": "CHaP_4", - "cardano-node": [ - "flake-lang", - "ctl", - "cardano-node" - ], - "flake-compat": "flake-compat_7", - "hackage-nix": [ + "nixpkgs": [ "flake-lang", "ctl", - "hackage-nix" + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "blank" ], - "haskell-nix": [ + "std": [ "flake-lang", "ctl", - "haskell-nix" - ], - "iohk-nix": [ + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std" + ] + }, + "locked": { + "lastModified": 1677533603, + "narHash": "sha256-Nq1dH/qn7Wg/Tj1+id+ZM3o0fzqonW73jAgY3mCp35M=", + "owner": "paisano-nix", + "repo": "tui", + "rev": "802958d123b0a5437441be0cab1dee487b0ed3eb", + "type": "github" + }, + "original": { + "owner": "paisano-nix", + "repo": "tui", + "type": "github" + } + }, + "paisano-tui_2": { + "inputs": { + "nixpkgs": [ "flake-lang", "ctl", - "iohk-nix" + "cardano-nix", + "cardano-node-8.7.3", + "std", + "blank" ], - "nixpkgs": [ + "std": [ "flake-lang", "ctl", - "nixpkgs" + "cardano-nix", + "cardano-node-8.7.3", + "std" ] }, "locked": { - "lastModified": 1695131439, - "narHash": "sha256-7ZhZUDhlFvV2us4G27iAk6lHezKS/4WA07NQn88VtQU=", - "owner": "mlabs-haskell", - "repo": "plutip", - "rev": "1bf0b547cd3689c727586abb8385c008fb2a3d1c", + "lastModified": 1681847764, + "narHash": "sha256-mdd7PJW1BZvxy0cIKsPfAO+ohVl/V7heE5ZTAHzTdv8=", + "owner": "paisano-nix", + "repo": "tui", + "rev": "3096bad91cae73ab8ab3367d31f8a143d248a244", "type": "github" }, "original": { - "owner": "mlabs-haskell", - "ref": "gergely/version-bump", - "repo": "plutip", + "owner": "paisano-nix", + "ref": "0.1.1", + "repo": "tui", + "type": "github" + } + }, + "paisano-tui_3": { + "flake": false, + "locked": { + "lastModified": 1708637035, + "narHash": "sha256-R19YURSK+MY/Rw6FZnojQS9zuDh+OoTAyngQAjjoubc=", + "owner": "paisano-nix", + "repo": "tui", + "rev": "231761b260587a64817e4ffae3afc15defaa15db", + "type": "github" + }, + "original": { + "owner": "paisano-nix", + "ref": "v0.5.0", + "repo": "tui", "type": "github" } }, - "plutus": { + "paisano_2": { "inputs": { - "CHaP": "CHaP_6", - "hackage": "hackage_4", - "haskell-nix": "haskell-nix_4", - "iogx": "iogx", - "iohk-nix": "iohk-nix_6", "nixpkgs": [ "flake-lang", - "plutus", - "haskell-nix", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", "nixpkgs" + ], + "nosys": "nosys_3", + "yants": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "yants" ] }, "locked": { - "lastModified": 1717890270, - "narHash": "sha256-Vyb00UasJkuv2WHSwbEL9lj5Qfag1PrMZ0lVUNLtaec=", - "owner": "input-output-hk", - "repo": "plutus", - "rev": "37e681c299db2163011cddeaefce00131462dfe6", + "lastModified": 1686862844, + "narHash": "sha256-m8l/HpRBJnZ3c0F1u0IyQ3nYGWE0R9V5kfORuqZPzgk=", + "owner": "paisano-nix", + "repo": "core", + "rev": "6674b3d3577212c1eeecd30d62d52edbd000e726", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "plutus", + "owner": "paisano-nix", + "ref": "0.1.1", + "repo": "core", "type": "github" } }, - "pre-commit-hooks": { + "paisano_3": { "inputs": { - "flake-compat": "flake-compat_18", - "gitignore": "gitignore_4", - "nixpkgs": "nixpkgs_32", - "nixpkgs-stable": "nixpkgs-stable_7" + "call-flake": "call-flake", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "nixpkgs" + ], + "nosys": "nosys_4", + "yants": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "yants" + ] }, "locked": { - "lastModified": 1717664902, - "narHash": "sha256-7XfBuLULizXjXfBYy/VV+SpYMHreNRHk9nKMsm1bgb4=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "cc4d466cb1254af050ff7bdf47f6d404a7c646d1", + "lastModified": 1708640854, + "narHash": "sha256-EpcAmvIS4ErqhXtVEfd2GPpU/E/s8CCRSfYzk6FZ/fY=", + "owner": "paisano-nix", + "repo": "core", + "rev": "adcf742bc9463c08764ca9e6955bd5e7dcf3a3fe", "type": "github" }, "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", + "owner": "paisano-nix", + "ref": "0.2.0", + "repo": "core", "type": "github" } }, - "pre-commit-hooks-nix": { - "inputs": { - "flake-compat": "flake-compat_14", - "flake-utils": "flake-utils_15", - "gitignore": "gitignore", - "nixpkgs": "nixpkgs_25", - "nixpkgs-stable": "nixpkgs-stable_2" - }, + "plutarch": { + "flake": false, "locked": { - "lastModified": 1703426812, - "narHash": "sha256-aODSOH8Og8ne4JylPJn+hZ6lyv6K7vE5jFo4KAGIebM=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "7f35ec30d16b38fe0eed8005933f418d1a4693ee", + "lastModified": 1732237080, + "narHash": "sha256-KG+FYB5eSCbedj4zA7xyV5vj5DmUhLCeh1mvb7LFuZ4=", + "owner": "plutonomicon", + "repo": "plutarch-plutus", + "rev": "7207edd0cbc6ad48248bd207abcc63cc3c6a606f", "type": "github" }, "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", + "owner": "plutonomicon", + "ref": "staging", + "repo": "plutarch-plutus", "type": "github" } }, - "pre-commit-hooks-nix_2": { + "pre-commit-hooks": { "inputs": { - "flake-compat": "flake-compat_16", - "flake-utils": "flake-utils_19", + "flake-compat": "flake-compat_23", "gitignore": "gitignore_2", - "nixpkgs": "nixpkgs_28", - "nixpkgs-stable": "nixpkgs-stable_4" + "nixpkgs": "nixpkgs_49", + "nixpkgs-stable": "nixpkgs-stable_2" }, "locked": { - "lastModified": 1703426812, - "narHash": "sha256-aODSOH8Og8ne4JylPJn+hZ6lyv6K7vE5jFo4KAGIebM=", + "lastModified": 1732021966, + "narHash": "sha256-mnTbjpdqF0luOkou8ZFi2asa1N3AA2CchR/RqCNmsGE=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "7f35ec30d16b38fe0eed8005933f418d1a4693ee", + "rev": "3308484d1a443fc5bc92012435d79e80458fe43c", "type": "github" }, "original": { @@ -7561,20 +10007,30 @@ "type": "github" } }, - "pre-commit-hooks-nix_3": { + "pre-commit-hooks-nix": { "inputs": { - "flake-compat": "flake-compat_17", - "flake-utils": "flake-utils_21", - "gitignore": "gitignore_3", - "nixpkgs": "nixpkgs_30", - "nixpkgs-stable": "nixpkgs-stable_6" + "flake-compat": "flake-compat_13", + "flake-utils": "flake-utils_15", + "gitignore": "gitignore", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "nixpkgs" + ], + "nixpkgs-stable": [ + "flake-lang", + "ctl", + "cardano-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1703426812, - "narHash": "sha256-aODSOH8Og8ne4JylPJn+hZ6lyv6K7vE5jFo4KAGIebM=", + "lastModified": 1708018599, + "narHash": "sha256-M+Ng6+SePmA8g06CmUZWi1AjG2tFBX9WCXElBHEKnyM=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "7f35ec30d16b38fe0eed8005933f418d1a4693ee", + "rev": "5df5a70ad7575f6601d91f0efec95dd9bc619431", "type": "github" }, "original": { @@ -7601,17 +10057,87 @@ ] } }, + "rust-analyzer-src": { + "flake": false, + "locked": { + "lastModified": 1645205556, + "narHash": "sha256-e4lZW3qRyOEJ+vLKFQP7m2Dxh5P44NrnekZYLxlucww=", + "owner": "rust-analyzer", + "repo": "rust-analyzer", + "rev": "acf5874b39f3dc5262317a6074d9fc7285081161", + "type": "github" + }, + "original": { + "owner": "rust-analyzer", + "ref": "nightly", + "repo": "rust-analyzer", + "type": "github" + } + }, + "rust-analyzer-src_2": { + "flake": false, + "locked": { + "lastModified": 1677221702, + "narHash": "sha256-1M+58rC4eTCWNmmX0hQVZP20t3tfYNunl9D/PrGUyGE=", + "owner": "rust-lang", + "repo": "rust-analyzer", + "rev": "f5401f620699b26ed9d47a1d2e838143a18dbe3b", + "type": "github" + }, + "original": { + "owner": "rust-lang", + "ref": "nightly", + "repo": "rust-analyzer", + "type": "github" + } + }, "rust-overlay": { "inputs": { - "flake-utils": "flake-utils_22", - "nixpkgs": "nixpkgs_33" + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "paisano-mdbook-preprocessor", + "crane", + "flake-utils" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "paisano-mdbook-preprocessor", + "crane", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1675391458, + "narHash": "sha256-ukDKZw922BnK5ohL9LhwtaDAdCsJL7L6ScNEyF1lO9w=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "383a4acfd11d778d5c2efcf28376cbd845eeaedf", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "rust-overlay_2": { + "inputs": { + "nixpkgs": "nixpkgs_50" }, "locked": { - "lastModified": 1717899611, - "narHash": "sha256-9Z95F8lnY/5sOf7Z4IdABKz1ulB0ueNrZU864rQj280=", + "lastModified": 1732328983, + "narHash": "sha256-RHt12f/slrzDpSL7SSkydh8wUE4Nr4r23HlpWywed9E=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "1f536afad5c18ea4ae6bb592c3fef038e1e33568", + "rev": "ed8aa5b64f7d36d9338eb1d0a3bb60cf52069a72", "type": "github" }, "original": { @@ -7739,6 +10265,40 @@ "type": "github" } }, + "secp256k1_8": { + "flake": false, + "locked": { + "lastModified": 1683999695, + "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", + "owner": "bitcoin-core", + "repo": "secp256k1", + "rev": "acf5c55ae6a94e5ca847e07def40427547876101", + "type": "github" + }, + "original": { + "owner": "bitcoin-core", + "ref": "v0.3.2", + "repo": "secp256k1", + "type": "github" + } + }, + "secp256k1_9": { + "flake": false, + "locked": { + "lastModified": 1683999695, + "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", + "owner": "bitcoin-core", + "repo": "secp256k1", + "rev": "acf5c55ae6a94e5ca847e07def40427547876101", + "type": "github" + }, + "original": { + "owner": "bitcoin-core", + "ref": "v0.3.2", + "repo": "secp256k1", + "type": "github" + } + }, "sodium": { "flake": false, "locked": { @@ -7858,62 +10418,83 @@ "type": "github" } }, - "sphinxcontrib-haddock": { + "sodium_8": { + "flake": false, + "locked": { + "lastModified": 1675156279, + "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", + "owner": "input-output-hk", + "repo": "libsodium", + "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "libsodium", + "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "type": "github" + } + }, + "sodium_9": { "flake": false, "locked": { - "lastModified": 1594136664, - "narHash": "sha256-O9YT3iCUBHP3CEF88VDLLCO2HSP3HqkNA2q2939RnVY=", - "owner": "michaelpj", - "repo": "sphinxcontrib-haddock", - "rev": "f3956b3256962b2d27d5a4e96edb7951acf5de34", + "lastModified": 1675156279, + "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", + "owner": "input-output-hk", + "repo": "libsodium", + "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", "type": "github" }, "original": { - "owner": "michaelpj", - "repo": "sphinxcontrib-haddock", + "owner": "input-output-hk", + "repo": "libsodium", + "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", "type": "github" } }, - "sphinxcontrib-haddock_2": { - "flake": false, + "sops-nix": { + "inputs": { + "nixpkgs": "nixpkgs_11", + "nixpkgs-stable": "nixpkgs-stable" + }, "locked": { - "lastModified": 1594136664, - "narHash": "sha256-O9YT3iCUBHP3CEF88VDLLCO2HSP3HqkNA2q2939RnVY=", - "owner": "michaelpj", - "repo": "sphinxcontrib-haddock", - "rev": "f3956b3256962b2d27d5a4e96edb7951acf5de34", + "lastModified": 1690199016, + "narHash": "sha256-yTLL72q6aqGmzHq+C3rDp3rIjno7EJZkFLof6Ika7cE=", + "owner": "Mic92", + "repo": "sops-nix", + "rev": "c36df4fe4bf4bb87759b1891cab21e7a05219500", "type": "github" }, "original": { - "owner": "michaelpj", - "repo": "sphinxcontrib-haddock", + "owner": "Mic92", + "repo": "sops-nix", "type": "github" } }, - "sphinxcontrib-haddock_3": { - "flake": false, + "stable": { "locked": { - "lastModified": 1594136664, - "narHash": "sha256-O9YT3iCUBHP3CEF88VDLLCO2HSP3HqkNA2q2939RnVY=", - "owner": "michaelpj", - "repo": "sphinxcontrib-haddock", - "rev": "f3956b3256962b2d27d5a4e96edb7951acf5de34", + "lastModified": 1669735802, + "narHash": "sha256-qtG/o/i5ZWZLmXw108N2aPiVsxOcidpHJYNkT45ry9Q=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "731cc710aeebecbf45a258e977e8b68350549522", "type": "github" }, "original": { - "owner": "michaelpj", - "repo": "sphinxcontrib-haddock", + "owner": "NixOS", + "ref": "nixos-22.11", + "repo": "nixpkgs", "type": "github" } }, "stackage": { "flake": false, "locked": { - "lastModified": 1685491814, - "narHash": "sha256-OQX+h5hcDptW6HVrYkBL7dtgqiaiz9zn6iMYv+0CDzc=", + "lastModified": 1701043780, + "narHash": "sha256-d5CYT7WGEaL6IFNmUg4JUb+onxI/tO1qgHs/TCIKB3A=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "678b4297ccef8bbcd83294e47e1a9042034bdbd0", + "rev": "cb49435b81adf0549589c51f39b5b38b4369f106", "type": "github" }, "original": { @@ -7925,11 +10506,11 @@ "stackage_2": { "flake": false, "locked": { - "lastModified": 1702771826, - "narHash": "sha256-4jFlIYY/hzkRrt4mXpUV81wC9ge4VpC5zcmQANl8GQg=", + "lastModified": 1685491814, + "narHash": "sha256-OQX+h5hcDptW6HVrYkBL7dtgqiaiz9zn6iMYv+0CDzc=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "4aab61a73de63a828ac33eb588e1e65411020a0c", + "rev": "678b4297ccef8bbcd83294e47e1a9042034bdbd0", "type": "github" }, "original": { @@ -7941,11 +10522,11 @@ "stackage_3": { "flake": false, "locked": { - "lastModified": 1654219171, - "narHash": "sha256-5kp4VTlum+AMmoIbhtrcVSEfYhR4oTKSrwe1iysD8uU=", + "lastModified": 1700438989, + "narHash": "sha256-x+7Qtboko7ds8CU8pq2sIZiD45DauYoX9LxBfwQr/hs=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "6d1fc076976ce6c45da5d077bf882487076efe5c", + "rev": "9c2015334cc77837b8454b3b10ef4f711a256f6f", "type": "github" }, "original": { @@ -7957,11 +10538,11 @@ "stackage_4": { "flake": false, "locked": { - "lastModified": 1684282201, - "narHash": "sha256-QW1Xm2MC+Qx1ZYF1cFRsb73WJji8aq6m5RGHUk9WWFU=", + "lastModified": 1718756571, + "narHash": "sha256-8rL8viTbuE9/yV1of6SWp2tHmhVMD2UmkOfmN5KDbKg=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "39971b1a8a098dd5bbbd8d91ba35ff0bfc07ce22", + "rev": "027672fb6fd45828b0e623c8152572d4058429ad", "type": "github" }, "original": { @@ -7973,11 +10554,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1717892652, - "narHash": "sha256-JmwVCoADcBJ8GgrT+qG1TRtDIjP9uQZArF8mdQLtheU=", + "lastModified": 1724717508, + "narHash": "sha256-FeGR8x/iFDB6zmu3pjRFVcXc6gD/jEct/aM1kZF9gWs=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "e424e168bb7bdf3cd0d44271b80457943cf51fc6", + "rev": "3cdad9ccd2f0232659e147b16ca979d08f77e63e", "type": "github" }, "original": { @@ -7989,11 +10570,11 @@ "stackage_6": { "flake": false, "locked": { - "lastModified": 1709078929, - "narHash": "sha256-q49Zm0Hkky9rD5Zk17lG2wGIKhxZADNxtGuRin0qSTA=", + "lastModified": 1684282201, + "narHash": "sha256-QW1Xm2MC+Qx1ZYF1cFRsb73WJji8aq6m5RGHUk9WWFU=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "9404693be67e5808787c71337333b738d18fba01", + "rev": "39971b1a8a098dd5bbbd8d91ba35ff0bfc07ce22", "type": "github" }, "original": { @@ -8005,11 +10586,11 @@ "stackage_7": { "flake": false, "locked": { - "lastModified": 1703635755, - "narHash": "sha256-lLvI2HgVSYAPlsxF1zOb+VYBLc9pse0+W49ShuPi/jY=", + "lastModified": 1732407163, + "narHash": "sha256-FZcr31TrkwiRY+DKSBebPune/D0mRn1Lt7rd2hUVIZQ=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "ce032ad63ef03ace9f481c508b461743271dfa3e", + "rev": "b68b483a062ed06b0196b23b8ddba7ffdc789e67", "type": "github" }, "original": { @@ -8018,19 +10599,22 @@ "type": "github" } }, - "stackage_8": { - "flake": false, + "statix": { + "inputs": { + "fenix": "fenix", + "nixpkgs": "nixpkgs_4" + }, "locked": { - "lastModified": 1703635755, - "narHash": "sha256-lLvI2HgVSYAPlsxF1zOb+VYBLc9pse0+W49ShuPi/jY=", - "owner": "input-output-hk", - "repo": "stackage.nix", - "rev": "ce032ad63ef03ace9f481c508b461743271dfa3e", + "lastModified": 1676888642, + "narHash": "sha256-C73LOMVVCkeL0jA5xN7klLEDEB4NkuiATEJY4A/tIyM=", + "owner": "nerdypepper", + "repo": "statix", + "rev": "3c7136a23f444db252a556928c1489869ca3ab4e", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", + "owner": "nerdypepper", + "repo": "statix", "type": "github" } }, @@ -8039,7 +10623,8 @@ "arion": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", "tullia", "std", "blank" @@ -8047,12 +10632,13 @@ "blank": "blank", "devshell": "devshell", "dmerge": "dmerge", - "flake-utils": "flake-utils_5", + "flake-utils": "flake-utils_8", "incl": "incl", "makes": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", "tullia", "std", "blank" @@ -8060,14 +10646,15 @@ "microvm": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", "tullia", "std", "blank" ], "n2c": "n2c", "nixago": "nixago", - "nixpkgs": "nixpkgs_9", + "nixpkgs": "nixpkgs_21", "nosys": "nosys", "yants": "yants" }, @@ -8089,42 +10676,52 @@ "inputs": { "arion": [ "flake-lang", - "db-sync-ctl", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", "tullia", "std", "blank" ], - "blank": "blank_3", + "blank": "blank_2", "devshell": "devshell_2", "dmerge": "dmerge_2", - "flake-utils": "flake-utils_9", + "flake-utils": "flake-utils_11", "incl": "incl_2", "makes": [ "flake-lang", - "db-sync-ctl", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", "tullia", "std", "blank" ], "microvm": [ "flake-lang", - "db-sync-ctl", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", "tullia", "std", "blank" ], "n2c": "n2c_2", "nixago": "nixago_2", - "nixpkgs": "nixpkgs_17", - "nosys": "nosys_2", + "nixpkgs": "nixpkgs_24", + "paisano": "paisano", + "paisano-tui": "paisano-tui", "yants": "yants_2" }, "locked": { - "lastModified": 1674526466, - "narHash": "sha256-tMTaS0bqLx6VJ+K+ZT6xqsXNpzvSXJTmogkraBGzymg=", + "lastModified": 1677533652, + "narHash": "sha256-H37dcuWAGZs6Yl9mewMNVcmSaUXR90/bABYFLT/nwhk=", "owner": "divnix", "repo": "std", - "rev": "516387e3d8d059b50e742a2ff1909ed3c8f82826", + "rev": "490542f624412662e0411d8cb5a9af988ef56633", "type": "github" }, "original": { @@ -8133,67 +10730,243 @@ "type": "github" } }, - "systems": { + "std_3": { + "inputs": { + "arion": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "blank" + ], + "blank": "blank_3", + "devshell": "devshell_3", + "dmerge": "dmerge_3", + "flake-utils": "flake-utils_13", + "haumea": "haumea", + "incl": "incl_3", + "makes": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "blank" + ], + "microvm": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "blank" + ], + "n2c": "n2c_3", + "nixago": "nixago_3", + "nixpkgs": "nixpkgs_29", + "paisano": "paisano_2", + "paisano-mdbook-preprocessor": "paisano-mdbook-preprocessor", + "paisano-tui": "paisano-tui_2", + "yants": "yants_3" + }, "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1687300684, + "narHash": "sha256-oBqbss0j+B568GoO3nF2BCoPEgPxUjxfZQGynW6mhEk=", + "owner": "divnix", + "repo": "std", + "rev": "80e5792eae98353a97ab1e85f3fba2784e4a3690", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "divnix", + "repo": "std", "type": "github" } }, - "systems_10": { + "std_4": { + "inputs": { + "blank": "blank_4", + "devshell": "devshell_5", + "dmerge": "dmerge_4", + "flake-utils": "flake-utils_18", + "makes": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "blank" + ], + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor", + "microvm": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "blank" + ], + "n2c": "n2c_4", + "nixago": "nixago_4", + "nixpkgs": "nixpkgs_33", + "yants": "yants_4" + }, "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1665513321, + "narHash": "sha256-D6Pacw9yf/HMs84KYuCxHXnNDL7v43gtcka5URagFqE=", + "owner": "divnix", + "repo": "std", + "rev": "94a90eedb9cfc115b12ae8f6622d9904788559e4", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "divnix", + "repo": "std", + "type": "github" + } + }, + "std_5": { + "inputs": { + "arion": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "blank" + ], + "blank": "blank_5", + "devshell": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "blank" + ], + "dmerge": "dmerge_5", + "haumea": "haumea_2", + "incl": "incl_4", + "lib": "lib", + "makes": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "blank" + ], + "microvm": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "blank" + ], + "n2c": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "blank" + ], + "nixago": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "blank" + ], + "nixpkgs": "nixpkgs_37", + "paisano": "paisano_3", + "paisano-tui": "paisano-tui_3", + "terranix": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "blank" + ], + "yants": "yants_5" + }, + "locked": { + "lastModified": 1715201063, + "narHash": "sha256-LcLYV5CDhIiJs3MfxGZFKsXPR4PtfnY4toZ75GM+2Pw=", + "owner": "divnix", + "repo": "std", + "rev": "b6924a7d37a46fc1dda8efe405040e27ecf1bbd6", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "std", "type": "github" } }, - "systems_11": { + "std_6": { + "inputs": { + "arion": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "blank" + ], + "blank": "blank_6", + "devshell": "devshell_6", + "dmerge": "dmerge_6", + "flake-utils": "flake-utils_23", + "incl": "incl_5", + "makes": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "blank" + ], + "microvm": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "blank" + ], + "n2c": "n2c_5", + "nixago": "nixago_5", + "nixpkgs": "nixpkgs_44", + "nosys": "nosys_5", + "yants": "yants_6" + }, "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1674526466, + "narHash": "sha256-tMTaS0bqLx6VJ+K+ZT6xqsXNpzvSXJTmogkraBGzymg=", + "owner": "divnix", + "repo": "std", + "rev": "516387e3d8d059b50e742a2ff1909ed3c8f82826", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "divnix", + "repo": "std", "type": "github" } }, - "systems_12": { + "stdlib": { "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1590026685, + "narHash": "sha256-E5INrVvYX/P/UpcoUFDAsuHem+lsqT+/teBs9O7oc9Q=", + "owner": "manveru", + "repo": "nix-lib", + "rev": "99088cf7febcdb21afd375a335dcafa959bef3ed", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "manveru", + "repo": "nix-lib", "type": "github" } }, - "systems_13": { + "systems": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -8283,48 +11056,124 @@ "type": "github" } }, - "systems_7": { + "terraform-providers": { + "inputs": { + "nixpkgs": "nixpkgs_12" + }, "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1695893013, + "narHash": "sha256-+5EuXNXwxpTiOEGCbZWtZCU75WcVwnS89heLa5xJ2K0=", + "owner": "nix-community", + "repo": "nixpkgs-terraform-providers-bin", + "rev": "6c6865ae6f9bff7aaa4e86c875f520f2aca65c0d", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "nix-community", + "repo": "nixpkgs-terraform-providers-bin", + "type": "github" + } + }, + "terranix": { + "inputs": { + "bats-assert": "bats-assert", + "bats-support": "bats-support", + "flake-utils": "flake-utils_3", + "nixpkgs": "nixpkgs_13", + "terranix-examples": "terranix-examples" + }, + "locked": { + "lastModified": 1684906298, + "narHash": "sha256-pNuJxmVMGbBHw7pa+Bx0HY0orXIXoyyAXOKuQ1zpfus=", + "owner": "terranix", + "repo": "terranix", + "rev": "c0dd15076856c6cb425795b8c7d5d37d3a1e922a", + "type": "github" + }, + "original": { + "owner": "terranix", + "repo": "terranix", + "type": "github" + } + }, + "terranix-examples": { + "locked": { + "lastModified": 1636300201, + "narHash": "sha256-0n1je1WpiR6XfCsvi8ZK7GrpEnMl+DpwhWaO1949Vbc=", + "owner": "terranix", + "repo": "terranix-examples", + "rev": "a934aa1cf88f6bd6c6ddb4c77b77ec6e1660bd5e", + "type": "github" + }, + "original": { + "owner": "terranix", + "repo": "terranix-examples", + "type": "github" + } + }, + "treefmt-nix": { + "inputs": { + "nixpkgs": "nixpkgs_5" + }, + "locked": { + "lastModified": 1683117219, + "narHash": "sha256-IyNRNRxw0slA3VQySVA7QPXHMOxlbx0ePWvj9oln+Wk=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "c8c3731dc404f837f38f89c2c5ffc2afc02e249d", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", "type": "github" } }, - "systems_8": { + "treefmt-nix_2": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "cardano-parts", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1691440708, + "narHash": "sha256-c7Cc08vJ0IPFgIERpTdO2xvDHQNL7Uf5iXT0GlYO6vo=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "2a535809ac5c9a32288f4d3b938296e056d948cc", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "numtide", + "repo": "treefmt-nix", "type": "github" } }, - "systems_9": { + "treefmt-nix_3": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1697388351, + "narHash": "sha256-63N2eBpKaziIy4R44vjpUu8Nz5fCJY7okKrkixvDQmY=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "aae39f64f5ecbe89792d05eacea5cb241891292a", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "numtide", + "repo": "treefmt-nix", "type": "github" } }, @@ -8332,7 +11181,7 @@ "inputs": { "nix-nomad": "nix-nomad", "nix2container": "nix2container_2", - "nixpkgs": "nixpkgs_8", + "nixpkgs": "nixpkgs_20", "std": "std" }, "locked": { @@ -8353,9 +11202,64 @@ "inputs": { "nix-nomad": "nix-nomad_2", "nix2container": "nix2container_3", - "nixpkgs": "nixpkgs_16", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "nixpkgs" + ], "std": "std_2" }, + "locked": { + "lastModified": 1684859161, + "narHash": "sha256-wOKutImA7CRL0rN+Ng80E72fD5FkVub7LLP2k9NICpg=", + "owner": "input-output-hk", + "repo": "tullia", + "rev": "2964cff1a16eefe301bdddb508c49d94d04603d6", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "tullia", + "type": "github" + } + }, + "tullia_3": { + "inputs": { + "nix-nomad": "nix-nomad_3", + "nix2container": "nix2container_5", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "nixpkgs" + ], + "std": "std_4" + }, + "locked": { + "lastModified": 1668711738, + "narHash": "sha256-CBjky16o9pqsGE1bWu6nRlRajgSXMEk+yaFQLibqXcE=", + "owner": "input-output-hk", + "repo": "tullia", + "rev": "ead1f515c251f0e060060ef0e2356a51d3dfe4b0", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "tullia", + "type": "github" + } + }, + "tullia_4": { + "inputs": { + "nix-nomad": "nix-nomad_4", + "nix2container": "nix2container_7", + "nixpkgs": "nixpkgs_43", + "std": "std_6" + }, "locked": { "lastModified": 1675182051, "narHash": "sha256-E3OQyAhGdac11Pqgn8uyP5295cqI39QlcXxydHu5KfI=", @@ -8371,6 +11275,39 @@ } }, "utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "utils_10": { + "locked": { + "lastModified": 1638122382, + "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "utils_2": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -8385,7 +11322,7 @@ "type": "github" } }, - "utils_2": { + "utils_3": { "locked": { "lastModified": 1667395993, "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", @@ -8400,7 +11337,7 @@ "type": "github" } }, - "utils_3": { + "utils_4": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -8415,13 +11352,76 @@ "type": "github" } }, - "utils_4": { + "utils_5": { "locked": { - "lastModified": 1638122382, - "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", "owner": "numtide", "repo": "flake-utils", - "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "utils_6": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "utils_7": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "utils_8": { + "inputs": { + "systems": "systems_6" + }, + "locked": { + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "utils_9": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { @@ -8435,7 +11435,8 @@ "nixpkgs": [ "flake-lang", "ctl", - "cardano-node", + "cardano-nix", + "cardano-node-8.1.1", "tullia", "std", "nixpkgs" @@ -8456,6 +11457,109 @@ } }, "yants_2": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1667096281, + "narHash": "sha256-wRRec6ze0gJHmGn6m57/zhz/Kdvp9HS4Nl5fkQ+uIuA=", + "owner": "divnix", + "repo": "yants", + "rev": "d18f356ec25cb94dc9c275870c3a7927a10f8c3c", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "yants", + "type": "github" + } + }, + "yants_3": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node-8.7.3", + "std", + "haumea", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1686863218, + "narHash": "sha256-kooxYm3/3ornWtVBNHM3Zh020gACUyFX2G0VQXnB+mk=", + "owner": "divnix", + "repo": "yants", + "rev": "8f0da0dba57149676aa4817ec0c880fbde7a648d", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "yants", + "type": "github" + } + }, + "yants_4": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1660507851, + "narHash": "sha256-BKjq7JnVuUR/xDtcv6Vm9GYGKAblisXrAgybor9hT/s=", + "owner": "divnix", + "repo": "yants", + "rev": "0b895ca02a8fa72bad50b454cb3e7d8a66407c96", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "yants", + "type": "github" + } + }, + "yants_5": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "lib" + ] + }, + "locked": { + "lastModified": 1686863218, + "narHash": "sha256-kooxYm3/3ornWtVBNHM3Zh020gACUyFX2G0VQXnB+mk=", + "owner": "divnix", + "repo": "yants", + "rev": "8f0da0dba57149676aa4817ec0c880fbde7a648d", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "yants", + "type": "github" + } + }, + "yants_6": { "inputs": { "nixpkgs": [ "flake-lang", diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 60922335..c1121e01 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -623,7 +623,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "3.0.0" +version = "3.0.1" dependencies = [ "anyhow", "cardano-serialization-lib", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 7dd0c3d5..7b269daf 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "3.0.0" +version = "3.0.1" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" diff --git a/plutus-ledger-api/build.nix b/plutus-ledger-api/build.nix index 67602f53..72b4f0c8 100644 --- a/plutus-ledger-api/build.nix +++ b/plutus-ledger-api/build.nix @@ -4,7 +4,7 @@ rustFlake = inputs.flake-lang.lib.${system}.rustFlake { src = ./.; - version = "2"; + version = "3"; crateName = "plutus-ledger-api"; devShellHook = config.settings.shell.hook; cargoNextestExtraArgs = "--all-features"; diff --git a/plutus-ledger-api/src/generators/correct/v3.rs b/plutus-ledger-api/src/generators/correct/v3.rs index 6bdcfe0e..b5a00537 100644 --- a/plutus-ledger-api/src/generators/correct/v3.rs +++ b/plutus-ledger-api/src/generators/correct/v3.rs @@ -13,8 +13,8 @@ use crate::{ generators::correct::{ primitive::arb_integer, v1::{ - arb_currency_symbol, arb_datum, arb_lovelace, arb_payment_pub_key_hash, - arb_stake_pub_key_hash, arb_staking_credential, arb_transaction_input, + arb_currency_symbol, arb_datum, arb_ed25519_pub_key_hash, arb_lovelace, + arb_payment_pub_key_hash, arb_stake_pub_key_hash, arb_transaction_input, }, }, v3::{ @@ -74,19 +74,18 @@ pub fn arb_delegatee() -> impl Strategy { /// Strategy to generate tx certs pub fn arb_tx_cert() -> impl Strategy { prop_oneof![ - (arb_staking_credential(), option::of(arb_lovelace())) - .prop_map(|(c, l)| TxCert::RegStaking(c, l)), - (arb_staking_credential(), option::of(arb_lovelace())) + (arb_credential(), option::of(arb_lovelace())).prop_map(|(c, l)| TxCert::RegStaking(c, l)), + (arb_credential(), option::of(arb_lovelace())) .prop_map(|(c, l)| TxCert::UnRegStaking(c, l)), - (arb_staking_credential(), arb_delegatee()).prop_map(|(c, d)| TxCert::DelegStaking(c, d)), - (arb_staking_credential(), arb_delegatee(), arb_lovelace()) + (arb_credential(), arb_delegatee()).prop_map(|(c, d)| TxCert::DelegStaking(c, d)), + (arb_credential(), arb_delegatee(), arb_lovelace()) .prop_map(|(c, d, l)| TxCert::RegDeleg(c, d, l)), (arb_d_rep_credential(), arb_lovelace()).prop_map(|(d, l)| TxCert::RegDRep(d, l)), arb_d_rep_credential().prop_map(TxCert::UpdateDRep), (arb_d_rep_credential(), arb_lovelace()).prop_map(|(d, l)| TxCert::UnRegDRep(d, l)), - (arb_payment_pub_key_hash(), arb_payment_pub_key_hash()) + (arb_ed25519_pub_key_hash(), arb_ed25519_pub_key_hash()) .prop_map(|(pkh1, pkh2)| TxCert::PoolRegister(pkh1, pkh2)), - (arb_payment_pub_key_hash(), arb_integer()).prop_map(|(pkh, i)| TxCert::PoolRetire(pkh, i)), + (arb_ed25519_pub_key_hash(), arb_integer()).prop_map(|(pkh, i)| TxCert::PoolRetire(pkh, i)), ( arb_cold_committee_credential(), arb_hot_committee_credential() @@ -101,7 +100,7 @@ pub fn arb_voter() -> impl Strategy { prop_oneof![ arb_hot_committee_credential().prop_map(Voter::CommitteeVoter), arb_d_rep_credential().prop_map(Voter::DRepVoter), - arb_payment_pub_key_hash().prop_map(Voter::StakePoolVoter) + arb_ed25519_pub_key_hash().prop_map(Voter::StakePoolVoter) ] } @@ -227,7 +226,7 @@ pub fn arb_transaction_info() -> impl Strategy { arb_lovelace(), arb_value(), vec(arb_tx_cert(), 5), - arb_assoc_map(arb_staking_credential(), arb_natural(1)), + arb_assoc_map(arb_credential(), arb_lovelace()), arb_plutus_interval_posix_time(), vec(arb_payment_pub_key_hash(), 5), arb_assoc_map(arb_script_purpose(), arb_redeemer()), diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index 1140b0e7..233162d4 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -16,7 +16,7 @@ use crate::{ self as plutus_ledger_api, plutus_data::{IsPlutusData, PlutusData}, v2::{ - address::{Credential, StakingCredential}, + address::Credential, assoc_map::AssocMap, crypto::{PaymentPubKeyHash, StakePubKeyHash}, datum::{Datum, DatumHash}, @@ -26,7 +26,7 @@ use crate::{ }, }; -use super::ratio::Rational; +use super::{crypto::Ed25519PubKeyHash, ratio::Rational}; #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Newtype"] @@ -72,13 +72,13 @@ pub enum Delegatee { #[cfg_attr(feature = "lbf", derive(Json))] pub enum TxCert { /// Register staking credential with an optional deposit amount - RegStaking(StakingCredential, Option), + RegStaking(Credential, Option), /// Un-Register staking credential with an optional refund amount - UnRegStaking(StakingCredential, Option), + UnRegStaking(Credential, Option), /// Delegate staking credential to a Delegatee - DelegStaking(StakingCredential, Delegatee), + DelegStaking(Credential, Delegatee), /// Register and delegate staking credential to a Delegatee in one certificate. Note that deposit is mandatory. - RegDeleg(StakingCredential, Delegatee, Lovelace), + RegDeleg(Credential, Delegatee, Lovelace), /// Register a DRep with a deposit value. The optional anchor is omitted. RegDRep(DRepCredential, Lovelace), /// Update a DRep. The optional anchor is omitted. @@ -88,12 +88,12 @@ pub enum TxCert { /// A digest of the PoolParams PoolRegister( /// pool id - PaymentPubKeyHash, + Ed25519PubKeyHash, // pool vrf - PaymentPubKeyHash, + Ed25519PubKeyHash, ), /// The retirement certificate and the Epoch in which the retirement will take place - PoolRetire(PaymentPubKeyHash, BigInt), + PoolRetire(Ed25519PubKeyHash, BigInt), /// Authorize a Hot credential for a specific Committee member's cold credential AuthHotCommittee(ColdCommitteeCredential, HotCommitteeCredential), ResignColdCommittee(ColdCommitteeCredential), @@ -106,7 +106,7 @@ pub enum TxCert { pub enum Voter { CommitteeVoter(HotCommitteeCredential), DRepVoter(DRepCredential), - StakePoolVoter(PaymentPubKeyHash), + StakePoolVoter(Ed25519PubKeyHash), } #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] @@ -258,7 +258,7 @@ pub struct TransactionInfo { pub fee: Lovelace, pub mint: Value, pub tx_certs: Vec, - pub wdrl: AssocMap, + pub wdrl: AssocMap, pub valid_range: POSIXTimeRange, pub signatories: Vec, pub redeemers: AssocMap, From 0426110fa1b0d0bba376b175e708c7f17ed444b7 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Wed, 18 Dec 2024 15:46:48 +0100 Subject: [PATCH 50/94] Update deps --- plutus-ledger-api/Cargo.lock | 33 +++++++++++++-------------------- plutus-ledger-api/Cargo.toml | 6 +++--- 2 files changed, 16 insertions(+), 23 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index c1121e01..4d55bf14 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -49,18 +49,18 @@ checksum = "2dabbe35f96fb9507f7330793dc490461b2962659ac5d427181e451a623751d1" [[package]] name = "bit-set" -version = "0.5.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ "bit-vec", ] [[package]] name = "bit-vec" -version = "0.6.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" [[package]] name = "bitflags" @@ -467,15 +467,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.167" +version = "0.2.168" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" - -[[package]] -name = "libm" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" +checksum = "5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d" [[package]] name = "linked-hash-map" @@ -606,7 +600,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ "autocfg", - "libm", ] [[package]] @@ -623,7 +616,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "3.0.1" +version = "3.0.1-beta" dependencies = [ "anyhow", "cardano-serialization-lib", @@ -673,9 +666,9 @@ dependencies = [ [[package]] name = "proptest" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" +checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ "bit-set", "bit-vec", @@ -847,9 +840,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.215" +version = "1.0.216" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6513c1ad0b11a9376da888e3e0baa0077f1aed55c17f50e7b2397136129fb88f" +checksum = "0b9781016e935a97e8beecf0c933758c97a5520d32930e460142b4cd80c6338e" dependencies = [ "serde_derive", ] @@ -867,9 +860,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.215" +version = "1.0.216" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" +checksum = "46f859dbbf73865c6627ed570e78961cd3ac92407a2d117204c49232485da55e" dependencies = [ "proc-macro2", "quote", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 7b269daf..4452b89b 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "3.0.1" +version = "3.0.1-beta" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" @@ -9,11 +9,11 @@ repository = "https://github.com/mlabs-haskell/plutus-ledger-api-rust" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -proptest = "^1.5.0" +proptest = "^1.6.0" lbr-prelude = { version = "0.1.3", optional = true } serde_json = { version = "1.0.133", optional = true } num-bigint = "~0.4" -serde = { version = "^1.0.215", features = ["derive"], optional = true } +serde = { version = "^1.0.216", features = ["derive"], optional = true } data-encoding = "^2.6.0" thiserror = "^1.0.69" linked-hash-map = "~0.5.6" From e065f6d07025a0b388aec80cf831c6f0d52d76f6 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Wed, 18 Dec 2024 19:26:29 +0100 Subject: [PATCH 51/94] Add V3.TransactionHash --- plutus-ledger-api/Cargo.lock | 2 +- plutus-ledger-api/Cargo.toml | 2 +- .../src/generators/correct/v3.rs | 31 +- plutus-ledger-api/src/v3/transaction.rs | 287 +++++++++++++++++- 4 files changed, 311 insertions(+), 11 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 4d55bf14..f1dcbc4a 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -616,7 +616,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "3.0.1-beta" +version = "3.0.1-beta.2" dependencies = [ "anyhow", "cardano-serialization-lib", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 4452b89b..5f82d0e1 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "3.0.1-beta" +version = "3.0.1-beta.2" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" diff --git a/plutus-ledger-api/src/generators/correct/v3.rs b/plutus-ledger-api/src/generators/correct/v3.rs index b5a00537..24193609 100644 --- a/plutus-ledger-api/src/generators/correct/v3.rs +++ b/plutus-ledger-api/src/generators/correct/v3.rs @@ -14,7 +14,7 @@ use crate::{ primitive::arb_integer, v1::{ arb_currency_symbol, arb_datum, arb_ed25519_pub_key_hash, arb_lovelace, - arb_payment_pub_key_hash, arb_stake_pub_key_hash, arb_transaction_input, + arb_payment_pub_key_hash, arb_stake_pub_key_hash, }, }, v3::{ @@ -23,7 +23,8 @@ use crate::{ ChangedParameters, ColdCommitteeCredential, Committee, Constitution, DRep, DRepCredential, Delegatee, GovernanceAction, GovernanceActionId, HotCommitteeCredential, ProposalProcedure, ProtocolVersion, ScriptContext, ScriptInfo, - ScriptPurpose, TransactionInfo, TxCert, Vote, Voter, + ScriptPurpose, TransactionHash, TransactionInfo, TransactionInput, TxCert, TxInInfo, + Vote, Voter, }, }, }; @@ -31,13 +32,25 @@ use crate::{ use super::{ primitive::arb_natural, v1::{ - arb_assoc_map, arb_credential, arb_datum_hash, arb_plutus_data, - arb_plutus_interval_posix_time, arb_redeemer, arb_script_hash, arb_transaction_hash, - arb_value, + arb_assoc_map, arb_credential, arb_datum_hash, arb_ledger_bytes, arb_plutus_data, + arb_plutus_interval_posix_time, arb_redeemer, arb_script_hash, arb_value, }, - v2::{arb_transaction_output, arb_tx_in_info}, + v2::arb_transaction_output, }; +/// Strategy to generate a transaction hash +pub fn arb_transaction_hash() -> impl Strategy { + arb_ledger_bytes(32).prop_map(TransactionHash) +} + +/// Strategy to generate a transaction input +pub fn arb_transaction_input() -> impl Strategy { + (arb_transaction_hash(), arb_natural(1)).prop_map(|(transaction_id, index)| TransactionInput { + transaction_id, + index, + }) +} + /// Strategy to generate cold committee credentials pub fn arb_cold_committee_credential() -> impl Strategy { arb_credential().prop_map(ColdCommitteeCredential) @@ -280,6 +293,12 @@ pub fn arb_transaction_info() -> impl Strategy { ) } +/// Strategy to generate a TxInInfo +pub fn arb_tx_in_info() -> impl Strategy { + (arb_transaction_input(), arb_transaction_output()) + .prop_map(|(reference, output)| TxInInfo { reference, output }) +} + /// Strategy to generate script contexts pub fn arb_script_context() -> impl Strategy { (arb_transaction_info(), arb_redeemer(), arb_script_info()).prop_map( diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index 233162d4..06283da8 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -1,7 +1,18 @@ //! Types related to Cardano transactions. +use std::{fmt, str::FromStr}; + +use anyhow::anyhow; +use cardano_serialization_lib as csl; #[cfg(feature = "lbf")] use lbr_prelude::json::Json; +use nom::{ + character::complete::char, + combinator::{all_consuming, map, map_res}, + error::{context, VerboseError}, + sequence::{preceded, tuple}, + Finish, IResult, +}; use num_bigint::BigInt; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; @@ -9,11 +20,17 @@ use serde::{Deserialize, Serialize}; #[cfg(feature = "chrono")] pub use crate::v1::transaction::POSIXTimeConversionError; pub use crate::v2::transaction::{ - DCert, POSIXTime, POSIXTimeRange, TransactionHash, TransactionInput, TransactionOutput, - TransactionOutputWithExtraInfo, TxInInfo, WithdrawalsWithExtraInfo, + DCert, POSIXTime, POSIXTimeRange, TransactionOutput, TransactionOutputWithExtraInfo, + WithdrawalsWithExtraInfo, }; use crate::{ self as plutus_ledger_api, + aux::{big_int, guard_bytes}, + csl::{ + csl_to_pla::FromCSL, + pla_to_csl::{TryFromPLA, TryFromPLAError, TryToCSL}, + }, + error::ConversionError, plutus_data::{IsPlutusData, PlutusData}, v2::{ address::Credential, @@ -26,7 +43,179 @@ use crate::{ }, }; -use super::{crypto::Ed25519PubKeyHash, ratio::Rational}; +use super::{ + crypto::{ledger_bytes, Ed25519PubKeyHash, LedgerBytes}, + ratio::Rational, +}; + +///////////////////// +// TransactionHash // +///////////////////// + +/// 32-bytes blake2b256 hash of a transaction body. +/// +/// Also known as Transaction ID or `TxID`. +/// Note: Plutus docs might incorrectly state that it uses SHA256. +/// V3 TransactionHash uses a more efficient Plutus Data encoding +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Newtype"] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct TransactionHash(pub LedgerBytes); + +impl fmt::Display for TransactionHash { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + write!(f, "{}", self.0) + } +} + +impl TransactionHash { + pub fn from_bytes(bytes: Vec) -> Result { + Ok(TransactionHash(LedgerBytes(guard_bytes( + "ScriptHash", + bytes, + 32, + )?))) + } +} + +impl FromCSL for TransactionHash { + fn from_csl(value: &csl::TransactionHash) -> Self { + TransactionHash(LedgerBytes(value.to_bytes())) + } +} + +impl TryFromPLA for csl::TransactionHash { + fn try_from_pla(val: &TransactionHash) -> Result { + csl::TransactionHash::from_bytes(val.0 .0.to_owned()) + .map_err(TryFromPLAError::CSLDeserializeError) + } +} + +/// Nom parser for TransactionHash +/// Expects a hexadecimal string representation of 32 bytes +/// E.g.: 1122334455667788990011223344556677889900112233445566778899001122 +pub(crate) fn transaction_hash(input: &str) -> IResult<&str, TransactionHash, VerboseError<&str>> { + context( + "transaction_hash", + map_res(ledger_bytes, |LedgerBytes(bytes)| { + TransactionHash::from_bytes(bytes) + }), + )(input) +} + +impl FromStr for TransactionHash { + type Err = ConversionError; + + fn from_str(s: &str) -> Result { + all_consuming(transaction_hash)(s) + .finish() + .map_err(|err| { + ConversionError::ParseError(anyhow!( + "Error while parsing TransactionHash '{}': {}", + s, + err + )) + }) + .map(|(_, cs)| cs) + } +} + +////////////////////// +// TransactionInput // +////////////////////// + +/// An input of a transaction +/// +/// Also know as `TxOutRef` from Plutus, this identifies a UTxO by its transacton hash and index +/// inside the transaction +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct TransactionInput { + pub transaction_id: TransactionHash, + pub index: BigInt, +} + +/// Serializing into a hexadecimal tx hash, followed by an tx id after a # (e.g. aabbcc#1) +impl fmt::Display for TransactionInput { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + write!(f, "{}#{}", self.transaction_id.0, self.index) + } +} + +impl FromCSL for TransactionInput { + fn from_csl(value: &csl::TransactionInput) -> Self { + TransactionInput { + transaction_id: TransactionHash::from_csl(&value.transaction_id()), + index: BigInt::from_csl(&value.index()), + } + } +} + +impl TryFromPLA for csl::TransactionInput { + fn try_from_pla(val: &TransactionInput) -> Result { + Ok(csl::TransactionInput::new( + &val.transaction_id.try_to_csl()?, + val.index.try_to_csl()?, + )) + } +} + +impl FromCSL for Vec { + fn from_csl(value: &csl::TransactionInputs) -> Self { + (0..value.len()) + .map(|idx| TransactionInput::from_csl(&value.get(idx))) + .collect() + } +} + +impl TryFromPLA> for csl::TransactionInputs { + fn try_from_pla(val: &Vec) -> Result { + val.iter() + .try_fold(csl::TransactionInputs::new(), |mut acc, input| { + acc.add(&input.try_to_csl()?); + Ok(acc) + }) + } +} + +/// Nom parser for TransactionInput +/// Expects a transaction hash of 32 bytes in hexadecimal followed by a # and an integer index +/// E.g.: 1122334455667788990011223344556677889900112233445566778899001122#1 +pub(crate) fn transaction_input( + input: &str, +) -> IResult<&str, TransactionInput, VerboseError<&str>> { + map( + tuple((transaction_hash, preceded(char('#'), big_int))), + |(transaction_id, index)| TransactionInput { + transaction_id, + index, + }, + )(input) +} + +impl FromStr for TransactionInput { + type Err = ConversionError; + + fn from_str(s: &str) -> Result { + all_consuming(transaction_input)(s) + .finish() + .map_err(|err| { + ConversionError::ParseError(anyhow!( + "Error while parsing TransactionInput '{}': {}", + s, + err + )) + }) + .map(|(_, cs)| cs) + } +} + +///////////////////////////// +// ColdCommitteeCredential // +///////////////////////////// #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Newtype"] @@ -34,18 +223,30 @@ use super::{crypto::Ed25519PubKeyHash, ratio::Rational}; #[cfg_attr(feature = "lbf", derive(Json))] pub struct ColdCommitteeCredential(pub Credential); +//////////////////////////// +// HotCommitteeCredential // +//////////////////////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct HotCommitteeCredential(pub Credential); +//////////////////// +// DrepCredential // +//////////////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Newtype"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] pub struct DRepCredential(pub Credential); +////////// +// DRep // +////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -56,6 +257,10 @@ pub enum DRep { AlwaysNoConfidence, } +/////////////// +// Delegatee // +/////////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -66,6 +271,10 @@ pub enum Delegatee { StakeVote(StakePubKeyHash, DRep), } +//////////// +// TxCert // +//////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -99,6 +308,10 @@ pub enum TxCert { ResignColdCommittee(ColdCommitteeCredential), } +////////// +// Vote // +////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -109,6 +322,10 @@ pub enum Voter { StakePoolVoter(Ed25519PubKeyHash), } +/////////// +// Voter // +/////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -119,6 +336,10 @@ pub enum Vote { Abstain, } +//////////////////////// +// GovernanceActionId // +//////////////////////// + /// Similar to TransactionInput, but for GovernanceAction. #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] @@ -129,6 +350,10 @@ pub struct GovernanceActionId { pub gov_action_id: BigInt, } +/////////////// +// Committee // +/////////////// + #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -140,6 +365,10 @@ pub struct Committee { pub quorum: Rational, } +////////////////// +// Constitution // +////////////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -149,6 +378,10 @@ pub struct Constitution { pub constitution_script: Option, } +///////////////////// +// ProtocolVersion // +///////////////////// + #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -158,6 +391,10 @@ pub struct ProtocolVersion { pub minor: BigInt, } +/////////////////////// +// ChangedParameters // +/////////////////////// + // TODO(chfanghr): check invariant according to https://github.com/IntersectMBO/plutus/blob/bb33f082d26f8b6576d3f0d423be53eddfb6abd8/plutus-ledger-api/src/PlutusLedgerApi/V3/Contexts.hs#L338-L364 /// A Plutus Data object containing proposed parameter changes. #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] @@ -166,6 +403,10 @@ pub struct ProtocolVersion { #[cfg_attr(feature = "lbf", derive(Json))] pub struct ChangedParameters(pub PlutusData); +////////////////////// +// GovernanceAction // +////////////////////// + #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -203,6 +444,10 @@ pub enum GovernanceAction { InfoAction, } +/////////////////////// +// ProposalProcedure // +/////////////////////// + #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -213,6 +458,10 @@ pub struct ProposalProcedure { pub governance_action: GovernanceAction, } +/////////////////// +// ScriptPurpose // +/////////////////// + #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -234,6 +483,10 @@ pub enum ScriptPurpose { ), } +//////////////// +// ScriptInfo // +//////////////// + #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -247,6 +500,10 @@ pub enum ScriptInfo { Proposing(BigInt, ProposalProcedure), } +///////////////////// +// TransactionInfo // +///////////////////// + #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -270,6 +527,30 @@ pub struct TransactionInfo { pub treasury_donation: Option, } +////////////// +// TxInInfo // +////////////// + +/// An input of a pending transaction. +#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[is_plutus_data_derive_strategy = "Constr"] +#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "lbf", derive(Json))] +pub struct TxInInfo { + pub reference: TransactionInput, + pub output: TransactionOutput, +} + +impl From<(TransactionInput, TransactionOutput)> for TxInInfo { + fn from((reference, output): (TransactionInput, TransactionOutput)) -> TxInInfo { + TxInInfo { reference, output } + } +} + +/////////////////// +// ScriptContext // +/////////////////// + #[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] From c448f26713accac9050cec9280fcb6d43ccde14a Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Wed, 18 Dec 2024 19:58:38 +0100 Subject: [PATCH 52/94] Bump version --- plutus-ledger-api/Cargo.lock | 31 +++++++++++-------------------- plutus-ledger-api/Cargo.toml | 2 +- 2 files changed, 12 insertions(+), 21 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index f1dcbc4a..fb942b3f 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -137,9 +137,9 @@ checksum = "089a0261d1bc59e54e8e11860031efd88593f0e61b921172c474f1f38c2f2d3c" [[package]] name = "cc" -version = "1.2.2" +version = "1.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" +checksum = "9157bbaa6b165880c27a4293a474c91cdcf265cc68cc829bf10be0964a391caf" dependencies = [ "shlex", ] @@ -264,14 +264,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys", ] [[package]] name = "fastrand" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "486f806e73c5707928240ddc295403b1b93c96a02038563881c4a2fd84b81ac4" +checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] name = "fnv" @@ -616,7 +616,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "3.0.1-beta.2" +version = "3.0.1" dependencies = [ "anyhow", "cardano-serialization-lib", @@ -785,15 +785,15 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rustix" -version = "0.38.41" +version = "0.38.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7f649912bc1495e167a6edee79151c84b1bad49748cb4f1f1167f459f6224f6" +checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85" dependencies = [ "bitflags 2.6.0", "errno", "libc", "linux-raw-sys", - "windows-sys 0.52.0", + "windows-sys", ] [[package]] @@ -947,7 +947,7 @@ dependencies = [ "fastrand", "once_cell", "rustix", - "windows-sys 0.59.0", + "windows-sys", ] [[package]] @@ -1161,7 +1161,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.59.0", + "windows-sys", ] [[package]] @@ -1179,15 +1179,6 @@ dependencies = [ "windows-targets", ] -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets", -] - [[package]] name = "windows-sys" version = "0.59.0" diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 5f82d0e1..3004799b 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "3.0.1-beta.2" +version = "3.0.1" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" From 27211ba781ccb5b5b9c67d43db75e50f9e98b8bc Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Wed, 18 Dec 2024 20:00:54 +0100 Subject: [PATCH 53/94] Update changelog --- plutus-ledger-api/CHANGELOG.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index 89fe929c..40383aa0 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -5,6 +5,14 @@ This changelog is based on [Keep A Changelog](https://keepachangelog.com/en/1.1.0). +## v3.0.1 + +### Changed + +- Added V3 TransactionHash with proper IsPlutusData implementation +- Fix some bugs in V3 types +- Updated dependencies + ## v3.0.0 ### Changed From 53e81c72e952f1cac3dbc2b9072400dd8e174ad2 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 9 Jan 2025 17:18:39 +0100 Subject: [PATCH 54/94] Add missing derive macros --- plutus-ledger-api/Cargo.lock | 2 +- plutus-ledger-api/Cargo.toml | 2 +- plutus-ledger-api/src/v1/assoc_map.rs | 2 +- plutus-ledger-api/src/v3/transaction.rs | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index fb942b3f..599c0686 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -616,7 +616,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "3.0.1" +version = "3.0.2-beta.1" dependencies = [ "anyhow", "cardano-serialization-lib", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 3004799b..50c0e57f 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "3.0.1" +version = "3.0.2-beta.1" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" diff --git a/plutus-ledger-api/src/v1/assoc_map.rs b/plutus-ledger-api/src/v1/assoc_map.rs index 15760dd8..f03ecd57 100644 --- a/plutus-ledger-api/src/v1/assoc_map.rs +++ b/plutus-ledger-api/src/v1/assoc_map.rs @@ -12,7 +12,7 @@ use crate::plutus_data::{IsPlutusData, PlutusData, PlutusDataError, PlutusType}; // AssocMap // ////////////// -#[derive(Debug, PartialEq, Eq, Clone, Default)] +#[derive(Debug, PartialEq, Eq, Clone, Default, PartialOrd, Ord, Hash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub struct AssocMap(pub Vec<(K, V)>); diff --git a/plutus-ledger-api/src/v3/transaction.rs b/plutus-ledger-api/src/v3/transaction.rs index 06283da8..b6621181 100644 --- a/plutus-ledger-api/src/v3/transaction.rs +++ b/plutus-ledger-api/src/v3/transaction.rs @@ -407,7 +407,7 @@ pub struct ChangedParameters(pub PlutusData); // GovernanceAction // ////////////////////// -#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] @@ -448,7 +448,7 @@ pub enum GovernanceAction { // ProposalProcedure // /////////////////////// -#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] @@ -462,7 +462,7 @@ pub struct ProposalProcedure { // ScriptPurpose // /////////////////// -#[derive(Clone, Debug, PartialEq, Eq, IsPlutusData)] +#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Hash, IsPlutusData)] #[is_plutus_data_derive_strategy = "Constr"] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[cfg_attr(feature = "lbf", derive(Json))] From f6d2a45eacb9b1ffd0b03f2c96feed4c9a4d8ffe Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 9 Jan 2025 17:56:34 +0100 Subject: [PATCH 55/94] Release 3.0.2 --- plutus-ledger-api/Cargo.lock | 2 +- plutus-ledger-api/Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 599c0686..10d8d50d 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -616,7 +616,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "3.0.2-beta.1" +version = "3.0.2" dependencies = [ "anyhow", "cardano-serialization-lib", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 50c0e57f..18d19304 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "3.0.2-beta.1" +version = "3.0.2" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" From a7108f751d844b3ae6275b83fa2cbe9c067fac76 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 9 Jan 2025 18:13:15 +0100 Subject: [PATCH 56/94] Add a subset of v3 goldens --- plutus-ledger-api/src/goldens/mod.rs | 1 + plutus-ledger-api/src/goldens/v2.rs | 4 +- plutus-ledger-api/src/goldens/v3.rs | 66 ++++++++++++++++++++++++++++ 3 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 plutus-ledger-api/src/goldens/v3.rs diff --git a/plutus-ledger-api/src/goldens/mod.rs b/plutus-ledger-api/src/goldens/mod.rs index 3f9ef643..4153f33f 100644 --- a/plutus-ledger-api/src/goldens/mod.rs +++ b/plutus-ledger-api/src/goldens/mod.rs @@ -1,3 +1,4 @@ //! Golden test data pub mod v1; pub mod v2; +pub mod v3; diff --git a/plutus-ledger-api/src/goldens/v2.rs b/plutus-ledger-api/src/goldens/v2.rs index 5542f7c8..f61b9dcc 100644 --- a/plutus-ledger-api/src/goldens/v2.rs +++ b/plutus-ledger-api/src/goldens/v2.rs @@ -1,4 +1,7 @@ //! Golden test data or Plutus V2 types + +use num_bigint::BigInt; + pub use super::v1::{ sample_address, sample_asset_class, sample_chain_pointer, sample_credential, sample_currency_symbol, sample_datum, sample_datum_hash, sample_dcert, @@ -14,7 +17,6 @@ use crate::v2::{ script::ScriptHash, transaction::{ScriptContext, TransactionInfo, TransactionOutput, TxInInfo}, }; -use num_bigint::BigInt; pub fn sample_output_datum() -> OutputDatum { OutputDatum::InlineDatum(super::v1::sample_datum()) diff --git a/plutus-ledger-api/src/goldens/v3.rs b/plutus-ledger-api/src/goldens/v3.rs new file mode 100644 index 00000000..65787d2b --- /dev/null +++ b/plutus-ledger-api/src/goldens/v3.rs @@ -0,0 +1,66 @@ +//! Golden test data or Plutus V3 types (incomplete) +use num_bigint::BigInt; + +pub use super::v2::{ + sample_address, sample_asset_class, sample_chain_pointer, sample_credential, + sample_currency_symbol, sample_datum, sample_datum_hash, sample_dcert, + sample_ed25519_pub_key_hash, sample_output_datum, sample_payment_pub_key_hash, + sample_plutus_data, sample_plutus_interval, sample_redeemer, sample_redeemer_hash, + sample_script_hash, sample_staking_credential, sample_token_name, sample_transaction_output, + sample_value, +}; +use crate::v3::{ + crypto::LedgerBytes, + transaction::{ + ColdCommitteeCredential, DRepCredential, HotCommitteeCredential, TransactionHash, + TransactionInput, TxInInfo, + }, +}; + +pub fn sample_transaction_hash() -> TransactionHash { + TransactionHash(LedgerBytes([0].repeat(32).to_vec())) +} + +pub fn sample_transaction_input() -> TransactionInput { + TransactionInput { + transaction_id: sample_transaction_hash(), + index: BigInt::from(3), + } +} + +pub fn sample_tx_in_info() -> TxInInfo { + TxInInfo { + reference: sample_transaction_input(), + output: sample_transaction_output(), + } +} + +pub fn sample_cold_committee_credential() -> ColdCommitteeCredential { + ColdCommitteeCredential(sample_credential()) +} + +pub fn sample_hot_committee_credential() -> HotCommitteeCredential { + HotCommitteeCredential(sample_credential()) +} + +pub fn sample_drep_committee_credential() -> DRepCredential { + DRepCredential(sample_credential()) +} + +// TODO(szg251): Missing implementations +// DRep +// Delegatee +// TxCert +// Vote +// Voter +// GovernanceActionId +// Committee +// Constitution +// ProtocolVersion +// ChangedParameters +// GovernanceAction +// ProposalProcedure +// ScriptPurpose +// ScriptInfo +// TransactionInfo +// ScriptContext From 1d82cec1940c49fc118d29743688218d29c90c12 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Mon, 10 Feb 2025 14:53:06 +0100 Subject: [PATCH 57/94] Remove darwin CI agent --- hercules-ci.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hercules-ci.nix b/hercules-ci.nix index 2e9fbf12..dc661de4 100644 --- a/hercules-ci.nix +++ b/hercules-ci.nix @@ -37,7 +37,7 @@ ); }; - ciSystems = [ "x86_64-linux" "x86_64-darwin" ]; + ciSystems = [ "x86_64-linux" ]; }; } From de57fb7fd2db72982d3cd0594ebae47391f3dec0 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 16 Feb 2025 12:47:32 +0000 Subject: [PATCH 58/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/bf9f458b38904a9eb4bf35f196b61b680adaa6e0?narHash=sha256-NkDqMD30gcByCc/Hk9Xifa%2BD8GPddhlhlxTcHAoQYao%3D' (2024-12-06) → 'github:mlabs-haskell/flake-lang.nix/af483e8b4fcb4b9644548fdbdbc912f0cd000653?narHash=sha256-JV6uOhWYVHgHvrgxbd0i7m%2B5Hzgxe3857rKg/g8cYBI%3D' (2025-02-12) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/d36fcfb3c0f2632bdaf4637c72e91b93f7eada56?narHash=sha256-BBz3q09%2BDqDMYnLLgqXYyAxj9amVibxuEevHzgqL6UM%3D' (2024-11-20) → 'github:input-output-hk/cardano-haskell-packages/3167b742cea332e1c978d8ecc69ef8d6bd0d6e19?narHash=sha256-oCObuK/TY71lL%2BvDiRT0/Hhrsq4GRC7n8kcKBeonoUk%3D' (2025-02-08) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/f2b4b472983817021d9ffb60838b2b36b9376b20?narHash=sha256-qJOGDT6PACoX%2BGbNH2PPx2ievlmtT1NVeTB80EkRLys%3D' (2024-11-24) → 'github:ipetkov/crane/112e6591b2d6313b1bd05a80a754a8ee42432a7e?narHash=sha256-LrMDRuwAlRFD2T4MgBSRd1s2VtOE%2BVl1oMCNu3RpPE0%3D' (2025-02-08) • Updated input 'flake-lang/ctl': 'github:plutonomicon/cardano-transaction-lib/391dda3d9566ca969c245369492361d046462588?narHash=sha256-Ut8Wo4msEQP9MDtAaHJDyCW8L%2BAvKiilJitOXuEwkuM%3D' (2024-09-26) → 'github:plutonomicon/cardano-transaction-lib/53f42ed89f9a2c7989022bcfcede702cf6618d25?narHash=sha256-iRxalPymdJBI34h8j79uY2R09nSKeuha%2B3VJ7r11ZKE%3D' (2025-02-04) • Removed input 'flake-lang/ctl/CHaP' • Updated input 'flake-lang/ctl/cardano-configurations': 'github:input-output-hk/cardano-configurations/7969a73e5c7ee1f3b2a40274b34191fdd8de170b?narHash=sha256-qiReN%2Bxxtbb4kEfdIWbBcqcJpPGD8he0p/TVD7U3CqM%3D' (2024-07-25) → 'github:input-output-hk/cardano-configurations/a913d87246dc2484562a00c86e5f9c74a20e82ce?narHash=sha256-BHabDNuHn9RgIPk0vjtkrFPrwTYfwVeJi9%2BIrn8LF%2B4%3D' (2024-12-14) • Updated input 'flake-lang/ctl/cardano-nix': 'github:mlabs-haskell/cardano.nix/3eb9384b2e1c43d4dcdf2eb23d0210d5d7e612af?narHash=sha256-rsj28Jq7DX/YCzykfvy2LJ9y6AE37i3MCyoAFeRHyEM%3D' (2024-08-29) → 'github:mlabs-haskell/cardano.nix/92516bb3ba6d45fafafbe51f4ded289853294dcc?narHash=sha256-N9PCcNkebjoJEF7UYblu1c9qT8ySFaurOqSqTviDGVM%3D' (2024-12-09) • Updated input 'flake-lang/ctl/cardano-nix/blockfrost': 'github:blockfrost/blockfrost-backend-ryo/7204204615be69b2f298ddf11f9a23dbbb184e55?narHash=sha256-h1LdfN/2KlD/XRjgj7rDNRInxSKZCOx6OF4jak/3c/E%3D' (2024-05-23) → 'github:blockfrost/blockfrost-backend-ryo/30ec8cf23d9c222199dc5afba9b79b5bfeec3337?narHash=sha256-YeSPvCrfc0OmMqhzGN/WXcBSfXIlnEnqWemzqQTz%2Bzw%3D' (2024-10-31) • Removed input 'flake-lang/ctl/cardano-nix/cardano-configurations-8.1.1' • Removed input 'flake-lang/ctl/cardano-nix/cardano-configurations-8.7.3' • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync': 'github:intersectmbo/cardano-db-sync/ed3dc8bbb79f07c26ec43f10bad661b0bef3b915?narHash=sha256-z3YUrUImpV/wmJi%2Bpfw6YuhBw%2B2Xd3jGlSWk7WI69/4%3D' (2024-02-14) → 'github:intersectmbo/cardano-db-sync/5b131e97210cf603a3aca5ddca7d1420f9cabeec?narHash=sha256-EESfv4KVXjYokTMQLwJGkhOq6gskiXCjF3rfDNDaeXQ%3D' (2024-11-08) • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/CHaP': 'github:IntersectMBO/cardano-haskell-packages/48a359ac3f1d437ebaa91126b20e15a65201f004?narHash=sha256-br%2BhVo3R6nfmiSEPXcLKhIX4Kg5gcK2PjzjmvQsuUp8%3D' (2023-12-18) → 'github:IntersectMBO/cardano-haskell-packages/d3d36220528058f9a24cff43fc723e60f6a786ad?narHash=sha256-Kv99PeYWdqmj5OStnp6kE6fjHbx6irTYyEPoFuukfHU%3D' (2024-11-05) • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/ameba-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/bdwgc-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/crystal-aarch64-darwin' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/crystal-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/crystal-x86_64-darwin' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/crystal-x86_64-linux' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/crystalline-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/flake-parts' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/flake-parts/nixpkgs-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/crystal/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/flake-parts' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/flake-parts/nixpkgs-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/inclusive' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/inclusive/stdlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/statix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/statix/fenix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/statix/fenix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/statix/fenix/rust-analyzer-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/statix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/treefmt-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/auth-keys-hub/treefmt-nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/capkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/cardano-db-sync-schema' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/cardano-db-sync-schema-ng' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/cardano-db-sync-service' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/cardano-node-service' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/cardano-wallet-service' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/colmena' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/colmena/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/colmena/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/colmena/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/colmena/stable' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/empty-flake' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/flake-parts' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/flake-parts/nixpkgs-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/HTTP' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/cabal-32' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/cabal-34' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/cabal-36' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/cardano-shell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/ghc-8.6.5-iohk' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hls-1.10' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hls-2.0' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hpc-coveralls' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hydra' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hydra/nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hydra/nix/lowdown-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hydra/nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hydra/nix/nixpkgs-regression' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/hydra/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/iserv-proxy' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/nixpkgs-2003' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/nixpkgs-2105' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/nixpkgs-2111' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/nixpkgs-2205' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/nixpkgs-2211' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/nixpkgs-2305' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/nixpkgs-unstable' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/old-ghc-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/haskell-nix/stackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/inputs-check' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/inputs-check/flake-parts' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/inputs-check/flake-parts/nixpkgs-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/inputs-check/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix/blst' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix/secp256k1' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix/sodium' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix-ng' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix-ng/blst' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix-ng/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix-ng/secp256k1' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/iohk-nix-ng/sodium' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/nix/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/nix/lowdown-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/nix/nixpkgs-regression' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/nixpkgs-unstable' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/offchain-metadata-tools-service' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/sops-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/sops-nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/sops-nix/nixpkgs-stable' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/terraform-providers' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/terraform-providers/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/terranix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/terranix/bats-assert' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/terranix/bats-support' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/terranix/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/terranix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/terranix/terranix-examples' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/treefmt-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/cardano-parts/treefmt-nix/nixpkgs' • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/hackageNix': 'github:input-output-hk/hackage.nix/e59b9616a744727e8e64f605f9f216464f12f89b?narHash=sha256-mo1MlOphO4bRwZ8T3mDwU5LOtdQcWSA%2B93lT1HkCcyw%3D' (2023-12-19) → 'github:input-output-hk/hackage.nix/ee5b803d828db6efac3ef7e7e072c855287dc298?narHash=sha256-AKBK4jgOjIz5DxIsIKFZR0mf30qc4Dv%2BDm/DVRjdjD8%3D' (2024-10-21) • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix': 'github:input-output-hk/haskell.nix/7c491c55157208575c70c7b8434e9d4a1cf173a6?narHash=sha256-4sH4//POARjeKJv1mu8aU4W4A28GYqrj9KB3PqusHis%3D' (2023-11-27) → 'github:input-output-hk/haskell.nix/03c3581d2e0c91f7c2690115b487961ad62099a6?narHash=sha256-xMxD8YQGGcbrZGHJws32UvtWJxfhzAO7yzPs5TjiOPY%3D' (2024-10-21) • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/ghc98X' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/ghc99' • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.4': 'github:haskell/haskell-language-server/362fdd1293efb4b82410b676ab1273479f6d17ee?narHash=sha256-VOMf5%2BkyOeOmfXTHlv4LNFJuDGa7G3pDnOxtzYR40IU%3D' (2023-10-10) → 'github:haskell/haskell-language-server/54507ef7e85fa8e9d0eb9a669832a3287ffccd57?narHash=sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk%3D' (2023-11-13) • Added input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.5': 'github:haskell/haskell-language-server/27f8c3d3892e38edaef5bea3870161815c4d014c?narHash=sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc%3D' (2023-11-27) • Added input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.6': 'github:haskell/haskell-language-server/6e0b342fa0327e628610f2711f8c3e4eaaa08b1e?narHash=sha256-%2BP87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8%3D' (2024-01-15) • Added input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.7': 'github:haskell/haskell-language-server/50322b0a4aefb27adc5ec42f5055aaa8f8e38001?narHash=sha256-LfJ%2BTBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu%2BJf%2BM%3D' (2024-02-26) • Added input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.8': 'github:haskell/haskell-language-server/dd1be1beb16700de59e0d6801957290bcf956a0a?narHash=sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0%3D' (2024-05-08) • Added input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.9': 'github:haskell/haskell-language-server/0c1817cb2babef0765e4e72dd297c013e8e3d12b?narHash=sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs%3D' (2024-07-03) • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/iserv-proxy': 'git+https://gitlab.haskell.org/hamishmack/iserv-proxy.git?ref=hkm/remote-iserv&rev=43a979272d9addc29fbffc2e8542c5d96e993d73' (2023-08-10) → 'github:stable-haskell/iserv-proxy/2ed34002247213fc435d0062350b91bab920626e?narHash=sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo%3D' (2024-06-04) • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2305': 'github:NixOS/nixpkgs/715d72e967ec1dd5ecc71290ee072bcaf5181ed6?narHash=sha256-610o1%2BpwbSu%2BQuF3GE0NU5xQdTHM3t9wyYhB9l94Cd8%3D' (2023-09-22) → 'github:NixOS/nixpkgs/a1982c92d8980a0114372973cbdfe0a307f1bdea?narHash=sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ%3D' (2024-01-12) • Added input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2311': 'github:NixOS/nixpkgs/7144d6241f02d171d25fba3edeaf15e0f2592105?narHash=sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL%2B%2BdvNjMp9I%3D' (2024-07-02) • Added input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2405': 'github:NixOS/nixpkgs/086b448a5d54fd117f4dc2dee55c9f0ff461bdc1?narHash=sha256-2yV8nmYE1p9lfmLHhOCbYwQC/W8WYfGQABoGzJOb1JQ%3D' (2024-09-16) • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-unstable': 'github:NixOS/nixpkgs/e12483116b3b51a185a33a272bf351e357ba9a99?narHash=sha256-FHVPDRP2AfvsxAdc%2BAsgFJevMz5VBmnZglFUMlxBkcY%3D' (2023-09-21) → 'github:NixOS/nixpkgs/658e7223191d2598641d50ee4e898126768fe847?narHash=sha256-zACxiQx8knB3F8%2BZe%2B1BpiYrI%2BCbhxyWpcSID9kVhkQ%3D' (2024-09-17) • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/stackage': 'github:input-output-hk/stackage.nix/cb49435b81adf0549589c51f39b5b38b4369f106?narHash=sha256-d5CYT7WGEaL6IFNmUg4JUb%2BonxI/tO1qgHs/TCIKB3A%3D' (2023-11-27) → 'github:input-output-hk/stackage.nix/df1d8f0960407551fea7af7af75a9c2f9e18de97?narHash=sha256-fGExfgG%2B7UNSOV8YfOrWPpOHWrCjA02gQkeSBhaAzjQ%3D' (2024-10-16) • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/iohkNix': 'github:input-output-hk/iohk-nix/73dc2bb45af6f20cfe1d962f1334eed5e84ae764?narHash=sha256-42D1BMbdyZD%2BlT%2BpWUzb5zDQyasNbMJtH/7stuPuPfE%3D' (2023-11-03) → 'github:input-output-hk/iohk-nix/d407eedd4995e88d08e83ef75844a8a9c2e29b36?narHash=sha256-n3f1iAmltKnorHWx7FrdbGIF/FmEG8SsZshS16vnpz0%3D' (2024-10-30) • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/iohkNix/blst': 'github:supranational/blst/03b5124029979755c752eec45f3c29674b558446?narHash=sha256-xero1aTe2v4IhWIJaEDUsVDOfE77dOV5zKeHWntHogY%3D' (2022-06-25) → 'github:supranational/blst/3dd0f804b1819e5d03fb22ca2e6fac105932043a?narHash=sha256-oqljy%2BZXJAXEB/fJtmB8rlAr4UXM%2BZ2OkDa20gpILNA%3D' (2023-08-09) • Updated input 'flake-lang/ctl/cardano-nix/cardano-db-sync/utils': 'github:numtide/flake-utils/ff7b65b44d01cf9ba6a71320833626af21126384?narHash=sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt%2BxmY%3D' (2023-09-12) → 'github:numtide/flake-utils/c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a?narHash=sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ%3D' (2024-09-17) • Added input 'flake-lang/ctl/cardano-nix/cardano-node': 'github:intersectmbo/cardano-node/01bda2e2cb0a70cd95067d696dbb44665f1d680a?narHash=sha256-yNEv7MQEcOPY9I9k9RCzeMfJY6gzuGc7K53GKNHs6v8%3D' (2024-11-01) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/CHaP': 'github:intersectmbo/cardano-haskell-packages/25591f43ab943d5a070db5e8a2b9ff3a499d4d92?narHash=sha256-ijnHTQ6eKIQ9FpEqDKt6c7vuFYN8aOBDhonp67utx2s%3D' (2024-10-30) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation': 'github:input-output-hk/cardano-automation/628f135d243d4a9e388c187e4c6179246038ee72?narHash=sha256-xM78upkrXjRu/739V/IxFrA9m%2B6rvgOiolt4ReKLAog%3D' (2023-03-21) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/flake-utils': 'github:numtide/flake-utils/5aed5285a952e0b949eb3ba02c12fa4fcfef535f?narHash=sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau%2B/OdUAjtQ0rA%3D' (2022-11-02) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/haskellNix': follows 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia': 'github:input-output-hk/tullia/ead1f515c251f0e060060ef0e2356a51d3dfe4b0?narHash=sha256-CBjky16o9pqsGE1bWu6nRlRajgSXMEk%2ByaFQLibqXcE%3D' (2022-11-17) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad': 'github:tristanpemble/nix-nomad/054adcbdd0a836ae1c20951b67ed549131fd2d70?narHash=sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0%3D' (2022-07-20) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/flake-compat': 'github:edolstra/flake-compat/b4a34015c698c7793d592d66adbab377907a2be8?narHash=sha256-Z%2Bs0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh%2BE%3D' (2022-04-19) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/flake-utils': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix2container/flake-utils' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/gomod2nix': 'github:tweag/gomod2nix/40d32f82fc60d66402eb0972e6e368aeab3faf58?narHash=sha256-d/YPoQ/vFn1%2BGTmSdvbSBSTOai61FONxB4%2BLt6w/IVI%3D' (2022-06-14) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/gomod2nix/nixpkgs': 'github:NixOS/nixpkgs/83658b28fe638a170a19b8933aa008b30640fbd1?narHash=sha256-Uvka0V5MTGbeOfWte25%2BtfRL3moECDh1VwokWSZUdoY%3D' (2022-05-26) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/gomod2nix/utils': 'github:numtide/flake-utils/1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1?narHash=sha256-0jntwV3Z8//YwuOjzhV2sgJJPt%2BHY6KhU7VZUL0fKZQ%3D' (2022-05-30) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/nixpkgs-lib': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix2container': 'github:nlewo/nix2container/60bb43d405991c1378baf15a40b5811a53e32ffa?narHash=sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G%2BVgA%3D' (2022-07-23) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix2container/flake-utils': 'github:numtide/flake-utils/1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1?narHash=sha256-0jntwV3Z8//YwuOjzhV2sgJJPt%2BHY6KhU7VZUL0fKZQ%3D' (2022-05-30) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix2container/nixpkgs': 'github:NixOS/nixpkgs/fc909087cc3386955f21b4665731dbdaceefb1d8?narHash=sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E%3D' (2022-06-09) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std': 'github:divnix/std/94a90eedb9cfc115b12ae8f6622d9904788559e4?narHash=sha256-D6Pacw9yf/HMs84KYuCxHXnNDL7v43gtcka5URagFqE%3D' (2022-10-11) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/blank': 'github:divnix/blank/5a5d2684073d9f563072ed07c871d577a6c614a8?narHash=sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4%3D' (2021-07-06) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/devshell': 'github:numtide/devshell/e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66?narHash=sha256-%2BxVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA%3D' (2022-09-17) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/devshell/flake-utils': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/flake-utils' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/devshell/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/dmerge': 'github:divnix/data-merge/d160d18ce7b1a45b88344aa3f13ed1163954b497?narHash=sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY%3D' (2022-08-03) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/dmerge/nixlib': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/dmerge/yants': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/yants' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/flake-utils': 'github:numtide/flake-utils/c0e246b9b83f637f4681389ecabcb2681b4f3af0?narHash=sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc%3D' (2022-08-07) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/makes': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/mdbook-kroki-preprocessor': 'github:JoelCourtney/mdbook-kroki-preprocessor/93adb5716d035829efed27f65f2f0833a7d3e76f?narHash=sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw%3D' (2022-08-29) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/microvm': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/n2c': 'github:nlewo/nix2container/b008fe329ffb59b67bf9e7b08ede6ee792f2741a?narHash=sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ%3D' (2022-10-06) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/n2c/flake-utils': 'github:numtide/flake-utils/1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1?narHash=sha256-0jntwV3Z8//YwuOjzhV2sgJJPt%2BHY6KhU7VZUL0fKZQ%3D' (2022-05-30) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/n2c/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixago': 'github:nix-community/nixago/8c1f9e5f1578d4b2ea989f618588d62a335083c3?narHash=sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8%3D' (2022-08-30) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixago/flake-utils': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/flake-utils' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixago/nixago-exts': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixago/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixpkgs': 'github:nixos/nixpkgs/95fda953f6db2e9496d2682c4fc7b82f959878f7?narHash=sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA%3D' (2022-10-06) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/yants': 'github:divnix/yants/0b895ca02a8fa72bad50b454cb3e7d8a66407c96?narHash=sha256-BKjq7JnVuUR/xDtcv6Vm9GYGKAblisXrAgybor9hT/s%3D' (2022-08-14) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/yants/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-mainnet-mirror': 'github:input-output-hk/cardano-mainnet-mirror/819488be9eabbba6aaa7c931559bc584d8071e3d?narHash=sha256-SR3luE%2BePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs%3D' (2022-01-20) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-mainnet-mirror/nixpkgs': 'github:NixOS/nixpkgs/f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6?narHash=sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04%3D' (2022-01-16) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/customConfig': 'github:input-output-hk/empty-flake/2040a05b67bf9a669ce17eca56beb14b4206a99a?narHash=sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0%3D' (2021-08-31) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/em': 'github:deepfire/em/af69bb5c2ac2161434d8fea45f920f8f359587ce?narHash=sha256-etAdEoYhtvjTw1ITh28WPNfwvvb5t/fpwCP6s7odSiQ%3D' (2023-05-25) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/empty-flake': 'github:input-output-hk/empty-flake/2040a05b67bf9a669ce17eca56beb14b4206a99a?narHash=sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0%3D' (2021-08-31) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/flake-compat': 'github:input-output-hk/flake-compat/7da118186435255a30b5ffeabba9629c344c0bec?narHash=sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA%2Bp6kLgpb1f1PAY%3D' (2022-03-17) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/hackageNix': 'github:input-output-hk/hackage.nix/6dc43e5e01f113ce151056a8f94bce7bb2f13eb9?narHash=sha256-sIglYcw8Dacj4n0bRlUWo%2BNLkDMcVi6vtmKvUyG%2BZrQ%3D' (2024-10-16) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix': 'github:input-output-hk/haskell.nix/cb139fa956158397aa398186bb32dd26f7318784?narHash=sha256-ueFxTuZrQ3ZT/Fj5sSeUWlqKa4%2BOkUU1xW0E%2Bq/XTfw%3D' (2024-06-19) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/HTTP': 'github:phadej/HTTP/9bc0996d412fef1787449d841277ef663ad9a915?narHash=sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts%3D' (2016-01-01) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/cabal-32': 'github:haskell/cabal/48bf10787e27364730dd37a42b603cee8d6af7ee?narHash=sha256-X0TFfdD4KZpwl0Zr6x%2BPLxUt/VyKQfX7ylXHdmZIL%2Bw%3D' (2020-10-26) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/cabal-34': 'github:haskell/cabal/5ff598c67f53f7c4f48e31d722ba37172230c462?narHash=sha256-wG3d%2BdOt14z8%2Bydz4SL7pwGfe7SiimxcD/LOuPCV6xM%3D' (2022-02-26) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/cabal-36': 'github:haskell/cabal/8fd619e33d34924a94e691c5fea2c42f0fc7f144?narHash=sha256-I5or%2BV7LZvMxfbYgZATU4awzkicBwwok4mVoje%2BsGmU%3D' (2022-11-22) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/cardano-shell': 'github:input-output-hk/cardano-shell/9392c75087cb9a3d453998f4230930dea3a95725?narHash=sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4%3D' (2020-12-21) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/flake-compat': 'github:input-output-hk/flake-compat/45f2638735f8cdc40fe302742b79f248d23eb368?narHash=sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0%3D' (2023-01-04) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/ghc-8.6.5-iohk': 'github:input-output-hk/ghc/95713a6ecce4551240da7c96b6176f980af75cae?narHash=sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8%3D' (2020-09-24) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/ghc910X': 'git+https://gitlab.haskell.org/ghc/ghc?ref=ghc-9.10&rev=2c6375b9a804ac7fca1e82eb6fcfc8594c67c5f5&submodules=1' (2024-04-30) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/ghc911': 'git+https://gitlab.haskell.org/ghc/ghc?ref=refs/heads/master&rev=fc24c5cf6c62ca9e3c8d236656e139676df65034&submodules=1' (2024-05-04) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hackage': follows 'flake-lang/ctl/cardano-nix/cardano-node/hackageNix' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-1.10': 'github:haskell/haskell-language-server/b08691db779f7a35ff322b71e72a12f6e3376fd9?narHash=sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo%3D' (2023-03-28) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.0': 'github:haskell/haskell-language-server/783905f211ac63edf982dd1889c671653327e441?narHash=sha256-OHXlgRzs/kuJH8q7Sxh507H%2B0Rb8b7VOiPAjcY9sM1k%3D' (2023-06-25) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.2': 'github:haskell/haskell-language-server/b30f4b6cf5822f3112c35d14a0cba51f3fe23b85?narHash=sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk%3D' (2023-08-26) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.3': 'github:haskell/haskell-language-server/458ccdb55c9ea22cd5d13ec3051aaefb295321be?narHash=sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI%3D' (2023-09-28) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.4': 'github:haskell/haskell-language-server/54507ef7e85fa8e9d0eb9a669832a3287ffccd57?narHash=sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk%3D' (2023-11-13) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.5': 'github:haskell/haskell-language-server/27f8c3d3892e38edaef5bea3870161815c4d014c?narHash=sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc%3D' (2023-11-27) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.6': 'github:haskell/haskell-language-server/6e0b342fa0327e628610f2711f8c3e4eaaa08b1e?narHash=sha256-%2BP87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8%3D' (2024-01-15) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.7': 'github:haskell/haskell-language-server/50322b0a4aefb27adc5ec42f5055aaa8f8e38001?narHash=sha256-LfJ%2BTBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu%2BJf%2BM%3D' (2024-02-26) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.8': 'github:haskell/haskell-language-server/dd1be1beb16700de59e0d6801957290bcf956a0a?narHash=sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0%3D' (2024-05-08) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hpc-coveralls': 'github:sevanspowell/hpc-coveralls/14df0f7d229f4cd2e79f8eabb1a740097fdfa430?narHash=sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk%3D' (2020-12-09) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra': 'github:NixOS/hydra/f48f00ee6d5727ae3e488cbf9ce157460853fea8?narHash=sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4%3D' (2022-12-23) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nix': 'github:NixOS/nix/11e45768b34fdafdcf019ddbd337afa16127ff0f?narHash=sha256-9%2BrpYzI%2BSmxJn%2BEbYxjGv68Ucp22bdFUSy/4LkHkkDQ%3D' (2022-08-27) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nix/lowdown-src': 'github:kristapsdz/lowdown/d2c2b44ff6c27b936ec27358a2653caaef8f73b8?narHash=sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4%3D' (2021-10-06) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nix/nixpkgs': 'github:NixOS/nixpkgs/365e1b3a859281cf11b94f87231adeabbdd878a2?narHash=sha256-G%2B%2B2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8%3D' (2022-07-13) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nix/nixpkgs-regression': 'github:NixOS/nixpkgs/215d4d0fd80ca5163643b03a33fde804a29cc1e2?narHash=sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw%3D' (2022-01-24) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nix/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/iserv-proxy': 'github:stable-haskell/iserv-proxy/2ed34002247213fc435d0062350b91bab920626e?narHash=sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo%3D' (2024-06-04) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2003': 'github:NixOS/nixpkgs/1db42b7fe3878f3f5f7a4f2dc210772fd080e205?narHash=sha256-8LEHoYSJiL901bTMVatq%2Brf8y7QtWuZhwwpKE2fyaRY%3D' (2021-05-03) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2105': 'github:NixOS/nixpkgs/022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf?narHash=sha256-lkA5X3VNMKirvA%2BSUzvEhfA7XquWLci%2BCGi505YFAIs%3D' (2022-08-07) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2111': 'github:NixOS/nixpkgs/eabc38219184cc3e04a974fe31857d8e0eac098d?narHash=sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE%3D' (2022-08-02) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2205': 'github:NixOS/nixpkgs/380be19fbd2d9079f677978361792cb25e8a3635?narHash=sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ%3D' (2023-05-31) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2211': 'github:NixOS/nixpkgs/ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b?narHash=sha256-lHrKvEkCPTUO%2B7tPfjIcb7Trk6k31rz18vkyqmkeJfY%3D' (2023-07-03) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2305': 'github:NixOS/nixpkgs/d2332963662edffacfddfad59ff4f709dde80ffe?narHash=sha256-GVdzxL0lhEadqs3hfRLuj%2BL1OJFGiL/L7gCcelgBlsw%3D' (2023-11-30) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2311': 'github:NixOS/nixpkgs/293822e55ec1872f715a66d0eda9e592dc14419f?narHash=sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug%2BzOtZeZFiDJk%3D' (2023-11-30) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-unstable': 'github:NixOS/nixpkgs/47585496bcb13fb72e4a90daeea2f434e2501998?narHash=sha256-6fSDCj%2B%2BlZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8%3D' (2023-09-16) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/old-ghc-nix': 'github:angerman/old-ghc-nix/af48a7a7353e418119b6dfe3cd1463a657f342b8?narHash=sha256-sIKgO%2Bz7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki%2Blh9Fg%3D' (2021-09-08) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/stackage': 'github:input-output-hk/stackage.nix/027672fb6fd45828b0e623c8152572d4058429ad?narHash=sha256-8rL8viTbuE9/yV1of6SWp2tHmhVMD2UmkOfmN5KDbKg%3D' (2024-06-19) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/hostNixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix': 'github:input-output-hk/iohk-nix/86c2bd46e8a08f62ea38ffe77cb4e9c337b42217?narHash=sha256-38uD8SqT557eh5yyRYuthKm1yTtiWzAN0FH7L/01QKM%3D' (2024-10-11) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix/blst': 'github:supranational/blst/3dd0f804b1819e5d03fb22ca2e6fac105932043a?narHash=sha256-oqljy%2BZXJAXEB/fJtmB8rlAr4UXM%2BZ2OkDa20gpILNA%3D' (2023-08-09) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix/secp256k1': 'github:bitcoin-core/secp256k1/acf5c55ae6a94e5ca847e07def40427547876101?narHash=sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s%3D' (2023-05-13) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix/sodium': 'github:input-output-hk/libsodium/dbb48cce5429cb6585c9034f002568964f1ce567?narHash=sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9%2BY%3D' (2023-01-31) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-unstable' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/ops-lib': 'github:input-output-hk/ops-lib/19d83fa8eab1c0b7765f736eb4e8569d84d3e39d?narHash=sha256-0hNlv%2BgrFTE%2BTeXIbxSY97QoEEaUupOKMusZ4PesdrQ%3D' (2024-04-17) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std': 'github:divnix/std/b6924a7d37a46fc1dda8efe405040e27ecf1bbd6?narHash=sha256-LcLYV5CDhIiJs3MfxGZFKsXPR4PtfnY4toZ75GM%2B2Pw%3D' (2024-05-08) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/arion': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/blank': 'github:divnix/blank/5a5d2684073d9f563072ed07c871d577a6c614a8?narHash=sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4%3D' (2021-07-06) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/devshell': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/dmerge': 'github:divnix/dmerge/9f7f7a8349d33d7bd02e0f2b484b1f076e503a96?narHash=sha256-ojGtRQ9pIOUrxsQEuEPerUkqIJEuod9hIflfNkY%2B9CE%3D' (2023-06-15) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/dmerge/haumea': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/haumea' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/dmerge/nixlib': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/lib' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/dmerge/yants': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/yants' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/haumea': 'github:nix-community/haumea/34dd58385092a23018748b50f9b23de6266dffc2?narHash=sha256-FePm/Gi9PBSNwiDFq3N%2BDWdfxFq0UKsVVTJS3cQPn94%3D' (2023-05-26) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/haumea/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/lib' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/incl': 'github:divnix/incl/ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca?narHash=sha256-E/%2B23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q%3D' (2022-11-24) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/incl/nixlib': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/lib' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/lib': 'github:nix-community/nixpkgs.lib/c30b6a84c0b84ec7aecbe74466033facc9ed103f?narHash=sha256-26fkTOJOI65NOTNKFvtcJF9mzzf/kK9swHzfYt1Dl6Q%3D' (2023-09-10) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/makes': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/microvm': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/n2c': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/nixago': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/nixpkgs': 'github:nixos/nixpkgs/9312b935a538684049cb668885e60f15547d4c5f?narHash=sha256-qlzHvterVRzS8fS0ophQpkh0rqw0abijHEOAKm0HmV0%3D' (2024-02-19) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano': 'github:paisano-nix/core/adcf742bc9463c08764ca9e6955bd5e7dcf3a3fe?narHash=sha256-EpcAmvIS4ErqhXtVEfd2GPpU/E/s8CCRSfYzk6FZ/fY%3D' (2024-02-22) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano/call-flake': 'github:divnix/call-flake/74061f6c241227cd05e79b702db9a300a2e4131a?narHash=sha256-bmhE1TmrJG4ba93l9WQTLuYM53kwGQAjYHRvHOeuxWU%3D' (2023-06-21) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/nixpkgs' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano/nosys': 'github:divnix/nosys/feade0141487801c71ff55623b421ed535dbdefa?narHash=sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI%3D' (2022-11-09) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano/yants': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/yants' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano-tui': 'github:paisano-nix/tui/231761b260587a64817e4ffae3afc15defaa15db?narHash=sha256-R19YURSK%2BMY/Rw6FZnojQS9zuDh%2BOoTAyngQAjjoubc%3D' (2024-02-22) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/terranix': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/blank' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/yants': 'github:divnix/yants/8f0da0dba57149676aa4817ec0c880fbde7a648d?narHash=sha256-kooxYm3/3ornWtVBNHM3Zh020gACUyFX2G0VQXnB%2Bmk%3D' (2023-06-15) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/std/yants/nixpkgs': follows 'flake-lang/ctl/cardano-nix/cardano-node/std/lib' • Added input 'flake-lang/ctl/cardano-nix/cardano-node/utils': 'github:numtide/flake-utils/b1d9ab70662946ef0850d488da1c9019f3a9752a?narHash=sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ%3D' (2024-03-11) • Added input 'flake-lang/ctl/cardano-nix/cardano-node/utils/systems': 'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e?narHash=sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768%3D' (2023-04-09) • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/CHaP' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/cardano-automation' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/cardano-automation/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/cardano-automation/haskellNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/cardano-automation/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/cardano-automation/tullia' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/cardano-mainnet-mirror' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/cardano-mainnet-mirror/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/customConfig' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/em' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/empty-flake' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/hackageNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/HTTP' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/cabal-32' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/cabal-34' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/cabal-36' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/cardano-shell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/ghc-8.6.5-iohk' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/hackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/hls-1.10' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/hpc-coveralls' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/hydra' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/hydra/nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/hydra/nix/lowdown-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/hydra/nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/hydra/nix/nixpkgs-regression' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/hydra/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/iserv-proxy' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/nixpkgs-2003' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/nixpkgs-2105' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/nixpkgs-2111' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/nixpkgs-2205' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/nixpkgs-2211' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/nixpkgs-unstable' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/old-ghc-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/haskellNix/stackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/hostNixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/iohkNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/iohkNix/blst' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/iohkNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/iohkNix/secp256k1' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/iohkNix/sodium' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/nix2container' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/nix2container/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/nix2container/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/ops-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/std' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix-nomad' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix-nomad/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix-nomad/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix-nomad/gomod2nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix-nomad/gomod2nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix-nomad/gomod2nix/utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix-nomad/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix-nomad/nixpkgs-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix2container' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix2container/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nix2container/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/arion' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/blank' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/devshell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/devshell/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/devshell/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/dmerge' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/dmerge/nixlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/dmerge/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/incl' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/incl/nixlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/makes' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/microvm' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/n2c' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/n2c/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/n2c/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/nixago' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/nixago/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/nixago/nixago-exts' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/nixago/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/nosys' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/tullia/std/yants/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.1.1/utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/CHaP' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/haskellNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix-nomad' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix-nomad/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix-nomad/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix-nomad/gomod2nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix-nomad/gomod2nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix-nomad/gomod2nix/utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix-nomad/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix-nomad/nixpkgs-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix2container' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix2container/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nix2container/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/arion' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/blank' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/devshell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/devshell/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/devshell/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/dmerge' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/dmerge/nixlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/dmerge/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/incl' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/incl/nixlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/makes' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/microvm' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/n2c' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/n2c/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/n2c/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/nixago' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/nixago/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/nixago/nixago-exts' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/nixago/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/paisano' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/paisano/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/paisano/nosys' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/paisano/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/paisano-tui' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/paisano-tui/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/paisano-tui/std' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-automation/tullia/std/yants/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-mainnet-mirror' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/cardano-mainnet-mirror/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/customConfig' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/em' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/empty-flake' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/hackageNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/HTTP' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/cabal-32' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/cabal-34' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/cabal-36' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/cardano-shell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/ghc-8.6.5-iohk' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/ghc98X' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/ghc99' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hls-1.10' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hls-2.0' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hls-2.2' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hls-2.3' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hls-2.4' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hpc-coveralls' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hydra' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hydra/nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hydra/nix/lowdown-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hydra/nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hydra/nix/nixpkgs-regression' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/hydra/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/iserv-proxy' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/nixpkgs-2003' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/nixpkgs-2105' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/nixpkgs-2111' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/nixpkgs-2205' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/nixpkgs-2211' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/nixpkgs-2305' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/nixpkgs-unstable' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/old-ghc-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/haskellNix/stackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/hostNixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/iohkNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/iohkNix/blst' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/iohkNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/iohkNix/secp256k1' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/iohkNix/sodium' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/nix2container' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/nix2container/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/nix2container/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/ops-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/arion' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/blank' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/devshell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/devshell/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/devshell/systems' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/dmerge' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/dmerge/haumea' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/dmerge/nixlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/dmerge/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/haumea' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/haumea/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/incl' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/incl/nixlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/makes' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/microvm' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/n2c' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/n2c/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/n2c/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/nixago' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/nixago/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/nixago/nixago-exts' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/nixago/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano/nosys' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/crane' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/crane/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/crane/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/crane/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/crane/rust-overlay' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/crane/rust-overlay/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/crane/rust-overlay/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/fenix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/fenix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/fenix/rust-analyzer-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/paisano-actions' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/paisano-actions/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-mdbook-preprocessor/std' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-tui' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-tui/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/paisano-tui/std' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/std/yants/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node-8.7.3/utils' • Updated input 'flake-lang/ctl/cardano-nix/crane': 'github:ipetkov/crane/17e5109bb1d9fb393d70fba80988f7d70d1ded1a?narHash=sha256-fs/PVa3H5dS1//4BjecWi3nitXm5fRObx0JxXIAo%2BJA%3D' (2024-07-15) → 'github:ipetkov/crane/ef80ead953c1b28316cc3f8613904edc2eb90c28?narHash=sha256-HQkYvKvaLQqNa10KEFGgWHfMAbWBfFp%2B4cAgkut%2BNNE%3D' (2024-11-08) • Removed input 'flake-lang/ctl/cardano-nix/crane/nixpkgs' • Updated input 'flake-lang/ctl/cardano-nix/devour-flake': 'github:srid/devour-flake/30a34036b29b0d12989ef6c8be77aa949d85aef5?narHash=sha256-O51F4YFOzlaQAc9b6xjkAqpvrvCtw/Os2M7TU0y4SKQ%3D' (2023-09-07) → 'github:srid/devour-flake/9b96d31a55be119df8496ec5b7369823deec8a1c?narHash=sha256-Cvc84VzvvdmehafnaIPfdPylNWJcDmv79QQh/MH/4Qk%3D' (2024-09-14) • Updated input 'flake-lang/ctl/cardano-nix/devshell': 'github:numtide/devshell/cd4e2fda3150dd2f689caeac07b7f47df5197c31?narHash=sha256-BP2H4c42GThPIhERtTpV1yCtwQHYHEKdRu7pjrmQAwo%3D' (2023-09-29) → 'github:numtide/devshell/dd6b80932022cea34a019e2bb32f6fa9e494dfef?narHash=sha256-xRJ2nPOXb//u1jaBnDP56M7v5ldavjbtR6lfGqSvcKg%3D' (2024-10-07) • Removed input 'flake-lang/ctl/cardano-nix/devshell/systems' • Updated input 'flake-lang/ctl/cardano-nix/flake-parts': 'github:hercules-ci/flake-parts/c9afaba3dfa4085dbd2ccb38dfade5141e33d9d4?narHash=sha256-B2xAZKLkkeRFG5XcHHSXXcP7To9Xzr59KXeZiRf4vdQ%3D' (2023-10-03) → 'github:hercules-ci/flake-parts/506278e768c2a08bec68eb62932193e341f55c90?narHash=sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS%2Bb4tfNFCwE%3D' (2024-11-01) • Updated input 'flake-lang/ctl/cardano-nix/flake-parts/nixpkgs-lib': 'github:NixOS/nixpkgs/f5892ddac112a1e9b3612c39af1b72987ee5783a?dir=lib&narHash=sha256-X3%2BDKYWJm93DRSdC5M6K5hLqzSya9BjibtBsuARoPco%3D' (2023-09-29) → 'https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz?narHash=sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s%3D' (2024-11-01) • Updated input 'flake-lang/ctl/cardano-nix/flake-root': 'github:srid/flake-root/d9a70d9c7a5fd7f3258ccf48da9335e9b47c3937?narHash=sha256-f%2BY0YhVCIJ06LemO%2B3Xx00lIcqQxSKJHXT/yk1RTKxw%3D' (2023-08-22) → 'github:srid/flake-root/b759a56851e10cb13f6b8e5698af7b59c44be26e?narHash=sha256-rBtQ8gg%2BDn4Sx/s%2Bpvjdq3CB2wQNzx9XGFq/JVGCB6k%3D' (2024-08-14) • Updated input 'flake-lang/ctl/cardano-nix/hercules-ci-effects': 'github:mlabs-haskell/hercules-ci-effects/f5ed263ab0585dfb7b067301419fb80d64e8c021?narHash=sha256-yniBB5i1un44uzR4%2BluTWvZ6uGvsHSYIBiDZ8Xox4nQ%3D' (2024-03-14) → 'github:mlabs-haskell/hercules-ci-effects/5ad8f9613b735cb4f8222f07ae45ca37bfe76a23?narHash=sha256-OA2LZPTCHyH0PcsNkjeTLvgsn4JmsV2VTvXQacHeUZU%3D' (2024-05-02) • Updated input 'flake-lang/ctl/cardano-nix/oura': 'github:txpipe/oura/d94068562d98f43aeef8e224111fbdaeb2bc186c?narHash=sha256-oBvHLxWM2vN351flm7jWjwuatFEK6la/nX9fHNy9/hk%3D' (2024-07-06) → 'github:txpipe/oura/c6bfc5ab66a82cc6a59de5d3a3d3f01f5543b961?narHash=sha256-gZhY/Xh63VLsiGzfpwoKSSmTJwguiRfOjPry%2BcD5pmM%3D' (2024-10-23) • Updated input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix': 'github:cachix/pre-commit-hooks.nix/5df5a70ad7575f6601d91f0efec95dd9bc619431?narHash=sha256-M%2BNg6%2BSePmA8g06CmUZWi1AjG2tFBX9WCXElBHEKnyM%3D' (2024-02-15) → 'github:cachix/pre-commit-hooks.nix/cd1af27aa85026ac759d5d3fccf650abe7e1bbf0?narHash=sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf%2BInnSMT4jlMU%3D' (2024-11-11) • Removed input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix/flake-utils/systems' • Updated input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix/gitignore': 'github:hercules-ci/gitignore.nix/43e1aa1308018f37118e34d3a9cb4f5e75dc11d5?narHash=sha256-gGPa9qWNc6eCXT/%2BZ5/zMkyYOuRZqeFZBDbopNZQkuY%3D' (2023-12-29) → 'github:hercules-ci/gitignore.nix/637db329424fd7e46cf4185293b9cc8c88c95394?narHash=sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs%3D' (2024-02-28) • Updated input 'flake-lang/ctl/cardano-nix/treefmt-nix': 'github:numtide/treefmt-nix/aae39f64f5ecbe89792d05eacea5cb241891292a?narHash=sha256-63N2eBpKaziIy4R44vjpUu8Nz5fCJY7okKrkixvDQmY%3D' (2023-10-15) → 'github:numtide/treefmt-nix/746901bb8dba96d154b66492a29f5db0693dbfcc?narHash=sha256-vK%2Ba09qq19QNu2MlLcvN4qcRctJbqWkX7ahgPZ/%2BmaI%3D' (2024-10-30) • Updated input 'flake-lang/ctl/cardano-node': 'github:input-output-hk/cardano-node/d7abccd4e90c38ff5cd4d6a7839689d888332056?narHash=sha256-7zV11vZ4e81cDIpk9OpkAnYV9EA5WWH134iei3n8%2BS8%3D' (2024-08-29) → 'github:input-output-hk/cardano-node/1f63dbf2ab39e0b32bf6901dc203866d3e37de08?narHash=sha256-Oys38YkpSpB48/H2NseP9kTWXm92a7kjAZtdnorcIEY%3D' (2025-01-06) • Updated input 'flake-lang/ctl/cardano-node/CHaP': 'github:intersectmbo/cardano-haskell-packages/610a202920ffe1d371035d35053152e9a0c77fce?narHash=sha256-/ZHOKRX84tXckstr6rTYyjytF2yfrIpvGujRLyjZfUE%3D' (2024-08-20) → 'github:intersectmbo/cardano-haskell-packages/b9eaf0bbe60ccf64b7afc969b79f9820a4534bcf?narHash=sha256-X6Fp2uU%2B%2B62rgaH4J1pIN5AalfV7f9rM5dmFaByMWqU%3D' (2025-01-02) • Updated input 'flake-lang/ctl/cardano-node/hackageNix': 'github:input-output-hk/hackage.nix/11b43aaf3ff8018897f1b84a3fb60cce9ae7056d?narHash=sha256-IDenOlZc5aph7Jz6xNQXGNnnx896hUYrsRU8mbE4bVw%3D' (2024-08-21) → 'github:input-output-hk/hackage.nix/6dc43e5e01f113ce151056a8f94bce7bb2f13eb9?narHash=sha256-sIglYcw8Dacj4n0bRlUWo%2BNLkDMcVi6vtmKvUyG%2BZrQ%3D' (2024-10-16) • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-2.9' • Updated input 'flake-lang/ctl/cardano-node/iohkNix': 'github:input-output-hk/iohk-nix/eb61f2c14e1f610ec59117ad40f8690cddbf80cb?narHash=sha256-PPcma4tjozwXJAWf%2BYtHUQUulmxwulVlwSQzKItx/n8%3D' (2024-07-24) → 'github:input-output-hk/iohk-nix/86c2bd46e8a08f62ea38ffe77cb4e9c337b42217?narHash=sha256-38uD8SqT557eh5yyRYuthKm1yTtiWzAN0FH7L/01QKM%3D' (2024-10-11) • Removed input 'flake-lang/ctl/cardano-node/nix2container' • Removed input 'flake-lang/ctl/cardano-node/nix2container/flake-utils' • Removed input 'flake-lang/ctl/cardano-node/nix2container/flake-utils/systems' • Removed input 'flake-lang/ctl/cardano-node/nix2container/nixpkgs' • Updated input 'flake-lang/ctl/flake-compat': 'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33?narHash=sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U%3D' (2023-10-04) → 'github:edolstra/flake-compat/ff81ac966bb2cae68946d5ed5fc4994f96d0ffec?narHash=sha256-NeCCThCEP3eCl2l/%2B27kNNK7QrwZB1IJCrXfrbv5oqU%3D' (2024-12-04) • Removed input 'flake-lang/ctl/hackage-nix' • Removed input 'flake-lang/ctl/haskell-nix' • Removed input 'flake-lang/ctl/haskell-nix/HTTP' • Removed input 'flake-lang/ctl/haskell-nix/cabal-32' • Removed input 'flake-lang/ctl/haskell-nix/cabal-34' • Removed input 'flake-lang/ctl/haskell-nix/cabal-36' • Removed input 'flake-lang/ctl/haskell-nix/cardano-shell' • Removed input 'flake-lang/ctl/haskell-nix/flake-compat' • Removed input 'flake-lang/ctl/haskell-nix/ghc-8.6.5-iohk' • Removed input 'flake-lang/ctl/haskell-nix/hackage' • Removed input 'flake-lang/ctl/haskell-nix/hls-1.10' • Removed input 'flake-lang/ctl/haskell-nix/hls-2.0' • Removed input 'flake-lang/ctl/haskell-nix/hls-2.2' • Removed input 'flake-lang/ctl/haskell-nix/hls-2.3' • Removed input 'flake-lang/ctl/haskell-nix/hls-2.4' • Removed input 'flake-lang/ctl/haskell-nix/hls-2.5' • Removed input 'flake-lang/ctl/haskell-nix/hls-2.6' • Removed input 'flake-lang/ctl/haskell-nix/hls-2.7' • Removed input 'flake-lang/ctl/haskell-nix/hls-2.8' • Removed input 'flake-lang/ctl/haskell-nix/hls-2.9' • Removed input 'flake-lang/ctl/haskell-nix/hpc-coveralls' • Removed input 'flake-lang/ctl/haskell-nix/hydra' • Removed input 'flake-lang/ctl/haskell-nix/hydra/nix' • Removed input 'flake-lang/ctl/haskell-nix/hydra/nix/lowdown-src' • Removed input 'flake-lang/ctl/haskell-nix/hydra/nix/nixpkgs' • Removed input 'flake-lang/ctl/haskell-nix/hydra/nix/nixpkgs-regression' • Removed input 'flake-lang/ctl/haskell-nix/hydra/nixpkgs' • Removed input 'flake-lang/ctl/haskell-nix/iserv-proxy' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs-2003' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs-2105' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs-2111' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs-2205' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs-2211' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs-2305' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs-2311' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs-2405' • Removed input 'flake-lang/ctl/haskell-nix/nixpkgs-unstable' • Removed input 'flake-lang/ctl/haskell-nix/old-ghc-nix' • Removed input 'flake-lang/ctl/haskell-nix/stackage' • Updated input 'flake-lang/ctl/hercules-ci-effects': 'github:hercules-ci/hercules-ci-effects/dba4367b9a9d9615456c430a6d6af716f6e84cef?narHash=sha256-MHHrHasTngp7EYQOObHJ1a/IsRF%2BwodHqOckhH6uZbk%3D' (2024-08-29) → 'github:hercules-ci/hercules-ci-effects/afd0a42e8c61ebb56899315ee4084a8b2e4ff425?narHash=sha256-JTBWmyGf8K1Rwb%2BgviHIUzRJk/sITtT%2B72HXFkTZUjo%3D' (2025-01-15) • Updated input 'flake-lang/ctl/hercules-ci-effects/flake-parts': 'github:hercules-ci/flake-parts/9126214d0a59633752a136528f5f3b9aa8565b7d?narHash=sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm%2BGpZNw%3D' (2024-04-01) → 'github:hercules-ci/flake-parts/b905f6fc23a9051a6e1b741e1438dbfc0634c6de?narHash=sha256-%2Bhu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU%3D' (2025-01-06) • Updated input 'flake-lang/ctl/hercules-ci-effects/nixpkgs': 'github:NixOS/nixpkgs/6143fc5eeb9c4f00163267708e26191d1e918932?narHash=sha256-%2Bz/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y%3D' (2024-04-21) → 'github:NixOS/nixpkgs/9abb87b552b7f55ac8916b6fc9e5cb486656a2f3?narHash=sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ%3D' (2025-01-13) • Removed input 'flake-lang/ctl/iohk-nix' • Removed input 'flake-lang/ctl/iohk-nix/blst' • Removed input 'flake-lang/ctl/iohk-nix/nixpkgs' • Removed input 'flake-lang/ctl/iohk-nix/secp256k1' • Removed input 'flake-lang/ctl/iohk-nix/sodium' • Updated input 'flake-lang/ctl/nixpkgs': follows 'flake-lang/ctl/haskell-nix/nixpkgs-unstable' → follows 'flake-lang/ctl/cardano-node/nixpkgs' • Updated input 'flake-lang/ctl/nixpkgs-arion': 'github:NixOS/nixpkgs/79eb73f1c49fdfdf75f00b1ee086366380fbc323?narHash=sha256-M6tvBPNDilgXLh9Bfv4U0ih%2BTyrQReeYOLkY%2BU2idy8%3D' (2024-08-30) → 'github:NixOS/nixpkgs/2c62218ab7a0455ca27fc3a7d3a2af496b3580eb?narHash=sha256-Ger8ClHNQ1KBX6LdW9iRbgKiKRuUjnnbDqwMtY73IT0%3D' (2025-01-27) • Updated input 'flake-lang/ctl/ogmios': 'github:CardanoSolutions/ogmios/63a9e9d33eadbca22d1ecc90b9623b962148d174?narHash=sha256-OpUeVbztfLy%2B9d2M5w2Jgx1b/IhDNAQdlr/eP1iKUQI%3D' (2024-07-12) → 'github:CardanoSolutions/ogmios/1b137e49cb158684908dd5933e42de8fe5ab853b?narHash=sha256-JBKxY0tzd0bilfLE7b6wZX9Cn1tIQGNGHCvy18QLvUA%3D' (2024-09-21) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/506278e768c2a08bec68eb62932193e341f55c90?narHash=sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS%2Bb4tfNFCwE%3D' (2024-11-01) → 'github:hercules-ci/flake-parts/32ea77a06711b758da0ad9bd6a844c5740a87abd?narHash=sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm%2BzmZ7vxbJdo%3D' (2025-02-01) • Updated input 'flake-lang/flake-parts/nixpkgs-lib': 'https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz?narHash=sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s%3D' (2024-11-01) → 'https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz?narHash=sha256-vJzFZGaCpnmo7I6i416HaBLpC%2BhvcURh/BQwROcGIp8%3D' (2025-02-01) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/93fdba63d6567643c0dc222fa6b29013a786f9af?narHash=sha256-K2QlvQj0CQyYCPvYM2csTr/jM8wHiLQe4LEXl0CCXA8%3D' (2024-11-24) → 'github:input-output-hk/haskell.nix/cf83ebef39cedaabdda697897fcf49c666168919?narHash=sha256-tQEyWRSlgHmJh35nPkd4hAnParjTroDLcsom4xzhwwI%3D' (2025-02-09) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/1c0d41d9f45b8c6b5007102803a8eaa4353d041c?narHash=sha256-cD%2Bg07FungRIY0djRv6f7eQWSob9H74wGDxxlxlnVT4%3D' (2024-11-24) → 'github:input-output-hk/hackage.nix/3add10ca08103ba53a338e880f6c6c79b8939f30?narHash=sha256-ws4gten6Fv7AhLh3J7R%2BlIhMtpsrRai4HNZbfbL8w3k%3D' (2025-02-09) • Added input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/8196b4cfd8a5f491716f61112f24a3ae5e57693e?narHash=sha256-CAi5o8XT32B1Ny1R55HJ7TLECCdYd4DH5z4SlkGeUZA%3D' (2025-02-09) • Removed input 'flake-lang/haskell-nix/hydra' • Removed input 'flake-lang/haskell-nix/hydra/nix' • Removed input 'flake-lang/haskell-nix/hydra/nix/lowdown-src' • Removed input 'flake-lang/haskell-nix/hydra/nix/nixpkgs' • Removed input 'flake-lang/haskell-nix/hydra/nix/nixpkgs-regression' • Removed input 'flake-lang/haskell-nix/hydra/nixpkgs' • Removed input 'flake-lang/haskell-nix/nixpkgs-2003' • Removed input 'flake-lang/haskell-nix/nixpkgs-2105' • Removed input 'flake-lang/haskell-nix/nixpkgs-2111' • Removed input 'flake-lang/haskell-nix/nixpkgs-2205' • Removed input 'flake-lang/haskell-nix/nixpkgs-2211' • Updated input 'flake-lang/haskell-nix/nixpkgs-2405': 'github:NixOS/nixpkgs/4a3f2d3195b60d07530574988df92e049372c10e?narHash=sha256-VgcLDu4igNT0eYua6OAl9pWCI0cYXhDbR%2BpWP44tte0%3D' (2024-10-18) → 'github:NixOS/nixpkgs/1e7a8f391f1a490460760065fa0630b5520f9cf8?narHash=sha256-HB/FA0%2B1gpSs8%2B/boEavrGJH%2BEq08/R2wWNph1sM1Dg%3D' (2024-12-30) • Added input 'flake-lang/haskell-nix/nixpkgs-2411': 'github:NixOS/nixpkgs/eacdab35066b0bb1c9413c96898e326b76398a81?narHash=sha256-r3fxHvh%2BM/mBgCZXOACzRFPsJdix2QSsKazb7VCXXo0%3D' (2025-01-19) • Updated input 'flake-lang/haskell-nix/nixpkgs-unstable': 'github:NixOS/nixpkgs/86e78d3d2084ff87688da662cf78c2af085d8e73?narHash=sha256-eWPRZAlhf446bKSmzw6x7RWEE4IuZgAp8NW3eXZwRAY%3D' (2024-10-26) → 'github:NixOS/nixpkgs/041c867bad68dfe34b78b2813028a2e2ea70a23c?narHash=sha256-DSenga8XjPaUV5KUFW/i3rNkN7jm9XmguW%2BqQ1ZJTR4%3D' (2025-01-17) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/b68b483a062ed06b0196b23b8ddba7ffdc789e67?narHash=sha256-FZcr31TrkwiRY%2BDKSBebPune/D0mRn1Lt7rd2hUVIZQ%3D' (2024-11-24) → 'github:input-output-hk/stackage.nix/8685fcc52063cfcb5848ba88ee59f45a059a3b56?narHash=sha256-xurmyIYOkCID%2BcE3xFJGEQziH9XthkmaJeRDnUQxA84%3D' (2025-02-09) • Updated input 'flake-lang/hci-effects': 'github:hercules-ci/hercules-ci-effects/b89ac4d66d618b915b1f0a408e2775fe3821d141?narHash=sha256-mnynlrPeiW0nUQ8KGZHb3WyxAxA3Ye/BH8gMjdoKP6E%3D' (2024-11-06) → 'github:hercules-ci/hercules-ci-effects/6d1b6d5d59758b4f5f05745f774fc13cdc59da43?narHash=sha256-oJN/yvRL7G0WlR/hTkQIjFbPkzCV%2BsFnNB/38Tb9RL4%3D' (2025-01-30) • Updated input 'flake-lang/hci-effects/flake-parts': 'github:hercules-ci/flake-parts/9126214d0a59633752a136528f5f3b9aa8565b7d?narHash=sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm%2BGpZNw%3D' (2024-04-01) → 'github:hercules-ci/flake-parts/b905f6fc23a9051a6e1b741e1438dbfc0634c6de?narHash=sha256-%2Bhu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU%3D' (2025-01-06) • Updated input 'flake-lang/hci-effects/nixpkgs': 'github:NixOS/nixpkgs/6143fc5eeb9c4f00163267708e26191d1e918932?narHash=sha256-%2Bz/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y%3D' (2024-04-21) → 'github:NixOS/nixpkgs/9abb87b552b7f55ac8916b6fc9e5cb486656a2f3?narHash=sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ%3D' (2025-01-13) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/262cb2aec2ddd914124bab90b06fe24a1a74d02c?narHash=sha256-lURsE6HdJX0alscWhbzCWyLRK8GpAgKuXeIgX31Kfqg%3D' (2024-11-22) → 'github:input-output-hk/iohk-nix/e26038d47df5d17187288fd7c8f5b915c9447b2e?narHash=sha256-oyPD/zIhs5AUEdYXZHluMAOmT5ynJSgjV2bNIXt5aKE%3D' (2025-02-06) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/c9bcd0e639ac3b2ae527ee786b579f2a35122f38?narHash=sha256-etp4MJgiW/XTOyjadi4ScLSuTDvvOPXoeAj10oC4nyM%3D' (2024-11-24) → 'github:NixOS/nixpkgs/726ac7dbc8d5c1a344da1b78bd6726034bf9a4ec?narHash=sha256-bZd1hkiuhJ3FICjzJQ0ooK4yzOkLWDd9ba9XFIZjFJw%3D' (2025-02-09) • Updated input 'flake-lang/plutarch': 'github:plutonomicon/plutarch-plutus/7207edd0cbc6ad48248bd207abcc63cc3c6a606f?narHash=sha256-KG%2BFYB5eSCbedj4zA7xyV5vj5DmUhLCeh1mvb7LFuZ4%3D' (2024-11-22) → 'github:plutonomicon/plutarch-plutus/8d7f19963d2aa6255a5e39ab8eb8cd88338ee864?narHash=sha256-/3Em33hPDu88NOUD/XAzW2OeIq4IgbXAtGbak/QBF/8%3D' (2025-02-07) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/3308484d1a443fc5bc92012435d79e80458fe43c?narHash=sha256-mnTbjpdqF0luOkou8ZFi2asa1N3AA2CchR/RqCNmsGE%3D' (2024-11-19) → 'github:cachix/pre-commit-hooks.nix/9364dc02281ce2d37a1f55b6e51f7c0f65a75f17?narHash=sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg%3D' (2025-01-21) • Removed input 'flake-lang/pre-commit-hooks/nixpkgs-stable' • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/ed8aa5b64f7d36d9338eb1d0a3bb60cf52069a72?narHash=sha256-RHt12f/slrzDpSL7SSkydh8wUE4Nr4r23HlpWywed9E%3D' (2024-11-23) → 'github:oxalica/rust-overlay/f61820fa2c3844d6940cce269a6afdec30aa2e6c?narHash=sha256-3DtLkjQFlIUOXw3TBH%2BiP0jglpqO6Lv2KaQc%2BADg39I%3D' (2025-02-09) • Updated input 'flake-lang/rust-overlay/nixpkgs': 'github:NixOS/nixpkgs/b69de56fac8c2b6f8fd27f2eca01dcda8e0a4221?narHash=sha256-f0SBJz1eZ2yOuKUr5CA9BHULGXVSn6miBuUWdTyhUhU%3D' (2024-10-10) → 'github:NixOS/nixpkgs/4bc9c909d9ac828a039f288cf872d16d38185db8?narHash=sha256-nIYdTAiKIGnFNugbomgBJR%2BXv5F1ZQU%2BHfaBqJKroC0%3D' (2025-01-08) • Updated input 'hci-effects': 'github:hercules-ci/hercules-ci-effects/56f8ea8d502c87cf62444bec4ee04512e8ea24ea?narHash=sha256-nMMQXREGvLOLvUa0ByhYFdaL0Jov0t1wzLbKjr05P2w%3D' (2024-12-04) → 'github:hercules-ci/hercules-ci-effects/06519cec8fb32d219006da6eacd255504a9996af?narHash=sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI%3D' (2025-02-15) • Updated input 'hci-effects/flake-parts': 'github:hercules-ci/flake-parts/205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9?narHash=sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c%3D' (2024-12-04) → 'github:hercules-ci/flake-parts/32ea77a06711b758da0ad9bd6a844c5740a87abd?narHash=sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm%2BzmZ7vxbJdo%3D' (2025-02-01) • Updated input 'hci-effects/nixpkgs': 'github:NixOS/nixpkgs/55d15ad12a74eb7d4646254e13638ad0c4128776?narHash=sha256-M1%2BuCoV5igihRfcUKrr1riygbe73/dzNnzPsmaLCmpo%3D' (2024-12-03) → 'github:NixOS/nixpkgs/2ff53fe64443980e139eaa286017f53f88336dd0?narHash=sha256-%2B/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc%3D' (2025-02-13) --- flake.lock | 9569 ++++++++++++++-------------------------------------- 1 file changed, 2540 insertions(+), 7029 deletions(-) diff --git a/flake.lock b/flake.lock index f3127c93..bd42b057 100644 --- a/flake.lock +++ b/flake.lock @@ -3,28 +3,11 @@ "CHaP": { "flake": false, "locked": { - "lastModified": 1724915143, - "narHash": "sha256-SKluKP0iuRTYMQWzkxOtqW39+1zjw6oeZY+J8RJytGM=", - "owner": "input-output-hk", - "repo": "cardano-haskell-packages", - "rev": "92b3a071083372209af9c89c936f4f184ad5e3f6", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "repo", - "repo": "cardano-haskell-packages", - "type": "github" - } - }, - "CHaP_2": { - "flake": false, - "locked": { - "lastModified": 1702906471, - "narHash": "sha256-br+hVo3R6nfmiSEPXcLKhIX4Kg5gcK2PjzjmvQsuUp8=", + "lastModified": 1730824761, + "narHash": "sha256-Kv99PeYWdqmj5OStnp6kE6fjHbx6irTYyEPoFuukfHU=", "owner": "IntersectMBO", "repo": "cardano-haskell-packages", - "rev": "48a359ac3f1d437ebaa91126b20e15a65201f004", + "rev": "d3d36220528058f9a24cff43fc723e60f6a786ad", "type": "github" }, "original": { @@ -34,48 +17,31 @@ "type": "github" } }, - "CHaP_3": { - "flake": false, - "locked": { - "lastModified": 1686070892, - "narHash": "sha256-0yAYqvCg2/aby4AmW0QQK9RKnU1siQczfbUC6hOU02w=", - "owner": "input-output-hk", - "repo": "cardano-haskell-packages", - "rev": "596cf203a0a1ba252a083a79d384325000faeb49", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "repo", - "repo": "cardano-haskell-packages", - "type": "github" - } - }, - "CHaP_4": { + "CHaP_2": { "flake": false, "locked": { - "lastModified": 1702593630, - "narHash": "sha256-IWu27+sfPtazjIZiWLUm8G4BKvjXmIL+/1XT/ETnfhg=", - "owner": "input-output-hk", + "lastModified": 1730295876, + "narHash": "sha256-ijnHTQ6eKIQ9FpEqDKt6c7vuFYN8aOBDhonp67utx2s=", + "owner": "intersectmbo", "repo": "cardano-haskell-packages", - "rev": "9783a177efcea5beb8808aab7513098bdab185ba", + "rev": "25591f43ab943d5a070db5e8a2b9ff3a499d4d92", "type": "github" }, "original": { - "owner": "input-output-hk", + "owner": "intersectmbo", "ref": "repo", "repo": "cardano-haskell-packages", "type": "github" } }, - "CHaP_5": { + "CHaP_3": { "flake": false, "locked": { - "lastModified": 1724197463, - "narHash": "sha256-/ZHOKRX84tXckstr6rTYyjytF2yfrIpvGujRLyjZfUE=", + "lastModified": 1735857786, + "narHash": "sha256-X6Fp2uU++62rgaH4J1pIN5AalfV7f9rM5dmFaByMWqU=", "owner": "intersectmbo", "repo": "cardano-haskell-packages", - "rev": "610a202920ffe1d371035d35053152e9a0c77fce", + "rev": "b9eaf0bbe60ccf64b7afc969b79f9820a4534bcf", "type": "github" }, "original": { @@ -85,7 +51,7 @@ "type": "github" } }, - "CHaP_6": { + "CHaP_4": { "flake": false, "locked": { "lastModified": 1683268896, @@ -182,150 +148,6 @@ "type": "github" } }, - "HTTP_6": { - "flake": false, - "locked": { - "lastModified": 1451647621, - "narHash": "sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts=", - "owner": "phadej", - "repo": "HTTP", - "rev": "9bc0996d412fef1787449d841277ef663ad9a915", - "type": "github" - }, - "original": { - "owner": "phadej", - "repo": "HTTP", - "type": "github" - } - }, - "HTTP_7": { - "flake": false, - "locked": { - "lastModified": 1451647621, - "narHash": "sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts=", - "owner": "phadej", - "repo": "HTTP", - "rev": "9bc0996d412fef1787449d841277ef663ad9a915", - "type": "github" - }, - "original": { - "owner": "phadej", - "repo": "HTTP", - "type": "github" - } - }, - "HTTP_8": { - "flake": false, - "locked": { - "lastModified": 1451647621, - "narHash": "sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts=", - "owner": "phadej", - "repo": "HTTP", - "rev": "9bc0996d412fef1787449d841277ef663ad9a915", - "type": "github" - }, - "original": { - "owner": "phadej", - "repo": "HTTP", - "type": "github" - } - }, - "ameba-src": { - "flake": false, - "locked": { - "lastModified": 1679041484, - "narHash": "sha256-pc9mtVR/PBhM5l1PnDkm+y+McxbrfAmQzxmLi761VF4=", - "owner": "crystal-ameba", - "repo": "ameba", - "rev": "7c74d196d6d9a496a81a0c7b79ef44f39faf41b8", - "type": "github" - }, - "original": { - "owner": "crystal-ameba", - "ref": "v1.4.3", - "repo": "ameba", - "type": "github" - } - }, - "auth-keys-hub": { - "inputs": { - "crystal": "crystal", - "flake-parts": "flake-parts_2", - "inclusive": "inclusive", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "cardano-parts", - "nixpkgs" - ], - "statix": "statix", - "treefmt-nix": "treefmt-nix" - }, - "locked": { - "lastModified": 1691483346, - "narHash": "sha256-wvn84eGcc+PMbq/qSCWcZ/kV7/bjwuGOVSn/9rGaaKw=", - "owner": "input-output-hk", - "repo": "auth-keys-hub", - "rev": "ab7c79f49886b8f24cfae4b967a59ea62af9156e", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "auth-keys-hub", - "type": "github" - } - }, - "bats-assert": { - "flake": false, - "locked": { - "lastModified": 1636059754, - "narHash": "sha256-ewME0l27ZqfmAwJO4h5biTALc9bDLv7Bl3ftBzBuZwk=", - "owner": "bats-core", - "repo": "bats-assert", - "rev": "34551b1d7f8c7b677c1a66fc0ac140d6223409e5", - "type": "github" - }, - "original": { - "owner": "bats-core", - "repo": "bats-assert", - "type": "github" - } - }, - "bats-support": { - "flake": false, - "locked": { - "lastModified": 1548869839, - "narHash": "sha256-Gr4ntadr42F2Ks8Pte2D4wNDbijhujuoJi4OPZnTAZU=", - "owner": "bats-core", - "repo": "bats-support", - "rev": "d140a65044b2d6810381935ae7f0c94c7023c8c3", - "type": "github" - }, - "original": { - "owner": "bats-core", - "repo": "bats-support", - "type": "github" - } - }, - "bdwgc-src": { - "flake": false, - "locked": { - "lastModified": 1661523039, - "narHash": "sha256-UYJQGeSykmfydGAmTlNJNyAPBasBkddOSoopBHiY7TI=", - "owner": "ivmai", - "repo": "bdwgc", - "rev": "cd1fbc1dbfd2cc888436944dd2784f39820698d7", - "type": "github" - }, - "original": { - "owner": "ivmai", - "ref": "v8.2.2", - "repo": "bdwgc", - "type": "github" - } - }, "blank": { "locked": { "lastModified": 1625557891, @@ -401,21 +223,6 @@ "type": "github" } }, - "blank_6": { - "locked": { - "lastModified": 1625557891, - "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", - "owner": "divnix", - "repo": "blank", - "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "blank", - "type": "github" - } - }, "blockfrost": { "inputs": { "nixpkgs": "nixpkgs" @@ -440,16 +247,16 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1716466734, - "narHash": "sha256-h1LdfN/2KlD/XRjgj7rDNRInxSKZCOx6OF4jak/3c/E=", + "lastModified": 1730408279, + "narHash": "sha256-YeSPvCrfc0OmMqhzGN/WXcBSfXIlnEnqWemzqQTz+zw=", "owner": "blockfrost", "repo": "blockfrost-backend-ryo", - "rev": "7204204615be69b2f298ddf11f9a23dbbb184e55", + "rev": "30ec8cf23d9c222199dc5afba9b79b5bfeec3337", "type": "github" }, "original": { "owner": "blockfrost", - "ref": "v2.0.3", + "ref": "v2.2.4", "repo": "blockfrost-backend-ryo", "type": "github" } @@ -457,89 +264,21 @@ "blst": { "flake": false, "locked": { - "lastModified": 1656163412, - "narHash": "sha256-xero1aTe2v4IhWIJaEDUsVDOfE77dOV5zKeHWntHogY=", + "lastModified": 1691598027, + "narHash": "sha256-oqljy+ZXJAXEB/fJtmB8rlAr4UXM+Z2OkDa20gpILNA=", "owner": "supranational", "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", + "rev": "3dd0f804b1819e5d03fb22ca2e6fac105932043a", "type": "github" }, "original": { "owner": "supranational", + "ref": "v0.3.11", "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", "type": "github" } }, "blst_2": { - "flake": false, - "locked": { - "lastModified": 1656163412, - "narHash": "sha256-xero1aTe2v4IhWIJaEDUsVDOfE77dOV5zKeHWntHogY=", - "owner": "supranational", - "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", - "type": "github" - }, - "original": { - "owner": "supranational", - "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", - "type": "github" - } - }, - "blst_3": { - "flake": false, - "locked": { - "lastModified": 1656163412, - "narHash": "sha256-xero1aTe2v4IhWIJaEDUsVDOfE77dOV5zKeHWntHogY=", - "owner": "supranational", - "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", - "type": "github" - }, - "original": { - "owner": "supranational", - "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", - "type": "github" - } - }, - "blst_4": { - "flake": false, - "locked": { - "lastModified": 1656163412, - "narHash": "sha256-xero1aTe2v4IhWIJaEDUsVDOfE77dOV5zKeHWntHogY=", - "owner": "supranational", - "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", - "type": "github" - }, - "original": { - "owner": "supranational", - "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", - "type": "github" - } - }, - "blst_5": { - "flake": false, - "locked": { - "lastModified": 1656163412, - "narHash": "sha256-xero1aTe2v4IhWIJaEDUsVDOfE77dOV5zKeHWntHogY=", - "owner": "supranational", - "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", - "type": "github" - }, - "original": { - "owner": "supranational", - "repo": "blst", - "rev": "03b5124029979755c752eec45f3c29674b558446", - "type": "github" - } - }, - "blst_6": { "flake": false, "locked": { "lastModified": 1691598027, @@ -556,7 +295,7 @@ "type": "github" } }, - "blst_7": { + "blst_3": { "flake": false, "locked": { "lastModified": 1691598027, @@ -573,7 +312,7 @@ "type": "github" } }, - "blst_8": { + "blst_4": { "flake": false, "locked": { "lastModified": 1656163412, @@ -590,7 +329,7 @@ "type": "github" } }, - "blst_9": { + "blst_5": { "flake": false, "locked": { "lastModified": 1691598027, @@ -692,58 +431,58 @@ "type": "github" } }, - "cabal-32_6": { + "cabal-34": { "flake": false, "locked": { - "lastModified": 1603716527, - "narHash": "sha256-X0TFfdD4KZpwl0Zr6x+PLxUt/VyKQfX7ylXHdmZIL+w=", + "lastModified": 1645834128, + "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", "owner": "haskell", "repo": "cabal", - "rev": "48bf10787e27364730dd37a42b603cee8d6af7ee", + "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", "type": "github" }, "original": { "owner": "haskell", - "ref": "3.2", + "ref": "3.4", "repo": "cabal", "type": "github" } }, - "cabal-32_7": { + "cabal-34_2": { "flake": false, "locked": { - "lastModified": 1603716527, - "narHash": "sha256-X0TFfdD4KZpwl0Zr6x+PLxUt/VyKQfX7ylXHdmZIL+w=", + "lastModified": 1645834128, + "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", "owner": "haskell", "repo": "cabal", - "rev": "48bf10787e27364730dd37a42b603cee8d6af7ee", + "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", "type": "github" }, "original": { "owner": "haskell", - "ref": "3.2", + "ref": "3.4", "repo": "cabal", "type": "github" } }, - "cabal-32_8": { + "cabal-34_3": { "flake": false, "locked": { - "lastModified": 1603716527, - "narHash": "sha256-X0TFfdD4KZpwl0Zr6x+PLxUt/VyKQfX7ylXHdmZIL+w=", + "lastModified": 1645834128, + "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", "owner": "haskell", "repo": "cabal", - "rev": "48bf10787e27364730dd37a42b603cee8d6af7ee", + "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", "type": "github" }, "original": { "owner": "haskell", - "ref": "3.2", + "ref": "3.4", "repo": "cabal", "type": "github" } }, - "cabal-34": { + "cabal-34_4": { "flake": false, "locked": { "lastModified": 1645834128, @@ -760,109 +499,7 @@ "type": "github" } }, - "cabal-34_2": { - "flake": false, - "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", - "type": "github" - } - }, - "cabal-34_3": { - "flake": false, - "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", - "type": "github" - } - }, - "cabal-34_4": { - "flake": false, - "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", - "type": "github" - } - }, - "cabal-34_5": { - "flake": false, - "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", - "type": "github" - } - }, - "cabal-34_6": { - "flake": false, - "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", - "type": "github" - } - }, - "cabal-34_7": { - "flake": false, - "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", - "type": "github" - } - }, - "cabal-34_8": { + "cabal-34_5": { "flake": false, "locked": { "lastModified": 1645834128, @@ -964,57 +601,6 @@ "type": "github" } }, - "cabal-36_6": { - "flake": false, - "locked": { - "lastModified": 1669081697, - "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", - "owner": "haskell", - "repo": "cabal", - "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "3.6", - "repo": "cabal", - "type": "github" - } - }, - "cabal-36_7": { - "flake": false, - "locked": { - "lastModified": 1669081697, - "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", - "owner": "haskell", - "repo": "cabal", - "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "3.6", - "repo": "cabal", - "type": "github" - } - }, - "cabal-36_8": { - "flake": false, - "locked": { - "lastModified": 1669081697, - "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", - "owner": "haskell", - "repo": "cabal", - "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "3.6", - "repo": "cabal", - "type": "github" - } - }, "call-flake": { "locked": { "lastModified": 1687380775, @@ -1030,45 +616,39 @@ "type": "github" } }, - "capkgs": { + "call-flake_2": { "locked": { - "lastModified": 1697123727, - "narHash": "sha256-uSXZAELJF5EfivH9qyLssBUAvhcf3RM9sKhD3W2mdhc=", - "owner": "input-output-hk", - "repo": "capkgs", - "rev": "b197e225592dfe38afb80c94b628d99968c0541d", + "lastModified": 1687380775, + "narHash": "sha256-bmhE1TmrJG4ba93l9WQTLuYM53kwGQAjYHRvHOeuxWU=", + "owner": "divnix", + "repo": "call-flake", + "rev": "74061f6c241227cd05e79b702db9a300a2e4131a", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "capkgs", + "owner": "divnix", + "repo": "call-flake", "type": "github" } }, "cardano-automation": { "inputs": { - "flake-utils": "flake-utils_4", + "flake-utils": "flake-utils", "haskellNix": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", "haskellNix" ], "nixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", "nixpkgs" ], - "tullia": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia" - ] + "tullia": "tullia" }, "locked": { "lastModified": 1679408951, @@ -1086,40 +666,7 @@ }, "cardano-automation_2": { "inputs": { - "flake-utils": "flake-utils_9", - "haskellNix": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "haskellNix" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "nixpkgs" - ], - "tullia": "tullia_2" - }, - "locked": { - "lastModified": 1679408951, - "narHash": "sha256-xM78upkrXjRu/739V/IxFrA9m+6rvgOiolt4ReKLAog=", - "owner": "input-output-hk", - "repo": "cardano-automation", - "rev": "628f135d243d4a9e388c187e4c6179246038ee72", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "cardano-automation", - "type": "github" - } - }, - "cardano-automation_3": { - "inputs": { - "flake-utils": "flake-utils_16", + "flake-utils": "flake-utils_5", "haskellNix": [ "flake-lang", "ctl", @@ -1132,7 +679,7 @@ "cardano-node", "nixpkgs" ], - "tullia": "tullia_3" + "tullia": "tullia_2" }, "locked": { "lastModified": 1679408951, @@ -1151,59 +698,24 @@ "cardano-configurations": { "flake": false, "locked": { - "lastModified": 1721870874, - "narHash": "sha256-qiReN+xxtbb4kEfdIWbBcqcJpPGD8he0p/TVD7U3CqM=", - "owner": "input-output-hk", - "repo": "cardano-configurations", - "rev": "7969a73e5c7ee1f3b2a40274b34191fdd8de170b", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "cardano-configurations", - "rev": "7969a73e5c7ee1f3b2a40274b34191fdd8de170b", - "type": "github" - } - }, - "cardano-configurations-8.1.1": { - "flake": false, - "locked": { - "lastModified": 1692193634, - "narHash": "sha256-cKw+iXKoMNrfN8M34/CtUelUZVLktVtzNzOYHI20dC0=", + "lastModified": 1734139735, + "narHash": "sha256-BHabDNuHn9RgIPk0vjtkrFPrwTYfwVeJi9+Irn8LF+4=", "owner": "input-output-hk", "repo": "cardano-configurations", - "rev": "9b69b59ef2fb2838855017f19af57b38c5d4abe4", + "rev": "a913d87246dc2484562a00c86e5f9c74a20e82ce", "type": "github" }, "original": { "owner": "input-output-hk", "repo": "cardano-configurations", - "rev": "9b69b59ef2fb2838855017f19af57b38c5d4abe4", - "type": "github" - } - }, - "cardano-configurations-8.7.3": { - "flake": false, - "locked": { - "lastModified": 1702085095, - "narHash": "sha256-IJChESftdO2tj2pRB+82xMaLP/RqyKHzttE7QMLqvBQ=", - "owner": "input-output-hk", - "repo": "cardano-configurations", - "rev": "21249e0d5c68b4e8f3661b250aa8272a8785d678", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "cardano-configurations", - "rev": "21249e0d5c68b4e8f3661b250aa8272a8785d678", + "rev": "a913d87246dc2484562a00c86e5f9c74a20e82ce", "type": "github" } }, "cardano-db-sync": { "inputs": { - "CHaP": "CHaP_2", - "cardano-parts": "cardano-parts", - "flake-compat": "flake-compat_4", + "CHaP": "CHaP", + "flake-compat": "flake-compat", "hackageNix": "hackageNix", "haskellNix": "haskellNix", "iohkNix": "iohkNix", @@ -1218,133 +730,63 @@ "utils": "utils" }, "locked": { - "lastModified": 1707925775, - "narHash": "sha256-z3YUrUImpV/wmJi+pfw6YuhBw+2Xd3jGlSWk7WI69/4=", + "lastModified": 1731069075, + "narHash": "sha256-EESfv4KVXjYokTMQLwJGkhOq6gskiXCjF3rfDNDaeXQ=", "owner": "intersectmbo", "repo": "cardano-db-sync", - "rev": "ed3dc8bbb79f07c26ec43f10bad661b0bef3b915", + "rev": "5b131e97210cf603a3aca5ddca7d1420f9cabeec", "type": "github" }, "original": { "owner": "intersectmbo", - "ref": "13.2.0.1", + "ref": "13.6.0.1", "repo": "cardano-db-sync", "type": "github" } }, - "cardano-db-sync-schema": { + "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1688568916, - "narHash": "sha256-XTGTi3PzCcbLL+63JSXTe7mQmGKB0YgEoW1VpqdX2d0=", + "lastModified": 1738981776, + "narHash": "sha256-oCObuK/TY71lL+vDiRT0/Hhrsq4GRC7n8kcKBeonoUk=", "owner": "input-output-hk", - "repo": "cardano-db-sync", - "rev": "6e69a80797f2d68423b25ca7787e81533b367e42", + "repo": "cardano-haskell-packages", + "rev": "3167b742cea332e1c978d8ecc69ef8d6bd0d6e19", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "13.1.1.3", - "repo": "cardano-db-sync", + "ref": "repo", + "repo": "cardano-haskell-packages", "type": "github" } }, - "cardano-db-sync-schema-ng": { - "flake": false, + "cardano-mainnet-mirror": { + "inputs": { + "nixpkgs": "nixpkgs_7" + }, "locked": { - "lastModified": 1694078776, - "narHash": "sha256-QBnUDobTwWQmooCNr1WcaAzRbAKokon8lvAN6VQ1u34=", + "lastModified": 1642701714, + "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", "owner": "input-output-hk", - "repo": "cardano-db-sync", - "rev": "b44eb735fe64fe4e8079935df722d0a32a41c2a4", + "repo": "cardano-mainnet-mirror", + "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "sancho-1-1-0", - "repo": "cardano-db-sync", + "ref": "nix", + "repo": "cardano-mainnet-mirror", "type": "github" } }, - "cardano-db-sync-service": { - "flake": false, + "cardano-mainnet-mirror_2": { + "inputs": { + "nixpkgs": "nixpkgs_13" + }, "locked": { - "lastModified": 1688568916, - "narHash": "sha256-XTGTi3PzCcbLL+63JSXTe7mQmGKB0YgEoW1VpqdX2d0=", - "owner": "input-output-hk", - "repo": "cardano-db-sync", - "rev": "6e69a80797f2d68423b25ca7787e81533b367e42", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "13.1.1.3", - "repo": "cardano-db-sync", - "type": "github" - } - }, - "cardano-haskell-packages": { - "flake": false, - "locked": { - "lastModified": 1732134025, - "narHash": "sha256-BBz3q09+DqDMYnLLgqXYyAxj9amVibxuEevHzgqL6UM=", - "owner": "input-output-hk", - "repo": "cardano-haskell-packages", - "rev": "d36fcfb3c0f2632bdaf4637c72e91b93f7eada56", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "repo", - "repo": "cardano-haskell-packages", - "type": "github" - } - }, - "cardano-mainnet-mirror": { - "inputs": { - "nixpkgs": "nixpkgs_15" - }, - "locked": { - "lastModified": 1642701714, - "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", - "owner": "input-output-hk", - "repo": "cardano-mainnet-mirror", - "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "nix", - "repo": "cardano-mainnet-mirror", - "type": "github" - } - }, - "cardano-mainnet-mirror_2": { - "inputs": { - "nixpkgs": "nixpkgs_25" - }, - "locked": { - "lastModified": 1642701714, - "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", - "owner": "input-output-hk", - "repo": "cardano-mainnet-mirror", - "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "nix", - "repo": "cardano-mainnet-mirror", - "type": "github" - } - }, - "cardano-mainnet-mirror_3": { - "inputs": { - "nixpkgs": "nixpkgs_34" - }, - "locked": { - "lastModified": 1642701714, - "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", + "lastModified": 1642701714, + "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", "owner": "input-output-hk", "repo": "cardano-mainnet-mirror", "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", @@ -1360,15 +802,12 @@ "cardano-nix": { "inputs": { "blockfrost": "blockfrost_2", - "cardano-configurations-8.1.1": "cardano-configurations-8.1.1", - "cardano-configurations-8.7.3": "cardano-configurations-8.7.3", "cardano-db-sync": "cardano-db-sync", - "cardano-node-8.1.1": "cardano-node-8.1.1", - "cardano-node-8.7.3": "cardano-node-8.7.3", - "crane": "crane_3", + "cardano-node": "cardano-node", + "crane": "crane_2", "devour-flake": "devour-flake", - "devshell": "devshell_4", - "flake-parts": "flake-parts_5", + "devshell": "devshell_2", + "flake-parts": "flake-parts", "flake-root": "flake-root", "hercules-ci-effects": "hercules-ci-effects", "nixpkgs": [ @@ -1378,14 +817,14 @@ ], "oura": "oura", "pre-commit-hooks-nix": "pre-commit-hooks-nix", - "treefmt-nix": "treefmt-nix_3" + "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1724967699, - "narHash": "sha256-rsj28Jq7DX/YCzykfvy2LJ9y6AE37i3MCyoAFeRHyEM=", + "lastModified": 1733781003, + "narHash": "sha256-N9PCcNkebjoJEF7UYblu1c9qT8ySFaurOqSqTviDGVM=", "owner": "mlabs-haskell", "repo": "cardano.nix", - "rev": "3eb9384b2e1c43d4dcdf2eb23d0210d5d7e612af", + "rev": "92516bb3ba6d45fafafbe51f4ded289853294dcc", "type": "github" }, "original": { @@ -1396,213 +835,94 @@ }, "cardano-node": { "inputs": { - "CHaP": "CHaP_5", - "cardano-automation": "cardano-automation_3", - "cardano-mainnet-mirror": "cardano-mainnet-mirror_3", - "customConfig": "customConfig_3", - "em": "em_3", - "empty-flake": "empty-flake_4", - "flake-compat": "flake-compat_15", - "hackageNix": "hackageNix_4", - "haskellNix": "haskellNix_4", - "hostNixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "nixpkgs" - ], - "iohkNix": "iohkNix_4", - "nix2container": "nix2container_6", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "haskellNix", - "nixpkgs-unstable" - ], - "ops-lib": "ops-lib_3", - "std": "std_5", - "utils": "utils_8" - }, - "locked": { - "lastModified": 1724944858, - "narHash": "sha256-7zV11vZ4e81cDIpk9OpkAnYV9EA5WWH134iei3n8+S8=", - "owner": "input-output-hk", - "repo": "cardano-node", - "rev": "d7abccd4e90c38ff5cd4d6a7839689d888332056", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "cardano-node", - "rev": "d7abccd4e90c38ff5cd4d6a7839689d888332056", - "type": "github" - } - }, - "cardano-node-8.1.1": { - "inputs": { - "CHaP": "CHaP_3", + "CHaP": "CHaP_2", "cardano-automation": "cardano-automation", "cardano-mainnet-mirror": "cardano-mainnet-mirror", "customConfig": "customConfig", "em": "em", - "empty-flake": "empty-flake_2", - "flake-compat": "flake-compat_6", + "empty-flake": "empty-flake", + "flake-compat": "flake-compat_4", "hackageNix": "hackageNix_2", "haskellNix": "haskellNix_2", "hostNixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", "nixpkgs" ], "iohkNix": "iohkNix_2", - "nix2container": "nix2container", "nixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", "haskellNix", "nixpkgs-unstable" ], "ops-lib": "ops-lib", - "std": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "std" - ], - "tullia": "tullia", + "std": "std_2", "utils": "utils_3" }, "locked": { - "lastModified": 1687190129, - "narHash": "sha256-JCa9+QhZ2RVSIKkhz2WCZqTKCgdUSuezWS2YsQ5vhM4=", + "lastModified": 1730468447, + "narHash": "sha256-yNEv7MQEcOPY9I9k9RCzeMfJY6gzuGc7K53GKNHs6v8=", "owner": "intersectmbo", "repo": "cardano-node", - "rev": "6f79e5c3ea109a70cd01910368e011635767305a", + "rev": "01bda2e2cb0a70cd95067d696dbb44665f1d680a", "type": "github" }, "original": { "owner": "intersectmbo", - "ref": "8.1.1", + "ref": "10.1.2", "repo": "cardano-node", "type": "github" } }, - "cardano-node-8.7.3": { + "cardano-node_2": { "inputs": { - "CHaP": "CHaP_4", + "CHaP": "CHaP_3", "cardano-automation": "cardano-automation_2", "cardano-mainnet-mirror": "cardano-mainnet-mirror_2", "customConfig": "customConfig_2", "em": "em_2", - "empty-flake": "empty-flake_3", - "flake-compat": "flake-compat_10", + "empty-flake": "empty-flake_2", + "flake-compat": "flake-compat_8", "hackageNix": "hackageNix_3", "haskellNix": "haskellNix_3", "hostNixpkgs": [ "flake-lang", "ctl", - "cardano-nix", - "cardano-node-8.7.3", + "cardano-node", "nixpkgs" ], "iohkNix": "iohkNix_3", - "nix2container": "nix2container_4", "nixpkgs": [ "flake-lang", "ctl", - "cardano-nix", - "cardano-node-8.7.3", + "cardano-node", "haskellNix", "nixpkgs-unstable" ], "ops-lib": "ops-lib_2", - "std": "std_3", - "utils": "utils_5" - }, - "locked": { - "lastModified": 1702654749, - "narHash": "sha256-fIzSNSKWC7qMRjHUMHfrMnEzHiFu7ac/UUgfofXqaFY=", - "owner": "intersectmbo", - "repo": "cardano-node", - "rev": "a4a8119b59b1fbb9a69c79e1e6900e91292161e7", - "type": "github" + "std": "std_4", + "utils": "utils_6" }, - "original": { - "owner": "intersectmbo", - "ref": "8.7.3", - "repo": "cardano-node", - "type": "github" - } - }, - "cardano-node-service": { - "flake": false, "locked": { - "lastModified": 1690209950, - "narHash": "sha256-d0V8N+y/OarYv6GQycGXnbPly7GeJRBEeE1017qj9eI=", + "lastModified": 1736202991, + "narHash": "sha256-Oys38YkpSpB48/H2NseP9kTWXm92a7kjAZtdnorcIEY=", "owner": "input-output-hk", "repo": "cardano-node", - "rev": "d2d90b48c5577b4412d5c9c9968b55f8ab4b9767", + "rev": "1f63dbf2ab39e0b32bf6901dc203866d3e37de08", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "8.1.2", + "ref": "10.1.4", "repo": "cardano-node", "type": "github" } }, - "cardano-parts": { - "inputs": { - "auth-keys-hub": "auth-keys-hub", - "capkgs": "capkgs", - "cardano-db-sync-schema": "cardano-db-sync-schema", - "cardano-db-sync-schema-ng": "cardano-db-sync-schema-ng", - "cardano-db-sync-service": "cardano-db-sync-service", - "cardano-node-service": "cardano-node-service", - "cardano-wallet-service": "cardano-wallet-service", - "colmena": "colmena", - "empty-flake": "empty-flake", - "flake-parts": "flake-parts_3", - "haskell-nix": "haskell-nix", - "inputs-check": "inputs-check", - "iohk-nix": "iohk-nix", - "iohk-nix-ng": "iohk-nix-ng", - "nix": "nix_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "nixpkgs" - ], - "nixpkgs-unstable": "nixpkgs-unstable_2", - "offchain-metadata-tools-service": "offchain-metadata-tools-service", - "sops-nix": "sops-nix", - "terraform-providers": "terraform-providers", - "terranix": "terranix", - "treefmt-nix": "treefmt-nix_2" - }, - "locked": { - "lastModified": 1697147999, - "narHash": "sha256-mbSWIcmDnt2mlETCNL8MI97nDH1lkOxIxFHKXXfOV28=", - "owner": "input-output-hk", - "repo": "cardano-parts", - "rev": "af8993ee12f78ddfcc31eefe006391669cb11462", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "cardano-parts", - "type": "github" - } - }, "cardano-shell": { "flake": false, "locked": { @@ -1683,316 +1003,85 @@ "type": "github" } }, - "cardano-shell_6": { - "flake": false, - "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", - "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "cardano-shell", - "type": "github" - } - }, - "cardano-shell_7": { - "flake": false, - "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", - "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "cardano-shell", - "type": "github" - } - }, - "cardano-shell_8": { - "flake": false, + "crane": { "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", - "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "lastModified": 1739053031, + "narHash": "sha256-LrMDRuwAlRFD2T4MgBSRd1s2VtOE+Vl1oMCNu3RpPE0=", + "owner": "ipetkov", + "repo": "crane", + "rev": "112e6591b2d6313b1bd05a80a754a8ee42432a7e", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "cardano-shell", + "owner": "ipetkov", + "repo": "crane", "type": "github" } }, - "cardano-wallet-service": { - "flake": false, + "crane_2": { "locked": { - "lastModified": 1689751896, - "narHash": "sha256-ijflgIw+1FpLoxM4Rksf4MJvNqnEPAv3gNWE8zMuefU=", - "owner": "cardano-foundation", - "repo": "cardano-wallet", - "rev": "3f0d2f3abe706958fab8cdc528184068bd0453c9", + "lastModified": 1731098351, + "narHash": "sha256-HQkYvKvaLQqNa10KEFGgWHfMAbWBfFp+4cAgkut+NNE=", + "owner": "ipetkov", + "repo": "crane", + "rev": "ef80ead953c1b28316cc3f8613904edc2eb90c28", "type": "github" }, "original": { - "owner": "cardano-foundation", - "ref": "v2023-07-18", - "repo": "cardano-wallet", + "owner": "ipetkov", + "repo": "crane", "type": "github" } }, - "colmena": { + "ctl": { "inputs": { - "flake-compat": "flake-compat", - "flake-utils": "flake-utils", + "blockfrost": "blockfrost", + "cardano-configurations": "cardano-configurations", + "cardano-nix": "cardano-nix", + "cardano-node": "cardano-node_2", + "db-sync": [ + "flake-lang", + "db-sync-ctl" + ], + "easy-purescript-nix": "easy-purescript-nix", + "flake-compat": "flake-compat_10", + "hercules-ci-effects": "hercules-ci-effects_2", "nixpkgs": [ "flake-lang", "ctl", - "cardano-nix", - "cardano-db-sync", - "cardano-parts", + "cardano-node", "nixpkgs" ], - "stable": "stable" + "nixpkgs-arion": "nixpkgs-arion", + "ogmios": "ogmios" }, "locked": { - "lastModified": 1684127108, - "narHash": "sha256-01bfuSY4gnshhtqA1EJCw2CMsKkAx+dHS+sEpQ2+EAQ=", - "owner": "zhaofengli", - "repo": "colmena", - "rev": "5fdd743a11e7291bd8ac1e169d62ba6156c99be4", + "lastModified": 1738686727, + "narHash": "sha256-iRxalPymdJBI34h8j79uY2R09nSKeuha+3VJ7r11ZKE=", + "owner": "plutonomicon", + "repo": "cardano-transaction-lib", + "rev": "53f42ed89f9a2c7989022bcfcede702cf6618d25", "type": "github" }, "original": { - "owner": "zhaofengli", - "ref": "v0.4.0", - "repo": "colmena", + "owner": "plutonomicon", + "ref": "develop", + "repo": "cardano-transaction-lib", "type": "github" } }, - "crane": { + "customConfig": { "locked": { - "lastModified": 1732407143, - "narHash": "sha256-qJOGDT6PACoX+GbNH2PPx2ievlmtT1NVeTB80EkRLys=", - "owner": "ipetkov", - "repo": "crane", - "rev": "f2b4b472983817021d9ffb60838b2b36b9376b20", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "owner": "input-output-hk", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", "type": "github" }, "original": { - "owner": "ipetkov", - "repo": "crane", - "type": "github" - } - }, - "crane_2": { - "inputs": { - "flake-compat": "flake-compat_12", - "flake-utils": "flake-utils_14", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "paisano-mdbook-preprocessor", - "nixpkgs" - ], - "rust-overlay": "rust-overlay" - }, - "locked": { - "lastModified": 1676162383, - "narHash": "sha256-krUCKdz7ebHlFYm/A7IbKDnj2ZmMMm3yIEQcooqm7+E=", - "owner": "ipetkov", - "repo": "crane", - "rev": "6fb400ec631b22ccdbc7090b38207f7fb5cfb5f2", - "type": "github" - }, - "original": { - "owner": "ipetkov", - "repo": "crane", - "type": "github" - } - }, - "crane_3": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1721058578, - "narHash": "sha256-fs/PVa3H5dS1//4BjecWi3nitXm5fRObx0JxXIAo+JA=", - "owner": "ipetkov", - "repo": "crane", - "rev": "17e5109bb1d9fb393d70fba80988f7d70d1ded1a", - "type": "github" - }, - "original": { - "owner": "ipetkov", - "repo": "crane", - "type": "github" - } - }, - "crystal": { - "inputs": { - "ameba-src": "ameba-src", - "bdwgc-src": "bdwgc-src", - "crystal-aarch64-darwin": "crystal-aarch64-darwin", - "crystal-src": "crystal-src", - "crystal-x86_64-darwin": "crystal-x86_64-darwin", - "crystal-x86_64-linux": "crystal-x86_64-linux", - "crystalline-src": "crystalline-src", - "flake-parts": "flake-parts", - "nixpkgs": "nixpkgs_3" - }, - "locked": { - "lastModified": 1683429373, - "narHash": "sha256-Mx5lwMyk2T40wFqOoYcJLs4srwO2UrsepTZhlHNuTrI=", - "owner": "manveru", - "repo": "crystal-flake", - "rev": "e7a443c20e2be6e5dd870586705dd27c91aa9c5c", - "type": "github" - }, - "original": { - "owner": "manveru", - "repo": "crystal-flake", - "type": "github" - } - }, - "crystal-aarch64-darwin": { - "flake": false, - "locked": { - "narHash": "sha256-NqYaZHM3kHAgYbO0RDJtA8eHqp4vVe4MBpisTOGrRVw=", - "type": "tarball", - "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-darwin-universal.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-darwin-universal.tar.gz" - } - }, - "crystal-src": { - "flake": false, - "locked": { - "lastModified": 1681995387, - "narHash": "sha256-t+1vM1m62UftCvfa90Dg6nqt6Zseh/GP/Gc1VfOa4+c=", - "owner": "crystal-lang", - "repo": "crystal", - "rev": "a59a3dbd738269d5aad6051c3834fc70f482f469", - "type": "github" - }, - "original": { - "owner": "crystal-lang", - "ref": "1.8.1", - "repo": "crystal", - "type": "github" - } - }, - "crystal-x86_64-darwin": { - "flake": false, - "locked": { - "narHash": "sha256-NqYaZHM3kHAgYbO0RDJtA8eHqp4vVe4MBpisTOGrRVw=", - "type": "tarball", - "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-darwin-universal.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-darwin-universal.tar.gz" - } - }, - "crystal-x86_64-linux": { - "flake": false, - "locked": { - "narHash": "sha256-/Jk3uiglM/hzjygxmMUgVTvz+tuFFjBv8+uUIL05rXo=", - "type": "tarball", - "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-linux-x86_64.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://github.com/crystal-lang/crystal/releases/download/1.8.1/crystal-1.8.1-1-linux-x86_64.tar.gz" - } - }, - "crystalline-src": { - "flake": false, - "locked": { - "lastModified": 1681549124, - "narHash": "sha256-kx3rdGqIbrOaHY7V3uXLqIFEYzzsMKzNwZ6Neq8zM3c=", - "owner": "elbywan", - "repo": "crystalline", - "rev": "4ac0ae282c5f4172230fea1e93df51c2b380f475", - "type": "github" - }, - "original": { - "owner": "elbywan", - "ref": "v0.9.0", - "repo": "crystalline", - "type": "github" - } - }, - "ctl": { - "inputs": { - "CHaP": "CHaP", - "blockfrost": "blockfrost", - "cardano-configurations": "cardano-configurations", - "cardano-nix": "cardano-nix", - "cardano-node": "cardano-node", - "db-sync": [ - "flake-lang", - "db-sync-ctl" - ], - "easy-purescript-nix": "easy-purescript-nix", - "flake-compat": "flake-compat_17", - "hackage-nix": "hackage-nix", - "haskell-nix": "haskell-nix_2", - "hercules-ci-effects": "hercules-ci-effects_2", - "iohk-nix": "iohk-nix_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "haskell-nix", - "nixpkgs-unstable" - ], - "nixpkgs-arion": "nixpkgs-arion", - "ogmios": "ogmios" - }, - "locked": { - "lastModified": 1727366337, - "narHash": "sha256-Ut8Wo4msEQP9MDtAaHJDyCW8L+AvKiilJitOXuEwkuM=", - "owner": "plutonomicon", - "repo": "cardano-transaction-lib", - "rev": "391dda3d9566ca969c245369492361d046462588", - "type": "github" - }, - "original": { - "owner": "plutonomicon", - "ref": "develop", - "repo": "cardano-transaction-lib", - "type": "github" - } - }, - "customConfig": { - "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", - "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "empty-flake", + "owner": "input-output-hk", + "repo": "empty-flake", "type": "github" } }, @@ -2026,28 +1115,13 @@ "type": "github" } }, - "customConfig_4": { - "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", - "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "empty-flake", - "type": "github" - } - }, "db-sync-ctl": { "inputs": { - "CHaP": "CHaP_6", - "customConfig": "customConfig_4", - "flake-compat": "flake-compat_19", - "haskellNix": "haskellNix_5", - "iohkNix": "iohkNix_5", + "CHaP": "CHaP_4", + "customConfig": "customConfig_3", + "flake-compat": "flake-compat_11", + "haskellNix": "haskellNix_4", + "iohkNix": "iohkNix_4", "nixpkgs": [ "flake-lang", "db-sync-ctl", @@ -2060,8 +1134,8 @@ "tullia", "std" ], - "tullia": "tullia_4", - "utils": "utils_10" + "tullia": "tullia_3", + "utils": "utils_8" }, "locked": { "lastModified": 1688568916, @@ -2081,11 +1155,11 @@ "devour-flake": { "flake": false, "locked": { - "lastModified": 1694098737, - "narHash": "sha256-O51F4YFOzlaQAc9b6xjkAqpvrvCtw/Os2M7TU0y4SKQ=", + "lastModified": 1726283167, + "narHash": "sha256-Cvc84VzvvdmehafnaIPfdPylNWJcDmv79QQh/MH/4Qk=", "owner": "srid", "repo": "devour-flake", - "rev": "30a34036b29b0d12989ef6c8be77aa949d85aef5", + "rev": "9b96d31a55be119df8496ec5b7369823deec8a1c", "type": "github" }, "original": { @@ -2100,7 +1174,8 @@ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", + "cardano-automation", "tullia", "std", "flake-utils" @@ -2109,7 +1184,8 @@ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", + "cardano-automation", "tullia", "std", "nixpkgs" @@ -2131,33 +1207,19 @@ }, "devshell_2": { "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "flake-utils" - ], "nixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", "nixpkgs" ] }, "locked": { - "lastModified": 1663445644, - "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", + "lastModified": 1728330715, + "narHash": "sha256-xRJ2nPOXb//u1jaBnDP56M7v5ldavjbtR6lfGqSvcKg=", "owner": "numtide", "repo": "devshell", - "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "rev": "dd6b80932022cea34a019e2bb32f6fa9e494dfef", "type": "github" }, "original": { @@ -2167,56 +1229,6 @@ } }, "devshell_3": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "nixpkgs" - ], - "systems": "systems_2" - }, - "locked": { - "lastModified": 1686680692, - "narHash": "sha256-SsLZz3TDleraAiJq4EkmdyewSyiv5g0LZYc6vaLZOMQ=", - "owner": "numtide", - "repo": "devshell", - "rev": "fd6223370774dd9c33354e87a007004b5fd36442", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "devshell", - "type": "github" - } - }, - "devshell_4": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "nixpkgs" - ], - "systems": "systems_3" - }, - "locked": { - "lastModified": 1695973661, - "narHash": "sha256-BP2H4c42GThPIhERtTpV1yCtwQHYHEKdRu7pjrmQAwo=", - "owner": "numtide", - "repo": "devshell", - "rev": "cd4e2fda3150dd2f689caeac07b7f47df5197c31", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "devshell", - "type": "github" - } - }, - "devshell_5": { "inputs": { "flake-utils": [ "flake-lang", @@ -2251,7 +1263,7 @@ "type": "github" } }, - "devshell_6": { + "devshell_4": { "inputs": { "flake-utils": [ "flake-lang", @@ -2288,7 +1300,8 @@ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", + "cardano-automation", "tullia", "std", "nixpkgs" @@ -2297,7 +1310,8 @@ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", + "cardano-automation", "tullia", "std", "yants" @@ -2319,87 +1333,49 @@ }, "dmerge_2": { "inputs": { + "haumea": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "std", + "haumea" + ], "nixlib": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", + "cardano-node", "std", - "nixpkgs" + "lib" ], "yants": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", + "cardano-node", "std", "yants" ] }, "locked": { - "lastModified": 1659548052, - "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "lastModified": 1686862774, + "narHash": "sha256-ojGtRQ9pIOUrxsQEuEPerUkqIJEuod9hIflfNkY+9CE=", "owner": "divnix", - "repo": "data-merge", - "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", + "repo": "dmerge", + "rev": "9f7f7a8349d33d7bd02e0f2b484b1f076e503a96", "type": "github" }, "original": { "owner": "divnix", - "repo": "data-merge", + "ref": "0.2.1", + "repo": "dmerge", "type": "github" } }, "dmerge_3": { "inputs": { - "haumea": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "haumea" - ], - "nixlib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "haumea", - "nixpkgs" - ], - "yants": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "yants" - ] - }, - "locked": { - "lastModified": 1686862774, - "narHash": "sha256-ojGtRQ9pIOUrxsQEuEPerUkqIJEuod9hIflfNkY+9CE=", - "owner": "divnix", - "repo": "dmerge", - "rev": "9f7f7a8349d33d7bd02e0f2b484b1f076e503a96", - "type": "github" - }, - "original": { - "owner": "divnix", - "ref": "0.2.1", - "repo": "dmerge", - "type": "github" - } - }, - "dmerge_4": { - "inputs": { - "nixlib": [ + "nixlib": [ "flake-lang", "ctl", "cardano-node", @@ -2432,7 +1408,7 @@ "type": "github" } }, - "dmerge_5": { + "dmerge_4": { "inputs": { "haumea": [ "flake-lang", @@ -2471,7 +1447,7 @@ "type": "github" } }, - "dmerge_6": { + "dmerge_5": { "inputs": { "nixlib": [ "flake-lang", @@ -2521,11 +1497,11 @@ "em": { "flake": false, "locked": { - "lastModified": 1684791668, - "narHash": "sha256-JyPm0RiWCfy/8rs7wd/IRSWIz+bTkD78uxIMnKktU2g=", + "lastModified": 1685015066, + "narHash": "sha256-etAdEoYhtvjTw1ITh28WPNfwvvb5t/fpwCP6s7odSiQ=", "owner": "deepfire", "repo": "em", - "rev": "302cdf6d654fb18baff0213bdfa41a653774585a", + "rev": "af69bb5c2ac2161434d8fea45f920f8f359587ce", "type": "github" }, "original": { @@ -2535,22 +1511,6 @@ } }, "em_2": { - "flake": false, - "locked": { - "lastModified": 1684791668, - "narHash": "sha256-JyPm0RiWCfy/8rs7wd/IRSWIz+bTkD78uxIMnKktU2g=", - "owner": "deepfire", - "repo": "em", - "rev": "302cdf6d654fb18baff0213bdfa41a653774585a", - "type": "github" - }, - "original": { - "owner": "deepfire", - "repo": "em", - "type": "github" - } - }, - "em_3": { "flake": false, "locked": { "lastModified": 1685015066, @@ -2596,91 +1556,31 @@ "type": "github" } }, - "empty-flake_3": { - "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", - "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "empty-flake", - "type": "github" - } - }, - "empty-flake_4": { + "flake-compat": { + "flake": false, "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "lastModified": 1647532380, + "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", + "repo": "flake-compat", + "rev": "7da118186435255a30b5ffeabba9629c344c0bec", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "empty-flake", - "type": "github" - } - }, - "fenix": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "cardano-parts", - "auth-keys-hub", - "statix", - "nixpkgs" - ], - "rust-analyzer-src": "rust-analyzer-src" - }, - "locked": { - "lastModified": 1645251813, - "narHash": "sha256-cQ66tGjnZclBCS3nD26mZ5fUH+3/HnysGffBiWXUSHk=", - "owner": "nix-community", - "repo": "fenix", - "rev": "9892337b588c38ec59466a1c89befce464aae7f8", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "fenix", - "type": "github" - } - }, - "fenix_2": { - "inputs": { - "nixpkgs": "nixpkgs_30", - "rust-analyzer-src": "rust-analyzer-src_2" - }, - "locked": { - "lastModified": 1677306201, - "narHash": "sha256-VZ9x7qdTosFvVsrpgFHrtYfT6PU3yMIs7NRYn9ELapI=", - "owner": "nix-community", - "repo": "fenix", - "rev": "0923f0c162f65ae40261ec940406049726cfeab4", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "fenix", + "ref": "fixes", + "repo": "flake-compat", "type": "github" } }, - "flake-compat": { + "flake-compat_10": { "flake": false, "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", "owner": "edolstra", "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", "type": "github" }, "original": { @@ -2689,7 +1589,7 @@ "type": "github" } }, - "flake-compat_10": { + "flake-compat_11": { "flake": false, "locked": { "lastModified": 1647532380, @@ -2706,7 +1606,7 @@ "type": "github" } }, - "flake-compat_11": { + "flake-compat_12": { "flake": false, "locked": { "lastModified": 1672831974, @@ -2723,39 +1623,7 @@ "type": "github" } }, - "flake-compat_12": { - "flake": false, - "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, "flake-compat_13": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_14": { "flake": false, "locked": { "lastModified": 1650374568, @@ -2771,24 +1639,7 @@ "type": "github" } }, - "flake-compat_15": { - "flake": false, - "locked": { - "lastModified": 1647532380, - "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "7da118186435255a30b5ffeabba9629c344c0bec", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "fixes", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_16": { + "flake-compat_14": { "flake": false, "locked": { "lastModified": 1672831974, @@ -2805,7 +1656,7 @@ "type": "github" } }, - "flake-compat_17": { + "flake-compat_15": { "flake": false, "locked": { "lastModified": 1696426674, @@ -2821,7 +1672,7 @@ "type": "github" } }, - "flake-compat_18": { + "flake-compat_2": { "flake": false, "locked": { "lastModified": 1672831974, @@ -2838,74 +1689,40 @@ "type": "github" } }, - "flake-compat_19": { - "flake": false, - "locked": { - "lastModified": 1647532380, - "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "7da118186435255a30b5ffeabba9629c344c0bec", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "fixes", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { + "flake-compat_3": { "flake": false, "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", + "owner": "edolstra", "repo": "flake-compat", "type": "github" } }, - "flake-compat_20": { + "flake-compat_4": { "flake": false, "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "lastModified": 1647532380, + "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", "owner": "input-output-hk", "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "rev": "7da118186435255a30b5ffeabba9629c344c0bec", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_21": { - "flake": false, - "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", - "type": "github" - }, - "original": { - "owner": "edolstra", + "ref": "fixes", "repo": "flake-compat", "type": "github" } }, - "flake-compat_22": { + "flake-compat_5": { "flake": false, "locked": { "lastModified": 1672831974, @@ -2922,7 +1739,7 @@ "type": "github" } }, - "flake-compat_23": { + "flake-compat_6": { "flake": false, "locked": { "lastModified": 1696426674, @@ -2938,14 +1755,14 @@ "type": "github" } }, - "flake-compat_3": { + "flake-compat_7": { "flake": false, "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", "owner": "edolstra", "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", "type": "github" }, "original": { @@ -2954,7 +1771,7 @@ "type": "github" } }, - "flake-compat_4": { + "flake-compat_8": { "flake": false, "locked": { "lastModified": 1647532380, @@ -2971,7 +1788,7 @@ "type": "github" } }, - "flake-compat_5": { + "flake-compat_9": { "flake": false, "locked": { "lastModified": 1672831974, @@ -2988,93 +1805,27 @@ "type": "github" } }, - "flake-compat_6": { - "flake": false, + "flake-lang": { + "inputs": { + "cardano-haskell-packages": "cardano-haskell-packages", + "crane": "crane", + "ctl": "ctl", + "db-sync-ctl": "db-sync-ctl", + "flake-parts": "flake-parts_3", + "haskell-nix": "haskell-nix", + "hci-effects": "hci-effects", + "iohk-nix": "iohk-nix", + "nixpkgs": "nixpkgs_24", + "plutarch": "plutarch", + "pre-commit-hooks": "pre-commit-hooks", + "rust-overlay": "rust-overlay" + }, "locked": { - "lastModified": 1647532380, - "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "7da118186435255a30b5ffeabba9629c344c0bec", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "fixes", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_7": { - "flake": false, - "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_8": { - "flake": false, - "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_9": { - "flake": false, - "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-lang": { - "inputs": { - "cardano-haskell-packages": "cardano-haskell-packages", - "crane": "crane", - "ctl": "ctl", - "db-sync-ctl": "db-sync-ctl", - "flake-parts": "flake-parts_7", - "haskell-nix": "haskell-nix_3", - "hci-effects": "hci-effects", - "iohk-nix": "iohk-nix_3", - "nixpkgs": "nixpkgs_48", - "plutarch": "plutarch", - "pre-commit-hooks": "pre-commit-hooks", - "rust-overlay": "rust-overlay_2" - }, - "locked": { - "lastModified": 1733469835, - "narHash": "sha256-NkDqMD30gcByCc/Hk9Xifa+D8GPddhlhlxTcHAoQYao=", - "owner": "mlabs-haskell", - "repo": "flake-lang.nix", - "rev": "bf9f458b38904a9eb4bf35f196b61b680adaa6e0", + "lastModified": 1739355328, + "narHash": "sha256-JV6uOhWYVHgHvrgxbd0i7m+5Hzgxe3857rKg/g8cYBI=", + "owner": "mlabs-haskell", + "repo": "flake-lang.nix", + "rev": "af483e8b4fcb4b9644548fdbdbc912f0cd000653", "type": "github" }, "original": { @@ -3088,11 +1839,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1672152762, - "narHash": "sha256-U8iWWHgabN07zfbgedogMVWrEP1Zywyf3Yx3OYHSSgE=", + "lastModified": 1730504689, + "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "19e0f88324d90509141e192664ded98bb88ef9b2", + "rev": "506278e768c2a08bec68eb62932193e341f55c90", "type": "github" }, "original": { @@ -3102,78 +1853,6 @@ } }, "flake-parts_2": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib_2" - }, - "locked": { - "lastModified": 1682984683, - "narHash": "sha256-fSMthG+tp60AHhNmaHc4StT3ltfHkQsJtN8GhfLWmtI=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "86684881e184f41aa322e653880e497b66429f3e", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_3": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib_3" - }, - "locked": { - "lastModified": 1690933134, - "narHash": "sha256-ab989mN63fQZBFrkk4Q8bYxQCktuHmBIBqUG1jl6/FQ=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "59cf3f1447cfc75087e7273b04b31e689a8599fb", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_4": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib_4" - }, - "locked": { - "lastModified": 1690933134, - "narHash": "sha256-ab989mN63fQZBFrkk4Q8bYxQCktuHmBIBqUG1jl6/FQ=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "59cf3f1447cfc75087e7273b04b31e689a8599fb", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_5": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib_5" - }, - "locked": { - "lastModified": 1696343447, - "narHash": "sha256-B2xAZKLkkeRFG5XcHHSXXcP7To9Xzr59KXeZiRf4vdQ=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "c9afaba3dfa4085dbd2ccb38dfade5141e33d9d4", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_6": { "inputs": { "nixpkgs-lib": [ "flake-lang", @@ -3183,11 +1862,11 @@ ] }, "locked": { - "lastModified": 1712014858, - "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", + "lastModified": 1736143030, + "narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", + "rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de", "type": "github" }, "original": { @@ -3195,16 +1874,16 @@ "type": "indirect" } }, - "flake-parts_7": { + "flake-parts_3": { "inputs": { - "nixpkgs-lib": "nixpkgs-lib_6" + "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1730504689, - "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", + "lastModified": 1738453229, + "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "506278e768c2a08bec68eb62932193e341f55c90", + "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", "type": "github" }, "original": { @@ -3213,7 +1892,7 @@ "type": "github" } }, - "flake-parts_8": { + "flake-parts_4": { "inputs": { "nixpkgs-lib": [ "flake-lang", @@ -3222,11 +1901,11 @@ ] }, "locked": { - "lastModified": 1712014858, - "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", + "lastModified": 1736143030, + "narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", + "rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de", "type": "github" }, "original": { @@ -3234,7 +1913,7 @@ "type": "indirect" } }, - "flake-parts_9": { + "flake-parts_5": { "inputs": { "nixpkgs-lib": [ "hci-effects", @@ -3242,11 +1921,11 @@ ] }, "locked": { - "lastModified": 1733312601, - "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "lastModified": 1738453229, + "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", + "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", "type": "github" }, "original": { @@ -3256,11 +1935,11 @@ }, "flake-root": { "locked": { - "lastModified": 1692742795, - "narHash": "sha256-f+Y0YhVCIJ06LemO+3Xx00lIcqQxSKJHXT/yk1RTKxw=", + "lastModified": 1723604017, + "narHash": "sha256-rBtQ8gg+Dn4Sx/s+pvjdq3CB2wQNzx9XGFq/JVGCB6k=", "owner": "srid", "repo": "flake-root", - "rev": "d9a70d9c7a5fd7f3258ccf48da9335e9b47c3937", + "rev": "b759a56851e10cb13f6b8e5698af7b59c44be26e", "type": "github" }, "original": { @@ -3271,11 +1950,11 @@ }, "flake-utils": { "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", "owner": "numtide", "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", "type": "github" }, "original": { @@ -3314,7 +1993,7 @@ "type": "github" } }, - "flake-utils_12": { + "flake-utils_2": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -3329,7 +2008,7 @@ "type": "github" } }, - "flake-utils_13": { + "flake-utils_3": { "locked": { "lastModified": 1659877975, "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", @@ -3344,31 +2023,13 @@ "type": "github" } }, - "flake-utils_14": { - "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_15": { - "inputs": { - "systems": "systems_4" - }, + "flake-utils_4": { "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { @@ -3377,7 +2038,7 @@ "type": "github" } }, - "flake-utils_16": { + "flake-utils_5": { "locked": { "lastModified": 1667395993, "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", @@ -3392,7 +2053,7 @@ "type": "github" } }, - "flake-utils_17": { + "flake-utils_6": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -3407,7 +2068,7 @@ "type": "github" } }, - "flake-utils_18": { + "flake-utils_7": { "locked": { "lastModified": 1659877975, "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", @@ -3422,7 +2083,7 @@ "type": "github" } }, - "flake-utils_19": { + "flake-utils_8": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -3437,7 +2098,7 @@ "type": "github" } }, - "flake-utils_2": { + "flake-utils_9": { "locked": { "lastModified": 1679360468, "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", @@ -3453,925 +2114,574 @@ "type": "github" } }, - "flake-utils_20": { - "inputs": { - "systems": "systems_5" - }, + "ghc-8.6.5-iohk": { + "flake": false, "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "flake-utils_21": { + "ghc-8.6.5-iohk_2": { + "flake": false, "locked": { - "lastModified": 1679360468, - "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", - "owner": "hamishmack", - "repo": "flake-utils", - "rev": "e1ea268ff47ad475443dbabcd54744b4e5b9d4f5", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { - "owner": "hamishmack", - "ref": "hkm/nested-hydraJobs", - "repo": "flake-utils", + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "flake-utils_22": { + "ghc-8.6.5-iohk_3": { + "flake": false, "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "flake-utils_23": { + "ghc-8.6.5-iohk_4": { + "flake": false, "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "flake-utils_3": { + "ghc-8.6.5-iohk_5": { + "flake": false, "locked": { - "lastModified": 1634851050, - "narHash": "sha256-N83GlSGPJJdcqhUxSCS/WwW5pksYf3VP1M13cDRTSVA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c91f3de5adaf1de973b797ef7485e441a65b8935", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", + "type": "github" + } }, - "flake-utils_4": { + "ghc910X": { + "flake": false, "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", - "type": "github" + "lastModified": 1714520650, + "narHash": "sha256-4uz6RA1hRr0RheGNDM49a/B3jszqNNU8iHIow4mSyso=", + "ref": "ghc-9.10", + "rev": "2c6375b9a804ac7fca1e82eb6fcfc8594c67c5f5", + "revCount": 62663, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" }, "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" + "ref": "ghc-9.10", + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" } }, - "flake-utils_5": { + "ghc910X_2": { + "flake": false, "locked": { - "lastModified": 1679360468, - "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", - "owner": "hamishmack", - "repo": "flake-utils", - "rev": "e1ea268ff47ad475443dbabcd54744b4e5b9d4f5", - "type": "github" + "lastModified": 1714520650, + "narHash": "sha256-4uz6RA1hRr0RheGNDM49a/B3jszqNNU8iHIow4mSyso=", + "ref": "ghc-9.10", + "rev": "2c6375b9a804ac7fca1e82eb6fcfc8594c67c5f5", + "revCount": 62663, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" }, "original": { - "owner": "hamishmack", - "ref": "hkm/nested-hydraJobs", - "repo": "flake-utils", - "type": "github" + "ref": "ghc-9.10", + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" } }, - "flake-utils_6": { + "ghc911": { + "flake": false, "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", - "type": "github" + "lastModified": 1714817013, + "narHash": "sha256-m2je4UvWfkgepMeUIiXHMwE6W+iVfUY38VDGkMzjCcc=", + "ref": "refs/heads/master", + "rev": "fc24c5cf6c62ca9e3c8d236656e139676df65034", + "revCount": 62816, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" }, "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" } }, - "flake-utils_7": { + "ghc911_2": { + "flake": false, "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "lastModified": 1714817013, + "narHash": "sha256-m2je4UvWfkgepMeUIiXHMwE6W+iVfUY38VDGkMzjCcc=", + "ref": "refs/heads/master", + "rev": "fc24c5cf6c62ca9e3c8d236656e139676df65034", + "revCount": 62816, + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + }, + "original": { + "submodules": true, + "type": "git", + "url": "https://gitlab.haskell.org/ghc/ghc" + } + }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "pre-commit-hooks-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "hercules-ci", + "repo": "gitignore.nix", "type": "github" } }, - "flake-utils_8": { + "gitignore_2": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "pre-commit-hooks", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "hercules-ci", + "repo": "gitignore.nix", "type": "github" } }, - "flake-utils_9": { + "gomod2nix": { + "inputs": { + "nixpkgs": "nixpkgs_4", + "utils": "utils_2" + }, "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "tweag", + "repo": "gomod2nix", "type": "github" } }, - "ghc-8.6.5-iohk": { - "flake": false, + "gomod2nix_2": { + "inputs": { + "nixpkgs": "nixpkgs_10", + "utils": "utils_5" + }, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "owner": "tweag", + "repo": "gomod2nix", "type": "github" } }, - "ghc-8.6.5-iohk_2": { - "flake": false, + "gomod2nix_3": { + "inputs": { + "nixpkgs": "nixpkgs_18", + "utils": "utils_7" + }, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "owner": "tweag", + "repo": "gomod2nix", "type": "github" } }, - "ghc-8.6.5-iohk_3": { + "hackage": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1684283135, + "narHash": "sha256-kG6+9ke7nYsbdvpMgxFcUi5eLA5WChL0DkP655si89U=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "hackage.nix", + "rev": "720c07ced0ec9132ada4cd8f14b908330a1b290b", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "repo": "hackage.nix", "type": "github" } }, - "ghc-8.6.5-iohk_4": { + "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1739060682, + "narHash": "sha256-CAi5o8XT32B1Ny1R55HJ7TLECCdYd4DH5z4SlkGeUZA=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "hackage.nix", + "rev": "8196b4cfd8a5f491716f61112f24a3ae5e57693e", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "ref": "for-stackage", + "repo": "hackage.nix", "type": "github" } }, - "ghc-8.6.5-iohk_5": { + "hackageNix": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1729470551, + "narHash": "sha256-AKBK4jgOjIz5DxIsIKFZR0mf30qc4Dv+Dm/DVRjdjD8=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "hackage.nix", + "rev": "ee5b803d828db6efac3ef7e7e072c855287dc298", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "repo": "hackage.nix", "type": "github" } }, - "ghc-8.6.5-iohk_6": { + "hackageNix_2": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1729039425, + "narHash": "sha256-sIglYcw8Dacj4n0bRlUWo+NLkDMcVi6vtmKvUyG+ZrQ=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "hackage.nix", + "rev": "6dc43e5e01f113ce151056a8f94bce7bb2f13eb9", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "repo": "hackage.nix", "type": "github" } }, - "ghc-8.6.5-iohk_7": { + "hackageNix_3": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1729039425, + "narHash": "sha256-sIglYcw8Dacj4n0bRlUWo+NLkDMcVi6vtmKvUyG+ZrQ=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "hackage.nix", + "rev": "6dc43e5e01f113ce151056a8f94bce7bb2f13eb9", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "repo": "hackage.nix", "type": "github" } }, - "ghc-8.6.5-iohk_8": { + "hackage_2": { "flake": false, "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "lastModified": 1739060692, + "narHash": "sha256-ws4gten6Fv7AhLh3J7R+lIhMtpsrRai4HNZbfbL8w3k=", "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "repo": "hackage.nix", + "rev": "3add10ca08103ba53a338e880f6c6c79b8939f30", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "repo": "hackage.nix", "type": "github" } }, - "ghc910X": { - "flake": false, - "locked": { - "lastModified": 1714520650, - "narHash": "sha256-4uz6RA1hRr0RheGNDM49a/B3jszqNNU8iHIow4mSyso=", - "ref": "ghc-9.10", - "rev": "2c6375b9a804ac7fca1e82eb6fcfc8594c67c5f5", - "revCount": 62663, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - }, - "original": { - "ref": "ghc-9.10", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - } - }, - "ghc911": { - "flake": false, - "locked": { - "lastModified": 1714817013, - "narHash": "sha256-m2je4UvWfkgepMeUIiXHMwE6W+iVfUY38VDGkMzjCcc=", - "ref": "refs/heads/master", - "rev": "fc24c5cf6c62ca9e3c8d236656e139676df65034", - "revCount": 62816, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - }, - "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - } - }, - "ghc98X": { - "flake": false, - "locked": { - "lastModified": 1696643148, - "narHash": "sha256-E02DfgISH7EvvNAu0BHiPvl1E5FGMDi0pWdNZtIBC9I=", - "ref": "ghc-9.8", - "rev": "443e870d977b1ab6fc05f47a9a17bc49296adbd6", - "revCount": 61642, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - }, - "original": { - "ref": "ghc-9.8", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - } - }, - "ghc98X_2": { - "flake": false, - "locked": { - "lastModified": 1696643148, - "narHash": "sha256-E02DfgISH7EvvNAu0BHiPvl1E5FGMDi0pWdNZtIBC9I=", - "ref": "ghc-9.8", - "rev": "443e870d977b1ab6fc05f47a9a17bc49296adbd6", - "revCount": 61642, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - }, - "original": { - "ref": "ghc-9.8", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - } - }, - "ghc99": { - "flake": false, - "locked": { - "lastModified": 1697054644, - "narHash": "sha256-kKarOuXUaAH3QWv7ASx+gGFMHaHKe0pK5Zu37ky2AL4=", - "ref": "refs/heads/master", - "rev": "f383a242c76f90bcca8a4d7ee001dcb49c172a9a", - "revCount": 62040, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "haskell-nix": { + "inputs": { + "HTTP": "HTTP_5", + "cabal-32": "cabal-32_5", + "cabal-34": "cabal-34_5", + "cabal-36": "cabal-36_5", + "cardano-shell": "cardano-shell_5", + "flake-compat": "flake-compat_14", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_5", + "hackage": "hackage_2", + "hackage-for-stackage": "hackage-for-stackage", + "hls-1.10": "hls-1.10_5", + "hls-2.0": "hls-2.0_4", + "hls-2.2": "hls-2.2_4", + "hls-2.3": "hls-2.3_4", + "hls-2.4": "hls-2.4_4", + "hls-2.5": "hls-2.5_4", + "hls-2.6": "hls-2.6_4", + "hls-2.7": "hls-2.7_4", + "hls-2.8": "hls-2.8_4", + "hls-2.9": "hls-2.9_2", + "hpc-coveralls": "hpc-coveralls_5", + "iserv-proxy": "iserv-proxy_5", + "nixpkgs": [ + "flake-lang", + "haskell-nix", + "nixpkgs-unstable" + ], + "nixpkgs-2305": "nixpkgs-2305_4", + "nixpkgs-2311": "nixpkgs-2311_4", + "nixpkgs-2405": "nixpkgs-2405_2", + "nixpkgs-2411": "nixpkgs-2411", + "nixpkgs-unstable": "nixpkgs-unstable_5", + "old-ghc-nix": "old-ghc-nix_5", + "stackage": "stackage_5" }, - "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - } - }, - "ghc99_2": { - "flake": false, "locked": { - "lastModified": 1697054644, - "narHash": "sha256-kKarOuXUaAH3QWv7ASx+gGFMHaHKe0pK5Zu37ky2AL4=", - "ref": "refs/heads/master", - "rev": "f383a242c76f90bcca8a4d7ee001dcb49c172a9a", - "revCount": 62040, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "lastModified": 1739062317, + "narHash": "sha256-tQEyWRSlgHmJh35nPkd4hAnParjTroDLcsom4xzhwwI=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "cf83ebef39cedaabdda697897fcf49c666168919", + "type": "github" }, "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" + "owner": "input-output-hk", + "repo": "haskell.nix", + "type": "github" } }, - "gitignore": { + "haskellNix": { "inputs": { + "HTTP": "HTTP", + "cabal-32": "cabal-32", + "cabal-34": "cabal-34", + "cabal-36": "cabal-36", + "cardano-shell": "cardano-shell", + "flake-compat": "flake-compat_2", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk", + "hackage": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "hackageNix" + ], + "hls-1.10": "hls-1.10", + "hls-2.0": "hls-2.0", + "hls-2.2": "hls-2.2", + "hls-2.3": "hls-2.3", + "hls-2.4": "hls-2.4", + "hls-2.5": "hls-2.5", + "hls-2.6": "hls-2.6", + "hls-2.7": "hls-2.7", + "hls-2.8": "hls-2.8", + "hls-2.9": "hls-2.9", + "hpc-coveralls": "hpc-coveralls", + "hydra": "hydra", + "iserv-proxy": "iserv-proxy", "nixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "pre-commit-hooks-nix", - "nixpkgs" - ] + "cardano-db-sync", + "haskellNix", + "nixpkgs-unstable" + ], + "nixpkgs-2003": "nixpkgs-2003", + "nixpkgs-2105": "nixpkgs-2105", + "nixpkgs-2111": "nixpkgs-2111", + "nixpkgs-2205": "nixpkgs-2205", + "nixpkgs-2211": "nixpkgs-2211", + "nixpkgs-2305": "nixpkgs-2305", + "nixpkgs-2311": "nixpkgs-2311", + "nixpkgs-2405": "nixpkgs-2405", + "nixpkgs-unstable": "nixpkgs-unstable", + "old-ghc-nix": "old-ghc-nix", + "stackage": "stackage" }, "locked": { - "lastModified": 1703887061, - "narHash": "sha256-gGPa9qWNc6eCXT/+Z5/zMkyYOuRZqeFZBDbopNZQkuY=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "43e1aa1308018f37118e34d3a9cb4f5e75dc11d5", + "lastModified": 1729471867, + "narHash": "sha256-xMxD8YQGGcbrZGHJws32UvtWJxfhzAO7yzPs5TjiOPY=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "03c3581d2e0c91f7c2690115b487961ad62099a6", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", + "owner": "input-output-hk", + "repo": "haskell.nix", "type": "github" } }, - "gitignore_2": { + "haskellNix_2": { "inputs": { + "HTTP": "HTTP_2", + "cabal-32": "cabal-32_2", + "cabal-34": "cabal-34_2", + "cabal-36": "cabal-36_2", + "cardano-shell": "cardano-shell_2", + "flake-compat": "flake-compat_5", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_2", + "ghc910X": "ghc910X", + "ghc911": "ghc911", + "hackage": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "hackageNix" + ], + "hls-1.10": "hls-1.10_2", + "hls-2.0": "hls-2.0_2", + "hls-2.2": "hls-2.2_2", + "hls-2.3": "hls-2.3_2", + "hls-2.4": "hls-2.4_2", + "hls-2.5": "hls-2.5_2", + "hls-2.6": "hls-2.6_2", + "hls-2.7": "hls-2.7_2", + "hls-2.8": "hls-2.8_2", + "hpc-coveralls": "hpc-coveralls_2", + "hydra": "hydra_2", + "iserv-proxy": "iserv-proxy_2", "nixpkgs": [ "flake-lang", - "pre-commit-hooks", + "ctl", + "cardano-nix", + "cardano-node", "nixpkgs" - ] + ], + "nixpkgs-2003": "nixpkgs-2003_2", + "nixpkgs-2105": "nixpkgs-2105_2", + "nixpkgs-2111": "nixpkgs-2111_2", + "nixpkgs-2205": "nixpkgs-2205_2", + "nixpkgs-2211": "nixpkgs-2211_2", + "nixpkgs-2305": "nixpkgs-2305_2", + "nixpkgs-2311": "nixpkgs-2311_2", + "nixpkgs-unstable": "nixpkgs-unstable_2", + "old-ghc-nix": "old-ghc-nix_2", + "stackage": "stackage_2" }, "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "lastModified": 1718797200, + "narHash": "sha256-ueFxTuZrQ3ZT/Fj5sSeUWlqKa4+OkUU1xW0E+q/XTfw=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "cb139fa956158397aa398186bb32dd26f7318784", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "cb139fa956158397aa398186bb32dd26f7318784", "type": "github" } }, - "gomod2nix": { + "haskellNix_3": { "inputs": { - "nixpkgs": "nixpkgs_18", - "utils": "utils_2" - }, - "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", - "type": "github" - }, - "original": { - "owner": "tweag", - "repo": "gomod2nix", - "type": "github" - } - }, - "gomod2nix_2": { - "inputs": { - "nixpkgs": "nixpkgs_22", - "utils": "utils_4" - }, - "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", - "type": "github" - }, - "original": { - "owner": "tweag", - "repo": "gomod2nix", - "type": "github" - } - }, - "gomod2nix_3": { - "inputs": { - "nixpkgs": "nixpkgs_31", - "utils": "utils_7" - }, - "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", - "type": "github" - }, - "original": { - "owner": "tweag", - "repo": "gomod2nix", - "type": "github" - } - }, - "gomod2nix_4": { - "inputs": { - "nixpkgs": "nixpkgs_41", - "utils": "utils_9" - }, - "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", - "type": "github" - }, - "original": { - "owner": "tweag", - "repo": "gomod2nix", - "type": "github" - } - }, - "hackage": { - "flake": false, - "locked": { - "lastModified": 1692145451, - "narHash": "sha256-kqfyD3Mu5kgiH5W2ZshUhzO46H0zYDpwD1SWz+POMrk=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "9d2daeca0e09002bc6fb552a097a1802a2f3a4e3", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackage-nix": { - "flake": false, - "locked": { - "lastModified": 1724977850, - "narHash": "sha256-awqEskjcqDqrT+Xgl9GK8LCPfxtzuwoLH12nbVoOjT8=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "7007cb02b7b0333f7e2c33dd8b5d1de5105d36b4", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackageNix": { - "flake": false, - "locked": { - "lastModified": 1702945378, - "narHash": "sha256-mo1MlOphO4bRwZ8T3mDwU5LOtdQcWSA+93lT1HkCcyw=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "e59b9616a744727e8e64f605f9f216464f12f89b", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackageNix_2": { - "flake": false, - "locked": { - "lastModified": 1685492843, - "narHash": "sha256-X8dNs5Gfc2ucfaWAgZ1VmkpBB4Cb44EQZu0b7tkvz2Y=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "e7407bab324eb2445bda58c5ffac393e80dda1e4", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackageNix_3": { - "flake": false, - "locked": { - "lastModified": 1701303758, - "narHash": "sha256-8XqVEQwmJBxRPFa7SizJuZxbG+NFEZKWdhtYPTQ7ZKM=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "8a0e3ae9295b7ef8431b9be208dd06aa2789be53", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackageNix_4": { - "flake": false, - "locked": { - "lastModified": 1724200761, - "narHash": "sha256-IDenOlZc5aph7Jz6xNQXGNnnx896hUYrsRU8mbE4bVw=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "11b43aaf3ff8018897f1b84a3fb60cce9ae7056d", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackage_2": { - "flake": false, - "locked": { - "lastModified": 1684283135, - "narHash": "sha256-kG6+9ke7nYsbdvpMgxFcUi5eLA5WChL0DkP655si89U=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "720c07ced0ec9132ada4cd8f14b908330a1b290b", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackage_3": { - "flake": false, - "locked": { - "lastModified": 1732408308, - "narHash": "sha256-cD+g07FungRIY0djRv6f7eQWSob9H74wGDxxlxlnVT4=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "1c0d41d9f45b8c6b5007102803a8eaa4353d041c", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "haskell-nix": { - "inputs": { - "HTTP": "HTTP", - "cabal-32": "cabal-32", - "cabal-34": "cabal-34", - "cabal-36": "cabal-36", - "cardano-shell": "cardano-shell", - "flake-compat": "flake-compat_2", - "flake-utils": "flake-utils_2", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk", - "hackage": "hackage", - "hls-1.10": "hls-1.10", - "hls-2.0": "hls-2.0", - "hpc-coveralls": "hpc-coveralls", - "hydra": "hydra", - "iserv-proxy": "iserv-proxy", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "cardano-parts", - "haskell-nix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003", - "nixpkgs-2105": "nixpkgs-2105", - "nixpkgs-2111": "nixpkgs-2111", - "nixpkgs-2205": "nixpkgs-2205", - "nixpkgs-2211": "nixpkgs-2211", - "nixpkgs-2305": "nixpkgs-2305", - "nixpkgs-unstable": "nixpkgs-unstable", - "old-ghc-nix": "old-ghc-nix", - "stackage": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "cardano-parts", - "empty-flake" - ] - }, - "locked": { - "lastModified": 1692147008, - "narHash": "sha256-ZiRaryaboJbNZ7y7XKZs2xuSfydZyGeupJNOfYpgQSw=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "1970bb2d5b0eb8152f89b305f32d055dbd6857d9", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haskell-nix_2": { - "inputs": { - "HTTP": "HTTP_6", - "cabal-32": "cabal-32_6", - "cabal-34": "cabal-34_6", - "cabal-36": "cabal-36_6", - "cardano-shell": "cardano-shell_6", - "flake-compat": "flake-compat_18", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_6", + "HTTP": "HTTP_3", + "cabal-32": "cabal-32_3", + "cabal-34": "cabal-34_3", + "cabal-36": "cabal-36_3", + "cardano-shell": "cardano-shell_3", + "flake-compat": "flake-compat_9", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_3", + "ghc910X": "ghc910X_2", + "ghc911": "ghc911_2", "hackage": [ "flake-lang", "ctl", - "hackage-nix" - ], - "hls-1.10": "hls-1.10_6", - "hls-2.0": "hls-2.0_5", - "hls-2.2": "hls-2.2_4", - "hls-2.3": "hls-2.3_4", - "hls-2.4": "hls-2.4_4", - "hls-2.5": "hls-2.5_2", - "hls-2.6": "hls-2.6_2", - "hls-2.7": "hls-2.7_2", - "hls-2.8": "hls-2.8_2", - "hls-2.9": "hls-2.9_2", - "hpc-coveralls": "hpc-coveralls_6", - "hydra": "hydra_6", - "iserv-proxy": "iserv-proxy_6", - "nixpkgs": [ - "flake-lang", - "ctl", - "nixpkgs" + "cardano-node", + "hackageNix" ], - "nixpkgs-2003": "nixpkgs-2003_6", - "nixpkgs-2105": "nixpkgs-2105_6", - "nixpkgs-2111": "nixpkgs-2111_6", - "nixpkgs-2205": "nixpkgs-2205_6", - "nixpkgs-2211": "nixpkgs-2211_6", - "nixpkgs-2305": "nixpkgs-2305_5", - "nixpkgs-2311": "nixpkgs-2311_2", - "nixpkgs-2405": "nixpkgs-2405", - "nixpkgs-unstable": "nixpkgs-unstable_7", - "old-ghc-nix": "old-ghc-nix_6", - "stackage": "stackage_5" - }, - "locked": { - "lastModified": 1724979052, - "narHash": "sha256-hoL0ofZI4L6w4413Wr4eZkMZzj+TyyDXF84FxEjppxU=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "5837bf2e6dbbbc2fc60fe7d27c9a03d9f8e9e974", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haskell-nix_3": { - "inputs": { - "HTTP": "HTTP_8", - "cabal-32": "cabal-32_8", - "cabal-34": "cabal-34_8", - "cabal-36": "cabal-36_8", - "cardano-shell": "cardano-shell_8", - "flake-compat": "flake-compat_22", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_8", - "hackage": "hackage_3", - "hls-1.10": "hls-1.10_8", - "hls-2.0": "hls-2.0_6", - "hls-2.2": "hls-2.2_5", - "hls-2.3": "hls-2.3_5", - "hls-2.4": "hls-2.4_5", + "hls-1.10": "hls-1.10_3", + "hls-2.0": "hls-2.0_3", + "hls-2.2": "hls-2.2_3", + "hls-2.3": "hls-2.3_3", + "hls-2.4": "hls-2.4_3", "hls-2.5": "hls-2.5_3", "hls-2.6": "hls-2.6_3", "hls-2.7": "hls-2.7_3", "hls-2.8": "hls-2.8_3", - "hls-2.9": "hls-2.9_3", - "hpc-coveralls": "hpc-coveralls_8", - "hydra": "hydra_8", - "iserv-proxy": "iserv-proxy_8", - "nixpkgs": [ - "flake-lang", - "haskell-nix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_8", - "nixpkgs-2105": "nixpkgs-2105_8", - "nixpkgs-2111": "nixpkgs-2111_8", - "nixpkgs-2205": "nixpkgs-2205_8", - "nixpkgs-2211": "nixpkgs-2211_8", - "nixpkgs-2305": "nixpkgs-2305_6", - "nixpkgs-2311": "nixpkgs-2311_3", - "nixpkgs-2405": "nixpkgs-2405_2", - "nixpkgs-unstable": "nixpkgs-unstable_9", - "old-ghc-nix": "old-ghc-nix_8", - "stackage": "stackage_7" - }, - "locked": { - "lastModified": 1732409520, - "narHash": "sha256-K2QlvQj0CQyYCPvYM2csTr/jM8wHiLQe4LEXl0CCXA8=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "93fdba63d6567643c0dc222fa6b29013a786f9af", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haskellNix": { - "inputs": { - "HTTP": "HTTP_2", - "cabal-32": "cabal-32_2", - "cabal-34": "cabal-34_2", - "cabal-36": "cabal-36_2", - "cardano-shell": "cardano-shell_2", - "flake-compat": "flake-compat_5", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_2", - "ghc98X": "ghc98X", - "ghc99": "ghc99", - "hackage": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "hackageNix" - ], - "hls-1.10": "hls-1.10_2", - "hls-2.0": "hls-2.0_2", - "hls-2.2": "hls-2.2", - "hls-2.3": "hls-2.3", - "hls-2.4": "hls-2.4", - "hpc-coveralls": "hpc-coveralls_2", - "hydra": "hydra_2", - "iserv-proxy": "iserv-proxy_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "haskellNix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_2", - "nixpkgs-2105": "nixpkgs-2105_2", - "nixpkgs-2111": "nixpkgs-2111_2", - "nixpkgs-2205": "nixpkgs-2205_2", - "nixpkgs-2211": "nixpkgs-2211_2", - "nixpkgs-2305": "nixpkgs-2305_2", - "nixpkgs-unstable": "nixpkgs-unstable_3", - "old-ghc-nix": "old-ghc-nix_2", - "stackage": "stackage" - }, - "locked": { - "lastModified": 1701053834, - "narHash": "sha256-4sH4//POARjeKJv1mu8aU4W4A28GYqrj9KB3PqusHis=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "7c491c55157208575c70c7b8434e9d4a1cf173a6", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haskellNix_2": { - "inputs": { - "HTTP": "HTTP_3", - "cabal-32": "cabal-32_3", - "cabal-34": "cabal-34_3", - "cabal-36": "cabal-36_3", - "cardano-shell": "cardano-shell_3", - "flake-compat": "flake-compat_7", - "flake-utils": "flake-utils_5", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_3", - "hackage": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "hackageNix" - ], - "hls-1.10": "hls-1.10_3", - "hpc-coveralls": "hpc-coveralls_3", - "hydra": "hydra_3", - "iserv-proxy": "iserv-proxy_3", + "hpc-coveralls": "hpc-coveralls_3", + "hydra": "hydra_3", + "iserv-proxy": "iserv-proxy_3", "nixpkgs": [ "flake-lang", "ctl", - "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", "nixpkgs" ], "nixpkgs-2003": "nixpkgs-2003_3", @@ -4379,4599 +2689,2648 @@ "nixpkgs-2111": "nixpkgs-2111_3", "nixpkgs-2205": "nixpkgs-2205_3", "nixpkgs-2211": "nixpkgs-2211_3", - "nixpkgs-unstable": "nixpkgs-unstable_4", - "old-ghc-nix": "old-ghc-nix_3", - "stackage": "stackage_2" - }, - "locked": { - "lastModified": 1685495397, - "narHash": "sha256-BwbWroS1Qm8BiHatG5+iHMHN5U6kqOccewBROUYuMKw=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "d07c42cdb1cf88d0cab27d3090b00cb3899643c9", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haskellNix_3": { - "inputs": { - "HTTP": "HTTP_4", - "cabal-32": "cabal-32_4", - "cabal-34": "cabal-34_4", - "cabal-36": "cabal-36_4", - "cardano-shell": "cardano-shell_4", - "flake-compat": "flake-compat_11", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_4", - "ghc98X": "ghc98X_2", - "ghc99": "ghc99_2", - "hackage": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "hackageNix" - ], - "hls-1.10": "hls-1.10_4", - "hls-2.0": "hls-2.0_3", - "hls-2.2": "hls-2.2_2", - "hls-2.3": "hls-2.3_2", - "hls-2.4": "hls-2.4_2", - "hpc-coveralls": "hpc-coveralls_4", - "hydra": "hydra_4", - "iserv-proxy": "iserv-proxy_4", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "nixpkgs" - ], - "nixpkgs-2003": "nixpkgs-2003_4", - "nixpkgs-2105": "nixpkgs-2105_4", - "nixpkgs-2111": "nixpkgs-2111_4", - "nixpkgs-2205": "nixpkgs-2205_4", - "nixpkgs-2211": "nixpkgs-2211_4", "nixpkgs-2305": "nixpkgs-2305_3", - "nixpkgs-unstable": "nixpkgs-unstable_5", - "old-ghc-nix": "old-ghc-nix_4", + "nixpkgs-2311": "nixpkgs-2311_3", + "nixpkgs-unstable": "nixpkgs-unstable_3", + "old-ghc-nix": "old-ghc-nix_3", "stackage": "stackage_3" }, "locked": { - "lastModified": 1700441391, - "narHash": "sha256-oJqP1AUskUvr3GNUH97eKwaIUHdYgENS2kQ7GI9RI+c=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "3b6056f3866f88d1d16eaeb2e810d3ac0df0e7cd", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haskellNix_4": { - "inputs": { - "HTTP": "HTTP_5", - "cabal-32": "cabal-32_5", - "cabal-34": "cabal-34_5", - "cabal-36": "cabal-36_5", - "cardano-shell": "cardano-shell_5", - "flake-compat": "flake-compat_16", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_5", - "ghc910X": "ghc910X", - "ghc911": "ghc911", - "hackage": [ - "flake-lang", - "ctl", - "cardano-node", - "hackageNix" - ], - "hls-1.10": "hls-1.10_5", - "hls-2.0": "hls-2.0_4", - "hls-2.2": "hls-2.2_3", - "hls-2.3": "hls-2.3_3", - "hls-2.4": "hls-2.4_3", - "hls-2.5": "hls-2.5", - "hls-2.6": "hls-2.6", - "hls-2.7": "hls-2.7", - "hls-2.8": "hls-2.8", - "hls-2.9": "hls-2.9", - "hpc-coveralls": "hpc-coveralls_5", - "hydra": "hydra_5", - "iserv-proxy": "iserv-proxy_5", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "nixpkgs" - ], - "nixpkgs-2003": "nixpkgs-2003_5", - "nixpkgs-2105": "nixpkgs-2105_5", - "nixpkgs-2111": "nixpkgs-2111_5", - "nixpkgs-2205": "nixpkgs-2205_5", - "nixpkgs-2211": "nixpkgs-2211_5", - "nixpkgs-2305": "nixpkgs-2305_4", - "nixpkgs-2311": "nixpkgs-2311", - "nixpkgs-unstable": "nixpkgs-unstable_6", - "old-ghc-nix": "old-ghc-nix_5", - "stackage": "stackage_4" - }, - "locked": { - "lastModified": 1718797200, - "narHash": "sha256-ueFxTuZrQ3ZT/Fj5sSeUWlqKa4+OkUU1xW0E+q/XTfw=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "cb139fa956158397aa398186bb32dd26f7318784", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haskellNix_5": { - "inputs": { - "HTTP": "HTTP_7", - "cabal-32": "cabal-32_7", - "cabal-34": "cabal-34_7", - "cabal-36": "cabal-36_7", - "cardano-shell": "cardano-shell_7", - "flake-compat": "flake-compat_20", - "flake-utils": "flake-utils_21", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_7", - "hackage": "hackage_2", - "hls-1.10": "hls-1.10_7", - "hpc-coveralls": "hpc-coveralls_7", - "hydra": "hydra_7", - "iserv-proxy": "iserv-proxy_7", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "haskellNix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_7", - "nixpkgs-2105": "nixpkgs-2105_7", - "nixpkgs-2111": "nixpkgs-2111_7", - "nixpkgs-2205": "nixpkgs-2205_7", - "nixpkgs-2211": "nixpkgs-2211_7", - "nixpkgs-unstable": "nixpkgs-unstable_8", - "old-ghc-nix": "old-ghc-nix_7", - "stackage": "stackage_6" - }, - "locked": { - "lastModified": 1684284676, - "narHash": "sha256-VhZiVvwXqHkWh8Tw81WL8vwMzGsAhag8SQCQWGXQBLs=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "ec345f667f9f1596e3849b530fe4f1573fc07653", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haumea": { - "inputs": { - "nixpkgs": "nixpkgs_28" - }, - "locked": { - "lastModified": 1685133229, - "narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", - "owner": "nix-community", - "repo": "haumea", - "rev": "34dd58385092a23018748b50f9b23de6266dffc2", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "v0.2.2", - "repo": "haumea", - "type": "github" - } - }, - "haumea_2": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "lib" - ] - }, - "locked": { - "lastModified": 1685133229, - "narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", - "owner": "nix-community", - "repo": "haumea", - "rev": "34dd58385092a23018748b50f9b23de6266dffc2", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "v0.2.2", - "repo": "haumea", - "type": "github" - } - }, - "hci-effects": { - "inputs": { - "flake-parts": "flake-parts_8", - "nixpkgs": "nixpkgs_46" - }, - "locked": { - "lastModified": 1730903510, - "narHash": "sha256-mnynlrPeiW0nUQ8KGZHb3WyxAxA3Ye/BH8gMjdoKP6E=", - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "rev": "b89ac4d66d618b915b1f0a408e2775fe3821d141", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "type": "github" - } - }, - "hci-effects_2": { - "inputs": { - "flake-parts": "flake-parts_9", - "nixpkgs": "nixpkgs_51" - }, - "locked": { - "lastModified": 1733333617, - "narHash": "sha256-nMMQXREGvLOLvUa0ByhYFdaL0Jov0t1wzLbKjr05P2w=", - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "rev": "56f8ea8d502c87cf62444bec4ee04512e8ea24ea", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "type": "github" - } - }, - "hercules-ci-effects": { - "inputs": { - "flake-parts": [ - "flake-lang", - "ctl", - "cardano-nix", - "flake-parts" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1710396488, - "narHash": "sha256-yniBB5i1un44uzR4+luTWvZ6uGvsHSYIBiDZ8Xox4nQ=", - "owner": "mlabs-haskell", - "repo": "hercules-ci-effects", - "rev": "f5ed263ab0585dfb7b067301419fb80d64e8c021", - "type": "github" - }, - "original": { - "owner": "mlabs-haskell", - "ref": "push-cache-effect", - "repo": "hercules-ci-effects", - "type": "github" - } - }, - "hercules-ci-effects_2": { - "inputs": { - "flake-parts": "flake-parts_6", - "nixpkgs": "nixpkgs_39" - }, - "locked": { - "lastModified": 1724947644, - "narHash": "sha256-MHHrHasTngp7EYQOObHJ1a/IsRF+wodHqOckhH6uZbk=", - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "rev": "dba4367b9a9d9615456c430a6d6af716f6e84cef", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "type": "github" - } - }, - "hls-1.10": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_2": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_3": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_4": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_5": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_6": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_7": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_8": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0_2": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0_3": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0_4": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0_5": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0_6": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.2": { - "flake": false, - "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.2_2": { - "flake": false, - "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.2_3": { - "flake": false, - "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.2_4": { - "flake": false, - "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.2_5": { - "flake": false, - "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.3": { - "flake": false, - "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.3_2": { - "flake": false, - "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.3_3": { - "flake": false, - "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.3_4": { - "flake": false, - "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.3_5": { - "flake": false, - "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.4": { - "flake": false, - "locked": { - "lastModified": 1696939266, - "narHash": "sha256-VOMf5+kyOeOmfXTHlv4LNFJuDGa7G3pDnOxtzYR40IU=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "362fdd1293efb4b82410b676ab1273479f6d17ee", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.4.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.4_2": { - "flake": false, - "locked": { - "lastModified": 1696939266, - "narHash": "sha256-VOMf5+kyOeOmfXTHlv4LNFJuDGa7G3pDnOxtzYR40IU=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "362fdd1293efb4b82410b676ab1273479f6d17ee", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.4.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.4_3": { - "flake": false, - "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.4_4": { - "flake": false, - "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.4_5": { - "flake": false, - "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.5": { - "flake": false, - "locked": { - "lastModified": 1701080174, - "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.5.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.5_2": { - "flake": false, - "locked": { - "lastModified": 1701080174, - "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.5.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.5_3": { - "flake": false, - "locked": { - "lastModified": 1701080174, - "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.5.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.6": { - "flake": false, - "locked": { - "lastModified": 1705325287, - "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.6.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.6_2": { - "flake": false, - "locked": { - "lastModified": 1705325287, - "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.6.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.6_3": { - "flake": false, - "locked": { - "lastModified": 1705325287, - "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.6.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.7": { - "flake": false, - "locked": { - "lastModified": 1708965829, - "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.7.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.7_2": { - "flake": false, - "locked": { - "lastModified": 1708965829, - "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.7.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.7_3": { - "flake": false, - "locked": { - "lastModified": 1708965829, - "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.7.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.8": { - "flake": false, - "locked": { - "lastModified": 1715153580, - "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.8.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.8_2": { - "flake": false, - "locked": { - "lastModified": 1715153580, - "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.8.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.8_3": { - "flake": false, - "locked": { - "lastModified": 1715153580, - "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.8.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.9": { - "flake": false, - "locked": { - "lastModified": 1718469202, - "narHash": "sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "0c1817cb2babef0765e4e72dd297c013e8e3d12b", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.9.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.9_2": { - "flake": false, - "locked": { - "lastModified": 1718469202, - "narHash": "sha256-THXSz+iwB1yQQsr/PY151+2GvtoJnTIB2pIQ4OzfjD4=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "40891bccb235ebacce020b598b083eab9dda80f1", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.9.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.9_3": { - "flake": false, - "locked": { - "lastModified": 1720003792, - "narHash": "sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "0c1817cb2babef0765e4e72dd297c013e8e3d12b", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.9.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hpc-coveralls": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_2": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_3": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_4": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_5": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_6": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_7": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_8": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hydra": { - "inputs": { - "nix": "nix", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "cardano-parts", - "haskell-nix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_2": { - "inputs": { - "nix": "nix_3", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_3": { - "inputs": { - "nix": "nix_4", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_4": { - "inputs": { - "nix": "nix_5", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_5": { - "inputs": { - "nix": "nix_6", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_6": { - "inputs": { - "nix": "nix_7", - "nixpkgs": [ - "flake-lang", - "ctl", - "haskell-nix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_7": { - "inputs": { - "nix": "nix_8", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_8": { - "inputs": { - "nix": "nix_9", - "nixpkgs": [ - "flake-lang", - "haskell-nix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "incl": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "incl", - "type": "github" - } - }, - "incl_2": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "incl", - "type": "github" - } - }, - "incl_3": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "haumea", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "incl", - "type": "github" - } - }, - "incl_4": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "lib" - ] - }, - "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "incl", - "type": "github" - } - }, - "incl_5": { - "inputs": { - "nixlib": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "incl", - "type": "github" - } - }, - "inclusive": { - "inputs": { - "stdlib": "stdlib" - }, - "locked": { - "lastModified": 1628098927, - "narHash": "sha256-Ft4sdf7VPL8MQtu18AAPiN2s5pUsbv+3RxqzJSa/yzg=", - "owner": "input-output-hk", - "repo": "nix-inclusive", - "rev": "13123eb7a8c3359738a4756b8d645729e8655b27", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "nix-inclusive", - "type": "github" - } - }, - "inputs-check": { - "inputs": { - "flake-parts": "flake-parts_4", - "nixpkgs": "nixpkgs_7" - }, - "locked": { - "lastModified": 1692633913, - "narHash": "sha256-f80/49lt2hIapc9AEaTBC93jnRZe5zxlm21JXXewkko=", - "owner": "input-output-hk", - "repo": "inputs-check", - "rev": "1e9f65e56140f4e357c9abaf5311e3ea979d33e9", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "inputs-check", - "type": "github" - } - }, - "iohk-nix": { - "inputs": { - "blst": "blst", - "nixpkgs": "nixpkgs_8", - "secp256k1": "secp256k1", - "sodium": "sodium" - }, - "locked": { - "lastModified": 1691469905, - "narHash": "sha256-TV0p1dFGYAMl1dLJEfe/tNFjxvV2H7VgHU1I43q+b84=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "2f3760f135616ebc477d3ed74eba9b63c22f83a0", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "2f3760f135616ebc477d3ed74eba9b63c22f83a0", - "type": "github" - } - }, - "iohk-nix-ng": { - "inputs": { - "blst": "blst_2", - "nixpkgs": "nixpkgs_9", - "secp256k1": "secp256k1_2", - "sodium": "sodium_2" - }, - "locked": { - "lastModified": 1696471795, - "narHash": "sha256-aNNvjUtCGXaXSp5M/HSj1SOeLjqLyTRWYbIHqAEeUp0=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "91f16fa8acb58b312f94977715c630d8bf77e33e", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohk-nix_2": { - "inputs": { - "blst": "blst_7", - "nixpkgs": [ - "flake-lang", - "ctl", - "nixpkgs" - ], - "secp256k1": "secp256k1_7", - "sodium": "sodium_7" - }, - "locked": { - "lastModified": 1721825987, - "narHash": "sha256-PPcma4tjozwXJAWf+YtHUQUulmxwulVlwSQzKItx/n8=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "eb61f2c14e1f610ec59117ad40f8690cddbf80cb", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohk-nix_3": { - "inputs": { - "blst": "blst_9", - "nixpkgs": "nixpkgs_47", - "secp256k1": "secp256k1_9", - "sodium": "sodium_9" - }, - "locked": { - "lastModified": 1732287300, - "narHash": "sha256-lURsE6HdJX0alscWhbzCWyLRK8GpAgKuXeIgX31Kfqg=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "262cb2aec2ddd914124bab90b06fe24a1a74d02c", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohkNix": { - "inputs": { - "blst": "blst_3", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "nixpkgs" - ], - "secp256k1": "secp256k1_3", - "sodium": "sodium_3" - }, - "locked": { - "lastModified": 1698999258, - "narHash": "sha256-42D1BMbdyZD+lT+pWUzb5zDQyasNbMJtH/7stuPuPfE=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "73dc2bb45af6f20cfe1d962f1334eed5e84ae764", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohkNix_2": { - "inputs": { - "blst": "blst_4", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "nixpkgs" - ], - "secp256k1": "secp256k1_4", - "sodium": "sodium_4" - }, - "locked": { - "lastModified": 1684223806, - "narHash": "sha256-IyLoP+zhuyygLtr83XXsrvKyqqLQ8FHXTiySFf4FJOI=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "86421fdd89b3af43fa716ccd07638f96c6ecd1e4", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohkNix_3": { - "inputs": { - "blst": "blst_5", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "nixpkgs" - ], - "secp256k1": "secp256k1_5", - "sodium": "sodium_5" - }, - "locked": { - "lastModified": 1698746924, - "narHash": "sha256-8og+vqQPEoB2KLUtN5esGMDymT+2bT/rCHZt1NAe7y0=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "af551ca93d969d9715fa9bf86691d9a0a19e89d9", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohkNix_4": { - "inputs": { - "blst": "blst_6", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "nixpkgs" - ], - "secp256k1": "secp256k1_6", - "sodium": "sodium_6" - }, - "locked": { - "lastModified": 1721825987, - "narHash": "sha256-PPcma4tjozwXJAWf+YtHUQUulmxwulVlwSQzKItx/n8=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "eb61f2c14e1f610ec59117ad40f8690cddbf80cb", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohkNix_5": { - "inputs": { - "blst": "blst_8", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "nixpkgs" - ], - "secp256k1": "secp256k1_8", - "sodium": "sodium_8" - }, - "locked": { - "lastModified": 1684223806, - "narHash": "sha256-IyLoP+zhuyygLtr83XXsrvKyqqLQ8FHXTiySFf4FJOI=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "86421fdd89b3af43fa716ccd07638f96c6ecd1e4", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iserv-proxy": { - "flake": false, - "locked": { - "lastModified": 1688517130, - "narHash": "sha256-hUqfxSlo+ffqVdkSZ1EDoB7/ILCL25eYkcCXW9/P3Wc=", - "ref": "hkm/remote-iserv", - "rev": "9151db2a9a61d7f5fe52ff8836f18bbd0fd8933c", - "revCount": 13, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - }, - "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - } - }, - "iserv-proxy_2": { - "flake": false, - "locked": { - "lastModified": 1691634696, - "narHash": "sha256-MZH2NznKC/gbgBu8NgIibtSUZeJ00HTLJ0PlWKCBHb0=", - "ref": "hkm/remote-iserv", - "rev": "43a979272d9addc29fbffc2e8542c5d96e993d73", - "revCount": 14, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - }, - "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - } - }, - "iserv-proxy_3": { - "flake": false, - "locked": { - "lastModified": 1670983692, - "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", - "ref": "hkm/remote-iserv", - "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", - "revCount": 10, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - }, - "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - } - }, - "iserv-proxy_4": { - "flake": false, - "locked": { - "lastModified": 1691634696, - "narHash": "sha256-MZH2NznKC/gbgBu8NgIibtSUZeJ00HTLJ0PlWKCBHb0=", - "ref": "hkm/remote-iserv", - "rev": "43a979272d9addc29fbffc2e8542c5d96e993d73", - "revCount": 14, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - }, - "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - } - }, - "iserv-proxy_5": { - "flake": false, - "locked": { - "lastModified": 1717479972, - "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", - "owner": "stable-haskell", - "repo": "iserv-proxy", - "rev": "2ed34002247213fc435d0062350b91bab920626e", - "type": "github" - }, - "original": { - "owner": "stable-haskell", - "ref": "iserv-syms", - "repo": "iserv-proxy", - "type": "github" - } - }, - "iserv-proxy_6": { - "flake": false, - "locked": { - "lastModified": 1717479972, - "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", - "owner": "stable-haskell", - "repo": "iserv-proxy", - "rev": "2ed34002247213fc435d0062350b91bab920626e", - "type": "github" - }, - "original": { - "owner": "stable-haskell", - "ref": "iserv-syms", - "repo": "iserv-proxy", - "type": "github" - } - }, - "iserv-proxy_7": { - "flake": false, - "locked": { - "lastModified": 1670983692, - "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", - "ref": "hkm/remote-iserv", - "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", - "revCount": 10, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - }, - "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - } - }, - "iserv-proxy_8": { - "flake": false, - "locked": { - "lastModified": 1717479972, - "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", - "owner": "stable-haskell", - "repo": "iserv-proxy", - "rev": "2ed34002247213fc435d0062350b91bab920626e", - "type": "github" - }, - "original": { - "owner": "stable-haskell", - "ref": "iserv-syms", - "repo": "iserv-proxy", - "type": "github" - } - }, - "lib": { - "locked": { - "lastModified": 1694306727, - "narHash": "sha256-26fkTOJOI65NOTNKFvtcJF9mzzf/kK9swHzfYt1Dl6Q=", - "owner": "nix-community", - "repo": "nixpkgs.lib", - "rev": "c30b6a84c0b84ec7aecbe74466033facc9ed103f", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixpkgs.lib", - "type": "github" - } - }, - "lowdown-src": { - "flake": false, - "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", - "type": "github" - }, - "original": { - "owner": "kristapsdz", - "repo": "lowdown", - "type": "github" - } - }, - "lowdown-src_2": { - "flake": false, - "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", - "type": "github" - }, - "original": { - "owner": "kristapsdz", - "repo": "lowdown", - "type": "github" - } - }, - "lowdown-src_3": { - "flake": false, - "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", - "type": "github" - }, - "original": { - "owner": "kristapsdz", - "repo": "lowdown", - "type": "github" - } - }, - "lowdown-src_4": { - "flake": false, - "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", - "type": "github" - }, - "original": { - "owner": "kristapsdz", - "repo": "lowdown", - "type": "github" - } - }, - "lowdown-src_5": { - "flake": false, - "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1718797200, + "narHash": "sha256-ueFxTuZrQ3ZT/Fj5sSeUWlqKa4+OkUU1xW0E+q/XTfw=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "cb139fa956158397aa398186bb32dd26f7318784", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "cb139fa956158397aa398186bb32dd26f7318784", "type": "github" } }, - "lowdown-src_6": { - "flake": false, + "haskellNix_4": { + "inputs": { + "HTTP": "HTTP_4", + "cabal-32": "cabal-32_4", + "cabal-34": "cabal-34_4", + "cabal-36": "cabal-36_4", + "cardano-shell": "cardano-shell_4", + "flake-compat": "flake-compat_12", + "flake-utils": "flake-utils_9", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_4", + "hackage": "hackage", + "hls-1.10": "hls-1.10_4", + "hpc-coveralls": "hpc-coveralls_4", + "hydra": "hydra_4", + "iserv-proxy": "iserv-proxy_4", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "haskellNix", + "nixpkgs-unstable" + ], + "nixpkgs-2003": "nixpkgs-2003_4", + "nixpkgs-2105": "nixpkgs-2105_4", + "nixpkgs-2111": "nixpkgs-2111_4", + "nixpkgs-2205": "nixpkgs-2205_4", + "nixpkgs-2211": "nixpkgs-2211_4", + "nixpkgs-unstable": "nixpkgs-unstable_4", + "old-ghc-nix": "old-ghc-nix_4", + "stackage": "stackage_4" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1684284676, + "narHash": "sha256-VhZiVvwXqHkWh8Tw81WL8vwMzGsAhag8SQCQWGXQBLs=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "ec345f667f9f1596e3849b530fe4f1573fc07653", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "input-output-hk", + "repo": "haskell.nix", "type": "github" } }, - "lowdown-src_7": { - "flake": false, + "haumea": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "std", + "lib" + ] + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1685133229, + "narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", + "owner": "nix-community", + "repo": "haumea", + "rev": "34dd58385092a23018748b50f9b23de6266dffc2", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "nix-community", + "ref": "v0.2.2", + "repo": "haumea", "type": "github" } }, - "lowdown-src_8": { - "flake": false, + "haumea_2": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "lib" + ] + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1685133229, + "narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", + "owner": "nix-community", + "repo": "haumea", + "rev": "34dd58385092a23018748b50f9b23de6266dffc2", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "nix-community", + "ref": "v0.2.2", + "repo": "haumea", "type": "github" } }, - "lowdown-src_9": { - "flake": false, + "hci-effects": { + "inputs": { + "flake-parts": "flake-parts_4", + "nixpkgs": "nixpkgs_22" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1738237977, + "narHash": "sha256-oJN/yvRL7G0WlR/hTkQIjFbPkzCV+sFnNB/38Tb9RL4=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "6d1b6d5d59758b4f5f05745f774fc13cdc59da43", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", "type": "github" } }, - "mdbook-kroki-preprocessor": { - "flake": false, + "hci-effects_2": { + "inputs": { + "flake-parts": "flake-parts_5", + "nixpkgs": "nixpkgs_27" + }, "locked": { - "lastModified": 1661755005, - "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", - "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "lastModified": 1739595404, + "narHash": "sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "06519cec8fb32d219006da6eacd255504a9996af", "type": "github" }, "original": { - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", "type": "github" } }, - "n2c": { + "hercules-ci-effects": { "inputs": { - "flake-utils": [ + "flake-parts": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "std", - "flake-utils" + "flake-parts" ], "nixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "std", "nixpkgs" ] }, "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "lastModified": 1714676393, + "narHash": "sha256-OA2LZPTCHyH0PcsNkjeTLvgsn4JmsV2VTvXQacHeUZU=", + "owner": "mlabs-haskell", + "repo": "hercules-ci-effects", + "rev": "5ad8f9613b735cb4f8222f07ae45ca37bfe76a23", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "mlabs-haskell", + "ref": "push-cache-effect", + "repo": "hercules-ci-effects", "type": "github" } }, - "n2c_2": { + "hercules-ci-effects_2": { "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "flake-utils" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] + "flake-parts": "flake-parts_2", + "nixpkgs": "nixpkgs_16" }, "locked": { - "lastModified": 1677330646, - "narHash": "sha256-hUYCwJneMjnxTvj30Fjow6UMJUITqHlpUGpXMPXUJsU=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "ebca8f58d450cae1a19c07701a5a8ae40afc9efc", + "lastModified": 1736917206, + "narHash": "sha256-JTBWmyGf8K1Rwb+gviHIUzRJk/sITtT+72HXFkTZUjo=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "afd0a42e8c61ebb56899315ee4084a8b2e4ff425", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", "type": "github" } }, - "n2c_3": { - "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "flake-utils" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "nixpkgs" - ] + "hls-1.10": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-1.10_2": { + "flake": false, + "locked": { + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", + "type": "github" }, + "original": { + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "hls-1.10_3": { + "flake": false, "locked": { - "lastModified": 1685771919, - "narHash": "sha256-3lVKWrhNXjHJB6QkZ2SJaOs4X/mmYXtY6ovPVpDMOHc=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "95e2220911874064b5d809f8d35f7835184c4ddf", + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "n2c_4": { - "inputs": { - "flake-utils": "flake-utils_19", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] - }, + "hls-1.10_4": { + "flake": false, "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "n2c_5": { - "inputs": { - "flake-utils": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "flake-utils" - ], - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] - }, + "hls-1.10_5": { + "flake": false, "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix": { - "inputs": { - "lowdown-src": "lowdown-src", - "nixpkgs": "nixpkgs_6", - "nixpkgs-regression": "nixpkgs-regression" - }, + "hls-2.0": { + "flake": false, "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nix-nomad": { - "inputs": { - "flake-compat": "flake-compat_8", - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "nix2container", - "flake-utils" - ], - "gomod2nix": "gomod2nix", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "nixpkgs" - ], - "nixpkgs-lib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "nixpkgs" - ] - }, + "hls-2.0_2": { + "flake": false, "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", "type": "github" }, "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nix-nomad_2": { - "inputs": { - "flake-compat": "flake-compat_9", - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "nix2container", - "flake-utils" - ], - "gomod2nix": "gomod2nix_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "nixpkgs" - ], - "nixpkgs-lib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "nixpkgs" - ] - }, + "hls-2.0_3": { + "flake": false, "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", "type": "github" }, "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nix-nomad_3": { - "inputs": { - "flake-compat": "flake-compat_14", - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "nix2container", - "flake-utils" - ], - "gomod2nix": "gomod2nix_3", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "nixpkgs" - ], - "nixpkgs-lib": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "nixpkgs" - ] - }, + "hls-2.0_4": { + "flake": false, "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", "type": "github" }, "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nix-nomad_4": { - "inputs": { - "flake-compat": "flake-compat_21", - "flake-utils": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "nix2container", - "flake-utils" - ], - "gomod2nix": "gomod2nix_4", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "nixpkgs" - ], - "nixpkgs-lib": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "hls-2.2": { + "flake": false, + "locked": { + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", "type": "github" }, "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix2container": { - "inputs": { - "flake-utils": "flake-utils_6", - "nixpkgs": "nixpkgs_17" - }, + "hls-2.2_2": { + "flake": false, "locked": { - "lastModified": 1671269339, - "narHash": "sha256-KR2SXh4c2Y+bgbCfXjTGJ74O9/u4CAPFA0KYZHhKf5Q=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "6800fff45afecc7e47c334d14cf2b2f4f25601a0", + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix2container_2": { - "inputs": { - "flake-utils": "flake-utils_7", - "nixpkgs": "nixpkgs_19" - }, + "hls-2.2_3": { + "flake": false, "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix2container_3": { - "inputs": { - "flake-utils": "flake-utils_10", - "nixpkgs": "nixpkgs_23" - }, + "hls-2.2_4": { + "flake": false, "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix2container_4": { - "inputs": { - "flake-utils": "flake-utils_12", - "nixpkgs": "nixpkgs_27" - }, + "hls-2.3": { + "flake": false, "locked": { - "lastModified": 1671269339, - "narHash": "sha256-KR2SXh4c2Y+bgbCfXjTGJ74O9/u4CAPFA0KYZHhKf5Q=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "6800fff45afecc7e47c334d14cf2b2f4f25601a0", + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix2container_5": { - "inputs": { - "flake-utils": "flake-utils_17", - "nixpkgs": "nixpkgs_32" - }, + "hls-2.3_2": { + "flake": false, "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix2container_6": { - "inputs": { - "flake-utils": "flake-utils_20", - "nixpkgs": "nixpkgs_36" - }, + "hls-2.3_3": { + "flake": false, "locked": { - "lastModified": 1712990762, - "narHash": "sha256-hO9W3w7NcnYeX8u8cleHiSpK2YJo7ecarFTUlbybl7k=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "20aad300c925639d5d6cbe30013c8357ce9f2a2e", + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix2container_7": { - "inputs": { - "flake-utils": "flake-utils_22", - "nixpkgs": "nixpkgs_42" - }, + "hls-2.3_4": { + "flake": false, "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix_2": { - "inputs": { - "flake-compat": "flake-compat_3", - "lowdown-src": "lowdown-src_2", - "nixpkgs": "nixpkgs_10", - "nixpkgs-regression": "nixpkgs-regression_2" - }, + "hls-2.4": { + "flake": false, "locked": { - "lastModified": 1693573010, - "narHash": "sha256-HBm8mR2skhPtbJ7p+ByrOZjs7SfsfZPwy75MwI1EUmk=", - "owner": "nixos", - "repo": "nix", - "rev": "5568ca5ff130a8a0bc3db5878432eb527c74dd60", + "lastModified": 1699862708, + "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", "type": "github" }, "original": { - "owner": "nixos", - "ref": "2.17-maintenance", - "repo": "nix", + "owner": "haskell", + "ref": "2.4.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nix_3": { - "inputs": { - "lowdown-src": "lowdown-src_3", - "nixpkgs": "nixpkgs_14", - "nixpkgs-regression": "nixpkgs-regression_3" - }, + "hls-2.4_2": { + "flake": false, "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "lastModified": 1699862708, + "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "owner": "haskell", + "ref": "2.4.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nix_4": { - "inputs": { - "lowdown-src": "lowdown-src_4", - "nixpkgs": "nixpkgs_16", - "nixpkgs-regression": "nixpkgs-regression_4" - }, + "hls-2.4_3": { + "flake": false, "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "lastModified": 1699862708, + "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "owner": "haskell", + "ref": "2.4.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nix_5": { - "inputs": { - "lowdown-src": "lowdown-src_5", - "nixpkgs": "nixpkgs_26", - "nixpkgs-regression": "nixpkgs-regression_5" - }, + "hls-2.4_4": { + "flake": false, "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "lastModified": 1699862708, + "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "owner": "haskell", + "ref": "2.4.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nix_6": { - "inputs": { - "lowdown-src": "lowdown-src_6", - "nixpkgs": "nixpkgs_35", - "nixpkgs-regression": "nixpkgs-regression_6" - }, + "hls-2.5": { + "flake": false, "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "lastModified": 1701080174, + "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "owner": "haskell", + "ref": "2.5.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix_7": { - "inputs": { - "lowdown-src": "lowdown-src_7", - "nixpkgs": "nixpkgs_38", - "nixpkgs-regression": "nixpkgs-regression_7" - }, + "hls-2.5_2": { + "flake": false, "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "lastModified": 1701080174, + "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "owner": "haskell", + "ref": "2.5.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix_8": { - "inputs": { - "lowdown-src": "lowdown-src_8", - "nixpkgs": "nixpkgs_40", - "nixpkgs-regression": "nixpkgs-regression_8" - }, + "hls-2.5_3": { + "flake": false, "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "lastModified": 1701080174, + "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "owner": "haskell", + "ref": "2.5.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix_9": { - "inputs": { - "lowdown-src": "lowdown-src_9", - "nixpkgs": "nixpkgs_45", - "nixpkgs-regression": "nixpkgs-regression_9" - }, + "hls-2.5_4": { + "flake": false, "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", + "lastModified": 1701080174, + "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", + "owner": "haskell", + "ref": "2.5.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixago": { - "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "std", - "nixpkgs" - ] - }, + "hls-2.6": { + "flake": false, "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "lastModified": 1705325287, + "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", + "owner": "haskell", + "ref": "2.6.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixago_2": { - "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] - }, + "hls-2.6_2": { + "flake": false, "locked": { - "lastModified": 1676075813, - "narHash": "sha256-X/aIT8Qc8UCqnxJvaZykx3CJ0ZnDFvO+dqp/7fglZWo=", - "owner": "nix-community", - "repo": "nixago", - "rev": "9cab4dde31ec2f2c05d702ea8648ce580664e906", + "lastModified": 1705325287, + "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", + "owner": "haskell", + "ref": "2.6.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixago_3": { - "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "nixpkgs" - ] - }, + "hls-2.6_3": { + "flake": false, "locked": { - "lastModified": 1683210100, - "narHash": "sha256-bhGDOlkWtlhVECpoOog4fWiFJmLCpVEg09a40aTjCbw=", - "owner": "nix-community", - "repo": "nixago", - "rev": "1da60ad9412135f9ed7a004669fdcf3d378ec630", + "lastModified": 1705325287, + "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", + "owner": "haskell", + "ref": "2.6.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixago_4": { - "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] - }, + "hls-2.6_4": { + "flake": false, "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "lastModified": 1705325287, + "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", + "owner": "haskell", + "ref": "2.6.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixago_5": { - "inputs": { - "flake-utils": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] - }, + "hls-2.7": { + "flake": false, "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "lastModified": 1708965829, + "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", + "owner": "haskell", + "ref": "2.7.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs": { + "hls-2.7_2": { + "flake": false, "locked": { - "lastModified": 1687420147, - "narHash": "sha256-NILbmZVsoP2Aw0OAIXdbYXrWc/qggIDDyIwZ01yUx+Q=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d449a456ba7d81038fc9ec9141eae7ee3aaf2982", + "lastModified": 1708965829, + "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "release-23.05", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.7.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs-2003": { + "hls-2.7_3": { + "flake": false, "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "lastModified": 1708965829, + "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.7.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs-2003_2": { + "hls-2.7_4": { + "flake": false, "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "lastModified": 1708965829, + "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.7.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs-2003_3": { + "hls-2.8": { + "flake": false, "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "lastModified": 1715153580, + "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.8.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs-2003_4": { + "hls-2.8_2": { + "flake": false, "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "lastModified": 1715153580, + "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.8.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs-2003_5": { + "hls-2.8_3": { + "flake": false, "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "lastModified": 1715153580, + "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.8.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs-2003_6": { + "hls-2.8_4": { + "flake": false, "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "lastModified": 1715153580, + "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.8.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs-2003_7": { + "hls-2.9": { + "flake": false, "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "lastModified": 1720003792, + "narHash": "sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "0c1817cb2babef0765e4e72dd297c013e8e3d12b", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.9.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs-2003_8": { + "hls-2.9_2": { + "flake": false, "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "lastModified": 1720003792, + "narHash": "sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "0c1817cb2babef0765e4e72dd297c013e8e3d12b", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.9.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs-2105": { + "hpc-coveralls": { + "flake": false, "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "nixpkgs-2105_2": { + "hpc-coveralls_2": { + "flake": false, "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "nixpkgs-2105_3": { + "hpc-coveralls_3": { + "flake": false, "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "nixpkgs-2105_4": { + "hpc-coveralls_4": { + "flake": false, "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "nixpkgs-2105_5": { + "hpc-coveralls_5": { + "flake": false, "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "nixpkgs-2105_6": { + "hydra": { + "inputs": { + "nix": "nix", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "nixpkgs-2105_7": { + "hydra_2": { + "inputs": { + "nix": "nix_2", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "nixpkgs-2105_8": { + "hydra_3": { + "inputs": { + "nix": "nix_3", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "nixpkgs-2111": { + "hydra_4": { + "inputs": { + "nix": "nix_4", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "nixpkgs-2111_2": { + "incl": { + "inputs": { + "nixlib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "std", + "lib" + ] + }, "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", + "owner": "divnix", + "repo": "incl", "type": "github" } }, - "nixpkgs-2111_3": { + "incl_2": { + "inputs": { + "nixlib": [ + "flake-lang", + "ctl", + "cardano-node", + "std", + "lib" + ] + }, "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", + "owner": "divnix", + "repo": "incl", "type": "github" } }, - "nixpkgs-2111_4": { + "incl_3": { + "inputs": { + "nixlib": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", + "owner": "divnix", + "repo": "incl", "type": "github" } }, - "nixpkgs-2111_5": { + "iohk-nix": { + "inputs": { + "blst": "blst_5", + "nixpkgs": "nixpkgs_23", + "secp256k1": "secp256k1_5", + "sodium": "sodium_5" + }, "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "lastModified": 1738874249, + "narHash": "sha256-oyPD/zIhs5AUEdYXZHluMAOmT5ynJSgjV2bNIXt5aKE=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "e26038d47df5d17187288fd7c8f5b915c9447b2e", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "nixpkgs-2111_6": { + "iohkNix": { + "inputs": { + "blst": "blst", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-db-sync", + "nixpkgs" + ], + "secp256k1": "secp256k1", + "sodium": "sodium" + }, "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "lastModified": 1730297014, + "narHash": "sha256-n3f1iAmltKnorHWx7FrdbGIF/FmEG8SsZshS16vnpz0=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "d407eedd4995e88d08e83ef75844a8a9c2e29b36", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "nixpkgs-2111_7": { - "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "iohkNix_2": { + "inputs": { + "blst": "blst_2", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "nixpkgs" + ], + "secp256k1": "secp256k1_2", + "sodium": "sodium_2" + }, + "locked": { + "lastModified": 1728687575, + "narHash": "sha256-38uD8SqT557eh5yyRYuthKm1yTtiWzAN0FH7L/01QKM=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "86c2bd46e8a08f62ea38ffe77cb4e9c337b42217", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "nixpkgs-2111_8": { + "iohkNix_3": { + "inputs": { + "blst": "blst_3", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "nixpkgs" + ], + "secp256k1": "secp256k1_3", + "sodium": "sodium_3" + }, "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "lastModified": 1728687575, + "narHash": "sha256-38uD8SqT557eh5yyRYuthKm1yTtiWzAN0FH7L/01QKM=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "86c2bd46e8a08f62ea38ffe77cb4e9c337b42217", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "nixpkgs-2205": { + "iohkNix_4": { + "inputs": { + "blst": "blst_4", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "nixpkgs" + ], + "secp256k1": "secp256k1_4", + "sodium": "sodium_4" + }, "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "lastModified": 1684223806, + "narHash": "sha256-IyLoP+zhuyygLtr83XXsrvKyqqLQ8FHXTiySFf4FJOI=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "86421fdd89b3af43fa716ccd07638f96c6ecd1e4", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "nixpkgs-2205_2": { + "iserv-proxy": { + "flake": false, "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "lastModified": 1717479972, + "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", + "owner": "stable-haskell", + "repo": "iserv-proxy", + "rev": "2ed34002247213fc435d0062350b91bab920626e", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", + "owner": "stable-haskell", + "ref": "iserv-syms", + "repo": "iserv-proxy", "type": "github" } }, - "nixpkgs-2205_3": { + "iserv-proxy_2": { + "flake": false, "locked": { - "lastModified": 1682600000, - "narHash": "sha256-ha4BehR1dh8EnXSoE1m/wyyYVvHI9txjW4w5/oxsW5Y=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "50fc86b75d2744e1ab3837ef74b53f103a9b55a0", + "lastModified": 1717479972, + "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", + "owner": "stable-haskell", + "repo": "iserv-proxy", + "rev": "2ed34002247213fc435d0062350b91bab920626e", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", + "owner": "stable-haskell", + "ref": "iserv-syms", + "repo": "iserv-proxy", "type": "github" } }, - "nixpkgs-2205_4": { + "iserv-proxy_3": { + "flake": false, "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "lastModified": 1717479972, + "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", + "owner": "stable-haskell", + "repo": "iserv-proxy", + "rev": "2ed34002247213fc435d0062350b91bab920626e", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", + "owner": "stable-haskell", + "ref": "iserv-syms", + "repo": "iserv-proxy", "type": "github" } }, - "nixpkgs-2205_5": { + "iserv-proxy_4": { + "flake": false, "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", - "type": "github" + "lastModified": 1670983692, + "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", + "ref": "hkm/remote-iserv", + "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", + "revCount": 10, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", - "type": "github" + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" } }, - "nixpkgs-2205_6": { + "iserv-proxy_5": { + "flake": false, "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "lastModified": 1717479972, + "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", + "owner": "stable-haskell", + "repo": "iserv-proxy", + "rev": "2ed34002247213fc435d0062350b91bab920626e", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", + "owner": "stable-haskell", + "ref": "iserv-syms", + "repo": "iserv-proxy", "type": "github" } }, - "nixpkgs-2205_7": { + "lib": { "locked": { - "lastModified": 1682600000, - "narHash": "sha256-ha4BehR1dh8EnXSoE1m/wyyYVvHI9txjW4w5/oxsW5Y=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "50fc86b75d2744e1ab3837ef74b53f103a9b55a0", + "lastModified": 1694306727, + "narHash": "sha256-26fkTOJOI65NOTNKFvtcJF9mzzf/kK9swHzfYt1Dl6Q=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "c30b6a84c0b84ec7aecbe74466033facc9ed103f", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", + "owner": "nix-community", + "repo": "nixpkgs.lib", "type": "github" } }, - "nixpkgs-2205_8": { + "lib_2": { "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", + "lastModified": 1694306727, + "narHash": "sha256-26fkTOJOI65NOTNKFvtcJF9mzzf/kK9swHzfYt1Dl6Q=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "c30b6a84c0b84ec7aecbe74466033facc9ed103f", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", + "owner": "nix-community", + "repo": "nixpkgs.lib", "type": "github" } }, - "nixpkgs-2211": { + "lowdown-src": { + "flake": false, "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", + "owner": "kristapsdz", + "repo": "lowdown", "type": "github" } }, - "nixpkgs-2211_2": { + "lowdown-src_2": { + "flake": false, "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", + "owner": "kristapsdz", + "repo": "lowdown", "type": "github" } }, - "nixpkgs-2211_3": { + "lowdown-src_3": { + "flake": false, "locked": { - "lastModified": 1682682915, - "narHash": "sha256-haR0u/j/nUvlMloYlaOYq1FMXTvkNHw+wGxc+0qXisM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "09f1b33fcc0f59263137e23e935c1bb03ec920e4", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", + "owner": "kristapsdz", + "repo": "lowdown", "type": "github" } }, - "nixpkgs-2211_4": { + "lowdown-src_4": { + "flake": false, "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", + "owner": "kristapsdz", + "repo": "lowdown", "type": "github" } }, - "nixpkgs-2211_5": { + "mdbook-kroki-preprocessor": { + "flake": false, "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", "type": "github" } }, - "nixpkgs-2211_6": { + "mdbook-kroki-preprocessor_2": { + "flake": false, "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", "type": "github" } }, - "nixpkgs-2211_7": { + "n2c": { + "inputs": { + "flake-utils": "flake-utils_4", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1682682915, - "narHash": "sha256-haR0u/j/nUvlMloYlaOYq1FMXTvkNHw+wGxc+0qXisM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "09f1b33fcc0f59263137e23e935c1bb03ec920e4", + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "nixpkgs-2211_8": { + "n2c_2": { + "inputs": { + "flake-utils": "flake-utils_8", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "nixpkgs-2305": { + "n2c_3": { + "inputs": { + "flake-utils": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "flake-utils" + ], + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1690680713, - "narHash": "sha256-NXCWA8N+GfSQyoN7ZNiOgq/nDJKOp5/BHEpiZP8sUZw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "b81af66deb21f73a70c67e5ea189568af53b1e8c", + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "nixpkgs-2305_2": { + "nix": { + "inputs": { + "lowdown-src": "lowdown-src", + "nixpkgs": "nixpkgs_3", + "nixpkgs-regression": "nixpkgs-regression" + }, "locked": { - "lastModified": 1695416179, - "narHash": "sha256-610o1+pwbSu+QuF3GE0NU5xQdTHM3t9wyYhB9l94Cd8=", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", "owner": "NixOS", - "repo": "nixpkgs", - "rev": "715d72e967ec1dd5ecc71290ee072bcaf5181ed6", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "nixpkgs-2305_3": { + "nix-nomad": { + "inputs": { + "flake-compat": "flake-compat_3", + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "cardano-automation", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "cardano-automation", + "tullia", + "nixpkgs" + ], + "nixpkgs-lib": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "cardano-automation", + "tullia", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1695416179, - "narHash": "sha256-610o1+pwbSu+QuF3GE0NU5xQdTHM3t9wyYhB9l94Cd8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "715d72e967ec1dd5ecc71290ee072bcaf5181ed6", + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", + "owner": "tristanpemble", + "repo": "nix-nomad", "type": "github" } }, - "nixpkgs-2305_4": { + "nix-nomad_2": { + "inputs": { + "flake-compat": "flake-compat_7", + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix_2", + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "nixpkgs" + ], + "nixpkgs-lib": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1701362232, - "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", + "owner": "tristanpemble", + "repo": "nix-nomad", "type": "github" } }, - "nixpkgs-2305_5": { - "locked": { - "lastModified": 1705033721, - "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", - "type": "github" + "nix-nomad_3": { + "inputs": { + "flake-compat": "flake-compat_13", + "flake-utils": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix_3", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "nixpkgs" + ], + "nixpkgs-lib": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "nixpkgs" + ] }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2305_6": { "locked": { - "lastModified": 1705033721, - "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", + "owner": "tristanpemble", + "repo": "nix-nomad", "type": "github" } }, - "nixpkgs-2311": { + "nix2container": { + "inputs": { + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs_5" + }, "locked": { - "lastModified": 1701386440, - "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", - "repo": "nixpkgs", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "nixpkgs-2311_2": { + "nix2container_2": { + "inputs": { + "flake-utils": "flake-utils_6", + "nixpkgs": "nixpkgs_11" + }, "locked": { - "lastModified": 1719957072, - "narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "7144d6241f02d171d25fba3edeaf15e0f2592105", + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", - "repo": "nixpkgs", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "nixpkgs-2311_3": { + "nix2container_3": { + "inputs": { + "flake-utils": "flake-utils_10", + "nixpkgs": "nixpkgs_19" + }, "locked": { - "lastModified": 1719957072, - "narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "7144d6241f02d171d25fba3edeaf15e0f2592105", + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", - "repo": "nixpkgs", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "nixpkgs-2405": { + "nix_2": { + "inputs": { + "lowdown-src": "lowdown-src_2", + "nixpkgs": "nixpkgs_8", + "nixpkgs-regression": "nixpkgs-regression_2" + }, "locked": { - "lastModified": 1720122915, - "narHash": "sha256-Nby8WWxj0elBu1xuRaUcRjPi/rU3xVbkAt2kj4QwX2U=", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", "owner": "NixOS", - "repo": "nixpkgs", - "rev": "835cf2d3f37989c5db6585a28de967a667a75fb1", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-24.05-darwin", - "repo": "nixpkgs", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "nixpkgs-2405_2": { + "nix_3": { + "inputs": { + "lowdown-src": "lowdown-src_3", + "nixpkgs": "nixpkgs_14", + "nixpkgs-regression": "nixpkgs-regression_3" + }, "locked": { - "lastModified": 1729242558, - "narHash": "sha256-VgcLDu4igNT0eYua6OAl9pWCI0cYXhDbR+pWP44tte0=", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", "owner": "NixOS", - "repo": "nixpkgs", - "rev": "4a3f2d3195b60d07530574988df92e049372c10e", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-24.05-darwin", - "repo": "nixpkgs", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "nixpkgs-arion": { + "nix_4": { + "inputs": { + "lowdown-src": "lowdown-src_4", + "nixpkgs": "nixpkgs_17", + "nixpkgs-regression": "nixpkgs-regression_4" + }, "locked": { - "lastModified": 1725022733, - "narHash": "sha256-M6tvBPNDilgXLh9Bfv4U0ih+TyrQReeYOLkY+U2idy8=", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", "owner": "NixOS", - "repo": "nixpkgs", - "rev": "79eb73f1c49fdfdf75f00b1ee086366380fbc323", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { "owner": "NixOS", - "repo": "nixpkgs", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "nixpkgs-lib": { + "nixago": { + "inputs": { + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "flake-utils" + ], + "nixago-exts": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "blank" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "dir": "lib", - "lastModified": 1671359686, - "narHash": "sha256-3MpC6yZo+Xn9cPordGz2/ii6IJpP2n8LE8e/ebUXLrs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "04f574a1c0fde90b51bf68198e2297ca4e7cccf4", + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", "type": "github" }, "original": { - "dir": "lib", - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", + "owner": "nix-community", + "repo": "nixago", "type": "github" } }, - "nixpkgs-lib_2": { + "nixago_2": { + "inputs": { + "flake-utils": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "flake-utils" + ], + "nixago-exts": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "blank" + ], + "nixpkgs": [ + "flake-lang", + "ctl", + "cardano-node", + "cardano-automation", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "dir": "lib", - "lastModified": 1682879489, - "narHash": "sha256-sASwo8gBt7JDnOOstnps90K1wxmVfyhsTPPNTGBPjjg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "da45bf6ec7bbcc5d1e14d3795c025199f28e0de0", + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", "type": "github" }, "original": { - "dir": "lib", - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", + "owner": "nix-community", + "repo": "nixago", "type": "github" } }, - "nixpkgs-lib_3": { + "nixago_3": { + "inputs": { + "flake-utils": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "flake-utils" + ], + "nixago-exts": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "blank" + ], + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "dir": "lib", - "lastModified": 1690881714, - "narHash": "sha256-h/nXluEqdiQHs1oSgkOOWF+j8gcJMWhwnZ9PFabN6q0=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "9e1960bc196baf6881340d53dccb203a951745a2", + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", "type": "github" }, "original": { - "dir": "lib", - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", + "owner": "nix-community", + "repo": "nixago", "type": "github" } }, - "nixpkgs-lib_4": { + "nixpkgs": { "locked": { - "dir": "lib", - "lastModified": 1690881714, - "narHash": "sha256-h/nXluEqdiQHs1oSgkOOWF+j8gcJMWhwnZ9PFabN6q0=", + "lastModified": 1687420147, + "narHash": "sha256-NILbmZVsoP2Aw0OAIXdbYXrWc/qggIDDyIwZ01yUx+Q=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9e1960bc196baf6881340d53dccb203a951745a2", + "rev": "d449a456ba7d81038fc9ec9141eae7ee3aaf2982", "type": "github" }, "original": { - "dir": "lib", "owner": "NixOS", - "ref": "nixos-unstable", + "ref": "release-23.05", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-lib_5": { + "nixpkgs-2003": { "locked": { - "dir": "lib", - "lastModified": 1696019113, - "narHash": "sha256-X3+DKYWJm93DRSdC5M6K5hLqzSya9BjibtBsuARoPco=", + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f5892ddac112a1e9b3612c39af1b72987ee5783a", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", "type": "github" }, "original": { - "dir": "lib", "owner": "NixOS", - "ref": "nixos-unstable", + "ref": "nixpkgs-20.03-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-lib_6": { - "locked": { - "lastModified": 1730504152, - "narHash": "sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s=", - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" - } - }, - "nixpkgs-regression": { + "nixpkgs-2003_2": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_2": { + "nixpkgs-2003_3": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_3": { + "nixpkgs-2003_4": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_4": { + "nixpkgs-2105": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_5": { + "nixpkgs-2105_2": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_6": { + "nixpkgs-2105_3": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_7": { + "nixpkgs-2105_4": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_8": { + "nixpkgs-2111": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-21.11-darwin", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-regression_9": { + "nixpkgs-2111_2": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-21.11-darwin", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs-stable": { + "nixpkgs-2111_3": { "locked": { - "lastModified": 1690066826, - "narHash": "sha256-6L2qb+Zc0BFkh72OS9uuX637gniOjzU6qCDBpjB2LGY=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ce45b591975d070044ca24e3003c830d26fea1c8", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-23.05", + "ref": "nixpkgs-21.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-stable_2": { + "nixpkgs-2111_4": { "locked": { - "lastModified": 1730741070, - "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=", + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-24.05", + "ref": "nixpkgs-21.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable": { + "nixpkgs-2205": { "locked": { - "lastModified": 1690720142, - "narHash": "sha256-GywuiZjBKfFkntQwpNQfL+Ksa2iGjPprBGL0/psgRZM=", + "lastModified": 1685573264, + "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3acb5c4264c490e7714d503c7166a3fde0c51324", + "rev": "380be19fbd2d9079f677978361792cb25e8a3635", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_2": { + "nixpkgs-2205_2": { "locked": { - "lastModified": 1696577711, - "narHash": "sha256-94VRjvClIKDym1QRqPkX5LTQoAwZ1E6QE/3dWtOXSIQ=", - "owner": "nixos", + "lastModified": 1685573264, + "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "a2eb207f45e4a14a1e3019d9e3863d1e208e2295", + "rev": "380be19fbd2d9079f677978361792cb25e8a3635", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", + "owner": "NixOS", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_3": { + "nixpkgs-2205_3": { "locked": { - "lastModified": 1695318763, - "narHash": "sha256-FHVPDRP2AfvsxAdc+AsgFJevMz5VBmnZglFUMlxBkcY=", + "lastModified": 1685573264, + "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e12483116b3b51a185a33a272bf351e357ba9a99", + "rev": "380be19fbd2d9079f677978361792cb25e8a3635", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_4": { + "nixpkgs-2205_4": { "locked": { - "lastModified": 1682656005, - "narHash": "sha256-fYplYo7so1O+rSQ2/aS+SbTPwLTeoUXk4ekKNtSl4P8=", + "lastModified": 1682600000, + "narHash": "sha256-ha4BehR1dh8EnXSoE1m/wyyYVvHI9txjW4w5/oxsW5Y=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6806b63e824f84b0f0e60b6d660d4ae753de0477", + "rev": "50fc86b75d2744e1ab3837ef74b53f103a9b55a0", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_5": { + "nixpkgs-2211": { "locked": { - "lastModified": 1695318763, - "narHash": "sha256-FHVPDRP2AfvsxAdc+AsgFJevMz5VBmnZglFUMlxBkcY=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e12483116b3b51a185a33a272bf351e357ba9a99", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_6": { + "nixpkgs-2211_2": { "locked": { - "lastModified": 1694822471, - "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", "type": "github" } }, - "nixpkgs-unstable_7": { + "nixpkgs-2211_3": { "locked": { - "lastModified": 1720181791, - "narHash": "sha256-i4vJL12/AdyuQuviMMd1Hk2tsGt02hDNhA0Zj1m16N8=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4284c2b73c8bce4b46a6adf23e16d9e2ec8da4bb", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_8": { + "nixpkgs-2211_4": { "locked": { - "lastModified": 1682656005, - "narHash": "sha256-fYplYo7so1O+rSQ2/aS+SbTPwLTeoUXk4ekKNtSl4P8=", + "lastModified": 1682682915, + "narHash": "sha256-haR0u/j/nUvlMloYlaOYq1FMXTvkNHw+wGxc+0qXisM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6806b63e824f84b0f0e60b6d660d4ae753de0477", + "rev": "09f1b33fcc0f59263137e23e935c1bb03ec920e4", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_9": { + "nixpkgs-2305": { "locked": { - "lastModified": 1729980323, - "narHash": "sha256-eWPRZAlhf446bKSmzw6x7RWEE4IuZgAp8NW3eXZwRAY=", + "lastModified": 1705033721, + "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "86e78d3d2084ff87688da662cf78c2af085d8e73", + "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_10": { + "nixpkgs-2305_2": { "locked": { - "lastModified": 1670461440, - "narHash": "sha256-jy1LB8HOMKGJEGXgzFRLDU1CBGL0/LlkolgnqIsF0D8=", + "lastModified": 1701362232, + "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "04a75b2eecc0acf6239acf9dd04485ff8d14f425", + "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.11-small", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_11": { + "nixpkgs-2305_3": { "locked": { - "lastModified": 1690026219, - "narHash": "sha256-oOduRk/kzQxOBknZXTLSEYd7tk+GoKvr8wV6Ab+t4AU=", + "lastModified": 1701362232, + "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f465da166263bc0d4b39dfd4ca28b777c92d4b73", + "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_12": { + "nixpkgs-2305_4": { "locked": { - "lastModified": 1675249806, - "narHash": "sha256-u8Rcqekusl3pMZm68hZqr6zozI8Ug5IxqOiqDLAlu1k=", + "lastModified": 1705033721, + "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "79feedf38536de2a27d13fe2eaf200a9c05193ba", + "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixpkgs-23.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_13": { + "nixpkgs-2311": { "locked": { - "lastModified": 1636823747, - "narHash": "sha256-oWo1nElRAOZqEf90Yek2ixdHyjD+gqtS/pAgwaQ9UhQ=", - "owner": "nixos", + "lastModified": 1719957072, + "narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "f6a2ed2082d9a51668c86ba27d0b5496f7a2ea93", + "rev": "7144d6241f02d171d25fba3edeaf15e0f2592105", "type": "github" }, "original": { - "owner": "nixos", + "owner": "NixOS", + "ref": "nixpkgs-23.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_14": { + "nixpkgs-2311_2": { "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "lastModified": 1701386440, + "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.05-small", + "ref": "nixpkgs-23.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_15": { + "nixpkgs-2311_3": { "locked": { - "lastModified": 1642336556, - "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", + "lastModified": 1701386440, + "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6", + "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", "type": "github" }, "original": { - "id": "nixpkgs", - "type": "indirect" + "owner": "NixOS", + "ref": "nixpkgs-23.11-darwin", + "repo": "nixpkgs", + "type": "github" } }, - "nixpkgs_16": { + "nixpkgs-2311_4": { "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "lastModified": 1719957072, + "narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "rev": "7144d6241f02d171d25fba3edeaf15e0f2592105", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.05-small", + "ref": "nixpkgs-23.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_17": { + "nixpkgs-2405": { "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", + "lastModified": 1726447378, + "narHash": "sha256-2yV8nmYE1p9lfmLHhOCbYwQC/W8WYfGQABoGzJOb1JQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", + "rev": "086b448a5d54fd117f4dc2dee55c9f0ff461bdc1", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-24.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_18": { + "nixpkgs-2405_2": { "locked": { - "lastModified": 1653581809, - "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", + "lastModified": 1735564410, + "narHash": "sha256-HB/FA0+1gpSs8+/boEavrGJH+Eq08/R2wWNph1sM1Dg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", + "rev": "1e7a8f391f1a490460760065fa0630b5520f9cf8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", + "ref": "nixpkgs-24.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_19": { + "nixpkgs-2411": { "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", + "lastModified": 1737255904, + "narHash": "sha256-r3fxHvh+M/mBgCZXOACzRFPsJdix2QSsKazb7VCXXo0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", + "rev": "eacdab35066b0bb1c9413c96898e326b76398a81", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-24.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_2": { + "nixpkgs-arion": { "locked": { - "lastModified": 1687420147, - "narHash": "sha256-NILbmZVsoP2Aw0OAIXdbYXrWc/qggIDDyIwZ01yUx+Q=", + "lastModified": 1737989921, + "narHash": "sha256-Ger8ClHNQ1KBX6LdW9iRbgKiKRuUjnnbDqwMtY73IT0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d449a456ba7d81038fc9ec9141eae7ee3aaf2982", + "rev": "2c62218ab7a0455ca27fc3a7d3a2af496b3580eb", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-23.05", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_20": { + "nixpkgs-lib": { "locked": { - "lastModified": 1674407282, - "narHash": "sha256-2qwc8mrPINSFdWffPK+ji6nQ9aGnnZyHSItVcYDZDlk=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "ab1254087f4cdf4af74b552d7fc95175d9bdbb49", - "type": "github" + "lastModified": 1730504152, + "narHash": "sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s=", + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" }, "original": { - "owner": "nixos", - "ref": "nixos-22.11", - "repo": "nixpkgs", - "type": "github" + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" } }, - "nixpkgs_21": { + "nixpkgs-lib_2": { "locked": { - "lastModified": 1665087388, - "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", - "type": "github" + "lastModified": 1738452942, + "narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=", + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" }, "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" } }, - "nixpkgs_22": { + "nixpkgs-regression": { "locked": { - "lastModified": 1653581809, - "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs_23": { + "nixpkgs-regression_2": { "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs_24": { + "nixpkgs-regression_3": { "locked": { - "lastModified": 1675940568, - "narHash": "sha256-epG6pOT9V0kS+FUqd7R6/CWkgnZx2DMT5Veqo+y6G3c=", - "owner": "nixos", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "6ccc4a59c3f1b56d039d93da52696633e641bc71", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_25": { - "locked": { - "lastModified": 1642336556, - "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" - }, - "original": { - "id": "nixpkgs", - "type": "indirect" } }, - "nixpkgs_26": { + "nixpkgs-regression_4": { "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.05-small", "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "nixpkgs_27": { + "nixpkgs-unstable": { "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", + "lastModified": 1726583932, + "narHash": "sha256-zACxiQx8knB3F8+Ze+1BpiYrI+CbhxyWpcSID9kVhkQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", + "rev": "658e7223191d2598641d50ee4e898126768fe847", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_28": { + "nixpkgs-unstable_2": { "locked": { - "lastModified": 1681001314, - "narHash": "sha256-5sDnCLdrKZqxLPK4KA8+f4A3YKO/u6ElpMILvX0g72c=", - "owner": "nix-community", - "repo": "nixpkgs.lib", - "rev": "367c0e1086a4eb4502b24d872cea2c7acdd557f4", + "lastModified": 1694822471, + "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixpkgs.lib", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", "type": "github" } }, - "nixpkgs_29": { + "nixpkgs-unstable_3": { "locked": { - "lastModified": 1675940568, - "narHash": "sha256-epG6pOT9V0kS+FUqd7R6/CWkgnZx2DMT5Veqo+y6G3c=", - "owner": "nixos", + "lastModified": 1694822471, + "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "6ccc4a59c3f1b56d039d93da52696633e641bc71", + "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", + "owner": "NixOS", "repo": "nixpkgs", + "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", "type": "github" } }, - "nixpkgs_3": { + "nixpkgs-unstable_4": { "locked": { - "lastModified": 1677543769, - "narHash": "sha256-LwbqS8vGisXl2WHpK9r5+kodr0zoIT8F2YB0R4y1TsA=", + "lastModified": 1682656005, + "narHash": "sha256-fYplYo7so1O+rSQ2/aS+SbTPwLTeoUXk4ekKNtSl4P8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b26d52c9feb6476580016e78935cbf96eb3e2115", + "rev": "6806b63e824f84b0f0e60b6d660d4ae753de0477", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.11", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_30": { + "nixpkgs-unstable_5": { "locked": { - "lastModified": 1677063315, - "narHash": "sha256-qiB4ajTeAOVnVSAwCNEEkoybrAlA+cpeiBxLobHndE8=", - "owner": "nixos", + "lastModified": 1737110817, + "narHash": "sha256-DSenga8XjPaUV5KUFW/i3rNkN7jm9XmguW+qQ1ZJTR4=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "988cc958c57ce4350ec248d2d53087777f9e1949", + "rev": "041c867bad68dfe34b78b2813028a2e2ea70a23c", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixos-unstable", + "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_31": { + "nixpkgs_10": { "locked": { "lastModified": 1653581809, "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", @@ -8987,7 +5346,7 @@ "type": "github" } }, - "nixpkgs_32": { + "nixpkgs_11": { "locked": { "lastModified": 1654807842, "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", @@ -9002,7 +5361,7 @@ "type": "github" } }, - "nixpkgs_33": { + "nixpkgs_12": { "locked": { "lastModified": 1665087388, "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", @@ -9018,7 +5377,7 @@ "type": "github" } }, - "nixpkgs_34": { + "nixpkgs_13": { "locked": { "lastModified": 1642336556, "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", @@ -9032,7 +5391,7 @@ "type": "indirect" } }, - "nixpkgs_35": { + "nixpkgs_14": { "locked": { "lastModified": 1657693803, "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", @@ -9048,22 +5407,7 @@ "type": "github" } }, - "nixpkgs_36": { - "locked": { - "lastModified": 1712920918, - "narHash": "sha256-1yxFvUcJfUphK9V91KufIQom7gCsztza0H4Rz2VCWUU=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "92323443a56f4e9fc4e4b712e3119f66d0969297", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_37": { + "nixpkgs_15": { "locked": { "lastModified": 1708343346, "narHash": "sha256-qlzHvterVRzS8fS0ophQpkh0rqw0abijHEOAKm0HmV0=", @@ -9079,29 +5423,13 @@ "type": "github" } }, - "nixpkgs_38": { - "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-22.05-small", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_39": { + "nixpkgs_16": { "locked": { - "lastModified": 1713714899, - "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", + "lastModified": 1736798957, + "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", + "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3", "type": "github" }, "original": { @@ -9111,23 +5439,7 @@ "type": "github" } }, - "nixpkgs_4": { - "locked": { - "lastModified": 1645013224, - "narHash": "sha256-b7OEC8vwzJv3rsz9pwnTX2LQDkeOWz2DbKypkVvNHXc=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "b66b39216b1fef2d8c33cc7a5c72d8da80b79970", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_40": { + "nixpkgs_17": { "locked": { "lastModified": 1657693803, "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", @@ -9143,7 +5455,7 @@ "type": "github" } }, - "nixpkgs_41": { + "nixpkgs_18": { "locked": { "lastModified": 1653581809, "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", @@ -9159,7 +5471,7 @@ "type": "github" } }, - "nixpkgs_42": { + "nixpkgs_19": { "locked": { "lastModified": 1654807842, "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", @@ -9174,7 +5486,23 @@ "type": "github" } }, - "nixpkgs_43": { + "nixpkgs_2": { + "locked": { + "lastModified": 1687420147, + "narHash": "sha256-NILbmZVsoP2Aw0OAIXdbYXrWc/qggIDDyIwZ01yUx+Q=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d449a456ba7d81038fc9ec9141eae7ee3aaf2982", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "release-23.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_20": { "locked": { "lastModified": 1674407282, "narHash": "sha256-2qwc8mrPINSFdWffPK+ji6nQ9aGnnZyHSItVcYDZDlk=", @@ -9190,7 +5518,7 @@ "type": "github" } }, - "nixpkgs_44": { + "nixpkgs_21": { "locked": { "lastModified": 1665087388, "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", @@ -9206,29 +5534,13 @@ "type": "github" } }, - "nixpkgs_45": { - "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-22.05-small", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_46": { + "nixpkgs_22": { "locked": { - "lastModified": 1713714899, - "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", + "lastModified": 1736798957, + "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", + "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3", "type": "github" }, "original": { @@ -9238,7 +5550,7 @@ "type": "github" } }, - "nixpkgs_47": { + "nixpkgs_23": { "locked": { "lastModified": 1684171562, "narHash": "sha256-BMUWjVWAUdyMWKk0ATMC9H0Bv4qAV/TXwwPUvTiC5IQ=", @@ -9254,13 +5566,13 @@ "type": "github" } }, - "nixpkgs_48": { + "nixpkgs_24": { "locked": { - "lastModified": 1732452129, - "narHash": "sha256-etp4MJgiW/XTOyjadi4ScLSuTDvvOPXoeAj10oC4nyM=", + "lastModified": 1739105150, + "narHash": "sha256-bZd1hkiuhJ3FICjzJQ0ooK4yzOkLWDd9ba9XFIZjFJw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c9bcd0e639ac3b2ae527ee786b579f2a35122f38", + "rev": "726ac7dbc8d5c1a344da1b78bd6726034bf9a4ec", "type": "github" }, "original": { @@ -9269,45 +5581,29 @@ "type": "github" } }, - "nixpkgs_49": { + "nixpkgs_25": { "locked": { "lastModified": 1730768919, - "narHash": "sha256-8AKquNnnSaJRXZxc5YmF/WfmxiHX6MMZZasRP6RRQkE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1680945546, - "narHash": "sha256-8FuaH5t/aVi/pR1XxnF0qi4WwMYC+YxlfdsA0V+TEuQ=", - "owner": "nixos", + "narHash": "sha256-8AKquNnnSaJRXZxc5YmF/WfmxiHX6MMZZasRP6RRQkE=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "d9f759f2ea8d265d974a6e1259bd510ac5844c5d", + "rev": "a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixos-unstable", + "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_50": { + "nixpkgs_26": { "locked": { - "lastModified": 1728538411, - "narHash": "sha256-f0SBJz1eZ2yOuKUr5CA9BHULGXVSn6miBuUWdTyhUhU=", + "lastModified": 1736320768, + "narHash": "sha256-nIYdTAiKIGnFNugbomgBJR+Xv5F1ZQU+HfaBqJKroC0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b69de56fac8c2b6f8fd27f2eca01dcda8e0a4221", + "rev": "4bc9c909d9ac828a039f288cf872d16d38185db8", "type": "github" }, "original": { @@ -9317,13 +5613,13 @@ "type": "github" } }, - "nixpkgs_51": { + "nixpkgs_27": { "locked": { - "lastModified": 1733212471, - "narHash": "sha256-M1+uCoV5igihRfcUKrr1riygbe73/dzNnzPsmaLCmpo=", + "lastModified": 1739446958, + "narHash": "sha256-+/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "55d15ad12a74eb7d4646254e13638ad0c4128776", + "rev": "2ff53fe64443980e139eaa286017f53f88336dd0", "type": "github" }, "original": { @@ -9333,7 +5629,7 @@ "type": "github" } }, - "nixpkgs_6": { + "nixpkgs_3": { "locked": { "lastModified": 1657693803, "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", @@ -9349,85 +5645,100 @@ "type": "github" } }, - "nixpkgs_7": { + "nixpkgs_4": { "locked": { - "lastModified": 1692339729, - "narHash": "sha256-TUK76/Pqm9qIDjEGd27Lz9EiBIvn5F70JWDmEQ4Y5DQ=", - "owner": "nixos", + "lastModified": 1653581809, + "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "ae521bd4e460b076a455dca8b13f4151489a725c", + "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixos-23.05", + "owner": "NixOS", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_8": { + "nixpkgs_5": { "locked": { - "lastModified": 1684171562, - "narHash": "sha256-BMUWjVWAUdyMWKk0ATMC9H0Bv4qAV/TXwwPUvTiC5IQ=", - "owner": "nixos", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "55af203d468a6f5032a519cba4f41acf5a74b638", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { - "owner": "nixos", - "ref": "release-22.11", + "owner": "NixOS", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_9": { + "nixpkgs_6": { "locked": { - "lastModified": 1684171562, - "narHash": "sha256-BMUWjVWAUdyMWKk0ATMC9H0Bv4qAV/TXwwPUvTiC5IQ=", + "lastModified": 1665087388, + "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", "owner": "nixos", "repo": "nixpkgs", - "rev": "55af203d468a6f5032a519cba4f41acf5a74b638", + "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", "type": "github" }, "original": { "owner": "nixos", - "ref": "release-22.11", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nosys": { + "nixpkgs_7": { "locked": { - "lastModified": 1667881534, - "narHash": "sha256-FhwJ15uPLRsvaxtt/bNuqE/ykMpNAPF0upozFKhTtXM=", - "owner": "divnix", - "repo": "nosys", - "rev": "2d0d5207f6a230e9d0f660903f8db9807b54814f", + "lastModified": 1642336556, + "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6", "type": "github" }, "original": { - "owner": "divnix", - "repo": "nosys", + "id": "nixpkgs", + "type": "indirect" + } + }, + "nixpkgs_8": { + "locked": { + "lastModified": 1657693803, + "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-22.05-small", + "repo": "nixpkgs", "type": "github" } }, - "nosys_2": { + "nixpkgs_9": { "locked": { - "lastModified": 1668010795, - "narHash": "sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI=", - "owner": "divnix", - "repo": "nosys", - "rev": "feade0141487801c71ff55623b421ed535dbdefa", + "lastModified": 1708343346, + "narHash": "sha256-qlzHvterVRzS8fS0ophQpkh0rqw0abijHEOAKm0HmV0=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "9312b935a538684049cb668885e60f15547d4c5f", "type": "github" }, "original": { - "owner": "divnix", - "repo": "nosys", + "owner": "nixos", + "ref": "release-23.11", + "repo": "nixpkgs", "type": "github" } }, - "nosys_3": { + "nosys": { "locked": { "lastModified": 1668010795, "narHash": "sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI=", @@ -9442,7 +5753,7 @@ "type": "github" } }, - "nosys_4": { + "nosys_2": { "locked": { "lastModified": 1668010795, "narHash": "sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI=", @@ -9457,7 +5768,7 @@ "type": "github" } }, - "nosys_5": { + "nosys_3": { "locked": { "lastModified": 1667881534, "narHash": "sha256-FhwJ15uPLRsvaxtt/bNuqE/ykMpNAPF0upozFKhTtXM=", @@ -9472,36 +5783,19 @@ "type": "github" } }, - "offchain-metadata-tools-service": { - "flake": false, - "locked": { - "lastModified": 1684160858, - "narHash": "sha256-2pu/T4uoXBxhI47PrOS6zHRZRwaSM6qA87HJySwwIBo=", - "owner": "input-output-hk", - "repo": "offchain-metadata-tools", - "rev": "a68c12b10fe5ed9802defb4a6ca80919b695d945", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "feat-add-password-to-db-conn-string", - "repo": "offchain-metadata-tools", - "type": "github" - } - }, "ogmios": { "flake": false, "locked": { - "lastModified": 1720778275, - "narHash": "sha256-OpUeVbztfLy+9d2M5w2Jgx1b/IhDNAQdlr/eP1iKUQI=", + "lastModified": 1726935492, + "narHash": "sha256-JBKxY0tzd0bilfLE7b6wZX9Cn1tIQGNGHCvy18QLvUA=", "owner": "CardanoSolutions", "repo": "ogmios", - "rev": "63a9e9d33eadbca22d1ecc90b9623b962148d174", + "rev": "1b137e49cb158684908dd5933e42de8fe5ab853b", "type": "github" }, "original": { "owner": "CardanoSolutions", - "ref": "v6.5.0", + "ref": "v6.8.0", "repo": "ogmios", "type": "github" } @@ -9576,314 +5870,115 @@ }, "old-ghc-nix_5": { "flake": false, - "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", - "type": "github" - }, - "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", - "type": "github" - } - }, - "old-ghc-nix_6": { - "flake": false, - "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", - "type": "github" - }, - "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", - "type": "github" - } - }, - "old-ghc-nix_7": { - "flake": false, - "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", - "type": "github" - }, - "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", - "type": "github" - } - }, - "old-ghc-nix_8": { - "flake": false, - "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", - "type": "github" - }, - "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", - "type": "github" - } - }, - "ops-lib": { - "flake": false, - "locked": { - "lastModified": 1675186784, - "narHash": "sha256-HqDtrvk1l7YeREzCSEpUtChtlEgT6Tww9WrJiozjukc=", - "owner": "input-output-hk", - "repo": "ops-lib", - "rev": "5be29ed53b2a4cbbf4cf326fa2e9c1f2b754d26d", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "ops-lib", - "type": "github" - } - }, - "ops-lib_2": { - "flake": false, - "locked": { - "lastModified": 1675186784, - "narHash": "sha256-HqDtrvk1l7YeREzCSEpUtChtlEgT6Tww9WrJiozjukc=", - "owner": "input-output-hk", - "repo": "ops-lib", - "rev": "5be29ed53b2a4cbbf4cf326fa2e9c1f2b754d26d", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "ops-lib", - "type": "github" - } - }, - "ops-lib_3": { - "flake": false, - "locked": { - "lastModified": 1713366514, - "narHash": "sha256-0hNlv+grFTE+TeXIbxSY97QoEEaUupOKMusZ4PesdrQ=", - "owner": "input-output-hk", - "repo": "ops-lib", - "rev": "19d83fa8eab1c0b7765f736eb4e8569d84d3e39d", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "ops-lib", - "type": "github" - } - }, - "oura": { - "inputs": { - "crane": [ - "flake-lang", - "ctl", - "cardano-nix", - "crane" - ], - "utils": "utils_6" - }, - "locked": { - "lastModified": 1720226386, - "narHash": "sha256-oBvHLxWM2vN351flm7jWjwuatFEK6la/nX9fHNy9/hk=", - "owner": "txpipe", - "repo": "oura", - "rev": "d94068562d98f43aeef8e224111fbdaeb2bc186c", - "type": "github" - }, - "original": { - "owner": "txpipe", - "ref": "v1.8.6", - "repo": "oura", - "type": "github" - } - }, - "paisano": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ], - "nosys": "nosys_2", - "yants": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "yants" - ] - }, - "locked": { - "lastModified": 1677437285, - "narHash": "sha256-YGfMothgUq1T9wMJYEhOSvdIiD/8gLXO1YcZA6hyIWU=", - "owner": "paisano-nix", - "repo": "core", - "rev": "5f2fc05e98e001cb1cf9535ded09e05d90cec131", + "locked": { + "lastModified": 1631092763, + "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", + "owner": "angerman", + "repo": "old-ghc-nix", + "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", "type": "github" }, "original": { - "owner": "paisano-nix", - "repo": "core", + "owner": "angerman", + "ref": "master", + "repo": "old-ghc-nix", "type": "github" } }, - "paisano-actions": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "paisano-mdbook-preprocessor", - "nixpkgs" - ] - }, + "ops-lib": { + "flake": false, "locked": { - "lastModified": 1677306424, - "narHash": "sha256-H9/dI2rGEbKo4KEisqbRPHFG2ajF8Tm111NPdKGIf28=", - "owner": "paisano-nix", - "repo": "actions", - "rev": "65ec4e080b3480167fc1a748c89a05901eea9a9b", + "lastModified": 1713366514, + "narHash": "sha256-0hNlv+grFTE+TeXIbxSY97QoEEaUupOKMusZ4PesdrQ=", + "owner": "input-output-hk", + "repo": "ops-lib", + "rev": "19d83fa8eab1c0b7765f736eb4e8569d84d3e39d", "type": "github" }, "original": { - "owner": "paisano-nix", - "repo": "actions", + "owner": "input-output-hk", + "repo": "ops-lib", "type": "github" } }, - "paisano-mdbook-preprocessor": { - "inputs": { - "crane": "crane_2", - "fenix": "fenix_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "nixpkgs" - ], - "paisano-actions": "paisano-actions", - "std": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std" - ] - }, + "ops-lib_2": { + "flake": false, "locked": { - "lastModified": 1680654400, - "narHash": "sha256-Qdpio+ldhUK3zfl22Mhf8HUULdUOJXDWDdO7MIK69OU=", - "owner": "paisano-nix", - "repo": "mdbook-paisano-preprocessor", - "rev": "11a8fc47f574f194a7ae7b8b98001f6143ba4cf1", + "lastModified": 1713366514, + "narHash": "sha256-0hNlv+grFTE+TeXIbxSY97QoEEaUupOKMusZ4PesdrQ=", + "owner": "input-output-hk", + "repo": "ops-lib", + "rev": "19d83fa8eab1c0b7765f736eb4e8569d84d3e39d", "type": "github" }, "original": { - "owner": "paisano-nix", - "repo": "mdbook-paisano-preprocessor", + "owner": "input-output-hk", + "repo": "ops-lib", "type": "github" } }, - "paisano-tui": { + "oura": { "inputs": { - "nixpkgs": [ + "crane": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std", - "blank" + "crane" ], - "std": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", - "std" - ] + "utils": "utils_4" }, "locked": { - "lastModified": 1677533603, - "narHash": "sha256-Nq1dH/qn7Wg/Tj1+id+ZM3o0fzqonW73jAgY3mCp35M=", - "owner": "paisano-nix", - "repo": "tui", - "rev": "802958d123b0a5437441be0cab1dee487b0ed3eb", + "lastModified": 1729716427, + "narHash": "sha256-gZhY/Xh63VLsiGzfpwoKSSmTJwguiRfOjPry+cD5pmM=", + "owner": "txpipe", + "repo": "oura", + "rev": "c6bfc5ab66a82cc6a59de5d3a3d3f01f5543b961", "type": "github" }, "original": { - "owner": "paisano-nix", - "repo": "tui", + "owner": "txpipe", + "ref": "v1.9.2", + "repo": "oura", "type": "github" } }, - "paisano-tui_2": { + "paisano": { "inputs": { + "call-flake": "call-flake", "nixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", + "cardano-node", "std", - "blank" + "nixpkgs" ], - "std": [ + "nosys": "nosys", + "yants": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", - "std" + "cardano-node", + "std", + "yants" ] }, "locked": { - "lastModified": 1681847764, - "narHash": "sha256-mdd7PJW1BZvxy0cIKsPfAO+ohVl/V7heE5ZTAHzTdv8=", + "lastModified": 1708640854, + "narHash": "sha256-EpcAmvIS4ErqhXtVEfd2GPpU/E/s8CCRSfYzk6FZ/fY=", "owner": "paisano-nix", - "repo": "tui", - "rev": "3096bad91cae73ab8ab3367d31f8a143d248a244", + "repo": "core", + "rev": "adcf742bc9463c08764ca9e6955bd5e7dcf3a3fe", "type": "github" }, "original": { "owner": "paisano-nix", - "ref": "0.1.1", - "repo": "tui", + "ref": "0.2.0", + "repo": "core", "type": "github" } }, - "paisano-tui_3": { + "paisano-tui": { "flake": false, "locked": { "lastModified": 1708637035, @@ -9900,44 +5995,26 @@ "type": "github" } }, - "paisano_2": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "nixpkgs" - ], - "nosys": "nosys_3", - "yants": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "yants" - ] - }, + "paisano-tui_2": { + "flake": false, "locked": { - "lastModified": 1686862844, - "narHash": "sha256-m8l/HpRBJnZ3c0F1u0IyQ3nYGWE0R9V5kfORuqZPzgk=", + "lastModified": 1708637035, + "narHash": "sha256-R19YURSK+MY/Rw6FZnojQS9zuDh+OoTAyngQAjjoubc=", "owner": "paisano-nix", - "repo": "core", - "rev": "6674b3d3577212c1eeecd30d62d52edbd000e726", + "repo": "tui", + "rev": "231761b260587a64817e4ffae3afc15defaa15db", "type": "github" }, "original": { "owner": "paisano-nix", - "ref": "0.1.1", - "repo": "core", + "ref": "v0.5.0", + "repo": "tui", "type": "github" } }, - "paisano_3": { + "paisano_2": { "inputs": { - "call-flake": "call-flake", + "call-flake": "call-flake_2", "nixpkgs": [ "flake-lang", "ctl", @@ -9945,7 +6022,7 @@ "std", "nixpkgs" ], - "nosys": "nosys_4", + "nosys": "nosys_2", "yants": [ "flake-lang", "ctl", @@ -9972,11 +6049,11 @@ "plutarch": { "flake": false, "locked": { - "lastModified": 1732237080, - "narHash": "sha256-KG+FYB5eSCbedj4zA7xyV5vj5DmUhLCeh1mvb7LFuZ4=", + "lastModified": 1738969328, + "narHash": "sha256-/3Em33hPDu88NOUD/XAzW2OeIq4IgbXAtGbak/QBF/8=", "owner": "plutonomicon", "repo": "plutarch-plutus", - "rev": "7207edd0cbc6ad48248bd207abcc63cc3c6a606f", + "rev": "8d7f19963d2aa6255a5e39ab8eb8cd88338ee864", "type": "github" }, "original": { @@ -9988,17 +6065,16 @@ }, "pre-commit-hooks": { "inputs": { - "flake-compat": "flake-compat_23", + "flake-compat": "flake-compat_15", "gitignore": "gitignore_2", - "nixpkgs": "nixpkgs_49", - "nixpkgs-stable": "nixpkgs-stable_2" + "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1732021966, - "narHash": "sha256-mnTbjpdqF0luOkou8ZFi2asa1N3AA2CchR/RqCNmsGE=", + "lastModified": 1737465171, + "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "3308484d1a443fc5bc92012435d79e80458fe43c", + "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17", "type": "github" }, "original": { @@ -10009,8 +6085,7 @@ }, "pre-commit-hooks-nix": { "inputs": { - "flake-compat": "flake-compat_13", - "flake-utils": "flake-utils_15", + "flake-compat": "flake-compat_6", "gitignore": "gitignore", "nixpkgs": [ "flake-lang", @@ -10026,11 +6101,11 @@ ] }, "locked": { - "lastModified": 1708018599, - "narHash": "sha256-M+Ng6+SePmA8g06CmUZWi1AjG2tFBX9WCXElBHEKnyM=", + "lastModified": 1731363552, + "narHash": "sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf+InnSMT4jlMU=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "5df5a70ad7575f6601d91f0efec95dd9bc619431", + "rev": "cd1af27aa85026ac759d5d3fccf650abe7e1bbf0", "type": "github" }, "original": { @@ -10057,164 +6132,25 @@ ] } }, - "rust-analyzer-src": { - "flake": false, - "locked": { - "lastModified": 1645205556, - "narHash": "sha256-e4lZW3qRyOEJ+vLKFQP7m2Dxh5P44NrnekZYLxlucww=", - "owner": "rust-analyzer", - "repo": "rust-analyzer", - "rev": "acf5874b39f3dc5262317a6074d9fc7285081161", - "type": "github" - }, - "original": { - "owner": "rust-analyzer", - "ref": "nightly", - "repo": "rust-analyzer", - "type": "github" - } - }, - "rust-analyzer-src_2": { - "flake": false, - "locked": { - "lastModified": 1677221702, - "narHash": "sha256-1M+58rC4eTCWNmmX0hQVZP20t3tfYNunl9D/PrGUyGE=", - "owner": "rust-lang", - "repo": "rust-analyzer", - "rev": "f5401f620699b26ed9d47a1d2e838143a18dbe3b", - "type": "github" - }, - "original": { - "owner": "rust-lang", - "ref": "nightly", - "repo": "rust-analyzer", - "type": "github" - } - }, "rust-overlay": { "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "paisano-mdbook-preprocessor", - "crane", - "flake-utils" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.7.3", - "std", - "paisano-mdbook-preprocessor", - "crane", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1675391458, - "narHash": "sha256-ukDKZw922BnK5ohL9LhwtaDAdCsJL7L6ScNEyF1lO9w=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "383a4acfd11d778d5c2efcf28376cbd845eeaedf", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_2": { - "inputs": { - "nixpkgs": "nixpkgs_50" + "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1732328983, - "narHash": "sha256-RHt12f/slrzDpSL7SSkydh8wUE4Nr4r23HlpWywed9E=", + "lastModified": 1739068147, + "narHash": "sha256-3DtLkjQFlIUOXw3TBH+iP0jglpqO6Lv2KaQc+ADg39I=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "ed8aa5b64f7d36d9338eb1d0a3bb60cf52069a72", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "secp256k1": { - "flake": false, - "locked": { - "lastModified": 1683999695, - "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", - "owner": "bitcoin-core", - "repo": "secp256k1", - "rev": "acf5c55ae6a94e5ca847e07def40427547876101", - "type": "github" - }, - "original": { - "owner": "bitcoin-core", - "ref": "v0.3.2", - "repo": "secp256k1", - "type": "github" - } - }, - "secp256k1_2": { - "flake": false, - "locked": { - "lastModified": 1683999695, - "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", - "owner": "bitcoin-core", - "repo": "secp256k1", - "rev": "acf5c55ae6a94e5ca847e07def40427547876101", - "type": "github" - }, - "original": { - "owner": "bitcoin-core", - "ref": "v0.3.2", - "repo": "secp256k1", - "type": "github" - } - }, - "secp256k1_3": { - "flake": false, - "locked": { - "lastModified": 1683999695, - "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", - "owner": "bitcoin-core", - "repo": "secp256k1", - "rev": "acf5c55ae6a94e5ca847e07def40427547876101", - "type": "github" - }, - "original": { - "owner": "bitcoin-core", - "ref": "v0.3.2", - "repo": "secp256k1", + "rev": "f61820fa2c3844d6940cce269a6afdec30aa2e6c", "type": "github" - } - }, - "secp256k1_4": { - "flake": false, - "locked": { - "lastModified": 1683999695, - "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", - "owner": "bitcoin-core", - "repo": "secp256k1", - "rev": "acf5c55ae6a94e5ca847e07def40427547876101", - "type": "github" - }, - "original": { - "owner": "bitcoin-core", - "ref": "v0.3.2", - "repo": "secp256k1", + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", "type": "github" } }, - "secp256k1_5": { + "secp256k1": { "flake": false, "locked": { "lastModified": 1683999695, @@ -10231,7 +6167,7 @@ "type": "github" } }, - "secp256k1_6": { + "secp256k1_2": { "flake": false, "locked": { "lastModified": 1683999695, @@ -10248,7 +6184,7 @@ "type": "github" } }, - "secp256k1_7": { + "secp256k1_3": { "flake": false, "locked": { "lastModified": 1683999695, @@ -10265,7 +6201,7 @@ "type": "github" } }, - "secp256k1_8": { + "secp256k1_4": { "flake": false, "locked": { "lastModified": 1683999695, @@ -10282,7 +6218,7 @@ "type": "github" } }, - "secp256k1_9": { + "secp256k1_5": { "flake": false, "locked": { "lastModified": 1683999695, @@ -10384,117 +6320,14 @@ "type": "github" } }, - "sodium_6": { - "flake": false, - "locked": { - "lastModified": 1675156279, - "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", - "type": "github" - } - }, - "sodium_7": { - "flake": false, - "locked": { - "lastModified": 1675156279, - "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", - "type": "github" - } - }, - "sodium_8": { - "flake": false, - "locked": { - "lastModified": 1675156279, - "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", - "type": "github" - } - }, - "sodium_9": { - "flake": false, - "locked": { - "lastModified": 1675156279, - "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", - "type": "github" - } - }, - "sops-nix": { - "inputs": { - "nixpkgs": "nixpkgs_11", - "nixpkgs-stable": "nixpkgs-stable" - }, - "locked": { - "lastModified": 1690199016, - "narHash": "sha256-yTLL72q6aqGmzHq+C3rDp3rIjno7EJZkFLof6Ika7cE=", - "owner": "Mic92", - "repo": "sops-nix", - "rev": "c36df4fe4bf4bb87759b1891cab21e7a05219500", - "type": "github" - }, - "original": { - "owner": "Mic92", - "repo": "sops-nix", - "type": "github" - } - }, - "stable": { - "locked": { - "lastModified": 1669735802, - "narHash": "sha256-qtG/o/i5ZWZLmXw108N2aPiVsxOcidpHJYNkT45ry9Q=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "731cc710aeebecbf45a258e977e8b68350549522", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-22.11", - "repo": "nixpkgs", - "type": "github" - } - }, "stackage": { "flake": false, "locked": { - "lastModified": 1701043780, - "narHash": "sha256-d5CYT7WGEaL6IFNmUg4JUb+onxI/tO1qgHs/TCIKB3A=", + "lastModified": 1729039017, + "narHash": "sha256-fGExfgG+7UNSOV8YfOrWPpOHWrCjA02gQkeSBhaAzjQ=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "cb49435b81adf0549589c51f39b5b38b4369f106", + "rev": "df1d8f0960407551fea7af7af75a9c2f9e18de97", "type": "github" }, "original": { @@ -10506,11 +6339,11 @@ "stackage_2": { "flake": false, "locked": { - "lastModified": 1685491814, - "narHash": "sha256-OQX+h5hcDptW6HVrYkBL7dtgqiaiz9zn6iMYv+0CDzc=", + "lastModified": 1718756571, + "narHash": "sha256-8rL8viTbuE9/yV1of6SWp2tHmhVMD2UmkOfmN5KDbKg=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "678b4297ccef8bbcd83294e47e1a9042034bdbd0", + "rev": "027672fb6fd45828b0e623c8152572d4058429ad", "type": "github" }, "original": { @@ -10520,22 +6353,6 @@ } }, "stackage_3": { - "flake": false, - "locked": { - "lastModified": 1700438989, - "narHash": "sha256-x+7Qtboko7ds8CU8pq2sIZiD45DauYoX9LxBfwQr/hs=", - "owner": "input-output-hk", - "repo": "stackage.nix", - "rev": "9c2015334cc77837b8454b3b10ef4f711a256f6f", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", - "type": "github" - } - }, - "stackage_4": { "flake": false, "locked": { "lastModified": 1718756571, @@ -10551,23 +6368,7 @@ "type": "github" } }, - "stackage_5": { - "flake": false, - "locked": { - "lastModified": 1724717508, - "narHash": "sha256-FeGR8x/iFDB6zmu3pjRFVcXc6gD/jEct/aM1kZF9gWs=", - "owner": "input-output-hk", - "repo": "stackage.nix", - "rev": "3cdad9ccd2f0232659e147b16ca979d08f77e63e", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", - "type": "github" - } - }, - "stackage_6": { + "stackage_4": { "flake": false, "locked": { "lastModified": 1684282201, @@ -10583,14 +6384,14 @@ "type": "github" } }, - "stackage_7": { + "stackage_5": { "flake": false, "locked": { - "lastModified": 1732407163, - "narHash": "sha256-FZcr31TrkwiRY+DKSBebPune/D0mRn1Lt7rd2hUVIZQ=", + "lastModified": 1739059942, + "narHash": "sha256-xurmyIYOkCID+cE3xFJGEQziH9XthkmaJeRDnUQxA84=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "b68b483a062ed06b0196b23b8ddba7ffdc789e67", + "rev": "8685fcc52063cfcb5848ba88ee59f45a059a3b56", "type": "github" }, "original": { @@ -10599,71 +6400,44 @@ "type": "github" } }, - "statix": { - "inputs": { - "fenix": "fenix", - "nixpkgs": "nixpkgs_4" - }, - "locked": { - "lastModified": 1676888642, - "narHash": "sha256-C73LOMVVCkeL0jA5xN7klLEDEB4NkuiATEJY4A/tIyM=", - "owner": "nerdypepper", - "repo": "statix", - "rev": "3c7136a23f444db252a556928c1489869ca3ab4e", - "type": "github" - }, - "original": { - "owner": "nerdypepper", - "repo": "statix", - "type": "github" - } - }, "std": { "inputs": { - "arion": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "std", - "blank" - ], "blank": "blank", "devshell": "devshell", "dmerge": "dmerge", - "flake-utils": "flake-utils_8", - "incl": "incl", + "flake-utils": "flake-utils_3", "makes": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", + "cardano-automation", "tullia", "std", "blank" ], + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor", "microvm": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.1.1", + "cardano-node", + "cardano-automation", "tullia", "std", "blank" ], "n2c": "n2c", "nixago": "nixago", - "nixpkgs": "nixpkgs_21", - "nosys": "nosys", + "nixpkgs": "nixpkgs_6", "yants": "yants" }, "locked": { - "lastModified": 1674526466, - "narHash": "sha256-tMTaS0bqLx6VJ+K+ZT6xqsXNpzvSXJTmogkraBGzymg=", + "lastModified": 1665513321, + "narHash": "sha256-D6Pacw9yf/HMs84KYuCxHXnNDL7v43gtcka5URagFqE=", "owner": "divnix", "repo": "std", - "rev": "516387e3d8d059b50e742a2ff1909ed3c8f82826", + "rev": "94a90eedb9cfc115b12ae8f6622d9904788559e4", "type": "github" }, "original": { @@ -10678,24 +6452,28 @@ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", + "cardano-node", "std", "blank" ], "blank": "blank_2", - "devshell": "devshell_2", + "devshell": [ + "flake-lang", + "ctl", + "cardano-nix", + "cardano-node", + "std", + "blank" + ], "dmerge": "dmerge_2", - "flake-utils": "flake-utils_11", - "incl": "incl_2", + "haumea": "haumea", + "incl": "incl", + "lib": "lib", "makes": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", + "cardano-node", "std", "blank" ], @@ -10703,79 +6481,45 @@ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", - "cardano-automation", - "tullia", + "cardano-node", "std", "blank" ], - "n2c": "n2c_2", - "nixago": "nixago_2", - "nixpkgs": "nixpkgs_24", - "paisano": "paisano", - "paisano-tui": "paisano-tui", - "yants": "yants_2" - }, - "locked": { - "lastModified": 1677533652, - "narHash": "sha256-H37dcuWAGZs6Yl9mewMNVcmSaUXR90/bABYFLT/nwhk=", - "owner": "divnix", - "repo": "std", - "rev": "490542f624412662e0411d8cb5a9af988ef56633", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "std", - "type": "github" - } - }, - "std_3": { - "inputs": { - "arion": [ + "n2c": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", + "cardano-node", "std", "blank" ], - "blank": "blank_3", - "devshell": "devshell_3", - "dmerge": "dmerge_3", - "flake-utils": "flake-utils_13", - "haumea": "haumea", - "incl": "incl_3", - "makes": [ + "nixago": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", + "cardano-node", "std", "blank" ], - "microvm": [ + "nixpkgs": "nixpkgs_9", + "paisano": "paisano", + "paisano-tui": "paisano-tui", + "terranix": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", + "cardano-node", "std", "blank" ], - "n2c": "n2c_3", - "nixago": "nixago_3", - "nixpkgs": "nixpkgs_29", - "paisano": "paisano_2", - "paisano-mdbook-preprocessor": "paisano-mdbook-preprocessor", - "paisano-tui": "paisano-tui_2", - "yants": "yants_3" + "yants": "yants_2" }, "locked": { - "lastModified": 1687300684, - "narHash": "sha256-oBqbss0j+B568GoO3nF2BCoPEgPxUjxfZQGynW6mhEk=", + "lastModified": 1715201063, + "narHash": "sha256-LcLYV5CDhIiJs3MfxGZFKsXPR4PtfnY4toZ75GM+2Pw=", "owner": "divnix", "repo": "std", - "rev": "80e5792eae98353a97ab1e85f3fba2784e4a3690", + "rev": "b6924a7d37a46fc1dda8efe405040e27ecf1bbd6", "type": "github" }, "original": { @@ -10784,12 +6528,12 @@ "type": "github" } }, - "std_4": { + "std_3": { "inputs": { - "blank": "blank_4", - "devshell": "devshell_5", - "dmerge": "dmerge_4", - "flake-utils": "flake-utils_18", + "blank": "blank_3", + "devshell": "devshell_3", + "dmerge": "dmerge_3", + "flake-utils": "flake-utils_7", "makes": [ "flake-lang", "ctl", @@ -10799,7 +6543,7 @@ "std", "blank" ], - "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor", + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_2", "microvm": [ "flake-lang", "ctl", @@ -10809,10 +6553,10 @@ "std", "blank" ], - "n2c": "n2c_4", - "nixago": "nixago_4", - "nixpkgs": "nixpkgs_33", - "yants": "yants_4" + "n2c": "n2c_2", + "nixago": "nixago_2", + "nixpkgs": "nixpkgs_12", + "yants": "yants_3" }, "locked": { "lastModified": 1665513321, @@ -10828,7 +6572,7 @@ "type": "github" } }, - "std_5": { + "std_4": { "inputs": { "arion": [ "flake-lang", @@ -10837,7 +6581,7 @@ "std", "blank" ], - "blank": "blank_5", + "blank": "blank_4", "devshell": [ "flake-lang", "ctl", @@ -10845,10 +6589,10 @@ "std", "blank" ], - "dmerge": "dmerge_5", + "dmerge": "dmerge_4", "haumea": "haumea_2", - "incl": "incl_4", - "lib": "lib", + "incl": "incl_2", + "lib": "lib_2", "makes": [ "flake-lang", "ctl", @@ -10877,9 +6621,9 @@ "std", "blank" ], - "nixpkgs": "nixpkgs_37", - "paisano": "paisano_3", - "paisano-tui": "paisano-tui_3", + "nixpkgs": "nixpkgs_15", + "paisano": "paisano_2", + "paisano-tui": "paisano-tui_2", "terranix": [ "flake-lang", "ctl", @@ -10887,7 +6631,7 @@ "std", "blank" ], - "yants": "yants_5" + "yants": "yants_4" }, "locked": { "lastModified": 1715201063, @@ -10903,7 +6647,7 @@ "type": "github" } }, - "std_6": { + "std_5": { "inputs": { "arion": [ "flake-lang", @@ -10912,11 +6656,11 @@ "std", "blank" ], - "blank": "blank_6", - "devshell": "devshell_6", - "dmerge": "dmerge_6", - "flake-utils": "flake-utils_23", - "incl": "incl_5", + "blank": "blank_5", + "devshell": "devshell_4", + "dmerge": "dmerge_5", + "flake-utils": "flake-utils_11", + "incl": "incl_3", "makes": [ "flake-lang", "db-sync-ctl", @@ -10931,11 +6675,11 @@ "std", "blank" ], - "n2c": "n2c_5", - "nixago": "nixago_5", - "nixpkgs": "nixpkgs_44", - "nosys": "nosys_5", - "yants": "yants_6" + "n2c": "n2c_3", + "nixago": "nixago_3", + "nixpkgs": "nixpkgs_21", + "nosys": "nosys_3", + "yants": "yants_5" }, "locked": { "lastModified": 1674526466, @@ -10951,21 +6695,6 @@ "type": "github" } }, - "stdlib": { - "locked": { - "lastModified": 1590026685, - "narHash": "sha256-E5INrVvYX/P/UpcoUFDAsuHem+lsqT+/teBs9O7oc9Q=", - "owner": "manveru", - "repo": "nix-lib", - "rev": "99088cf7febcdb21afd375a335dcafa959bef3ed", - "type": "github" - }, - "original": { - "owner": "manveru", - "repo": "nix-lib", - "type": "github" - } - }, "systems": { "locked": { "lastModified": 1681028828, @@ -11011,150 +6740,7 @@ "type": "github" } }, - "systems_4": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_5": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_6": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "terraform-providers": { - "inputs": { - "nixpkgs": "nixpkgs_12" - }, - "locked": { - "lastModified": 1695893013, - "narHash": "sha256-+5EuXNXwxpTiOEGCbZWtZCU75WcVwnS89heLa5xJ2K0=", - "owner": "nix-community", - "repo": "nixpkgs-terraform-providers-bin", - "rev": "6c6865ae6f9bff7aaa4e86c875f520f2aca65c0d", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixpkgs-terraform-providers-bin", - "type": "github" - } - }, - "terranix": { - "inputs": { - "bats-assert": "bats-assert", - "bats-support": "bats-support", - "flake-utils": "flake-utils_3", - "nixpkgs": "nixpkgs_13", - "terranix-examples": "terranix-examples" - }, - "locked": { - "lastModified": 1684906298, - "narHash": "sha256-pNuJxmVMGbBHw7pa+Bx0HY0orXIXoyyAXOKuQ1zpfus=", - "owner": "terranix", - "repo": "terranix", - "rev": "c0dd15076856c6cb425795b8c7d5d37d3a1e922a", - "type": "github" - }, - "original": { - "owner": "terranix", - "repo": "terranix", - "type": "github" - } - }, - "terranix-examples": { - "locked": { - "lastModified": 1636300201, - "narHash": "sha256-0n1je1WpiR6XfCsvi8ZK7GrpEnMl+DpwhWaO1949Vbc=", - "owner": "terranix", - "repo": "terranix-examples", - "rev": "a934aa1cf88f6bd6c6ddb4c77b77ec6e1660bd5e", - "type": "github" - }, - "original": { - "owner": "terranix", - "repo": "terranix-examples", - "type": "github" - } - }, "treefmt-nix": { - "inputs": { - "nixpkgs": "nixpkgs_5" - }, - "locked": { - "lastModified": 1683117219, - "narHash": "sha256-IyNRNRxw0slA3VQySVA7QPXHMOxlbx0ePWvj9oln+Wk=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "c8c3731dc404f837f38f89c2c5ffc2afc02e249d", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, - "treefmt-nix_2": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "cardano-parts", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1691440708, - "narHash": "sha256-c7Cc08vJ0IPFgIERpTdO2xvDHQNL7Uf5iXT0GlYO6vo=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "2a535809ac5c9a32288f4d3b938296e056d948cc", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, - "treefmt-nix_3": { "inputs": { "nixpkgs": [ "flake-lang", @@ -11164,11 +6750,11 @@ ] }, "locked": { - "lastModified": 1697388351, - "narHash": "sha256-63N2eBpKaziIy4R44vjpUu8Nz5fCJY7okKrkixvDQmY=", + "lastModified": 1730321837, + "narHash": "sha256-vK+a09qq19QNu2MlLcvN4qcRctJbqWkX7ahgPZ/+maI=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "aae39f64f5ecbe89792d05eacea5cb241891292a", + "rev": "746901bb8dba96d154b66492a29f5db0693dbfcc", "type": "github" }, "original": { @@ -11180,44 +6766,23 @@ "tullia": { "inputs": { "nix-nomad": "nix-nomad", - "nix2container": "nix2container_2", - "nixpkgs": "nixpkgs_20", - "std": "std" - }, - "locked": { - "lastModified": 1675695930, - "narHash": "sha256-B7rEZ/DBUMlK1AcJ9ajnAPPxqXY6zW2SBX+51bZV0Ac=", - "owner": "input-output-hk", - "repo": "tullia", - "rev": "621365f2c725608f381b3ad5b57afef389fd4c31", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "tullia", - "type": "github" - } - }, - "tullia_2": { - "inputs": { - "nix-nomad": "nix-nomad_2", - "nix2container": "nix2container_3", + "nix2container": "nix2container", "nixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", + "cardano-node", "cardano-automation", "nixpkgs" ], - "std": "std_2" + "std": "std" }, "locked": { - "lastModified": 1684859161, - "narHash": "sha256-wOKutImA7CRL0rN+Ng80E72fD5FkVub7LLP2k9NICpg=", + "lastModified": 1668711738, + "narHash": "sha256-CBjky16o9pqsGE1bWu6nRlRajgSXMEk+yaFQLibqXcE=", "owner": "input-output-hk", "repo": "tullia", - "rev": "2964cff1a16eefe301bdddb508c49d94d04603d6", + "rev": "ead1f515c251f0e060060ef0e2356a51d3dfe4b0", "type": "github" }, "original": { @@ -11226,10 +6791,10 @@ "type": "github" } }, - "tullia_3": { + "tullia_2": { "inputs": { - "nix-nomad": "nix-nomad_3", - "nix2container": "nix2container_5", + "nix-nomad": "nix-nomad_2", + "nix2container": "nix2container_2", "nixpkgs": [ "flake-lang", "ctl", @@ -11237,7 +6802,7 @@ "cardano-automation", "nixpkgs" ], - "std": "std_4" + "std": "std_3" }, "locked": { "lastModified": 1668711738, @@ -11253,12 +6818,12 @@ "type": "github" } }, - "tullia_4": { + "tullia_3": { "inputs": { - "nix-nomad": "nix-nomad_4", - "nix2container": "nix2container_7", - "nixpkgs": "nixpkgs_43", - "std": "std_6" + "nix-nomad": "nix-nomad_3", + "nix2container": "nix2container_3", + "nixpkgs": "nixpkgs_20", + "std": "std_5" }, "locked": { "lastModified": 1675182051, @@ -11279,26 +6844,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "utils_10": { - "locked": { - "lastModified": 1638122382, - "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", + "lastModified": 1726560853, + "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", + "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", "type": "github" }, "original": { @@ -11323,12 +6873,15 @@ } }, "utils_3": { + "inputs": { + "systems": "systems_2" + }, "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "type": "github" }, "original": { @@ -11353,21 +6906,6 @@ } }, "utils_5": { - "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "utils_6": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -11382,24 +6920,9 @@ "type": "github" } }, - "utils_7": { - "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "utils_8": { + "utils_6": { "inputs": { - "systems": "systems_6" + "systems": "systems_3" }, "locked": { "lastModified": 1710146030, @@ -11415,7 +6938,7 @@ "type": "github" } }, - "utils_9": { + "utils_7": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -11430,39 +6953,28 @@ "type": "github" } }, - "yants": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node-8.1.1", - "tullia", - "std", - "nixpkgs" - ] - }, + "utils_8": { "locked": { - "lastModified": 1667096281, - "narHash": "sha256-wRRec6ze0gJHmGn6m57/zhz/Kdvp9HS4Nl5fkQ+uIuA=", - "owner": "divnix", - "repo": "yants", - "rev": "d18f356ec25cb94dc9c275870c3a7927a10f8c3c", + "lastModified": 1638122382, + "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", "type": "github" }, "original": { - "owner": "divnix", - "repo": "yants", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "yants_2": { + "yants": { "inputs": { "nixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", + "cardano-node", "cardano-automation", "tullia", "std", @@ -11470,11 +6982,11 @@ ] }, "locked": { - "lastModified": 1667096281, - "narHash": "sha256-wRRec6ze0gJHmGn6m57/zhz/Kdvp9HS4Nl5fkQ+uIuA=", + "lastModified": 1660507851, + "narHash": "sha256-BKjq7JnVuUR/xDtcv6Vm9GYGKAblisXrAgybor9hT/s=", "owner": "divnix", "repo": "yants", - "rev": "d18f356ec25cb94dc9c275870c3a7927a10f8c3c", + "rev": "0b895ca02a8fa72bad50b454cb3e7d8a66407c96", "type": "github" }, "original": { @@ -11483,16 +6995,15 @@ "type": "github" } }, - "yants_3": { + "yants_2": { "inputs": { "nixpkgs": [ "flake-lang", "ctl", "cardano-nix", - "cardano-node-8.7.3", + "cardano-node", "std", - "haumea", - "nixpkgs" + "lib" ] }, "locked": { @@ -11509,7 +7020,7 @@ "type": "github" } }, - "yants_4": { + "yants_3": { "inputs": { "nixpkgs": [ "flake-lang", @@ -11535,7 +7046,7 @@ "type": "github" } }, - "yants_5": { + "yants_4": { "inputs": { "nixpkgs": [ "flake-lang", @@ -11559,7 +7070,7 @@ "type": "github" } }, - "yants_6": { + "yants_5": { "inputs": { "nixpkgs": [ "flake-lang", From 7517c3fe59e0186444653819c4116d0d7854b8c9 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 23 Feb 2025 12:47:32 +0000 Subject: [PATCH 59/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/af483e8b4fcb4b9644548fdbdbc912f0cd000653?narHash=sha256-JV6uOhWYVHgHvrgxbd0i7m%2B5Hzgxe3857rKg/g8cYBI%3D' (2025-02-12) → 'github:mlabs-haskell/flake-lang.nix/7077f0d2f9d6baef5c893438e98ca990d1ea3026?narHash=sha256-A10yNeK2A6NDuHQbyIbFsezMWFQ1cZLeYpirB5R1BGI%3D' (2025-02-17) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/3167b742cea332e1c978d8ecc69ef8d6bd0d6e19?narHash=sha256-oCObuK/TY71lL%2BvDiRT0/Hhrsq4GRC7n8kcKBeonoUk%3D' (2025-02-08) → 'github:input-output-hk/cardano-haskell-packages/48b941c5729384f38b79c6f473ddbf920cb310ea?narHash=sha256-HjAchUMLsiScm8Jyd%2BI/5YJKUjDp1r%2BXFzr05d%2Bo%2Br4%3D' (2025-02-15) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/112e6591b2d6313b1bd05a80a754a8ee42432a7e?narHash=sha256-LrMDRuwAlRFD2T4MgBSRd1s2VtOE%2BVl1oMCNu3RpPE0%3D' (2025-02-08) → 'github:ipetkov/crane/bef2b45cd1273a9e621fb5292de89f4ed59ad812?narHash=sha256-pPiI27T416xAAUETorkLAgHQMiLT92moOrf0ItHhtPA%3D' (2025-02-15) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/cf83ebef39cedaabdda697897fcf49c666168919?narHash=sha256-tQEyWRSlgHmJh35nPkd4hAnParjTroDLcsom4xzhwwI%3D' (2025-02-09) → 'github:input-output-hk/haskell.nix/d041a7ef0bac67a544708697ad88c19d98081b2d?narHash=sha256-gWcu6ET599PA2sDb51Tn0UBcmB5chapBT4AzQ4pDXmg%3D' (2025-02-16) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/3add10ca08103ba53a338e880f6c6c79b8939f30?narHash=sha256-ws4gten6Fv7AhLh3J7R%2BlIhMtpsrRai4HNZbfbL8w3k%3D' (2025-02-09) → 'github:input-output-hk/hackage.nix/3efa6d6c5245271e1f5e06895621c84c43de2b4a?narHash=sha256-coc6t02ey5eVCIqKlIka9c%2B0ldnCK/YDT2l%2BUkfPx3Y%3D' (2025-02-16) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/8196b4cfd8a5f491716f61112f24a3ae5e57693e?narHash=sha256-CAi5o8XT32B1Ny1R55HJ7TLECCdYd4DH5z4SlkGeUZA%3D' (2025-02-09) → 'github:input-output-hk/hackage.nix/5777c5e36e456eb164cee2346555139c2b55945c?narHash=sha256-ZdUSh72bSjo%2BOvo5DR%2BD3Tqkc2Fjyis%2BAkU/pevknXE%3D' (2025-02-16) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/8685fcc52063cfcb5848ba88ee59f45a059a3b56?narHash=sha256-xurmyIYOkCID%2BcE3xFJGEQziH9XthkmaJeRDnUQxA84%3D' (2025-02-09) → 'github:input-output-hk/stackage.nix/1c74a6edf076134c34265fa6ef4d715ff7204343?narHash=sha256-KjbDAU69UfeaZUHppgONDYhnH1lEqmfbVVhCApC6j/w%3D' (2025-02-16) • Updated input 'flake-lang/hci-effects': 'github:hercules-ci/hercules-ci-effects/6d1b6d5d59758b4f5f05745f774fc13cdc59da43?narHash=sha256-oJN/yvRL7G0WlR/hTkQIjFbPkzCV%2BsFnNB/38Tb9RL4%3D' (2025-01-30) → 'github:hercules-ci/hercules-ci-effects/06519cec8fb32d219006da6eacd255504a9996af?narHash=sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI%3D' (2025-02-15) • Updated input 'flake-lang/hci-effects/flake-parts': 'github:hercules-ci/flake-parts/b905f6fc23a9051a6e1b741e1438dbfc0634c6de?narHash=sha256-%2Bhu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU%3D' (2025-01-06) → 'github:hercules-ci/flake-parts/32ea77a06711b758da0ad9bd6a844c5740a87abd?narHash=sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm%2BzmZ7vxbJdo%3D' (2025-02-01) • Updated input 'flake-lang/hci-effects/nixpkgs': 'github:NixOS/nixpkgs/9abb87b552b7f55ac8916b6fc9e5cb486656a2f3?narHash=sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ%3D' (2025-01-13) → 'github:NixOS/nixpkgs/2ff53fe64443980e139eaa286017f53f88336dd0?narHash=sha256-%2B/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc%3D' (2025-02-13) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/726ac7dbc8d5c1a344da1b78bd6726034bf9a4ec?narHash=sha256-bZd1hkiuhJ3FICjzJQ0ooK4yzOkLWDd9ba9XFIZjFJw%3D' (2025-02-09) → 'github:NixOS/nixpkgs/e3dcb8103396d6303e6e46dd3ebeab2ce97bfbc0?narHash=sha256-D5kCBeD25UG%2BpV1gh8TTixzM1sVwv%2BE/QQQYKxAtcsA%3D' (2025-02-16) • Updated input 'flake-lang/plutarch': 'github:plutonomicon/plutarch-plutus/8d7f19963d2aa6255a5e39ab8eb8cd88338ee864?narHash=sha256-/3Em33hPDu88NOUD/XAzW2OeIq4IgbXAtGbak/QBF/8%3D' (2025-02-07) → 'github:plutonomicon/plutarch-plutus/354af1ee2487e8f3d351531c10d1dd419dec0d6d?narHash=sha256-MCoTB5Hukch9HaWvW6q7fpAhnfFOIYaEgW12rjCfcrU%3D' (2025-02-13) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/f61820fa2c3844d6940cce269a6afdec30aa2e6c?narHash=sha256-3DtLkjQFlIUOXw3TBH%2BiP0jglpqO6Lv2KaQc%2BADg39I%3D' (2025-02-09) → 'github:oxalica/rust-overlay/538528d55318e0c8af1c307dcf10b7629b988fc3?narHash=sha256-Z/GT8ebbvc4goxN4A0A5ACj26G1HaGJO%2BVetrPuC5Mo%3D' (2025-02-16) --- flake.lock | 78 +++++++++++++++++++++++++++--------------------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/flake.lock b/flake.lock index bd42b057..7e5efbc9 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1738981776, - "narHash": "sha256-oCObuK/TY71lL+vDiRT0/Hhrsq4GRC7n8kcKBeonoUk=", + "lastModified": 1739645821, + "narHash": "sha256-HjAchUMLsiScm8Jyd+I/5YJKUjDp1r+XFzr05d+o+r4=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "3167b742cea332e1c978d8ecc69ef8d6bd0d6e19", + "rev": "48b941c5729384f38b79c6f473ddbf920cb310ea", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1739053031, - "narHash": "sha256-LrMDRuwAlRFD2T4MgBSRd1s2VtOE+Vl1oMCNu3RpPE0=", + "lastModified": 1739638817, + "narHash": "sha256-pPiI27T416xAAUETorkLAgHQMiLT92moOrf0ItHhtPA=", "owner": "ipetkov", "repo": "crane", - "rev": "112e6591b2d6313b1bd05a80a754a8ee42432a7e", + "rev": "bef2b45cd1273a9e621fb5292de89f4ed59ad812", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1739355328, - "narHash": "sha256-JV6uOhWYVHgHvrgxbd0i7m+5Hzgxe3857rKg/g8cYBI=", + "lastModified": 1739785167, + "narHash": "sha256-A10yNeK2A6NDuHQbyIbFsezMWFQ1cZLeYpirB5R1BGI=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "af483e8b4fcb4b9644548fdbdbc912f0cd000653", + "rev": "7077f0d2f9d6baef5c893438e98ca990d1ea3026", "type": "github" }, "original": { @@ -1901,11 +1901,11 @@ ] }, "locked": { - "lastModified": 1736143030, - "narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=", + "lastModified": 1738453229, + "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de", + "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1739060682, - "narHash": "sha256-CAi5o8XT32B1Ny1R55HJ7TLECCdYd4DH5z4SlkGeUZA=", + "lastModified": 1739665515, + "narHash": "sha256-ZdUSh72bSjo+Ovo5DR+D3Tqkc2Fjyis+AkU/pevknXE=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "8196b4cfd8a5f491716f61112f24a3ae5e57693e", + "rev": "5777c5e36e456eb164cee2346555139c2b55945c", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1739060692, - "narHash": "sha256-ws4gten6Fv7AhLh3J7R+lIhMtpsrRai4HNZbfbL8w3k=", + "lastModified": 1739665525, + "narHash": "sha256-coc6t02ey5eVCIqKlIka9c+0ldnCK/YDT2l+UkfPx3Y=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "3add10ca08103ba53a338e880f6c6c79b8939f30", + "rev": "3efa6d6c5245271e1f5e06895621c84c43de2b4a", "type": "github" }, "original": { @@ -2510,11 +2510,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1739062317, - "narHash": "sha256-tQEyWRSlgHmJh35nPkd4hAnParjTroDLcsom4xzhwwI=", + "lastModified": 1739667111, + "narHash": "sha256-gWcu6ET599PA2sDb51Tn0UBcmB5chapBT4AzQ4pDXmg=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "cf83ebef39cedaabdda697897fcf49c666168919", + "rev": "d041a7ef0bac67a544708697ad88c19d98081b2d", "type": "github" }, "original": { @@ -2811,11 +2811,11 @@ "nixpkgs": "nixpkgs_22" }, "locked": { - "lastModified": 1738237977, - "narHash": "sha256-oJN/yvRL7G0WlR/hTkQIjFbPkzCV+sFnNB/38Tb9RL4=", + "lastModified": 1739595404, + "narHash": "sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "6d1b6d5d59758b4f5f05745f774fc13cdc59da43", + "rev": "06519cec8fb32d219006da6eacd255504a9996af", "type": "github" }, "original": { @@ -5536,11 +5536,11 @@ }, "nixpkgs_22": { "locked": { - "lastModified": 1736798957, - "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=", + "lastModified": 1739446958, + "narHash": "sha256-+/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3", + "rev": "2ff53fe64443980e139eaa286017f53f88336dd0", "type": "github" }, "original": { @@ -5568,11 +5568,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1739105150, - "narHash": "sha256-bZd1hkiuhJ3FICjzJQ0ooK4yzOkLWDd9ba9XFIZjFJw=", + "lastModified": 1739709408, + "narHash": "sha256-D5kCBeD25UG+pV1gh8TTixzM1sVwv+E/QQQYKxAtcsA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "726ac7dbc8d5c1a344da1b78bd6726034bf9a4ec", + "rev": "e3dcb8103396d6303e6e46dd3ebeab2ce97bfbc0", "type": "github" }, "original": { @@ -6049,11 +6049,11 @@ "plutarch": { "flake": false, "locked": { - "lastModified": 1738969328, - "narHash": "sha256-/3Em33hPDu88NOUD/XAzW2OeIq4IgbXAtGbak/QBF/8=", + "lastModified": 1739468927, + "narHash": "sha256-MCoTB5Hukch9HaWvW6q7fpAhnfFOIYaEgW12rjCfcrU=", "owner": "plutonomicon", "repo": "plutarch-plutus", - "rev": "8d7f19963d2aa6255a5e39ab8eb8cd88338ee864", + "rev": "354af1ee2487e8f3d351531c10d1dd419dec0d6d", "type": "github" }, "original": { @@ -6137,11 +6137,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1739068147, - "narHash": "sha256-3DtLkjQFlIUOXw3TBH+iP0jglpqO6Lv2KaQc+ADg39I=", + "lastModified": 1739673031, + "narHash": "sha256-Z/GT8ebbvc4goxN4A0A5ACj26G1HaGJO+VetrPuC5Mo=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "f61820fa2c3844d6940cce269a6afdec30aa2e6c", + "rev": "538528d55318e0c8af1c307dcf10b7629b988fc3", "type": "github" }, "original": { @@ -6387,11 +6387,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1739059942, - "narHash": "sha256-xurmyIYOkCID+cE3xFJGEQziH9XthkmaJeRDnUQxA84=", + "lastModified": 1739664745, + "narHash": "sha256-KjbDAU69UfeaZUHppgONDYhnH1lEqmfbVVhCApC6j/w=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "8685fcc52063cfcb5848ba88ee59f45a059a3b56", + "rev": "1c74a6edf076134c34265fa6ef4d715ff7204343", "type": "github" }, "original": { From 092b508e0aba43fec114150eb78487ea3ec94143 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Mon, 24 Feb 2025 10:22:54 +0100 Subject: [PATCH 60/94] Add aarch64 to supported systems --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 8d68e4df..0e3f2cb9 100644 --- a/flake.nix +++ b/flake.nix @@ -26,6 +26,6 @@ ./is-plutus-data-derive/build.nix ]; debug = true; - systems = [ "x86_64-linux" "x86_64-darwin" ]; + systems = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" ]; }; } From a8b54c46a70484bc375f8837601379d977f11e25 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Mon, 24 Feb 2025 10:23:03 +0100 Subject: [PATCH 61/94] Remove shellcheck --- pre-commit.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pre-commit.nix b/pre-commit.nix index e11f7b27..e79fcae3 100644 --- a/pre-commit.nix +++ b/pre-commit.nix @@ -14,7 +14,6 @@ nixpkgs-fmt.enable = true; deadnix.enable = true; statix.enable = true; - shellcheck.enable = true; typos.enable = true; markdownlint.enable = true; rustfmt-monorepo.enable = true; From 536b57f7d72fb27313c95f22a662888733ac7ba6 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Mon, 24 Feb 2025 10:23:57 +0100 Subject: [PATCH 62/94] Disable tests for is-plutus-data-derive --- is-plutus-data-derive/build.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/is-plutus-data-derive/build.nix b/is-plutus-data-derive/build.nix index ac6ecbae..af7af529 100644 --- a/is-plutus-data-derive/build.nix +++ b/is-plutus-data-derive/build.nix @@ -9,6 +9,7 @@ devShellHook = config.settings.shell.hook; cargoNextestExtraArgs = "--all-features"; generateDocs = false; + runTests = false; }; in From 5e29db6bfbd86fbdd3e44f04cef544833fadd8fb Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Fri, 28 Feb 2025 15:39:27 +0100 Subject: [PATCH 63/94] Add Hercules CI badge --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 7af57584..99e93d5d 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # Plutus Ledger API +[![Hercules CI](https://hercules-ci.com/api/v1/site/github/account/mlabs-haskell/project/plutus-ledger-api-rust/badge)](https://hercules-ci.com/github/mlabs-haskell/plutus-ledger-api-rust/status) + ## Packages - [plutus-ledger-api](./plutus-ledger-api/) - Plutus Ledger types and utilities From 9889f413eae5cec8ba5659c34651d304621cbc9c Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 2 Mar 2025 12:46:48 +0000 Subject: [PATCH 64/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/7077f0d2f9d6baef5c893438e98ca990d1ea3026?narHash=sha256-A10yNeK2A6NDuHQbyIbFsezMWFQ1cZLeYpirB5R1BGI%3D' (2025-02-17) → 'github:mlabs-haskell/flake-lang.nix/375f65482399b3db4cb44251518f7f6fd473f613?narHash=sha256-pyA5TCoRVHaX%2BGIyQFhGgzNItiTIDeQS0I8WnGSZBKU%3D' (2025-02-24) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/bef2b45cd1273a9e621fb5292de89f4ed59ad812?narHash=sha256-pPiI27T416xAAUETorkLAgHQMiLT92moOrf0ItHhtPA%3D' (2025-02-15) → 'github:ipetkov/crane/19de14aaeb869287647d9461cbd389187d8ecdb7?narHash=sha256-x4syUjNUuRblR07nDPeLDP7DpphaBVbUaSoeZkFbGSk%3D' (2025-02-19) • Updated input 'flake-lang/ctl': 'github:plutonomicon/cardano-transaction-lib/53f42ed89f9a2c7989022bcfcede702cf6618d25?narHash=sha256-iRxalPymdJBI34h8j79uY2R09nSKeuha%2B3VJ7r11ZKE%3D' (2025-02-04) → 'github:plutonomicon/cardano-transaction-lib/31e48fb9205c261f1e2d780f8bde1d67d2a59352?narHash=sha256-kgsr%2B%2BfwvQCxLuXSj/4aNLaf7hRYfGC3qzZaYO8QePc%3D' (2025-02-18) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/d041a7ef0bac67a544708697ad88c19d98081b2d?narHash=sha256-gWcu6ET599PA2sDb51Tn0UBcmB5chapBT4AzQ4pDXmg%3D' (2025-02-16) → 'github:input-output-hk/haskell.nix/7f1b9e9ec2551774155151d1c63bdc17f731d7a0?narHash=sha256-QG2g%2BhhMuu7chbqpygEptd7bbB16qC/rX29/5ESYfz8%3D' (2025-02-23) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/3efa6d6c5245271e1f5e06895621c84c43de2b4a?narHash=sha256-coc6t02ey5eVCIqKlIka9c%2B0ldnCK/YDT2l%2BUkfPx3Y%3D' (2025-02-16) → 'github:input-output-hk/hackage.nix/f2d8be18a32ca64677c18e3ab5449c937d79eac3?narHash=sha256-fAoo73tzsAIlf%2BwOFWmfdwuGS8hALZ5FYSxngnYWEgw%3D' (2025-02-23) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/5777c5e36e456eb164cee2346555139c2b55945c?narHash=sha256-ZdUSh72bSjo%2BOvo5DR%2BD3Tqkc2Fjyis%2BAkU/pevknXE%3D' (2025-02-16) → 'github:input-output-hk/hackage.nix/0316e50a13168e220d45e53c289820246d3bd325?narHash=sha256-rLP3VN/4dhlZY0vYMGnHleM3lW763hpOj3jRBcmtImA%3D' (2025-02-23) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/1c74a6edf076134c34265fa6ef4d715ff7204343?narHash=sha256-KjbDAU69UfeaZUHppgONDYhnH1lEqmfbVVhCApC6j/w%3D' (2025-02-16) → 'github:input-output-hk/stackage.nix/64d492737ba6c3eecf7f81dc9184dc8c1482fd06?narHash=sha256-fwXgQnLUbL3U8091RaskwGeTe0pRLCaAPh8ZkIiaTBc%3D' (2025-02-21) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/e3dcb8103396d6303e6e46dd3ebeab2ce97bfbc0?narHash=sha256-D5kCBeD25UG%2BpV1gh8TTixzM1sVwv%2BE/QQQYKxAtcsA%3D' (2025-02-16) → 'github:NixOS/nixpkgs/6fa3bffe7919b63d9fbd32cee9bde440f3e180ab?narHash=sha256-Gds/JGJu/2wv63cipSDZq7GoTOqx5EuzKyYRzcI4WTQ%3D' (2025-02-23) • Updated input 'flake-lang/plutarch': 'github:plutonomicon/plutarch-plutus/354af1ee2487e8f3d351531c10d1dd419dec0d6d?narHash=sha256-MCoTB5Hukch9HaWvW6q7fpAhnfFOIYaEgW12rjCfcrU%3D' (2025-02-13) → 'github:plutonomicon/plutarch-plutus/423ffb0d7f43e6f5bae5e6db1e4305df65d54a1f?narHash=sha256-TfiLW/MnLHSrFPLDc56Ejp8weoOaDfmHErmzLdB5SXI%3D' (2025-02-20) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/538528d55318e0c8af1c307dcf10b7629b988fc3?narHash=sha256-Z/GT8ebbvc4goxN4A0A5ACj26G1HaGJO%2BVetrPuC5Mo%3D' (2025-02-16) → 'github:oxalica/rust-overlay/f933070c29f9c1c5457447a51903f27f76ebb519?narHash=sha256-NNU0CdiaSbAeZ8tpDG4aFi9qtcdlItRvk8Xns9oBrVU%3D' (2025-02-23) --- flake.lock | 60 +++++++++++++++++++++++++++--------------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/flake.lock b/flake.lock index 7e5efbc9..e8df4afa 100644 --- a/flake.lock +++ b/flake.lock @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1739638817, - "narHash": "sha256-pPiI27T416xAAUETorkLAgHQMiLT92moOrf0ItHhtPA=", + "lastModified": 1739936662, + "narHash": "sha256-x4syUjNUuRblR07nDPeLDP7DpphaBVbUaSoeZkFbGSk=", "owner": "ipetkov", "repo": "crane", - "rev": "bef2b45cd1273a9e621fb5292de89f4ed59ad812", + "rev": "19de14aaeb869287647d9461cbd389187d8ecdb7", "type": "github" }, "original": { @@ -1056,11 +1056,11 @@ "ogmios": "ogmios" }, "locked": { - "lastModified": 1738686727, - "narHash": "sha256-iRxalPymdJBI34h8j79uY2R09nSKeuha+3VJ7r11ZKE=", + "lastModified": 1739912044, + "narHash": "sha256-kgsr++fwvQCxLuXSj/4aNLaf7hRYfGC3qzZaYO8QePc=", "owner": "plutonomicon", "repo": "cardano-transaction-lib", - "rev": "53f42ed89f9a2c7989022bcfcede702cf6618d25", + "rev": "31e48fb9205c261f1e2d780f8bde1d67d2a59352", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1739785167, - "narHash": "sha256-A10yNeK2A6NDuHQbyIbFsezMWFQ1cZLeYpirB5R1BGI=", + "lastModified": 1740389320, + "narHash": "sha256-pyA5TCoRVHaX+GIyQFhGgzNItiTIDeQS0I8WnGSZBKU=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "7077f0d2f9d6baef5c893438e98ca990d1ea3026", + "rev": "375f65482399b3db4cb44251518f7f6fd473f613", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1739665515, - "narHash": "sha256-ZdUSh72bSjo+Ovo5DR+D3Tqkc2Fjyis+AkU/pevknXE=", + "lastModified": 1740270311, + "narHash": "sha256-rLP3VN/4dhlZY0vYMGnHleM3lW763hpOj3jRBcmtImA=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "5777c5e36e456eb164cee2346555139c2b55945c", + "rev": "0316e50a13168e220d45e53c289820246d3bd325", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1739665525, - "narHash": "sha256-coc6t02ey5eVCIqKlIka9c+0ldnCK/YDT2l+UkfPx3Y=", + "lastModified": 1740270320, + "narHash": "sha256-fAoo73tzsAIlf+wOFWmfdwuGS8hALZ5FYSxngnYWEgw=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "3efa6d6c5245271e1f5e06895621c84c43de2b4a", + "rev": "f2d8be18a32ca64677c18e3ab5449c937d79eac3", "type": "github" }, "original": { @@ -2510,11 +2510,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1739667111, - "narHash": "sha256-gWcu6ET599PA2sDb51Tn0UBcmB5chapBT4AzQ4pDXmg=", + "lastModified": 1740271920, + "narHash": "sha256-QG2g+hhMuu7chbqpygEptd7bbB16qC/rX29/5ESYfz8=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "d041a7ef0bac67a544708697ad88c19d98081b2d", + "rev": "7f1b9e9ec2551774155151d1c63bdc17f731d7a0", "type": "github" }, "original": { @@ -5568,11 +5568,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1739709408, - "narHash": "sha256-D5kCBeD25UG+pV1gh8TTixzM1sVwv+E/QQQYKxAtcsA=", + "lastModified": 1740313972, + "narHash": "sha256-Gds/JGJu/2wv63cipSDZq7GoTOqx5EuzKyYRzcI4WTQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e3dcb8103396d6303e6e46dd3ebeab2ce97bfbc0", + "rev": "6fa3bffe7919b63d9fbd32cee9bde440f3e180ab", "type": "github" }, "original": { @@ -6049,11 +6049,11 @@ "plutarch": { "flake": false, "locked": { - "lastModified": 1739468927, - "narHash": "sha256-MCoTB5Hukch9HaWvW6q7fpAhnfFOIYaEgW12rjCfcrU=", + "lastModified": 1740014344, + "narHash": "sha256-TfiLW/MnLHSrFPLDc56Ejp8weoOaDfmHErmzLdB5SXI=", "owner": "plutonomicon", "repo": "plutarch-plutus", - "rev": "354af1ee2487e8f3d351531c10d1dd419dec0d6d", + "rev": "423ffb0d7f43e6f5bae5e6db1e4305df65d54a1f", "type": "github" }, "original": { @@ -6137,11 +6137,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1739673031, - "narHash": "sha256-Z/GT8ebbvc4goxN4A0A5ACj26G1HaGJO+VetrPuC5Mo=", + "lastModified": 1740277845, + "narHash": "sha256-NNU0CdiaSbAeZ8tpDG4aFi9qtcdlItRvk8Xns9oBrVU=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "538528d55318e0c8af1c307dcf10b7629b988fc3", + "rev": "f933070c29f9c1c5457447a51903f27f76ebb519", "type": "github" }, "original": { @@ -6387,11 +6387,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1739664745, - "narHash": "sha256-KjbDAU69UfeaZUHppgONDYhnH1lEqmfbVVhCApC6j/w=", + "lastModified": 1740096702, + "narHash": "sha256-fwXgQnLUbL3U8091RaskwGeTe0pRLCaAPh8ZkIiaTBc=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "1c74a6edf076134c34265fa6ef4d715ff7204343", + "rev": "64d492737ba6c3eecf7f81dc9184dc8c1482fd06", "type": "github" }, "original": { From b3a1855f05997d1a2588deafd9140461d8016acd Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 9 Mar 2025 12:45:28 +0000 Subject: [PATCH 65/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/375f65482399b3db4cb44251518f7f6fd473f613?narHash=sha256-pyA5TCoRVHaX%2BGIyQFhGgzNItiTIDeQS0I8WnGSZBKU%3D' (2025-02-24) → 'github:mlabs-haskell/flake-lang.nix/d648b0bbba233c7636b7309ebd358ed7a4ce2674?narHash=sha256-mDA8YqppdUUbMvrkcCjt1kjdzvxXLO3b7NZF4S4wd6Y%3D' (2025-03-02) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/48b941c5729384f38b79c6f473ddbf920cb310ea?narHash=sha256-HjAchUMLsiScm8Jyd%2BI/5YJKUjDp1r%2BXFzr05d%2Bo%2Br4%3D' (2025-02-15) → 'github:input-output-hk/cardano-haskell-packages/831721789ac7881a774d9e0028ff290a99995043?narHash=sha256-7QyqzhhQMkj5DA3WnCC9yMjhFJLx0GMlBhFbqYjbwrs%3D' (2025-02-28) • Updated input 'flake-lang/ctl': 'github:plutonomicon/cardano-transaction-lib/31e48fb9205c261f1e2d780f8bde1d67d2a59352?narHash=sha256-kgsr%2B%2BfwvQCxLuXSj/4aNLaf7hRYfGC3qzZaYO8QePc%3D' (2025-02-18) → 'github:plutonomicon/cardano-transaction-lib/7f66b8e660bc0a06ce5738f2f4acf092ae9cb03f?narHash=sha256-afs%2BcQQGYVua2MISAAZ1MOxa3gwTXdu5qi9hpVhCQIE%3D' (2025-02-27) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/32ea77a06711b758da0ad9bd6a844c5740a87abd?narHash=sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm%2BzmZ7vxbJdo%3D' (2025-02-01) → 'github:hercules-ci/flake-parts/3876f6b87db82f33775b1ef5ea343986105db764?narHash=sha256-ZaMw0pdoUKigLpv9HiNDH2Pjnosg7NBYMJlHTIsHEUo%3D' (2025-03-01) • Updated input 'flake-lang/flake-parts/nixpkgs-lib': 'https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz?narHash=sha256-vJzFZGaCpnmo7I6i416HaBLpC%2BhvcURh/BQwROcGIp8%3D' (2025-02-01) → 'https://github.com/NixOS/nixpkgs/archive/6d3702243441165a03f699f64416f635220f4f15.tar.gz?narHash=sha256-3wHafybyRfpUCLoE8M%2BuPVZinImg3xX%2BNm6gEfN3G8I%3D' (2025-03-01) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/7f1b9e9ec2551774155151d1c63bdc17f731d7a0?narHash=sha256-QG2g%2BhhMuu7chbqpygEptd7bbB16qC/rX29/5ESYfz8%3D' (2025-02-23) → 'github:input-output-hk/haskell.nix/a71700b2919e384b47c31ace132138d6ef5f08a4?narHash=sha256-AsapNrKZH6MP0KMgs6NzgnKgDpzBbjbyi%2B0brkTpghE%3D' (2025-03-02) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/f2d8be18a32ca64677c18e3ab5449c937d79eac3?narHash=sha256-fAoo73tzsAIlf%2BwOFWmfdwuGS8hALZ5FYSxngnYWEgw%3D' (2025-02-23) → 'github:input-output-hk/hackage.nix/e3c89204dcf4cb89afcf593c0564077d3a3a44f2?narHash=sha256-4XwCI6oHNvwFX2ZOYlwAkVVGNkYPPX3Nm3viAxkPOAc%3D' (2025-03-02) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/0316e50a13168e220d45e53c289820246d3bd325?narHash=sha256-rLP3VN/4dhlZY0vYMGnHleM3lW763hpOj3jRBcmtImA%3D' (2025-02-23) → 'github:input-output-hk/hackage.nix/1d46397e5791518aa2c744ca788e57364c12604c?narHash=sha256-%2Blbo9xIAMYSkhD5kXqKCKgjt/VtVZqn0D6FJwrEiHdc%3D' (2025-03-02) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/64d492737ba6c3eecf7f81dc9184dc8c1482fd06?narHash=sha256-fwXgQnLUbL3U8091RaskwGeTe0pRLCaAPh8ZkIiaTBc%3D' (2025-02-21) → 'github:input-output-hk/stackage.nix/4355d762f1f557aec7be2a584b3ac4a9c2c14d7d?narHash=sha256-A97HYEbmi5BuSKiccxSeoJCbSMkK%2BrFpCUH1Qc2Fo9o%3D' (2025-03-02) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/e26038d47df5d17187288fd7c8f5b915c9447b2e?narHash=sha256-oyPD/zIhs5AUEdYXZHluMAOmT5ynJSgjV2bNIXt5aKE%3D' (2025-02-06) → 'github:input-output-hk/iohk-nix/ea26f2ca1686656d89bb5760f717f713168cd5a5?narHash=sha256-0sF0RUsnFVdRMoS9amtRQs6TnCFynDFdbzn8zBLD5Bg%3D' (2025-02-25) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/6fa3bffe7919b63d9fbd32cee9bde440f3e180ab?narHash=sha256-Gds/JGJu/2wv63cipSDZq7GoTOqx5EuzKyYRzcI4WTQ%3D' (2025-02-23) → 'github:NixOS/nixpkgs/5632647cdd2e314a48f6c5497d3fc847f89bc4c8?narHash=sha256-6GxG8Cnt6ZMJjvYstPHBR%2BWE2Cg8F6qggAs7pARA1N0%3D' (2025-03-02) • Updated input 'flake-lang/plutarch': 'github:plutonomicon/plutarch-plutus/423ffb0d7f43e6f5bae5e6db1e4305df65d54a1f?narHash=sha256-TfiLW/MnLHSrFPLDc56Ejp8weoOaDfmHErmzLdB5SXI%3D' (2025-02-20) → 'github:plutonomicon/plutarch-plutus/7b346d00596531d3682204e226f7457d51849a21?narHash=sha256-k6Sm8DqSvaRDbNsIivzbw/1JrWuiDT7xoVll9ZqGgXM%3D' (2025-02-25) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/9364dc02281ce2d37a1f55b6e51f7c0f65a75f17?narHash=sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg%3D' (2025-01-21) → 'github:cachix/pre-commit-hooks.nix/42b1ba089d2034d910566bf6b40830af6b8ec732?narHash=sha256-JvQvtaphZNmeeV%2BIpHgNdiNePsIpHD5U/7QN5AeY44A%3D' (2025-03-02) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/f933070c29f9c1c5457447a51903f27f76ebb519?narHash=sha256-NNU0CdiaSbAeZ8tpDG4aFi9qtcdlItRvk8Xns9oBrVU%3D' (2025-02-23) → 'github:oxalica/rust-overlay/f4d5a693c18b389f0d58f55b6f7be6ef85af186f?narHash=sha256-VC%2B8GxWK4p08jjIbmsNfeFQajW2lsiOR/XQiOOvqgvs%3D' (2025-03-02) --- flake.lock | 86 +++++++++++++++++++++++++++--------------------------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/flake.lock b/flake.lock index e8df4afa..102496a9 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1739645821, - "narHash": "sha256-HjAchUMLsiScm8Jyd+I/5YJKUjDp1r+XFzr05d+o+r4=", + "lastModified": 1740749460, + "narHash": "sha256-7QyqzhhQMkj5DA3WnCC9yMjhFJLx0GMlBhFbqYjbwrs=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "48b941c5729384f38b79c6f473ddbf920cb310ea", + "rev": "831721789ac7881a774d9e0028ff290a99995043", "type": "github" }, "original": { @@ -1056,11 +1056,11 @@ "ogmios": "ogmios" }, "locked": { - "lastModified": 1739912044, - "narHash": "sha256-kgsr++fwvQCxLuXSj/4aNLaf7hRYfGC3qzZaYO8QePc=", + "lastModified": 1740662789, + "narHash": "sha256-afs+cQQGYVua2MISAAZ1MOxa3gwTXdu5qi9hpVhCQIE=", "owner": "plutonomicon", "repo": "cardano-transaction-lib", - "rev": "31e48fb9205c261f1e2d780f8bde1d67d2a59352", + "rev": "7f66b8e660bc0a06ce5738f2f4acf092ae9cb03f", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1740389320, - "narHash": "sha256-pyA5TCoRVHaX+GIyQFhGgzNItiTIDeQS0I8WnGSZBKU=", + "lastModified": 1740945970, + "narHash": "sha256-mDA8YqppdUUbMvrkcCjt1kjdzvxXLO3b7NZF4S4wd6Y=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "375f65482399b3db4cb44251518f7f6fd473f613", + "rev": "d648b0bbba233c7636b7309ebd358ed7a4ce2674", "type": "github" }, "original": { @@ -1879,11 +1879,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1738453229, - "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", + "lastModified": 1740872218, + "narHash": "sha256-ZaMw0pdoUKigLpv9HiNDH2Pjnosg7NBYMJlHTIsHEUo=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", + "rev": "3876f6b87db82f33775b1ef5ea343986105db764", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1740270311, - "narHash": "sha256-rLP3VN/4dhlZY0vYMGnHleM3lW763hpOj3jRBcmtImA=", + "lastModified": 1740875118, + "narHash": "sha256-+lbo9xIAMYSkhD5kXqKCKgjt/VtVZqn0D6FJwrEiHdc=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "0316e50a13168e220d45e53c289820246d3bd325", + "rev": "1d46397e5791518aa2c744ca788e57364c12604c", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1740270320, - "narHash": "sha256-fAoo73tzsAIlf+wOFWmfdwuGS8hALZ5FYSxngnYWEgw=", + "lastModified": 1740875128, + "narHash": "sha256-4XwCI6oHNvwFX2ZOYlwAkVVGNkYPPX3Nm3viAxkPOAc=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "f2d8be18a32ca64677c18e3ab5449c937d79eac3", + "rev": "e3c89204dcf4cb89afcf593c0564077d3a3a44f2", "type": "github" }, "original": { @@ -2510,11 +2510,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1740271920, - "narHash": "sha256-QG2g+hhMuu7chbqpygEptd7bbB16qC/rX29/5ESYfz8=", + "lastModified": 1740876684, + "narHash": "sha256-AsapNrKZH6MP0KMgs6NzgnKgDpzBbjbyi+0brkTpghE=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "7f1b9e9ec2551774155151d1c63bdc17f731d7a0", + "rev": "a71700b2919e384b47c31ace132138d6ef5f08a4", "type": "github" }, "original": { @@ -3821,11 +3821,11 @@ "sodium": "sodium_5" }, "locked": { - "lastModified": 1738874249, - "narHash": "sha256-oyPD/zIhs5AUEdYXZHluMAOmT5ynJSgjV2bNIXt5aKE=", + "lastModified": 1740527380, + "narHash": "sha256-0sF0RUsnFVdRMoS9amtRQs6TnCFynDFdbzn8zBLD5Bg=", "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "e26038d47df5d17187288fd7c8f5b915c9447b2e", + "rev": "ea26f2ca1686656d89bb5760f717f713168cd5a5", "type": "github" }, "original": { @@ -5176,14 +5176,14 @@ }, "nixpkgs-lib_2": { "locked": { - "lastModified": 1738452942, - "narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=", + "lastModified": 1740872140, + "narHash": "sha256-3wHafybyRfpUCLoE8M+uPVZinImg3xX+Nm6gEfN3G8I=", "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/6d3702243441165a03f699f64416f635220f4f15.tar.gz" }, "original": { "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/6d3702243441165a03f699f64416f635220f4f15.tar.gz" } }, "nixpkgs-regression": { @@ -5568,11 +5568,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1740313972, - "narHash": "sha256-Gds/JGJu/2wv63cipSDZq7GoTOqx5EuzKyYRzcI4WTQ=", + "lastModified": 1740919102, + "narHash": "sha256-6GxG8Cnt6ZMJjvYstPHBR+WE2Cg8F6qggAs7pARA1N0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6fa3bffe7919b63d9fbd32cee9bde440f3e180ab", + "rev": "5632647cdd2e314a48f6c5497d3fc847f89bc4c8", "type": "github" }, "original": { @@ -6049,11 +6049,11 @@ "plutarch": { "flake": false, "locked": { - "lastModified": 1740014344, - "narHash": "sha256-TfiLW/MnLHSrFPLDc56Ejp8weoOaDfmHErmzLdB5SXI=", + "lastModified": 1740480471, + "narHash": "sha256-k6Sm8DqSvaRDbNsIivzbw/1JrWuiDT7xoVll9ZqGgXM=", "owner": "plutonomicon", "repo": "plutarch-plutus", - "rev": "423ffb0d7f43e6f5bae5e6db1e4305df65d54a1f", + "rev": "7b346d00596531d3682204e226f7457d51849a21", "type": "github" }, "original": { @@ -6070,11 +6070,11 @@ "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1737465171, - "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=", + "lastModified": 1740915799, + "narHash": "sha256-JvQvtaphZNmeeV+IpHgNdiNePsIpHD5U/7QN5AeY44A=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17", + "rev": "42b1ba089d2034d910566bf6b40830af6b8ec732", "type": "github" }, "original": { @@ -6137,11 +6137,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1740277845, - "narHash": "sha256-NNU0CdiaSbAeZ8tpDG4aFi9qtcdlItRvk8Xns9oBrVU=", + "lastModified": 1740882709, + "narHash": "sha256-VC+8GxWK4p08jjIbmsNfeFQajW2lsiOR/XQiOOvqgvs=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "f933070c29f9c1c5457447a51903f27f76ebb519", + "rev": "f4d5a693c18b389f0d58f55b6f7be6ef85af186f", "type": "github" }, "original": { @@ -6387,11 +6387,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1740096702, - "narHash": "sha256-fwXgQnLUbL3U8091RaskwGeTe0pRLCaAPh8ZkIiaTBc=", + "lastModified": 1740874348, + "narHash": "sha256-A97HYEbmi5BuSKiccxSeoJCbSMkK+rFpCUH1Qc2Fo9o=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "64d492737ba6c3eecf7f81dc9184dc8c1482fd06", + "rev": "4355d762f1f557aec7be2a584b3ac4a9c2c14d7d", "type": "github" }, "original": { From cfd077d4a46e051047643bc05a70c1b568187a05 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 16 Mar 2025 12:46:15 +0000 Subject: [PATCH 66/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/d648b0bbba233c7636b7309ebd358ed7a4ce2674?narHash=sha256-mDA8YqppdUUbMvrkcCjt1kjdzvxXLO3b7NZF4S4wd6Y%3D' (2025-03-02) → 'github:mlabs-haskell/flake-lang.nix/3040dff74e336732825e3d078b07a27dab15c1a8?narHash=sha256-EXdZwOi%2B2nz3Bh12Uszq6TYCbP5dEV8mQy%2BWf0VDI90%3D' (2025-03-10) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/831721789ac7881a774d9e0028ff290a99995043?narHash=sha256-7QyqzhhQMkj5DA3WnCC9yMjhFJLx0GMlBhFbqYjbwrs%3D' (2025-02-28) → 'github:input-output-hk/cardano-haskell-packages/e2e7eccc0826d50c766534a4b368cdaec5c95d61?narHash=sha256-kXSbcBCVd2g//VImKW0CMXUfY6NXl%2BdVve/SgIXGGYM%3D' (2025-03-04) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/19de14aaeb869287647d9461cbd389187d8ecdb7?narHash=sha256-x4syUjNUuRblR07nDPeLDP7DpphaBVbUaSoeZkFbGSk%3D' (2025-02-19) → 'github:ipetkov/crane/bb1c9567c43e4434f54e9481eb4b8e8e0d50f0b5?narHash=sha256-JBTSyJFQdO3V8cgcL08VaBUByEU6P5kXbTJN6R0PFQo%3D' (2025-03-09) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/3876f6b87db82f33775b1ef5ea343986105db764?narHash=sha256-ZaMw0pdoUKigLpv9HiNDH2Pjnosg7NBYMJlHTIsHEUo%3D' (2025-03-01) → 'github:hercules-ci/flake-parts/f4330d22f1c5d2ba72d3d22df5597d123fdb60a9?narHash=sha256-%2Bu2UunDA4Cl5Fci3m7S643HzKmIDAe%2BfiXrLqYsR2fs%3D' (2025-03-07) • Updated input 'flake-lang/flake-parts/nixpkgs-lib': 'https://github.com/NixOS/nixpkgs/archive/6d3702243441165a03f699f64416f635220f4f15.tar.gz?narHash=sha256-3wHafybyRfpUCLoE8M%2BuPVZinImg3xX%2BNm6gEfN3G8I%3D' (2025-03-01) → 'github:nix-community/nixpkgs.lib/147dee35aab2193b174e4c0868bd80ead5ce755c?narHash=sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk%3D' (2025-03-02) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/a71700b2919e384b47c31ace132138d6ef5f08a4?narHash=sha256-AsapNrKZH6MP0KMgs6NzgnKgDpzBbjbyi%2B0brkTpghE%3D' (2025-03-02) → 'github:input-output-hk/haskell.nix/b9783da81e2f87822fa91bca1597ede0ee46cc4c?narHash=sha256-/Uj7jgPbiCwJA5IQsbBjYkLhLGp7gfbp4kIabA749BQ%3D' (2025-03-09) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/e3c89204dcf4cb89afcf593c0564077d3a3a44f2?narHash=sha256-4XwCI6oHNvwFX2ZOYlwAkVVGNkYPPX3Nm3viAxkPOAc%3D' (2025-03-02) → 'github:input-output-hk/hackage.nix/ceb62f3d95b254c61d9d5f3dbdc9a142f9da3953?narHash=sha256-Z4Z3Nuumvkf6mtpgsSSQrrgK7k%2B9QmGbgy/JVNru0Yo%3D' (2025-03-09) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/1d46397e5791518aa2c744ca788e57364c12604c?narHash=sha256-%2Blbo9xIAMYSkhD5kXqKCKgjt/VtVZqn0D6FJwrEiHdc%3D' (2025-03-02) → 'github:input-output-hk/hackage.nix/8ac35229668dbd9bbdc192ff7a592d48dbb9864c?narHash=sha256-SdgbWj0BAnrRmNfWm181Lz5M6%2B6r5n0P%2Bla69WuSLts%3D' (2025-03-09) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/4355d762f1f557aec7be2a584b3ac4a9c2c14d7d?narHash=sha256-A97HYEbmi5BuSKiccxSeoJCbSMkK%2BrFpCUH1Qc2Fo9o%3D' (2025-03-02) → 'github:input-output-hk/stackage.nix/c0f7b26ba3b7bc95682984f2e2b8aa7250104ab5?narHash=sha256-hqM00fKXy2dWc8AgTYfPu5T/b4wI/f%2BVan1l9i0X9v0%3D' (2025-03-08) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/5632647cdd2e314a48f6c5497d3fc847f89bc4c8?narHash=sha256-6GxG8Cnt6ZMJjvYstPHBR%2BWE2Cg8F6qggAs7pARA1N0%3D' (2025-03-02) → 'github:NixOS/nixpkgs/911a79a04fd3fd912c170f53baf8a99863f87379?narHash=sha256-yEJ0KlFDMkXUnv3bMK%2BLFYBYjwnrJGupZ0aw9Nqsmd0%3D' (2025-03-09) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/42b1ba089d2034d910566bf6b40830af6b8ec732?narHash=sha256-JvQvtaphZNmeeV%2BIpHgNdiNePsIpHD5U/7QN5AeY44A%3D' (2025-03-02) → 'github:cachix/pre-commit-hooks.nix/b5a62751225b2f62ff3147d0a334055ebadcd5cc?narHash=sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc%3D' (2025-03-07) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/f4d5a693c18b389f0d58f55b6f7be6ef85af186f?narHash=sha256-VC%2B8GxWK4p08jjIbmsNfeFQajW2lsiOR/XQiOOvqgvs%3D' (2025-03-02) → 'github:oxalica/rust-overlay/d95582a900bd0e7e516ce3bed0503f742649fffb?narHash=sha256-3hrpyTLNmnJpioVT1DDoVgsp7fWYkuS3JWCtfHsX1rk%3D' (2025-03-09) • Updated input 'hci-effects': 'github:hercules-ci/hercules-ci-effects/06519cec8fb32d219006da6eacd255504a9996af?narHash=sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI%3D' (2025-02-15) → 'github:hercules-ci/hercules-ci-effects/524637ef84c177661690b924bf64a1ce18072a2c?narHash=sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8%3D' (2025-03-15) • Updated input 'hci-effects/flake-parts': 'github:hercules-ci/flake-parts/32ea77a06711b758da0ad9bd6a844c5740a87abd?narHash=sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm%2BzmZ7vxbJdo%3D' (2025-02-01) → 'github:hercules-ci/flake-parts/f4330d22f1c5d2ba72d3d22df5597d123fdb60a9?narHash=sha256-%2Bu2UunDA4Cl5Fci3m7S643HzKmIDAe%2BfiXrLqYsR2fs%3D' (2025-03-07) • Updated input 'hci-effects/nixpkgs': 'github:NixOS/nixpkgs/2ff53fe64443980e139eaa286017f53f88336dd0?narHash=sha256-%2B/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc%3D' (2025-02-13) → 'github:NixOS/nixpkgs/6607cf789e541e7873d40d3a8f7815ea92204f32?narHash=sha256-cPfs8qMccim2RBgtKGF%2Bx9IBCduRvd/N5F4nYpU0TVE%3D' (2025-03-13) --- flake.lock | 99 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 51 insertions(+), 48 deletions(-) diff --git a/flake.lock b/flake.lock index 102496a9..723d7ec2 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1740749460, - "narHash": "sha256-7QyqzhhQMkj5DA3WnCC9yMjhFJLx0GMlBhFbqYjbwrs=", + "lastModified": 1741109602, + "narHash": "sha256-kXSbcBCVd2g//VImKW0CMXUfY6NXl+dVve/SgIXGGYM=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "831721789ac7881a774d9e0028ff290a99995043", + "rev": "e2e7eccc0826d50c766534a4b368cdaec5c95d61", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1739936662, - "narHash": "sha256-x4syUjNUuRblR07nDPeLDP7DpphaBVbUaSoeZkFbGSk=", + "lastModified": 1741481578, + "narHash": "sha256-JBTSyJFQdO3V8cgcL08VaBUByEU6P5kXbTJN6R0PFQo=", "owner": "ipetkov", "repo": "crane", - "rev": "19de14aaeb869287647d9461cbd389187d8ecdb7", + "rev": "bb1c9567c43e4434f54e9481eb4b8e8e0d50f0b5", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1740945970, - "narHash": "sha256-mDA8YqppdUUbMvrkcCjt1kjdzvxXLO3b7NZF4S4wd6Y=", + "lastModified": 1741591660, + "narHash": "sha256-EXdZwOi+2nz3Bh12Uszq6TYCbP5dEV8mQy+Wf0VDI90=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "d648b0bbba233c7636b7309ebd358ed7a4ce2674", + "rev": "3040dff74e336732825e3d078b07a27dab15c1a8", "type": "github" }, "original": { @@ -1879,11 +1879,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1740872218, - "narHash": "sha256-ZaMw0pdoUKigLpv9HiNDH2Pjnosg7NBYMJlHTIsHEUo=", + "lastModified": 1741352980, + "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "3876f6b87db82f33775b1ef5ea343986105db764", + "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", "type": "github" }, "original": { @@ -1921,11 +1921,11 @@ ] }, "locked": { - "lastModified": 1738453229, - "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", + "lastModified": 1741352980, + "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", + "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1740875118, - "narHash": "sha256-+lbo9xIAMYSkhD5kXqKCKgjt/VtVZqn0D6FJwrEiHdc=", + "lastModified": 1741479747, + "narHash": "sha256-SdgbWj0BAnrRmNfWm181Lz5M6+6r5n0P+la69WuSLts=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "1d46397e5791518aa2c744ca788e57364c12604c", + "rev": "8ac35229668dbd9bbdc192ff7a592d48dbb9864c", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1740875128, - "narHash": "sha256-4XwCI6oHNvwFX2ZOYlwAkVVGNkYPPX3Nm3viAxkPOAc=", + "lastModified": 1741479757, + "narHash": "sha256-Z4Z3Nuumvkf6mtpgsSSQrrgK7k+9QmGbgy/JVNru0Yo=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "e3c89204dcf4cb89afcf593c0564077d3a3a44f2", + "rev": "ceb62f3d95b254c61d9d5f3dbdc9a142f9da3953", "type": "github" }, "original": { @@ -2510,11 +2510,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1740876684, - "narHash": "sha256-AsapNrKZH6MP0KMgs6NzgnKgDpzBbjbyi+0brkTpghE=", + "lastModified": 1741481486, + "narHash": "sha256-/Uj7jgPbiCwJA5IQsbBjYkLhLGp7gfbp4kIabA749BQ=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "a71700b2919e384b47c31ace132138d6ef5f08a4", + "rev": "b9783da81e2f87822fa91bca1597ede0ee46cc4c", "type": "github" }, "original": { @@ -2830,11 +2830,11 @@ "nixpkgs": "nixpkgs_27" }, "locked": { - "lastModified": 1739595404, - "narHash": "sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI=", + "lastModified": 1742014779, + "narHash": "sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "06519cec8fb32d219006da6eacd255504a9996af", + "rev": "524637ef84c177661690b924bf64a1ce18072a2c", "type": "github" }, "original": { @@ -5176,14 +5176,17 @@ }, "nixpkgs-lib_2": { "locked": { - "lastModified": 1740872140, - "narHash": "sha256-3wHafybyRfpUCLoE8M+uPVZinImg3xX+Nm6gEfN3G8I=", - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/6d3702243441165a03f699f64416f635220f4f15.tar.gz" + "lastModified": 1740877520, + "narHash": "sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "147dee35aab2193b174e4c0868bd80ead5ce755c", + "type": "github" }, "original": { - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/6d3702243441165a03f699f64416f635220f4f15.tar.gz" + "owner": "nix-community", + "repo": "nixpkgs.lib", + "type": "github" } }, "nixpkgs-regression": { @@ -5568,11 +5571,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1740919102, - "narHash": "sha256-6GxG8Cnt6ZMJjvYstPHBR+WE2Cg8F6qggAs7pARA1N0=", + "lastModified": 1741524361, + "narHash": "sha256-yEJ0KlFDMkXUnv3bMK+LFYBYjwnrJGupZ0aw9Nqsmd0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5632647cdd2e314a48f6c5497d3fc847f89bc4c8", + "rev": "911a79a04fd3fd912c170f53baf8a99863f87379", "type": "github" }, "original": { @@ -5615,11 +5618,11 @@ }, "nixpkgs_27": { "locked": { - "lastModified": 1739446958, - "narHash": "sha256-+/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc=", + "lastModified": 1741851582, + "narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2ff53fe64443980e139eaa286017f53f88336dd0", + "rev": "6607cf789e541e7873d40d3a8f7815ea92204f32", "type": "github" }, "original": { @@ -6070,11 +6073,11 @@ "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1740915799, - "narHash": "sha256-JvQvtaphZNmeeV+IpHgNdiNePsIpHD5U/7QN5AeY44A=", + "lastModified": 1741379162, + "narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "42b1ba089d2034d910566bf6b40830af6b8ec732", + "rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc", "type": "github" }, "original": { @@ -6137,11 +6140,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1740882709, - "narHash": "sha256-VC+8GxWK4p08jjIbmsNfeFQajW2lsiOR/XQiOOvqgvs=", + "lastModified": 1741486734, + "narHash": "sha256-3hrpyTLNmnJpioVT1DDoVgsp7fWYkuS3JWCtfHsX1rk=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "f4d5a693c18b389f0d58f55b6f7be6ef85af186f", + "rev": "d95582a900bd0e7e516ce3bed0503f742649fffb", "type": "github" }, "original": { @@ -6387,11 +6390,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1740874348, - "narHash": "sha256-A97HYEbmi5BuSKiccxSeoJCbSMkK+rFpCUH1Qc2Fo9o=", + "lastModified": 1741392594, + "narHash": "sha256-hqM00fKXy2dWc8AgTYfPu5T/b4wI/f+Van1l9i0X9v0=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "4355d762f1f557aec7be2a584b3ac4a9c2c14d7d", + "rev": "c0f7b26ba3b7bc95682984f2e2b8aa7250104ab5", "type": "github" }, "original": { From 9f1ef22c13ed4f468432fc49f629960a534c6c8e Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 23 Mar 2025 12:45:32 +0000 Subject: [PATCH 67/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/3040dff74e336732825e3d078b07a27dab15c1a8?narHash=sha256-EXdZwOi%2B2nz3Bh12Uszq6TYCbP5dEV8mQy%2BWf0VDI90%3D' (2025-03-10) → 'github:mlabs-haskell/flake-lang.nix/f43b053e3225f15215b1372c56858f963b1b527d?narHash=sha256-OqA2TLFX6A/Pccy4WdpYE6nYHH9GF0EEzOvhzaV7vlI%3D' (2025-03-17) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/e2e7eccc0826d50c766534a4b368cdaec5c95d61?narHash=sha256-kXSbcBCVd2g//VImKW0CMXUfY6NXl%2BdVve/SgIXGGYM%3D' (2025-03-04) → 'github:input-output-hk/cardano-haskell-packages/c715830d75ee968e373fc1b95145ad27108ff935?narHash=sha256-10IY32W6tX83sajGviI5VPUbbeTSaIdLfH8V2/6Cj5M%3D' (2025-03-13) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/bb1c9567c43e4434f54e9481eb4b8e8e0d50f0b5?narHash=sha256-JBTSyJFQdO3V8cgcL08VaBUByEU6P5kXbTJN6R0PFQo%3D' (2025-03-09) → 'github:ipetkov/crane/1715a8fa7258bcf74ff645541d8d4ab4c53c4f6b?narHash=sha256-QkT5Bg6m40We/w9n5ljCsWRJs29qQM6%2BMztDBduYvfU%3D' (2025-03-16) • Updated input 'flake-lang/ctl': 'github:plutonomicon/cardano-transaction-lib/7f66b8e660bc0a06ce5738f2f4acf092ae9cb03f?narHash=sha256-afs%2BcQQGYVua2MISAAZ1MOxa3gwTXdu5qi9hpVhCQIE%3D' (2025-02-27) → 'github:plutonomicon/cardano-transaction-lib/7225ec2b0784468e1129e7e04d54625a003c66a3?narHash=sha256-rDDtvMCy688jNTv19G6o0hkEqtE6UbtW0PEdeXx1w3Y%3D' (2025-03-14) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/b9783da81e2f87822fa91bca1597ede0ee46cc4c?narHash=sha256-/Uj7jgPbiCwJA5IQsbBjYkLhLGp7gfbp4kIabA749BQ%3D' (2025-03-09) → 'github:input-output-hk/haskell.nix/a439918c2e40624b1acbce5a503d15398b61d70c?narHash=sha256-MEVVn48QccDGnz2WwnqRLO7PJfoub2L73m7tppcQZ/w%3D' (2025-03-16) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/ceb62f3d95b254c61d9d5f3dbdc9a142f9da3953?narHash=sha256-Z4Z3Nuumvkf6mtpgsSSQrrgK7k%2B9QmGbgy/JVNru0Yo%3D' (2025-03-09) → 'github:input-output-hk/hackage.nix/66964822966f9ab4852017885f3d4e5ac8550bf4?narHash=sha256-E%2BIr8LUogUfK%2BbRZSiN/SMWjBmaleVnJAtKC%2BVyt/gc%3D' (2025-03-16) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/8ac35229668dbd9bbdc192ff7a592d48dbb9864c?narHash=sha256-SdgbWj0BAnrRmNfWm181Lz5M6%2B6r5n0P%2Bla69WuSLts%3D' (2025-03-09) → 'github:input-output-hk/hackage.nix/0f8366b1e5c3844416efc9eeb8e89c990605d8ad?narHash=sha256-cqIR9VVpit/ogWgevp4nctKzzY86Z2qrhkLvHqjbkmE%3D' (2025-03-16) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/c0f7b26ba3b7bc95682984f2e2b8aa7250104ab5?narHash=sha256-hqM00fKXy2dWc8AgTYfPu5T/b4wI/f%2BVan1l9i0X9v0%3D' (2025-03-08) → 'github:input-output-hk/stackage.nix/61517a5689442cdedc1b1385290a24ce37dfae67?narHash=sha256-nBE139YlK62HmLd6amwu7vhgbvhS%2B7SKHIjNGaKbhNY%3D' (2025-03-16) • Updated input 'flake-lang/hci-effects': 'github:hercules-ci/hercules-ci-effects/06519cec8fb32d219006da6eacd255504a9996af?narHash=sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI%3D' (2025-02-15) → 'github:hercules-ci/hercules-ci-effects/524637ef84c177661690b924bf64a1ce18072a2c?narHash=sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8%3D' (2025-03-15) • Updated input 'flake-lang/hci-effects/flake-parts': 'github:hercules-ci/flake-parts/32ea77a06711b758da0ad9bd6a844c5740a87abd?narHash=sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm%2BzmZ7vxbJdo%3D' (2025-02-01) → 'github:hercules-ci/flake-parts/f4330d22f1c5d2ba72d3d22df5597d123fdb60a9?narHash=sha256-%2Bu2UunDA4Cl5Fci3m7S643HzKmIDAe%2BfiXrLqYsR2fs%3D' (2025-03-07) • Updated input 'flake-lang/hci-effects/nixpkgs': 'github:NixOS/nixpkgs/2ff53fe64443980e139eaa286017f53f88336dd0?narHash=sha256-%2B/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc%3D' (2025-02-13) → 'github:NixOS/nixpkgs/6607cf789e541e7873d40d3a8f7815ea92204f32?narHash=sha256-cPfs8qMccim2RBgtKGF%2Bx9IBCduRvd/N5F4nYpU0TVE%3D' (2025-03-13) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/911a79a04fd3fd912c170f53baf8a99863f87379?narHash=sha256-yEJ0KlFDMkXUnv3bMK%2BLFYBYjwnrJGupZ0aw9Nqsmd0%3D' (2025-03-09) → 'github:NixOS/nixpkgs/aeff873f2542c369a9fa8042e542e0591a223afa?narHash=sha256-zm7c4C5vppoRd8ZJv8ydjEPBzg/7pBHnUWVLqTelzuI%3D' (2025-03-16) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/b5a62751225b2f62ff3147d0a334055ebadcd5cc?narHash=sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc%3D' (2025-03-07) → 'github:cachix/pre-commit-hooks.nix/59f17850021620cd348ad2e9c0c64f4e6325ce2a?narHash=sha256-b4SZc6TkKw8WQQssbN5O2DaCEzmFfvSTPYHlx/SFW9Y%3D' (2025-03-15) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/d95582a900bd0e7e516ce3bed0503f742649fffb?narHash=sha256-3hrpyTLNmnJpioVT1DDoVgsp7fWYkuS3JWCtfHsX1rk%3D' (2025-03-09) → 'github:oxalica/rust-overlay/af76221b285a999ab7d9d77fce8ba1db028f9801?narHash=sha256-oI9Nom826RVhnYpBW68PzSr8Bsw0DX97ng39bwwX7A8%3D' (2025-03-16) --- flake.lock | 84 +++++++++++++++++++++++++++--------------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/flake.lock b/flake.lock index 723d7ec2..8e5e061c 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1741109602, - "narHash": "sha256-kXSbcBCVd2g//VImKW0CMXUfY6NXl+dVve/SgIXGGYM=", + "lastModified": 1741834602, + "narHash": "sha256-10IY32W6tX83sajGviI5VPUbbeTSaIdLfH8V2/6Cj5M=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "e2e7eccc0826d50c766534a4b368cdaec5c95d61", + "rev": "c715830d75ee968e373fc1b95145ad27108ff935", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1741481578, - "narHash": "sha256-JBTSyJFQdO3V8cgcL08VaBUByEU6P5kXbTJN6R0PFQo=", + "lastModified": 1742085745, + "narHash": "sha256-QkT5Bg6m40We/w9n5ljCsWRJs29qQM6+MztDBduYvfU=", "owner": "ipetkov", "repo": "crane", - "rev": "bb1c9567c43e4434f54e9481eb4b8e8e0d50f0b5", + "rev": "1715a8fa7258bcf74ff645541d8d4ab4c53c4f6b", "type": "github" }, "original": { @@ -1056,11 +1056,11 @@ "ogmios": "ogmios" }, "locked": { - "lastModified": 1740662789, - "narHash": "sha256-afs+cQQGYVua2MISAAZ1MOxa3gwTXdu5qi9hpVhCQIE=", + "lastModified": 1741962272, + "narHash": "sha256-rDDtvMCy688jNTv19G6o0hkEqtE6UbtW0PEdeXx1w3Y=", "owner": "plutonomicon", "repo": "cardano-transaction-lib", - "rev": "7f66b8e660bc0a06ce5738f2f4acf092ae9cb03f", + "rev": "7225ec2b0784468e1129e7e04d54625a003c66a3", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1741591660, - "narHash": "sha256-EXdZwOi+2nz3Bh12Uszq6TYCbP5dEV8mQy+Wf0VDI90=", + "lastModified": 1742195903, + "narHash": "sha256-OqA2TLFX6A/Pccy4WdpYE6nYHH9GF0EEzOvhzaV7vlI=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "3040dff74e336732825e3d078b07a27dab15c1a8", + "rev": "f43b053e3225f15215b1372c56858f963b1b527d", "type": "github" }, "original": { @@ -1901,11 +1901,11 @@ ] }, "locked": { - "lastModified": 1738453229, - "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", + "lastModified": 1741352980, + "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", + "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1741479747, - "narHash": "sha256-SdgbWj0BAnrRmNfWm181Lz5M6+6r5n0P+la69WuSLts=", + "lastModified": 1742084762, + "narHash": "sha256-cqIR9VVpit/ogWgevp4nctKzzY86Z2qrhkLvHqjbkmE=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "8ac35229668dbd9bbdc192ff7a592d48dbb9864c", + "rev": "0f8366b1e5c3844416efc9eeb8e89c990605d8ad", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1741479757, - "narHash": "sha256-Z4Z3Nuumvkf6mtpgsSSQrrgK7k+9QmGbgy/JVNru0Yo=", + "lastModified": 1742084772, + "narHash": "sha256-E+Ir8LUogUfK+bRZSiN/SMWjBmaleVnJAtKC+Vyt/gc=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "ceb62f3d95b254c61d9d5f3dbdc9a142f9da3953", + "rev": "66964822966f9ab4852017885f3d4e5ac8550bf4", "type": "github" }, "original": { @@ -2510,11 +2510,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1741481486, - "narHash": "sha256-/Uj7jgPbiCwJA5IQsbBjYkLhLGp7gfbp4kIabA749BQ=", + "lastModified": 1742086323, + "narHash": "sha256-MEVVn48QccDGnz2WwnqRLO7PJfoub2L73m7tppcQZ/w=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "b9783da81e2f87822fa91bca1597ede0ee46cc4c", + "rev": "a439918c2e40624b1acbce5a503d15398b61d70c", "type": "github" }, "original": { @@ -2811,11 +2811,11 @@ "nixpkgs": "nixpkgs_22" }, "locked": { - "lastModified": 1739595404, - "narHash": "sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI=", + "lastModified": 1742014779, + "narHash": "sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "06519cec8fb32d219006da6eacd255504a9996af", + "rev": "524637ef84c177661690b924bf64a1ce18072a2c", "type": "github" }, "original": { @@ -5539,11 +5539,11 @@ }, "nixpkgs_22": { "locked": { - "lastModified": 1739446958, - "narHash": "sha256-+/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc=", + "lastModified": 1741851582, + "narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2ff53fe64443980e139eaa286017f53f88336dd0", + "rev": "6607cf789e541e7873d40d3a8f7815ea92204f32", "type": "github" }, "original": { @@ -5571,11 +5571,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1741524361, - "narHash": "sha256-yEJ0KlFDMkXUnv3bMK+LFYBYjwnrJGupZ0aw9Nqsmd0=", + "lastModified": 1742129144, + "narHash": "sha256-zm7c4C5vppoRd8ZJv8ydjEPBzg/7pBHnUWVLqTelzuI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "911a79a04fd3fd912c170f53baf8a99863f87379", + "rev": "aeff873f2542c369a9fa8042e542e0591a223afa", "type": "github" }, "original": { @@ -6073,11 +6073,11 @@ "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1741379162, - "narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=", + "lastModified": 1742058297, + "narHash": "sha256-b4SZc6TkKw8WQQssbN5O2DaCEzmFfvSTPYHlx/SFW9Y=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc", + "rev": "59f17850021620cd348ad2e9c0c64f4e6325ce2a", "type": "github" }, "original": { @@ -6140,11 +6140,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1741486734, - "narHash": "sha256-3hrpyTLNmnJpioVT1DDoVgsp7fWYkuS3JWCtfHsX1rk=", + "lastModified": 1742092396, + "narHash": "sha256-oI9Nom826RVhnYpBW68PzSr8Bsw0DX97ng39bwwX7A8=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "d95582a900bd0e7e516ce3bed0503f742649fffb", + "rev": "af76221b285a999ab7d9d77fce8ba1db028f9801", "type": "github" }, "original": { @@ -6390,11 +6390,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1741392594, - "narHash": "sha256-hqM00fKXy2dWc8AgTYfPu5T/b4wI/f+Van1l9i0X9v0=", + "lastModified": 1742083971, + "narHash": "sha256-nBE139YlK62HmLd6amwu7vhgbvhS+7SKHIjNGaKbhNY=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "c0f7b26ba3b7bc95682984f2e2b8aa7250104ab5", + "rev": "61517a5689442cdedc1b1385290a24ce37dfae67", "type": "github" }, "original": { From 2be080d1d8f11ebf0e4fd7f528ecfdf00f024ae1 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 6 Apr 2025 12:45:57 +0000 Subject: [PATCH 68/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/f43b053e3225f15215b1372c56858f963b1b527d?narHash=sha256-OqA2TLFX6A/Pccy4WdpYE6nYHH9GF0EEzOvhzaV7vlI%3D' (2025-03-17) → 'github:mlabs-haskell/flake-lang.nix/e9cc3f39282d80fe0ebb725f3e4cd3853e14fca5?narHash=sha256-qNqGFkVkzJSmrgKhpScutljac/6p3NsRRWJGiwKuCb4%3D' (2025-03-31) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/c715830d75ee968e373fc1b95145ad27108ff935?narHash=sha256-10IY32W6tX83sajGviI5VPUbbeTSaIdLfH8V2/6Cj5M%3D' (2025-03-13) → 'github:input-output-hk/cardano-haskell-packages/03943a29e1e103700b894af8b5dd0f1878a83e4d?narHash=sha256-v6J2Bvg3c7zDy58LPzfZVD4tAqoMKijsdraWxu80Sb0%3D' (2025-03-28) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/1715a8fa7258bcf74ff645541d8d4ab4c53c4f6b?narHash=sha256-QkT5Bg6m40We/w9n5ljCsWRJs29qQM6%2BMztDBduYvfU%3D' (2025-03-16) → 'github:ipetkov/crane/70947c1908108c0c551ddfd73d4f750ff2ea67cd?narHash=sha256-vVOAp9ahvnU%2BfQoKd4SEXB2JG2wbENkpqcwlkIXgUC0%3D' (2025-03-19) • Updated input 'flake-lang/ctl': 'github:plutonomicon/cardano-transaction-lib/7225ec2b0784468e1129e7e04d54625a003c66a3?narHash=sha256-rDDtvMCy688jNTv19G6o0hkEqtE6UbtW0PEdeXx1w3Y%3D' (2025-03-14) → 'github:plutonomicon/cardano-transaction-lib/e209542ad5ac664ce8d8cc94705834069da7c011?narHash=sha256-zAry2u/yLt18Ltxpx4R4c8Ap5kPz7bFTU1qSn6/FL24%3D' (2025-03-24) • Updated input 'flake-lang/ctl/cardano-nix': 'github:mlabs-haskell/cardano.nix/92516bb3ba6d45fafafbe51f4ded289853294dcc?narHash=sha256-N9PCcNkebjoJEF7UYblu1c9qT8ySFaurOqSqTviDGVM%3D' (2024-12-09) → 'github:mlabs-haskell/cardano.nix/4cdea767a7efaabe0c75358416de3cf18175169e?narHash=sha256-yrg1m0BLC3isFNDSYCrZZ/Qehl9KHHOfmeeIaglPb3Y%3D' (2025-02-03) • Updated input 'flake-lang/ctl/cardano-nix/blockfrost': 'github:blockfrost/blockfrost-backend-ryo/30ec8cf23d9c222199dc5afba9b79b5bfeec3337?narHash=sha256-YeSPvCrfc0OmMqhzGN/WXcBSfXIlnEnqWemzqQTz%2Bzw%3D' (2024-10-31) → 'github:blockfrost/blockfrost-backend-ryo/a49be24384279c916e86dbd9be267ab259bed596?narHash=sha256-zDqNLiaF3A4/rkMTL2sJWyyPVBB9kwezsfzTmkIBN14%3D' (2025-01-20) • Updated input 'flake-lang/ctl/cardano-nix/cardano-node': 'github:intersectmbo/cardano-node/01bda2e2cb0a70cd95067d696dbb44665f1d680a?narHash=sha256-yNEv7MQEcOPY9I9k9RCzeMfJY6gzuGc7K53GKNHs6v8%3D' (2024-11-01) → 'github:intersectmbo/cardano-node/1f63dbf2ab39e0b32bf6901dc203866d3e37de08?narHash=sha256-Oys38YkpSpB48/H2NseP9kTWXm92a7kjAZtdnorcIEY%3D' (2025-01-06) • Updated input 'flake-lang/ctl/cardano-nix/cardano-node/CHaP': 'github:intersectmbo/cardano-haskell-packages/25591f43ab943d5a070db5e8a2b9ff3a499d4d92?narHash=sha256-ijnHTQ6eKIQ9FpEqDKt6c7vuFYN8aOBDhonp67utx2s%3D' (2024-10-30) → 'github:intersectmbo/cardano-haskell-packages/b9eaf0bbe60ccf64b7afc969b79f9820a4534bcf?narHash=sha256-X6Fp2uU%2B%2B62rgaH4J1pIN5AalfV7f9rM5dmFaByMWqU%3D' (2025-01-02) • Updated input 'flake-lang/ctl/hercules-ci-effects': 'github:hercules-ci/hercules-ci-effects/afd0a42e8c61ebb56899315ee4084a8b2e4ff425?narHash=sha256-JTBWmyGf8K1Rwb%2BgviHIUzRJk/sITtT%2B72HXFkTZUjo%3D' (2025-01-15) → 'github:hercules-ci/hercules-ci-effects/524637ef84c177661690b924bf64a1ce18072a2c?narHash=sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8%3D' (2025-03-15) • Updated input 'flake-lang/ctl/hercules-ci-effects/flake-parts': 'github:hercules-ci/flake-parts/b905f6fc23a9051a6e1b741e1438dbfc0634c6de?narHash=sha256-%2Bhu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU%3D' (2025-01-06) → 'github:hercules-ci/flake-parts/f4330d22f1c5d2ba72d3d22df5597d123fdb60a9?narHash=sha256-%2Bu2UunDA4Cl5Fci3m7S643HzKmIDAe%2BfiXrLqYsR2fs%3D' (2025-03-07) • Updated input 'flake-lang/ctl/hercules-ci-effects/nixpkgs': 'github:NixOS/nixpkgs/9abb87b552b7f55ac8916b6fc9e5cb486656a2f3?narHash=sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ%3D' (2025-01-13) → 'github:NixOS/nixpkgs/6607cf789e541e7873d40d3a8f7815ea92204f32?narHash=sha256-cPfs8qMccim2RBgtKGF%2Bx9IBCduRvd/N5F4nYpU0TVE%3D' (2025-03-13) • Updated input 'flake-lang/ctl/nixpkgs-arion': 'github:NixOS/nixpkgs/2c62218ab7a0455ca27fc3a7d3a2af496b3580eb?narHash=sha256-Ger8ClHNQ1KBX6LdW9iRbgKiKRuUjnnbDqwMtY73IT0%3D' (2025-01-27) → 'github:NixOS/nixpkgs/845be085d84b2d74822f83d58a09406057284a5f?narHash=sha256-W1EuSk%2BUA0ZjA2tdZmXNSWb2ueNpkhX7USHoIHEbBZw%3D' (2025-03-20) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/a439918c2e40624b1acbce5a503d15398b61d70c?narHash=sha256-MEVVn48QccDGnz2WwnqRLO7PJfoub2L73m7tppcQZ/w%3D' (2025-03-16) → 'github:input-output-hk/haskell.nix/12b3b87f27a5a974421a777df4d18b74f4fcf145?narHash=sha256-Y1ljFalJ3vQdmsKUBs58tEaNMET7evEawoI%2BT6rdn1M%3D' (2025-03-30) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/66964822966f9ab4852017885f3d4e5ac8550bf4?narHash=sha256-E%2BIr8LUogUfK%2BbRZSiN/SMWjBmaleVnJAtKC%2BVyt/gc%3D' (2025-03-16) → 'github:input-output-hk/hackage.nix/3e1368cdb1a42397e0ef43e792235716c03a2ba1?narHash=sha256-kKC9A5W3pT8CjEv87x5PmbSwG2vXqdanNigM4X3TdGs%3D' (2025-03-30) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/0f8366b1e5c3844416efc9eeb8e89c990605d8ad?narHash=sha256-cqIR9VVpit/ogWgevp4nctKzzY86Z2qrhkLvHqjbkmE%3D' (2025-03-16) → 'github:input-output-hk/hackage.nix/ba336c15d3fe744d5db8d60d7437f1bbd126b75a?narHash=sha256-WuIuMY/UgRI4XwLozK9y76YWwq2BNWpNQOe6Kxja9xA%3D' (2025-03-30) • Added input 'flake-lang/haskell-nix/hls': 'github:haskell/haskell-language-server/682d6894c94087da5e566771f25311c47e145359?narHash=sha256-tuq3%2BIp70yu89GswZ7DSINBpwRprnWnl6xDYnS4GOsc%3D' (2025-03-10) • Updated input 'flake-lang/haskell-nix/hls-2.9': 'github:haskell/haskell-language-server/0c1817cb2babef0765e4e72dd297c013e8e3d12b?narHash=sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs%3D' (2024-07-03) → 'github:haskell/haskell-language-server/90319a7e62ab93ab65a95f8f2bcf537e34dae76a?narHash=sha256-wy348%2B%2BMiMm/xwtI9M3vVpqj2qfGgnDcZIGXw8sF1sA%3D' (2024-07-03) • Updated input 'flake-lang/haskell-nix/iserv-proxy': 'github:stable-haskell/iserv-proxy/2ed34002247213fc435d0062350b91bab920626e?narHash=sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo%3D' (2024-06-04) → 'github:stable-haskell/iserv-proxy/e9dc86ed6ad71f0368c16672081c8f26406c3a7e?narHash=sha256-x4bg4OoKAPnayom0nWc0BmlxgRMMHk6lEPvbiyFBq1s%3D' (2025-03-16) • Updated input 'flake-lang/haskell-nix/nixpkgs-2411': 'github:NixOS/nixpkgs/eacdab35066b0bb1c9413c96898e326b76398a81?narHash=sha256-r3fxHvh%2BM/mBgCZXOACzRFPsJdix2QSsKazb7VCXXo0%3D' (2025-01-19) → 'github:NixOS/nixpkgs/94792ab2a6beaec81424445bf917ca2556fbeade?narHash=sha256-uNszcul7y%2B%2BoBiyYXjHEDw/AHeLNp8B6pyWOB%2BRLA/4%3D' (2025-02-10) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/61517a5689442cdedc1b1385290a24ce37dfae67?narHash=sha256-nBE139YlK62HmLd6amwu7vhgbvhS%2B7SKHIjNGaKbhNY%3D' (2025-03-16) → 'github:input-output-hk/stackage.nix/3bc02ee6441f377ea248f8649796ba2b5c3aa86f?narHash=sha256-vbkeiDCJuW5rxDJnNtS00JW0aGPdtPL8sIpdjhZxrKQ%3D' (2025-03-30) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/aeff873f2542c369a9fa8042e542e0591a223afa?narHash=sha256-zm7c4C5vppoRd8ZJv8ydjEPBzg/7pBHnUWVLqTelzuI%3D' (2025-03-16) → 'github:NixOS/nixpkgs/97e6665ed0fa3a70cbbd6af308696451ccc20926?narHash=sha256-5ykFVCKy5t71cvbZ4IR5MJ7GPFF3DPodD9RLJ45L/Cc%3D' (2025-03-30) • Updated input 'flake-lang/plutarch': 'github:plutonomicon/plutarch-plutus/7b346d00596531d3682204e226f7457d51849a21?narHash=sha256-k6Sm8DqSvaRDbNsIivzbw/1JrWuiDT7xoVll9ZqGgXM%3D' (2025-02-25) → 'github:plutonomicon/plutarch-plutus/b626f27265474ce7bfb59bc4b53e0ab4495f9af6?narHash=sha256-JNtWz6qxkcnEDYwtc4inKg5s7xtHLvDjFk9diHq4WZ4%3D' (2025-03-28) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/59f17850021620cd348ad2e9c0c64f4e6325ce2a?narHash=sha256-b4SZc6TkKw8WQQssbN5O2DaCEzmFfvSTPYHlx/SFW9Y%3D' (2025-03-15) → 'github:cachix/pre-commit-hooks.nix/dcf5072734cb576d2b0c59b2ac44f5050b5eac82?narHash=sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco%3D' (2025-03-22) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/af76221b285a999ab7d9d77fce8ba1db028f9801?narHash=sha256-oI9Nom826RVhnYpBW68PzSr8Bsw0DX97ng39bwwX7A8%3D' (2025-03-16) → 'github:oxalica/rust-overlay/15c2a7930e04efc87be3ebf1b5d06232e635e24b?narHash=sha256-VWyaUfBY49kjN29N140INa9LEW0YIgAr%2BOEJRdbKfnQ%3D' (2025-03-30) --- flake.lock | 159 +++++++++++++++++++++++++++++------------------------ 1 file changed, 88 insertions(+), 71 deletions(-) diff --git a/flake.lock b/flake.lock index 8e5e061c..00df7020 100644 --- a/flake.lock +++ b/flake.lock @@ -20,11 +20,11 @@ "CHaP_2": { "flake": false, "locked": { - "lastModified": 1730295876, - "narHash": "sha256-ijnHTQ6eKIQ9FpEqDKt6c7vuFYN8aOBDhonp67utx2s=", + "lastModified": 1735857786, + "narHash": "sha256-X6Fp2uU++62rgaH4J1pIN5AalfV7f9rM5dmFaByMWqU=", "owner": "intersectmbo", "repo": "cardano-haskell-packages", - "rev": "25591f43ab943d5a070db5e8a2b9ff3a499d4d92", + "rev": "b9eaf0bbe60ccf64b7afc969b79f9820a4534bcf", "type": "github" }, "original": { @@ -247,16 +247,16 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1730408279, - "narHash": "sha256-YeSPvCrfc0OmMqhzGN/WXcBSfXIlnEnqWemzqQTz+zw=", + "lastModified": 1737368354, + "narHash": "sha256-zDqNLiaF3A4/rkMTL2sJWyyPVBB9kwezsfzTmkIBN14=", "owner": "blockfrost", "repo": "blockfrost-backend-ryo", - "rev": "30ec8cf23d9c222199dc5afba9b79b5bfeec3337", + "rev": "a49be24384279c916e86dbd9be267ab259bed596", "type": "github" }, "original": { "owner": "blockfrost", - "ref": "v2.2.4", + "ref": "v3.1.0", "repo": "blockfrost-backend-ryo", "type": "github" } @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1741834602, - "narHash": "sha256-10IY32W6tX83sajGviI5VPUbbeTSaIdLfH8V2/6Cj5M=", + "lastModified": 1743178751, + "narHash": "sha256-v6J2Bvg3c7zDy58LPzfZVD4tAqoMKijsdraWxu80Sb0=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "c715830d75ee968e373fc1b95145ad27108ff935", + "rev": "03943a29e1e103700b894af8b5dd0f1878a83e4d", "type": "github" }, "original": { @@ -820,11 +820,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1733781003, - "narHash": "sha256-N9PCcNkebjoJEF7UYblu1c9qT8ySFaurOqSqTviDGVM=", + "lastModified": 1738590756, + "narHash": "sha256-yrg1m0BLC3isFNDSYCrZZ/Qehl9KHHOfmeeIaglPb3Y=", "owner": "mlabs-haskell", "repo": "cardano.nix", - "rev": "92516bb3ba6d45fafafbe51f4ded289853294dcc", + "rev": "4cdea767a7efaabe0c75358416de3cf18175169e", "type": "github" }, "original": { @@ -865,16 +865,16 @@ "utils": "utils_3" }, "locked": { - "lastModified": 1730468447, - "narHash": "sha256-yNEv7MQEcOPY9I9k9RCzeMfJY6gzuGc7K53GKNHs6v8=", + "lastModified": 1736202991, + "narHash": "sha256-Oys38YkpSpB48/H2NseP9kTWXm92a7kjAZtdnorcIEY=", "owner": "intersectmbo", "repo": "cardano-node", - "rev": "01bda2e2cb0a70cd95067d696dbb44665f1d680a", + "rev": "1f63dbf2ab39e0b32bf6901dc203866d3e37de08", "type": "github" }, "original": { "owner": "intersectmbo", - "ref": "10.1.2", + "ref": "10.1.4", "repo": "cardano-node", "type": "github" } @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1742085745, - "narHash": "sha256-QkT5Bg6m40We/w9n5ljCsWRJs29qQM6+MztDBduYvfU=", + "lastModified": 1742394900, + "narHash": "sha256-vVOAp9ahvnU+fQoKd4SEXB2JG2wbENkpqcwlkIXgUC0=", "owner": "ipetkov", "repo": "crane", - "rev": "1715a8fa7258bcf74ff645541d8d4ab4c53c4f6b", + "rev": "70947c1908108c0c551ddfd73d4f750ff2ea67cd", "type": "github" }, "original": { @@ -1056,11 +1056,11 @@ "ogmios": "ogmios" }, "locked": { - "lastModified": 1741962272, - "narHash": "sha256-rDDtvMCy688jNTv19G6o0hkEqtE6UbtW0PEdeXx1w3Y=", + "lastModified": 1742811157, + "narHash": "sha256-zAry2u/yLt18Ltxpx4R4c8Ap5kPz7bFTU1qSn6/FL24=", "owner": "plutonomicon", "repo": "cardano-transaction-lib", - "rev": "7225ec2b0784468e1129e7e04d54625a003c66a3", + "rev": "e209542ad5ac664ce8d8cc94705834069da7c011", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1742195903, - "narHash": "sha256-OqA2TLFX6A/Pccy4WdpYE6nYHH9GF0EEzOvhzaV7vlI=", + "lastModified": 1743404850, + "narHash": "sha256-qNqGFkVkzJSmrgKhpScutljac/6p3NsRRWJGiwKuCb4=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "f43b053e3225f15215b1372c56858f963b1b527d", + "rev": "e9cc3f39282d80fe0ebb725f3e4cd3853e14fca5", "type": "github" }, "original": { @@ -1862,11 +1862,11 @@ ] }, "locked": { - "lastModified": 1736143030, - "narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=", + "lastModified": 1741352980, + "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de", + "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1742084762, - "narHash": "sha256-cqIR9VVpit/ogWgevp4nctKzzY86Z2qrhkLvHqjbkmE=", + "lastModified": 1743294414, + "narHash": "sha256-WuIuMY/UgRI4XwLozK9y76YWwq2BNWpNQOe6Kxja9xA=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "0f8366b1e5c3844416efc9eeb8e89c990605d8ad", + "rev": "ba336c15d3fe744d5db8d60d7437f1bbd126b75a", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1742084772, - "narHash": "sha256-E+Ir8LUogUfK+bRZSiN/SMWjBmaleVnJAtKC+Vyt/gc=", + "lastModified": 1743294424, + "narHash": "sha256-kKC9A5W3pT8CjEv87x5PmbSwG2vXqdanNigM4X3TdGs=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "66964822966f9ab4852017885f3d4e5ac8550bf4", + "rev": "3e1368cdb1a42397e0ef43e792235716c03a2ba1", "type": "github" }, "original": { @@ -2484,6 +2484,7 @@ "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_5", "hackage": "hackage_2", "hackage-for-stackage": "hackage-for-stackage", + "hls": "hls", "hls-1.10": "hls-1.10_5", "hls-2.0": "hls-2.0_4", "hls-2.2": "hls-2.2_4", @@ -2510,11 +2511,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1742086323, - "narHash": "sha256-MEVVn48QccDGnz2WwnqRLO7PJfoub2L73m7tppcQZ/w=", + "lastModified": 1743295933, + "narHash": "sha256-Y1ljFalJ3vQdmsKUBs58tEaNMET7evEawoI+T6rdn1M=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "a439918c2e40624b1acbce5a503d15398b61d70c", + "rev": "12b3b87f27a5a974421a777df4d18b74f4fcf145", "type": "github" }, "original": { @@ -2879,11 +2880,11 @@ "nixpkgs": "nixpkgs_16" }, "locked": { - "lastModified": 1736917206, - "narHash": "sha256-JTBWmyGf8K1Rwb+gviHIUzRJk/sITtT+72HXFkTZUjo=", + "lastModified": 1742014779, + "narHash": "sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "afd0a42e8c61ebb56899315ee4084a8b2e4ff425", + "rev": "524637ef84c177661690b924bf64a1ce18072a2c", "type": "github" }, "original": { @@ -2892,6 +2893,22 @@ "type": "github" } }, + "hls": { + "flake": false, + "locked": { + "lastModified": 1741604408, + "narHash": "sha256-tuq3+Ip70yu89GswZ7DSINBpwRprnWnl6xDYnS4GOsc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "682d6894c94087da5e566771f25311c47e145359", + "type": "github" + }, + "original": { + "owner": "haskell", + "repo": "haskell-language-server", + "type": "github" + } + }, "hls-1.10": { "flake": false, "locked": { @@ -3541,11 +3558,11 @@ "hls-2.9_2": { "flake": false, "locked": { - "lastModified": 1720003792, - "narHash": "sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs=", + "lastModified": 1719993701, + "narHash": "sha256-wy348++MiMm/xwtI9M3vVpqj2qfGgnDcZIGXw8sF1sA=", "owner": "haskell", "repo": "haskell-language-server", - "rev": "0c1817cb2babef0765e4e72dd297c013e8e3d12b", + "rev": "90319a7e62ab93ab65a95f8f2bcf537e34dae76a", "type": "github" }, "original": { @@ -4010,11 +4027,11 @@ "iserv-proxy_5": { "flake": false, "locked": { - "lastModified": 1717479972, - "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", + "lastModified": 1742121966, + "narHash": "sha256-x4bg4OoKAPnayom0nWc0BmlxgRMMHk6lEPvbiyFBq1s=", "owner": "stable-haskell", "repo": "iserv-proxy", - "rev": "2ed34002247213fc435d0062350b91bab920626e", + "rev": "e9dc86ed6ad71f0368c16672081c8f26406c3a7e", "type": "github" }, "original": { @@ -5133,11 +5150,11 @@ }, "nixpkgs-2411": { "locked": { - "lastModified": 1737255904, - "narHash": "sha256-r3fxHvh+M/mBgCZXOACzRFPsJdix2QSsKazb7VCXXo0=", + "lastModified": 1739151041, + "narHash": "sha256-uNszcul7y++oBiyYXjHEDw/AHeLNp8B6pyWOB+RLA/4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eacdab35066b0bb1c9413c96898e326b76398a81", + "rev": "94792ab2a6beaec81424445bf917ca2556fbeade", "type": "github" }, "original": { @@ -5149,11 +5166,11 @@ }, "nixpkgs-arion": { "locked": { - "lastModified": 1737989921, - "narHash": "sha256-Ger8ClHNQ1KBX6LdW9iRbgKiKRuUjnnbDqwMtY73IT0=", + "lastModified": 1742483666, + "narHash": "sha256-W1EuSk+UA0ZjA2tdZmXNSWb2ueNpkhX7USHoIHEbBZw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2c62218ab7a0455ca27fc3a7d3a2af496b3580eb", + "rev": "845be085d84b2d74822f83d58a09406057284a5f", "type": "github" }, "original": { @@ -5428,11 +5445,11 @@ }, "nixpkgs_16": { "locked": { - "lastModified": 1736798957, - "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=", + "lastModified": 1741851582, + "narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3", + "rev": "6607cf789e541e7873d40d3a8f7815ea92204f32", "type": "github" }, "original": { @@ -5571,11 +5588,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1742129144, - "narHash": "sha256-zm7c4C5vppoRd8ZJv8ydjEPBzg/7pBHnUWVLqTelzuI=", + "lastModified": 1743338748, + "narHash": "sha256-5ykFVCKy5t71cvbZ4IR5MJ7GPFF3DPodD9RLJ45L/Cc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "aeff873f2542c369a9fa8042e542e0591a223afa", + "rev": "97e6665ed0fa3a70cbbd6af308696451ccc20926", "type": "github" }, "original": { @@ -6052,11 +6069,11 @@ "plutarch": { "flake": false, "locked": { - "lastModified": 1740480471, - "narHash": "sha256-k6Sm8DqSvaRDbNsIivzbw/1JrWuiDT7xoVll9ZqGgXM=", + "lastModified": 1743134969, + "narHash": "sha256-JNtWz6qxkcnEDYwtc4inKg5s7xtHLvDjFk9diHq4WZ4=", "owner": "plutonomicon", "repo": "plutarch-plutus", - "rev": "7b346d00596531d3682204e226f7457d51849a21", + "rev": "b626f27265474ce7bfb59bc4b53e0ab4495f9af6", "type": "github" }, "original": { @@ -6073,11 +6090,11 @@ "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1742058297, - "narHash": "sha256-b4SZc6TkKw8WQQssbN5O2DaCEzmFfvSTPYHlx/SFW9Y=", + "lastModified": 1742649964, + "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "59f17850021620cd348ad2e9c0c64f4e6325ce2a", + "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", "type": "github" }, "original": { @@ -6140,11 +6157,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1742092396, - "narHash": "sha256-oI9Nom826RVhnYpBW68PzSr8Bsw0DX97ng39bwwX7A8=", + "lastModified": 1743302122, + "narHash": "sha256-VWyaUfBY49kjN29N140INa9LEW0YIgAr+OEJRdbKfnQ=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "af76221b285a999ab7d9d77fce8ba1db028f9801", + "rev": "15c2a7930e04efc87be3ebf1b5d06232e635e24b", "type": "github" }, "original": { @@ -6390,11 +6407,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1742083971, - "narHash": "sha256-nBE139YlK62HmLd6amwu7vhgbvhS+7SKHIjNGaKbhNY=", + "lastModified": 1743293594, + "narHash": "sha256-vbkeiDCJuW5rxDJnNtS00JW0aGPdtPL8sIpdjhZxrKQ=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "61517a5689442cdedc1b1385290a24ce37dfae67", + "rev": "3bc02ee6441f377ea248f8649796ba2b5c3aa86f", "type": "github" }, "original": { From d550d7ee2caceeed5242711badf2175087a389ae Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 13 Apr 2025 12:45:56 +0000 Subject: [PATCH 69/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/e9cc3f39282d80fe0ebb725f3e4cd3853e14fca5?narHash=sha256-qNqGFkVkzJSmrgKhpScutljac/6p3NsRRWJGiwKuCb4%3D' (2025-03-31) → 'github:mlabs-haskell/flake-lang.nix/fa8f5ae5b3a569e2368e7ba51597ee0f2ad06eb9?narHash=sha256-xsSzVaomVsbgimBEIUEJnmV4UWR9RcxpJTNwOQLc31M%3D' (2025-04-07) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/03943a29e1e103700b894af8b5dd0f1878a83e4d?narHash=sha256-v6J2Bvg3c7zDy58LPzfZVD4tAqoMKijsdraWxu80Sb0%3D' (2025-03-28) → 'github:input-output-hk/cardano-haskell-packages/0be4512de1cbfb351ef8c5b939d71292a8f42af4?narHash=sha256-9zZR%2BENnY4aLIXOSz4HfK0lMPe83bKQflR8QIrOVeaw%3D' (2025-04-04) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/70947c1908108c0c551ddfd73d4f750ff2ea67cd?narHash=sha256-vVOAp9ahvnU%2BfQoKd4SEXB2JG2wbENkpqcwlkIXgUC0%3D' (2025-03-19) → 'github:ipetkov/crane/80ceeec0dc94ef967c371dcdc56adb280328f591?narHash=sha256-e1idZdpnnHWuosI3KsBgAgrhMR05T2oqskXCmNzGPq0%3D' (2025-04-06) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/f4330d22f1c5d2ba72d3d22df5597d123fdb60a9?narHash=sha256-%2Bu2UunDA4Cl5Fci3m7S643HzKmIDAe%2BfiXrLqYsR2fs%3D' (2025-03-07) → 'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5?narHash=sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY%3D' (2025-04-01) • Updated input 'flake-lang/flake-parts/nixpkgs-lib': 'github:nix-community/nixpkgs.lib/147dee35aab2193b174e4c0868bd80ead5ce755c?narHash=sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk%3D' (2025-03-02) → 'github:nix-community/nixpkgs.lib/e4822aea2a6d1cdd36653c134cacfd64c97ff4fa?narHash=sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc%3D' (2025-03-30) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/12b3b87f27a5a974421a777df4d18b74f4fcf145?narHash=sha256-Y1ljFalJ3vQdmsKUBs58tEaNMET7evEawoI%2BT6rdn1M%3D' (2025-03-30) → 'github:input-output-hk/haskell.nix/9efeaf6f20890331d0358747d921e38c757e27b2?narHash=sha256-oTf772W9WgnzUw/L6Gybw0HGx6J6ybHps5CFDSiSP8Q%3D' (2025-04-06) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/3e1368cdb1a42397e0ef43e792235716c03a2ba1?narHash=sha256-kKC9A5W3pT8CjEv87x5PmbSwG2vXqdanNigM4X3TdGs%3D' (2025-03-30) → 'github:input-output-hk/hackage.nix/004d2d7606fdf096c6e27189f741f5653cf97d95?narHash=sha256-r6q6z5KQ46YYUl595cM5Nj61tzjavGZBmFZ0VJO6nWA%3D' (2025-04-06) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/ba336c15d3fe744d5db8d60d7437f1bbd126b75a?narHash=sha256-WuIuMY/UgRI4XwLozK9y76YWwq2BNWpNQOe6Kxja9xA%3D' (2025-03-30) → 'github:input-output-hk/hackage.nix/adcd2f8c7809f9b86fe95277cee408a6be30e664?narHash=sha256-nbe9I9TeeBwXEO9aBMjEoWRWxXB0B77/ayOVzdL3B%2BE%3D' (2025-04-06) • Added input 'flake-lang/haskell-nix/hls-2.10': 'github:haskell/haskell-language-server/2318c61db3a01e03700bd4b05665662929b7fe8b?narHash=sha256-q4kDFyJDDeoGqfEtrZRx4iqMVEC2MOzCToWsFY%2BTOzY%3D' (2025-03-27) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/3bc02ee6441f377ea248f8649796ba2b5c3aa86f?narHash=sha256-vbkeiDCJuW5rxDJnNtS00JW0aGPdtPL8sIpdjhZxrKQ%3D' (2025-03-30) → 'github:input-output-hk/stackage.nix/47b24fefc744299724ec1b75930d11e8c0a59d34?narHash=sha256-bt6Q7YTMKlroGm5GIzUHFkr1kxcEo5d9I7QxeTfc4g0%3D' (2025-04-06) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/ea26f2ca1686656d89bb5760f717f713168cd5a5?narHash=sha256-0sF0RUsnFVdRMoS9amtRQs6TnCFynDFdbzn8zBLD5Bg%3D' (2025-02-25) → 'github:input-output-hk/iohk-nix/3acad181ea6619b64fa49961133026110a460945?narHash=sha256-Wl1nQ2dak4b3fXA7%2B9rB2ntiKUS%2ByAzR2kOIUoAF0u8%3D' (2025-04-03) • Updated input 'flake-lang/iohk-nix/blst': 'github:supranational/blst/3dd0f804b1819e5d03fb22ca2e6fac105932043a?narHash=sha256-oqljy%2BZXJAXEB/fJtmB8rlAr4UXM%2BZ2OkDa20gpILNA%3D' (2023-08-09) → 'github:supranational/blst/8c7db7fe8d2ce6e76dc398ebd4d475c0ec564355?narHash=sha256-IlbNMLBjs/dvGogcdbWQIL%2B3qwy7EXJbIDpo4xBd4bY%3D' (2025-02-12) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/97e6665ed0fa3a70cbbd6af308696451ccc20926?narHash=sha256-5ykFVCKy5t71cvbZ4IR5MJ7GPFF3DPodD9RLJ45L/Cc%3D' (2025-03-30) → 'github:NixOS/nixpkgs/6e0ed24a84eeaf3f5b94bd35e2c2d2de5ea8fede?narHash=sha256-EtFQJXP5L2S8IgGx/AsCACYdzwf0sGiriyxN1BH2f6Q%3D' (2025-04-06) • Updated input 'flake-lang/plutarch': 'github:plutonomicon/plutarch-plutus/b626f27265474ce7bfb59bc4b53e0ab4495f9af6?narHash=sha256-JNtWz6qxkcnEDYwtc4inKg5s7xtHLvDjFk9diHq4WZ4%3D' (2025-03-28) → 'github:plutonomicon/plutarch-plutus/f84a46287b06f36abf8d2d63bec7ff75d32f3e91?narHash=sha256-gKBk9D6DHSEudq7P9%2B07yXWcgM/QX7NFp0tJXBodopM%3D' (2025-04-01) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/15c2a7930e04efc87be3ebf1b5d06232e635e24b?narHash=sha256-VWyaUfBY49kjN29N140INa9LEW0YIgAr%2BOEJRdbKfnQ%3D' (2025-03-30) → 'github:oxalica/rust-overlay/9d00c6b69408dd40d067603012938d9fbe95cfcd?narHash=sha256-Thah1oU8Vy0gs9bh5QhNcQh1iuQiowMnZPbrkURonZA%3D' (2025-04-06) --- flake.lock | 104 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 61 insertions(+), 43 deletions(-) diff --git a/flake.lock b/flake.lock index 00df7020..97e1dbcc 100644 --- a/flake.lock +++ b/flake.lock @@ -332,16 +332,16 @@ "blst_5": { "flake": false, "locked": { - "lastModified": 1691598027, - "narHash": "sha256-oqljy+ZXJAXEB/fJtmB8rlAr4UXM+Z2OkDa20gpILNA=", + "lastModified": 1739372843, + "narHash": "sha256-IlbNMLBjs/dvGogcdbWQIL+3qwy7EXJbIDpo4xBd4bY=", "owner": "supranational", "repo": "blst", - "rev": "3dd0f804b1819e5d03fb22ca2e6fac105932043a", + "rev": "8c7db7fe8d2ce6e76dc398ebd4d475c0ec564355", "type": "github" }, "original": { "owner": "supranational", - "ref": "v0.3.11", + "ref": "v0.3.14", "repo": "blst", "type": "github" } @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1743178751, - "narHash": "sha256-v6J2Bvg3c7zDy58LPzfZVD4tAqoMKijsdraWxu80Sb0=", + "lastModified": 1743783778, + "narHash": "sha256-9zZR+ENnY4aLIXOSz4HfK0lMPe83bKQflR8QIrOVeaw=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "03943a29e1e103700b894af8b5dd0f1878a83e4d", + "rev": "0be4512de1cbfb351ef8c5b939d71292a8f42af4", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1742394900, - "narHash": "sha256-vVOAp9ahvnU+fQoKd4SEXB2JG2wbENkpqcwlkIXgUC0=", + "lastModified": 1743908961, + "narHash": "sha256-e1idZdpnnHWuosI3KsBgAgrhMR05T2oqskXCmNzGPq0=", "owner": "ipetkov", "repo": "crane", - "rev": "70947c1908108c0c551ddfd73d4f750ff2ea67cd", + "rev": "80ceeec0dc94ef967c371dcdc56adb280328f591", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1743404850, - "narHash": "sha256-qNqGFkVkzJSmrgKhpScutljac/6p3NsRRWJGiwKuCb4=", + "lastModified": 1744007214, + "narHash": "sha256-xsSzVaomVsbgimBEIUEJnmV4UWR9RcxpJTNwOQLc31M=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "e9cc3f39282d80fe0ebb725f3e4cd3853e14fca5", + "rev": "fa8f5ae5b3a569e2368e7ba51597ee0f2ad06eb9", "type": "github" }, "original": { @@ -1879,11 +1879,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1741352980, - "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", + "lastModified": 1743550720, + "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", + "rev": "c621e8422220273271f52058f618c94e405bb0f5", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1743294414, - "narHash": "sha256-WuIuMY/UgRI4XwLozK9y76YWwq2BNWpNQOe6Kxja9xA=", + "lastModified": 1743899203, + "narHash": "sha256-nbe9I9TeeBwXEO9aBMjEoWRWxXB0B77/ayOVzdL3B+E=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "ba336c15d3fe744d5db8d60d7437f1bbd126b75a", + "rev": "adcd2f8c7809f9b86fe95277cee408a6be30e664", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1743294424, - "narHash": "sha256-kKC9A5W3pT8CjEv87x5PmbSwG2vXqdanNigM4X3TdGs=", + "lastModified": 1743899213, + "narHash": "sha256-r6q6z5KQ46YYUl595cM5Nj61tzjavGZBmFZ0VJO6nWA=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "3e1368cdb1a42397e0ef43e792235716c03a2ba1", + "rev": "004d2d7606fdf096c6e27189f741f5653cf97d95", "type": "github" }, "original": { @@ -2487,6 +2487,7 @@ "hls": "hls", "hls-1.10": "hls-1.10_5", "hls-2.0": "hls-2.0_4", + "hls-2.10": "hls-2.10", "hls-2.2": "hls-2.2_4", "hls-2.3": "hls-2.3_4", "hls-2.4": "hls-2.4_4", @@ -2511,11 +2512,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1743295933, - "narHash": "sha256-Y1ljFalJ3vQdmsKUBs58tEaNMET7evEawoI+T6rdn1M=", + "lastModified": 1743900730, + "narHash": "sha256-oTf772W9WgnzUw/L6Gybw0HGx6J6ybHps5CFDSiSP8Q=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "12b3b87f27a5a974421a777df4d18b74f4fcf145", + "rev": "9efeaf6f20890331d0358747d921e38c757e27b2", "type": "github" }, "original": { @@ -3062,6 +3063,23 @@ "type": "github" } }, + "hls-2.10": { + "flake": false, + "locked": { + "lastModified": 1743069404, + "narHash": "sha256-q4kDFyJDDeoGqfEtrZRx4iqMVEC2MOzCToWsFY+TOzY=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "2318c61db3a01e03700bd4b05665662929b7fe8b", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.10.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, "hls-2.2": { "flake": false, "locked": { @@ -3838,11 +3856,11 @@ "sodium": "sodium_5" }, "locked": { - "lastModified": 1740527380, - "narHash": "sha256-0sF0RUsnFVdRMoS9amtRQs6TnCFynDFdbzn8zBLD5Bg=", + "lastModified": 1743649718, + "narHash": "sha256-Wl1nQ2dak4b3fXA7+9rB2ntiKUS+yAzR2kOIUoAF0u8=", "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "ea26f2ca1686656d89bb5760f717f713168cd5a5", + "rev": "3acad181ea6619b64fa49961133026110a460945", "type": "github" }, "original": { @@ -5193,11 +5211,11 @@ }, "nixpkgs-lib_2": { "locked": { - "lastModified": 1740877520, - "narHash": "sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk=", + "lastModified": 1743296961, + "narHash": "sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "147dee35aab2193b174e4c0868bd80ead5ce755c", + "rev": "e4822aea2a6d1cdd36653c134cacfd64c97ff4fa", "type": "github" }, "original": { @@ -5588,11 +5606,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1743338748, - "narHash": "sha256-5ykFVCKy5t71cvbZ4IR5MJ7GPFF3DPodD9RLJ45L/Cc=", + "lastModified": 1743942655, + "narHash": "sha256-EtFQJXP5L2S8IgGx/AsCACYdzwf0sGiriyxN1BH2f6Q=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "97e6665ed0fa3a70cbbd6af308696451ccc20926", + "rev": "6e0ed24a84eeaf3f5b94bd35e2c2d2de5ea8fede", "type": "github" }, "original": { @@ -6069,11 +6087,11 @@ "plutarch": { "flake": false, "locked": { - "lastModified": 1743134969, - "narHash": "sha256-JNtWz6qxkcnEDYwtc4inKg5s7xtHLvDjFk9diHq4WZ4=", + "lastModified": 1743483979, + "narHash": "sha256-gKBk9D6DHSEudq7P9+07yXWcgM/QX7NFp0tJXBodopM=", "owner": "plutonomicon", "repo": "plutarch-plutus", - "rev": "b626f27265474ce7bfb59bc4b53e0ab4495f9af6", + "rev": "f84a46287b06f36abf8d2d63bec7ff75d32f3e91", "type": "github" }, "original": { @@ -6157,11 +6175,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1743302122, - "narHash": "sha256-VWyaUfBY49kjN29N140INa9LEW0YIgAr+OEJRdbKfnQ=", + "lastModified": 1743906877, + "narHash": "sha256-Thah1oU8Vy0gs9bh5QhNcQh1iuQiowMnZPbrkURonZA=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "15c2a7930e04efc87be3ebf1b5d06232e635e24b", + "rev": "9d00c6b69408dd40d067603012938d9fbe95cfcd", "type": "github" }, "original": { @@ -6407,11 +6425,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1743293594, - "narHash": "sha256-vbkeiDCJuW5rxDJnNtS00JW0aGPdtPL8sIpdjhZxrKQ=", + "lastModified": 1743898389, + "narHash": "sha256-bt6Q7YTMKlroGm5GIzUHFkr1kxcEo5d9I7QxeTfc4g0=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "3bc02ee6441f377ea248f8649796ba2b5c3aa86f", + "rev": "47b24fefc744299724ec1b75930d11e8c0a59d34", "type": "github" }, "original": { From 13d4e5322042a589bc52c03dcd17fc23b7d30443 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 20 Apr 2025 12:46:45 +0000 Subject: [PATCH 70/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/fa8f5ae5b3a569e2368e7ba51597ee0f2ad06eb9?narHash=sha256-xsSzVaomVsbgimBEIUEJnmV4UWR9RcxpJTNwOQLc31M%3D' (2025-04-07) → 'github:mlabs-haskell/flake-lang.nix/5ff9d7c79f94e73dde1407f84a9b7ee3cb302dc2?narHash=sha256-DEU14htO7IHXL/TdSs59rCDxHcywqtlMWrOsQ0MyFFo%3D' (2025-04-14) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/0be4512de1cbfb351ef8c5b939d71292a8f42af4?narHash=sha256-9zZR%2BENnY4aLIXOSz4HfK0lMPe83bKQflR8QIrOVeaw%3D' (2025-04-04) → 'github:input-output-hk/cardano-haskell-packages/bddc33bdbbdcb9035a9ccd87e10a8c88d7c4c992?narHash=sha256-eUpBbF1XDzpkFWLjGSHqtBzny0zAWe1euTJFj/ZEMLo%3D' (2025-04-11) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/80ceeec0dc94ef967c371dcdc56adb280328f591?narHash=sha256-e1idZdpnnHWuosI3KsBgAgrhMR05T2oqskXCmNzGPq0%3D' (2025-04-06) → 'github:ipetkov/crane/d02c1cdd7ec539699aa44e6ff912e15535969803?narHash=sha256-DXwQEJllxpYeVOiSlBhQuGjfvkoGHTtILLYO2FvcyzQ%3D' (2025-04-11) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/9efeaf6f20890331d0358747d921e38c757e27b2?narHash=sha256-oTf772W9WgnzUw/L6Gybw0HGx6J6ybHps5CFDSiSP8Q%3D' (2025-04-06) → 'github:input-output-hk/haskell.nix/a8961d94a52f0cd654ab1844419f6ac00171d112?narHash=sha256-5ARHzMezLmxCV2d8MgnbFB1%2BQImpkpoSgOYHL5L8OI8%3D' (2025-04-13) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/004d2d7606fdf096c6e27189f741f5653cf97d95?narHash=sha256-r6q6z5KQ46YYUl595cM5Nj61tzjavGZBmFZ0VJO6nWA%3D' (2025-04-06) → 'github:input-output-hk/hackage.nix/25cbf62a050ec7910a331020f668b43e5fff1a98?narHash=sha256-QPlQ6ZdLx7t2mlvG/k6VWQcY%2BSdXosqaSHFFA/2JKD4%3D' (2025-04-13) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/adcd2f8c7809f9b86fe95277cee408a6be30e664?narHash=sha256-nbe9I9TeeBwXEO9aBMjEoWRWxXB0B77/ayOVzdL3B%2BE%3D' (2025-04-06) → 'github:input-output-hk/hackage.nix/971829a8b71049f73c6df502883c10f3ee7e0f2c?narHash=sha256-uIkwKyEm/H%2BoL6ca18Zq2IB12jUAXtvTfZHVmGmVCa8%3D' (2025-04-13) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/47b24fefc744299724ec1b75930d11e8c0a59d34?narHash=sha256-bt6Q7YTMKlroGm5GIzUHFkr1kxcEo5d9I7QxeTfc4g0%3D' (2025-04-06) → 'github:input-output-hk/stackage.nix/a592fbe819c0ebd6b60b94a123c3f277fb81f411?narHash=sha256-haZZAocxDfdykmN1qDDB%2BP6DF68P4VMwU/S4/NpmoRU%3D' (2025-04-13) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/3acad181ea6619b64fa49961133026110a460945?narHash=sha256-Wl1nQ2dak4b3fXA7%2B9rB2ntiKUS%2ByAzR2kOIUoAF0u8%3D' (2025-04-03) → 'github:input-output-hk/iohk-nix/dd47887a0482bfb1399c9da77175933876d0f4ab?narHash=sha256-Lql0s3Occ6gKLvjcqTPK6vW4l1jwNn/UV7uaVpB/jTg%3D' (2025-04-08) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/6e0ed24a84eeaf3f5b94bd35e2c2d2de5ea8fede?narHash=sha256-EtFQJXP5L2S8IgGx/AsCACYdzwf0sGiriyxN1BH2f6Q%3D' (2025-04-06) → 'github:NixOS/nixpkgs/4ad1a0ec6712d4c157c899e9bbd302838021887e?narHash=sha256-F/pODp11dglkJ5amOV7olCeEdUToh0RDCz81nHLPfMY%3D' (2025-04-13) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/9d00c6b69408dd40d067603012938d9fbe95cfcd?narHash=sha256-Thah1oU8Vy0gs9bh5QhNcQh1iuQiowMnZPbrkURonZA%3D' (2025-04-06) → 'github:oxalica/rust-overlay/730fd8e82799219754418483fabe1844262fd1e2?narHash=sha256-NLVluTmK8d01Iz%2BWyarQhwFcXpHEwU7m5hH3YQQFJS0%3D' (2025-04-13) • Updated input 'hci-effects': 'github:hercules-ci/hercules-ci-effects/524637ef84c177661690b924bf64a1ce18072a2c?narHash=sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8%3D' (2025-03-15) → 'github:hercules-ci/hercules-ci-effects/5b6cec51c9ec095a0d3fd4c8eeb53eb5c59ae33e?narHash=sha256-1Z4WPGVky4w3lrhrgs89OKsLzPdtkbi1bPLNFWsoLfY%3D' (2025-04-15) • Updated input 'hci-effects/flake-parts': 'github:hercules-ci/flake-parts/f4330d22f1c5d2ba72d3d22df5597d123fdb60a9?narHash=sha256-%2Bu2UunDA4Cl5Fci3m7S643HzKmIDAe%2BfiXrLqYsR2fs%3D' (2025-03-07) → 'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5?narHash=sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY%3D' (2025-04-01) • Updated input 'hci-effects/nixpkgs': 'github:NixOS/nixpkgs/6607cf789e541e7873d40d3a8f7815ea92204f32?narHash=sha256-cPfs8qMccim2RBgtKGF%2Bx9IBCduRvd/N5F4nYpU0TVE%3D' (2025-03-13) → 'github:NixOS/nixpkgs/2631b0b7abcea6e640ce31cd78ea58910d31e650?narHash=sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR%2BXhw3kr/3Xd0GPTM%3D' (2025-04-12) --- flake.lock | 78 +++++++++++++++++++++++++++--------------------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/flake.lock b/flake.lock index 97e1dbcc..a1db2e4d 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1743783778, - "narHash": "sha256-9zZR+ENnY4aLIXOSz4HfK0lMPe83bKQflR8QIrOVeaw=", + "lastModified": 1744391509, + "narHash": "sha256-eUpBbF1XDzpkFWLjGSHqtBzny0zAWe1euTJFj/ZEMLo=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "0be4512de1cbfb351ef8c5b939d71292a8f42af4", + "rev": "bddc33bdbbdcb9035a9ccd87e10a8c88d7c4c992", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1743908961, - "narHash": "sha256-e1idZdpnnHWuosI3KsBgAgrhMR05T2oqskXCmNzGPq0=", + "lastModified": 1744386647, + "narHash": "sha256-DXwQEJllxpYeVOiSlBhQuGjfvkoGHTtILLYO2FvcyzQ=", "owner": "ipetkov", "repo": "crane", - "rev": "80ceeec0dc94ef967c371dcdc56adb280328f591", + "rev": "d02c1cdd7ec539699aa44e6ff912e15535969803", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1744007214, - "narHash": "sha256-xsSzVaomVsbgimBEIUEJnmV4UWR9RcxpJTNwOQLc31M=", + "lastModified": 1744612433, + "narHash": "sha256-DEU14htO7IHXL/TdSs59rCDxHcywqtlMWrOsQ0MyFFo=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "fa8f5ae5b3a569e2368e7ba51597ee0f2ad06eb9", + "rev": "5ff9d7c79f94e73dde1407f84a9b7ee3cb302dc2", "type": "github" }, "original": { @@ -1921,11 +1921,11 @@ ] }, "locked": { - "lastModified": 1741352980, - "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", + "lastModified": 1743550720, + "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", + "rev": "c621e8422220273271f52058f618c94e405bb0f5", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1743899203, - "narHash": "sha256-nbe9I9TeeBwXEO9aBMjEoWRWxXB0B77/ayOVzdL3B+E=", + "lastModified": 1744505399, + "narHash": "sha256-uIkwKyEm/H+oL6ca18Zq2IB12jUAXtvTfZHVmGmVCa8=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "adcd2f8c7809f9b86fe95277cee408a6be30e664", + "rev": "971829a8b71049f73c6df502883c10f3ee7e0f2c", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1743899213, - "narHash": "sha256-r6q6z5KQ46YYUl595cM5Nj61tzjavGZBmFZ0VJO6nWA=", + "lastModified": 1744505409, + "narHash": "sha256-QPlQ6ZdLx7t2mlvG/k6VWQcY+SdXosqaSHFFA/2JKD4=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "004d2d7606fdf096c6e27189f741f5653cf97d95", + "rev": "25cbf62a050ec7910a331020f668b43e5fff1a98", "type": "github" }, "original": { @@ -2512,11 +2512,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1743900730, - "narHash": "sha256-oTf772W9WgnzUw/L6Gybw0HGx6J6ybHps5CFDSiSP8Q=", + "lastModified": 1744506704, + "narHash": "sha256-5ARHzMezLmxCV2d8MgnbFB1+QImpkpoSgOYHL5L8OI8=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "9efeaf6f20890331d0358747d921e38c757e27b2", + "rev": "a8961d94a52f0cd654ab1844419f6ac00171d112", "type": "github" }, "original": { @@ -2832,11 +2832,11 @@ "nixpkgs": "nixpkgs_27" }, "locked": { - "lastModified": 1742014779, - "narHash": "sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8=", + "lastModified": 1744693102, + "narHash": "sha256-1Z4WPGVky4w3lrhrgs89OKsLzPdtkbi1bPLNFWsoLfY=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "524637ef84c177661690b924bf64a1ce18072a2c", + "rev": "5b6cec51c9ec095a0d3fd4c8eeb53eb5c59ae33e", "type": "github" }, "original": { @@ -3856,11 +3856,11 @@ "sodium": "sodium_5" }, "locked": { - "lastModified": 1743649718, - "narHash": "sha256-Wl1nQ2dak4b3fXA7+9rB2ntiKUS+yAzR2kOIUoAF0u8=", + "lastModified": 1744130217, + "narHash": "sha256-Lql0s3Occ6gKLvjcqTPK6vW4l1jwNn/UV7uaVpB/jTg=", "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "3acad181ea6619b64fa49961133026110a460945", + "rev": "dd47887a0482bfb1399c9da77175933876d0f4ab", "type": "github" }, "original": { @@ -5606,11 +5606,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1743942655, - "narHash": "sha256-EtFQJXP5L2S8IgGx/AsCACYdzwf0sGiriyxN1BH2f6Q=", + "lastModified": 1744547513, + "narHash": "sha256-F/pODp11dglkJ5amOV7olCeEdUToh0RDCz81nHLPfMY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6e0ed24a84eeaf3f5b94bd35e2c2d2de5ea8fede", + "rev": "4ad1a0ec6712d4c157c899e9bbd302838021887e", "type": "github" }, "original": { @@ -5653,11 +5653,11 @@ }, "nixpkgs_27": { "locked": { - "lastModified": 1741851582, - "narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=", + "lastModified": 1744463964, + "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6607cf789e541e7873d40d3a8f7815ea92204f32", + "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650", "type": "github" }, "original": { @@ -6175,11 +6175,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1743906877, - "narHash": "sha256-Thah1oU8Vy0gs9bh5QhNcQh1iuQiowMnZPbrkURonZA=", + "lastModified": 1744513456, + "narHash": "sha256-NLVluTmK8d01Iz+WyarQhwFcXpHEwU7m5hH3YQQFJS0=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "9d00c6b69408dd40d067603012938d9fbe95cfcd", + "rev": "730fd8e82799219754418483fabe1844262fd1e2", "type": "github" }, "original": { @@ -6425,11 +6425,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1743898389, - "narHash": "sha256-bt6Q7YTMKlroGm5GIzUHFkr1kxcEo5d9I7QxeTfc4g0=", + "lastModified": 1744504635, + "narHash": "sha256-haZZAocxDfdykmN1qDDB+P6DF68P4VMwU/S4/NpmoRU=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "47b24fefc744299724ec1b75930d11e8c0a59d34", + "rev": "a592fbe819c0ebd6b60b94a123c3f277fb81f411", "type": "github" }, "original": { From c5b25b2642d71ee1b26447c40bf7ef4d9abf22c2 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 27 Apr 2025 12:46:51 +0000 Subject: [PATCH 71/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/5ff9d7c79f94e73dde1407f84a9b7ee3cb302dc2?narHash=sha256-DEU14htO7IHXL/TdSs59rCDxHcywqtlMWrOsQ0MyFFo%3D' (2025-04-14) → 'github:mlabs-haskell/flake-lang.nix/b84de3469e8b45173a19c993c601b0608bda9fd6?narHash=sha256-2QPfaLfBpb7KgIboaWpqnNH35/Bvah8LYaOkboMXnIs%3D' (2025-04-22) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/bddc33bdbbdcb9035a9ccd87e10a8c88d7c4c992?narHash=sha256-eUpBbF1XDzpkFWLjGSHqtBzny0zAWe1euTJFj/ZEMLo%3D' (2025-04-11) → 'github:input-output-hk/cardano-haskell-packages/78fe67aaa57726eb2a084b68871100d8385ca6ca?narHash=sha256-rVoSOpacSoMxa/eA33YMDUvSsk2otfT1d6Il4P9kI74%3D' (2025-04-18) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/d02c1cdd7ec539699aa44e6ff912e15535969803?narHash=sha256-DXwQEJllxpYeVOiSlBhQuGjfvkoGHTtILLYO2FvcyzQ%3D' (2025-04-11) → 'github:ipetkov/crane/25ca4c50039d91ad88cc0b8feacb9ad7f748dedf?narHash=sha256-tXL4qUlyYZEGOHUKUWjmmcvJjjLQ%2B4U38lPWSc8Cgdo%3D' (2025-04-19) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/a8961d94a52f0cd654ab1844419f6ac00171d112?narHash=sha256-5ARHzMezLmxCV2d8MgnbFB1%2BQImpkpoSgOYHL5L8OI8%3D' (2025-04-13) → 'github:input-output-hk/haskell.nix/a0a5d6173c6c79cd7bf27a71d439cf936165479f?narHash=sha256-d8IGU7u4BEqbobmUU5DyK2woUr9FatJ6pLju5RWfRTs%3D' (2025-04-20) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/25cbf62a050ec7910a331020f668b43e5fff1a98?narHash=sha256-QPlQ6ZdLx7t2mlvG/k6VWQcY%2BSdXosqaSHFFA/2JKD4%3D' (2025-04-13) → 'github:input-output-hk/hackage.nix/6fbbbdd45b59bef57ee7baedfa8e81e807c08345?narHash=sha256-5JGETERJbEifXAhx4xCgerbfyu5w9CDZT9VoCnJyJLE%3D' (2025-04-20) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/971829a8b71049f73c6df502883c10f3ee7e0f2c?narHash=sha256-uIkwKyEm/H%2BoL6ca18Zq2IB12jUAXtvTfZHVmGmVCa8%3D' (2025-04-13) → 'github:input-output-hk/hackage.nix/38b8e2bb80af4ab7716611f356fbf32a2b3f0bf6?narHash=sha256-07QmyG9ecYbTEi0FGwtO58/Bf6nwgWGtHZxb8%2BhievM%3D' (2025-04-20) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/a592fbe819c0ebd6b60b94a123c3f277fb81f411?narHash=sha256-haZZAocxDfdykmN1qDDB%2BP6DF68P4VMwU/S4/NpmoRU%3D' (2025-04-13) → 'github:input-output-hk/stackage.nix/2e5808f3dc71d693d4fdf41d3e17ebeadf7a0aa0?narHash=sha256-huvzWsmD8smZF%2BwQlYcxYERKRuxGPzgcVhb61q9gkMs%3D' (2025-04-20) • Updated input 'flake-lang/hci-effects': 'github:hercules-ci/hercules-ci-effects/524637ef84c177661690b924bf64a1ce18072a2c?narHash=sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8%3D' (2025-03-15) → 'github:hercules-ci/hercules-ci-effects/5b6cec51c9ec095a0d3fd4c8eeb53eb5c59ae33e?narHash=sha256-1Z4WPGVky4w3lrhrgs89OKsLzPdtkbi1bPLNFWsoLfY%3D' (2025-04-15) • Updated input 'flake-lang/hci-effects/flake-parts': 'github:hercules-ci/flake-parts/f4330d22f1c5d2ba72d3d22df5597d123fdb60a9?narHash=sha256-%2Bu2UunDA4Cl5Fci3m7S643HzKmIDAe%2BfiXrLqYsR2fs%3D' (2025-03-07) → 'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5?narHash=sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY%3D' (2025-04-01) • Updated input 'flake-lang/hci-effects/nixpkgs': 'github:NixOS/nixpkgs/6607cf789e541e7873d40d3a8f7815ea92204f32?narHash=sha256-cPfs8qMccim2RBgtKGF%2Bx9IBCduRvd/N5F4nYpU0TVE%3D' (2025-03-13) → 'github:NixOS/nixpkgs/2631b0b7abcea6e640ce31cd78ea58910d31e650?narHash=sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR%2BXhw3kr/3Xd0GPTM%3D' (2025-04-12) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/4ad1a0ec6712d4c157c899e9bbd302838021887e?narHash=sha256-F/pODp11dglkJ5amOV7olCeEdUToh0RDCz81nHLPfMY%3D' (2025-04-13) → 'github:NixOS/nixpkgs/9f0e98f5484ac47f890f826a576fa1415f085b44?narHash=sha256-ae0MY9GACDQ1m1hosQA5ZQaAb6hl0iW9GtBt5//hs1s%3D' (2025-04-20) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/730fd8e82799219754418483fabe1844262fd1e2?narHash=sha256-NLVluTmK8d01Iz%2BWyarQhwFcXpHEwU7m5hH3YQQFJS0%3D' (2025-04-13) → 'github:oxalica/rust-overlay/e2142ef330a61c02f274ac9a9cb6f8487a5d0080?narHash=sha256-5xzA6dTfqCfTTDCo3ipPZzrg3wp01xmcr73y4cTNMP8%3D' (2025-04-20) • Updated input 'flake-lang/rust-overlay/nixpkgs': 'github:NixOS/nixpkgs/4bc9c909d9ac828a039f288cf872d16d38185db8?narHash=sha256-nIYdTAiKIGnFNugbomgBJR%2BXv5F1ZQU%2BHfaBqJKroC0%3D' (2025-01-08) → 'github:NixOS/nixpkgs/18dd725c29603f582cf1900e0d25f9f1063dbf11?narHash=sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38%3D' (2025-04-13) --- flake.lock | 78 +++++++++++++++++++++++++++--------------------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/flake.lock b/flake.lock index a1db2e4d..97807231 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1744391509, - "narHash": "sha256-eUpBbF1XDzpkFWLjGSHqtBzny0zAWe1euTJFj/ZEMLo=", + "lastModified": 1744975741, + "narHash": "sha256-rVoSOpacSoMxa/eA33YMDUvSsk2otfT1d6Il4P9kI74=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "bddc33bdbbdcb9035a9ccd87e10a8c88d7c4c992", + "rev": "78fe67aaa57726eb2a084b68871100d8385ca6ca", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1744386647, - "narHash": "sha256-DXwQEJllxpYeVOiSlBhQuGjfvkoGHTtILLYO2FvcyzQ=", + "lastModified": 1745022865, + "narHash": "sha256-tXL4qUlyYZEGOHUKUWjmmcvJjjLQ+4U38lPWSc8Cgdo=", "owner": "ipetkov", "repo": "crane", - "rev": "d02c1cdd7ec539699aa44e6ff912e15535969803", + "rev": "25ca4c50039d91ad88cc0b8feacb9ad7f748dedf", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1744612433, - "narHash": "sha256-DEU14htO7IHXL/TdSs59rCDxHcywqtlMWrOsQ0MyFFo=", + "lastModified": 1745302638, + "narHash": "sha256-2QPfaLfBpb7KgIboaWpqnNH35/Bvah8LYaOkboMXnIs=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "5ff9d7c79f94e73dde1407f84a9b7ee3cb302dc2", + "rev": "b84de3469e8b45173a19c993c601b0608bda9fd6", "type": "github" }, "original": { @@ -1901,11 +1901,11 @@ ] }, "locked": { - "lastModified": 1741352980, - "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", + "lastModified": 1743550720, + "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", + "rev": "c621e8422220273271f52058f618c94e405bb0f5", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1744505399, - "narHash": "sha256-uIkwKyEm/H+oL6ca18Zq2IB12jUAXtvTfZHVmGmVCa8=", + "lastModified": 1745109056, + "narHash": "sha256-07QmyG9ecYbTEi0FGwtO58/Bf6nwgWGtHZxb8+hievM=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "971829a8b71049f73c6df502883c10f3ee7e0f2c", + "rev": "38b8e2bb80af4ab7716611f356fbf32a2b3f0bf6", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1744505409, - "narHash": "sha256-QPlQ6ZdLx7t2mlvG/k6VWQcY+SdXosqaSHFFA/2JKD4=", + "lastModified": 1745109066, + "narHash": "sha256-5JGETERJbEifXAhx4xCgerbfyu5w9CDZT9VoCnJyJLE=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "25cbf62a050ec7910a331020f668b43e5fff1a98", + "rev": "6fbbbdd45b59bef57ee7baedfa8e81e807c08345", "type": "github" }, "original": { @@ -2512,11 +2512,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1744506704, - "narHash": "sha256-5ARHzMezLmxCV2d8MgnbFB1+QImpkpoSgOYHL5L8OI8=", + "lastModified": 1745110330, + "narHash": "sha256-d8IGU7u4BEqbobmUU5DyK2woUr9FatJ6pLju5RWfRTs=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "a8961d94a52f0cd654ab1844419f6ac00171d112", + "rev": "a0a5d6173c6c79cd7bf27a71d439cf936165479f", "type": "github" }, "original": { @@ -2813,11 +2813,11 @@ "nixpkgs": "nixpkgs_22" }, "locked": { - "lastModified": 1742014779, - "narHash": "sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8=", + "lastModified": 1744693102, + "narHash": "sha256-1Z4WPGVky4w3lrhrgs89OKsLzPdtkbi1bPLNFWsoLfY=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "524637ef84c177661690b924bf64a1ce18072a2c", + "rev": "5b6cec51c9ec095a0d3fd4c8eeb53eb5c59ae33e", "type": "github" }, "original": { @@ -5574,11 +5574,11 @@ }, "nixpkgs_22": { "locked": { - "lastModified": 1741851582, - "narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=", + "lastModified": 1744463964, + "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6607cf789e541e7873d40d3a8f7815ea92204f32", + "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650", "type": "github" }, "original": { @@ -5606,11 +5606,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1744547513, - "narHash": "sha256-F/pODp11dglkJ5amOV7olCeEdUToh0RDCz81nHLPfMY=", + "lastModified": 1745153053, + "narHash": "sha256-ae0MY9GACDQ1m1hosQA5ZQaAb6hl0iW9GtBt5//hs1s=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4ad1a0ec6712d4c157c899e9bbd302838021887e", + "rev": "9f0e98f5484ac47f890f826a576fa1415f085b44", "type": "github" }, "original": { @@ -5637,11 +5637,11 @@ }, "nixpkgs_26": { "locked": { - "lastModified": 1736320768, - "narHash": "sha256-nIYdTAiKIGnFNugbomgBJR+Xv5F1ZQU+HfaBqJKroC0=", + "lastModified": 1744536153, + "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4bc9c909d9ac828a039f288cf872d16d38185db8", + "rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11", "type": "github" }, "original": { @@ -6175,11 +6175,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1744513456, - "narHash": "sha256-NLVluTmK8d01Iz+WyarQhwFcXpHEwU7m5hH3YQQFJS0=", + "lastModified": 1745116541, + "narHash": "sha256-5xzA6dTfqCfTTDCo3ipPZzrg3wp01xmcr73y4cTNMP8=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "730fd8e82799219754418483fabe1844262fd1e2", + "rev": "e2142ef330a61c02f274ac9a9cb6f8487a5d0080", "type": "github" }, "original": { @@ -6425,11 +6425,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1744504635, - "narHash": "sha256-haZZAocxDfdykmN1qDDB+P6DF68P4VMwU/S4/NpmoRU=", + "lastModified": 1745108441, + "narHash": "sha256-huvzWsmD8smZF+wQlYcxYERKRuxGPzgcVhb61q9gkMs=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "a592fbe819c0ebd6b60b94a123c3f277fb81f411", + "rev": "2e5808f3dc71d693d4fdf41d3e17ebeadf7a0aa0", "type": "github" }, "original": { From cc60aa36e4fd5b149523001559c92d3294d58026 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 4 May 2025 12:45:47 +0000 Subject: [PATCH 72/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/b84de3469e8b45173a19c993c601b0608bda9fd6?narHash=sha256-2QPfaLfBpb7KgIboaWpqnNH35/Bvah8LYaOkboMXnIs%3D' (2025-04-22) → 'github:mlabs-haskell/flake-lang.nix/d3af736d25bd7082c7acd7ed342cfdc97cc54f32?narHash=sha256-C32Xj1C1HfdyNHbm0pAzLWHn5l11VipEwJYHRtaxrnI%3D' (2025-04-27) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/78fe67aaa57726eb2a084b68871100d8385ca6ca?narHash=sha256-rVoSOpacSoMxa/eA33YMDUvSsk2otfT1d6Il4P9kI74%3D' (2025-04-18) → 'github:input-output-hk/cardano-haskell-packages/0f473eb9b6830d100ff6e6d6b9250f553e0f71cd?narHash=sha256-BKunBedqSA09I8HaXenDsQpZ2u5mZQFeafkAxZ02fxE%3D' (2025-04-25) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/25ca4c50039d91ad88cc0b8feacb9ad7f748dedf?narHash=sha256-tXL4qUlyYZEGOHUKUWjmmcvJjjLQ%2B4U38lPWSc8Cgdo%3D' (2025-04-19) → 'github:ipetkov/crane/efd36682371678e2b6da3f108fdb5c613b3ec598?narHash=sha256-oLvmxOnsEKGtwczxp/CwhrfmQUG2ym24OMWowcoRhH8%3D' (2025-04-24) • Updated input 'flake-lang/ctl': 'github:plutonomicon/cardano-transaction-lib/e209542ad5ac664ce8d8cc94705834069da7c011?narHash=sha256-zAry2u/yLt18Ltxpx4R4c8Ap5kPz7bFTU1qSn6/FL24%3D' (2025-03-24) → 'github:plutonomicon/cardano-transaction-lib/a9b3a707a831977574dbfcc6b054be6971c5e864?narHash=sha256-/yteWnAd/gVt7IExsd6ifNJoSClSi6tO4EIzGmBfHJ0%3D' (2025-04-25) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/a0a5d6173c6c79cd7bf27a71d439cf936165479f?narHash=sha256-d8IGU7u4BEqbobmUU5DyK2woUr9FatJ6pLju5RWfRTs%3D' (2025-04-20) → 'github:input-output-hk/haskell.nix/dd0712e2816b06ad43d3da2cfac8e691dc6da4ef?narHash=sha256-hDADKk6mw85pCeRTheGSCnchmYAshvRm2w2e8lBu9LE%3D' (2025-04-27) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/6fbbbdd45b59bef57ee7baedfa8e81e807c08345?narHash=sha256-5JGETERJbEifXAhx4xCgerbfyu5w9CDZT9VoCnJyJLE%3D' (2025-04-20) → 'github:input-output-hk/hackage.nix/24ac83a7a12a2ac5a4dad054bbe888ef7faba627?narHash=sha256-ppFOtKiL6uUBjniZL6/zezpkjqNnYUE%2BtKXaa45pSBk%3D' (2025-04-27) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/38b8e2bb80af4ab7716611f356fbf32a2b3f0bf6?narHash=sha256-07QmyG9ecYbTEi0FGwtO58/Bf6nwgWGtHZxb8%2BhievM%3D' (2025-04-20) → 'github:input-output-hk/hackage.nix/f77fbbab1086adfe7b9854f0f73e11e5602cdd62?narHash=sha256-EvWC/XZEL4PIXt2o/AaCGGmHORJK%2B0YvTXlmr4jF1tc%3D' (2025-04-27) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/2e5808f3dc71d693d4fdf41d3e17ebeadf7a0aa0?narHash=sha256-huvzWsmD8smZF%2BwQlYcxYERKRuxGPzgcVhb61q9gkMs%3D' (2025-04-20) → 'github:input-output-hk/stackage.nix/66b79101570fc437b81d3ae4b7b7948271943cfd?narHash=sha256-0J%2B/%2B5ApD/rgxRKk7A%2BF0DKWo5j59ARGxEfKo3bNsR0%3D' (2025-04-25) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/dd47887a0482bfb1399c9da77175933876d0f4ab?narHash=sha256-Lql0s3Occ6gKLvjcqTPK6vW4l1jwNn/UV7uaVpB/jTg%3D' (2025-04-08) → 'github:input-output-hk/iohk-nix/5c16fdfc45deda7a4ccf964b6dfa1c3cab72f1f7?narHash=sha256-dMoJ6yHcRvUcB66nofzfAtmVxnDg8oPW3wiVtimXT/o%3D' (2025-04-25) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/9f0e98f5484ac47f890f826a576fa1415f085b44?narHash=sha256-ae0MY9GACDQ1m1hosQA5ZQaAb6hl0iW9GtBt5//hs1s%3D' (2025-04-20) → 'github:NixOS/nixpkgs/21f457040c968d4b895a4ccf5816d97405b95d7a?narHash=sha256-kr31NCNAYfKk8JTT2naW0O3xoOZNQ/efdMy/sJbTb5g%3D' (2025-04-27) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/e2142ef330a61c02f274ac9a9cb6f8487a5d0080?narHash=sha256-5xzA6dTfqCfTTDCo3ipPZzrg3wp01xmcr73y4cTNMP8%3D' (2025-04-20) → 'github:oxalica/rust-overlay/621131c9e281d1047bf8937547ed77e97c464aba?narHash=sha256-dm93104HXjKWzkrr7yAPtxpbllOSzrwFFruc%2BrKQHSg%3D' (2025-04-27) --- flake.lock | 66 +++++++++++++++++++++++++++--------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/flake.lock b/flake.lock index 97807231..73ff91d7 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1744975741, - "narHash": "sha256-rVoSOpacSoMxa/eA33YMDUvSsk2otfT1d6Il4P9kI74=", + "lastModified": 1745606874, + "narHash": "sha256-BKunBedqSA09I8HaXenDsQpZ2u5mZQFeafkAxZ02fxE=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "78fe67aaa57726eb2a084b68871100d8385ca6ca", + "rev": "0f473eb9b6830d100ff6e6d6b9250f553e0f71cd", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1745022865, - "narHash": "sha256-tXL4qUlyYZEGOHUKUWjmmcvJjjLQ+4U38lPWSc8Cgdo=", + "lastModified": 1745454774, + "narHash": "sha256-oLvmxOnsEKGtwczxp/CwhrfmQUG2ym24OMWowcoRhH8=", "owner": "ipetkov", "repo": "crane", - "rev": "25ca4c50039d91ad88cc0b8feacb9ad7f748dedf", + "rev": "efd36682371678e2b6da3f108fdb5c613b3ec598", "type": "github" }, "original": { @@ -1056,11 +1056,11 @@ "ogmios": "ogmios" }, "locked": { - "lastModified": 1742811157, - "narHash": "sha256-zAry2u/yLt18Ltxpx4R4c8Ap5kPz7bFTU1qSn6/FL24=", + "lastModified": 1745580952, + "narHash": "sha256-/yteWnAd/gVt7IExsd6ifNJoSClSi6tO4EIzGmBfHJ0=", "owner": "plutonomicon", "repo": "cardano-transaction-lib", - "rev": "e209542ad5ac664ce8d8cc94705834069da7c011", + "rev": "a9b3a707a831977574dbfcc6b054be6971c5e864", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1745302638, - "narHash": "sha256-2QPfaLfBpb7KgIboaWpqnNH35/Bvah8LYaOkboMXnIs=", + "lastModified": 1745779843, + "narHash": "sha256-C32Xj1C1HfdyNHbm0pAzLWHn5l11VipEwJYHRtaxrnI=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "b84de3469e8b45173a19c993c601b0608bda9fd6", + "rev": "d3af736d25bd7082c7acd7ed342cfdc97cc54f32", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1745109056, - "narHash": "sha256-07QmyG9ecYbTEi0FGwtO58/Bf6nwgWGtHZxb8+hievM=", + "lastModified": 1745713632, + "narHash": "sha256-EvWC/XZEL4PIXt2o/AaCGGmHORJK+0YvTXlmr4jF1tc=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "38b8e2bb80af4ab7716611f356fbf32a2b3f0bf6", + "rev": "f77fbbab1086adfe7b9854f0f73e11e5602cdd62", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1745109066, - "narHash": "sha256-5JGETERJbEifXAhx4xCgerbfyu5w9CDZT9VoCnJyJLE=", + "lastModified": 1745713642, + "narHash": "sha256-ppFOtKiL6uUBjniZL6/zezpkjqNnYUE+tKXaa45pSBk=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "6fbbbdd45b59bef57ee7baedfa8e81e807c08345", + "rev": "24ac83a7a12a2ac5a4dad054bbe888ef7faba627", "type": "github" }, "original": { @@ -2512,11 +2512,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1745110330, - "narHash": "sha256-d8IGU7u4BEqbobmUU5DyK2woUr9FatJ6pLju5RWfRTs=", + "lastModified": 1745715137, + "narHash": "sha256-hDADKk6mw85pCeRTheGSCnchmYAshvRm2w2e8lBu9LE=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "a0a5d6173c6c79cd7bf27a71d439cf936165479f", + "rev": "dd0712e2816b06ad43d3da2cfac8e691dc6da4ef", "type": "github" }, "original": { @@ -3856,11 +3856,11 @@ "sodium": "sodium_5" }, "locked": { - "lastModified": 1744130217, - "narHash": "sha256-Lql0s3Occ6gKLvjcqTPK6vW4l1jwNn/UV7uaVpB/jTg=", + "lastModified": 1745582862, + "narHash": "sha256-dMoJ6yHcRvUcB66nofzfAtmVxnDg8oPW3wiVtimXT/o=", "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "dd47887a0482bfb1399c9da77175933876d0f4ab", + "rev": "5c16fdfc45deda7a4ccf964b6dfa1c3cab72f1f7", "type": "github" }, "original": { @@ -5606,11 +5606,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1745153053, - "narHash": "sha256-ae0MY9GACDQ1m1hosQA5ZQaAb6hl0iW9GtBt5//hs1s=", + "lastModified": 1745758039, + "narHash": "sha256-kr31NCNAYfKk8JTT2naW0O3xoOZNQ/efdMy/sJbTb5g=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9f0e98f5484ac47f890f826a576fa1415f085b44", + "rev": "21f457040c968d4b895a4ccf5816d97405b95d7a", "type": "github" }, "original": { @@ -6175,11 +6175,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1745116541, - "narHash": "sha256-5xzA6dTfqCfTTDCo3ipPZzrg3wp01xmcr73y4cTNMP8=", + "lastModified": 1745721366, + "narHash": "sha256-dm93104HXjKWzkrr7yAPtxpbllOSzrwFFruc+rKQHSg=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "e2142ef330a61c02f274ac9a9cb6f8487a5d0080", + "rev": "621131c9e281d1047bf8937547ed77e97c464aba", "type": "github" }, "original": { @@ -6425,11 +6425,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1745108441, - "narHash": "sha256-huvzWsmD8smZF+wQlYcxYERKRuxGPzgcVhb61q9gkMs=", + "lastModified": 1745539978, + "narHash": "sha256-0J+/+5ApD/rgxRKk7A+F0DKWo5j59ARGxEfKo3bNsR0=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "2e5808f3dc71d693d4fdf41d3e17ebeadf7a0aa0", + "rev": "66b79101570fc437b81d3ae4b7b7948271943cfd", "type": "github" }, "original": { From b2ac9757d55eee8ef8a3074dfd1c7285a6597b73 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 11 May 2025 12:45:46 +0000 Subject: [PATCH 73/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/d3af736d25bd7082c7acd7ed342cfdc97cc54f32?narHash=sha256-C32Xj1C1HfdyNHbm0pAzLWHn5l11VipEwJYHRtaxrnI%3D' (2025-04-27) → 'github:mlabs-haskell/flake-lang.nix/8cc0fe2ed30bc272fd8145e53a118bdf0ed4e65a?narHash=sha256-Umse5wkLm%2BimXhE3UYvoUitH92qZyPCHFOnjNMOc%2B/U%3D' (2025-05-05) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/0f473eb9b6830d100ff6e6d6b9250f553e0f71cd?narHash=sha256-BKunBedqSA09I8HaXenDsQpZ2u5mZQFeafkAxZ02fxE%3D' (2025-04-25) → 'github:input-output-hk/cardano-haskell-packages/b8e34520941dd8631c22c7bf2f1cd68533104fe0?narHash=sha256-SKYYwYUYPEuHhVFu%2B82ExAYkaJ1oZ9MIgRZ2U%2BMVpe4%3D' (2025-04-29) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/efd36682371678e2b6da3f108fdb5c613b3ec598?narHash=sha256-oLvmxOnsEKGtwczxp/CwhrfmQUG2ym24OMWowcoRhH8%3D' (2025-04-24) → 'github:ipetkov/crane/dfd9a8dfd09db9aad544c4d3b6c47b12562544a5?narHash=sha256-DdWJLA%2BD5tcmrRSg5Y7tp/qWaD05ATI4Z7h22gd1h7Q%3D' (2025-05-03) • Updated input 'flake-lang/ctl': 'github:plutonomicon/cardano-transaction-lib/a9b3a707a831977574dbfcc6b054be6971c5e864?narHash=sha256-/yteWnAd/gVt7IExsd6ifNJoSClSi6tO4EIzGmBfHJ0%3D' (2025-04-25) → 'github:plutonomicon/cardano-transaction-lib/0d58ea37f947a3a678176573a51d4198fe17c17e?narHash=sha256-futjJb6GKJ3eRQLdRV2SWcLvSrMlGnxrqXbfjd%2BPEQQ%3D' (2025-04-30) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/dd0712e2816b06ad43d3da2cfac8e691dc6da4ef?narHash=sha256-hDADKk6mw85pCeRTheGSCnchmYAshvRm2w2e8lBu9LE%3D' (2025-04-27) → 'github:input-output-hk/haskell.nix/c462c3b882db951faf439ab5320a3ccc9c093b95?narHash=sha256-vTpSMlZp%2BLzRVHJV1JmaINVEJRhAITBOmA9hEF/4Jdg%3D' (2025-05-04) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/24ac83a7a12a2ac5a4dad054bbe888ef7faba627?narHash=sha256-ppFOtKiL6uUBjniZL6/zezpkjqNnYUE%2BtKXaa45pSBk%3D' (2025-04-27) → 'github:input-output-hk/hackage.nix/71073b6191b8d613f0bc51231a37fdd3d6f800e4?narHash=sha256-bLu2KAxMu%2BmYitKln6TFaoR7dSO6BDzRAvw7ZRe58do%3D' (2025-05-04) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/f77fbbab1086adfe7b9854f0f73e11e5602cdd62?narHash=sha256-EvWC/XZEL4PIXt2o/AaCGGmHORJK%2B0YvTXlmr4jF1tc%3D' (2025-04-27) → 'github:input-output-hk/hackage.nix/7cfa07e721ef84eceba9a8996a825d718fc8cd8b?narHash=sha256-G7xHHjuFcS/PNVLrZf32o7pZiQbZxIruWeutBeUw8og%3D' (2025-05-04) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/66b79101570fc437b81d3ae4b7b7948271943cfd?narHash=sha256-0J%2B/%2B5ApD/rgxRKk7A%2BF0DKWo5j59ARGxEfKo3bNsR0%3D' (2025-04-25) → 'github:input-output-hk/stackage.nix/1b1b4c312d6b36b48f76dbb270c7b30c9075c9ae?narHash=sha256-AY9W9LcVzNTrnS7oYCmYmgXHHZceVPbkBZOJV7gOzmg%3D' (2025-05-04) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/21f457040c968d4b895a4ccf5816d97405b95d7a?narHash=sha256-kr31NCNAYfKk8JTT2naW0O3xoOZNQ/efdMy/sJbTb5g%3D' (2025-04-27) → 'github:NixOS/nixpkgs/09cd0b164be4549fe7b9ec075ae03b5b3a0fd97d?narHash=sha256-FLV/FmJkVVJVQ9pbJR/6gnlesvFIjKUneoPA5itz6P8%3D' (2025-05-04) • Updated input 'flake-lang/plutarch': 'github:plutonomicon/plutarch-plutus/f84a46287b06f36abf8d2d63bec7ff75d32f3e91?narHash=sha256-gKBk9D6DHSEudq7P9%2B07yXWcgM/QX7NFp0tJXBodopM%3D' (2025-04-01) → 'github:plutonomicon/plutarch-plutus/d742915b4d6a10480fa34c78ec0453c551ecdfec?narHash=sha256-QDjE8zNOSSqRLUhT0lldH21xB9PHr2gsyfHsSjSyxTs%3D' (2025-04-29) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/621131c9e281d1047bf8937547ed77e97c464aba?narHash=sha256-dm93104HXjKWzkrr7yAPtxpbllOSzrwFFruc%2BrKQHSg%3D' (2025-04-27) → 'github:oxalica/rust-overlay/dd280c436961ec5adccf0135efe5b66a23d84497?narHash=sha256-IDqSls/r6yBfdOBRSMQ/noTUoigmsKnTQ7TqpsBtN4Y%3D' (2025-05-04) --- flake.lock | 66 +++++++++++++++++++++++++++--------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/flake.lock b/flake.lock index 73ff91d7..3f8666f6 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1745606874, - "narHash": "sha256-BKunBedqSA09I8HaXenDsQpZ2u5mZQFeafkAxZ02fxE=", + "lastModified": 1745960978, + "narHash": "sha256-SKYYwYUYPEuHhVFu+82ExAYkaJ1oZ9MIgRZ2U+MVpe4=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "0f473eb9b6830d100ff6e6d6b9250f553e0f71cd", + "rev": "b8e34520941dd8631c22c7bf2f1cd68533104fe0", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1745454774, - "narHash": "sha256-oLvmxOnsEKGtwczxp/CwhrfmQUG2ym24OMWowcoRhH8=", + "lastModified": 1746291859, + "narHash": "sha256-DdWJLA+D5tcmrRSg5Y7tp/qWaD05ATI4Z7h22gd1h7Q=", "owner": "ipetkov", "repo": "crane", - "rev": "efd36682371678e2b6da3f108fdb5c613b3ec598", + "rev": "dfd9a8dfd09db9aad544c4d3b6c47b12562544a5", "type": "github" }, "original": { @@ -1056,11 +1056,11 @@ "ogmios": "ogmios" }, "locked": { - "lastModified": 1745580952, - "narHash": "sha256-/yteWnAd/gVt7IExsd6ifNJoSClSi6tO4EIzGmBfHJ0=", + "lastModified": 1746025665, + "narHash": "sha256-futjJb6GKJ3eRQLdRV2SWcLvSrMlGnxrqXbfjd+PEQQ=", "owner": "plutonomicon", "repo": "cardano-transaction-lib", - "rev": "a9b3a707a831977574dbfcc6b054be6971c5e864", + "rev": "0d58ea37f947a3a678176573a51d4198fe17c17e", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1745779843, - "narHash": "sha256-C32Xj1C1HfdyNHbm0pAzLWHn5l11VipEwJYHRtaxrnI=", + "lastModified": 1746423555, + "narHash": "sha256-Umse5wkLm+imXhE3UYvoUitH92qZyPCHFOnjNMOc+/U=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "d3af736d25bd7082c7acd7ed342cfdc97cc54f32", + "rev": "8cc0fe2ed30bc272fd8145e53a118bdf0ed4e65a", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1745713632, - "narHash": "sha256-EvWC/XZEL4PIXt2o/AaCGGmHORJK+0YvTXlmr4jF1tc=", + "lastModified": 1746318476, + "narHash": "sha256-G7xHHjuFcS/PNVLrZf32o7pZiQbZxIruWeutBeUw8og=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "f77fbbab1086adfe7b9854f0f73e11e5602cdd62", + "rev": "7cfa07e721ef84eceba9a8996a825d718fc8cd8b", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1745713642, - "narHash": "sha256-ppFOtKiL6uUBjniZL6/zezpkjqNnYUE+tKXaa45pSBk=", + "lastModified": 1746318486, + "narHash": "sha256-bLu2KAxMu+mYitKln6TFaoR7dSO6BDzRAvw7ZRe58do=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "24ac83a7a12a2ac5a4dad054bbe888ef7faba627", + "rev": "71073b6191b8d613f0bc51231a37fdd3d6f800e4", "type": "github" }, "original": { @@ -2512,11 +2512,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1745715137, - "narHash": "sha256-hDADKk6mw85pCeRTheGSCnchmYAshvRm2w2e8lBu9LE=", + "lastModified": 1746319937, + "narHash": "sha256-vTpSMlZp+LzRVHJV1JmaINVEJRhAITBOmA9hEF/4Jdg=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "dd0712e2816b06ad43d3da2cfac8e691dc6da4ef", + "rev": "c462c3b882db951faf439ab5320a3ccc9c093b95", "type": "github" }, "original": { @@ -5606,11 +5606,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1745758039, - "narHash": "sha256-kr31NCNAYfKk8JTT2naW0O3xoOZNQ/efdMy/sJbTb5g=", + "lastModified": 1746362710, + "narHash": "sha256-FLV/FmJkVVJVQ9pbJR/6gnlesvFIjKUneoPA5itz6P8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "21f457040c968d4b895a4ccf5816d97405b95d7a", + "rev": "09cd0b164be4549fe7b9ec075ae03b5b3a0fd97d", "type": "github" }, "original": { @@ -6087,11 +6087,11 @@ "plutarch": { "flake": false, "locked": { - "lastModified": 1743483979, - "narHash": "sha256-gKBk9D6DHSEudq7P9+07yXWcgM/QX7NFp0tJXBodopM=", + "lastModified": 1745962688, + "narHash": "sha256-QDjE8zNOSSqRLUhT0lldH21xB9PHr2gsyfHsSjSyxTs=", "owner": "plutonomicon", "repo": "plutarch-plutus", - "rev": "f84a46287b06f36abf8d2d63bec7ff75d32f3e91", + "rev": "d742915b4d6a10480fa34c78ec0453c551ecdfec", "type": "github" }, "original": { @@ -6175,11 +6175,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1745721366, - "narHash": "sha256-dm93104HXjKWzkrr7yAPtxpbllOSzrwFFruc+rKQHSg=", + "lastModified": 1746326315, + "narHash": "sha256-IDqSls/r6yBfdOBRSMQ/noTUoigmsKnTQ7TqpsBtN4Y=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "621131c9e281d1047bf8937547ed77e97c464aba", + "rev": "dd280c436961ec5adccf0135efe5b66a23d84497", "type": "github" }, "original": { @@ -6425,11 +6425,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1745539978, - "narHash": "sha256-0J+/+5ApD/rgxRKk7A+F0DKWo5j59ARGxEfKo3bNsR0=", + "lastModified": 1746317641, + "narHash": "sha256-AY9W9LcVzNTrnS7oYCmYmgXHHZceVPbkBZOJV7gOzmg=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "66b79101570fc437b81d3ae4b7b7948271943cfd", + "rev": "1b1b4c312d6b36b48f76dbb270c7b30c9075c9ae", "type": "github" }, "original": { From 8f726208c867e67b7acbffdab8b5037884376da9 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 18 May 2025 12:47:30 +0000 Subject: [PATCH 74/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/8cc0fe2ed30bc272fd8145e53a118bdf0ed4e65a?narHash=sha256-Umse5wkLm%2BimXhE3UYvoUitH92qZyPCHFOnjNMOc%2B/U%3D' (2025-05-05) → 'github:mlabs-haskell/flake-lang.nix/bc46578e1c0dd601b7ea545ef76152c1bdaaca56?narHash=sha256-c/pz9HsgohaQ3/L15GmQqbpb2bFpgcDoprV%2BCIz09as%3D' (2025-05-12) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/c462c3b882db951faf439ab5320a3ccc9c093b95?narHash=sha256-vTpSMlZp%2BLzRVHJV1JmaINVEJRhAITBOmA9hEF/4Jdg%3D' (2025-05-04) → 'github:input-output-hk/haskell.nix/56c50dcb676eead1bdcf401c8def97d98305d53b?narHash=sha256-OtXHD4/HoPjA8iM7Fm9ftVtMrZwYlmTnM7LjbmsUfG4%3D' (2025-05-11) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/71073b6191b8d613f0bc51231a37fdd3d6f800e4?narHash=sha256-bLu2KAxMu%2BmYitKln6TFaoR7dSO6BDzRAvw7ZRe58do%3D' (2025-05-04) → 'github:input-output-hk/hackage.nix/4ffca3b018266519d013fd0952410138c601deb3?narHash=sha256-n8oo/U0WCgi2S9%2BpelrMCfqLA4OlOEjnIzvw2JblIcE%3D' (2025-05-11) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/7cfa07e721ef84eceba9a8996a825d718fc8cd8b?narHash=sha256-G7xHHjuFcS/PNVLrZf32o7pZiQbZxIruWeutBeUw8og%3D' (2025-05-04) → 'github:input-output-hk/hackage.nix/8ed63edd588d34d29e83ab8acbadd8d59292b50f?narHash=sha256-ZT5BpAWdBRA7p7H1Khd9cl9fUPurlo6pyPl/2dylAAc%3D' (2025-05-11) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/1b1b4c312d6b36b48f76dbb270c7b30c9075c9ae?narHash=sha256-AY9W9LcVzNTrnS7oYCmYmgXHHZceVPbkBZOJV7gOzmg%3D' (2025-05-04) → 'github:input-output-hk/stackage.nix/948abf1ce53bb8ac34dfb282d99462858704c166?narHash=sha256-b/PQN44%2B9SEXXV4HkEFRnQdlh8hC0sZKW6wF7Am0GvA%3D' (2025-05-11) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/09cd0b164be4549fe7b9ec075ae03b5b3a0fd97d?narHash=sha256-FLV/FmJkVVJVQ9pbJR/6gnlesvFIjKUneoPA5itz6P8%3D' (2025-05-04) → 'github:NixOS/nixpkgs/8284dea02315700fe7a0cce8a6977735554547df?narHash=sha256-DCLaidQzwUCNaUks2eLf21SxSaT0I9rSfUljSKVDBWE%3D' (2025-05-11) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/dcf5072734cb576d2b0c59b2ac44f5050b5eac82?narHash=sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco%3D' (2025-03-22) → 'github:cachix/pre-commit-hooks.nix/fa466640195d38ec97cf0493d6d6882bc4d14969?narHash=sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS%2BnoCWo%3D' (2025-05-06) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/dd280c436961ec5adccf0135efe5b66a23d84497?narHash=sha256-IDqSls/r6yBfdOBRSMQ/noTUoigmsKnTQ7TqpsBtN4Y%3D' (2025-05-04) → 'github:oxalica/rust-overlay/c46d2764319f962b20ce9c03ce6644dd0de87bc9?narHash=sha256-cXn1RsYZjS23n0%2BYP3TiH7XBlEvy8FA2mG54MdAL6x0%3D' (2025-05-11) • Updated input 'hci-effects': 'github:hercules-ci/hercules-ci-effects/5b6cec51c9ec095a0d3fd4c8eeb53eb5c59ae33e?narHash=sha256-1Z4WPGVky4w3lrhrgs89OKsLzPdtkbi1bPLNFWsoLfY%3D' (2025-04-15) → 'github:hercules-ci/hercules-ci-effects/7168f6002a6b48a9b6151e1e97e974a0722ecfdc?narHash=sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4%3D' (2025-05-15) • Updated input 'hci-effects/nixpkgs': 'github:NixOS/nixpkgs/2631b0b7abcea6e640ce31cd78ea58910d31e650?narHash=sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR%2BXhw3kr/3Xd0GPTM%3D' (2025-04-12) → 'github:NixOS/nixpkgs/adaa24fbf46737f3f1b5497bf64bae750f82942e?narHash=sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY%3D' (2025-05-13) --- flake.lock | 60 +++++++++++++++++++++++++++--------------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/flake.lock b/flake.lock index 3f8666f6..92ee6854 100644 --- a/flake.lock +++ b/flake.lock @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1746423555, - "narHash": "sha256-Umse5wkLm+imXhE3UYvoUitH92qZyPCHFOnjNMOc+/U=", + "lastModified": 1747032528, + "narHash": "sha256-c/pz9HsgohaQ3/L15GmQqbpb2bFpgcDoprV+CIz09as=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "8cc0fe2ed30bc272fd8145e53a118bdf0ed4e65a", + "rev": "bc46578e1c0dd601b7ea545ef76152c1bdaaca56", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1746318476, - "narHash": "sha256-G7xHHjuFcS/PNVLrZf32o7pZiQbZxIruWeutBeUw8og=", + "lastModified": 1746923237, + "narHash": "sha256-ZT5BpAWdBRA7p7H1Khd9cl9fUPurlo6pyPl/2dylAAc=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "7cfa07e721ef84eceba9a8996a825d718fc8cd8b", + "rev": "8ed63edd588d34d29e83ab8acbadd8d59292b50f", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1746318486, - "narHash": "sha256-bLu2KAxMu+mYitKln6TFaoR7dSO6BDzRAvw7ZRe58do=", + "lastModified": 1746923247, + "narHash": "sha256-n8oo/U0WCgi2S9+pelrMCfqLA4OlOEjnIzvw2JblIcE=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "71073b6191b8d613f0bc51231a37fdd3d6f800e4", + "rev": "4ffca3b018266519d013fd0952410138c601deb3", "type": "github" }, "original": { @@ -2512,11 +2512,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1746319937, - "narHash": "sha256-vTpSMlZp+LzRVHJV1JmaINVEJRhAITBOmA9hEF/4Jdg=", + "lastModified": 1746924735, + "narHash": "sha256-OtXHD4/HoPjA8iM7Fm9ftVtMrZwYlmTnM7LjbmsUfG4=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "c462c3b882db951faf439ab5320a3ccc9c093b95", + "rev": "56c50dcb676eead1bdcf401c8def97d98305d53b", "type": "github" }, "original": { @@ -2832,11 +2832,11 @@ "nixpkgs": "nixpkgs_27" }, "locked": { - "lastModified": 1744693102, - "narHash": "sha256-1Z4WPGVky4w3lrhrgs89OKsLzPdtkbi1bPLNFWsoLfY=", + "lastModified": 1747284884, + "narHash": "sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "5b6cec51c9ec095a0d3fd4c8eeb53eb5c59ae33e", + "rev": "7168f6002a6b48a9b6151e1e97e974a0722ecfdc", "type": "github" }, "original": { @@ -5606,11 +5606,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1746362710, - "narHash": "sha256-FLV/FmJkVVJVQ9pbJR/6gnlesvFIjKUneoPA5itz6P8=", + "lastModified": 1746967755, + "narHash": "sha256-DCLaidQzwUCNaUks2eLf21SxSaT0I9rSfUljSKVDBWE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "09cd0b164be4549fe7b9ec075ae03b5b3a0fd97d", + "rev": "8284dea02315700fe7a0cce8a6977735554547df", "type": "github" }, "original": { @@ -5653,11 +5653,11 @@ }, "nixpkgs_27": { "locked": { - "lastModified": 1744463964, - "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=", + "lastModified": 1747179050, + "narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650", + "rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e", "type": "github" }, "original": { @@ -6108,11 +6108,11 @@ "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1742649964, - "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", + "lastModified": 1746537231, + "narHash": "sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS+noCWo=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", + "rev": "fa466640195d38ec97cf0493d6d6882bc4d14969", "type": "github" }, "original": { @@ -6175,11 +6175,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1746326315, - "narHash": "sha256-IDqSls/r6yBfdOBRSMQ/noTUoigmsKnTQ7TqpsBtN4Y=", + "lastModified": 1746931022, + "narHash": "sha256-cXn1RsYZjS23n0+YP3TiH7XBlEvy8FA2mG54MdAL6x0=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "dd280c436961ec5adccf0135efe5b66a23d84497", + "rev": "c46d2764319f962b20ce9c03ce6644dd0de87bc9", "type": "github" }, "original": { @@ -6425,11 +6425,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1746317641, - "narHash": "sha256-AY9W9LcVzNTrnS7oYCmYmgXHHZceVPbkBZOJV7gOzmg=", + "lastModified": 1746922437, + "narHash": "sha256-b/PQN44+9SEXXV4HkEFRnQdlh8hC0sZKW6wF7Am0GvA=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "1b1b4c312d6b36b48f76dbb270c7b30c9075c9ae", + "rev": "948abf1ce53bb8ac34dfb282d99462858704c166", "type": "github" }, "original": { From 21ac028154a0427ed9f9abf331e07554c6e239f6 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 22 May 2025 12:54:55 +0200 Subject: [PATCH 75/94] Upgrade cardano-serialization-lib --- plutus-ledger-api/CHANGELOG.md | 6 + plutus-ledger-api/Cargo.lock | 313 +++++++++++++++++++++------------ plutus-ledger-api/Cargo.toml | 12 +- 3 files changed, 212 insertions(+), 119 deletions(-) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index 40383aa0..bbfe9937 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -5,6 +5,12 @@ This changelog is based on [Keep A Changelog](https://keepachangelog.com/en/1.1.0). +## v3.0.2 + +### Changed + +- Cardano serialisation lib upgraded to 14.1.2 + ## v3.0.1 ### Changed diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index 10d8d50d..a48ba7ac 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -1,12 +1,12 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "ahash" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", "once_cell", @@ -31,9 +31,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.94" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1fd03a028ef38ba2276dce7e33fcd6369c158a1bca17946c4b1b701891c1ff7" +checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" [[package]] name = "autocfg" @@ -70,9 +70,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.6.0" +version = "2.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" [[package]] name = "block-buffer" @@ -85,21 +85,15 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.16.0" +version = "3.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" +checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] name = "cardano-serialization-lib" -version = "13.2.0" +version = "14.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44ab8700b9a4bc42f48a06f9555ea28c7cb958a3cb470de5727b8e0d76c2a702" +checksum = "70a894086cb078655b52a9478ae50e1f7b11f3a16fb02e2f11fe63b63644462c" dependencies = [ "bech32", "cbor_event", @@ -108,7 +102,7 @@ dependencies = [ "cryptoxide", "digest", "ed25519-bip32", - "getrandom", + "getrandom 0.2.16", "hashlink", "hex", "itertools", @@ -137,9 +131,9 @@ checksum = "089a0261d1bc59e54e8e11860031efd88593f0e61b921172c474f1f38c2f2d3c" [[package]] name = "cc" -version = "1.2.4" +version = "1.2.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9157bbaa6b165880c27a4293a474c91cdcf265cc68cc829bf10be0964a391caf" +checksum = "5f4ac86a9e5bc1e2b3449ab9d7d3a6a405e3d1bb28d7b9be8614f55846ae3766" dependencies = [ "shlex", ] @@ -152,16 +146,16 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.39" +version = "0.4.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" +checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" dependencies = [ "android-tzdata", "iana-time-zone", "js-sys", "num-traits", "wasm-bindgen", - "windows-targets", + "windows-link", ] [[package]] @@ -190,9 +184,9 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" dependencies = [ "libc", ] @@ -205,9 +199,9 @@ checksum = "382ce8820a5bb815055d3553a610e8cb542b2d767bbacea99038afda96cd760d" [[package]] name = "data-encoding" -version = "2.6.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" [[package]] name = "diff" @@ -226,15 +220,15 @@ dependencies = [ [[package]] name = "dissimilar" -version = "1.0.9" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59f8e79d1fbf76bdfbde321e902714bf6c49df88a7dda6fc682fc2979226962d" +checksum = "8975ffdaa0ef3661bfe02dbdcc06c9f829dfafe6a3c474de366a8d5e44276921" [[package]] name = "dyn-clone" -version = "1.0.17" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" [[package]] name = "ed25519-bip32" @@ -247,21 +241,21 @@ dependencies = [ [[package]] name = "either" -version = "1.13.0" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.10" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" +checksum = "cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18" dependencies = [ "libc", "windows-sys", @@ -297,22 +291,34 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" dependencies = [ "cfg-if", "js-sys", "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "wasm-bindgen", ] +[[package]] +name = "getrandom" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" +dependencies = [ + "cfg-if", + "libc", + "r-efi", + "wasi 0.14.2+wasi-0.2.4", +] + [[package]] name = "glob" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" [[package]] name = "goldie" @@ -340,9 +346,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.2" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" [[package]] name = "hashlink" @@ -361,14 +367,15 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] name = "iana-time-zone" -version = "0.1.61" +version = "0.1.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" +checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", + "log", "wasm-bindgen", "windows-core", ] @@ -390,12 +397,12 @@ checksum = "90f97a5f38dd3ccfbe7aa80f4a0c00930f21b922c74195be0201c51028f22dcf" [[package]] name = "indexmap" -version = "2.7.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" +checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" dependencies = [ "equivalent", - "hashbrown 0.15.2", + "hashbrown 0.15.3", ] [[package]] @@ -419,9 +426,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "js-sys" @@ -467,9 +474,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.168" +version = "0.2.172" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d" +checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" [[package]] name = "linked-hash-map" @@ -479,15 +486,15 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linux-raw-sys" -version = "0.4.14" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" +checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" [[package]] name = "log" -version = "0.4.22" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" +checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" [[package]] name = "memchr" @@ -604,9 +611,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "opaque-debug" @@ -638,9 +645,9 @@ dependencies = [ [[package]] name = "ppv-lite86" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" dependencies = [ "zerocopy", ] @@ -657,9 +664,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.92" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" +checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" dependencies = [ "unicode-ident", ] @@ -672,7 +679,7 @@ checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.6.0", + "bitflags 2.9.1", "lazy_static", "num-traits", "rand", @@ -692,13 +699,19 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.37" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" dependencies = [ "proc-macro2", ] +[[package]] +name = "r-efi" +version = "5.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" + [[package]] name = "rand" version = "0.8.5" @@ -741,7 +754,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom", + "getrandom 0.2.16", ] [[package]] @@ -785,11 +798,11 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rustix" -version = "0.38.42" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85" +checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.9.1", "errno", "libc", "linux-raw-sys", @@ -810,15 +823,15 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.18" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] name = "schemars" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" +checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" dependencies = [ "dyn-clone", "schemars_derive", @@ -828,9 +841,9 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" +checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" dependencies = [ "proc-macro2", "quote", @@ -840,9 +853,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.216" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b9781016e935a97e8beecf0c933758c97a5520d32930e460142b4cd80c6338e" +checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" dependencies = [ "serde_derive", ] @@ -860,9 +873,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.216" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46f859dbbf73865c6627ed570e78961cd3ac92407a2d117204c49232485da55e" +checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", @@ -882,9 +895,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.133" +version = "1.0.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377" +checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" dependencies = [ "itoa", "memchr", @@ -922,9 +935,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "syn" -version = "2.0.90" +version = "2.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" +checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" dependencies = [ "proc-macro2", "quote", @@ -933,18 +946,18 @@ dependencies = [ [[package]] name = "target-triple" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42a4d50cdb458045afc8131fd91b64904da29548bcb63c7236e0844936c13078" +checksum = "1ac9aa371f599d22256307c24a9d748c041e548cbf599f35d890f9d365361790" [[package]] name = "tempfile" -version = "3.14.0" +version = "3.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c" +checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" dependencies = [ - "cfg-if", "fastrand", + "getrandom 0.3.3", "once_cell", "rustix", "windows-sys", @@ -981,9 +994,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.19" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" +checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" dependencies = [ "serde", "serde_spanned", @@ -993,31 +1006,38 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.8" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" +checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" dependencies = [ "serde", ] [[package]] name = "toml_edit" -version = "0.22.22" +version = "0.22.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" dependencies = [ "indexmap", "serde", "serde_spanned", "toml_datetime", + "toml_write", "winnow", ] +[[package]] +name = "toml_write" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" + [[package]] name = "trybuild" -version = "1.0.101" +version = "1.0.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dcd332a5496c026f1e14b7f3d2b7bd98e509660c04239c58b0ba38a12daded4" +checksum = "1c9bf9513a2f4aeef5fdac8677d7d349c79fdbcc03b9c86da6e9d254f1e43be2" dependencies = [ "dissimilar", "glob", @@ -1031,9 +1051,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "unarray" @@ -1043,9 +1063,9 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.14" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" [[package]] name = "unicode-width" @@ -1072,9 +1092,9 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "wait-timeout" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" dependencies = [ "libc", ] @@ -1085,6 +1105,15 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "wasi" +version = "0.14.2+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" +dependencies = [ + "wit-bindgen-rt", +] + [[package]] name = "wasm-bindgen" version = "0.2.92" @@ -1172,11 +1201,61 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows-core" -version = "0.52.0" +version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" dependencies = [ - "windows-targets", + "windows-implement", + "windows-interface", + "windows-link", + "windows-result", + "windows-strings", +] + +[[package]] +name = "windows-implement" +version = "0.60.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "windows-interface" +version = "0.59.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "windows-link" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" + +[[package]] +name = "windows-result" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-strings" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" +dependencies = [ + "windows-link", ] [[package]] @@ -1254,13 +1333,22 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.6.20" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" +checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" dependencies = [ "memchr", ] +[[package]] +name = "wit-bindgen-rt" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" +dependencies = [ + "bitflags 2.9.1", +] + [[package]] name = "yansi" version = "1.0.1" @@ -1269,19 +1357,18 @@ checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" [[package]] name = "zerocopy" -version = "0.7.35" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" dependencies = [ - "byteorder", "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.35" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" dependencies = [ "proc-macro2", "quote", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 18d19304..162a9eb9 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -11,18 +11,18 @@ repository = "https://github.com/mlabs-haskell/plutus-ledger-api-rust" [dependencies] proptest = "^1.6.0" lbr-prelude = { version = "0.1.3", optional = true } -serde_json = { version = "1.0.133", optional = true } +serde_json = { version = "1.0.140", optional = true } num-bigint = "~0.4" -serde = { version = "^1.0.216", features = ["derive"], optional = true } -data-encoding = "^2.6.0" +serde = { version = "^1.0.219", features = ["derive"], optional = true } +data-encoding = "^2.9.0" thiserror = "^1.0.69" linked-hash-map = "~0.5.6" num-traits = "~0.2.19" impl_ops = "0.1.1" -chrono = { version = "0.4.39", optional = true } -cardano-serialization-lib = "13.2.0" +chrono = { version = "0.4.41", optional = true } +cardano-serialization-lib = "14.1.2" is-plutus-data-derive = { version = "1.0.0", path = ".extras/is-plutus-data-derive-0" } -anyhow = "1.0.94" +anyhow = "1.0.98" nom = "7.1.3" [features] From 282d68c5734eaa018ee30de7e77908721d69e9c8 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 22 May 2025 13:00:03 +0200 Subject: [PATCH 76/94] Fix Changelog --- plutus-ledger-api/CHANGELOG.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/plutus-ledger-api/CHANGELOG.md b/plutus-ledger-api/CHANGELOG.md index bbfe9937..7782f993 100644 --- a/plutus-ledger-api/CHANGELOG.md +++ b/plutus-ledger-api/CHANGELOG.md @@ -5,12 +5,19 @@ This changelog is based on [Keep A Changelog](https://keepachangelog.com/en/1.1.0). -## v3.0.2 +## v3.0.3 ### Changed - Cardano serialisation lib upgraded to 14.1.2 +## v3.0.2 + +### Changed + +- Add missing derive macros +- Added a few goldens data for V3 types + ## v3.0.1 ### Changed From 6fe9cc06406ad335a96a4180d75815d3a528d355 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Thu, 22 May 2025 13:00:28 +0200 Subject: [PATCH 77/94] Bump version --- plutus-ledger-api/Cargo.lock | 2 +- plutus-ledger-api/Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index a48ba7ac..fe8ae379 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -623,7 +623,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "3.0.2" +version = "3.0.3" dependencies = [ "anyhow", "cardano-serialization-lib", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 162a9eb9..5aa4c348 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "3.0.2" +version = "3.0.3" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" From b20a67040255b5721a73d60f22e552df9029942e Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 25 May 2025 12:50:47 +0000 Subject: [PATCH 78/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/bc46578e1c0dd601b7ea545ef76152c1bdaaca56?narHash=sha256-c/pz9HsgohaQ3/L15GmQqbpb2bFpgcDoprV%2BCIz09as%3D' (2025-05-12) → 'github:mlabs-haskell/flake-lang.nix/bca180448ced6b84f3dff5b6d93d24e58612af53?narHash=sha256-JpKJli8F3Uae7lNIoeGFbN5AIYMAqm%2BDc50Q4XRspBs%3D' (2025-05-22) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/b8e34520941dd8631c22c7bf2f1cd68533104fe0?narHash=sha256-SKYYwYUYPEuHhVFu%2B82ExAYkaJ1oZ9MIgRZ2U%2BMVpe4%3D' (2025-04-29) → 'github:input-output-hk/cardano-haskell-packages/550ea1a4574a8dcde7f8e100841afc163df1c38d?narHash=sha256-hb8r%2BrFgzlaYAl9HAv9/cT0I4OLVnQA/uk0UYpGcsy4%3D' (2025-05-16) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/dfd9a8dfd09db9aad544c4d3b6c47b12562544a5?narHash=sha256-DdWJLA%2BD5tcmrRSg5Y7tp/qWaD05ATI4Z7h22gd1h7Q%3D' (2025-05-03) → 'github:ipetkov/crane/7f85510df37247c86a0c44032f49aa18292ee11f?narHash=sha256-KUb6MFWc2DYeTCmcEkrBrrqhxAgO6NHZh5qQKwsjG6I%3D' (2025-05-14) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/56c50dcb676eead1bdcf401c8def97d98305d53b?narHash=sha256-OtXHD4/HoPjA8iM7Fm9ftVtMrZwYlmTnM7LjbmsUfG4%3D' (2025-05-11) → 'github:input-output-hk/haskell.nix/567ccb03d37613f700f8b0b8ac5b9d70791d232a?narHash=sha256-nzKCHAtMP3G7nr0%2BbKnLyFneCxzYIEu6JjssYwbU72E%3D' (2025-05-18) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/4ffca3b018266519d013fd0952410138c601deb3?narHash=sha256-n8oo/U0WCgi2S9%2BpelrMCfqLA4OlOEjnIzvw2JblIcE%3D' (2025-05-11) → 'github:input-output-hk/hackage.nix/a081155372dd5e80ebebae4cbd9a5f337d0b858b?narHash=sha256-v0Iy/YNpSU3MhkOdgqHRog9LnLYQTzIsUtsXEZ6WDa8%3D' (2025-05-18) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/8ed63edd588d34d29e83ab8acbadd8d59292b50f?narHash=sha256-ZT5BpAWdBRA7p7H1Khd9cl9fUPurlo6pyPl/2dylAAc%3D' (2025-05-11) → 'github:input-output-hk/hackage.nix/702cc68047c37b76e672b7a45c54b7a126c17eed?narHash=sha256-IhjmIYCvzkF9bfcxbCW9Cm0F/LyXJhpOFuqkxM%2B87SY%3D' (2025-05-18) • Updated input 'flake-lang/haskell-nix/iserv-proxy': 'github:stable-haskell/iserv-proxy/e9dc86ed6ad71f0368c16672081c8f26406c3a7e?narHash=sha256-x4bg4OoKAPnayom0nWc0BmlxgRMMHk6lEPvbiyFBq1s%3D' (2025-03-16) → 'github:stable-haskell/iserv-proxy/dea34de4bde325aca22472c18d659bee7800b477?narHash=sha256-PCDULyZSIPdDdF8Lanbcy%2BDl6AJ5z6H2ng3sRsv%2Bgwc%3D' (2025-05-12) • Updated input 'flake-lang/haskell-nix/nixpkgs-2411': 'github:NixOS/nixpkgs/94792ab2a6beaec81424445bf917ca2556fbeade?narHash=sha256-uNszcul7y%2B%2BoBiyYXjHEDw/AHeLNp8B6pyWOB%2BRLA/4%3D' (2025-02-10) → 'github:NixOS/nixpkgs/209c5b3b0f5cf5b5a7e12ddea59bf19699f97e75?narHash=sha256-I40weT0FZWth1IEjgR5a0zC9LLyrPwTC0DAQcejtTJE%3D' (2025-05-06) • Updated input 'flake-lang/haskell-nix/nixpkgs-unstable': 'github:NixOS/nixpkgs/041c867bad68dfe34b78b2813028a2e2ea70a23c?narHash=sha256-DSenga8XjPaUV5KUFW/i3rNkN7jm9XmguW%2BqQ1ZJTR4%3D' (2025-01-17) → 'github:NixOS/nixpkgs/b3582c75c7f21ce0b429898980eddbbf05c68e55?narHash=sha256-FshoQvr6Aor5SnORVvh/ZdJ1Sa2U4ZrIMwKBX5k2wu0%3D' (2025-05-07) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/948abf1ce53bb8ac34dfb282d99462858704c166?narHash=sha256-b/PQN44%2B9SEXXV4HkEFRnQdlh8hC0sZKW6wF7Am0GvA%3D' (2025-05-11) → 'github:input-output-hk/stackage.nix/12361bff686103579e9f203315da684251e20ba9?narHash=sha256-cgtQekYhiKKKw5VktWbbAl/mdTBcJ2/ZoeXbOKERzgE%3D' (2025-05-18) • Updated input 'flake-lang/hci-effects': 'github:hercules-ci/hercules-ci-effects/5b6cec51c9ec095a0d3fd4c8eeb53eb5c59ae33e?narHash=sha256-1Z4WPGVky4w3lrhrgs89OKsLzPdtkbi1bPLNFWsoLfY%3D' (2025-04-15) → 'github:hercules-ci/hercules-ci-effects/7168f6002a6b48a9b6151e1e97e974a0722ecfdc?narHash=sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4%3D' (2025-05-15) • Updated input 'flake-lang/hci-effects/nixpkgs': 'github:NixOS/nixpkgs/2631b0b7abcea6e640ce31cd78ea58910d31e650?narHash=sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR%2BXhw3kr/3Xd0GPTM%3D' (2025-04-12) → 'github:NixOS/nixpkgs/adaa24fbf46737f3f1b5497bf64bae750f82942e?narHash=sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY%3D' (2025-05-13) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/8284dea02315700fe7a0cce8a6977735554547df?narHash=sha256-DCLaidQzwUCNaUks2eLf21SxSaT0I9rSfUljSKVDBWE%3D' (2025-05-11) → 'github:NixOS/nixpkgs/8985b6e37bca2b1edde8a14f6945dc39d3a90d2c?narHash=sha256-JdtvscltgBUeTXtDHRqHnDG37dr5cywkBXMp4zvgMSg%3D' (2025-05-18) • Updated input 'flake-lang/plutarch': 'github:plutonomicon/plutarch-plutus/d742915b4d6a10480fa34c78ec0453c551ecdfec?narHash=sha256-QDjE8zNOSSqRLUhT0lldH21xB9PHr2gsyfHsSjSyxTs%3D' (2025-04-29) → 'github:plutonomicon/plutarch-plutus/7237f3982e47f447d27ba0a07f91503566e01d80?narHash=sha256-Wm/cPFbRAI4NJqD/z0B4IsiViMUhrMG2REuARRitwAs%3D' (2025-05-14) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/fa466640195d38ec97cf0493d6d6882bc4d14969?narHash=sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS%2BnoCWo%3D' (2025-05-06) → 'github:cachix/pre-commit-hooks.nix/80479b6ec16fefd9c1db3ea13aeb038c60530f46?narHash=sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo%2BbnXU9D9k%3D' (2025-05-16) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/c46d2764319f962b20ce9c03ce6644dd0de87bc9?narHash=sha256-cXn1RsYZjS23n0%2BYP3TiH7XBlEvy8FA2mG54MdAL6x0%3D' (2025-05-11) → 'github:oxalica/rust-overlay/b7a99615d26b82c39b73ccc9026545c3f3403b71?narHash=sha256-rKWBtLcqQeu8PpfKIBn1ORXS2udSH/MwnQFwfSpFOLg%3D' (2025-05-18) • Updated input 'hci-effects': 'github:hercules-ci/hercules-ci-effects/7168f6002a6b48a9b6151e1e97e974a0722ecfdc?narHash=sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4%3D' (2025-05-15) → 'github:hercules-ci/hercules-ci-effects/231726642197817d20310b9d39dd4afb9e899489?narHash=sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk%3D' (2025-05-23) --- flake.lock | 102 ++++++++++++++++++++++++++--------------------------- 1 file changed, 51 insertions(+), 51 deletions(-) diff --git a/flake.lock b/flake.lock index 92ee6854..590f2617 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1745960978, - "narHash": "sha256-SKYYwYUYPEuHhVFu+82ExAYkaJ1oZ9MIgRZ2U+MVpe4=", + "lastModified": 1747413677, + "narHash": "sha256-hb8r+rFgzlaYAl9HAv9/cT0I4OLVnQA/uk0UYpGcsy4=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "b8e34520941dd8631c22c7bf2f1cd68533104fe0", + "rev": "550ea1a4574a8dcde7f8e100841afc163df1c38d", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1746291859, - "narHash": "sha256-DdWJLA+D5tcmrRSg5Y7tp/qWaD05ATI4Z7h22gd1h7Q=", + "lastModified": 1747260204, + "narHash": "sha256-KUb6MFWc2DYeTCmcEkrBrrqhxAgO6NHZh5qQKwsjG6I=", "owner": "ipetkov", "repo": "crane", - "rev": "dfd9a8dfd09db9aad544c4d3b6c47b12562544a5", + "rev": "7f85510df37247c86a0c44032f49aa18292ee11f", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1747032528, - "narHash": "sha256-c/pz9HsgohaQ3/L15GmQqbpb2bFpgcDoprV+CIz09as=", + "lastModified": 1747925916, + "narHash": "sha256-JpKJli8F3Uae7lNIoeGFbN5AIYMAqm+Dc50Q4XRspBs=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "bc46578e1c0dd601b7ea545ef76152c1bdaaca56", + "rev": "bca180448ced6b84f3dff5b6d93d24e58612af53", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1746923237, - "narHash": "sha256-ZT5BpAWdBRA7p7H1Khd9cl9fUPurlo6pyPl/2dylAAc=", + "lastModified": 1747528050, + "narHash": "sha256-IhjmIYCvzkF9bfcxbCW9Cm0F/LyXJhpOFuqkxM+87SY=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "8ed63edd588d34d29e83ab8acbadd8d59292b50f", + "rev": "702cc68047c37b76e672b7a45c54b7a126c17eed", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1746923247, - "narHash": "sha256-n8oo/U0WCgi2S9+pelrMCfqLA4OlOEjnIzvw2JblIcE=", + "lastModified": 1747528060, + "narHash": "sha256-v0Iy/YNpSU3MhkOdgqHRog9LnLYQTzIsUtsXEZ6WDa8=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "4ffca3b018266519d013fd0952410138c601deb3", + "rev": "a081155372dd5e80ebebae4cbd9a5f337d0b858b", "type": "github" }, "original": { @@ -2512,11 +2512,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1746924735, - "narHash": "sha256-OtXHD4/HoPjA8iM7Fm9ftVtMrZwYlmTnM7LjbmsUfG4=", + "lastModified": 1747529508, + "narHash": "sha256-nzKCHAtMP3G7nr0+bKnLyFneCxzYIEu6JjssYwbU72E=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "56c50dcb676eead1bdcf401c8def97d98305d53b", + "rev": "567ccb03d37613f700f8b0b8ac5b9d70791d232a", "type": "github" }, "original": { @@ -2813,11 +2813,11 @@ "nixpkgs": "nixpkgs_22" }, "locked": { - "lastModified": 1744693102, - "narHash": "sha256-1Z4WPGVky4w3lrhrgs89OKsLzPdtkbi1bPLNFWsoLfY=", + "lastModified": 1747284884, + "narHash": "sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "5b6cec51c9ec095a0d3fd4c8eeb53eb5c59ae33e", + "rev": "7168f6002a6b48a9b6151e1e97e974a0722ecfdc", "type": "github" }, "original": { @@ -2832,11 +2832,11 @@ "nixpkgs": "nixpkgs_27" }, "locked": { - "lastModified": 1747284884, - "narHash": "sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4=", + "lastModified": 1748000383, + "narHash": "sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "7168f6002a6b48a9b6151e1e97e974a0722ecfdc", + "rev": "231726642197817d20310b9d39dd4afb9e899489", "type": "github" }, "original": { @@ -4045,11 +4045,11 @@ "iserv-proxy_5": { "flake": false, "locked": { - "lastModified": 1742121966, - "narHash": "sha256-x4bg4OoKAPnayom0nWc0BmlxgRMMHk6lEPvbiyFBq1s=", + "lastModified": 1747047742, + "narHash": "sha256-PCDULyZSIPdDdF8Lanbcy+Dl6AJ5z6H2ng3sRsv+gwc=", "owner": "stable-haskell", "repo": "iserv-proxy", - "rev": "e9dc86ed6ad71f0368c16672081c8f26406c3a7e", + "rev": "dea34de4bde325aca22472c18d659bee7800b477", "type": "github" }, "original": { @@ -5168,11 +5168,11 @@ }, "nixpkgs-2411": { "locked": { - "lastModified": 1739151041, - "narHash": "sha256-uNszcul7y++oBiyYXjHEDw/AHeLNp8B6pyWOB+RLA/4=", + "lastModified": 1746566971, + "narHash": "sha256-I40weT0FZWth1IEjgR5a0zC9LLyrPwTC0DAQcejtTJE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "94792ab2a6beaec81424445bf917ca2556fbeade", + "rev": "209c5b3b0f5cf5b5a7e12ddea59bf19699f97e75", "type": "github" }, "original": { @@ -5354,11 +5354,11 @@ }, "nixpkgs-unstable_5": { "locked": { - "lastModified": 1737110817, - "narHash": "sha256-DSenga8XjPaUV5KUFW/i3rNkN7jm9XmguW+qQ1ZJTR4=", + "lastModified": 1746576598, + "narHash": "sha256-FshoQvr6Aor5SnORVvh/ZdJ1Sa2U4ZrIMwKBX5k2wu0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "041c867bad68dfe34b78b2813028a2e2ea70a23c", + "rev": "b3582c75c7f21ce0b429898980eddbbf05c68e55", "type": "github" }, "original": { @@ -5574,11 +5574,11 @@ }, "nixpkgs_22": { "locked": { - "lastModified": 1744463964, - "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=", + "lastModified": 1747179050, + "narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650", + "rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e", "type": "github" }, "original": { @@ -5606,11 +5606,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1746967755, - "narHash": "sha256-DCLaidQzwUCNaUks2eLf21SxSaT0I9rSfUljSKVDBWE=", + "lastModified": 1747572546, + "narHash": "sha256-JdtvscltgBUeTXtDHRqHnDG37dr5cywkBXMp4zvgMSg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "8284dea02315700fe7a0cce8a6977735554547df", + "rev": "8985b6e37bca2b1edde8a14f6945dc39d3a90d2c", "type": "github" }, "original": { @@ -6087,11 +6087,11 @@ "plutarch": { "flake": false, "locked": { - "lastModified": 1745962688, - "narHash": "sha256-QDjE8zNOSSqRLUhT0lldH21xB9PHr2gsyfHsSjSyxTs=", + "lastModified": 1747262345, + "narHash": "sha256-Wm/cPFbRAI4NJqD/z0B4IsiViMUhrMG2REuARRitwAs=", "owner": "plutonomicon", "repo": "plutarch-plutus", - "rev": "d742915b4d6a10480fa34c78ec0453c551ecdfec", + "rev": "7237f3982e47f447d27ba0a07f91503566e01d80", "type": "github" }, "original": { @@ -6108,11 +6108,11 @@ "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1746537231, - "narHash": "sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS+noCWo=", + "lastModified": 1747372754, + "narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "fa466640195d38ec97cf0493d6d6882bc4d14969", + "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", "type": "github" }, "original": { @@ -6175,11 +6175,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1746931022, - "narHash": "sha256-cXn1RsYZjS23n0+YP3TiH7XBlEvy8FA2mG54MdAL6x0=", + "lastModified": 1747535902, + "narHash": "sha256-rKWBtLcqQeu8PpfKIBn1ORXS2udSH/MwnQFwfSpFOLg=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "c46d2764319f962b20ce9c03ce6644dd0de87bc9", + "rev": "b7a99615d26b82c39b73ccc9026545c3f3403b71", "type": "github" }, "original": { @@ -6425,11 +6425,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1746922437, - "narHash": "sha256-b/PQN44+9SEXXV4HkEFRnQdlh8hC0sZKW6wF7Am0GvA=", + "lastModified": 1747527257, + "narHash": "sha256-cgtQekYhiKKKw5VktWbbAl/mdTBcJ2/ZoeXbOKERzgE=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "948abf1ce53bb8ac34dfb282d99462858704c166", + "rev": "12361bff686103579e9f203315da684251e20ba9", "type": "github" }, "original": { From 79e9634d390205fcd1f7c553e2abe06e3798369a Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 1 Jun 2025 12:46:43 +0000 Subject: [PATCH 79/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/bca180448ced6b84f3dff5b6d93d24e58612af53?narHash=sha256-JpKJli8F3Uae7lNIoeGFbN5AIYMAqm%2BDc50Q4XRspBs%3D' (2025-05-22) → 'github:mlabs-haskell/flake-lang.nix/3e748495eb0d73be05f5cbdff044ddd9182db58e?narHash=sha256-VdghJ9Gn5GK6dBAVx3XOmduYeavh1h0awqmaNNH5d1s%3D' (2025-05-25) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/550ea1a4574a8dcde7f8e100841afc163df1c38d?narHash=sha256-hb8r%2BrFgzlaYAl9HAv9/cT0I4OLVnQA/uk0UYpGcsy4%3D' (2025-05-16) → 'github:input-output-hk/cardano-haskell-packages/3a8a6e6a49b4fd3fc5c7778b9160ef4e54400a1e?narHash=sha256-MwSc2%2BUaaOkLosZ6mtgJBoxeasgVp8%2B7HoEcGCyxjJY%3D' (2025-05-23) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/7f85510df37247c86a0c44032f49aa18292ee11f?narHash=sha256-KUb6MFWc2DYeTCmcEkrBrrqhxAgO6NHZh5qQKwsjG6I%3D' (2025-05-14) → 'github:ipetkov/crane/b718a78696060df6280196a6f992d04c87a16aef?narHash=sha256-t0qLLqb4C1rdtiY8IFRH5KIapTY/n3Lqt57AmxEv9mk%3D' (2025-05-24) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/567ccb03d37613f700f8b0b8ac5b9d70791d232a?narHash=sha256-nzKCHAtMP3G7nr0%2BbKnLyFneCxzYIEu6JjssYwbU72E%3D' (2025-05-18) → 'github:input-output-hk/haskell.nix/48c3fb50cace887031f9cc5ee174c089d3a69b22?narHash=sha256-HgXWuQvpt3T1fYP6h1%2B8KIedJGZjCC4WivBtbTrk17I%3D' (2025-05-25) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/a081155372dd5e80ebebae4cbd9a5f337d0b858b?narHash=sha256-v0Iy/YNpSU3MhkOdgqHRog9LnLYQTzIsUtsXEZ6WDa8%3D' (2025-05-18) → 'github:input-output-hk/hackage.nix/9feb3233b70e52114b09e14746fb0298d5b5e86a?narHash=sha256-t%2B89HtGWrg%2BQ0hdYzXQuJ21xTJlrQOn88jSCUTFaLs0%3D' (2025-05-25) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/702cc68047c37b76e672b7a45c54b7a126c17eed?narHash=sha256-IhjmIYCvzkF9bfcxbCW9Cm0F/LyXJhpOFuqkxM%2B87SY%3D' (2025-05-18) → 'github:input-output-hk/hackage.nix/2bf6564bc03671d71bacaf3e56c233204aeefece?narHash=sha256-Nx3ooh1yX0pQX30N/8a/hWL10j0IlXoPizUXjOKVadY%3D' (2025-05-25) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/12361bff686103579e9f203315da684251e20ba9?narHash=sha256-cgtQekYhiKKKw5VktWbbAl/mdTBcJ2/ZoeXbOKERzgE%3D' (2025-05-18) → 'github:input-output-hk/stackage.nix/7a840945f29384387142bbea3e6ca7ae10b8377c?narHash=sha256-9SfVGpaNqTnNZfKRND/7o2oiS/xhiOzhQUjxSqV7Jv4%3D' (2025-05-25) • Updated input 'flake-lang/hci-effects': 'github:hercules-ci/hercules-ci-effects/7168f6002a6b48a9b6151e1e97e974a0722ecfdc?narHash=sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4%3D' (2025-05-15) → 'github:hercules-ci/hercules-ci-effects/231726642197817d20310b9d39dd4afb9e899489?narHash=sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk%3D' (2025-05-23) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/5c16fdfc45deda7a4ccf964b6dfa1c3cab72f1f7?narHash=sha256-dMoJ6yHcRvUcB66nofzfAtmVxnDg8oPW3wiVtimXT/o%3D' (2025-04-25) → 'github:input-output-hk/iohk-nix/46a0a7b586b3a358b5e96ea3050f8aeca1a34c2d?narHash=sha256-nb%2BfPI8ZcIGIVVFuPmjzseDu%2B81dDlxI7iux1NpJA5Y%3D' (2025-05-21) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/8985b6e37bca2b1edde8a14f6945dc39d3a90d2c?narHash=sha256-JdtvscltgBUeTXtDHRqHnDG37dr5cywkBXMp4zvgMSg%3D' (2025-05-18) → 'github:NixOS/nixpkgs/2c0ff14313957630567265eb86c63af18416b275?narHash=sha256-qqLfoLk5WnYFY1UMmM/yIwcH2S4fnc2P8CbKVhFKcL0%3D' (2025-05-25) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/b7a99615d26b82c39b73ccc9026545c3f3403b71?narHash=sha256-rKWBtLcqQeu8PpfKIBn1ORXS2udSH/MwnQFwfSpFOLg%3D' (2025-05-18) → 'github:oxalica/rust-overlay/476b2ba7dc99ddbf70b1f45357dbbdbdbdfb4422?narHash=sha256-GZcjWLQtDifSYMd1ueLDmuVTcQQdD5mONIBTqABooOk%3D' (2025-05-25) --- flake.lock | 66 +++++++++++++++++++++++++++--------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/flake.lock b/flake.lock index 590f2617..91d2f36d 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1747413677, - "narHash": "sha256-hb8r+rFgzlaYAl9HAv9/cT0I4OLVnQA/uk0UYpGcsy4=", + "lastModified": 1748021818, + "narHash": "sha256-MwSc2+UaaOkLosZ6mtgJBoxeasgVp8+7HoEcGCyxjJY=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "550ea1a4574a8dcde7f8e100841afc163df1c38d", + "rev": "3a8a6e6a49b4fd3fc5c7778b9160ef4e54400a1e", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1747260204, - "narHash": "sha256-KUb6MFWc2DYeTCmcEkrBrrqhxAgO6NHZh5qQKwsjG6I=", + "lastModified": 1748047550, + "narHash": "sha256-t0qLLqb4C1rdtiY8IFRH5KIapTY/n3Lqt57AmxEv9mk=", "owner": "ipetkov", "repo": "crane", - "rev": "7f85510df37247c86a0c44032f49aa18292ee11f", + "rev": "b718a78696060df6280196a6f992d04c87a16aef", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1747925916, - "narHash": "sha256-JpKJli8F3Uae7lNIoeGFbN5AIYMAqm+Dc50Q4XRspBs=", + "lastModified": 1748195019, + "narHash": "sha256-VdghJ9Gn5GK6dBAVx3XOmduYeavh1h0awqmaNNH5d1s=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "bca180448ced6b84f3dff5b6d93d24e58612af53", + "rev": "3e748495eb0d73be05f5cbdff044ddd9182db58e", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1747528050, - "narHash": "sha256-IhjmIYCvzkF9bfcxbCW9Cm0F/LyXJhpOFuqkxM+87SY=", + "lastModified": 1748132919, + "narHash": "sha256-Nx3ooh1yX0pQX30N/8a/hWL10j0IlXoPizUXjOKVadY=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "702cc68047c37b76e672b7a45c54b7a126c17eed", + "rev": "2bf6564bc03671d71bacaf3e56c233204aeefece", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1747528060, - "narHash": "sha256-v0Iy/YNpSU3MhkOdgqHRog9LnLYQTzIsUtsXEZ6WDa8=", + "lastModified": 1748132929, + "narHash": "sha256-t+89HtGWrg+Q0hdYzXQuJ21xTJlrQOn88jSCUTFaLs0=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "a081155372dd5e80ebebae4cbd9a5f337d0b858b", + "rev": "9feb3233b70e52114b09e14746fb0298d5b5e86a", "type": "github" }, "original": { @@ -2512,11 +2512,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1747529508, - "narHash": "sha256-nzKCHAtMP3G7nr0+bKnLyFneCxzYIEu6JjssYwbU72E=", + "lastModified": 1748134345, + "narHash": "sha256-HgXWuQvpt3T1fYP6h1+8KIedJGZjCC4WivBtbTrk17I=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "567ccb03d37613f700f8b0b8ac5b9d70791d232a", + "rev": "48c3fb50cace887031f9cc5ee174c089d3a69b22", "type": "github" }, "original": { @@ -2813,11 +2813,11 @@ "nixpkgs": "nixpkgs_22" }, "locked": { - "lastModified": 1747284884, - "narHash": "sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4=", + "lastModified": 1748000383, + "narHash": "sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "7168f6002a6b48a9b6151e1e97e974a0722ecfdc", + "rev": "231726642197817d20310b9d39dd4afb9e899489", "type": "github" }, "original": { @@ -3856,11 +3856,11 @@ "sodium": "sodium_5" }, "locked": { - "lastModified": 1745582862, - "narHash": "sha256-dMoJ6yHcRvUcB66nofzfAtmVxnDg8oPW3wiVtimXT/o=", + "lastModified": 1747798193, + "narHash": "sha256-nb+fPI8ZcIGIVVFuPmjzseDu+81dDlxI7iux1NpJA5Y=", "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "5c16fdfc45deda7a4ccf964b6dfa1c3cab72f1f7", + "rev": "46a0a7b586b3a358b5e96ea3050f8aeca1a34c2d", "type": "github" }, "original": { @@ -5606,11 +5606,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1747572546, - "narHash": "sha256-JdtvscltgBUeTXtDHRqHnDG37dr5cywkBXMp4zvgMSg=", + "lastModified": 1748176065, + "narHash": "sha256-qqLfoLk5WnYFY1UMmM/yIwcH2S4fnc2P8CbKVhFKcL0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "8985b6e37bca2b1edde8a14f6945dc39d3a90d2c", + "rev": "2c0ff14313957630567265eb86c63af18416b275", "type": "github" }, "original": { @@ -6175,11 +6175,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1747535902, - "narHash": "sha256-rKWBtLcqQeu8PpfKIBn1ORXS2udSH/MwnQFwfSpFOLg=", + "lastModified": 1748140821, + "narHash": "sha256-GZcjWLQtDifSYMd1ueLDmuVTcQQdD5mONIBTqABooOk=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "b7a99615d26b82c39b73ccc9026545c3f3403b71", + "rev": "476b2ba7dc99ddbf70b1f45357dbbdbdbdfb4422", "type": "github" }, "original": { @@ -6425,11 +6425,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1747527257, - "narHash": "sha256-cgtQekYhiKKKw5VktWbbAl/mdTBcJ2/ZoeXbOKERzgE=", + "lastModified": 1748132080, + "narHash": "sha256-9SfVGpaNqTnNZfKRND/7o2oiS/xhiOzhQUjxSqV7Jv4=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "12361bff686103579e9f203315da684251e20ba9", + "rev": "7a840945f29384387142bbea3e6ca7ae10b8377c", "type": "github" }, "original": { From c11d00ba0f650cdec970696db582adf194c995ad Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 8 Jun 2025 12:49:37 +0000 Subject: [PATCH 80/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/3e748495eb0d73be05f5cbdff044ddd9182db58e?narHash=sha256-VdghJ9Gn5GK6dBAVx3XOmduYeavh1h0awqmaNNH5d1s%3D' (2025-05-25) → 'github:mlabs-haskell/flake-lang.nix/ba8da41419c8925bbb35efc325789e1288621061?narHash=sha256-cQTRJJ8pSsvROGY59ba/E/BtWCb1BDr/RTxJVZt3JBw%3D' (2025-06-01) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/3a8a6e6a49b4fd3fc5c7778b9160ef4e54400a1e?narHash=sha256-MwSc2%2BUaaOkLosZ6mtgJBoxeasgVp8%2B7HoEcGCyxjJY%3D' (2025-05-23) → 'github:input-output-hk/cardano-haskell-packages/d674eaf4d6a4c8406d17a502bad323c5ee84a20f?narHash=sha256-UPrlvOFpiwqky/IBZCmTWRbS0l3UMitADiphhJnI9Jc%3D' (2025-05-28) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/48c3fb50cace887031f9cc5ee174c089d3a69b22?narHash=sha256-HgXWuQvpt3T1fYP6h1%2B8KIedJGZjCC4WivBtbTrk17I%3D' (2025-05-25) → 'github:input-output-hk/haskell.nix/681bbfa7fe47b9c007089b27157fab988a90fa01?narHash=sha256-UGPJWBAT9w1PEu98W2pQMynEZG/iN1JabxcdZZz2jb8%3D' (2025-06-01) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/9feb3233b70e52114b09e14746fb0298d5b5e86a?narHash=sha256-t%2B89HtGWrg%2BQ0hdYzXQuJ21xTJlrQOn88jSCUTFaLs0%3D' (2025-05-25) → 'github:input-output-hk/hackage.nix/ee364a14306c3d81cc9f8d73fedd1a43d1e98a6f?narHash=sha256-5qlOJJ1DUveLckG/0tmx9pm9IL9Wqtid4Z6QTORE2Zw%3D' (2025-06-01) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/2bf6564bc03671d71bacaf3e56c233204aeefece?narHash=sha256-Nx3ooh1yX0pQX30N/8a/hWL10j0IlXoPizUXjOKVadY%3D' (2025-05-25) → 'github:input-output-hk/hackage.nix/5863aaaa84e47b8e3eeb4e7af433d8ace3cd5487?narHash=sha256-8dsoE3iJBC8BNquOiTwlsqcNRzwK387Tg%2Bl18/p2Ulc%3D' (2025-06-01) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/7a840945f29384387142bbea3e6ca7ae10b8377c?narHash=sha256-9SfVGpaNqTnNZfKRND/7o2oiS/xhiOzhQUjxSqV7Jv4%3D' (2025-05-25) → 'github:input-output-hk/stackage.nix/c04f95ad0731ff773c027ed1390aca827d9ca902?narHash=sha256-XlNzJApYAlnV%2BrPcFIHgxaA304jbfY00JbbkDpsd6bs%3D' (2025-05-29) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/46a0a7b586b3a358b5e96ea3050f8aeca1a34c2d?narHash=sha256-nb%2BfPI8ZcIGIVVFuPmjzseDu%2B81dDlxI7iux1NpJA5Y%3D' (2025-05-21) → 'github:input-output-hk/iohk-nix/72a50c13ae70080794b9f661cea9bd2014cb462b?narHash=sha256-JdLwzKcmWjDocyl4aGUpXWua85WiFyz9/kTFBkwfrLk%3D' (2025-05-28) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/2c0ff14313957630567265eb86c63af18416b275?narHash=sha256-qqLfoLk5WnYFY1UMmM/yIwcH2S4fnc2P8CbKVhFKcL0%3D' (2025-05-25) → 'github:NixOS/nixpkgs/5e9014bcb8934437c9f94e0402ed1e0c45e7497c?narHash=sha256-P2x5ygnR2vkMbFH/6UCusO97llJWsMs08yOdVZeyRD0%3D' (2025-06-01) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/476b2ba7dc99ddbf70b1f45357dbbdbdbdfb4422?narHash=sha256-GZcjWLQtDifSYMd1ueLDmuVTcQQdD5mONIBTqABooOk%3D' (2025-05-25) → 'github:oxalica/rust-overlay/12a0d94a2f2b06714f747ab97b2fa546f46b460c?narHash=sha256-bwkCAK9pOyI2Ww4Q4oO1Ynv7O9aZPrsIAMMASmhVGp4%3D' (2025-06-01) --- flake.lock | 54 +++++++++++++++++++++++++++--------------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/flake.lock b/flake.lock index 91d2f36d..69e38c8a 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1748021818, - "narHash": "sha256-MwSc2+UaaOkLosZ6mtgJBoxeasgVp8+7HoEcGCyxjJY=", + "lastModified": 1748435077, + "narHash": "sha256-UPrlvOFpiwqky/IBZCmTWRbS0l3UMitADiphhJnI9Jc=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "3a8a6e6a49b4fd3fc5c7778b9160ef4e54400a1e", + "rev": "d674eaf4d6a4c8406d17a502bad323c5ee84a20f", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1748195019, - "narHash": "sha256-VdghJ9Gn5GK6dBAVx3XOmduYeavh1h0awqmaNNH5d1s=", + "lastModified": 1748801795, + "narHash": "sha256-cQTRJJ8pSsvROGY59ba/E/BtWCb1BDr/RTxJVZt3JBw=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "3e748495eb0d73be05f5cbdff044ddd9182db58e", + "rev": "ba8da41419c8925bbb35efc325789e1288621061", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1748132919, - "narHash": "sha256-Nx3ooh1yX0pQX30N/8a/hWL10j0IlXoPizUXjOKVadY=", + "lastModified": 1748737881, + "narHash": "sha256-8dsoE3iJBC8BNquOiTwlsqcNRzwK387Tg+l18/p2Ulc=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "2bf6564bc03671d71bacaf3e56c233204aeefece", + "rev": "5863aaaa84e47b8e3eeb4e7af433d8ace3cd5487", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1748132929, - "narHash": "sha256-t+89HtGWrg+Q0hdYzXQuJ21xTJlrQOn88jSCUTFaLs0=", + "lastModified": 1748737892, + "narHash": "sha256-5qlOJJ1DUveLckG/0tmx9pm9IL9Wqtid4Z6QTORE2Zw=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "9feb3233b70e52114b09e14746fb0298d5b5e86a", + "rev": "ee364a14306c3d81cc9f8d73fedd1a43d1e98a6f", "type": "github" }, "original": { @@ -2512,11 +2512,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1748134345, - "narHash": "sha256-HgXWuQvpt3T1fYP6h1+8KIedJGZjCC4WivBtbTrk17I=", + "lastModified": 1748739179, + "narHash": "sha256-UGPJWBAT9w1PEu98W2pQMynEZG/iN1JabxcdZZz2jb8=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "48c3fb50cace887031f9cc5ee174c089d3a69b22", + "rev": "681bbfa7fe47b9c007089b27157fab988a90fa01", "type": "github" }, "original": { @@ -3856,11 +3856,11 @@ "sodium": "sodium_5" }, "locked": { - "lastModified": 1747798193, - "narHash": "sha256-nb+fPI8ZcIGIVVFuPmjzseDu+81dDlxI7iux1NpJA5Y=", + "lastModified": 1748449255, + "narHash": "sha256-JdLwzKcmWjDocyl4aGUpXWua85WiFyz9/kTFBkwfrLk=", "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "46a0a7b586b3a358b5e96ea3050f8aeca1a34c2d", + "rev": "72a50c13ae70080794b9f661cea9bd2014cb462b", "type": "github" }, "original": { @@ -5606,11 +5606,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1748176065, - "narHash": "sha256-qqLfoLk5WnYFY1UMmM/yIwcH2S4fnc2P8CbKVhFKcL0=", + "lastModified": 1748782267, + "narHash": "sha256-P2x5ygnR2vkMbFH/6UCusO97llJWsMs08yOdVZeyRD0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2c0ff14313957630567265eb86c63af18416b275", + "rev": "5e9014bcb8934437c9f94e0402ed1e0c45e7497c", "type": "github" }, "original": { @@ -6175,11 +6175,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1748140821, - "narHash": "sha256-GZcjWLQtDifSYMd1ueLDmuVTcQQdD5mONIBTqABooOk=", + "lastModified": 1748746145, + "narHash": "sha256-bwkCAK9pOyI2Ww4Q4oO1Ynv7O9aZPrsIAMMASmhVGp4=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "476b2ba7dc99ddbf70b1f45357dbbdbdbdfb4422", + "rev": "12a0d94a2f2b06714f747ab97b2fa546f46b460c", "type": "github" }, "original": { @@ -6425,11 +6425,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1748132080, - "narHash": "sha256-9SfVGpaNqTnNZfKRND/7o2oiS/xhiOzhQUjxSqV7Jv4=", + "lastModified": 1748477586, + "narHash": "sha256-XlNzJApYAlnV+rPcFIHgxaA304jbfY00JbbkDpsd6bs=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "7a840945f29384387142bbea3e6ca7ae10b8377c", + "rev": "c04f95ad0731ff773c027ed1390aca827d9ca902", "type": "github" }, "original": { From 2460f192e9c6ad37aa09cf88089ace2b81c17a58 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 15 Jun 2025 12:50:35 +0000 Subject: [PATCH 81/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/ba8da41419c8925bbb35efc325789e1288621061?narHash=sha256-cQTRJJ8pSsvROGY59ba/E/BtWCb1BDr/RTxJVZt3JBw%3D' (2025-06-01) → 'github:mlabs-haskell/flake-lang.nix/3069b7c7b7e3e8932fdb75c5bf56a8984f162395?narHash=sha256-fE%2B5%2BBcMczesepC6iQrpPGuM9r1/mKe62shCl4cB7bA%3D' (2025-06-09) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/d674eaf4d6a4c8406d17a502bad323c5ee84a20f?narHash=sha256-UPrlvOFpiwqky/IBZCmTWRbS0l3UMitADiphhJnI9Jc%3D' (2025-05-28) → 'github:input-output-hk/cardano-haskell-packages/00cdddf38a472acd1aa517812e0028f70447cc13?narHash=sha256-z3JjhfO/1rLTYfyimwvn9nmySuK8/t8E9100UB7XztM%3D' (2025-06-07) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/b718a78696060df6280196a6f992d04c87a16aef?narHash=sha256-t0qLLqb4C1rdtiY8IFRH5KIapTY/n3Lqt57AmxEv9mk%3D' (2025-05-24) → 'github:ipetkov/crane/323b5746d89e04b22554b061522dfce9e4c49b18?narHash=sha256-UDyigbDGv8fvs9aS95yzFfOKkEjx1LO3PL3DsKopohA%3D' (2025-06-03) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5?narHash=sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY%3D' (2025-04-01) → 'github:hercules-ci/flake-parts/49f0870db23e8c1ca0b5259734a02cd9e1e371a1?narHash=sha256-F82%2BgS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE%3D' (2025-06-01) • Updated input 'flake-lang/flake-parts/nixpkgs-lib': 'github:nix-community/nixpkgs.lib/e4822aea2a6d1cdd36653c134cacfd64c97ff4fa?narHash=sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc%3D' (2025-03-30) → 'github:nix-community/nixpkgs.lib/656a64127e9d791a334452c6b6606d17539476e2?narHash=sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc%3D' (2025-06-01) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/681bbfa7fe47b9c007089b27157fab988a90fa01?narHash=sha256-UGPJWBAT9w1PEu98W2pQMynEZG/iN1JabxcdZZz2jb8%3D' (2025-06-01) → 'github:input-output-hk/haskell.nix/178aa6d336e9bfa3d317ca5dc5e2285282b997a9?narHash=sha256-ZhVrDwG0WjMrXCj73Cn1b2TjHlTLFpUI2M/fyBYbTOk%3D' (2025-06-08) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/ee364a14306c3d81cc9f8d73fedd1a43d1e98a6f?narHash=sha256-5qlOJJ1DUveLckG/0tmx9pm9IL9Wqtid4Z6QTORE2Zw%3D' (2025-06-01) → 'github:input-output-hk/hackage.nix/6556dd5b883eabe161ce0481405988dc948460b4?narHash=sha256-%2BfzffsuW5LaeNzF3eC6T50CXPsOnkYT%2BPWPlBjg9Ki0%3D' (2025-06-08) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/5863aaaa84e47b8e3eeb4e7af433d8ace3cd5487?narHash=sha256-8dsoE3iJBC8BNquOiTwlsqcNRzwK387Tg%2Bl18/p2Ulc%3D' (2025-06-01) → 'github:input-output-hk/hackage.nix/550bc1de8d953f096b641f938c783d4bd947f8bf?narHash=sha256-TS2IegxLFwwXJHn19EBDlWF1GDpSu4%2Br5iICY8umvBw%3D' (2025-06-08) • Updated input 'flake-lang/haskell-nix/iserv-proxy': 'github:stable-haskell/iserv-proxy/dea34de4bde325aca22472c18d659bee7800b477?narHash=sha256-PCDULyZSIPdDdF8Lanbcy%2BDl6AJ5z6H2ng3sRsv%2Bgwc%3D' (2025-05-12) → 'github:stable-haskell/iserv-proxy/6972fbc49574108cb48723bb94260e3ce17898f7?narHash=sha256-RLoo84PBSeGKbqMETsU0lEJDnc/oTx0l/TYzCaWqlgc%3D' (2025-06-06) • Updated input 'flake-lang/haskell-nix/nixpkgs-2411': 'github:NixOS/nixpkgs/209c5b3b0f5cf5b5a7e12ddea59bf19699f97e75?narHash=sha256-I40weT0FZWth1IEjgR5a0zC9LLyrPwTC0DAQcejtTJE%3D' (2025-05-06) → 'github:NixOS/nixpkgs/f09dede81861f3a83f7f06641ead34f02f37597f?narHash=sha256-92vihpZr6dwEMV6g98M5kHZIttrWahb9iRPBm1atcPk%3D' (2025-05-23) • Added input 'flake-lang/haskell-nix/nixpkgs-2505': 'github:NixOS/nixpkgs/a8167f3cc2f991dd4d0055746df53dae5fd0c953?narHash=sha256-r/wVJWmLYEqvrJKnL48r90Wn9HWX9SHFt6s4LhuTh7k%3D' (2025-06-02) • Updated input 'flake-lang/haskell-nix/nixpkgs-unstable': 'github:NixOS/nixpkgs/b3582c75c7f21ce0b429898980eddbbf05c68e55?narHash=sha256-FshoQvr6Aor5SnORVvh/ZdJ1Sa2U4ZrIMwKBX5k2wu0%3D' (2025-05-07) → 'github:NixOS/nixpkgs/e4b09e47ace7d87de083786b404bf232eb6c89d8?narHash=sha256-RlTsJUvvr8ErjPBsiwrGbbHYW8XbB/oek0Gi78XdWKg%3D' (2025-06-02) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/5e9014bcb8934437c9f94e0402ed1e0c45e7497c?narHash=sha256-P2x5ygnR2vkMbFH/6UCusO97llJWsMs08yOdVZeyRD0%3D' (2025-06-01) → 'github:NixOS/nixpkgs/4440221965aeacf5844b473085e331f34a280a7e?narHash=sha256-ioLvUmLyiSyz223qlnelEwYvmt/d%2BYdP3z49kSprOaY%3D' (2025-06-08) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/12a0d94a2f2b06714f747ab97b2fa546f46b460c?narHash=sha256-bwkCAK9pOyI2Ww4Q4oO1Ynv7O9aZPrsIAMMASmhVGp4%3D' (2025-06-01) → 'github:oxalica/rust-overlay/24d5806474b0779d373f381f00d75ad51fd45099?narHash=sha256-ltLegOYrp69v/7BXlNfSwUPrt2DvF7N668pV4a6rWRA%3D' (2025-06-08) --- flake.lock | 95 ++++++++++++++++++++++++++++++++---------------------- 1 file changed, 56 insertions(+), 39 deletions(-) diff --git a/flake.lock b/flake.lock index 69e38c8a..fd17c3b3 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1748435077, - "narHash": "sha256-UPrlvOFpiwqky/IBZCmTWRbS0l3UMitADiphhJnI9Jc=", + "lastModified": 1749268259, + "narHash": "sha256-z3JjhfO/1rLTYfyimwvn9nmySuK8/t8E9100UB7XztM=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "d674eaf4d6a4c8406d17a502bad323c5ee84a20f", + "rev": "00cdddf38a472acd1aa517812e0028f70447cc13", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1748047550, - "narHash": "sha256-t0qLLqb4C1rdtiY8IFRH5KIapTY/n3Lqt57AmxEv9mk=", + "lastModified": 1748970125, + "narHash": "sha256-UDyigbDGv8fvs9aS95yzFfOKkEjx1LO3PL3DsKopohA=", "owner": "ipetkov", "repo": "crane", - "rev": "b718a78696060df6280196a6f992d04c87a16aef", + "rev": "323b5746d89e04b22554b061522dfce9e4c49b18", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1748801795, - "narHash": "sha256-cQTRJJ8pSsvROGY59ba/E/BtWCb1BDr/RTxJVZt3JBw=", + "lastModified": 1749454480, + "narHash": "sha256-fE+5+BcMczesepC6iQrpPGuM9r1/mKe62shCl4cB7bA=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "ba8da41419c8925bbb35efc325789e1288621061", + "rev": "3069b7c7b7e3e8932fdb75c5bf56a8984f162395", "type": "github" }, "original": { @@ -1879,11 +1879,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1743550720, - "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", + "lastModified": 1748821116, + "narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "c621e8422220273271f52058f618c94e405bb0f5", + "rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1748737881, - "narHash": "sha256-8dsoE3iJBC8BNquOiTwlsqcNRzwK387Tg+l18/p2Ulc=", + "lastModified": 1749342535, + "narHash": "sha256-TS2IegxLFwwXJHn19EBDlWF1GDpSu4+r5iICY8umvBw=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "5863aaaa84e47b8e3eeb4e7af433d8ace3cd5487", + "rev": "550bc1de8d953f096b641f938c783d4bd947f8bf", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1748737892, - "narHash": "sha256-5qlOJJ1DUveLckG/0tmx9pm9IL9Wqtid4Z6QTORE2Zw=", + "lastModified": 1749342546, + "narHash": "sha256-+fzffsuW5LaeNzF3eC6T50CXPsOnkYT+PWPlBjg9Ki0=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "ee364a14306c3d81cc9f8d73fedd1a43d1e98a6f", + "rev": "6556dd5b883eabe161ce0481405988dc948460b4", "type": "github" }, "original": { @@ -2507,16 +2507,17 @@ "nixpkgs-2311": "nixpkgs-2311_4", "nixpkgs-2405": "nixpkgs-2405_2", "nixpkgs-2411": "nixpkgs-2411", + "nixpkgs-2505": "nixpkgs-2505", "nixpkgs-unstable": "nixpkgs-unstable_5", "old-ghc-nix": "old-ghc-nix_5", "stackage": "stackage_5" }, "locked": { - "lastModified": 1748739179, - "narHash": "sha256-UGPJWBAT9w1PEu98W2pQMynEZG/iN1JabxcdZZz2jb8=", + "lastModified": 1749343911, + "narHash": "sha256-ZhVrDwG0WjMrXCj73Cn1b2TjHlTLFpUI2M/fyBYbTOk=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "681bbfa7fe47b9c007089b27157fab988a90fa01", + "rev": "178aa6d336e9bfa3d317ca5dc5e2285282b997a9", "type": "github" }, "original": { @@ -4045,11 +4046,11 @@ "iserv-proxy_5": { "flake": false, "locked": { - "lastModified": 1747047742, - "narHash": "sha256-PCDULyZSIPdDdF8Lanbcy+Dl6AJ5z6H2ng3sRsv+gwc=", + "lastModified": 1749176681, + "narHash": "sha256-RLoo84PBSeGKbqMETsU0lEJDnc/oTx0l/TYzCaWqlgc=", "owner": "stable-haskell", "repo": "iserv-proxy", - "rev": "dea34de4bde325aca22472c18d659bee7800b477", + "rev": "6972fbc49574108cb48723bb94260e3ce17898f7", "type": "github" }, "original": { @@ -5168,11 +5169,11 @@ }, "nixpkgs-2411": { "locked": { - "lastModified": 1746566971, - "narHash": "sha256-I40weT0FZWth1IEjgR5a0zC9LLyrPwTC0DAQcejtTJE=", + "lastModified": 1748037224, + "narHash": "sha256-92vihpZr6dwEMV6g98M5kHZIttrWahb9iRPBm1atcPk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "209c5b3b0f5cf5b5a7e12ddea59bf19699f97e75", + "rev": "f09dede81861f3a83f7f06641ead34f02f37597f", "type": "github" }, "original": { @@ -5182,6 +5183,22 @@ "type": "github" } }, + "nixpkgs-2505": { + "locked": { + "lastModified": 1748852332, + "narHash": "sha256-r/wVJWmLYEqvrJKnL48r90Wn9HWX9SHFt6s4LhuTh7k=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "a8167f3cc2f991dd4d0055746df53dae5fd0c953", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-25.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-arion": { "locked": { "lastModified": 1742483666, @@ -5211,11 +5228,11 @@ }, "nixpkgs-lib_2": { "locked": { - "lastModified": 1743296961, - "narHash": "sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc=", + "lastModified": 1748740939, + "narHash": "sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "e4822aea2a6d1cdd36653c134cacfd64c97ff4fa", + "rev": "656a64127e9d791a334452c6b6606d17539476e2", "type": "github" }, "original": { @@ -5354,11 +5371,11 @@ }, "nixpkgs-unstable_5": { "locked": { - "lastModified": 1746576598, - "narHash": "sha256-FshoQvr6Aor5SnORVvh/ZdJ1Sa2U4ZrIMwKBX5k2wu0=", + "lastModified": 1748856973, + "narHash": "sha256-RlTsJUvvr8ErjPBsiwrGbbHYW8XbB/oek0Gi78XdWKg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b3582c75c7f21ce0b429898980eddbbf05c68e55", + "rev": "e4b09e47ace7d87de083786b404bf232eb6c89d8", "type": "github" }, "original": { @@ -5606,11 +5623,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1748782267, - "narHash": "sha256-P2x5ygnR2vkMbFH/6UCusO97llJWsMs08yOdVZeyRD0=", + "lastModified": 1749385675, + "narHash": "sha256-ioLvUmLyiSyz223qlnelEwYvmt/d+YdP3z49kSprOaY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5e9014bcb8934437c9f94e0402ed1e0c45e7497c", + "rev": "4440221965aeacf5844b473085e331f34a280a7e", "type": "github" }, "original": { @@ -6175,11 +6192,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1748746145, - "narHash": "sha256-bwkCAK9pOyI2Ww4Q4oO1Ynv7O9aZPrsIAMMASmhVGp4=", + "lastModified": 1749350575, + "narHash": "sha256-ltLegOYrp69v/7BXlNfSwUPrt2DvF7N668pV4a6rWRA=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "12a0d94a2f2b06714f747ab97b2fa546f46b460c", + "rev": "24d5806474b0779d373f381f00d75ad51fd45099", "type": "github" }, "original": { From 5f2fab17cbb55495bbff4b099eb037b5649cf0e8 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 22 Jun 2025 12:50:42 +0000 Subject: [PATCH 82/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/3069b7c7b7e3e8932fdb75c5bf56a8984f162395?narHash=sha256-fE%2B5%2BBcMczesepC6iQrpPGuM9r1/mKe62shCl4cB7bA%3D' (2025-06-09) → 'github:mlabs-haskell/flake-lang.nix/72335207a8f6ed90661c83a2f500b47b8fe0673c?narHash=sha256-E8LWuNvTwLlQCvdo9EfkCfSYGWC3Pk7FbB/dm9LmtpQ%3D' (2025-06-15) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/00cdddf38a472acd1aa517812e0028f70447cc13?narHash=sha256-z3JjhfO/1rLTYfyimwvn9nmySuK8/t8E9100UB7XztM%3D' (2025-06-07) → 'github:input-output-hk/cardano-haskell-packages/b1b559392d6fc44626cef9d5b7821421cc7adcdc?narHash=sha256-yCKoVpny9PSGTcSrCtXq77FuKFlq9Hf81ULVgCvkfmc%3D' (2025-06-12) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/49f0870db23e8c1ca0b5259734a02cd9e1e371a1?narHash=sha256-F82%2BgS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE%3D' (2025-06-01) → 'github:hercules-ci/flake-parts/9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569?narHash=sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98%3D' (2025-06-08) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/178aa6d336e9bfa3d317ca5dc5e2285282b997a9?narHash=sha256-ZhVrDwG0WjMrXCj73Cn1b2TjHlTLFpUI2M/fyBYbTOk%3D' (2025-06-08) → 'github:input-output-hk/haskell.nix/edeafd2675194b3b52e4077dfe4f270a6230ee9d?narHash=sha256-3286D2cC1dVwS00Rj4Bh5ZUksWO4uWKThXLNsQzaNxE%3D' (2025-06-15) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/6556dd5b883eabe161ce0481405988dc948460b4?narHash=sha256-%2BfzffsuW5LaeNzF3eC6T50CXPsOnkYT%2BPWPlBjg9Ki0%3D' (2025-06-08) → 'github:input-output-hk/hackage.nix/576db1b7b6a1faadc82995e1ee756ee34d6e09f9?narHash=sha256-XRCfjyAJkcUMTOFi8k%2BqIz42yFJFFkB8f3vJO99VK9s%3D' (2025-06-15) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/550bc1de8d953f096b641f938c783d4bd947f8bf?narHash=sha256-TS2IegxLFwwXJHn19EBDlWF1GDpSu4%2Br5iICY8umvBw%3D' (2025-06-08) → 'github:input-output-hk/hackage.nix/0dca18c5005758fb6e3dae485e30ea4ed9691978?narHash=sha256-Y/fnzHgE6a3Oy9URJWXJPwIPQAxAScQ5cBA/FCMj9lc%3D' (2025-06-15) • Added input 'flake-lang/haskell-nix/hls-2.11': 'github:haskell/haskell-language-server/46ef4523ea4949f47f6d2752476239f1c6d806fe?narHash=sha256-/MmtpF8%2BFyQlwfKHqHK05BdsxC9LHV70d/FiMM7pzBM%3D' (2025-05-15) • Updated input 'flake-lang/haskell-nix/iserv-proxy': 'github:stable-haskell/iserv-proxy/6972fbc49574108cb48723bb94260e3ce17898f7?narHash=sha256-RLoo84PBSeGKbqMETsU0lEJDnc/oTx0l/TYzCaWqlgc%3D' (2025-06-06) → 'github:stable-haskell/iserv-proxy/e40eddb1ca1e3e906e018c7e6b0d1e51c930ec9d?narHash=sha256-asfdanBoIUcJ9XQWB3a/5wQGFG/6Uq6l2s9r8OuamkY%3D' (2025-06-09) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/c04f95ad0731ff773c027ed1390aca827d9ca902?narHash=sha256-XlNzJApYAlnV%2BrPcFIHgxaA304jbfY00JbbkDpsd6bs%3D' (2025-05-29) → 'github:input-output-hk/stackage.nix/baa43f8bd5bf6b31b80125c65c053f99b034f37d?narHash=sha256-xh%2BPW3ReewaInSeCzEEo6LkcGFm3AzMNfRw/3Err7ag%3D' (2025-06-15) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/4440221965aeacf5844b473085e331f34a280a7e?narHash=sha256-ioLvUmLyiSyz223qlnelEwYvmt/d%2BYdP3z49kSprOaY%3D' (2025-06-08) → 'github:NixOS/nixpkgs/1971d33ac4d78df91a2e8f2f11ac6f4061472ef9?narHash=sha256-qN8MykLR2cjG68P7AQGfA5XZedwr4VYQHJcgivAyHkE%3D' (2025-06-15) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/80479b6ec16fefd9c1db3ea13aeb038c60530f46?narHash=sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo%2BbnXU9D9k%3D' (2025-05-16) → 'github:cachix/pre-commit-hooks.nix/623c56286de5a3193aa38891a6991b28f9bab056?narHash=sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4%3D' (2025-06-11) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/24d5806474b0779d373f381f00d75ad51fd45099?narHash=sha256-ltLegOYrp69v/7BXlNfSwUPrt2DvF7N668pV4a6rWRA%3D' (2025-06-08) → 'github:oxalica/rust-overlay/539ba15741f0e6691a2448743dbc601d8910edce?narHash=sha256-CllTHvHX8KAdAZ%2BLxzd23AmZTxO1Pfy%2BzC43/5tYkAE%3D' (2025-06-15) --- flake.lock | 84 +++++++++++++++++++++++++++++++++--------------------- 1 file changed, 51 insertions(+), 33 deletions(-) diff --git a/flake.lock b/flake.lock index fd17c3b3..732644aa 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1749268259, - "narHash": "sha256-z3JjhfO/1rLTYfyimwvn9nmySuK8/t8E9100UB7XztM=", + "lastModified": 1749727790, + "narHash": "sha256-yCKoVpny9PSGTcSrCtXq77FuKFlq9Hf81ULVgCvkfmc=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "00cdddf38a472acd1aa517812e0028f70447cc13", + "rev": "b1b559392d6fc44626cef9d5b7821421cc7adcdc", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1749454480, - "narHash": "sha256-fE+5+BcMczesepC6iQrpPGuM9r1/mKe62shCl4cB7bA=", + "lastModified": 1750007355, + "narHash": "sha256-E8LWuNvTwLlQCvdo9EfkCfSYGWC3Pk7FbB/dm9LmtpQ=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "3069b7c7b7e3e8932fdb75c5bf56a8984f162395", + "rev": "72335207a8f6ed90661c83a2f500b47b8fe0673c", "type": "github" }, "original": { @@ -1879,11 +1879,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1748821116, - "narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=", + "lastModified": 1749398372, + "narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1", + "rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1749342535, - "narHash": "sha256-TS2IegxLFwwXJHn19EBDlWF1GDpSu4+r5iICY8umvBw=", + "lastModified": 1749947352, + "narHash": "sha256-Y/fnzHgE6a3Oy9URJWXJPwIPQAxAScQ5cBA/FCMj9lc=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "550bc1de8d953f096b641f938c783d4bd947f8bf", + "rev": "0dca18c5005758fb6e3dae485e30ea4ed9691978", "type": "github" }, "original": { @@ -2460,11 +2460,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1749342546, - "narHash": "sha256-+fzffsuW5LaeNzF3eC6T50CXPsOnkYT+PWPlBjg9Ki0=", + "lastModified": 1749947362, + "narHash": "sha256-XRCfjyAJkcUMTOFi8k+qIz42yFJFFkB8f3vJO99VK9s=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "6556dd5b883eabe161ce0481405988dc948460b4", + "rev": "576db1b7b6a1faadc82995e1ee756ee34d6e09f9", "type": "github" }, "original": { @@ -2488,6 +2488,7 @@ "hls-1.10": "hls-1.10_5", "hls-2.0": "hls-2.0_4", "hls-2.10": "hls-2.10", + "hls-2.11": "hls-2.11", "hls-2.2": "hls-2.2_4", "hls-2.3": "hls-2.3_4", "hls-2.4": "hls-2.4_4", @@ -2513,11 +2514,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1749343911, - "narHash": "sha256-ZhVrDwG0WjMrXCj73Cn1b2TjHlTLFpUI2M/fyBYbTOk=", + "lastModified": 1749948748, + "narHash": "sha256-3286D2cC1dVwS00Rj4Bh5ZUksWO4uWKThXLNsQzaNxE=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "178aa6d336e9bfa3d317ca5dc5e2285282b997a9", + "rev": "edeafd2675194b3b52e4077dfe4f270a6230ee9d", "type": "github" }, "original": { @@ -3081,6 +3082,23 @@ "type": "github" } }, + "hls-2.11": { + "flake": false, + "locked": { + "lastModified": 1747306193, + "narHash": "sha256-/MmtpF8+FyQlwfKHqHK05BdsxC9LHV70d/FiMM7pzBM=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "46ef4523ea4949f47f6d2752476239f1c6d806fe", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "2.11.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, "hls-2.2": { "flake": false, "locked": { @@ -4046,11 +4064,11 @@ "iserv-proxy_5": { "flake": false, "locked": { - "lastModified": 1749176681, - "narHash": "sha256-RLoo84PBSeGKbqMETsU0lEJDnc/oTx0l/TYzCaWqlgc=", + "lastModified": 1749443511, + "narHash": "sha256-asfdanBoIUcJ9XQWB3a/5wQGFG/6Uq6l2s9r8OuamkY=", "owner": "stable-haskell", "repo": "iserv-proxy", - "rev": "6972fbc49574108cb48723bb94260e3ce17898f7", + "rev": "e40eddb1ca1e3e906e018c7e6b0d1e51c930ec9d", "type": "github" }, "original": { @@ -5623,11 +5641,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1749385675, - "narHash": "sha256-ioLvUmLyiSyz223qlnelEwYvmt/d+YdP3z49kSprOaY=", + "lastModified": 1749991380, + "narHash": "sha256-qN8MykLR2cjG68P7AQGfA5XZedwr4VYQHJcgivAyHkE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4440221965aeacf5844b473085e331f34a280a7e", + "rev": "1971d33ac4d78df91a2e8f2f11ac6f4061472ef9", "type": "github" }, "original": { @@ -6125,11 +6143,11 @@ "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1747372754, - "narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", + "lastModified": 1749636823, + "narHash": "sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", + "rev": "623c56286de5a3193aa38891a6991b28f9bab056", "type": "github" }, "original": { @@ -6192,11 +6210,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1749350575, - "narHash": "sha256-ltLegOYrp69v/7BXlNfSwUPrt2DvF7N668pV4a6rWRA=", + "lastModified": 1749955444, + "narHash": "sha256-CllTHvHX8KAdAZ+Lxzd23AmZTxO1Pfy+zC43/5tYkAE=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "24d5806474b0779d373f381f00d75ad51fd45099", + "rev": "539ba15741f0e6691a2448743dbc601d8910edce", "type": "github" }, "original": { @@ -6442,11 +6460,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1748477586, - "narHash": "sha256-XlNzJApYAlnV+rPcFIHgxaA304jbfY00JbbkDpsd6bs=", + "lastModified": 1749946498, + "narHash": "sha256-xh+PW3ReewaInSeCzEEo6LkcGFm3AzMNfRw/3Err7ag=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "c04f95ad0731ff773c027ed1390aca827d9ca902", + "rev": "baa43f8bd5bf6b31b80125c65c053f99b034f37d", "type": "github" }, "original": { From 1f6c786be91fbab1bc975c93e3b64012cd4d1fad Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 29 Jun 2025 12:50:31 +0000 Subject: [PATCH 83/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/72335207a8f6ed90661c83a2f500b47b8fe0673c?narHash=sha256-E8LWuNvTwLlQCvdo9EfkCfSYGWC3Pk7FbB/dm9LmtpQ%3D' (2025-06-15) → 'github:mlabs-haskell/flake-lang.nix/4db98c07ff5575cf797de76a053223db27076fe4?narHash=sha256-O3JX2ZNIji4Rd7861VQXhsCzS9av99qzvWb/6kpvuF8%3D' (2025-06-23) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/b1b559392d6fc44626cef9d5b7821421cc7adcdc?narHash=sha256-yCKoVpny9PSGTcSrCtXq77FuKFlq9Hf81ULVgCvkfmc%3D' (2025-06-12) → 'github:input-output-hk/cardano-haskell-packages/25868b1d259155d46b8c0089f12076f1c7f94cab?narHash=sha256-v5AlraKLH2Rgl3HRJb/DciXIkOlF5pD/RewHB6nDlrM%3D' (2025-06-20) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/323b5746d89e04b22554b061522dfce9e4c49b18?narHash=sha256-UDyigbDGv8fvs9aS95yzFfOKkEjx1LO3PL3DsKopohA%3D' (2025-06-03) → 'github:ipetkov/crane/e37c943371b73ed87faf33f7583860f81f1d5a48?narHash=sha256-tL42YoNg9y30u7zAqtoGDNdTyXTi8EALDeCB13FtbQA%3D' (2025-06-18) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/edeafd2675194b3b52e4077dfe4f270a6230ee9d?narHash=sha256-3286D2cC1dVwS00Rj4Bh5ZUksWO4uWKThXLNsQzaNxE%3D' (2025-06-15) → 'github:input-output-hk/haskell.nix/450eba5f33a37062b3ea59ee88d13109ea798536?narHash=sha256-bH3cJYxtuPGwwg2vjvwEE3dG5n6Q12voqibKzddMgos%3D' (2025-06-22) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/576db1b7b6a1faadc82995e1ee756ee34d6e09f9?narHash=sha256-XRCfjyAJkcUMTOFi8k%2BqIz42yFJFFkB8f3vJO99VK9s%3D' (2025-06-15) → 'github:input-output-hk/hackage.nix/c4a5e33bcb9a1a605d4fb2a2f55ba85dd0965afc?narHash=sha256-a2IPK63DfQsxuHY%2BlOLXy3Mnz2x4GUx72muULt3O/Zo%3D' (2025-06-22) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/0dca18c5005758fb6e3dae485e30ea4ed9691978?narHash=sha256-Y/fnzHgE6a3Oy9URJWXJPwIPQAxAScQ5cBA/FCMj9lc%3D' (2025-06-15) → 'github:input-output-hk/hackage.nix/a5d60b2d3c435cf26848e34b92e28f96e13cde7c?narHash=sha256-KC/e7tQOID9SgRkmH3BNlnPZ7sn3v5k5GyllLmSZicY%3D' (2025-06-22) • Added input 'flake-lang/haskell-nix/hackage-internal': 'github:input-output-hk/hackage.nix/f7867baa8817fab296528f4a4ec39d1c7c4da4f3?narHash=sha256-iiafNoeLHwlSLQTyvy8nPe2t6g5AV4PPcpMeH/2/DLs%3D' (2025-06-19) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/baa43f8bd5bf6b31b80125c65c053f99b034f37d?narHash=sha256-xh%2BPW3ReewaInSeCzEEo6LkcGFm3AzMNfRw/3Err7ag%3D' (2025-06-15) → 'github:input-output-hk/stackage.nix/3f8c717e24953914821f1ddb4797dd768326faa6?narHash=sha256-rmEsCxLWS/rAdIzZPSi0XbrY2BOztBlSHQHgYoXyovU%3D' (2025-06-19) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/72a50c13ae70080794b9f661cea9bd2014cb462b?narHash=sha256-JdLwzKcmWjDocyl4aGUpXWua85WiFyz9/kTFBkwfrLk%3D' (2025-05-28) → 'github:input-output-hk/iohk-nix/f63aa2a49720526900fb5943db4123b5b8dcc534?narHash=sha256-WUNoYIZvU9moc5ccwJcF22r%2BbUJXO5dWoRyLPs8bJic%3D' (2025-06-15) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/1971d33ac4d78df91a2e8f2f11ac6f4061472ef9?narHash=sha256-qN8MykLR2cjG68P7AQGfA5XZedwr4VYQHJcgivAyHkE%3D' (2025-06-15) → 'github:NixOS/nixpkgs/0dfe7d99985ebf50c1156af97025a210e8e8cc28?narHash=sha256-eXKO8%2Bn/YmBHOEgEzJSXnuwN6yDPwoi2P1zXp6t5ep4%3D' (2025-06-22) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/539ba15741f0e6691a2448743dbc601d8910edce?narHash=sha256-CllTHvHX8KAdAZ%2BLxzd23AmZTxO1Pfy%2BzC43/5tYkAE%3D' (2025-06-15) → 'github:oxalica/rust-overlay/076fdb0d45a9de3f379a626f51a62c78afe7efb1?narHash=sha256-jQCojKl1/TzqE6ANOu6rP2qqxOcGK2xs6hpxZ77wrR8%3D' (2025-06-22) --- flake.lock | 77 +++++++++++++++++++++++++++++++++--------------------- 1 file changed, 47 insertions(+), 30 deletions(-) diff --git a/flake.lock b/flake.lock index 732644aa..7b29a3c9 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1749727790, - "narHash": "sha256-yCKoVpny9PSGTcSrCtXq77FuKFlq9Hf81ULVgCvkfmc=", + "lastModified": 1750412109, + "narHash": "sha256-v5AlraKLH2Rgl3HRJb/DciXIkOlF5pD/RewHB6nDlrM=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "b1b559392d6fc44626cef9d5b7821421cc7adcdc", + "rev": "25868b1d259155d46b8c0089f12076f1c7f94cab", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1748970125, - "narHash": "sha256-UDyigbDGv8fvs9aS95yzFfOKkEjx1LO3PL3DsKopohA=", + "lastModified": 1750266157, + "narHash": "sha256-tL42YoNg9y30u7zAqtoGDNdTyXTi8EALDeCB13FtbQA=", "owner": "ipetkov", "repo": "crane", - "rev": "323b5746d89e04b22554b061522dfce9e4c49b18", + "rev": "e37c943371b73ed87faf33f7583860f81f1d5a48", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1750007355, - "narHash": "sha256-E8LWuNvTwLlQCvdo9EfkCfSYGWC3Pk7FbB/dm9LmtpQ=", + "lastModified": 1750680600, + "narHash": "sha256-O3JX2ZNIji4Rd7861VQXhsCzS9av99qzvWb/6kpvuF8=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "72335207a8f6ed90661c83a2f500b47b8fe0673c", + "rev": "4db98c07ff5575cf797de76a053223db27076fe4", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1749947352, - "narHash": "sha256-Y/fnzHgE6a3Oy9URJWXJPwIPQAxAScQ5cBA/FCMj9lc=", + "lastModified": 1750552134, + "narHash": "sha256-KC/e7tQOID9SgRkmH3BNlnPZ7sn3v5k5GyllLmSZicY=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "0dca18c5005758fb6e3dae485e30ea4ed9691978", + "rev": "a5d60b2d3c435cf26848e34b92e28f96e13cde7c", "type": "github" }, "original": { @@ -2409,6 +2409,22 @@ "type": "github" } }, + "hackage-internal": { + "flake": false, + "locked": { + "lastModified": 1750307553, + "narHash": "sha256-iiafNoeLHwlSLQTyvy8nPe2t6g5AV4PPcpMeH/2/DLs=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "f7867baa8817fab296528f4a4ec39d1c7c4da4f3", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "hackage.nix", + "type": "github" + } + }, "hackageNix": { "flake": false, "locked": { @@ -2460,11 +2476,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1749947362, - "narHash": "sha256-XRCfjyAJkcUMTOFi8k+qIz42yFJFFkB8f3vJO99VK9s=", + "lastModified": 1750552833, + "narHash": "sha256-a2IPK63DfQsxuHY+lOLXy3Mnz2x4GUx72muULt3O/Zo=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "576db1b7b6a1faadc82995e1ee756ee34d6e09f9", + "rev": "c4a5e33bcb9a1a605d4fb2a2f55ba85dd0965afc", "type": "github" }, "original": { @@ -2484,6 +2500,7 @@ "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_5", "hackage": "hackage_2", "hackage-for-stackage": "hackage-for-stackage", + "hackage-internal": "hackage-internal", "hls": "hls", "hls-1.10": "hls-1.10_5", "hls-2.0": "hls-2.0_4", @@ -2514,11 +2531,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1749948748, - "narHash": "sha256-3286D2cC1dVwS00Rj4Bh5ZUksWO4uWKThXLNsQzaNxE=", + "lastModified": 1750553511, + "narHash": "sha256-bH3cJYxtuPGwwg2vjvwEE3dG5n6Q12voqibKzddMgos=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "edeafd2675194b3b52e4077dfe4f270a6230ee9d", + "rev": "450eba5f33a37062b3ea59ee88d13109ea798536", "type": "github" }, "original": { @@ -3875,11 +3892,11 @@ "sodium": "sodium_5" }, "locked": { - "lastModified": 1748449255, - "narHash": "sha256-JdLwzKcmWjDocyl4aGUpXWua85WiFyz9/kTFBkwfrLk=", + "lastModified": 1750025513, + "narHash": "sha256-WUNoYIZvU9moc5ccwJcF22r+bUJXO5dWoRyLPs8bJic=", "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "72a50c13ae70080794b9f661cea9bd2014cb462b", + "rev": "f63aa2a49720526900fb5943db4123b5b8dcc534", "type": "github" }, "original": { @@ -5641,11 +5658,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1749991380, - "narHash": "sha256-qN8MykLR2cjG68P7AQGfA5XZedwr4VYQHJcgivAyHkE=", + "lastModified": 1750596594, + "narHash": "sha256-eXKO8+n/YmBHOEgEzJSXnuwN6yDPwoi2P1zXp6t5ep4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1971d33ac4d78df91a2e8f2f11ac6f4061472ef9", + "rev": "0dfe7d99985ebf50c1156af97025a210e8e8cc28", "type": "github" }, "original": { @@ -6210,11 +6227,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1749955444, - "narHash": "sha256-CllTHvHX8KAdAZ+Lxzd23AmZTxO1Pfy+zC43/5tYkAE=", + "lastModified": 1750560265, + "narHash": "sha256-jQCojKl1/TzqE6ANOu6rP2qqxOcGK2xs6hpxZ77wrR8=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "539ba15741f0e6691a2448743dbc601d8910edce", + "rev": "076fdb0d45a9de3f379a626f51a62c78afe7efb1", "type": "github" }, "original": { @@ -6460,11 +6477,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1749946498, - "narHash": "sha256-xh+PW3ReewaInSeCzEEo6LkcGFm3AzMNfRw/3Err7ag=", + "lastModified": 1750292027, + "narHash": "sha256-rmEsCxLWS/rAdIzZPSi0XbrY2BOztBlSHQHgYoXyovU=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "baa43f8bd5bf6b31b80125c65c053f99b034f37d", + "rev": "3f8c717e24953914821f1ddb4797dd768326faa6", "type": "github" }, "original": { From d3e7d1b3b8d7b33d33ad5c89e29207d05c5ae48d Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 6 Jul 2025 12:45:59 +0000 Subject: [PATCH 84/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/4db98c07ff5575cf797de76a053223db27076fe4?narHash=sha256-O3JX2ZNIji4Rd7861VQXhsCzS9av99qzvWb/6kpvuF8%3D' (2025-06-23) → 'github:mlabs-haskell/flake-lang.nix/d1e3233c438a1609ad6d88874cb483b562be99a9?narHash=sha256-/wRqj%2BBpAwpa1nB4dL/z0Ktr3i8GjmohttDbRdH7US4%3D' (2025-06-30) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/25868b1d259155d46b8c0089f12076f1c7f94cab?narHash=sha256-v5AlraKLH2Rgl3HRJb/DciXIkOlF5pD/RewHB6nDlrM%3D' (2025-06-20) → 'github:input-output-hk/cardano-haskell-packages/48a53f17a3b46390586e130705b853f0d73dbf5c?narHash=sha256-bsyrGouyAlRkApXqnlXnJA/cNGeLo5HW3dDVqhJH17I%3D' (2025-06-27) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/450eba5f33a37062b3ea59ee88d13109ea798536?narHash=sha256-bH3cJYxtuPGwwg2vjvwEE3dG5n6Q12voqibKzddMgos%3D' (2025-06-22) → 'github:input-output-hk/haskell.nix/ca0eacfc006f10a50672bfd7f98fe47bac48a007?narHash=sha256-/HkeoPtq8kZ8Y0czW5wlsQiiQVkjSUMoEH64u0am1Tg%3D' (2025-06-29) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/c4a5e33bcb9a1a605d4fb2a2f55ba85dd0965afc?narHash=sha256-a2IPK63DfQsxuHY%2BlOLXy3Mnz2x4GUx72muULt3O/Zo%3D' (2025-06-22) → 'github:input-output-hk/hackage.nix/cffd7b4b1dcd6d2902c21af90d05a8a4b215f6f6?narHash=sha256-xxVNDZYJm7xo6BJDViCFwmhkx9oWCoJ4i5Ig3AVyhko%3D' (2025-06-29) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/a5d60b2d3c435cf26848e34b92e28f96e13cde7c?narHash=sha256-KC/e7tQOID9SgRkmH3BNlnPZ7sn3v5k5GyllLmSZicY%3D' (2025-06-22) → 'github:input-output-hk/hackage.nix/b49ecc7c8418b88fa72e72e026d3614807e883a8?narHash=sha256-ukRriYyvcRC5P1vb0gI37wHohpkgu8mGfu5GA4Q4fvY%3D' (2025-06-29) • Updated input 'flake-lang/haskell-nix/iserv-proxy': 'github:stable-haskell/iserv-proxy/e40eddb1ca1e3e906e018c7e6b0d1e51c930ec9d?narHash=sha256-asfdanBoIUcJ9XQWB3a/5wQGFG/6Uq6l2s9r8OuamkY%3D' (2025-06-09) → 'github:stable-haskell/iserv-proxy/a53c57c9a8d22a66a2f0c4c969e806da03f08c28?narHash=sha256-WaswH0Y%2BFmupvv8AkIlQBlUy/IdD3Inx9PDuE%2B5iRYY%3D' (2025-06-21) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/0dfe7d99985ebf50c1156af97025a210e8e8cc28?narHash=sha256-eXKO8%2Bn/YmBHOEgEzJSXnuwN6yDPwoi2P1zXp6t5ep4%3D' (2025-06-22) → 'github:NixOS/nixpkgs/599c15307b9183452da3087c465de726ca969b47?narHash=sha256-Hbli2h1C3pG8nu4wI9qeI1lGFqSkd1uwENRqc9dduJs%3D' (2025-06-29) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/623c56286de5a3193aa38891a6991b28f9bab056?narHash=sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4%3D' (2025-06-11) → 'github:cachix/pre-commit-hooks.nix/16ec914f6fb6f599ce988427d9d94efddf25fe6d?narHash=sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg%3D' (2025-06-24) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/076fdb0d45a9de3f379a626f51a62c78afe7efb1?narHash=sha256-jQCojKl1/TzqE6ANOu6rP2qqxOcGK2xs6hpxZ77wrR8%3D' (2025-06-22) → 'github:oxalica/rust-overlay/90f547b90e73d3c6025e66c5b742d6db51c418c3?narHash=sha256-3QhlpAk2yn%2BExwvRLtaixWsVW1q3OX3KXXe0l8VMLl4%3D' (2025-06-29) --- flake.lock | 54 +++++++++++++++++++++++++++--------------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/flake.lock b/flake.lock index 7b29a3c9..af4ea12b 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1750412109, - "narHash": "sha256-v5AlraKLH2Rgl3HRJb/DciXIkOlF5pD/RewHB6nDlrM=", + "lastModified": 1751010214, + "narHash": "sha256-bsyrGouyAlRkApXqnlXnJA/cNGeLo5HW3dDVqhJH17I=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "25868b1d259155d46b8c0089f12076f1c7f94cab", + "rev": "48a53f17a3b46390586e130705b853f0d73dbf5c", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1750680600, - "narHash": "sha256-O3JX2ZNIji4Rd7861VQXhsCzS9av99qzvWb/6kpvuF8=", + "lastModified": 1751244000, + "narHash": "sha256-/wRqj+BpAwpa1nB4dL/z0Ktr3i8GjmohttDbRdH7US4=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "4db98c07ff5575cf797de76a053223db27076fe4", + "rev": "d1e3233c438a1609ad6d88874cb483b562be99a9", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1750552134, - "narHash": "sha256-KC/e7tQOID9SgRkmH3BNlnPZ7sn3v5k5GyllLmSZicY=", + "lastModified": 1751156970, + "narHash": "sha256-ukRriYyvcRC5P1vb0gI37wHohpkgu8mGfu5GA4Q4fvY=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "a5d60b2d3c435cf26848e34b92e28f96e13cde7c", + "rev": "b49ecc7c8418b88fa72e72e026d3614807e883a8", "type": "github" }, "original": { @@ -2476,11 +2476,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1750552833, - "narHash": "sha256-a2IPK63DfQsxuHY+lOLXy3Mnz2x4GUx72muULt3O/Zo=", + "lastModified": 1751156979, + "narHash": "sha256-xxVNDZYJm7xo6BJDViCFwmhkx9oWCoJ4i5Ig3AVyhko=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "c4a5e33bcb9a1a605d4fb2a2f55ba85dd0965afc", + "rev": "cffd7b4b1dcd6d2902c21af90d05a8a4b215f6f6", "type": "github" }, "original": { @@ -2531,11 +2531,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1750553511, - "narHash": "sha256-bH3cJYxtuPGwwg2vjvwEE3dG5n6Q12voqibKzddMgos=", + "lastModified": 1751158347, + "narHash": "sha256-/HkeoPtq8kZ8Y0czW5wlsQiiQVkjSUMoEH64u0am1Tg=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "450eba5f33a37062b3ea59ee88d13109ea798536", + "rev": "ca0eacfc006f10a50672bfd7f98fe47bac48a007", "type": "github" }, "original": { @@ -4081,11 +4081,11 @@ "iserv-proxy_5": { "flake": false, "locked": { - "lastModified": 1749443511, - "narHash": "sha256-asfdanBoIUcJ9XQWB3a/5wQGFG/6Uq6l2s9r8OuamkY=", + "lastModified": 1750543273, + "narHash": "sha256-WaswH0Y+Fmupvv8AkIlQBlUy/IdD3Inx9PDuE+5iRYY=", "owner": "stable-haskell", "repo": "iserv-proxy", - "rev": "e40eddb1ca1e3e906e018c7e6b0d1e51c930ec9d", + "rev": "a53c57c9a8d22a66a2f0c4c969e806da03f08c28", "type": "github" }, "original": { @@ -5658,11 +5658,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1750596594, - "narHash": "sha256-eXKO8+n/YmBHOEgEzJSXnuwN6yDPwoi2P1zXp6t5ep4=", + "lastModified": 1751200386, + "narHash": "sha256-Hbli2h1C3pG8nu4wI9qeI1lGFqSkd1uwENRqc9dduJs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0dfe7d99985ebf50c1156af97025a210e8e8cc28", + "rev": "599c15307b9183452da3087c465de726ca969b47", "type": "github" }, "original": { @@ -6160,11 +6160,11 @@ "nixpkgs": "nixpkgs_25" }, "locked": { - "lastModified": 1749636823, - "narHash": "sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4=", + "lastModified": 1750779888, + "narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "623c56286de5a3193aa38891a6991b28f9bab056", + "rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d", "type": "github" }, "original": { @@ -6227,11 +6227,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1750560265, - "narHash": "sha256-jQCojKl1/TzqE6ANOu6rP2qqxOcGK2xs6hpxZ77wrR8=", + "lastModified": 1751165203, + "narHash": "sha256-3QhlpAk2yn+ExwvRLtaixWsVW1q3OX3KXXe0l8VMLl4=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "076fdb0d45a9de3f379a626f51a62c78afe7efb1", + "rev": "90f547b90e73d3c6025e66c5b742d6db51c418c3", "type": "github" }, "original": { From 30c988ac8f0e18854b281794ee7bc5ad9aad5ac4 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 13 Jul 2025 12:46:04 +0000 Subject: [PATCH 85/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/d1e3233c438a1609ad6d88874cb483b562be99a9?narHash=sha256-/wRqj%2BBpAwpa1nB4dL/z0Ktr3i8GjmohttDbRdH7US4%3D' (2025-06-30) → 'github:mlabs-haskell/flake-lang.nix/662cca03692a7501394cca48b446411d0a778115?narHash=sha256-Rvetcf2GzM7BCOXe3H0BQafcfQqHmtgj0puRC03yZoE%3D' (2025-07-06) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/48a53f17a3b46390586e130705b853f0d73dbf5c?narHash=sha256-bsyrGouyAlRkApXqnlXnJA/cNGeLo5HW3dDVqhJH17I%3D' (2025-06-27) → 'github:input-output-hk/cardano-haskell-packages/d0da4a4a6b2548405a9e151394ec9a539106e74f?narHash=sha256-aB46saAQxsJRoqbxLhnSzC5Sbk0TxcdKIrHjNCjSlqQ%3D' (2025-07-02) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/e37c943371b73ed87faf33f7583860f81f1d5a48?narHash=sha256-tL42YoNg9y30u7zAqtoGDNdTyXTi8EALDeCB13FtbQA%3D' (2025-06-18) → 'github:ipetkov/crane/aed2020fd3dc26e1e857d4107a5a67a33ab6c1fd?narHash=sha256-smpugNIkmDeicNz301Ll1bD7nFOty97T79m4GUMUczA%3D' (2025-07-03) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569?narHash=sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98%3D' (2025-06-08) → 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01) • Updated input 'flake-lang/flake-parts/nixpkgs-lib': 'github:nix-community/nixpkgs.lib/656a64127e9d791a334452c6b6606d17539476e2?narHash=sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc%3D' (2025-06-01) → 'github:nix-community/nixpkgs.lib/14a40a1d7fb9afa4739275ac642ed7301a9ba1ab?narHash=sha256-urW/Ylk9FIfvXfliA1ywh75yszAbiTEVgpPeinFyVZo%3D' (2025-06-29) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/ca0eacfc006f10a50672bfd7f98fe47bac48a007?narHash=sha256-/HkeoPtq8kZ8Y0czW5wlsQiiQVkjSUMoEH64u0am1Tg%3D' (2025-06-29) → 'github:input-output-hk/haskell.nix/985b5fca8249e8ec9aff76b6bc32256b72a75b6a?narHash=sha256-iHSXufG2RQ4fKN6y5ohtTnYUpMjkoOHs1Q0Q5VyB6zo%3D' (2025-07-06) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/cffd7b4b1dcd6d2902c21af90d05a8a4b215f6f6?narHash=sha256-xxVNDZYJm7xo6BJDViCFwmhkx9oWCoJ4i5Ig3AVyhko%3D' (2025-06-29) → 'github:input-output-hk/hackage.nix/8a3ead1cdb6c08344ac1a1450941b3ecc08ef1cf?narHash=sha256-1cgym/wJCBXvp1nxQaqbl3H5jvQT%2Bk0RYEUrx6ViDzM%3D' (2025-07-06) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/b49ecc7c8418b88fa72e72e026d3614807e883a8?narHash=sha256-ukRriYyvcRC5P1vb0gI37wHohpkgu8mGfu5GA4Q4fvY%3D' (2025-06-29) → 'github:input-output-hk/hackage.nix/67cffdc2c98af79ce29ac705b90a5f5f3f57031c?narHash=sha256-67Bb8MMqih9KEEl7eJI2OApV9yO7Zdl%2BHkKCOeM2hkI%3D' (2025-07-06) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/3f8c717e24953914821f1ddb4797dd768326faa6?narHash=sha256-rmEsCxLWS/rAdIzZPSi0XbrY2BOztBlSHQHgYoXyovU%3D' (2025-06-19) → 'github:input-output-hk/stackage.nix/ebeea9855f42afaca2ddacc4b7225e5294a848ce?narHash=sha256-HSTUhRj6DAP5O91IJGWXCK67SVgVFKjBjcgNoctRMWw%3D' (2025-07-06) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/f63aa2a49720526900fb5943db4123b5b8dcc534?narHash=sha256-WUNoYIZvU9moc5ccwJcF22r%2BbUJXO5dWoRyLPs8bJic%3D' (2025-06-15) → 'github:input-output-hk/iohk-nix/64ca6f4c0c6db283e2ec457c775bce75173fb319?narHash=sha256-rklXDo12dfukaSqcEyiYbze3ffRtTl2/WAAQCWfkGiw%3D' (2025-07-02) • Updated input 'flake-lang/iohk-nix/nixpkgs': 'github:nixos/nixpkgs/55af203d468a6f5032a519cba4f41acf5a74b638?narHash=sha256-BMUWjVWAUdyMWKk0ATMC9H0Bv4qAV/TXwwPUvTiC5IQ%3D' (2023-05-15) → 'github:nixos/nixpkgs/a47938d89bdf8e279ad432bd6a473cf4c430f48c?narHash=sha256-/uHE/AD2qGq4QLigWAnBHiVvpVXB04XAfrOtw8JMv%2BY%3D' (2025-06-28) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/599c15307b9183452da3087c465de726ca969b47?narHash=sha256-Hbli2h1C3pG8nu4wI9qeI1lGFqSkd1uwENRqc9dduJs%3D' (2025-06-29) → 'github:NixOS/nixpkgs/8ac41f32ebc9c9440a8e45680f09dd26ded5bb1c?narHash=sha256-2N8oX0Q9AEVVQsixbAkKqYadKH5JRTrxO7Wi/8FWW94%3D' (2025-07-06) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/90f547b90e73d3c6025e66c5b742d6db51c418c3?narHash=sha256-3QhlpAk2yn%2BExwvRLtaixWsVW1q3OX3KXXe0l8VMLl4%3D' (2025-06-29) → 'github:oxalica/rust-overlay/3ac4f630e375177ea8317e22f5c804156de177e8?narHash=sha256-QR2Rp/41NkA5YxcpvZEKD1S2QE1Pb9U415aK8M/4tJc%3D' (2025-07-06) --- flake.lock | 80 +++++++++++++++++++++++++++--------------------------- 1 file changed, 40 insertions(+), 40 deletions(-) diff --git a/flake.lock b/flake.lock index af4ea12b..02cfcbd3 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1751010214, - "narHash": "sha256-bsyrGouyAlRkApXqnlXnJA/cNGeLo5HW3dDVqhJH17I=", + "lastModified": 1751474634, + "narHash": "sha256-aB46saAQxsJRoqbxLhnSzC5Sbk0TxcdKIrHjNCjSlqQ=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "48a53f17a3b46390586e130705b853f0d73dbf5c", + "rev": "d0da4a4a6b2548405a9e151394ec9a539106e74f", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1750266157, - "narHash": "sha256-tL42YoNg9y30u7zAqtoGDNdTyXTi8EALDeCB13FtbQA=", + "lastModified": 1751562746, + "narHash": "sha256-smpugNIkmDeicNz301Ll1bD7nFOty97T79m4GUMUczA=", "owner": "ipetkov", "repo": "crane", - "rev": "e37c943371b73ed87faf33f7583860f81f1d5a48", + "rev": "aed2020fd3dc26e1e857d4107a5a67a33ab6c1fd", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1751244000, - "narHash": "sha256-/wRqj+BpAwpa1nB4dL/z0Ktr3i8GjmohttDbRdH7US4=", + "lastModified": 1751844964, + "narHash": "sha256-Rvetcf2GzM7BCOXe3H0BQafcfQqHmtgj0puRC03yZoE=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "d1e3233c438a1609ad6d88874cb483b562be99a9", + "rev": "662cca03692a7501394cca48b446411d0a778115", "type": "github" }, "original": { @@ -1879,11 +1879,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1749398372, - "narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=", + "lastModified": 1751413152, + "narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569", + "rev": "77826244401ea9de6e3bac47c2db46005e1f30b5", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1751156970, - "narHash": "sha256-ukRriYyvcRC5P1vb0gI37wHohpkgu8mGfu5GA4Q4fvY=", + "lastModified": 1751761748, + "narHash": "sha256-67Bb8MMqih9KEEl7eJI2OApV9yO7Zdl+HkKCOeM2hkI=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "b49ecc7c8418b88fa72e72e026d3614807e883a8", + "rev": "67cffdc2c98af79ce29ac705b90a5f5f3f57031c", "type": "github" }, "original": { @@ -2476,11 +2476,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1751156979, - "narHash": "sha256-xxVNDZYJm7xo6BJDViCFwmhkx9oWCoJ4i5Ig3AVyhko=", + "lastModified": 1751762534, + "narHash": "sha256-1cgym/wJCBXvp1nxQaqbl3H5jvQT+k0RYEUrx6ViDzM=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "cffd7b4b1dcd6d2902c21af90d05a8a4b215f6f6", + "rev": "8a3ead1cdb6c08344ac1a1450941b3ecc08ef1cf", "type": "github" }, "original": { @@ -2531,11 +2531,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1751158347, - "narHash": "sha256-/HkeoPtq8kZ8Y0czW5wlsQiiQVkjSUMoEH64u0am1Tg=", + "lastModified": 1751763144, + "narHash": "sha256-iHSXufG2RQ4fKN6y5ohtTnYUpMjkoOHs1Q0Q5VyB6zo=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "ca0eacfc006f10a50672bfd7f98fe47bac48a007", + "rev": "985b5fca8249e8ec9aff76b6bc32256b72a75b6a", "type": "github" }, "original": { @@ -3892,11 +3892,11 @@ "sodium": "sodium_5" }, "locked": { - "lastModified": 1750025513, - "narHash": "sha256-WUNoYIZvU9moc5ccwJcF22r+bUJXO5dWoRyLPs8bJic=", + "lastModified": 1751421193, + "narHash": "sha256-rklXDo12dfukaSqcEyiYbze3ffRtTl2/WAAQCWfkGiw=", "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "f63aa2a49720526900fb5943db4123b5b8dcc534", + "rev": "64ca6f4c0c6db283e2ec457c775bce75173fb319", "type": "github" }, "original": { @@ -5263,11 +5263,11 @@ }, "nixpkgs-lib_2": { "locked": { - "lastModified": 1748740939, - "narHash": "sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc=", + "lastModified": 1751159883, + "narHash": "sha256-urW/Ylk9FIfvXfliA1ywh75yszAbiTEVgpPeinFyVZo=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "656a64127e9d791a334452c6b6606d17539476e2", + "rev": "14a40a1d7fb9afa4739275ac642ed7301a9ba1ab", "type": "github" }, "original": { @@ -5642,27 +5642,27 @@ }, "nixpkgs_23": { "locked": { - "lastModified": 1684171562, - "narHash": "sha256-BMUWjVWAUdyMWKk0ATMC9H0Bv4qAV/TXwwPUvTiC5IQ=", + "lastModified": 1751071626, + "narHash": "sha256-/uHE/AD2qGq4QLigWAnBHiVvpVXB04XAfrOtw8JMv+Y=", "owner": "nixos", "repo": "nixpkgs", - "rev": "55af203d468a6f5032a519cba4f41acf5a74b638", + "rev": "a47938d89bdf8e279ad432bd6a473cf4c430f48c", "type": "github" }, "original": { "owner": "nixos", - "ref": "release-22.11", + "ref": "release-25.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_24": { "locked": { - "lastModified": 1751200386, - "narHash": "sha256-Hbli2h1C3pG8nu4wI9qeI1lGFqSkd1uwENRqc9dduJs=", + "lastModified": 1751806065, + "narHash": "sha256-2N8oX0Q9AEVVQsixbAkKqYadKH5JRTrxO7Wi/8FWW94=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "599c15307b9183452da3087c465de726ca969b47", + "rev": "8ac41f32ebc9c9440a8e45680f09dd26ded5bb1c", "type": "github" }, "original": { @@ -6227,11 +6227,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1751165203, - "narHash": "sha256-3QhlpAk2yn+ExwvRLtaixWsVW1q3OX3KXXe0l8VMLl4=", + "lastModified": 1751769931, + "narHash": "sha256-QR2Rp/41NkA5YxcpvZEKD1S2QE1Pb9U415aK8M/4tJc=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "90f547b90e73d3c6025e66c5b742d6db51c418c3", + "rev": "3ac4f630e375177ea8317e22f5c804156de177e8", "type": "github" }, "original": { @@ -6477,11 +6477,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1750292027, - "narHash": "sha256-rmEsCxLWS/rAdIzZPSi0XbrY2BOztBlSHQHgYoXyovU=", + "lastModified": 1751760897, + "narHash": "sha256-HSTUhRj6DAP5O91IJGWXCK67SVgVFKjBjcgNoctRMWw=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "3f8c717e24953914821f1ddb4797dd768326faa6", + "rev": "ebeea9855f42afaca2ddacc4b7225e5294a848ce", "type": "github" }, "original": { From 2208e803d03fcc9cd6658bdbb322e35245170a9a Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 20 Jul 2025 12:45:32 +0000 Subject: [PATCH 86/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'hci-effects': 'github:hercules-ci/hercules-ci-effects/231726642197817d20310b9d39dd4afb9e899489?narHash=sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk%3D' (2025-05-23) → 'github:hercules-ci/hercules-ci-effects/5f2e09654b2e70ba643e41609d9f9b6640f22113?narHash=sha256-CNBgr4OZSuklGtNOa9CnTNo9%2BXceqn/EDAC1Tc43fH8%3D' (2025-07-15) • Updated input 'hci-effects/flake-parts': 'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5?narHash=sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY%3D' (2025-04-01) → 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01) • Updated input 'hci-effects/nixpkgs': 'github:NixOS/nixpkgs/adaa24fbf46737f3f1b5497bf64bae750f82942e?narHash=sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY%3D' (2025-05-13) → 'github:NixOS/nixpkgs/9807714d6944a957c2e036f84b0ff8caf9930bc0?narHash=sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X%2BxgOL0%3D' (2025-07-08) --- flake.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 02cfcbd3..c2f55124 100644 --- a/flake.lock +++ b/flake.lock @@ -1921,11 +1921,11 @@ ] }, "locked": { - "lastModified": 1743550720, - "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", + "lastModified": 1751413152, + "narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "c621e8422220273271f52058f618c94e405bb0f5", + "rev": "77826244401ea9de6e3bac47c2db46005e1f30b5", "type": "github" }, "original": { @@ -2851,11 +2851,11 @@ "nixpkgs": "nixpkgs_27" }, "locked": { - "lastModified": 1748000383, - "narHash": "sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk=", + "lastModified": 1752595130, + "narHash": "sha256-CNBgr4OZSuklGtNOa9CnTNo9+Xceqn/EDAC1Tc43fH8=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "231726642197817d20310b9d39dd4afb9e899489", + "rev": "5f2e09654b2e70ba643e41609d9f9b6640f22113", "type": "github" }, "original": { @@ -5705,11 +5705,11 @@ }, "nixpkgs_27": { "locked": { - "lastModified": 1747179050, - "narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=", + "lastModified": 1751984180, + "narHash": "sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X+xgOL0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e", + "rev": "9807714d6944a957c2e036f84b0ff8caf9930bc0", "type": "github" }, "original": { From d26f5df62d962d0e1cf15490e49e05a5c4843a26 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 3 Aug 2025 12:45:31 +0000 Subject: [PATCH 87/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/662cca03692a7501394cca48b446411d0a778115?narHash=sha256-Rvetcf2GzM7BCOXe3H0BQafcfQqHmtgj0puRC03yZoE%3D' (2025-07-06) → 'github:mlabs-haskell/flake-lang.nix/6b8aceedaba66bfe47bc121ad6c8379913841924?narHash=sha256-PCOoUy5oq6WpF8s91ni5qQ5RZuQU1z9MR8tHAjUCxm4%3D' (2025-08-02) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/d0da4a4a6b2548405a9e151394ec9a539106e74f?narHash=sha256-aB46saAQxsJRoqbxLhnSzC5Sbk0TxcdKIrHjNCjSlqQ%3D' (2025-07-02) → 'github:input-output-hk/cardano-haskell-packages/d37f1bb54e58507c41fbdc946f951df2db2f1f72?narHash=sha256-5vmSiw2m%2Brpng3KueKDLluUWj1iqLHXYCCVQzFbuK4g%3D' (2025-07-23) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/aed2020fd3dc26e1e857d4107a5a67a33ab6c1fd?narHash=sha256-smpugNIkmDeicNz301Ll1bD7nFOty97T79m4GUMUczA%3D' (2025-07-03) → 'github:ipetkov/crane/f35a3372d070c9e9ccb63ba7ce347f0634ddf3d2?narHash=sha256-tzWa2kmTEN69OEMhxFy%2BJ2oWSvZP5QhEgXp3TROOzl0%3D' (2025-07-24) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01) → 'github:hercules-ci/flake-parts/644e0fc48951a860279da645ba77fe4a6e814c5e?narHash=sha256-TVcTNvOeWWk1DXljFxVRp%2BE0tzG1LhrVjOGGoMHuXio%3D' (2025-07-21) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/985b5fca8249e8ec9aff76b6bc32256b72a75b6a?narHash=sha256-iHSXufG2RQ4fKN6y5ohtTnYUpMjkoOHs1Q0Q5VyB6zo%3D' (2025-07-06) → 'github:input-output-hk/haskell.nix/a4a27c45d4dc06c0fd12a90b91227eb58d7bbfa4?narHash=sha256-1O8Eh05vOiKYLCWlNhMmbwpL17MNxQ5dV49FME6SEJY%3D' (2025-07-27) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/8a3ead1cdb6c08344ac1a1450941b3ecc08ef1cf?narHash=sha256-1cgym/wJCBXvp1nxQaqbl3H5jvQT%2Bk0RYEUrx6ViDzM%3D' (2025-07-06) → 'github:input-output-hk/hackage.nix/090b8b7dde65c65af8dfe144c39f78d377f9e28f?narHash=sha256-mysFl691ktNUa0yBd%2B2wkZLizl1ek9LB5n%2BtTE9n8y8%3D' (2025-07-27) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/67cffdc2c98af79ce29ac705b90a5f5f3f57031c?narHash=sha256-67Bb8MMqih9KEEl7eJI2OApV9yO7Zdl%2BHkKCOeM2hkI%3D' (2025-07-06) → 'github:input-output-hk/hackage.nix/1c928b840c6f732b1730d08243b98d57b056951d?narHash=sha256-XkTlWKmM2NrpKZFnfF5ZjwjZCY3BbwsACKvn/7No4m8%3D' (2025-07-27) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/ebeea9855f42afaca2ddacc4b7225e5294a848ce?narHash=sha256-HSTUhRj6DAP5O91IJGWXCK67SVgVFKjBjcgNoctRMWw%3D' (2025-07-06) → 'github:input-output-hk/stackage.nix/5e49f74d2c508b615b8f9e5a6680425dea67985e?narHash=sha256-n0vID6%2BXF73mfY34leyL665XhiD6%2B8kz88%2BQdnu21Vw%3D' (2025-07-27) • Updated input 'flake-lang/hci-effects': 'github:hercules-ci/hercules-ci-effects/231726642197817d20310b9d39dd4afb9e899489?narHash=sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk%3D' (2025-05-23) → 'github:hercules-ci/hercules-ci-effects/5f2e09654b2e70ba643e41609d9f9b6640f22113?narHash=sha256-CNBgr4OZSuklGtNOa9CnTNo9%2BXceqn/EDAC1Tc43fH8%3D' (2025-07-15) • Updated input 'flake-lang/hci-effects/flake-parts': 'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5?narHash=sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY%3D' (2025-04-01) → 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01) • Updated input 'flake-lang/hci-effects/nixpkgs': 'github:NixOS/nixpkgs/adaa24fbf46737f3f1b5497bf64bae750f82942e?narHash=sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY%3D' (2025-05-13) → 'github:NixOS/nixpkgs/9807714d6944a957c2e036f84b0ff8caf9930bc0?narHash=sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X%2BxgOL0%3D' (2025-07-08) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/8ac41f32ebc9c9440a8e45680f09dd26ded5bb1c?narHash=sha256-2N8oX0Q9AEVVQsixbAkKqYadKH5JRTrxO7Wi/8FWW94%3D' (2025-07-06) → 'github:NixOS/nixpkgs/6ce8f2798567138f2c442c64baf793587c2dbc62?narHash=sha256-OiLVh0yt2wZUjxUWVd9j/j2o951LxH0tW1xekmcUWwE%3D' (2025-07-27) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/3ac4f630e375177ea8317e22f5c804156de177e8?narHash=sha256-QR2Rp/41NkA5YxcpvZEKD1S2QE1Pb9U415aK8M/4tJc%3D' (2025-07-06) → 'github:oxalica/rust-overlay/69dfe029679e73b8d159011c9547f6148a85ca6b?narHash=sha256-i147iFSy4K4PJvID%2BzoszLbRi2o%2BYV8AyG4TUiDQ3%2BI%3D' (2025-07-27) --- flake.lock | 78 +++++++++++++++++++++++++++--------------------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/flake.lock b/flake.lock index c2f55124..46d7e0a4 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1751474634, - "narHash": "sha256-aB46saAQxsJRoqbxLhnSzC5Sbk0TxcdKIrHjNCjSlqQ=", + "lastModified": 1753277336, + "narHash": "sha256-5vmSiw2m+rpng3KueKDLluUWj1iqLHXYCCVQzFbuK4g=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "d0da4a4a6b2548405a9e151394ec9a539106e74f", + "rev": "d37f1bb54e58507c41fbdc946f951df2db2f1f72", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1751562746, - "narHash": "sha256-smpugNIkmDeicNz301Ll1bD7nFOty97T79m4GUMUczA=", + "lastModified": 1753316655, + "narHash": "sha256-tzWa2kmTEN69OEMhxFy+J2oWSvZP5QhEgXp3TROOzl0=", "owner": "ipetkov", "repo": "crane", - "rev": "aed2020fd3dc26e1e857d4107a5a67a33ab6c1fd", + "rev": "f35a3372d070c9e9ccb63ba7ce347f0634ddf3d2", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1751844964, - "narHash": "sha256-Rvetcf2GzM7BCOXe3H0BQafcfQqHmtgj0puRC03yZoE=", + "lastModified": 1754098639, + "narHash": "sha256-PCOoUy5oq6WpF8s91ni5qQ5RZuQU1z9MR8tHAjUCxm4=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "662cca03692a7501394cca48b446411d0a778115", + "rev": "6b8aceedaba66bfe47bc121ad6c8379913841924", "type": "github" }, "original": { @@ -1879,11 +1879,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1751413152, - "narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=", + "lastModified": 1753121425, + "narHash": "sha256-TVcTNvOeWWk1DXljFxVRp+E0tzG1LhrVjOGGoMHuXio=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "77826244401ea9de6e3bac47c2db46005e1f30b5", + "rev": "644e0fc48951a860279da645ba77fe4a6e814c5e", "type": "github" }, "original": { @@ -1901,11 +1901,11 @@ ] }, "locked": { - "lastModified": 1743550720, - "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", + "lastModified": 1751413152, + "narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "c621e8422220273271f52058f618c94e405bb0f5", + "rev": "77826244401ea9de6e3bac47c2db46005e1f30b5", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1751761748, - "narHash": "sha256-67Bb8MMqih9KEEl7eJI2OApV9yO7Zdl+HkKCOeM2hkI=", + "lastModified": 1753576215, + "narHash": "sha256-XkTlWKmM2NrpKZFnfF5ZjwjZCY3BbwsACKvn/7No4m8=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "67cffdc2c98af79ce29ac705b90a5f5f3f57031c", + "rev": "1c928b840c6f732b1730d08243b98d57b056951d", "type": "github" }, "original": { @@ -2476,11 +2476,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1751762534, - "narHash": "sha256-1cgym/wJCBXvp1nxQaqbl3H5jvQT+k0RYEUrx6ViDzM=", + "lastModified": 1753576225, + "narHash": "sha256-mysFl691ktNUa0yBd+2wkZLizl1ek9LB5n+tTE9n8y8=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "8a3ead1cdb6c08344ac1a1450941b3ecc08ef1cf", + "rev": "090b8b7dde65c65af8dfe144c39f78d377f9e28f", "type": "github" }, "original": { @@ -2531,11 +2531,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1751763144, - "narHash": "sha256-iHSXufG2RQ4fKN6y5ohtTnYUpMjkoOHs1Q0Q5VyB6zo=", + "lastModified": 1753577548, + "narHash": "sha256-1O8Eh05vOiKYLCWlNhMmbwpL17MNxQ5dV49FME6SEJY=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "985b5fca8249e8ec9aff76b6bc32256b72a75b6a", + "rev": "a4a27c45d4dc06c0fd12a90b91227eb58d7bbfa4", "type": "github" }, "original": { @@ -2832,11 +2832,11 @@ "nixpkgs": "nixpkgs_22" }, "locked": { - "lastModified": 1748000383, - "narHash": "sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk=", + "lastModified": 1752595130, + "narHash": "sha256-CNBgr4OZSuklGtNOa9CnTNo9+Xceqn/EDAC1Tc43fH8=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "231726642197817d20310b9d39dd4afb9e899489", + "rev": "5f2e09654b2e70ba643e41609d9f9b6640f22113", "type": "github" }, "original": { @@ -5626,11 +5626,11 @@ }, "nixpkgs_22": { "locked": { - "lastModified": 1747179050, - "narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=", + "lastModified": 1751984180, + "narHash": "sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X+xgOL0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e", + "rev": "9807714d6944a957c2e036f84b0ff8caf9930bc0", "type": "github" }, "original": { @@ -5658,11 +5658,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1751806065, - "narHash": "sha256-2N8oX0Q9AEVVQsixbAkKqYadKH5JRTrxO7Wi/8FWW94=", + "lastModified": 1753620525, + "narHash": "sha256-OiLVh0yt2wZUjxUWVd9j/j2o951LxH0tW1xekmcUWwE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "8ac41f32ebc9c9440a8e45680f09dd26ded5bb1c", + "rev": "6ce8f2798567138f2c442c64baf793587c2dbc62", "type": "github" }, "original": { @@ -6227,11 +6227,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1751769931, - "narHash": "sha256-QR2Rp/41NkA5YxcpvZEKD1S2QE1Pb9U415aK8M/4tJc=", + "lastModified": 1753584741, + "narHash": "sha256-i147iFSy4K4PJvID+zoszLbRi2o+YV8AyG4TUiDQ3+I=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "3ac4f630e375177ea8317e22f5c804156de177e8", + "rev": "69dfe029679e73b8d159011c9547f6148a85ca6b", "type": "github" }, "original": { @@ -6477,11 +6477,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1751760897, - "narHash": "sha256-HSTUhRj6DAP5O91IJGWXCK67SVgVFKjBjcgNoctRMWw=", + "lastModified": 1753575341, + "narHash": "sha256-n0vID6+XF73mfY34leyL665XhiD6+8kz88+Qdnu21Vw=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "ebeea9855f42afaca2ddacc4b7225e5294a848ce", + "rev": "5e49f74d2c508b615b8f9e5a6680425dea67985e", "type": "github" }, "original": { From 25d97fea0435c272773b97a6e63a2cb4dd6f33f4 Mon Sep 17 00:00:00 2001 From: Szabo Gergely Date: Mon, 4 Aug 2025 18:12:48 +0900 Subject: [PATCH 88/94] Update cargo dependencies --- plutus-ledger-api/Cargo.lock | 270 ++++++++++++++++++++++++----------- plutus-ledger-api/Cargo.toml | 6 +- 2 files changed, 187 insertions(+), 89 deletions(-) diff --git a/plutus-ledger-api/Cargo.lock b/plutus-ledger-api/Cargo.lock index fe8ae379..61c70082 100644 --- a/plutus-ledger-api/Cargo.lock +++ b/plutus-ledger-api/Cargo.lock @@ -37,9 +37,9 @@ checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" [[package]] name = "autocfg" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "bech32" @@ -85,9 +85,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.17.0" +version = "3.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" +checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" [[package]] name = "cardano-serialization-lib" @@ -113,7 +113,7 @@ dependencies = [ "num-derive", "num-integer", "num-traits", - "rand", + "rand 0.8.5", "rand_os", "schemars", "serde", @@ -131,18 +131,18 @@ checksum = "089a0261d1bc59e54e8e11860031efd88593f0e61b921172c474f1f38c2f2d3c" [[package]] name = "cc" -version = "1.2.23" +version = "1.2.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4ac86a9e5bc1e2b3449ab9d7d3a6a405e3d1bb28d7b9be8614f55846ae3766" +checksum = "c3a42d84bb6b69d3a8b3eaacf0d88f179e1929695e1ad012b6cf64d9caaa5fd2" dependencies = [ "shlex", ] [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" [[package]] name = "chrono" @@ -226,9 +226,9 @@ checksum = "8975ffdaa0ef3661bfe02dbdcc06c9f829dfafe6a3c474de366a8d5e44276921" [[package]] name = "dyn-clone" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" [[package]] name = "ed25519-bip32" @@ -253,12 +253,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18" +checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" dependencies = [ "libc", - "windows-sys", + "windows-sys 0.60.2", ] [[package]] @@ -298,7 +298,7 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi 0.11.1+wasi-snapshot-preview1", "wasm-bindgen", ] @@ -346,9 +346,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.3" +version = "0.15.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" +checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" [[package]] name = "hashlink" @@ -397,12 +397,12 @@ checksum = "90f97a5f38dd3ccfbe7aa80f4a0c00930f21b922c74195be0201c51028f22dcf" [[package]] name = "indexmap" -version = "2.9.0" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" +checksum = "fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661" dependencies = [ "equivalent", - "hashbrown 0.15.3", + "hashbrown 0.15.4", ] [[package]] @@ -474,9 +474,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.172" +version = "0.2.174" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" +checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776" [[package]] name = "linked-hash-map" @@ -498,9 +498,9 @@ checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" [[package]] name = "memchr" -version = "2.7.4" +version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" [[package]] name = "minimal-lexical" @@ -623,7 +623,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "plutus-ledger-api" -version = "3.0.3" +version = "3.0.4" dependencies = [ "anyhow", "cardano-serialization-lib", @@ -673,17 +673,17 @@ dependencies = [ [[package]] name = "proptest" -version = "1.6.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" +checksum = "6fcdab19deb5195a31cf7726a210015ff1496ba1464fd42cb4f537b8b01b471f" dependencies = [ "bit-set", "bit-vec", "bitflags 2.9.1", "lazy_static", "num-traits", - "rand", - "rand_chacha", + "rand 0.9.2", + "rand_chacha 0.9.0", "rand_xorshift", "regex-syntax", "rusty-fork", @@ -708,9 +708,9 @@ dependencies = [ [[package]] name = "r-efi" -version = "5.2.0" +version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" [[package]] name = "rand" @@ -719,10 +719,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha", + "rand_chacha 0.3.1", "rand_core 0.6.4", ] +[[package]] +name = "rand" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" +dependencies = [ + "rand_chacha 0.9.0", + "rand_core 0.9.3", +] + [[package]] name = "rand_chacha" version = "0.3.1" @@ -733,6 +743,16 @@ dependencies = [ "rand_core 0.6.4", ] +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core 0.9.3", +] + [[package]] name = "rand_core" version = "0.3.1" @@ -757,6 +777,15 @@ dependencies = [ "getrandom 0.2.16", ] +[[package]] +name = "rand_core" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" +dependencies = [ + "getrandom 0.3.3", +] + [[package]] name = "rand_os" version = "0.1.3" @@ -774,11 +803,11 @@ dependencies = [ [[package]] name = "rand_xorshift" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +checksum = "513962919efc330f829edb2535844d1b912b0fbe2ca165d613e4e8788bb05a5a" dependencies = [ - "rand_core 0.6.4", + "rand_core 0.9.3", ] [[package]] @@ -798,15 +827,15 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rustix" -version = "1.0.7" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" +checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8" dependencies = [ "bitflags 2.9.1", "errno", "libc", "linux-raw-sys", - "windows-sys", + "windows-sys 0.60.2", ] [[package]] @@ -895,9 +924,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.140" +version = "1.0.142" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" +checksum = "030fedb782600dcbd6f02d479bf0d817ac3bb40d644745b769d6a96bc3afc5a7" dependencies = [ "itoa", "memchr", @@ -907,9 +936,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.8" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" +checksum = "40734c41988f7306bb04f0ecf60ec0f3f1caa34290e4e8ea471dcd3346483b83" dependencies = [ "serde", ] @@ -935,9 +964,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "syn" -version = "2.0.101" +version = "2.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" +checksum = "17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40" dependencies = [ "proc-macro2", "quote", @@ -960,7 +989,7 @@ dependencies = [ "getrandom 0.3.3", "once_cell", "rustix", - "windows-sys", + "windows-sys 0.59.0", ] [[package]] @@ -994,50 +1023,48 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.22" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" +checksum = "41ae868b5a0f67631c14589f7e250c1ea2c574ee5ba21c6c8dd4b1485705a5a1" dependencies = [ + "indexmap", "serde", "serde_spanned", "toml_datetime", - "toml_edit", + "toml_parser", + "toml_writer", + "winnow", ] [[package]] name = "toml_datetime" -version = "0.6.9" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" +checksum = "bade1c3e902f58d73d3f294cd7f20391c1cb2fbcb643b73566bc773971df91e3" dependencies = [ "serde", ] [[package]] -name = "toml_edit" -version = "0.22.26" +name = "toml_parser" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" +checksum = "97200572db069e74c512a14117b296ba0a80a30123fbbb5aa1f4a348f639ca30" dependencies = [ - "indexmap", - "serde", - "serde_spanned", - "toml_datetime", - "toml_write", "winnow", ] [[package]] -name = "toml_write" -version = "0.1.1" +name = "toml_writer" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" +checksum = "fcc842091f2def52017664b53082ecbbeb5c7731092bad69d2c63050401dfd64" [[package]] name = "trybuild" -version = "1.0.105" +version = "1.0.110" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c9bf9513a2f4aeef5fdac8677d7d349c79fdbcc03b9c86da6e9d254f1e43be2" +checksum = "32e257d7246e7a9fd015fb0b28b330a8d4142151a33f03e6a497754f4b1f6a8e" dependencies = [ "dissimilar", "glob", @@ -1101,9 +1128,9 @@ dependencies = [ [[package]] name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" +version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" @@ -1190,7 +1217,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys", + "windows-sys 0.59.0", ] [[package]] @@ -1236,9 +1263,9 @@ dependencies = [ [[package]] name = "windows-link" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" [[package]] name = "windows-result" @@ -1264,7 +1291,16 @@ version = "0.59.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" dependencies = [ - "windows-targets", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.3", ] [[package]] @@ -1273,14 +1309,31 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_gnullvm", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm 0.52.6", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.53.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" +dependencies = [ + "windows-link", + "windows_aarch64_gnullvm 0.53.0", + "windows_aarch64_msvc 0.53.0", + "windows_i686_gnu 0.53.0", + "windows_i686_gnullvm 0.53.0", + "windows_i686_msvc 0.53.0", + "windows_x86_64_gnu 0.53.0", + "windows_x86_64_gnullvm 0.53.0", + "windows_x86_64_msvc 0.53.0", ] [[package]] @@ -1289,56 +1342,101 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" + [[package]] name = "windows_aarch64_msvc" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" + [[package]] name = "windows_i686_gnu" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" +[[package]] +name = "windows_i686_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" + [[package]] name = "windows_i686_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" + [[package]] name = "windows_i686_msvc" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" +[[package]] +name = "windows_i686_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" + [[package]] name = "windows_x86_64_gnu" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" + [[package]] name = "windows_x86_64_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" + [[package]] name = "windows_x86_64_msvc" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" + [[package]] name = "winnow" -version = "0.7.10" +version = "0.7.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" -dependencies = [ - "memchr", -] +checksum = "f3edebf492c8125044983378ecb5766203ad3b4c2f7a922bd7dd207f6d443e95" [[package]] name = "wit-bindgen-rt" @@ -1357,18 +1455,18 @@ checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" [[package]] name = "zerocopy" -version = "0.8.25" +version = "0.8.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" +checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.25" +version = "0.8.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" +checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" dependencies = [ "proc-macro2", "quote", diff --git a/plutus-ledger-api/Cargo.toml b/plutus-ledger-api/Cargo.toml index 5aa4c348..390b842a 100644 --- a/plutus-ledger-api/Cargo.toml +++ b/plutus-ledger-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "plutus-ledger-api" -version = "3.0.3" +version = "3.0.4" edition = "2021" license = "Apache-2.0" description = "Plutus Ledger types and utilities implemented in Rust" @@ -9,9 +9,9 @@ repository = "https://github.com/mlabs-haskell/plutus-ledger-api-rust" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -proptest = "^1.6.0" +proptest = "^1.7.0" lbr-prelude = { version = "0.1.3", optional = true } -serde_json = { version = "1.0.140", optional = true } +serde_json = { version = "1.0.142", optional = true } num-bigint = "~0.4" serde = { version = "^1.0.219", features = ["derive"], optional = true } data-encoding = "^2.9.0" From f935fd90b85e62dd453a22a748f19e6d5513fda6 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 17 Aug 2025 12:46:39 +0000 Subject: [PATCH 89/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/6b8aceedaba66bfe47bc121ad6c8379913841924?narHash=sha256-PCOoUy5oq6WpF8s91ni5qQ5RZuQU1z9MR8tHAjUCxm4%3D' (2025-08-02) → 'github:mlabs-haskell/flake-lang.nix/5e6795f9fcacecc8786f84277b412742f5e6c37d?narHash=sha256-5bP4SjY6s7yt0l2NykbuJsZT%2Brfglt8fXbvUXCyljXI%3D' (2025-08-12) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/d37f1bb54e58507c41fbdc946f951df2db2f1f72?narHash=sha256-5vmSiw2m%2Brpng3KueKDLluUWj1iqLHXYCCVQzFbuK4g%3D' (2025-07-23) → 'github:input-output-hk/cardano-haskell-packages/8d401eefedf9b1a8703594b3d33165fdb7ee8f69?narHash=sha256-7TP8sGtytiHNWdphUZ2j44oy/4tCEqq19BdE7nc1LB8%3D' (2025-07-30) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/f35a3372d070c9e9ccb63ba7ce347f0634ddf3d2?narHash=sha256-tzWa2kmTEN69OEMhxFy%2BJ2oWSvZP5QhEgXp3TROOzl0%3D' (2025-07-24) → 'github:ipetkov/crane/1eb37955571aed513cc5fe267fda0c001e9ffec9?narHash=sha256-IoNvRsps/pMk0CTH1y/aXwsEHjqxfFns3uFG/xMDR9E%3D' (2025-08-02) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/644e0fc48951a860279da645ba77fe4a6e814c5e?narHash=sha256-TVcTNvOeWWk1DXljFxVRp%2BE0tzG1LhrVjOGGoMHuXio%3D' (2025-07-21) → 'github:hercules-ci/flake-parts/67df8c627c2c39c41dbec76a1f201929929ab0bd?narHash=sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM%3D' (2025-08-01) • Updated input 'flake-lang/flake-parts/nixpkgs-lib': 'github:nix-community/nixpkgs.lib/14a40a1d7fb9afa4739275ac642ed7301a9ba1ab?narHash=sha256-urW/Ylk9FIfvXfliA1ywh75yszAbiTEVgpPeinFyVZo%3D' (2025-06-29) → 'github:nix-community/nixpkgs.lib/0f36c44e01a6129be94e3ade315a5883f0228a6e?narHash=sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA%3D' (2025-07-27) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/a4a27c45d4dc06c0fd12a90b91227eb58d7bbfa4?narHash=sha256-1O8Eh05vOiKYLCWlNhMmbwpL17MNxQ5dV49FME6SEJY%3D' (2025-07-27) → 'github:input-output-hk/haskell.nix/3c4414748d1a90122962a5ad6a72a319613892ec?narHash=sha256-WqmSaDVmxaJnp7DXboTaiPHOnLSoKX/%2BtpgQTcx34bE%3D' (2025-08-03) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/090b8b7dde65c65af8dfe144c39f78d377f9e28f?narHash=sha256-mysFl691ktNUa0yBd%2B2wkZLizl1ek9LB5n%2BtTE9n8y8%3D' (2025-07-27) → 'github:input-output-hk/hackage.nix/5e8e82f42258d49eae19fffdb5a11ab1cbfabb03?narHash=sha256-AO1D9kK/tBaCakTqneouDc5bFSHoa4jArYA1/Vxyc1c%3D' (2025-08-03) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/1c928b840c6f732b1730d08243b98d57b056951d?narHash=sha256-XkTlWKmM2NrpKZFnfF5ZjwjZCY3BbwsACKvn/7No4m8%3D' (2025-07-27) → 'github:input-output-hk/hackage.nix/e59292859c69c6ae7baa8b883fc007ba1b546c82?narHash=sha256-hOhswJq2XXoMdmPACrRQgOkhMUF3KcuiteibhLdckPk%3D' (2025-08-03) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/5e49f74d2c508b615b8f9e5a6680425dea67985e?narHash=sha256-n0vID6%2BXF73mfY34leyL665XhiD6%2B8kz88%2BQdnu21Vw%3D' (2025-07-27) → 'github:input-output-hk/stackage.nix/a7e9e82031c37896f71689d6d66ce9fbc18c0180?narHash=sha256-hkHG3EjjxAqADAYURA6p3jc7xb93/VOoKVazInc5FqU%3D' (2025-08-03) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/6ce8f2798567138f2c442c64baf793587c2dbc62?narHash=sha256-OiLVh0yt2wZUjxUWVd9j/j2o951LxH0tW1xekmcUWwE%3D' (2025-07-27) → 'github:NixOS/nixpkgs/66f60a89799bcdfaac5e109fee255b1213636fb6?narHash=sha256-pVCtipd3mLNLzcyv5XauVRchwrMguylOoTxRsuwiY6U%3D' (2025-08-03) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/69dfe029679e73b8d159011c9547f6148a85ca6b?narHash=sha256-i147iFSy4K4PJvID%2BzoszLbRi2o%2BYV8AyG4TUiDQ3%2BI%3D' (2025-07-27) → 'github:oxalica/rust-overlay/c582ff7f0d8a7ea689ae836dfb1773f1814f472a?narHash=sha256-fstu5eb30UYwsxow0aQqkzxNxGn80UZjyehQVNVHuBk%3D' (2025-08-03) • Updated input 'hci-effects': 'github:hercules-ci/hercules-ci-effects/5f2e09654b2e70ba643e41609d9f9b6640f22113?narHash=sha256-CNBgr4OZSuklGtNOa9CnTNo9%2BXceqn/EDAC1Tc43fH8%3D' (2025-07-15) → 'github:hercules-ci/hercules-ci-effects/99e03e72e3f7e13506f80ef9ebaedccb929d84d0?narHash=sha256-AavrbMltJKcC2Fx0lfJoZfmy7g87ebXU0ddVenhajLA%3D' (2025-08-15) • Updated input 'hci-effects/flake-parts': 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01) → 'github:hercules-ci/flake-parts/af66ad14b28a127c5c0f3bbb298218fc63528a18?narHash=sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8%3D' (2025-08-06) • Updated input 'hci-effects/nixpkgs': 'github:NixOS/nixpkgs/9807714d6944a957c2e036f84b0ff8caf9930bc0?narHash=sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X%2BxgOL0%3D' (2025-07-08) → 'github:NixOS/nixpkgs/005433b926e16227259a1843015b5b2b7f7d1fc3?narHash=sha256-IVft239Bc8p8Dtvf7UAACMG5P3ZV%2B3/aO28gXpGtMXI%3D' (2025-08-12) --- flake.lock | 84 +++++++++++++++++++++++++++--------------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/flake.lock b/flake.lock index 46d7e0a4..d4bf5f46 100644 --- a/flake.lock +++ b/flake.lock @@ -747,11 +747,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1753277336, - "narHash": "sha256-5vmSiw2m+rpng3KueKDLluUWj1iqLHXYCCVQzFbuK4g=", + "lastModified": 1753894642, + "narHash": "sha256-7TP8sGtytiHNWdphUZ2j44oy/4tCEqq19BdE7nc1LB8=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "d37f1bb54e58507c41fbdc946f951df2db2f1f72", + "rev": "8d401eefedf9b1a8703594b3d33165fdb7ee8f69", "type": "github" }, "original": { @@ -1005,11 +1005,11 @@ }, "crane": { "locked": { - "lastModified": 1753316655, - "narHash": "sha256-tzWa2kmTEN69OEMhxFy+J2oWSvZP5QhEgXp3TROOzl0=", + "lastModified": 1754157397, + "narHash": "sha256-IoNvRsps/pMk0CTH1y/aXwsEHjqxfFns3uFG/xMDR9E=", "owner": "ipetkov", "repo": "crane", - "rev": "f35a3372d070c9e9ccb63ba7ce347f0634ddf3d2", + "rev": "1eb37955571aed513cc5fe267fda0c001e9ffec9", "type": "github" }, "original": { @@ -1821,11 +1821,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1754098639, - "narHash": "sha256-PCOoUy5oq6WpF8s91ni5qQ5RZuQU1z9MR8tHAjUCxm4=", + "lastModified": 1754966971, + "narHash": "sha256-5bP4SjY6s7yt0l2NykbuJsZT+rfglt8fXbvUXCyljXI=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "6b8aceedaba66bfe47bc121ad6c8379913841924", + "rev": "5e6795f9fcacecc8786f84277b412742f5e6c37d", "type": "github" }, "original": { @@ -1879,11 +1879,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1753121425, - "narHash": "sha256-TVcTNvOeWWk1DXljFxVRp+E0tzG1LhrVjOGGoMHuXio=", + "lastModified": 1754091436, + "narHash": "sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "644e0fc48951a860279da645ba77fe4a6e814c5e", + "rev": "67df8c627c2c39c41dbec76a1f201929929ab0bd", "type": "github" }, "original": { @@ -1921,11 +1921,11 @@ ] }, "locked": { - "lastModified": 1751413152, - "narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=", + "lastModified": 1754487366, + "narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "77826244401ea9de6e3bac47c2db46005e1f30b5", + "rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18", "type": "github" }, "original": { @@ -2395,11 +2395,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1753576215, - "narHash": "sha256-XkTlWKmM2NrpKZFnfF5ZjwjZCY3BbwsACKvn/7No4m8=", + "lastModified": 1754181047, + "narHash": "sha256-hOhswJq2XXoMdmPACrRQgOkhMUF3KcuiteibhLdckPk=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "1c928b840c6f732b1730d08243b98d57b056951d", + "rev": "e59292859c69c6ae7baa8b883fc007ba1b546c82", "type": "github" }, "original": { @@ -2476,11 +2476,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1753576225, - "narHash": "sha256-mysFl691ktNUa0yBd+2wkZLizl1ek9LB5n+tTE9n8y8=", + "lastModified": 1754181057, + "narHash": "sha256-AO1D9kK/tBaCakTqneouDc5bFSHoa4jArYA1/Vxyc1c=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "090b8b7dde65c65af8dfe144c39f78d377f9e28f", + "rev": "5e8e82f42258d49eae19fffdb5a11ab1cbfabb03", "type": "github" }, "original": { @@ -2531,11 +2531,11 @@ "stackage": "stackage_5" }, "locked": { - "lastModified": 1753577548, - "narHash": "sha256-1O8Eh05vOiKYLCWlNhMmbwpL17MNxQ5dV49FME6SEJY=", + "lastModified": 1754182356, + "narHash": "sha256-WqmSaDVmxaJnp7DXboTaiPHOnLSoKX/+tpgQTcx34bE=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "a4a27c45d4dc06c0fd12a90b91227eb58d7bbfa4", + "rev": "3c4414748d1a90122962a5ad6a72a319613892ec", "type": "github" }, "original": { @@ -2851,11 +2851,11 @@ "nixpkgs": "nixpkgs_27" }, "locked": { - "lastModified": 1752595130, - "narHash": "sha256-CNBgr4OZSuklGtNOa9CnTNo9+Xceqn/EDAC1Tc43fH8=", + "lastModified": 1755233722, + "narHash": "sha256-AavrbMltJKcC2Fx0lfJoZfmy7g87ebXU0ddVenhajLA=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "5f2e09654b2e70ba643e41609d9f9b6640f22113", + "rev": "99e03e72e3f7e13506f80ef9ebaedccb929d84d0", "type": "github" }, "original": { @@ -5263,11 +5263,11 @@ }, "nixpkgs-lib_2": { "locked": { - "lastModified": 1751159883, - "narHash": "sha256-urW/Ylk9FIfvXfliA1ywh75yszAbiTEVgpPeinFyVZo=", + "lastModified": 1753579242, + "narHash": "sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "14a40a1d7fb9afa4739275ac642ed7301a9ba1ab", + "rev": "0f36c44e01a6129be94e3ade315a5883f0228a6e", "type": "github" }, "original": { @@ -5658,11 +5658,11 @@ }, "nixpkgs_24": { "locked": { - "lastModified": 1753620525, - "narHash": "sha256-OiLVh0yt2wZUjxUWVd9j/j2o951LxH0tW1xekmcUWwE=", + "lastModified": 1754225358, + "narHash": "sha256-pVCtipd3mLNLzcyv5XauVRchwrMguylOoTxRsuwiY6U=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6ce8f2798567138f2c442c64baf793587c2dbc62", + "rev": "66f60a89799bcdfaac5e109fee255b1213636fb6", "type": "github" }, "original": { @@ -5705,11 +5705,11 @@ }, "nixpkgs_27": { "locked": { - "lastModified": 1751984180, - "narHash": "sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X+xgOL0=", + "lastModified": 1755027561, + "narHash": "sha256-IVft239Bc8p8Dtvf7UAACMG5P3ZV+3/aO28gXpGtMXI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9807714d6944a957c2e036f84b0ff8caf9930bc0", + "rev": "005433b926e16227259a1843015b5b2b7f7d1fc3", "type": "github" }, "original": { @@ -6227,11 +6227,11 @@ "nixpkgs": "nixpkgs_26" }, "locked": { - "lastModified": 1753584741, - "narHash": "sha256-i147iFSy4K4PJvID+zoszLbRi2o+YV8AyG4TUiDQ3+I=", + "lastModified": 1754189623, + "narHash": "sha256-fstu5eb30UYwsxow0aQqkzxNxGn80UZjyehQVNVHuBk=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "69dfe029679e73b8d159011c9547f6148a85ca6b", + "rev": "c582ff7f0d8a7ea689ae836dfb1773f1814f472a", "type": "github" }, "original": { @@ -6477,11 +6477,11 @@ "stackage_5": { "flake": false, "locked": { - "lastModified": 1753575341, - "narHash": "sha256-n0vID6+XF73mfY34leyL665XhiD6+8kz88+Qdnu21Vw=", + "lastModified": 1754180153, + "narHash": "sha256-hkHG3EjjxAqADAYURA6p3jc7xb93/VOoKVazInc5FqU=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "5e49f74d2c508b615b8f9e5a6680425dea67985e", + "rev": "a7e9e82031c37896f71689d6d66ce9fbc18c0180", "type": "github" }, "original": { From 8eb6ab16342b833ab3832b503589678192c37c7b Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 24 Aug 2025 12:49:06 +0000 Subject: [PATCH 90/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/5e6795f9fcacecc8786f84277b412742f5e6c37d?narHash=sha256-5bP4SjY6s7yt0l2NykbuJsZT%2Brfglt8fXbvUXCyljXI%3D' (2025-08-12) → 'github:mlabs-haskell/flake-lang.nix/6b9796247ac0a35c4ddec1c2cc74ceee73474390?narHash=sha256-fuYyV9HNp06%2BdTdYOlA8Apgj9nrfbEjsy1Ze7m9hEvk%3D' (2025-08-21) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/8d401eefedf9b1a8703594b3d33165fdb7ee8f69?narHash=sha256-7TP8sGtytiHNWdphUZ2j44oy/4tCEqq19BdE7nc1LB8%3D' (2025-07-30) → 'github:input-output-hk/cardano-haskell-packages/982aa1c76e28e26e592e26e8fd8b73eea87dbdc2?narHash=sha256-Qpmv1zYOfOzYZfU3sB3bsv/sGtI1c6MGTFiyhnYmmRA%3D' (2025-08-14) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/1eb37955571aed513cc5fe267fda0c001e9ffec9?narHash=sha256-IoNvRsps/pMk0CTH1y/aXwsEHjqxfFns3uFG/xMDR9E%3D' (2025-08-02) → 'github:ipetkov/crane/3c40c97e1881fff381e4615e82557b333edf65c4?narHash=sha256-Tg%2BP8kFIneqnQLT8E0QqlCrldtdLo1n1y619/mxRD44%3D' (2025-08-18) • Removed input 'flake-lang/ctl' • Removed input 'flake-lang/ctl/blockfrost' • Removed input 'flake-lang/ctl/blockfrost/nixpkgs' • Removed input 'flake-lang/ctl/cardano-configurations' • Removed input 'flake-lang/ctl/cardano-nix' • Removed input 'flake-lang/ctl/cardano-nix/blockfrost' • Removed input 'flake-lang/ctl/cardano-nix/blockfrost/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/CHaP' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/hackageNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/HTTP' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/cabal-32' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/cabal-34' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/cabal-36' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/cardano-shell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/ghc-8.6.5-iohk' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-1.10' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.0' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.2' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.3' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.4' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.5' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.6' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.7' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.8' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hls-2.9' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hpc-coveralls' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hydra' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hydra/nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hydra/nix/lowdown-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hydra/nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hydra/nix/nixpkgs-regression' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/hydra/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/iserv-proxy' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2003' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2105' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2111' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2205' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2211' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2305' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2311' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-2405' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/nixpkgs-unstable' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/old-ghc-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/haskellNix/stackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/iohkNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/iohkNix/blst' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/iohkNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/iohkNix/secp256k1' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/iohkNix/sodium' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-db-sync/utils/systems' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/CHaP' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/haskellNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/gomod2nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/gomod2nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/gomod2nix/utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix-nomad/nixpkgs-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix2container' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix2container/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nix2container/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/blank' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/devshell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/devshell/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/devshell/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/dmerge' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/dmerge/nixlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/dmerge/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/makes' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/mdbook-kroki-preprocessor' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/microvm' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/n2c' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/n2c/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/n2c/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixago' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixago/flake-utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixago/nixago-exts' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixago/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-automation/tullia/std/yants/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-mainnet-mirror' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/cardano-mainnet-mirror/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/customConfig' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/em' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/empty-flake' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/hackageNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/HTTP' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/cabal-32' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/cabal-34' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/cabal-36' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/cardano-shell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/ghc-8.6.5-iohk' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/ghc910X' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/ghc911' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-1.10' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.0' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.2' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.3' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.4' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.5' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.6' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.7' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hls-2.8' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hpc-coveralls' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nix/lowdown-src' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nix/nixpkgs-regression' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/hydra/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/iserv-proxy' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2003' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2105' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2111' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2205' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2211' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2305' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-2311' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/nixpkgs-unstable' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/old-ghc-nix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/haskellNix/stackage' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/hostNixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix/blst' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix/secp256k1' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/iohkNix/sodium' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/ops-lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/arion' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/blank' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/devshell' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/dmerge' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/dmerge/haumea' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/dmerge/nixlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/dmerge/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/haumea' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/haumea/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/incl' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/incl/nixlib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/lib' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/makes' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/microvm' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/n2c' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/nixago' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano/call-flake' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano/nosys' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/paisano-tui' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/terranix' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/yants' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/std/yants/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/utils' • Removed input 'flake-lang/ctl/cardano-nix/cardano-node/utils/systems' • Removed input 'flake-lang/ctl/cardano-nix/crane' • Removed input 'flake-lang/ctl/cardano-nix/devour-flake' • Removed input 'flake-lang/ctl/cardano-nix/devshell' • Removed input 'flake-lang/ctl/cardano-nix/devshell/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/flake-parts' • Removed input 'flake-lang/ctl/cardano-nix/flake-parts/nixpkgs-lib' • Removed input 'flake-lang/ctl/cardano-nix/flake-root' • Removed input 'flake-lang/ctl/cardano-nix/hercules-ci-effects' • Removed input 'flake-lang/ctl/cardano-nix/hercules-ci-effects/flake-parts' • Removed input 'flake-lang/ctl/cardano-nix/hercules-ci-effects/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/oura' • Removed input 'flake-lang/ctl/cardano-nix/oura/crane' • Removed input 'flake-lang/ctl/cardano-nix/oura/utils' • Removed input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix' • Removed input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix/flake-compat' • Removed input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix/gitignore' • Removed input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix/gitignore/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-nix/pre-commit-hooks-nix/nixpkgs-stable' • Removed input 'flake-lang/ctl/cardano-nix/treefmt-nix' • Removed input 'flake-lang/ctl/cardano-nix/treefmt-nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node' • Removed input 'flake-lang/ctl/cardano-node/CHaP' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/flake-utils' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/haskellNix' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix-nomad' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix-nomad/flake-compat' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix-nomad/flake-utils' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix-nomad/gomod2nix' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix-nomad/gomod2nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix-nomad/gomod2nix/utils' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix-nomad/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix-nomad/nixpkgs-lib' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix2container' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix2container/flake-utils' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nix2container/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/blank' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/devshell' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/devshell/flake-utils' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/devshell/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/dmerge' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/dmerge/nixlib' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/dmerge/yants' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/flake-utils' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/makes' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/mdbook-kroki-preprocessor' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/microvm' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/n2c' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/n2c/flake-utils' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/n2c/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/nixago' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/nixago/flake-utils' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/nixago/nixago-exts' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/nixago/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/yants' • Removed input 'flake-lang/ctl/cardano-node/cardano-automation/tullia/std/yants/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/cardano-mainnet-mirror' • Removed input 'flake-lang/ctl/cardano-node/cardano-mainnet-mirror/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/customConfig' • Removed input 'flake-lang/ctl/cardano-node/em' • Removed input 'flake-lang/ctl/cardano-node/empty-flake' • Removed input 'flake-lang/ctl/cardano-node/flake-compat' • Removed input 'flake-lang/ctl/cardano-node/hackageNix' • Removed input 'flake-lang/ctl/cardano-node/haskellNix' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/HTTP' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/cabal-32' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/cabal-34' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/cabal-36' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/cardano-shell' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/flake-compat' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/ghc-8.6.5-iohk' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/ghc910X' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/ghc911' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hackage' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-1.10' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-2.0' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-2.2' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-2.3' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-2.4' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-2.5' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-2.6' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-2.7' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hls-2.8' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hpc-coveralls' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hydra' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hydra/nix' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hydra/nix/lowdown-src' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hydra/nix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hydra/nix/nixpkgs-regression' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/hydra/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/iserv-proxy' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/nixpkgs-2003' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/nixpkgs-2105' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/nixpkgs-2111' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/nixpkgs-2205' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/nixpkgs-2211' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/nixpkgs-2305' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/nixpkgs-2311' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/nixpkgs-unstable' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/old-ghc-nix' • Removed input 'flake-lang/ctl/cardano-node/haskellNix/stackage' • Removed input 'flake-lang/ctl/cardano-node/hostNixpkgs' • Removed input 'flake-lang/ctl/cardano-node/iohkNix' • Removed input 'flake-lang/ctl/cardano-node/iohkNix/blst' • Removed input 'flake-lang/ctl/cardano-node/iohkNix/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/iohkNix/secp256k1' • Removed input 'flake-lang/ctl/cardano-node/iohkNix/sodium' • Removed input 'flake-lang/ctl/cardano-node/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/ops-lib' • Removed input 'flake-lang/ctl/cardano-node/std' • Removed input 'flake-lang/ctl/cardano-node/std/arion' • Removed input 'flake-lang/ctl/cardano-node/std/blank' • Removed input 'flake-lang/ctl/cardano-node/std/devshell' • Removed input 'flake-lang/ctl/cardano-node/std/dmerge' • Removed input 'flake-lang/ctl/cardano-node/std/dmerge/haumea' • Removed input 'flake-lang/ctl/cardano-node/std/dmerge/nixlib' • Removed input 'flake-lang/ctl/cardano-node/std/dmerge/yants' • Removed input 'flake-lang/ctl/cardano-node/std/haumea' • Removed input 'flake-lang/ctl/cardano-node/std/haumea/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/std/incl' • Removed input 'flake-lang/ctl/cardano-node/std/incl/nixlib' • Removed input 'flake-lang/ctl/cardano-node/std/lib' • Removed input 'flake-lang/ctl/cardano-node/std/makes' • Removed input 'flake-lang/ctl/cardano-node/std/microvm' • Removed input 'flake-lang/ctl/cardano-node/std/n2c' • Removed input 'flake-lang/ctl/cardano-node/std/nixago' • Removed input 'flake-lang/ctl/cardano-node/std/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/std/paisano' • Removed input 'flake-lang/ctl/cardano-node/std/paisano/call-flake' • Removed input 'flake-lang/ctl/cardano-node/std/paisano/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/std/paisano/nosys' • Removed input 'flake-lang/ctl/cardano-node/std/paisano/yants' • Removed input 'flake-lang/ctl/cardano-node/std/paisano-tui' • Removed input 'flake-lang/ctl/cardano-node/std/terranix' • Removed input 'flake-lang/ctl/cardano-node/std/yants' • Removed input 'flake-lang/ctl/cardano-node/std/yants/nixpkgs' • Removed input 'flake-lang/ctl/cardano-node/utils' • Removed input 'flake-lang/ctl/cardano-node/utils/systems' • Removed input 'flake-lang/ctl/db-sync' • Removed input 'flake-lang/ctl/easy-purescript-nix' • Removed input 'flake-lang/ctl/flake-compat' • Removed input 'flake-lang/ctl/hercules-ci-effects' • Removed input 'flake-lang/ctl/hercules-ci-effects/flake-parts' • Removed input 'flake-lang/ctl/hercules-ci-effects/flake-parts/nixpkgs-lib' • Removed input 'flake-lang/ctl/hercules-ci-effects/nixpkgs' • Removed input 'flake-lang/ctl/nixpkgs' • Removed input 'flake-lang/ctl/nixpkgs-arion' • Removed input 'flake-lang/ctl/ogmios' • Added input 'flake-lang/easy-purescript-nix': 'github:justinwoo/easy-purescript-nix/b5ded0a376d29605f5c7b27c6d55600028995bac?narHash=sha256-Ta/HhK3BJ/yG7IYUWvqhOyQw5%2BR/a0fLAJeusFTNmKk%3D' (2025-08-03) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/67df8c627c2c39c41dbec76a1f201929929ab0bd?narHash=sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM%3D' (2025-08-01) → 'github:hercules-ci/flake-parts/af66ad14b28a127c5c0f3bbb298218fc63528a18?narHash=sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8%3D' (2025-08-06) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/3c4414748d1a90122962a5ad6a72a319613892ec?narHash=sha256-WqmSaDVmxaJnp7DXboTaiPHOnLSoKX/%2BtpgQTcx34bE%3D' (2025-08-03) → 'github:input-output-hk/haskell.nix/a808cbd430a74c00a0e5959d384e1a11e2ea1e2a?narHash=sha256-BVHCMhwjwl%2BuxDUgQOQu3EoGRwcDYLuJ/6DNTgWDSys%3D' (2025-08-21) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/5e8e82f42258d49eae19fffdb5a11ab1cbfabb03?narHash=sha256-AO1D9kK/tBaCakTqneouDc5bFSHoa4jArYA1/Vxyc1c%3D' (2025-08-03) → 'github:input-output-hk/hackage.nix/6313548135c7dc5daea2ae1ed1d0dd1afa3d485e?narHash=sha256-8fOqP45pBWQVFW4tBGgWw1vJmRRBSrQX1TOkCIRZUlw%3D' (2025-08-21) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/e59292859c69c6ae7baa8b883fc007ba1b546c82?narHash=sha256-hOhswJq2XXoMdmPACrRQgOkhMUF3KcuiteibhLdckPk%3D' (2025-08-03) → 'github:input-output-hk/hackage.nix/54203507c2141dfea4463ba5c4015f11f2c2a503?narHash=sha256-X4HTWcv6vgx6EncLyyJJdaNTkL8F8P69HAMaEgZLYhg%3D' (2025-08-21) • Updated input 'flake-lang/haskell-nix/iserv-proxy': 'github:stable-haskell/iserv-proxy/a53c57c9a8d22a66a2f0c4c969e806da03f08c28?narHash=sha256-WaswH0Y%2BFmupvv8AkIlQBlUy/IdD3Inx9PDuE%2B5iRYY%3D' (2025-06-21) → 'github:stable-haskell/iserv-proxy/1383d199a2c64f522979005d112b4fbdee38dd92?narHash=sha256-8W7uHpAIG8HhO3ig5OGHqvwduoye6q6dlrea1IrP2eI%3D' (2025-08-12) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/a7e9e82031c37896f71689d6d66ce9fbc18c0180?narHash=sha256-hkHG3EjjxAqADAYURA6p3jc7xb93/VOoKVazInc5FqU%3D' (2025-08-03) → 'github:input-output-hk/stackage.nix/999a41c7e94d417cd507977e1050a18f3a7a2424?narHash=sha256-/oZzMO5tdwz0V3uLRI5N9BrMEQc6/MFOpDfHRMRehEI%3D' (2025-08-21) • Updated input 'flake-lang/hci-effects': 'github:hercules-ci/hercules-ci-effects/5f2e09654b2e70ba643e41609d9f9b6640f22113?narHash=sha256-CNBgr4OZSuklGtNOa9CnTNo9%2BXceqn/EDAC1Tc43fH8%3D' (2025-07-15) → 'github:hercules-ci/hercules-ci-effects/99e03e72e3f7e13506f80ef9ebaedccb929d84d0?narHash=sha256-AavrbMltJKcC2Fx0lfJoZfmy7g87ebXU0ddVenhajLA%3D' (2025-08-15) • Updated input 'flake-lang/hci-effects/flake-parts': 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01) → 'github:hercules-ci/flake-parts/af66ad14b28a127c5c0f3bbb298218fc63528a18?narHash=sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8%3D' (2025-08-06) • Updated input 'flake-lang/hci-effects/nixpkgs': 'github:NixOS/nixpkgs/9807714d6944a957c2e036f84b0ff8caf9930bc0?narHash=sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X%2BxgOL0%3D' (2025-07-08) → 'github:NixOS/nixpkgs/005433b926e16227259a1843015b5b2b7f7d1fc3?narHash=sha256-IVft239Bc8p8Dtvf7UAACMG5P3ZV%2B3/aO28gXpGtMXI%3D' (2025-08-12) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/66f60a89799bcdfaac5e109fee255b1213636fb6?narHash=sha256-pVCtipd3mLNLzcyv5XauVRchwrMguylOoTxRsuwiY6U%3D' (2025-08-03) → 'github:NixOS/nixpkgs/a58390ab6f1aa810eb8e0f0fc74230e7cc06de03?narHash=sha256-BA9MuPjBDx/WnpTJ0EGhStyfE7hug8g85Y3Ju9oTsM4%3D' (2025-08-19) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/16ec914f6fb6f599ce988427d9d94efddf25fe6d?narHash=sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg%3D' (2025-06-24) → 'github:cachix/pre-commit-hooks.nix/4b04db83821b819bbbe32ed0a025b31e7971f22e?narHash=sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW%2B7uSsOUM%3D' (2025-08-17) • Updated input 'flake-lang/pre-commit-hooks/flake-compat': 'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33?narHash=sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U%3D' (2023-10-04) → 'github:edolstra/flake-compat/9100a0f413b0c601e0533d1d94ffd501ce2e7885?narHash=sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX%2BfjA8Xf8PUmqCY%3D' (2025-05-12) • Updated input 'flake-lang/pre-commit-hooks/nixpkgs': 'github:NixOS/nixpkgs/a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc?narHash=sha256-8AKquNnnSaJRXZxc5YmF/WfmxiHX6MMZZasRP6RRQkE%3D' (2024-11-05) → 'github:NixOS/nixpkgs/cab778239e705082fe97bb4990e0d24c50924c04?narHash=sha256-lgmUyVQL9tSnvvIvBp7x1euhkkCho7n3TMzgjdvgPoU%3D' (2025-08-04) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/c582ff7f0d8a7ea689ae836dfb1773f1814f472a?narHash=sha256-fstu5eb30UYwsxow0aQqkzxNxGn80UZjyehQVNVHuBk%3D' (2025-08-03) → 'github:oxalica/rust-overlay/80322e975e27d834451d6b66e63f8abae9d74bf2?narHash=sha256-M6qT02voARH5e9eTXQBzpYIE/hAp6jPgBCyxLmw5uBM%3D' (2025-08-21) --- flake.lock | 7398 +++++++++------------------------------------------- 1 file changed, 1203 insertions(+), 6195 deletions(-) diff --git a/flake.lock b/flake.lock index d4bf5f46..726c5c5c 100644 --- a/flake.lock +++ b/flake.lock @@ -1,57 +1,6 @@ { "nodes": { "CHaP": { - "flake": false, - "locked": { - "lastModified": 1730824761, - "narHash": "sha256-Kv99PeYWdqmj5OStnp6kE6fjHbx6irTYyEPoFuukfHU=", - "owner": "IntersectMBO", - "repo": "cardano-haskell-packages", - "rev": "d3d36220528058f9a24cff43fc723e60f6a786ad", - "type": "github" - }, - "original": { - "owner": "IntersectMBO", - "ref": "repo", - "repo": "cardano-haskell-packages", - "type": "github" - } - }, - "CHaP_2": { - "flake": false, - "locked": { - "lastModified": 1735857786, - "narHash": "sha256-X6Fp2uU++62rgaH4J1pIN5AalfV7f9rM5dmFaByMWqU=", - "owner": "intersectmbo", - "repo": "cardano-haskell-packages", - "rev": "b9eaf0bbe60ccf64b7afc969b79f9820a4534bcf", - "type": "github" - }, - "original": { - "owner": "intersectmbo", - "ref": "repo", - "repo": "cardano-haskell-packages", - "type": "github" - } - }, - "CHaP_3": { - "flake": false, - "locked": { - "lastModified": 1735857786, - "narHash": "sha256-X6Fp2uU++62rgaH4J1pIN5AalfV7f9rM5dmFaByMWqU=", - "owner": "intersectmbo", - "repo": "cardano-haskell-packages", - "rev": "b9eaf0bbe60ccf64b7afc969b79f9820a4534bcf", - "type": "github" - }, - "original": { - "owner": "intersectmbo", - "ref": "repo", - "repo": "cardano-haskell-packages", - "type": "github" - } - }, - "CHaP_4": { "flake": false, "locked": { "lastModified": 1683268896, @@ -100,54 +49,6 @@ "type": "github" } }, - "HTTP_3": { - "flake": false, - "locked": { - "lastModified": 1451647621, - "narHash": "sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts=", - "owner": "phadej", - "repo": "HTTP", - "rev": "9bc0996d412fef1787449d841277ef663ad9a915", - "type": "github" - }, - "original": { - "owner": "phadej", - "repo": "HTTP", - "type": "github" - } - }, - "HTTP_4": { - "flake": false, - "locked": { - "lastModified": 1451647621, - "narHash": "sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts=", - "owner": "phadej", - "repo": "HTTP", - "rev": "9bc0996d412fef1787449d841277ef663ad9a915", - "type": "github" - }, - "original": { - "owner": "phadej", - "repo": "HTTP", - "type": "github" - } - }, - "HTTP_5": { - "flake": false, - "locked": { - "lastModified": 1451647621, - "narHash": "sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts=", - "owner": "phadej", - "repo": "HTTP", - "rev": "9bc0996d412fef1787449d841277ef663ad9a915", - "type": "github" - }, - "original": { - "owner": "phadej", - "repo": "HTTP", - "type": "github" - } - }, "blank": { "locked": { "lastModified": 1625557891, @@ -163,156 +64,7 @@ "type": "github" } }, - "blank_2": { - "locked": { - "lastModified": 1625557891, - "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", - "owner": "divnix", - "repo": "blank", - "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "blank", - "type": "github" - } - }, - "blank_3": { - "locked": { - "lastModified": 1625557891, - "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", - "owner": "divnix", - "repo": "blank", - "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "blank", - "type": "github" - } - }, - "blank_4": { - "locked": { - "lastModified": 1625557891, - "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", - "owner": "divnix", - "repo": "blank", - "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "blank", - "type": "github" - } - }, - "blank_5": { - "locked": { - "lastModified": 1625557891, - "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", - "owner": "divnix", - "repo": "blank", - "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "blank", - "type": "github" - } - }, - "blockfrost": { - "inputs": { - "nixpkgs": "nixpkgs" - }, - "locked": { - "lastModified": 1693412637, - "narHash": "sha256-uA2U7ZCdWv2Rxmi10uaMNNw8tiMbgcu2nnO6NTNp3VE=", - "owner": "blockfrost", - "repo": "blockfrost-backend-ryo", - "rev": "8d455ab1f710b7bd27d2aa87c82f0c5129101647", - "type": "github" - }, - "original": { - "owner": "blockfrost", - "ref": "v1.7.0", - "repo": "blockfrost-backend-ryo", - "type": "github" - } - }, - "blockfrost_2": { - "inputs": { - "nixpkgs": "nixpkgs_2" - }, - "locked": { - "lastModified": 1737368354, - "narHash": "sha256-zDqNLiaF3A4/rkMTL2sJWyyPVBB9kwezsfzTmkIBN14=", - "owner": "blockfrost", - "repo": "blockfrost-backend-ryo", - "rev": "a49be24384279c916e86dbd9be267ab259bed596", - "type": "github" - }, - "original": { - "owner": "blockfrost", - "ref": "v3.1.0", - "repo": "blockfrost-backend-ryo", - "type": "github" - } - }, "blst": { - "flake": false, - "locked": { - "lastModified": 1691598027, - "narHash": "sha256-oqljy+ZXJAXEB/fJtmB8rlAr4UXM+Z2OkDa20gpILNA=", - "owner": "supranational", - "repo": "blst", - "rev": "3dd0f804b1819e5d03fb22ca2e6fac105932043a", - "type": "github" - }, - "original": { - "owner": "supranational", - "ref": "v0.3.11", - "repo": "blst", - "type": "github" - } - }, - "blst_2": { - "flake": false, - "locked": { - "lastModified": 1691598027, - "narHash": "sha256-oqljy+ZXJAXEB/fJtmB8rlAr4UXM+Z2OkDa20gpILNA=", - "owner": "supranational", - "repo": "blst", - "rev": "3dd0f804b1819e5d03fb22ca2e6fac105932043a", - "type": "github" - }, - "original": { - "owner": "supranational", - "ref": "v0.3.11", - "repo": "blst", - "type": "github" - } - }, - "blst_3": { - "flake": false, - "locked": { - "lastModified": 1691598027, - "narHash": "sha256-oqljy+ZXJAXEB/fJtmB8rlAr4UXM+Z2OkDa20gpILNA=", - "owner": "supranational", - "repo": "blst", - "rev": "3dd0f804b1819e5d03fb22ca2e6fac105932043a", - "type": "github" - }, - "original": { - "owner": "supranational", - "ref": "v0.3.11", - "repo": "blst", - "type": "github" - } - }, - "blst_4": { "flake": false, "locked": { "lastModified": 1656163412, @@ -329,7 +81,7 @@ "type": "github" } }, - "blst_5": { + "blst_2": { "flake": false, "locked": { "lastModified": 1739372843, @@ -380,6787 +132,2043 @@ "type": "github" } }, - "cabal-32_3": { + "cabal-34": { "flake": false, "locked": { - "lastModified": 1603716527, - "narHash": "sha256-X0TFfdD4KZpwl0Zr6x+PLxUt/VyKQfX7ylXHdmZIL+w=", + "lastModified": 1645834128, + "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", "owner": "haskell", "repo": "cabal", - "rev": "48bf10787e27364730dd37a42b603cee8d6af7ee", + "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", "type": "github" }, "original": { "owner": "haskell", - "ref": "3.2", + "ref": "3.4", "repo": "cabal", "type": "github" } }, - "cabal-32_4": { + "cabal-34_2": { "flake": false, "locked": { - "lastModified": 1603716527, - "narHash": "sha256-X0TFfdD4KZpwl0Zr6x+PLxUt/VyKQfX7ylXHdmZIL+w=", + "lastModified": 1645834128, + "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", "owner": "haskell", "repo": "cabal", - "rev": "48bf10787e27364730dd37a42b603cee8d6af7ee", + "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", "type": "github" }, "original": { "owner": "haskell", - "ref": "3.2", + "ref": "3.4", "repo": "cabal", "type": "github" } }, - "cabal-32_5": { + "cabal-36": { "flake": false, "locked": { - "lastModified": 1603716527, - "narHash": "sha256-X0TFfdD4KZpwl0Zr6x+PLxUt/VyKQfX7ylXHdmZIL+w=", + "lastModified": 1669081697, + "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", "owner": "haskell", "repo": "cabal", - "rev": "48bf10787e27364730dd37a42b603cee8d6af7ee", + "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", "type": "github" }, "original": { "owner": "haskell", - "ref": "3.2", + "ref": "3.6", "repo": "cabal", "type": "github" } }, - "cabal-34": { + "cabal-36_2": { "flake": false, "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", + "lastModified": 1669081697, + "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", "owner": "haskell", "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", + "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", "type": "github" }, "original": { "owner": "haskell", - "ref": "3.4", + "ref": "3.6", "repo": "cabal", "type": "github" } }, - "cabal-34_2": { + "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", + "lastModified": 1755197699, + "narHash": "sha256-Qpmv1zYOfOzYZfU3sB3bsv/sGtI1c6MGTFiyhnYmmRA=", + "owner": "input-output-hk", + "repo": "cardano-haskell-packages", + "rev": "982aa1c76e28e26e592e26e8fd8b73eea87dbdc2", "type": "github" }, "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", + "owner": "input-output-hk", + "ref": "repo", + "repo": "cardano-haskell-packages", "type": "github" } }, - "cabal-34_3": { + "cardano-shell": { "flake": false, "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", + "owner": "input-output-hk", + "repo": "cardano-shell", "type": "github" } }, - "cabal-34_4": { + "cardano-shell_2": { "flake": false, "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", "type": "github" }, "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", + "owner": "input-output-hk", + "repo": "cardano-shell", "type": "github" } }, - "cabal-34_5": { - "flake": false, + "crane": { "locked": { - "lastModified": 1645834128, - "narHash": "sha256-wG3d+dOt14z8+ydz4SL7pwGfe7SiimxcD/LOuPCV6xM=", - "owner": "haskell", - "repo": "cabal", - "rev": "5ff598c67f53f7c4f48e31d722ba37172230c462", + "lastModified": 1755537552, + "narHash": "sha256-Tg+P8kFIneqnQLT8E0QqlCrldtdLo1n1y619/mxRD44=", + "owner": "ipetkov", + "repo": "crane", + "rev": "3c40c97e1881fff381e4615e82557b333edf65c4", "type": "github" }, "original": { - "owner": "haskell", - "ref": "3.4", - "repo": "cabal", + "owner": "ipetkov", + "repo": "crane", "type": "github" } }, - "cabal-36": { - "flake": false, + "customConfig": { "locked": { - "lastModified": 1669081697, - "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", - "owner": "haskell", - "repo": "cabal", - "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", + "lastModified": 1630400035, + "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "owner": "input-output-hk", + "repo": "empty-flake", + "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", "type": "github" }, "original": { - "owner": "haskell", - "ref": "3.6", - "repo": "cabal", + "owner": "input-output-hk", + "repo": "empty-flake", "type": "github" } }, - "cabal-36_2": { - "flake": false, - "locked": { - "lastModified": 1669081697, - "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", - "owner": "haskell", - "repo": "cabal", - "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", - "type": "github" + "db-sync-ctl": { + "inputs": { + "CHaP": "CHaP", + "customConfig": "customConfig", + "flake-compat": "flake-compat", + "haskellNix": "haskellNix", + "iohkNix": "iohkNix", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "haskellNix", + "nixpkgs-unstable" + ], + "std": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std" + ], + "tullia": "tullia", + "utils": "utils_2" }, - "original": { - "owner": "haskell", - "ref": "3.6", - "repo": "cabal", - "type": "github" - } - }, - "cabal-36_3": { - "flake": false, "locked": { - "lastModified": 1669081697, - "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", - "owner": "haskell", - "repo": "cabal", - "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", + "lastModified": 1688568916, + "narHash": "sha256-XTGTi3PzCcbLL+63JSXTe7mQmGKB0YgEoW1VpqdX2d0=", + "owner": "input-output-hk", + "repo": "cardano-db-sync", + "rev": "6e69a80797f2d68423b25ca7787e81533b367e42", "type": "github" }, "original": { - "owner": "haskell", - "ref": "3.6", - "repo": "cabal", + "owner": "input-output-hk", + "ref": "13.1.1.3", + "repo": "cardano-db-sync", "type": "github" } }, - "cabal-36_4": { - "flake": false, - "locked": { - "lastModified": 1669081697, - "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", - "owner": "haskell", - "repo": "cabal", - "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", - "type": "github" + "devshell": { + "inputs": { + "flake-utils": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "flake-utils" + ], + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" + ] }, - "original": { - "owner": "haskell", - "ref": "3.6", - "repo": "cabal", - "type": "github" - } - }, - "cabal-36_5": { - "flake": false, "locked": { - "lastModified": 1669081697, - "narHash": "sha256-I5or+V7LZvMxfbYgZATU4awzkicBwwok4mVoje+sGmU=", - "owner": "haskell", - "repo": "cabal", - "rev": "8fd619e33d34924a94e691c5fea2c42f0fc7f144", + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", + "owner": "numtide", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", "type": "github" }, "original": { - "owner": "haskell", - "ref": "3.6", - "repo": "cabal", + "owner": "numtide", + "repo": "devshell", "type": "github" } }, - "call-flake": { + "dmerge": { + "inputs": { + "nixlib": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" + ], + "yants": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "yants" + ] + }, "locked": { - "lastModified": 1687380775, - "narHash": "sha256-bmhE1TmrJG4ba93l9WQTLuYM53kwGQAjYHRvHOeuxWU=", + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", "owner": "divnix", - "repo": "call-flake", - "rev": "74061f6c241227cd05e79b702db9a300a2e4131a", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", "type": "github" }, "original": { "owner": "divnix", - "repo": "call-flake", + "repo": "data-merge", "type": "github" } }, - "call-flake_2": { + "easy-purescript-nix": { + "flake": false, "locked": { - "lastModified": 1687380775, - "narHash": "sha256-bmhE1TmrJG4ba93l9WQTLuYM53kwGQAjYHRvHOeuxWU=", - "owner": "divnix", - "repo": "call-flake", - "rev": "74061f6c241227cd05e79b702db9a300a2e4131a", + "lastModified": 1754252604, + "narHash": "sha256-Ta/HhK3BJ/yG7IYUWvqhOyQw5+R/a0fLAJeusFTNmKk=", + "owner": "justinwoo", + "repo": "easy-purescript-nix", + "rev": "b5ded0a376d29605f5c7b27c6d55600028995bac", "type": "github" }, "original": { - "owner": "divnix", - "repo": "call-flake", + "owner": "justinwoo", + "repo": "easy-purescript-nix", "type": "github" } }, - "cardano-automation": { - "inputs": { - "flake-utils": "flake-utils", - "haskellNix": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "haskellNix" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "nixpkgs" - ], - "tullia": "tullia" - }, + "flake-compat": { + "flake": false, "locked": { - "lastModified": 1679408951, - "narHash": "sha256-xM78upkrXjRu/739V/IxFrA9m+6rvgOiolt4ReKLAog=", + "lastModified": 1647532380, + "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", "owner": "input-output-hk", - "repo": "cardano-automation", - "rev": "628f135d243d4a9e388c187e4c6179246038ee72", + "repo": "flake-compat", + "rev": "7da118186435255a30b5ffeabba9629c344c0bec", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-automation", + "ref": "fixes", + "repo": "flake-compat", "type": "github" } }, - "cardano-automation_2": { - "inputs": { - "flake-utils": "flake-utils_5", - "haskellNix": [ - "flake-lang", - "ctl", - "cardano-node", - "haskellNix" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "nixpkgs" - ], - "tullia": "tullia_2" - }, + "flake-compat_2": { + "flake": false, "locked": { - "lastModified": 1679408951, - "narHash": "sha256-xM78upkrXjRu/739V/IxFrA9m+6rvgOiolt4ReKLAog=", + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", "owner": "input-output-hk", - "repo": "cardano-automation", - "rev": "628f135d243d4a9e388c187e4c6179246038ee72", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-automation", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", "type": "github" } }, - "cardano-configurations": { + "flake-compat_3": { "flake": false, "locked": { - "lastModified": 1734139735, - "narHash": "sha256-BHabDNuHn9RgIPk0vjtkrFPrwTYfwVeJi9+Irn8LF+4=", - "owner": "input-output-hk", - "repo": "cardano-configurations", - "rev": "a913d87246dc2484562a00c86e5f9c74a20e82ce", + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "cardano-configurations", - "rev": "a913d87246dc2484562a00c86e5f9c74a20e82ce", + "owner": "edolstra", + "repo": "flake-compat", "type": "github" } }, - "cardano-db-sync": { - "inputs": { - "CHaP": "CHaP", - "flake-compat": "flake-compat", - "hackageNix": "hackageNix", - "haskellNix": "haskellNix", - "iohkNix": "iohkNix", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "haskellNix", - "nixpkgs-unstable" - ], - "utils": "utils" - }, + "flake-compat_4": { + "flake": false, "locked": { - "lastModified": 1731069075, - "narHash": "sha256-EESfv4KVXjYokTMQLwJGkhOq6gskiXCjF3rfDNDaeXQ=", - "owner": "intersectmbo", - "repo": "cardano-db-sync", - "rev": "5b131e97210cf603a3aca5ddca7d1420f9cabeec", + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", "type": "github" }, "original": { - "owner": "intersectmbo", - "ref": "13.6.0.1", - "repo": "cardano-db-sync", + "owner": "input-output-hk", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", "type": "github" } }, - "cardano-haskell-packages": { + "flake-compat_5": { "flake": false, "locked": { - "lastModified": 1753894642, - "narHash": "sha256-7TP8sGtytiHNWdphUZ2j44oy/4tCEqq19BdE7nc1LB8=", - "owner": "input-output-hk", - "repo": "cardano-haskell-packages", - "rev": "8d401eefedf9b1a8703594b3d33165fdb7ee8f69", + "lastModified": 1747046372, + "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "repo", - "repo": "cardano-haskell-packages", + "owner": "edolstra", + "repo": "flake-compat", "type": "github" } }, - "cardano-mainnet-mirror": { + "flake-lang": { "inputs": { - "nixpkgs": "nixpkgs_7" + "cardano-haskell-packages": "cardano-haskell-packages", + "crane": "crane", + "db-sync-ctl": "db-sync-ctl", + "easy-purescript-nix": "easy-purescript-nix", + "flake-parts": "flake-parts", + "haskell-nix": "haskell-nix", + "hci-effects": "hci-effects", + "iohk-nix": "iohk-nix", + "nixpkgs": "nixpkgs_8", + "plutarch": "plutarch", + "pre-commit-hooks": "pre-commit-hooks", + "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1642701714, - "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", - "owner": "input-output-hk", - "repo": "cardano-mainnet-mirror", - "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", + "lastModified": 1755770995, + "narHash": "sha256-fuYyV9HNp06+dTdYOlA8Apgj9nrfbEjsy1Ze7m9hEvk=", + "owner": "mlabs-haskell", + "repo": "flake-lang.nix", + "rev": "6b9796247ac0a35c4ddec1c2cc74ceee73474390", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "nix", - "repo": "cardano-mainnet-mirror", + "owner": "mlabs-haskell", + "repo": "flake-lang.nix", "type": "github" } }, - "cardano-mainnet-mirror_2": { + "flake-parts": { "inputs": { - "nixpkgs": "nixpkgs_13" + "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1642701714, - "narHash": "sha256-SR3luE+ePX6U193EKE/KSEuVzWAW0YsyPYDC4hOvALs=", - "owner": "input-output-hk", - "repo": "cardano-mainnet-mirror", - "rev": "819488be9eabbba6aaa7c931559bc584d8071e3d", + "lastModified": 1754487366, + "narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "nix", - "repo": "cardano-mainnet-mirror", + "owner": "hercules-ci", + "repo": "flake-parts", "type": "github" } }, - "cardano-nix": { + "flake-parts_2": { "inputs": { - "blockfrost": "blockfrost_2", - "cardano-db-sync": "cardano-db-sync", - "cardano-node": "cardano-node", - "crane": "crane_2", - "devour-flake": "devour-flake", - "devshell": "devshell_2", - "flake-parts": "flake-parts", - "flake-root": "flake-root", - "hercules-ci-effects": "hercules-ci-effects", - "nixpkgs": [ + "nixpkgs-lib": [ "flake-lang", - "ctl", + "hci-effects", "nixpkgs" - ], - "oura": "oura", - "pre-commit-hooks-nix": "pre-commit-hooks-nix", - "treefmt-nix": "treefmt-nix" + ] }, "locked": { - "lastModified": 1738590756, - "narHash": "sha256-yrg1m0BLC3isFNDSYCrZZ/Qehl9KHHOfmeeIaglPb3Y=", - "owner": "mlabs-haskell", - "repo": "cardano.nix", - "rev": "4cdea767a7efaabe0c75358416de3cf18175169e", + "lastModified": 1754487366, + "narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18", "type": "github" }, "original": { - "owner": "mlabs-haskell", - "repo": "cardano.nix", - "type": "github" + "id": "flake-parts", + "type": "indirect" } }, - "cardano-node": { + "flake-parts_3": { "inputs": { - "CHaP": "CHaP_2", - "cardano-automation": "cardano-automation", - "cardano-mainnet-mirror": "cardano-mainnet-mirror", - "customConfig": "customConfig", - "em": "em", - "empty-flake": "empty-flake", - "flake-compat": "flake-compat_4", - "hackageNix": "hackageNix_2", - "haskellNix": "haskellNix_2", - "hostNixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", + "nixpkgs-lib": [ + "hci-effects", "nixpkgs" - ], - "iohkNix": "iohkNix_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "haskellNix", - "nixpkgs-unstable" - ], - "ops-lib": "ops-lib", - "std": "std_2", - "utils": "utils_3" + ] }, "locked": { - "lastModified": 1736202991, - "narHash": "sha256-Oys38YkpSpB48/H2NseP9kTWXm92a7kjAZtdnorcIEY=", - "owner": "intersectmbo", - "repo": "cardano-node", - "rev": "1f63dbf2ab39e0b32bf6901dc203866d3e37de08", + "lastModified": 1754487366, + "narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18", "type": "github" }, "original": { - "owner": "intersectmbo", - "ref": "10.1.4", - "repo": "cardano-node", - "type": "github" + "id": "flake-parts", + "type": "indirect" } }, - "cardano-node_2": { - "inputs": { - "CHaP": "CHaP_3", - "cardano-automation": "cardano-automation_2", - "cardano-mainnet-mirror": "cardano-mainnet-mirror_2", - "customConfig": "customConfig_2", - "em": "em_2", - "empty-flake": "empty-flake_2", - "flake-compat": "flake-compat_8", - "hackageNix": "hackageNix_3", - "haskellNix": "haskellNix_3", - "hostNixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "nixpkgs" - ], - "iohkNix": "iohkNix_3", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "haskellNix", - "nixpkgs-unstable" - ], - "ops-lib": "ops-lib_2", - "std": "std_4", - "utils": "utils_6" - }, + "flake-utils": { "locked": { - "lastModified": 1736202991, - "narHash": "sha256-Oys38YkpSpB48/H2NseP9kTWXm92a7kjAZtdnorcIEY=", - "owner": "input-output-hk", - "repo": "cardano-node", - "rev": "1f63dbf2ab39e0b32bf6901dc203866d3e37de08", + "lastModified": 1679360468, + "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", + "owner": "hamishmack", + "repo": "flake-utils", + "rev": "e1ea268ff47ad475443dbabcd54744b4e5b9d4f5", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "10.1.4", - "repo": "cardano-node", + "owner": "hamishmack", + "ref": "hkm/nested-hydraJobs", + "repo": "flake-utils", "type": "github" } }, - "cardano-shell": { - "flake": false, + "flake-utils_2": { "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", - "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "cardano-shell", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "cardano-shell_2": { - "flake": false, + "flake-utils_3": { "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", - "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "cardano-shell", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "cardano-shell_3": { + "ghc-8.6.5-iohk": { "flake": false, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-shell", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "cardano-shell_4": { + "ghc-8.6.5-iohk_2": { "flake": false, "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "cardano-shell", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "cardano-shell_5": { - "flake": false, - "locked": { - "lastModified": 1608537748, - "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", - "owner": "input-output-hk", - "repo": "cardano-shell", - "rev": "9392c75087cb9a3d453998f4230930dea3a95725", - "type": "github" + "gitignore": { + "inputs": { + "nixpkgs": [ + "flake-lang", + "pre-commit-hooks", + "nixpkgs" + ] }, - "original": { - "owner": "input-output-hk", - "repo": "cardano-shell", - "type": "github" - } - }, - "crane": { "locked": { - "lastModified": 1754157397, - "narHash": "sha256-IoNvRsps/pMk0CTH1y/aXwsEHjqxfFns3uFG/xMDR9E=", - "owner": "ipetkov", - "repo": "crane", - "rev": "1eb37955571aed513cc5fe267fda0c001e9ffec9", + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", "type": "github" }, "original": { - "owner": "ipetkov", - "repo": "crane", + "owner": "hercules-ci", + "repo": "gitignore.nix", "type": "github" } }, - "crane_2": { + "gomod2nix": { + "inputs": { + "nixpkgs": "nixpkgs_2", + "utils": "utils" + }, "locked": { - "lastModified": 1731098351, - "narHash": "sha256-HQkYvKvaLQqNa10KEFGgWHfMAbWBfFp+4cAgkut+NNE=", - "owner": "ipetkov", - "repo": "crane", - "rev": "ef80ead953c1b28316cc3f8613904edc2eb90c28", + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", "type": "github" }, "original": { - "owner": "ipetkov", - "repo": "crane", + "owner": "tweag", + "repo": "gomod2nix", "type": "github" } }, - "ctl": { - "inputs": { - "blockfrost": "blockfrost", - "cardano-configurations": "cardano-configurations", - "cardano-nix": "cardano-nix", - "cardano-node": "cardano-node_2", - "db-sync": [ - "flake-lang", - "db-sync-ctl" - ], - "easy-purescript-nix": "easy-purescript-nix", - "flake-compat": "flake-compat_10", - "hercules-ci-effects": "hercules-ci-effects_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "nixpkgs" - ], - "nixpkgs-arion": "nixpkgs-arion", - "ogmios": "ogmios" - }, + "hackage": { + "flake": false, "locked": { - "lastModified": 1746025665, - "narHash": "sha256-futjJb6GKJ3eRQLdRV2SWcLvSrMlGnxrqXbfjd+PEQQ=", - "owner": "plutonomicon", - "repo": "cardano-transaction-lib", - "rev": "0d58ea37f947a3a678176573a51d4198fe17c17e", + "lastModified": 1684283135, + "narHash": "sha256-kG6+9ke7nYsbdvpMgxFcUi5eLA5WChL0DkP655si89U=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "720c07ced0ec9132ada4cd8f14b908330a1b290b", "type": "github" }, "original": { - "owner": "plutonomicon", - "ref": "develop", - "repo": "cardano-transaction-lib", + "owner": "input-output-hk", + "repo": "hackage.nix", "type": "github" } }, - "customConfig": { + "hackage-for-stackage": { + "flake": false, "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "lastModified": 1755735896, + "narHash": "sha256-X4HTWcv6vgx6EncLyyJJdaNTkL8F8P69HAMaEgZLYhg=", "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", + "repo": "hackage.nix", + "rev": "54203507c2141dfea4463ba5c4015f11f2c2a503", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "empty-flake", + "ref": "for-stackage", + "repo": "hackage.nix", "type": "github" } }, - "customConfig_2": { + "hackage-internal": { + "flake": false, "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "lastModified": 1750307553, + "narHash": "sha256-iiafNoeLHwlSLQTyvy8nPe2t6g5AV4PPcpMeH/2/DLs=", "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", + "repo": "hackage.nix", + "rev": "f7867baa8817fab296528f4a4ec39d1c7c4da4f3", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "empty-flake", + "repo": "hackage.nix", "type": "github" } }, - "customConfig_3": { + "hackage_2": { + "flake": false, "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", + "lastModified": 1755735907, + "narHash": "sha256-8fOqP45pBWQVFW4tBGgWw1vJmRRBSrQX1TOkCIRZUlw=", "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", + "repo": "hackage.nix", + "rev": "6313548135c7dc5daea2ae1ed1d0dd1afa3d485e", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "empty-flake", + "repo": "hackage.nix", "type": "github" } }, - "db-sync-ctl": { + "haskell-nix": { "inputs": { - "CHaP": "CHaP_4", - "customConfig": "customConfig_3", - "flake-compat": "flake-compat_11", - "haskellNix": "haskellNix_4", - "iohkNix": "iohkNix_4", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "haskellNix", - "nixpkgs-unstable" - ], - "std": [ + "HTTP": "HTTP_2", + "cabal-32": "cabal-32_2", + "cabal-34": "cabal-34_2", + "cabal-36": "cabal-36_2", + "cardano-shell": "cardano-shell_2", + "flake-compat": "flake-compat_4", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_2", + "hackage": "hackage_2", + "hackage-for-stackage": "hackage-for-stackage", + "hackage-internal": "hackage-internal", + "hls": "hls", + "hls-1.10": "hls-1.10_2", + "hls-2.0": "hls-2.0", + "hls-2.10": "hls-2.10", + "hls-2.11": "hls-2.11", + "hls-2.2": "hls-2.2", + "hls-2.3": "hls-2.3", + "hls-2.4": "hls-2.4", + "hls-2.5": "hls-2.5", + "hls-2.6": "hls-2.6", + "hls-2.7": "hls-2.7", + "hls-2.8": "hls-2.8", + "hls-2.9": "hls-2.9", + "hpc-coveralls": "hpc-coveralls_2", + "iserv-proxy": "iserv-proxy_2", + "nixpkgs": [ "flake-lang", - "db-sync-ctl", - "tullia", - "std" + "haskell-nix", + "nixpkgs-unstable" ], - "tullia": "tullia_3", - "utils": "utils_8" + "nixpkgs-2305": "nixpkgs-2305", + "nixpkgs-2311": "nixpkgs-2311", + "nixpkgs-2405": "nixpkgs-2405", + "nixpkgs-2411": "nixpkgs-2411", + "nixpkgs-2505": "nixpkgs-2505", + "nixpkgs-unstable": "nixpkgs-unstable_2", + "old-ghc-nix": "old-ghc-nix_2", + "stackage": "stackage_2" }, "locked": { - "lastModified": 1688568916, - "narHash": "sha256-XTGTi3PzCcbLL+63JSXTe7mQmGKB0YgEoW1VpqdX2d0=", + "lastModified": 1755737525, + "narHash": "sha256-BVHCMhwjwl+uxDUgQOQu3EoGRwcDYLuJ/6DNTgWDSys=", "owner": "input-output-hk", - "repo": "cardano-db-sync", - "rev": "6e69a80797f2d68423b25ca7787e81533b367e42", + "repo": "haskell.nix", + "rev": "a808cbd430a74c00a0e5959d384e1a11e2ea1e2a", "type": "github" }, "original": { "owner": "input-output-hk", - "ref": "13.1.1.3", - "repo": "cardano-db-sync", - "type": "github" - } - }, - "devour-flake": { - "flake": false, - "locked": { - "lastModified": 1726283167, - "narHash": "sha256-Cvc84VzvvdmehafnaIPfdPylNWJcDmv79QQh/MH/4Qk=", - "owner": "srid", - "repo": "devour-flake", - "rev": "9b96d31a55be119df8496ec5b7369823deec8a1c", - "type": "github" - }, - "original": { - "owner": "srid", - "repo": "devour-flake", + "repo": "haskell.nix", "type": "github" } }, - "devshell": { + "haskellNix": { "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "flake-utils" - ], + "HTTP": "HTTP", + "cabal-32": "cabal-32", + "cabal-34": "cabal-34", + "cabal-36": "cabal-36", + "cardano-shell": "cardano-shell", + "flake-compat": "flake-compat_2", + "flake-utils": "flake-utils", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk", + "hackage": "hackage", + "hls-1.10": "hls-1.10", + "hpc-coveralls": "hpc-coveralls", + "hydra": "hydra", + "iserv-proxy": "iserv-proxy", "nixpkgs": [ "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] + "db-sync-ctl", + "haskellNix", + "nixpkgs-unstable" + ], + "nixpkgs-2003": "nixpkgs-2003", + "nixpkgs-2105": "nixpkgs-2105", + "nixpkgs-2111": "nixpkgs-2111", + "nixpkgs-2205": "nixpkgs-2205", + "nixpkgs-2211": "nixpkgs-2211", + "nixpkgs-unstable": "nixpkgs-unstable", + "old-ghc-nix": "old-ghc-nix", + "stackage": "stackage" }, "locked": { - "lastModified": 1663445644, - "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", - "owner": "numtide", - "repo": "devshell", - "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "lastModified": 1684284676, + "narHash": "sha256-VhZiVvwXqHkWh8Tw81WL8vwMzGsAhag8SQCQWGXQBLs=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "ec345f667f9f1596e3849b530fe4f1573fc07653", "type": "github" }, "original": { - "owner": "numtide", - "repo": "devshell", + "owner": "input-output-hk", + "repo": "haskell.nix", "type": "github" } }, - "devshell_2": { + "hci-effects": { "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "nixpkgs" - ] + "flake-parts": "flake-parts_2", + "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1728330715, - "narHash": "sha256-xRJ2nPOXb//u1jaBnDP56M7v5ldavjbtR6lfGqSvcKg=", - "owner": "numtide", - "repo": "devshell", - "rev": "dd6b80932022cea34a019e2bb32f6fa9e494dfef", + "lastModified": 1755233722, + "narHash": "sha256-AavrbMltJKcC2Fx0lfJoZfmy7g87ebXU0ddVenhajLA=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "99e03e72e3f7e13506f80ef9ebaedccb929d84d0", "type": "github" }, "original": { - "owner": "numtide", - "repo": "devshell", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", "type": "github" } }, - "devshell_3": { + "hci-effects_2": { "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "flake-utils" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] + "flake-parts": "flake-parts_3", + "nixpkgs": "nixpkgs_11" }, "locked": { - "lastModified": 1663445644, - "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", - "owner": "numtide", - "repo": "devshell", - "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "lastModified": 1755233722, + "narHash": "sha256-AavrbMltJKcC2Fx0lfJoZfmy7g87ebXU0ddVenhajLA=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "99e03e72e3f7e13506f80ef9ebaedccb929d84d0", "type": "github" }, "original": { - "owner": "numtide", - "repo": "devshell", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", "type": "github" } }, - "devshell_4": { - "inputs": { - "flake-utils": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "flake-utils" - ], - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] - }, + "hls": { + "flake": false, "locked": { - "lastModified": 1663445644, - "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", - "owner": "numtide", - "repo": "devshell", - "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "lastModified": 1741604408, + "narHash": "sha256-tuq3+Ip70yu89GswZ7DSINBpwRprnWnl6xDYnS4GOsc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "682d6894c94087da5e566771f25311c47e145359", "type": "github" }, "original": { - "owner": "numtide", - "repo": "devshell", + "owner": "haskell", + "repo": "haskell-language-server", "type": "github" } }, - "dmerge": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ], - "yants": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "yants" - ] - }, + "hls-1.10": { + "flake": false, "locked": { - "lastModified": 1659548052, - "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", - "owner": "divnix", - "repo": "data-merge", - "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", "type": "github" }, "original": { - "owner": "divnix", - "repo": "data-merge", + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "dmerge_2": { - "inputs": { - "haumea": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "haumea" - ], - "nixlib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "lib" - ], - "yants": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "yants" - ] - }, + "hls-1.10_2": { + "flake": false, "locked": { - "lastModified": 1686862774, - "narHash": "sha256-ojGtRQ9pIOUrxsQEuEPerUkqIJEuod9hIflfNkY+9CE=", - "owner": "divnix", - "repo": "dmerge", - "rev": "9f7f7a8349d33d7bd02e0f2b484b1f076e503a96", + "lastModified": 1680000865, + "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", "type": "github" }, "original": { - "owner": "divnix", - "ref": "0.2.1", - "repo": "dmerge", + "owner": "haskell", + "ref": "1.10.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "dmerge_3": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ], - "yants": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "yants" - ] - }, - "locked": { - "lastModified": 1659548052, - "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", - "owner": "divnix", - "repo": "data-merge", - "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "data-merge", - "type": "github" - } - }, - "dmerge_4": { - "inputs": { - "haumea": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "haumea" - ], - "nixlib": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "lib" - ], - "yants": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "yants" - ] - }, - "locked": { - "lastModified": 1686862774, - "narHash": "sha256-ojGtRQ9pIOUrxsQEuEPerUkqIJEuod9hIflfNkY+9CE=", - "owner": "divnix", - "repo": "dmerge", - "rev": "9f7f7a8349d33d7bd02e0f2b484b1f076e503a96", - "type": "github" - }, - "original": { - "owner": "divnix", - "ref": "0.2.1", - "repo": "dmerge", - "type": "github" - } - }, - "dmerge_5": { - "inputs": { - "nixlib": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ], - "yants": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "yants" - ] - }, - "locked": { - "lastModified": 1659548052, - "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", - "owner": "divnix", - "repo": "data-merge", - "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "data-merge", - "type": "github" - } - }, - "easy-purescript-nix": { - "flake": false, - "locked": { - "lastModified": 1710161569, - "narHash": "sha256-lcIRIOFCdIWEGyKyG/tB4KvxM9zoWuBRDxW+T+mvIb0=", - "owner": "justinwoo", - "repo": "easy-purescript-nix", - "rev": "117fd96acb69d7d1727df95b6fde9d8715e031fc", - "type": "github" - }, - "original": { - "owner": "justinwoo", - "repo": "easy-purescript-nix", - "type": "github" - } - }, - "em": { - "flake": false, - "locked": { - "lastModified": 1685015066, - "narHash": "sha256-etAdEoYhtvjTw1ITh28WPNfwvvb5t/fpwCP6s7odSiQ=", - "owner": "deepfire", - "repo": "em", - "rev": "af69bb5c2ac2161434d8fea45f920f8f359587ce", - "type": "github" - }, - "original": { - "owner": "deepfire", - "repo": "em", - "type": "github" - } - }, - "em_2": { - "flake": false, - "locked": { - "lastModified": 1685015066, - "narHash": "sha256-etAdEoYhtvjTw1ITh28WPNfwvvb5t/fpwCP6s7odSiQ=", - "owner": "deepfire", - "repo": "em", - "rev": "af69bb5c2ac2161434d8fea45f920f8f359587ce", - "type": "github" - }, - "original": { - "owner": "deepfire", - "repo": "em", - "type": "github" - } - }, - "empty-flake": { - "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", - "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "empty-flake", - "type": "github" - } - }, - "empty-flake_2": { - "locked": { - "lastModified": 1630400035, - "narHash": "sha256-MWaVOCzuFwp09wZIW9iHq5wWen5C69I940N1swZLEQ0=", - "owner": "input-output-hk", - "repo": "empty-flake", - "rev": "2040a05b67bf9a669ce17eca56beb14b4206a99a", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "empty-flake", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1647532380, - "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "7da118186435255a30b5ffeabba9629c344c0bec", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "fixes", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_10": { - "flake": false, - "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_11": { - "flake": false, - "locked": { - "lastModified": 1647532380, - "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "7da118186435255a30b5ffeabba9629c344c0bec", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "fixes", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_12": { - "flake": false, - "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_13": { - "flake": false, - "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_14": { - "flake": false, - "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_15": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { - "flake": false, - "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_3": { + "hls-2.0": { "flake": false, - "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_4": { - "flake": false, - "locked": { - "lastModified": 1647532380, - "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "7da118186435255a30b5ffeabba9629c344c0bec", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "fixes", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_5": { - "flake": false, - "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_6": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_7": { - "flake": false, - "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_8": { - "flake": false, - "locked": { - "lastModified": 1647532380, - "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "7da118186435255a30b5ffeabba9629c344c0bec", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "fixes", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_9": { - "flake": false, - "locked": { - "lastModified": 1672831974, - "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", - "owner": "input-output-hk", - "repo": "flake-compat", - "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "hkm/gitlab-fix", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-lang": { - "inputs": { - "cardano-haskell-packages": "cardano-haskell-packages", - "crane": "crane", - "ctl": "ctl", - "db-sync-ctl": "db-sync-ctl", - "flake-parts": "flake-parts_3", - "haskell-nix": "haskell-nix", - "hci-effects": "hci-effects", - "iohk-nix": "iohk-nix", - "nixpkgs": "nixpkgs_24", - "plutarch": "plutarch", - "pre-commit-hooks": "pre-commit-hooks", - "rust-overlay": "rust-overlay" - }, - "locked": { - "lastModified": 1754966971, - "narHash": "sha256-5bP4SjY6s7yt0l2NykbuJsZT+rfglt8fXbvUXCyljXI=", - "owner": "mlabs-haskell", - "repo": "flake-lang.nix", - "rev": "5e6795f9fcacecc8786f84277b412742f5e6c37d", - "type": "github" - }, - "original": { - "owner": "mlabs-haskell", - "repo": "flake-lang.nix", - "type": "github" - } - }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib" - }, - "locked": { - "lastModified": 1730504689, - "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "506278e768c2a08bec68eb62932193e341f55c90", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_2": { - "inputs": { - "nixpkgs-lib": [ - "flake-lang", - "ctl", - "hercules-ci-effects", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1741352980, - "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", - "type": "github" - }, - "original": { - "id": "flake-parts", - "type": "indirect" - } - }, - "flake-parts_3": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib_2" - }, - "locked": { - "lastModified": 1754091436, - "narHash": "sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "67df8c627c2c39c41dbec76a1f201929929ab0bd", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_4": { - "inputs": { - "nixpkgs-lib": [ - "flake-lang", - "hci-effects", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1751413152, - "narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "77826244401ea9de6e3bac47c2db46005e1f30b5", - "type": "github" - }, - "original": { - "id": "flake-parts", - "type": "indirect" - } - }, - "flake-parts_5": { - "inputs": { - "nixpkgs-lib": [ - "hci-effects", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1754487366, - "narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18", - "type": "github" - }, - "original": { - "id": "flake-parts", - "type": "indirect" - } - }, - "flake-root": { - "locked": { - "lastModified": 1723604017, - "narHash": "sha256-rBtQ8gg+Dn4Sx/s+pvjdq3CB2wQNzx9XGFq/JVGCB6k=", - "owner": "srid", - "repo": "flake-root", - "rev": "b759a56851e10cb13f6b8e5698af7b59c44be26e", - "type": "github" - }, - "original": { - "owner": "srid", - "repo": "flake-root", - "type": "github" - } - }, - "flake-utils": { - "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_10": { - "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_11": { - "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_2": { - "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_3": { - "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_4": { - "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_5": { - "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_6": { - "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_7": { - "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_8": { - "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_9": { - "locked": { - "lastModified": 1679360468, - "narHash": "sha256-LGnza3cfXF10Biw3ZTg0u9o9t7s680Ww200t5KkHTh8=", - "owner": "hamishmack", - "repo": "flake-utils", - "rev": "e1ea268ff47ad475443dbabcd54744b4e5b9d4f5", - "type": "github" - }, - "original": { - "owner": "hamishmack", - "ref": "hkm/nested-hydraJobs", - "repo": "flake-utils", - "type": "github" - } - }, - "ghc-8.6.5-iohk": { - "flake": false, - "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", - "type": "github" - } - }, - "ghc-8.6.5-iohk_2": { - "flake": false, - "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", - "type": "github" - } - }, - "ghc-8.6.5-iohk_3": { - "flake": false, - "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", - "type": "github" - } - }, - "ghc-8.6.5-iohk_4": { - "flake": false, - "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", - "type": "github" - } - }, - "ghc-8.6.5-iohk_5": { - "flake": false, - "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", - "type": "github" - } - }, - "ghc910X": { - "flake": false, - "locked": { - "lastModified": 1714520650, - "narHash": "sha256-4uz6RA1hRr0RheGNDM49a/B3jszqNNU8iHIow4mSyso=", - "ref": "ghc-9.10", - "rev": "2c6375b9a804ac7fca1e82eb6fcfc8594c67c5f5", - "revCount": 62663, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - }, - "original": { - "ref": "ghc-9.10", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - } - }, - "ghc910X_2": { - "flake": false, - "locked": { - "lastModified": 1714520650, - "narHash": "sha256-4uz6RA1hRr0RheGNDM49a/B3jszqNNU8iHIow4mSyso=", - "ref": "ghc-9.10", - "rev": "2c6375b9a804ac7fca1e82eb6fcfc8594c67c5f5", - "revCount": 62663, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - }, - "original": { - "ref": "ghc-9.10", - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - } - }, - "ghc911": { - "flake": false, - "locked": { - "lastModified": 1714817013, - "narHash": "sha256-m2je4UvWfkgepMeUIiXHMwE6W+iVfUY38VDGkMzjCcc=", - "ref": "refs/heads/master", - "rev": "fc24c5cf6c62ca9e3c8d236656e139676df65034", - "revCount": 62816, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - }, - "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - } - }, - "ghc911_2": { - "flake": false, - "locked": { - "lastModified": 1714817013, - "narHash": "sha256-m2je4UvWfkgepMeUIiXHMwE6W+iVfUY38VDGkMzjCcc=", - "ref": "refs/heads/master", - "rev": "fc24c5cf6c62ca9e3c8d236656e139676df65034", - "revCount": 62816, - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - }, - "original": { - "submodules": true, - "type": "git", - "url": "https://gitlab.haskell.org/ghc/ghc" - } - }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "pre-commit-hooks-nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, - "gitignore_2": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "pre-commit-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, - "gomod2nix": { - "inputs": { - "nixpkgs": "nixpkgs_4", - "utils": "utils_2" - }, - "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", - "type": "github" - }, - "original": { - "owner": "tweag", - "repo": "gomod2nix", - "type": "github" - } - }, - "gomod2nix_2": { - "inputs": { - "nixpkgs": "nixpkgs_10", - "utils": "utils_5" - }, - "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", - "type": "github" - }, - "original": { - "owner": "tweag", - "repo": "gomod2nix", - "type": "github" - } - }, - "gomod2nix_3": { - "inputs": { - "nixpkgs": "nixpkgs_18", - "utils": "utils_7" - }, - "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", - "type": "github" - }, - "original": { - "owner": "tweag", - "repo": "gomod2nix", - "type": "github" - } - }, - "hackage": { - "flake": false, - "locked": { - "lastModified": 1684283135, - "narHash": "sha256-kG6+9ke7nYsbdvpMgxFcUi5eLA5WChL0DkP655si89U=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "720c07ced0ec9132ada4cd8f14b908330a1b290b", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackage-for-stackage": { - "flake": false, - "locked": { - "lastModified": 1754181047, - "narHash": "sha256-hOhswJq2XXoMdmPACrRQgOkhMUF3KcuiteibhLdckPk=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "e59292859c69c6ae7baa8b883fc007ba1b546c82", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "for-stackage", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackage-internal": { - "flake": false, - "locked": { - "lastModified": 1750307553, - "narHash": "sha256-iiafNoeLHwlSLQTyvy8nPe2t6g5AV4PPcpMeH/2/DLs=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "f7867baa8817fab296528f4a4ec39d1c7c4da4f3", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackageNix": { - "flake": false, - "locked": { - "lastModified": 1729470551, - "narHash": "sha256-AKBK4jgOjIz5DxIsIKFZR0mf30qc4Dv+Dm/DVRjdjD8=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "ee5b803d828db6efac3ef7e7e072c855287dc298", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackageNix_2": { - "flake": false, - "locked": { - "lastModified": 1729039425, - "narHash": "sha256-sIglYcw8Dacj4n0bRlUWo+NLkDMcVi6vtmKvUyG+ZrQ=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "6dc43e5e01f113ce151056a8f94bce7bb2f13eb9", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackageNix_3": { - "flake": false, - "locked": { - "lastModified": 1729039425, - "narHash": "sha256-sIglYcw8Dacj4n0bRlUWo+NLkDMcVi6vtmKvUyG+ZrQ=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "6dc43e5e01f113ce151056a8f94bce7bb2f13eb9", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "hackage_2": { - "flake": false, - "locked": { - "lastModified": 1754181057, - "narHash": "sha256-AO1D9kK/tBaCakTqneouDc5bFSHoa4jArYA1/Vxyc1c=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "5e8e82f42258d49eae19fffdb5a11ab1cbfabb03", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", - "type": "github" - } - }, - "haskell-nix": { - "inputs": { - "HTTP": "HTTP_5", - "cabal-32": "cabal-32_5", - "cabal-34": "cabal-34_5", - "cabal-36": "cabal-36_5", - "cardano-shell": "cardano-shell_5", - "flake-compat": "flake-compat_14", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_5", - "hackage": "hackage_2", - "hackage-for-stackage": "hackage-for-stackage", - "hackage-internal": "hackage-internal", - "hls": "hls", - "hls-1.10": "hls-1.10_5", - "hls-2.0": "hls-2.0_4", - "hls-2.10": "hls-2.10", - "hls-2.11": "hls-2.11", - "hls-2.2": "hls-2.2_4", - "hls-2.3": "hls-2.3_4", - "hls-2.4": "hls-2.4_4", - "hls-2.5": "hls-2.5_4", - "hls-2.6": "hls-2.6_4", - "hls-2.7": "hls-2.7_4", - "hls-2.8": "hls-2.8_4", - "hls-2.9": "hls-2.9_2", - "hpc-coveralls": "hpc-coveralls_5", - "iserv-proxy": "iserv-proxy_5", - "nixpkgs": [ - "flake-lang", - "haskell-nix", - "nixpkgs-unstable" - ], - "nixpkgs-2305": "nixpkgs-2305_4", - "nixpkgs-2311": "nixpkgs-2311_4", - "nixpkgs-2405": "nixpkgs-2405_2", - "nixpkgs-2411": "nixpkgs-2411", - "nixpkgs-2505": "nixpkgs-2505", - "nixpkgs-unstable": "nixpkgs-unstable_5", - "old-ghc-nix": "old-ghc-nix_5", - "stackage": "stackage_5" - }, - "locked": { - "lastModified": 1754182356, - "narHash": "sha256-WqmSaDVmxaJnp7DXboTaiPHOnLSoKX/+tpgQTcx34bE=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "3c4414748d1a90122962a5ad6a72a319613892ec", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haskellNix": { - "inputs": { - "HTTP": "HTTP", - "cabal-32": "cabal-32", - "cabal-34": "cabal-34", - "cabal-36": "cabal-36", - "cardano-shell": "cardano-shell", - "flake-compat": "flake-compat_2", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk", - "hackage": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "hackageNix" - ], - "hls-1.10": "hls-1.10", - "hls-2.0": "hls-2.0", - "hls-2.2": "hls-2.2", - "hls-2.3": "hls-2.3", - "hls-2.4": "hls-2.4", - "hls-2.5": "hls-2.5", - "hls-2.6": "hls-2.6", - "hls-2.7": "hls-2.7", - "hls-2.8": "hls-2.8", - "hls-2.9": "hls-2.9", - "hpc-coveralls": "hpc-coveralls", - "hydra": "hydra", - "iserv-proxy": "iserv-proxy", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "haskellNix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003", - "nixpkgs-2105": "nixpkgs-2105", - "nixpkgs-2111": "nixpkgs-2111", - "nixpkgs-2205": "nixpkgs-2205", - "nixpkgs-2211": "nixpkgs-2211", - "nixpkgs-2305": "nixpkgs-2305", - "nixpkgs-2311": "nixpkgs-2311", - "nixpkgs-2405": "nixpkgs-2405", - "nixpkgs-unstable": "nixpkgs-unstable", - "old-ghc-nix": "old-ghc-nix", - "stackage": "stackage" - }, - "locked": { - "lastModified": 1729471867, - "narHash": "sha256-xMxD8YQGGcbrZGHJws32UvtWJxfhzAO7yzPs5TjiOPY=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "03c3581d2e0c91f7c2690115b487961ad62099a6", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haskellNix_2": { - "inputs": { - "HTTP": "HTTP_2", - "cabal-32": "cabal-32_2", - "cabal-34": "cabal-34_2", - "cabal-36": "cabal-36_2", - "cardano-shell": "cardano-shell_2", - "flake-compat": "flake-compat_5", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_2", - "ghc910X": "ghc910X", - "ghc911": "ghc911", - "hackage": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "hackageNix" - ], - "hls-1.10": "hls-1.10_2", - "hls-2.0": "hls-2.0_2", - "hls-2.2": "hls-2.2_2", - "hls-2.3": "hls-2.3_2", - "hls-2.4": "hls-2.4_2", - "hls-2.5": "hls-2.5_2", - "hls-2.6": "hls-2.6_2", - "hls-2.7": "hls-2.7_2", - "hls-2.8": "hls-2.8_2", - "hpc-coveralls": "hpc-coveralls_2", - "hydra": "hydra_2", - "iserv-proxy": "iserv-proxy_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "nixpkgs" - ], - "nixpkgs-2003": "nixpkgs-2003_2", - "nixpkgs-2105": "nixpkgs-2105_2", - "nixpkgs-2111": "nixpkgs-2111_2", - "nixpkgs-2205": "nixpkgs-2205_2", - "nixpkgs-2211": "nixpkgs-2211_2", - "nixpkgs-2305": "nixpkgs-2305_2", - "nixpkgs-2311": "nixpkgs-2311_2", - "nixpkgs-unstable": "nixpkgs-unstable_2", - "old-ghc-nix": "old-ghc-nix_2", - "stackage": "stackage_2" - }, - "locked": { - "lastModified": 1718797200, - "narHash": "sha256-ueFxTuZrQ3ZT/Fj5sSeUWlqKa4+OkUU1xW0E+q/XTfw=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "cb139fa956158397aa398186bb32dd26f7318784", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "cb139fa956158397aa398186bb32dd26f7318784", - "type": "github" - } - }, - "haskellNix_3": { - "inputs": { - "HTTP": "HTTP_3", - "cabal-32": "cabal-32_3", - "cabal-34": "cabal-34_3", - "cabal-36": "cabal-36_3", - "cardano-shell": "cardano-shell_3", - "flake-compat": "flake-compat_9", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_3", - "ghc910X": "ghc910X_2", - "ghc911": "ghc911_2", - "hackage": [ - "flake-lang", - "ctl", - "cardano-node", - "hackageNix" - ], - "hls-1.10": "hls-1.10_3", - "hls-2.0": "hls-2.0_3", - "hls-2.2": "hls-2.2_3", - "hls-2.3": "hls-2.3_3", - "hls-2.4": "hls-2.4_3", - "hls-2.5": "hls-2.5_3", - "hls-2.6": "hls-2.6_3", - "hls-2.7": "hls-2.7_3", - "hls-2.8": "hls-2.8_3", - "hpc-coveralls": "hpc-coveralls_3", - "hydra": "hydra_3", - "iserv-proxy": "iserv-proxy_3", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "nixpkgs" - ], - "nixpkgs-2003": "nixpkgs-2003_3", - "nixpkgs-2105": "nixpkgs-2105_3", - "nixpkgs-2111": "nixpkgs-2111_3", - "nixpkgs-2205": "nixpkgs-2205_3", - "nixpkgs-2211": "nixpkgs-2211_3", - "nixpkgs-2305": "nixpkgs-2305_3", - "nixpkgs-2311": "nixpkgs-2311_3", - "nixpkgs-unstable": "nixpkgs-unstable_3", - "old-ghc-nix": "old-ghc-nix_3", - "stackage": "stackage_3" - }, - "locked": { - "lastModified": 1718797200, - "narHash": "sha256-ueFxTuZrQ3ZT/Fj5sSeUWlqKa4+OkUU1xW0E+q/XTfw=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "cb139fa956158397aa398186bb32dd26f7318784", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "cb139fa956158397aa398186bb32dd26f7318784", - "type": "github" - } - }, - "haskellNix_4": { - "inputs": { - "HTTP": "HTTP_4", - "cabal-32": "cabal-32_4", - "cabal-34": "cabal-34_4", - "cabal-36": "cabal-36_4", - "cardano-shell": "cardano-shell_4", - "flake-compat": "flake-compat_12", - "flake-utils": "flake-utils_9", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_4", - "hackage": "hackage", - "hls-1.10": "hls-1.10_4", - "hpc-coveralls": "hpc-coveralls_4", - "hydra": "hydra_4", - "iserv-proxy": "iserv-proxy_4", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "haskellNix", - "nixpkgs-unstable" - ], - "nixpkgs-2003": "nixpkgs-2003_4", - "nixpkgs-2105": "nixpkgs-2105_4", - "nixpkgs-2111": "nixpkgs-2111_4", - "nixpkgs-2205": "nixpkgs-2205_4", - "nixpkgs-2211": "nixpkgs-2211_4", - "nixpkgs-unstable": "nixpkgs-unstable_4", - "old-ghc-nix": "old-ghc-nix_4", - "stackage": "stackage_4" - }, - "locked": { - "lastModified": 1684284676, - "narHash": "sha256-VhZiVvwXqHkWh8Tw81WL8vwMzGsAhag8SQCQWGXQBLs=", - "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "ec345f667f9f1596e3849b530fe4f1573fc07653", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "haskell.nix", - "type": "github" - } - }, - "haumea": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "lib" - ] - }, - "locked": { - "lastModified": 1685133229, - "narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", - "owner": "nix-community", - "repo": "haumea", - "rev": "34dd58385092a23018748b50f9b23de6266dffc2", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "v0.2.2", - "repo": "haumea", - "type": "github" - } - }, - "haumea_2": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "lib" - ] - }, - "locked": { - "lastModified": 1685133229, - "narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", - "owner": "nix-community", - "repo": "haumea", - "rev": "34dd58385092a23018748b50f9b23de6266dffc2", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "v0.2.2", - "repo": "haumea", - "type": "github" - } - }, - "hci-effects": { - "inputs": { - "flake-parts": "flake-parts_4", - "nixpkgs": "nixpkgs_22" - }, - "locked": { - "lastModified": 1752595130, - "narHash": "sha256-CNBgr4OZSuklGtNOa9CnTNo9+Xceqn/EDAC1Tc43fH8=", - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "rev": "5f2e09654b2e70ba643e41609d9f9b6640f22113", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "type": "github" - } - }, - "hci-effects_2": { - "inputs": { - "flake-parts": "flake-parts_5", - "nixpkgs": "nixpkgs_27" - }, - "locked": { - "lastModified": 1755233722, - "narHash": "sha256-AavrbMltJKcC2Fx0lfJoZfmy7g87ebXU0ddVenhajLA=", - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "rev": "99e03e72e3f7e13506f80ef9ebaedccb929d84d0", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "type": "github" - } - }, - "hercules-ci-effects": { - "inputs": { - "flake-parts": [ - "flake-lang", - "ctl", - "cardano-nix", - "flake-parts" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1714676393, - "narHash": "sha256-OA2LZPTCHyH0PcsNkjeTLvgsn4JmsV2VTvXQacHeUZU=", - "owner": "mlabs-haskell", - "repo": "hercules-ci-effects", - "rev": "5ad8f9613b735cb4f8222f07ae45ca37bfe76a23", - "type": "github" - }, - "original": { - "owner": "mlabs-haskell", - "ref": "push-cache-effect", - "repo": "hercules-ci-effects", - "type": "github" - } - }, - "hercules-ci-effects_2": { - "inputs": { - "flake-parts": "flake-parts_2", - "nixpkgs": "nixpkgs_16" - }, - "locked": { - "lastModified": 1742014779, - "narHash": "sha256-I6fG1zrfdLFcp/imGZElig0BJO3YU0QEXLgvwWoOpJ8=", - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "rev": "524637ef84c177661690b924bf64a1ce18072a2c", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "hercules-ci-effects", - "type": "github" - } - }, - "hls": { - "flake": false, - "locked": { - "lastModified": 1741604408, - "narHash": "sha256-tuq3+Ip70yu89GswZ7DSINBpwRprnWnl6xDYnS4GOsc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "682d6894c94087da5e566771f25311c47e145359", - "type": "github" - }, - "original": { - "owner": "haskell", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_2": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_3": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_4": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-1.10_5": { - "flake": false, - "locked": { - "lastModified": 1680000865, - "narHash": "sha256-rc7iiUAcrHxwRM/s0ErEsSPxOR3u8t7DvFeWlMycWgo=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b08691db779f7a35ff322b71e72a12f6e3376fd9", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "1.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0_2": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0_3": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.0_4": { - "flake": false, - "locked": { - "lastModified": 1687698105, - "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "783905f211ac63edf982dd1889c671653327e441", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.0.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.10": { - "flake": false, - "locked": { - "lastModified": 1743069404, - "narHash": "sha256-q4kDFyJDDeoGqfEtrZRx4iqMVEC2MOzCToWsFY+TOzY=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "2318c61db3a01e03700bd4b05665662929b7fe8b", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.10.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.11": { - "flake": false, - "locked": { - "lastModified": 1747306193, - "narHash": "sha256-/MmtpF8+FyQlwfKHqHK05BdsxC9LHV70d/FiMM7pzBM=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "46ef4523ea4949f47f6d2752476239f1c6d806fe", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.11.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.2": { - "flake": false, - "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.2_2": { - "flake": false, - "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.2_3": { - "flake": false, - "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.2_4": { - "flake": false, - "locked": { - "lastModified": 1693064058, - "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.2.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.3": { - "flake": false, - "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.3_2": { - "flake": false, - "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.3_3": { - "flake": false, - "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.3_4": { - "flake": false, - "locked": { - "lastModified": 1695910642, - "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.3.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.4": { - "flake": false, - "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.4_2": { - "flake": false, - "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.4_3": { - "flake": false, - "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.4_4": { - "flake": false, - "locked": { - "lastModified": 1699862708, - "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.4.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.5": { - "flake": false, - "locked": { - "lastModified": 1701080174, - "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.5.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.5_2": { - "flake": false, - "locked": { - "lastModified": 1701080174, - "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.5.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.5_3": { - "flake": false, - "locked": { - "lastModified": 1701080174, - "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.5.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.5_4": { - "flake": false, - "locked": { - "lastModified": 1701080174, - "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.5.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.6": { - "flake": false, - "locked": { - "lastModified": 1705325287, - "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.6.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.6_2": { - "flake": false, - "locked": { - "lastModified": 1705325287, - "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.6.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.6_3": { - "flake": false, - "locked": { - "lastModified": 1705325287, - "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.6.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.6_4": { - "flake": false, - "locked": { - "lastModified": 1705325287, - "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.6.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.7": { - "flake": false, - "locked": { - "lastModified": 1708965829, - "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.7.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.7_2": { - "flake": false, - "locked": { - "lastModified": 1708965829, - "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.7.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.7_3": { - "flake": false, - "locked": { - "lastModified": 1708965829, - "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.7.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.7_4": { - "flake": false, - "locked": { - "lastModified": 1708965829, - "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.7.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.8": { - "flake": false, - "locked": { - "lastModified": 1715153580, - "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.8.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.8_2": { - "flake": false, - "locked": { - "lastModified": 1715153580, - "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.8.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.8_3": { - "flake": false, - "locked": { - "lastModified": 1715153580, - "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.8.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.8_4": { - "flake": false, - "locked": { - "lastModified": 1715153580, - "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.8.0.0", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.9": { - "flake": false, - "locked": { - "lastModified": 1720003792, - "narHash": "sha256-qnDx8Pk0UxtoPr7BimEsAZh9g2WuTuMB/kGqnmdryKs=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "0c1817cb2babef0765e4e72dd297c013e8e3d12b", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.9.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hls-2.9_2": { - "flake": false, - "locked": { - "lastModified": 1719993701, - "narHash": "sha256-wy348++MiMm/xwtI9M3vVpqj2qfGgnDcZIGXw8sF1sA=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "90319a7e62ab93ab65a95f8f2bcf537e34dae76a", - "type": "github" - }, - "original": { - "owner": "haskell", - "ref": "2.9.0.1", - "repo": "haskell-language-server", - "type": "github" - } - }, - "hpc-coveralls": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_2": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_3": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_4": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hpc-coveralls_5": { - "flake": false, - "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", - "type": "github" - }, - "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "type": "github" - } - }, - "hydra": { - "inputs": { - "nix": "nix", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_2": { - "inputs": { - "nix": "nix_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_3": { - "inputs": { - "nix": "nix_3", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "hydra_4": { - "inputs": { - "nix": "nix_4", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "haskellNix", - "hydra", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1671755331, - "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", - "owner": "NixOS", - "repo": "hydra", - "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", - "type": "github" - }, - "original": { - "id": "hydra", - "type": "indirect" - } - }, - "incl": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "lib" - ] - }, - "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "incl", - "type": "github" - } - }, - "incl_2": { - "inputs": { - "nixlib": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "lib" - ] - }, - "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "incl", - "type": "github" - } - }, - "incl_3": { - "inputs": { - "nixlib": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1669263024, - "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", - "owner": "divnix", - "repo": "incl", - "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", - "type": "github" - }, - "original": { - "owner": "divnix", - "repo": "incl", - "type": "github" - } - }, - "iohk-nix": { - "inputs": { - "blst": "blst_5", - "nixpkgs": "nixpkgs_23", - "secp256k1": "secp256k1_5", - "sodium": "sodium_5" - }, - "locked": { - "lastModified": 1751421193, - "narHash": "sha256-rklXDo12dfukaSqcEyiYbze3ffRtTl2/WAAQCWfkGiw=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "64ca6f4c0c6db283e2ec457c775bce75173fb319", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohkNix": { - "inputs": { - "blst": "blst", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-db-sync", - "nixpkgs" - ], - "secp256k1": "secp256k1", - "sodium": "sodium" - }, - "locked": { - "lastModified": 1730297014, - "narHash": "sha256-n3f1iAmltKnorHWx7FrdbGIF/FmEG8SsZshS16vnpz0=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "d407eedd4995e88d08e83ef75844a8a9c2e29b36", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohkNix_2": { - "inputs": { - "blst": "blst_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "nixpkgs" - ], - "secp256k1": "secp256k1_2", - "sodium": "sodium_2" - }, - "locked": { - "lastModified": 1728687575, - "narHash": "sha256-38uD8SqT557eh5yyRYuthKm1yTtiWzAN0FH7L/01QKM=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "86c2bd46e8a08f62ea38ffe77cb4e9c337b42217", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohkNix_3": { - "inputs": { - "blst": "blst_3", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "nixpkgs" - ], - "secp256k1": "secp256k1_3", - "sodium": "sodium_3" - }, - "locked": { - "lastModified": 1728687575, - "narHash": "sha256-38uD8SqT557eh5yyRYuthKm1yTtiWzAN0FH7L/01QKM=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "86c2bd46e8a08f62ea38ffe77cb4e9c337b42217", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iohkNix_4": { - "inputs": { - "blst": "blst_4", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "nixpkgs" - ], - "secp256k1": "secp256k1_4", - "sodium": "sodium_4" - }, - "locked": { - "lastModified": 1684223806, - "narHash": "sha256-IyLoP+zhuyygLtr83XXsrvKyqqLQ8FHXTiySFf4FJOI=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "86421fdd89b3af43fa716ccd07638f96c6ecd1e4", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", - "type": "github" - } - }, - "iserv-proxy": { - "flake": false, - "locked": { - "lastModified": 1717479972, - "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", - "owner": "stable-haskell", - "repo": "iserv-proxy", - "rev": "2ed34002247213fc435d0062350b91bab920626e", - "type": "github" - }, - "original": { - "owner": "stable-haskell", - "ref": "iserv-syms", - "repo": "iserv-proxy", - "type": "github" - } - }, - "iserv-proxy_2": { - "flake": false, - "locked": { - "lastModified": 1717479972, - "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", - "owner": "stable-haskell", - "repo": "iserv-proxy", - "rev": "2ed34002247213fc435d0062350b91bab920626e", - "type": "github" - }, - "original": { - "owner": "stable-haskell", - "ref": "iserv-syms", - "repo": "iserv-proxy", - "type": "github" - } - }, - "iserv-proxy_3": { - "flake": false, - "locked": { - "lastModified": 1717479972, - "narHash": "sha256-7vE3RQycHI1YT9LHJ1/fUaeln2vIpYm6Mmn8FTpYeVo=", - "owner": "stable-haskell", - "repo": "iserv-proxy", - "rev": "2ed34002247213fc435d0062350b91bab920626e", - "type": "github" - }, - "original": { - "owner": "stable-haskell", - "ref": "iserv-syms", - "repo": "iserv-proxy", - "type": "github" - } - }, - "iserv-proxy_4": { - "flake": false, - "locked": { - "lastModified": 1670983692, - "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", - "ref": "hkm/remote-iserv", - "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", - "revCount": 10, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - }, - "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" - } - }, - "iserv-proxy_5": { - "flake": false, - "locked": { - "lastModified": 1750543273, - "narHash": "sha256-WaswH0Y+Fmupvv8AkIlQBlUy/IdD3Inx9PDuE+5iRYY=", - "owner": "stable-haskell", - "repo": "iserv-proxy", - "rev": "a53c57c9a8d22a66a2f0c4c969e806da03f08c28", - "type": "github" - }, - "original": { - "owner": "stable-haskell", - "ref": "iserv-syms", - "repo": "iserv-proxy", - "type": "github" - } - }, - "lib": { - "locked": { - "lastModified": 1694306727, - "narHash": "sha256-26fkTOJOI65NOTNKFvtcJF9mzzf/kK9swHzfYt1Dl6Q=", - "owner": "nix-community", - "repo": "nixpkgs.lib", - "rev": "c30b6a84c0b84ec7aecbe74466033facc9ed103f", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixpkgs.lib", - "type": "github" - } - }, - "lib_2": { - "locked": { - "lastModified": 1694306727, - "narHash": "sha256-26fkTOJOI65NOTNKFvtcJF9mzzf/kK9swHzfYt1Dl6Q=", - "owner": "nix-community", - "repo": "nixpkgs.lib", - "rev": "c30b6a84c0b84ec7aecbe74466033facc9ed103f", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixpkgs.lib", - "type": "github" - } - }, - "lowdown-src": { - "flake": false, - "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", - "type": "github" - }, - "original": { - "owner": "kristapsdz", - "repo": "lowdown", - "type": "github" - } - }, - "lowdown-src_2": { - "flake": false, - "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", - "type": "github" - }, - "original": { - "owner": "kristapsdz", - "repo": "lowdown", - "type": "github" - } - }, - "lowdown-src_3": { - "flake": false, - "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", - "type": "github" - }, - "original": { - "owner": "kristapsdz", - "repo": "lowdown", - "type": "github" - } - }, - "lowdown-src_4": { - "flake": false, - "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", - "type": "github" - }, - "original": { - "owner": "kristapsdz", - "repo": "lowdown", - "type": "github" - } - }, - "mdbook-kroki-preprocessor": { - "flake": false, - "locked": { - "lastModified": 1661755005, - "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", - "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", - "type": "github" - }, - "original": { - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", - "type": "github" - } - }, - "mdbook-kroki-preprocessor_2": { - "flake": false, - "locked": { - "lastModified": 1661755005, - "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", - "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", - "type": "github" - }, - "original": { - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", - "type": "github" - } - }, - "n2c": { - "inputs": { - "flake-utils": "flake-utils_4", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", - "type": "github" - }, - "original": { - "owner": "nlewo", - "repo": "nix2container", - "type": "github" - } - }, - "n2c_2": { - "inputs": { - "flake-utils": "flake-utils_8", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", - "type": "github" - }, - "original": { - "owner": "nlewo", - "repo": "nix2container", - "type": "github" - } - }, - "n2c_3": { - "inputs": { - "flake-utils": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "flake-utils" - ], - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", - "type": "github" - }, - "original": { - "owner": "nlewo", - "repo": "nix2container", - "type": "github" - } - }, - "nix": { - "inputs": { - "lowdown-src": "lowdown-src", - "nixpkgs": "nixpkgs_3", - "nixpkgs-regression": "nixpkgs-regression" - }, - "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", - "type": "github" - } - }, - "nix-nomad": { - "inputs": { - "flake-compat": "flake-compat_3", - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "nix2container", - "flake-utils" - ], - "gomod2nix": "gomod2nix", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "nixpkgs" - ], - "nixpkgs-lib": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", - "type": "github" - }, - "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", - "type": "github" - } - }, - "nix-nomad_2": { - "inputs": { - "flake-compat": "flake-compat_7", - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "nix2container", - "flake-utils" - ], - "gomod2nix": "gomod2nix_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "nixpkgs" - ], - "nixpkgs-lib": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", - "type": "github" - }, - "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", - "type": "github" - } - }, - "nix-nomad_3": { - "inputs": { - "flake-compat": "flake-compat_13", - "flake-utils": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "nix2container", - "flake-utils" - ], - "gomod2nix": "gomod2nix_3", - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "nixpkgs" - ], - "nixpkgs-lib": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", - "type": "github" - }, - "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", - "type": "github" - } - }, - "nix2container": { - "inputs": { - "flake-utils": "flake-utils_2", - "nixpkgs": "nixpkgs_5" - }, - "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", - "type": "github" - }, - "original": { - "owner": "nlewo", - "repo": "nix2container", - "type": "github" - } - }, - "nix2container_2": { - "inputs": { - "flake-utils": "flake-utils_6", - "nixpkgs": "nixpkgs_11" - }, - "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", - "type": "github" - }, - "original": { - "owner": "nlewo", - "repo": "nix2container", - "type": "github" - } - }, - "nix2container_3": { - "inputs": { - "flake-utils": "flake-utils_10", - "nixpkgs": "nixpkgs_19" - }, - "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", - "type": "github" - }, - "original": { - "owner": "nlewo", - "repo": "nix2container", - "type": "github" - } - }, - "nix_2": { - "inputs": { - "lowdown-src": "lowdown-src_2", - "nixpkgs": "nixpkgs_8", - "nixpkgs-regression": "nixpkgs-regression_2" - }, - "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", - "type": "github" - } - }, - "nix_3": { - "inputs": { - "lowdown-src": "lowdown-src_3", - "nixpkgs": "nixpkgs_14", - "nixpkgs-regression": "nixpkgs-regression_3" - }, - "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", - "type": "github" - } - }, - "nix_4": { - "inputs": { - "lowdown-src": "lowdown-src_4", - "nixpkgs": "nixpkgs_17", - "nixpkgs-regression": "nixpkgs-regression_4" - }, - "locked": { - "lastModified": 1661606874, - "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", - "owner": "NixOS", - "repo": "nix", - "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "2.11.0", - "repo": "nix", - "type": "github" - } - }, - "nixago": { - "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixago", - "type": "github" - } - }, - "nixago_2": { - "inputs": { - "flake-utils": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixago", - "type": "github" - } - }, - "nixago_3": { - "inputs": { - "flake-utils": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "blank" - ], - "nixpkgs": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixago", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1687420147, - "narHash": "sha256-NILbmZVsoP2Aw0OAIXdbYXrWc/qggIDDyIwZ01yUx+Q=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d449a456ba7d81038fc9ec9141eae7ee3aaf2982", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "release-23.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2003": { - "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2003_2": { - "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2003_3": { - "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2003_4": { - "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2105": { - "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2105_2": { - "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2105_3": { - "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2105_4": { - "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2111": { - "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2111_2": { - "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2111_3": { - "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2111_4": { - "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2205": { - "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2205_2": { - "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2205_3": { - "locked": { - "lastModified": 1685573264, - "narHash": "sha256-Zffu01pONhs/pqH07cjlF10NnMDLok8ix5Uk4rhOnZQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "380be19fbd2d9079f677978361792cb25e8a3635", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2205_4": { - "locked": { - "lastModified": 1682600000, - "narHash": "sha256-ha4BehR1dh8EnXSoE1m/wyyYVvHI9txjW4w5/oxsW5Y=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "50fc86b75d2744e1ab3837ef74b53f103a9b55a0", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2211": { - "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2211_2": { - "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2211_3": { - "locked": { - "lastModified": 1688392541, - "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2211_4": { - "locked": { - "lastModified": 1682682915, - "narHash": "sha256-haR0u/j/nUvlMloYlaOYq1FMXTvkNHw+wGxc+0qXisM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "09f1b33fcc0f59263137e23e935c1bb03ec920e4", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2305": { - "locked": { - "lastModified": 1705033721, - "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2305_2": { - "locked": { - "lastModified": 1701362232, - "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2305_3": { - "locked": { - "lastModified": 1701362232, - "narHash": "sha256-GVdzxL0lhEadqs3hfRLuj+L1OJFGiL/L7gCcelgBlsw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d2332963662edffacfddfad59ff4f709dde80ffe", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2305_4": { - "locked": { - "lastModified": 1705033721, - "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2311": { - "locked": { - "lastModified": 1719957072, - "narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "7144d6241f02d171d25fba3edeaf15e0f2592105", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2311_2": { - "locked": { - "lastModified": 1701386440, - "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2311_3": { - "locked": { - "lastModified": 1701386440, - "narHash": "sha256-xI0uQ9E7JbmEy/v8kR9ZQan6389rHug+zOtZeZFiDJk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "293822e55ec1872f715a66d0eda9e592dc14419f", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2311_4": { - "locked": { - "lastModified": 1719957072, - "narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "7144d6241f02d171d25fba3edeaf15e0f2592105", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-23.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2405": { - "locked": { - "lastModified": 1726447378, - "narHash": "sha256-2yV8nmYE1p9lfmLHhOCbYwQC/W8WYfGQABoGzJOb1JQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "086b448a5d54fd117f4dc2dee55c9f0ff461bdc1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-24.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2405_2": { - "locked": { - "lastModified": 1735564410, - "narHash": "sha256-HB/FA0+1gpSs8+/boEavrGJH+Eq08/R2wWNph1sM1Dg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1e7a8f391f1a490460760065fa0630b5520f9cf8", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-24.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2411": { - "locked": { - "lastModified": 1748037224, - "narHash": "sha256-92vihpZr6dwEMV6g98M5kHZIttrWahb9iRPBm1atcPk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "f09dede81861f3a83f7f06641ead34f02f37597f", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-24.11-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-2505": { - "locked": { - "lastModified": 1748852332, - "narHash": "sha256-r/wVJWmLYEqvrJKnL48r90Wn9HWX9SHFt6s4LhuTh7k=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a8167f3cc2f991dd4d0055746df53dae5fd0c953", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-25.05-darwin", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-arion": { - "locked": { - "lastModified": 1742483666, - "narHash": "sha256-W1EuSk+UA0ZjA2tdZmXNSWb2ueNpkhX7USHoIHEbBZw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "845be085d84b2d74822f83d58a09406057284a5f", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-lib": { - "locked": { - "lastModified": 1730504152, - "narHash": "sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s=", - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" - } - }, - "nixpkgs-lib_2": { - "locked": { - "lastModified": 1753579242, - "narHash": "sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA=", - "owner": "nix-community", - "repo": "nixpkgs.lib", - "rev": "0f36c44e01a6129be94e3ade315a5883f0228a6e", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixpkgs.lib", - "type": "github" - } - }, - "nixpkgs-regression": { - "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - } - }, - "nixpkgs-regression_2": { - "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - } - }, - "nixpkgs-regression_3": { - "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - } - }, - "nixpkgs-regression_4": { - "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - } - }, - "nixpkgs-unstable": { - "locked": { - "lastModified": 1726583932, - "narHash": "sha256-zACxiQx8knB3F8+Ze+1BpiYrI+CbhxyWpcSID9kVhkQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "658e7223191d2598641d50ee4e898126768fe847", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-unstable_2": { - "locked": { - "lastModified": 1694822471, - "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", - "type": "github" - } - }, - "nixpkgs-unstable_3": { - "locked": { - "lastModified": 1694822471, - "narHash": "sha256-6fSDCj++lZVMZlyqOe9SIOL8tYSBz1bI8acwovRwoX8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "47585496bcb13fb72e4a90daeea2f434e2501998", - "type": "github" - } - }, - "nixpkgs-unstable_4": { - "locked": { - "lastModified": 1682656005, - "narHash": "sha256-fYplYo7so1O+rSQ2/aS+SbTPwLTeoUXk4ekKNtSl4P8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "6806b63e824f84b0f0e60b6d660d4ae753de0477", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-unstable_5": { - "locked": { - "lastModified": 1748856973, - "narHash": "sha256-RlTsJUvvr8ErjPBsiwrGbbHYW8XbB/oek0Gi78XdWKg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "e4b09e47ace7d87de083786b404bf232eb6c89d8", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_10": { - "locked": { - "lastModified": 1653581809, - "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_11": { - "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_12": { - "locked": { - "lastModified": 1665087388, - "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_13": { - "locked": { - "lastModified": 1642336556, - "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6", - "type": "github" - }, - "original": { - "id": "nixpkgs", - "type": "indirect" - } - }, - "nixpkgs_14": { - "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-22.05-small", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_15": { - "locked": { - "lastModified": 1708343346, - "narHash": "sha256-qlzHvterVRzS8fS0ophQpkh0rqw0abijHEOAKm0HmV0=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "9312b935a538684049cb668885e60f15547d4c5f", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "release-23.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_16": { - "locked": { - "lastModified": 1741851582, - "narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "6607cf789e541e7873d40d3a8f7815ea92204f32", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_17": { - "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-22.05-small", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_18": { - "locked": { - "lastModified": 1653581809, - "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_19": { - "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1687420147, - "narHash": "sha256-NILbmZVsoP2Aw0OAIXdbYXrWc/qggIDDyIwZ01yUx+Q=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d449a456ba7d81038fc9ec9141eae7ee3aaf2982", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "release-23.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_20": { - "locked": { - "lastModified": 1674407282, - "narHash": "sha256-2qwc8mrPINSFdWffPK+ji6nQ9aGnnZyHSItVcYDZDlk=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "ab1254087f4cdf4af74b552d7fc95175d9bdbb49", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-22.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_21": { - "locked": { - "lastModified": 1665087388, - "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_22": { - "locked": { - "lastModified": 1751984180, - "narHash": "sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X+xgOL0=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "9807714d6944a957c2e036f84b0ff8caf9930bc0", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_23": { - "locked": { - "lastModified": 1751071626, - "narHash": "sha256-/uHE/AD2qGq4QLigWAnBHiVvpVXB04XAfrOtw8JMv+Y=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "a47938d89bdf8e279ad432bd6a473cf4c430f48c", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "release-25.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_24": { - "locked": { - "lastModified": 1754225358, - "narHash": "sha256-pVCtipd3mLNLzcyv5XauVRchwrMguylOoTxRsuwiY6U=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "66f60a89799bcdfaac5e109fee255b1213636fb6", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_25": { - "locked": { - "lastModified": 1730768919, - "narHash": "sha256-8AKquNnnSaJRXZxc5YmF/WfmxiHX6MMZZasRP6RRQkE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_26": { - "locked": { - "lastModified": 1744536153, - "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_27": { - "locked": { - "lastModified": 1755027561, - "narHash": "sha256-IVft239Bc8p8Dtvf7UAACMG5P3ZV+3/aO28gXpGtMXI=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "005433b926e16227259a1843015b5b2b7f7d1fc3", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-22.05-small", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1653581809, - "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1654807842, - "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", + "locked": { + "lastModified": 1687698105, + "narHash": "sha256-OHXlgRzs/kuJH8q7Sxh507H+0Rb8b7VOiPAjcY9sM1k=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "783905f211ac63edf982dd1889c671653327e441", "type": "github" }, "original": { - "owner": "NixOS", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.0.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs_6": { + "hls-2.10": { + "flake": false, "locked": { - "lastModified": 1665087388, - "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", + "lastModified": 1743069404, + "narHash": "sha256-q4kDFyJDDeoGqfEtrZRx4iqMVEC2MOzCToWsFY+TOzY=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "2318c61db3a01e03700bd4b05665662929b7fe8b", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.10.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs_7": { + "hls-2.11": { + "flake": false, "locked": { - "lastModified": 1642336556, - "narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6", + "lastModified": 1747306193, + "narHash": "sha256-/MmtpF8+FyQlwfKHqHK05BdsxC9LHV70d/FiMM7pzBM=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "46ef4523ea4949f47f6d2752476239f1c6d806fe", "type": "github" }, "original": { - "id": "nixpkgs", - "type": "indirect" + "owner": "haskell", + "ref": "2.11.0.0", + "repo": "haskell-language-server", + "type": "github" } }, - "nixpkgs_8": { + "hls-2.2": { + "flake": false, "locked": { - "lastModified": 1657693803, - "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", + "lastModified": 1693064058, + "narHash": "sha256-8DGIyz5GjuCFmohY6Fa79hHA/p1iIqubfJUTGQElbNk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "b30f4b6cf5822f3112c35d14a0cba51f3fe23b85", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixos-22.05-small", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.2.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nixpkgs_9": { + "hls-2.3": { + "flake": false, "locked": { - "lastModified": 1708343346, - "narHash": "sha256-qlzHvterVRzS8fS0ophQpkh0rqw0abijHEOAKm0HmV0=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "9312b935a538684049cb668885e60f15547d4c5f", + "lastModified": 1695910642, + "narHash": "sha256-tR58doOs3DncFehHwCLczJgntyG/zlsSd7DgDgMPOkI=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "458ccdb55c9ea22cd5d13ec3051aaefb295321be", "type": "github" }, "original": { - "owner": "nixos", - "ref": "release-23.11", - "repo": "nixpkgs", + "owner": "haskell", + "ref": "2.3.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nosys": { + "hls-2.4": { + "flake": false, "locked": { - "lastModified": 1668010795, - "narHash": "sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI=", - "owner": "divnix", - "repo": "nosys", - "rev": "feade0141487801c71ff55623b421ed535dbdefa", + "lastModified": 1699862708, + "narHash": "sha256-YHXSkdz53zd0fYGIYOgLt6HrA0eaRJi9mXVqDgmvrjk=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "54507ef7e85fa8e9d0eb9a669832a3287ffccd57", "type": "github" }, "original": { - "owner": "divnix", - "repo": "nosys", + "owner": "haskell", + "ref": "2.4.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "nosys_2": { + "hls-2.5": { + "flake": false, "locked": { - "lastModified": 1668010795, - "narHash": "sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI=", - "owner": "divnix", - "repo": "nosys", - "rev": "feade0141487801c71ff55623b421ed535dbdefa", + "lastModified": 1701080174, + "narHash": "sha256-fyiR9TaHGJIIR0UmcCb73Xv9TJq3ht2ioxQ2mT7kVdc=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "27f8c3d3892e38edaef5bea3870161815c4d014c", "type": "github" }, "original": { - "owner": "divnix", - "repo": "nosys", + "owner": "haskell", + "ref": "2.5.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nosys_3": { + "hls-2.6": { + "flake": false, "locked": { - "lastModified": 1667881534, - "narHash": "sha256-FhwJ15uPLRsvaxtt/bNuqE/ykMpNAPF0upozFKhTtXM=", - "owner": "divnix", - "repo": "nosys", - "rev": "2d0d5207f6a230e9d0f660903f8db9807b54814f", + "lastModified": 1705325287, + "narHash": "sha256-+P87oLdlPyMw8Mgoul7HMWdEvWP/fNlo8jyNtwME8E8=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "6e0b342fa0327e628610f2711f8c3e4eaaa08b1e", "type": "github" }, "original": { - "owner": "divnix", - "repo": "nosys", + "owner": "haskell", + "ref": "2.6.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "ogmios": { + "hls-2.7": { "flake": false, "locked": { - "lastModified": 1726935492, - "narHash": "sha256-JBKxY0tzd0bilfLE7b6wZX9Cn1tIQGNGHCvy18QLvUA=", - "owner": "CardanoSolutions", - "repo": "ogmios", - "rev": "1b137e49cb158684908dd5933e42de8fe5ab853b", + "lastModified": 1708965829, + "narHash": "sha256-LfJ+TBcBFq/XKoiNI7pc4VoHg4WmuzsFxYJ3Fu+Jf+M=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "50322b0a4aefb27adc5ec42f5055aaa8f8e38001", "type": "github" }, "original": { - "owner": "CardanoSolutions", - "ref": "v6.8.0", - "repo": "ogmios", + "owner": "haskell", + "ref": "2.7.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "old-ghc-nix": { + "hls-2.8": { "flake": false, "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", + "lastModified": 1715153580, + "narHash": "sha256-Vi/iUt2pWyUJlo9VrYgTcbRviWE0cFO6rmGi9rmALw0=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "dd1be1beb16700de59e0d6801957290bcf956a0a", "type": "github" }, "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", + "owner": "haskell", + "ref": "2.8.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "old-ghc-nix_2": { + "hls-2.9": { "flake": false, "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", + "lastModified": 1719993701, + "narHash": "sha256-wy348++MiMm/xwtI9M3vVpqj2qfGgnDcZIGXw8sF1sA=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "90319a7e62ab93ab65a95f8f2bcf537e34dae76a", "type": "github" }, "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", + "owner": "haskell", + "ref": "2.9.0.1", + "repo": "haskell-language-server", "type": "github" } }, - "old-ghc-nix_3": { + "hpc-coveralls": { "flake": false, "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "old-ghc-nix_4": { + "hpc-coveralls_2": { "flake": false, "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "old-ghc-nix_5": { - "flake": false, + "hydra": { + "inputs": { + "nix": "nix", + "nixpkgs": [ + "flake-lang", + "db-sync-ctl", + "haskellNix", + "hydra", + "nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1631092763, - "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", - "owner": "angerman", - "repo": "old-ghc-nix", - "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", + "lastModified": 1671755331, + "narHash": "sha256-hXsgJj0Cy0ZiCiYdW2OdBz5WmFyOMKuw4zyxKpgUKm4=", + "owner": "NixOS", + "repo": "hydra", + "rev": "f48f00ee6d5727ae3e488cbf9ce157460853fea8", "type": "github" }, "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "ops-lib": { - "flake": false, + "incl": { + "inputs": { + "nixlib": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1713366514, - "narHash": "sha256-0hNlv+grFTE+TeXIbxSY97QoEEaUupOKMusZ4PesdrQ=", - "owner": "input-output-hk", - "repo": "ops-lib", - "rev": "19d83fa8eab1c0b7765f736eb4e8569d84d3e39d", + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "ops-lib", + "owner": "divnix", + "repo": "incl", "type": "github" } }, - "ops-lib_2": { - "flake": false, + "iohk-nix": { + "inputs": { + "blst": "blst_2", + "nixpkgs": "nixpkgs_7", + "secp256k1": "secp256k1_2", + "sodium": "sodium_2" + }, "locked": { - "lastModified": 1713366514, - "narHash": "sha256-0hNlv+grFTE+TeXIbxSY97QoEEaUupOKMusZ4PesdrQ=", + "lastModified": 1751421193, + "narHash": "sha256-rklXDo12dfukaSqcEyiYbze3ffRtTl2/WAAQCWfkGiw=", "owner": "input-output-hk", - "repo": "ops-lib", - "rev": "19d83fa8eab1c0b7765f736eb4e8569d84d3e39d", + "repo": "iohk-nix", + "rev": "64ca6f4c0c6db283e2ec457c775bce75173fb319", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "ops-lib", + "repo": "iohk-nix", "type": "github" } }, - "oura": { + "iohkNix": { "inputs": { - "crane": [ + "blst": "blst", + "nixpkgs": [ "flake-lang", - "ctl", - "cardano-nix", - "crane" + "db-sync-ctl", + "nixpkgs" ], - "utils": "utils_4" + "secp256k1": "secp256k1", + "sodium": "sodium" }, "locked": { - "lastModified": 1729716427, - "narHash": "sha256-gZhY/Xh63VLsiGzfpwoKSSmTJwguiRfOjPry+cD5pmM=", - "owner": "txpipe", - "repo": "oura", - "rev": "c6bfc5ab66a82cc6a59de5d3a3d3f01f5543b961", + "lastModified": 1684223806, + "narHash": "sha256-IyLoP+zhuyygLtr83XXsrvKyqqLQ8FHXTiySFf4FJOI=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "86421fdd89b3af43fa716ccd07638f96c6ecd1e4", "type": "github" }, "original": { - "owner": "txpipe", - "ref": "v1.9.2", - "repo": "oura", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "paisano": { - "inputs": { - "call-flake": "call-flake", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "nixpkgs" - ], - "nosys": "nosys", - "yants": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "yants" - ] - }, + "iserv-proxy": { + "flake": false, "locked": { - "lastModified": 1708640854, - "narHash": "sha256-EpcAmvIS4ErqhXtVEfd2GPpU/E/s8CCRSfYzk6FZ/fY=", - "owner": "paisano-nix", - "repo": "core", - "rev": "adcf742bc9463c08764ca9e6955bd5e7dcf3a3fe", - "type": "github" + "lastModified": 1670983692, + "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", + "ref": "hkm/remote-iserv", + "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", + "revCount": 10, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" }, "original": { - "owner": "paisano-nix", - "ref": "0.2.0", - "repo": "core", - "type": "github" + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" } }, - "paisano-tui": { + "iserv-proxy_2": { "flake": false, "locked": { - "lastModified": 1708637035, - "narHash": "sha256-R19YURSK+MY/Rw6FZnojQS9zuDh+OoTAyngQAjjoubc=", - "owner": "paisano-nix", - "repo": "tui", - "rev": "231761b260587a64817e4ffae3afc15defaa15db", + "lastModified": 1755040634, + "narHash": "sha256-8W7uHpAIG8HhO3ig5OGHqvwduoye6q6dlrea1IrP2eI=", + "owner": "stable-haskell", + "repo": "iserv-proxy", + "rev": "1383d199a2c64f522979005d112b4fbdee38dd92", "type": "github" }, "original": { - "owner": "paisano-nix", - "ref": "v0.5.0", - "repo": "tui", + "owner": "stable-haskell", + "ref": "iserv-syms", + "repo": "iserv-proxy", "type": "github" } }, - "paisano-tui_2": { + "lowdown-src": { "flake": false, "locked": { - "lastModified": 1708637035, - "narHash": "sha256-R19YURSK+MY/Rw6FZnojQS9zuDh+OoTAyngQAjjoubc=", - "owner": "paisano-nix", - "repo": "tui", - "rev": "231761b260587a64817e4ffae3afc15defaa15db", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "owner": "paisano-nix", - "ref": "v0.5.0", - "repo": "tui", + "owner": "kristapsdz", + "repo": "lowdown", "type": "github" } }, - "paisano_2": { + "n2c": { "inputs": { - "call-flake": "call-flake_2", - "nixpkgs": [ + "flake-utils": [ "flake-lang", - "ctl", - "cardano-node", + "db-sync-ctl", + "tullia", "std", - "nixpkgs" + "flake-utils" ], - "nosys": "nosys_2", - "yants": [ + "nixpkgs": [ "flake-lang", - "ctl", - "cardano-node", + "db-sync-ctl", + "tullia", "std", - "yants" + "nixpkgs" ] }, "locked": { - "lastModified": 1708640854, - "narHash": "sha256-EpcAmvIS4ErqhXtVEfd2GPpU/E/s8CCRSfYzk6FZ/fY=", - "owner": "paisano-nix", - "repo": "core", - "rev": "adcf742bc9463c08764ca9e6955bd5e7dcf3a3fe", - "type": "github" - }, - "original": { - "owner": "paisano-nix", - "ref": "0.2.0", - "repo": "core", - "type": "github" - } - }, - "plutarch": { - "flake": false, - "locked": { - "lastModified": 1747262345, - "narHash": "sha256-Wm/cPFbRAI4NJqD/z0B4IsiViMUhrMG2REuARRitwAs=", - "owner": "plutonomicon", - "repo": "plutarch-plutus", - "rev": "7237f3982e47f447d27ba0a07f91503566e01d80", + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", "type": "github" }, "original": { - "owner": "plutonomicon", - "ref": "staging", - "repo": "plutarch-plutus", + "owner": "nlewo", + "repo": "nix2container", "type": "github" } }, - "pre-commit-hooks": { + "nix": { "inputs": { - "flake-compat": "flake-compat_15", - "gitignore": "gitignore_2", - "nixpkgs": "nixpkgs_25" + "lowdown-src": "lowdown-src", + "nixpkgs": "nixpkgs", + "nixpkgs-regression": "nixpkgs-regression" }, "locked": { - "lastModified": 1750779888, - "narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d", + "lastModified": 1661606874, + "narHash": "sha256-9+rpYzI+SmxJn+EbYxjGv68Ucp22bdFUSy/4LkHkkDQ=", + "owner": "NixOS", + "repo": "nix", + "rev": "11e45768b34fdafdcf019ddbd337afa16127ff0f", "type": "github" }, "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", + "owner": "NixOS", + "ref": "2.11.0", + "repo": "nix", "type": "github" } }, - "pre-commit-hooks-nix": { + "nix-nomad": { "inputs": { - "flake-compat": "flake-compat_6", - "gitignore": "gitignore", + "flake-compat": "flake-compat_3", + "flake-utils": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix", "nixpkgs": [ "flake-lang", - "ctl", - "cardano-nix", + "db-sync-ctl", + "tullia", "nixpkgs" ], - "nixpkgs-stable": [ + "nixpkgs-lib": [ "flake-lang", - "ctl", - "cardano-nix", + "db-sync-ctl", + "tullia", "nixpkgs" ] }, "locked": { - "lastModified": 1731363552, - "narHash": "sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf+InnSMT4jlMU=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "cd1af27aa85026ac759d5d3fccf650abe7e1bbf0", + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", "type": "github" }, "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", + "owner": "tristanpemble", + "repo": "nix-nomad", "type": "github" } }, - "root": { + "nix2container": { "inputs": { - "flake-lang": "flake-lang", - "flake-parts": [ + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "nixago": { + "inputs": { + "flake-utils": [ "flake-lang", - "flake-parts" + "db-sync-ctl", + "tullia", + "std", + "flake-utils" ], - "hci-effects": "hci-effects_2", - "nixpkgs": [ + "nixago-exts": [ "flake-lang", - "nixpkgs" + "db-sync-ctl", + "tullia", + "std", + "blank" ], - "pre-commit-hooks": [ + "nixpkgs": [ "flake-lang", - "pre-commit-hooks" + "db-sync-ctl", + "tullia", + "std", + "nixpkgs" ] + }, + "locked": { + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" } }, - "rust-overlay": { - "inputs": { - "nixpkgs": "nixpkgs_26" - }, + "nixpkgs": { "locked": { - "lastModified": 1754189623, - "narHash": "sha256-fstu5eb30UYwsxow0aQqkzxNxGn80UZjyehQVNVHuBk=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "c582ff7f0d8a7ea689ae836dfb1773f1814f472a", + "lastModified": 1657693803, + "narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "365e1b3a859281cf11b94f87231adeabbdd878a2", "type": "github" }, "original": { - "owner": "oxalica", - "repo": "rust-overlay", + "owner": "NixOS", + "ref": "nixos-22.05-small", + "repo": "nixpkgs", "type": "github" } }, - "secp256k1": { - "flake": false, + "nixpkgs-2003": { "locked": { - "lastModified": 1683999695, - "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", - "owner": "bitcoin-core", - "repo": "secp256k1", - "rev": "acf5c55ae6a94e5ca847e07def40427547876101", + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", "type": "github" }, "original": { - "owner": "bitcoin-core", - "ref": "v0.3.2", - "repo": "secp256k1", + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", "type": "github" } }, - "secp256k1_2": { - "flake": false, + "nixpkgs-2105": { "locked": { - "lastModified": 1683999695, - "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", - "owner": "bitcoin-core", - "repo": "secp256k1", - "rev": "acf5c55ae6a94e5ca847e07def40427547876101", + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2111": { + "locked": { + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", "type": "github" }, "original": { - "owner": "bitcoin-core", - "ref": "v0.3.2", - "repo": "secp256k1", + "owner": "NixOS", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", "type": "github" } }, - "secp256k1_3": { - "flake": false, + "nixpkgs-2205": { "locked": { - "lastModified": 1683999695, - "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", - "owner": "bitcoin-core", - "repo": "secp256k1", - "rev": "acf5c55ae6a94e5ca847e07def40427547876101", + "lastModified": 1682600000, + "narHash": "sha256-ha4BehR1dh8EnXSoE1m/wyyYVvHI9txjW4w5/oxsW5Y=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "50fc86b75d2744e1ab3837ef74b53f103a9b55a0", "type": "github" }, "original": { - "owner": "bitcoin-core", - "ref": "v0.3.2", - "repo": "secp256k1", + "owner": "NixOS", + "ref": "nixpkgs-22.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "secp256k1_4": { - "flake": false, + "nixpkgs-2211": { "locked": { - "lastModified": 1683999695, - "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", - "owner": "bitcoin-core", - "repo": "secp256k1", - "rev": "acf5c55ae6a94e5ca847e07def40427547876101", + "lastModified": 1682682915, + "narHash": "sha256-haR0u/j/nUvlMloYlaOYq1FMXTvkNHw+wGxc+0qXisM=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "09f1b33fcc0f59263137e23e935c1bb03ec920e4", "type": "github" }, "original": { - "owner": "bitcoin-core", - "ref": "v0.3.2", - "repo": "secp256k1", + "owner": "NixOS", + "ref": "nixpkgs-22.11-darwin", + "repo": "nixpkgs", "type": "github" } }, - "secp256k1_5": { - "flake": false, + "nixpkgs-2305": { "locked": { - "lastModified": 1683999695, - "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", - "owner": "bitcoin-core", - "repo": "secp256k1", - "rev": "acf5c55ae6a94e5ca847e07def40427547876101", + "lastModified": 1705033721, + "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", "type": "github" }, "original": { - "owner": "bitcoin-core", - "ref": "v0.3.2", - "repo": "secp256k1", + "owner": "NixOS", + "ref": "nixpkgs-23.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "sodium": { - "flake": false, + "nixpkgs-2311": { "locked": { - "lastModified": 1675156279, - "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "lastModified": 1719957072, + "narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "7144d6241f02d171d25fba3edeaf15e0f2592105", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "owner": "NixOS", + "ref": "nixpkgs-23.11-darwin", + "repo": "nixpkgs", "type": "github" } }, - "sodium_2": { - "flake": false, + "nixpkgs-2405": { "locked": { - "lastModified": 1675156279, - "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "lastModified": 1735564410, + "narHash": "sha256-HB/FA0+1gpSs8+/boEavrGJH+Eq08/R2wWNph1sM1Dg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1e7a8f391f1a490460760065fa0630b5520f9cf8", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "owner": "NixOS", + "ref": "nixpkgs-24.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "sodium_3": { - "flake": false, + "nixpkgs-2411": { "locked": { - "lastModified": 1675156279, - "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "lastModified": 1748037224, + "narHash": "sha256-92vihpZr6dwEMV6g98M5kHZIttrWahb9iRPBm1atcPk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "f09dede81861f3a83f7f06641ead34f02f37597f", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "owner": "NixOS", + "ref": "nixpkgs-24.11-darwin", + "repo": "nixpkgs", "type": "github" } }, - "sodium_4": { - "flake": false, + "nixpkgs-2505": { "locked": { - "lastModified": 1675156279, - "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "lastModified": 1748852332, + "narHash": "sha256-r/wVJWmLYEqvrJKnL48r90Wn9HWX9SHFt6s4LhuTh7k=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "a8167f3cc2f991dd4d0055746df53dae5fd0c953", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "owner": "NixOS", + "ref": "nixpkgs-25.05-darwin", + "repo": "nixpkgs", "type": "github" } }, - "sodium_5": { - "flake": false, + "nixpkgs-lib": { "locked": { - "lastModified": 1675156279, - "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "lastModified": 1753579242, + "narHash": "sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "0f36c44e01a6129be94e3ade315a5883f0228a6e", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "libsodium", - "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", + "owner": "nix-community", + "repo": "nixpkgs.lib", "type": "github" } }, - "stackage": { - "flake": false, + "nixpkgs-regression": { "locked": { - "lastModified": 1729039017, - "narHash": "sha256-fGExfgG+7UNSOV8YfOrWPpOHWrCjA02gQkeSBhaAzjQ=", - "owner": "input-output-hk", - "repo": "stackage.nix", - "rev": "df1d8f0960407551fea7af7af75a9c2f9e18de97", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" } }, - "stackage_2": { - "flake": false, + "nixpkgs-unstable": { "locked": { - "lastModified": 1718756571, - "narHash": "sha256-8rL8viTbuE9/yV1of6SWp2tHmhVMD2UmkOfmN5KDbKg=", - "owner": "input-output-hk", - "repo": "stackage.nix", - "rev": "027672fb6fd45828b0e623c8152572d4058429ad", + "lastModified": 1682656005, + "narHash": "sha256-fYplYo7so1O+rSQ2/aS+SbTPwLTeoUXk4ekKNtSl4P8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "6806b63e824f84b0f0e60b6d660d4ae753de0477", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", "type": "github" } }, - "stackage_3": { - "flake": false, + "nixpkgs-unstable_2": { "locked": { - "lastModified": 1718756571, - "narHash": "sha256-8rL8viTbuE9/yV1of6SWp2tHmhVMD2UmkOfmN5KDbKg=", - "owner": "input-output-hk", - "repo": "stackage.nix", - "rev": "027672fb6fd45828b0e623c8152572d4058429ad", + "lastModified": 1748856973, + "narHash": "sha256-RlTsJUvvr8ErjPBsiwrGbbHYW8XbB/oek0Gi78XdWKg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e4b09e47ace7d87de083786b404bf232eb6c89d8", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", "type": "github" } }, - "stackage_4": { - "flake": false, + "nixpkgs_10": { "locked": { - "lastModified": 1684282201, - "narHash": "sha256-QW1Xm2MC+Qx1ZYF1cFRsb73WJji8aq6m5RGHUk9WWFU=", - "owner": "input-output-hk", - "repo": "stackage.nix", - "rev": "39971b1a8a098dd5bbbd8d91ba35ff0bfc07ce22", + "lastModified": 1744536153, + "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", "type": "github" } }, - "stackage_5": { - "flake": false, + "nixpkgs_11": { "locked": { - "lastModified": 1754180153, - "narHash": "sha256-hkHG3EjjxAqADAYURA6p3jc7xb93/VOoKVazInc5FqU=", - "owner": "input-output-hk", - "repo": "stackage.nix", - "rev": "a7e9e82031c37896f71689d6d66ce9fbc18c0180", + "lastModified": 1755027561, + "narHash": "sha256-IVft239Bc8p8Dtvf7UAACMG5P3ZV+3/aO28gXpGtMXI=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "005433b926e16227259a1843015b5b2b7f7d1fc3", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", "type": "github" } }, - "std": { - "inputs": { - "blank": "blank", - "devshell": "devshell", - "dmerge": "dmerge", - "flake-utils": "flake-utils_3", - "makes": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "blank" - ], - "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor", - "microvm": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "blank" - ], - "n2c": "n2c", - "nixago": "nixago", - "nixpkgs": "nixpkgs_6", - "yants": "yants" + "nixpkgs_2": { + "locked": { + "lastModified": 1653581809, + "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", + "type": "github" }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { "locked": { - "lastModified": 1665513321, - "narHash": "sha256-D6Pacw9yf/HMs84KYuCxHXnNDL7v43gtcka5URagFqE=", - "owner": "divnix", - "repo": "std", - "rev": "94a90eedb9cfc115b12ae8f6622d9904788559e4", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { - "owner": "divnix", - "repo": "std", + "owner": "NixOS", + "repo": "nixpkgs", "type": "github" } }, - "std_2": { - "inputs": { - "arion": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "blank" - ], - "blank": "blank_2", - "devshell": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "blank" - ], - "dmerge": "dmerge_2", - "haumea": "haumea", - "incl": "incl", - "lib": "lib", - "makes": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "blank" - ], - "microvm": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "blank" - ], - "n2c": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "blank" - ], - "nixago": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "blank" - ], - "nixpkgs": "nixpkgs_9", - "paisano": "paisano", - "paisano-tui": "paisano-tui", - "terranix": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "blank" - ], - "yants": "yants_2" - }, + "nixpkgs_4": { "locked": { - "lastModified": 1715201063, - "narHash": "sha256-LcLYV5CDhIiJs3MfxGZFKsXPR4PtfnY4toZ75GM+2Pw=", - "owner": "divnix", - "repo": "std", - "rev": "b6924a7d37a46fc1dda8efe405040e27ecf1bbd6", + "lastModified": 1674407282, + "narHash": "sha256-2qwc8mrPINSFdWffPK+ji6nQ9aGnnZyHSItVcYDZDlk=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "ab1254087f4cdf4af74b552d7fc95175d9bdbb49", "type": "github" }, "original": { - "owner": "divnix", - "repo": "std", + "owner": "nixos", + "ref": "nixos-22.11", + "repo": "nixpkgs", "type": "github" } }, - "std_3": { - "inputs": { - "blank": "blank_3", - "devshell": "devshell_3", - "dmerge": "dmerge_3", - "flake-utils": "flake-utils_7", - "makes": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "blank" - ], - "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_2", - "microvm": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "blank" - ], - "n2c": "n2c_2", - "nixago": "nixago_2", - "nixpkgs": "nixpkgs_12", - "yants": "yants_3" - }, + "nixpkgs_5": { "locked": { - "lastModified": 1665513321, - "narHash": "sha256-D6Pacw9yf/HMs84KYuCxHXnNDL7v43gtcka5URagFqE=", - "owner": "divnix", - "repo": "std", - "rev": "94a90eedb9cfc115b12ae8f6622d9904788559e4", + "lastModified": 1665087388, + "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", "type": "github" }, "original": { - "owner": "divnix", - "repo": "std", + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", "type": "github" } }, - "std_4": { - "inputs": { - "arion": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "blank" - ], - "blank": "blank_4", - "devshell": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "blank" - ], - "dmerge": "dmerge_4", - "haumea": "haumea_2", - "incl": "incl_2", - "lib": "lib_2", - "makes": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "blank" - ], - "microvm": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "blank" - ], - "n2c": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "blank" - ], - "nixago": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "blank" - ], - "nixpkgs": "nixpkgs_15", - "paisano": "paisano_2", - "paisano-tui": "paisano-tui_2", - "terranix": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "blank" - ], - "yants": "yants_4" - }, + "nixpkgs_6": { "locked": { - "lastModified": 1715201063, - "narHash": "sha256-LcLYV5CDhIiJs3MfxGZFKsXPR4PtfnY4toZ75GM+2Pw=", - "owner": "divnix", - "repo": "std", - "rev": "b6924a7d37a46fc1dda8efe405040e27ecf1bbd6", + "lastModified": 1755027561, + "narHash": "sha256-IVft239Bc8p8Dtvf7UAACMG5P3ZV+3/aO28gXpGtMXI=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "005433b926e16227259a1843015b5b2b7f7d1fc3", "type": "github" }, "original": { - "owner": "divnix", - "repo": "std", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", "type": "github" } }, - "std_5": { - "inputs": { - "arion": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "blank" - ], - "blank": "blank_5", - "devshell": "devshell_4", - "dmerge": "dmerge_5", - "flake-utils": "flake-utils_11", - "incl": "incl_3", - "makes": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "blank" - ], - "microvm": [ - "flake-lang", - "db-sync-ctl", - "tullia", - "std", - "blank" - ], - "n2c": "n2c_3", - "nixago": "nixago_3", - "nixpkgs": "nixpkgs_21", - "nosys": "nosys_3", - "yants": "yants_5" - }, + "nixpkgs_7": { "locked": { - "lastModified": 1674526466, - "narHash": "sha256-tMTaS0bqLx6VJ+K+ZT6xqsXNpzvSXJTmogkraBGzymg=", - "owner": "divnix", - "repo": "std", - "rev": "516387e3d8d059b50e742a2ff1909ed3c8f82826", + "lastModified": 1751071626, + "narHash": "sha256-/uHE/AD2qGq4QLigWAnBHiVvpVXB04XAfrOtw8JMv+Y=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "a47938d89bdf8e279ad432bd6a473cf4c430f48c", "type": "github" }, "original": { - "owner": "divnix", - "repo": "std", + "owner": "nixos", + "ref": "release-25.05", + "repo": "nixpkgs", "type": "github" } }, - "systems": { + "nixpkgs_8": { "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1755593991, + "narHash": "sha256-BA9MuPjBDx/WnpTJ0EGhStyfE7hug8g85Y3Ju9oTsM4=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "a58390ab6f1aa810eb8e0f0fc74230e7cc06de03", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "NixOS", + "ref": "nixos-25.05", + "repo": "nixpkgs", "type": "github" } }, - "systems_2": { + "nixpkgs_9": { "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1754340878, + "narHash": "sha256-lgmUyVQL9tSnvvIvBp7x1euhkkCho7n3TMzgjdvgPoU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "cab778239e705082fe97bb4990e0d24c50924c04", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", "type": "github" } }, - "systems_3": { + "nosys": { "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "lastModified": 1667881534, + "narHash": "sha256-FhwJ15uPLRsvaxtt/bNuqE/ykMpNAPF0upozFKhTtXM=", + "owner": "divnix", + "repo": "nosys", + "rev": "2d0d5207f6a230e9d0f660903f8db9807b54814f", "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", + "owner": "divnix", + "repo": "nosys", "type": "github" } }, - "treefmt-nix": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "nixpkgs" - ] - }, + "old-ghc-nix": { + "flake": false, "locked": { - "lastModified": 1730321837, - "narHash": "sha256-vK+a09qq19QNu2MlLcvN4qcRctJbqWkX7ahgPZ/+maI=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "746901bb8dba96d154b66492a29f5db0693dbfcc", + "lastModified": 1631092763, + "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", + "owner": "angerman", + "repo": "old-ghc-nix", + "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", "type": "github" }, "original": { - "owner": "numtide", - "repo": "treefmt-nix", + "owner": "angerman", + "ref": "master", + "repo": "old-ghc-nix", "type": "github" } }, - "tullia": { - "inputs": { - "nix-nomad": "nix-nomad", - "nix2container": "nix2container", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", - "nixpkgs" - ], - "std": "std" - }, + "old-ghc-nix_2": { + "flake": false, "locked": { - "lastModified": 1668711738, - "narHash": "sha256-CBjky16o9pqsGE1bWu6nRlRajgSXMEk+yaFQLibqXcE=", - "owner": "input-output-hk", - "repo": "tullia", - "rev": "ead1f515c251f0e060060ef0e2356a51d3dfe4b0", + "lastModified": 1631092763, + "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", + "owner": "angerman", + "repo": "old-ghc-nix", + "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "tullia", + "owner": "angerman", + "ref": "master", + "repo": "old-ghc-nix", "type": "github" } }, - "tullia_2": { - "inputs": { - "nix-nomad": "nix-nomad_2", - "nix2container": "nix2container_2", - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "nixpkgs" - ], - "std": "std_3" - }, + "plutarch": { + "flake": false, "locked": { - "lastModified": 1668711738, - "narHash": "sha256-CBjky16o9pqsGE1bWu6nRlRajgSXMEk+yaFQLibqXcE=", - "owner": "input-output-hk", - "repo": "tullia", - "rev": "ead1f515c251f0e060060ef0e2356a51d3dfe4b0", + "lastModified": 1747262345, + "narHash": "sha256-Wm/cPFbRAI4NJqD/z0B4IsiViMUhrMG2REuARRitwAs=", + "owner": "plutonomicon", + "repo": "plutarch-plutus", + "rev": "7237f3982e47f447d27ba0a07f91503566e01d80", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "tullia", + "owner": "plutonomicon", + "ref": "staging", + "repo": "plutarch-plutus", "type": "github" } }, - "tullia_3": { + "pre-commit-hooks": { "inputs": { - "nix-nomad": "nix-nomad_3", - "nix2container": "nix2container_3", - "nixpkgs": "nixpkgs_20", - "std": "std_5" + "flake-compat": "flake-compat_5", + "gitignore": "gitignore", + "nixpkgs": "nixpkgs_9" }, "locked": { - "lastModified": 1675182051, - "narHash": "sha256-E3OQyAhGdac11Pqgn8uyP5295cqI39QlcXxydHu5KfI=", - "owner": "input-output-hk", - "repo": "tullia", - "rev": "f69e8a294f8aa5a947fa61de9235f3a5b7515570", + "lastModified": 1755446520, + "narHash": "sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW+7uSsOUM=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "4b04db83821b819bbbe32ed0a025b31e7971f22e", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "tullia", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", "type": "github" } }, - "utils": { + "root": { "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" + "flake-lang": "flake-lang", + "flake-parts": [ + "flake-lang", + "flake-parts" + ], + "hci-effects": "hci-effects_2", + "nixpkgs": [ + "flake-lang", + "nixpkgs" + ], + "pre-commit-hooks": [ + "flake-lang", + "pre-commit-hooks" + ] } }, - "utils_2": { + "rust-overlay": { + "inputs": { + "nixpkgs": "nixpkgs_10" + }, "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "lastModified": 1755743804, + "narHash": "sha256-M6qT02voARH5e9eTXQBzpYIE/hAp6jPgBCyxLmw5uBM=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "80322e975e27d834451d6b66e63f8abae9d74bf2", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "oxalica", + "repo": "rust-overlay", "type": "github" } }, - "utils_3": { - "inputs": { - "systems": "systems_2" - }, + "secp256k1": { + "flake": false, "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "lastModified": 1683999695, + "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", + "owner": "bitcoin-core", + "repo": "secp256k1", + "rev": "acf5c55ae6a94e5ca847e07def40427547876101", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "bitcoin-core", + "ref": "v0.3.2", + "repo": "secp256k1", "type": "github" } }, - "utils_4": { + "secp256k1_2": { + "flake": false, "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "lastModified": 1683999695, + "narHash": "sha256-9nJJVENMXjXEJZzw8DHzin1DkFkF8h9m/c6PuM7Uk4s=", + "owner": "bitcoin-core", + "repo": "secp256k1", + "rev": "acf5c55ae6a94e5ca847e07def40427547876101", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "bitcoin-core", + "ref": "v0.3.2", + "repo": "secp256k1", "type": "github" } }, - "utils_5": { + "sodium": { + "flake": false, "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "lastModified": 1675156279, + "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", + "owner": "input-output-hk", + "repo": "libsodium", + "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "repo": "libsodium", + "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", "type": "github" } }, - "utils_6": { - "inputs": { - "systems": "systems_3" - }, + "sodium_2": { + "flake": false, "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "lastModified": 1675156279, + "narHash": "sha256-0uRcN5gvMwO7MCXVYnoqG/OmeBFi8qRVnDWJLnBb9+Y=", + "owner": "input-output-hk", + "repo": "libsodium", + "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "repo": "libsodium", + "rev": "dbb48cce5429cb6585c9034f002568964f1ce567", "type": "github" } }, - "utils_7": { + "stackage": { + "flake": false, "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "lastModified": 1684282201, + "narHash": "sha256-QW1Xm2MC+Qx1ZYF1cFRsb73WJji8aq6m5RGHUk9WWFU=", + "owner": "input-output-hk", + "repo": "stackage.nix", + "rev": "39971b1a8a098dd5bbbd8d91ba35ff0bfc07ce22", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "repo": "stackage.nix", "type": "github" } }, - "utils_8": { + "stackage_2": { + "flake": false, "locked": { - "lastModified": 1638122382, - "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", + "lastModified": 1755735102, + "narHash": "sha256-/oZzMO5tdwz0V3uLRI5N9BrMEQc6/MFOpDfHRMRehEI=", + "owner": "input-output-hk", + "repo": "stackage.nix", + "rev": "999a41c7e94d417cd507977e1050a18f3a7a2424", "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", + "owner": "input-output-hk", + "repo": "stackage.nix", "type": "github" } }, - "yants": { + "std": { "inputs": { - "nixpkgs": [ + "arion": [ "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "cardano-automation", + "db-sync-ctl", "tullia", "std", - "nixpkgs" - ] + "blank" + ], + "blank": "blank", + "devshell": "devshell", + "dmerge": "dmerge", + "flake-utils": "flake-utils_3", + "incl": "incl", + "makes": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "blank" + ], + "microvm": [ + "flake-lang", + "db-sync-ctl", + "tullia", + "std", + "blank" + ], + "n2c": "n2c", + "nixago": "nixago", + "nixpkgs": "nixpkgs_5", + "nosys": "nosys", + "yants": "yants" }, "locked": { - "lastModified": 1660507851, - "narHash": "sha256-BKjq7JnVuUR/xDtcv6Vm9GYGKAblisXrAgybor9hT/s=", + "lastModified": 1674526466, + "narHash": "sha256-tMTaS0bqLx6VJ+K+ZT6xqsXNpzvSXJTmogkraBGzymg=", "owner": "divnix", - "repo": "yants", - "rev": "0b895ca02a8fa72bad50b454cb3e7d8a66407c96", + "repo": "std", + "rev": "516387e3d8d059b50e742a2ff1909ed3c8f82826", "type": "github" }, "original": { "owner": "divnix", - "repo": "yants", + "repo": "std", "type": "github" } }, - "yants_2": { + "tullia": { "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-nix", - "cardano-node", - "std", - "lib" - ] + "nix-nomad": "nix-nomad", + "nix2container": "nix2container", + "nixpkgs": "nixpkgs_4", + "std": "std" }, "locked": { - "lastModified": 1686863218, - "narHash": "sha256-kooxYm3/3ornWtVBNHM3Zh020gACUyFX2G0VQXnB+mk=", - "owner": "divnix", - "repo": "yants", - "rev": "8f0da0dba57149676aa4817ec0c880fbde7a648d", + "lastModified": 1675182051, + "narHash": "sha256-E3OQyAhGdac11Pqgn8uyP5295cqI39QlcXxydHu5KfI=", + "owner": "input-output-hk", + "repo": "tullia", + "rev": "f69e8a294f8aa5a947fa61de9235f3a5b7515570", "type": "github" }, "original": { - "owner": "divnix", - "repo": "yants", + "owner": "input-output-hk", + "repo": "tullia", "type": "github" } }, - "yants_3": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "cardano-automation", - "tullia", - "std", - "nixpkgs" - ] - }, + "utils": { "locked": { - "lastModified": 1660507851, - "narHash": "sha256-BKjq7JnVuUR/xDtcv6Vm9GYGKAblisXrAgybor9hT/s=", - "owner": "divnix", - "repo": "yants", - "rev": "0b895ca02a8fa72bad50b454cb3e7d8a66407c96", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { - "owner": "divnix", - "repo": "yants", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "yants_4": { - "inputs": { - "nixpkgs": [ - "flake-lang", - "ctl", - "cardano-node", - "std", - "lib" - ] - }, + "utils_2": { "locked": { - "lastModified": 1686863218, - "narHash": "sha256-kooxYm3/3ornWtVBNHM3Zh020gACUyFX2G0VQXnB+mk=", - "owner": "divnix", - "repo": "yants", - "rev": "8f0da0dba57149676aa4817ec0c880fbde7a648d", + "lastModified": 1638122382, + "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", "type": "github" }, "original": { - "owner": "divnix", - "repo": "yants", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "yants_5": { + "yants": { "inputs": { "nixpkgs": [ "flake-lang", From 9d60075de450313a75b2788dde9b2600ff53f0aa Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 31 Aug 2025 12:49:04 +0000 Subject: [PATCH 91/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/6b9796247ac0a35c4ddec1c2cc74ceee73474390?narHash=sha256-fuYyV9HNp06%2BdTdYOlA8Apgj9nrfbEjsy1Ze7m9hEvk%3D' (2025-08-21) → 'github:mlabs-haskell/flake-lang.nix/68250080a46d574063e7c61adf78f495796d8861?narHash=sha256-SqAOPMDxSxwr7RGU7cIGI95fu6AL13fpB2xg/Ts9tgc%3D' (2025-08-24) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/982aa1c76e28e26e592e26e8fd8b73eea87dbdc2?narHash=sha256-Qpmv1zYOfOzYZfU3sB3bsv/sGtI1c6MGTFiyhnYmmRA%3D' (2025-08-14) → 'github:input-output-hk/cardano-haskell-packages/ccbe0a4ee4fbe9a5898984c308230a9d6d05c66f?narHash=sha256-r4LnUtT5gwy7hKaVTfbuSRLuD4eits4ukCVc79MLCHc%3D' (2025-08-22) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/3c40c97e1881fff381e4615e82557b333edf65c4?narHash=sha256-Tg%2BP8kFIneqnQLT8E0QqlCrldtdLo1n1y619/mxRD44%3D' (2025-08-18) → 'github:ipetkov/crane/25bd41b24426c7734278c2ff02e53258851db914?narHash=sha256-FCRRAzSaL/%2BumLIm3RU3O/%2BfJ2ssaPHseI2SSFL8yZU%3D' (2025-08-23) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/a808cbd430a74c00a0e5959d384e1a11e2ea1e2a?narHash=sha256-BVHCMhwjwl%2BuxDUgQOQu3EoGRwcDYLuJ/6DNTgWDSys%3D' (2025-08-21) → 'github:input-output-hk/haskell.nix/990d2c97b08044730a998a32405fb5c79383ad56?narHash=sha256-1RUilqkbm95PJOkHwNFn7JwZ5cgXcGs2QnNBhGRocKk%3D' (2025-08-24) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/6313548135c7dc5daea2ae1ed1d0dd1afa3d485e?narHash=sha256-8fOqP45pBWQVFW4tBGgWw1vJmRRBSrQX1TOkCIRZUlw%3D' (2025-08-21) → 'github:input-output-hk/hackage.nix/22e202424e8917582a16caf625ff4431c90165d2?narHash=sha256-w5lJCMBdiliSvMzWy5Vmb5ljonfWWb4T1%2Bm4l6FMAPQ%3D' (2025-08-24) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/54203507c2141dfea4463ba5c4015f11f2c2a503?narHash=sha256-X4HTWcv6vgx6EncLyyJJdaNTkL8F8P69HAMaEgZLYhg%3D' (2025-08-21) → 'github:input-output-hk/hackage.nix/75bda500c7583ec1f74fd3797f6aa959c51c4298?narHash=sha256-Xg46VMTIW3NgMLzjgzmnVHZpoR3NoMmAoXEF3%2Bhfbao%3D' (2025-08-24) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/999a41c7e94d417cd507977e1050a18f3a7a2424?narHash=sha256-/oZzMO5tdwz0V3uLRI5N9BrMEQc6/MFOpDfHRMRehEI%3D' (2025-08-21) → 'github:input-output-hk/stackage.nix/ffe783102e38ec64a0ec660c58633f367eb6371a?narHash=sha256-Qlq6wwYqOV1zCRsGxT3LGVZfZ6FhpcC1REz8xpGsIvo%3D' (2025-08-24) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/a58390ab6f1aa810eb8e0f0fc74230e7cc06de03?narHash=sha256-BA9MuPjBDx/WnpTJ0EGhStyfE7hug8g85Y3Ju9oTsM4%3D' (2025-08-19) → 'github:NixOS/nixpkgs/b1b3291469652d5a2edb0becc4ef0246fff97a7c?narHash=sha256-wY1%2B2JPH0ZZC4BQefoZw/k%2B3%2BDowFyfOxv17CN/idKs%3D' (2025-08-23) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/4b04db83821b819bbbe32ed0a025b31e7971f22e?narHash=sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW%2B7uSsOUM%3D' (2025-08-17) → 'github:cachix/pre-commit-hooks.nix/e891a93b193fcaf2fc8012d890dc7f0befe86ec2?narHash=sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs%3D' (2025-08-23) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/80322e975e27d834451d6b66e63f8abae9d74bf2?narHash=sha256-M6qT02voARH5e9eTXQBzpYIE/hAp6jPgBCyxLmw5uBM%3D' (2025-08-21) → 'github:oxalica/rust-overlay/88ceedecde53e809b4bf8b5fd10d181889d9bac7?narHash=sha256-lmEMhIIbjt8Wp1EYbNqCojuU9ygyDFv8Tu0X1k8qIMc%3D' (2025-08-24) --- flake.lock | 60 +++++++++++++++++++++++++++--------------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/flake.lock b/flake.lock index 726c5c5c..35a9e752 100644 --- a/flake.lock +++ b/flake.lock @@ -203,11 +203,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1755197699, - "narHash": "sha256-Qpmv1zYOfOzYZfU3sB3bsv/sGtI1c6MGTFiyhnYmmRA=", + "lastModified": 1755876829, + "narHash": "sha256-r4LnUtT5gwy7hKaVTfbuSRLuD4eits4ukCVc79MLCHc=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "982aa1c76e28e26e592e26e8fd8b73eea87dbdc2", + "rev": "ccbe0a4ee4fbe9a5898984c308230a9d6d05c66f", "type": "github" }, "original": { @@ -251,11 +251,11 @@ }, "crane": { "locked": { - "lastModified": 1755537552, - "narHash": "sha256-Tg+P8kFIneqnQLT8E0QqlCrldtdLo1n1y619/mxRD44=", + "lastModified": 1755993354, + "narHash": "sha256-FCRRAzSaL/+umLIm3RU3O/+fJ2ssaPHseI2SSFL8yZU=", "owner": "ipetkov", "repo": "crane", - "rev": "3c40c97e1881fff381e4615e82557b333edf65c4", + "rev": "25bd41b24426c7734278c2ff02e53258851db914", "type": "github" }, "original": { @@ -493,11 +493,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1755770995, - "narHash": "sha256-fuYyV9HNp06+dTdYOlA8Apgj9nrfbEjsy1Ze7m9hEvk=", + "lastModified": 1756076828, + "narHash": "sha256-SqAOPMDxSxwr7RGU7cIGI95fu6AL13fpB2xg/Ts9tgc=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "6b9796247ac0a35c4ddec1c2cc74ceee73474390", + "rev": "68250080a46d574063e7c61adf78f495796d8861", "type": "github" }, "original": { @@ -705,11 +705,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1755735896, - "narHash": "sha256-X4HTWcv6vgx6EncLyyJJdaNTkL8F8P69HAMaEgZLYhg=", + "lastModified": 1755995293, + "narHash": "sha256-Xg46VMTIW3NgMLzjgzmnVHZpoR3NoMmAoXEF3+hfbao=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "54203507c2141dfea4463ba5c4015f11f2c2a503", + "rev": "75bda500c7583ec1f74fd3797f6aa959c51c4298", "type": "github" }, "original": { @@ -738,11 +738,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1755735907, - "narHash": "sha256-8fOqP45pBWQVFW4tBGgWw1vJmRRBSrQX1TOkCIRZUlw=", + "lastModified": 1755995304, + "narHash": "sha256-w5lJCMBdiliSvMzWy5Vmb5ljonfWWb4T1+m4l6FMAPQ=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "6313548135c7dc5daea2ae1ed1d0dd1afa3d485e", + "rev": "22e202424e8917582a16caf625ff4431c90165d2", "type": "github" }, "original": { @@ -793,11 +793,11 @@ "stackage": "stackage_2" }, "locked": { - "lastModified": 1755737525, - "narHash": "sha256-BVHCMhwjwl+uxDUgQOQu3EoGRwcDYLuJ/6DNTgWDSys=", + "lastModified": 1755996739, + "narHash": "sha256-1RUilqkbm95PJOkHwNFn7JwZ5cgXcGs2QnNBhGRocKk=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "a808cbd430a74c00a0e5959d384e1a11e2ea1e2a", + "rev": "990d2c97b08044730a998a32405fb5c79383ad56", "type": "github" }, "original": { @@ -1817,11 +1817,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1755593991, - "narHash": "sha256-BA9MuPjBDx/WnpTJ0EGhStyfE7hug8g85Y3Ju9oTsM4=", + "lastModified": 1755922037, + "narHash": "sha256-wY1+2JPH0ZZC4BQefoZw/k+3+DowFyfOxv17CN/idKs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a58390ab6f1aa810eb8e0f0fc74230e7cc06de03", + "rev": "b1b3291469652d5a2edb0becc4ef0246fff97a7c", "type": "github" }, "original": { @@ -1920,11 +1920,11 @@ "nixpkgs": "nixpkgs_9" }, "locked": { - "lastModified": 1755446520, - "narHash": "sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW+7uSsOUM=", + "lastModified": 1755960406, + "narHash": "sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "4b04db83821b819bbbe32ed0a025b31e7971f22e", + "rev": "e891a93b193fcaf2fc8012d890dc7f0befe86ec2", "type": "github" }, "original": { @@ -1956,11 +1956,11 @@ "nixpkgs": "nixpkgs_10" }, "locked": { - "lastModified": 1755743804, - "narHash": "sha256-M6qT02voARH5e9eTXQBzpYIE/hAp6jPgBCyxLmw5uBM=", + "lastModified": 1756003222, + "narHash": "sha256-lmEMhIIbjt8Wp1EYbNqCojuU9ygyDFv8Tu0X1k8qIMc=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "80322e975e27d834451d6b66e63f8abae9d74bf2", + "rev": "88ceedecde53e809b4bf8b5fd10d181889d9bac7", "type": "github" }, "original": { @@ -2056,11 +2056,11 @@ "stackage_2": { "flake": false, "locked": { - "lastModified": 1755735102, - "narHash": "sha256-/oZzMO5tdwz0V3uLRI5N9BrMEQc6/MFOpDfHRMRehEI=", + "lastModified": 1755994465, + "narHash": "sha256-Qlq6wwYqOV1zCRsGxT3LGVZfZ6FhpcC1REz8xpGsIvo=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "999a41c7e94d417cd507977e1050a18f3a7a2424", + "rev": "ffe783102e38ec64a0ec660c58633f367eb6371a", "type": "github" }, "original": { From 62818db6f8942448d0fdf0e9bf21d0c596ce6ef6 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 7 Sep 2025 12:47:02 +0000 Subject: [PATCH 92/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/68250080a46d574063e7c61adf78f495796d8861?narHash=sha256-SqAOPMDxSxwr7RGU7cIGI95fu6AL13fpB2xg/Ts9tgc%3D' (2025-08-24) → 'github:mlabs-haskell/flake-lang.nix/137f5c5ed7ebbad21ee654b4a8d4044c08425966?narHash=sha256-Crtu0Ly1q6%2BBLePIn2mbHruyE%2BJCjvXjbjVKMPWXLBY%3D' (2025-09-01) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/ccbe0a4ee4fbe9a5898984c308230a9d6d05c66f?narHash=sha256-r4LnUtT5gwy7hKaVTfbuSRLuD4eits4ukCVc79MLCHc%3D' (2025-08-22) → 'github:input-output-hk/cardano-haskell-packages/8668deda6ff4c91896a2422f80fabd1450170cf6?narHash=sha256-FZSEC/I8JIgLFS01WTcSOOtfzUr2dHrNTuBfDWCL2dg%3D' (2025-08-27) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/990d2c97b08044730a998a32405fb5c79383ad56?narHash=sha256-1RUilqkbm95PJOkHwNFn7JwZ5cgXcGs2QnNBhGRocKk%3D' (2025-08-24) → 'github:input-output-hk/haskell.nix/c3380cc02d0e5249b6c1b609833135b95a610af9?narHash=sha256-r6p%2BT14ZlXEDVGml9scgfz7SFq03vOdnOVpDi/muAr8%3D' (2025-08-31) • Removed input 'flake-lang/haskell-nix/ghc-8.6.5-iohk' • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/22e202424e8917582a16caf625ff4431c90165d2?narHash=sha256-w5lJCMBdiliSvMzWy5Vmb5ljonfWWb4T1%2Bm4l6FMAPQ%3D' (2025-08-24) → 'github:input-output-hk/hackage.nix/e020d73db65a3077ed216941a682ac8de3722cd2?narHash=sha256-jwu%2BnyaVHxJzgDJMJjZ6ZJ7kR/Tc0Zd%2Bkj0TnbhXzwU%3D' (2025-08-31) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/75bda500c7583ec1f74fd3797f6aa959c51c4298?narHash=sha256-Xg46VMTIW3NgMLzjgzmnVHZpoR3NoMmAoXEF3%2Bhfbao%3D' (2025-08-24) → 'github:input-output-hk/hackage.nix/cfc1ade34a20cf02b8da122c7c13dc8402cff0e1?narHash=sha256-rCDhCCWoNPbNM92s%2BCy2ynLsy26GLwaT0cNgttbHbTY%3D' (2025-08-31) • Updated input 'flake-lang/haskell-nix/iserv-proxy': 'github:stable-haskell/iserv-proxy/1383d199a2c64f522979005d112b4fbdee38dd92?narHash=sha256-8W7uHpAIG8HhO3ig5OGHqvwduoye6q6dlrea1IrP2eI%3D' (2025-08-12) → 'github:stable-haskell/iserv-proxy/150605195cb7183a6fb7bed82f23fedf37c6f52a?narHash=sha256-GLbl1YaohKdpzZVJFRdcI1O1oE3F3uBer4lFv3Yy0l8%3D' (2025-08-15) • Updated input 'flake-lang/haskell-nix/nixpkgs-2505': 'github:NixOS/nixpkgs/a8167f3cc2f991dd4d0055746df53dae5fd0c953?narHash=sha256-r/wVJWmLYEqvrJKnL48r90Wn9HWX9SHFt6s4LhuTh7k%3D' (2025-06-02) → 'github:NixOS/nixpkgs/4896699973299bffae27d0d9828226983544d9e9?narHash=sha256-suIgZZHXdb4ca9nN4MIcmdjeN%2BZWsTwCtYAG4HExqAo%3D' (2025-08-06) • Updated input 'flake-lang/haskell-nix/nixpkgs-unstable': 'github:NixOS/nixpkgs/e4b09e47ace7d87de083786b404bf232eb6c89d8?narHash=sha256-RlTsJUvvr8ErjPBsiwrGbbHYW8XbB/oek0Gi78XdWKg%3D' (2025-06-02) → 'github:NixOS/nixpkgs/a683adc19ff5228af548c6539dbc3440509bfed3?narHash=sha256-fbnmAwTQkuXHKBlcL5Nq1sMAzd3GFqCOQgEQw6Hy0Ak%3D' (2025-08-05) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/ffe783102e38ec64a0ec660c58633f367eb6371a?narHash=sha256-Qlq6wwYqOV1zCRsGxT3LGVZfZ6FhpcC1REz8xpGsIvo%3D' (2025-08-24) → 'github:input-output-hk/stackage.nix/1ae535ce067096a08308b6884e70a634a16ee8d0?narHash=sha256-q5bRMT/Zr/hzXT1q8yDzPDsthgVIn6KLTa9Uens2oWo%3D' (2025-08-31) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/b1b3291469652d5a2edb0becc4ef0246fff97a7c?narHash=sha256-wY1%2B2JPH0ZZC4BQefoZw/k%2B3%2BDowFyfOxv17CN/idKs%3D' (2025-08-23) → 'github:NixOS/nixpkgs/41d292bfc37309790f70f4c120b79280ce40af16?narHash=sha256-YvtD2E7MYsQ3r7K9K2G7nCslCKMPShoSEAtbjHLtH0k%3D' (2025-08-29) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/88ceedecde53e809b4bf8b5fd10d181889d9bac7?narHash=sha256-lmEMhIIbjt8Wp1EYbNqCojuU9ygyDFv8Tu0X1k8qIMc%3D' (2025-08-24) → 'github:oxalica/rust-overlay/f46d294b87ebb9f7124f1ce13aa2a5f5acc0f3eb?narHash=sha256-ciwAdgtlAN1PCaidWK6RuWsTBL8DVuyDCGM%2BX3ein5Q%3D' (2025-08-31) --- flake.lock | 84 +++++++++++++++++++++--------------------------------- 1 file changed, 33 insertions(+), 51 deletions(-) diff --git a/flake.lock b/flake.lock index 35a9e752..f8aa8eb6 100644 --- a/flake.lock +++ b/flake.lock @@ -203,11 +203,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1755876829, - "narHash": "sha256-r4LnUtT5gwy7hKaVTfbuSRLuD4eits4ukCVc79MLCHc=", + "lastModified": 1756312114, + "narHash": "sha256-FZSEC/I8JIgLFS01WTcSOOtfzUr2dHrNTuBfDWCL2dg=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "ccbe0a4ee4fbe9a5898984c308230a9d6d05c66f", + "rev": "8668deda6ff4c91896a2422f80fabd1450170cf6", "type": "github" }, "original": { @@ -493,11 +493,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1756076828, - "narHash": "sha256-SqAOPMDxSxwr7RGU7cIGI95fu6AL13fpB2xg/Ts9tgc=", + "lastModified": 1756694438, + "narHash": "sha256-Crtu0Ly1q6+BLePIn2mbHruyE+JCjvXjbjVKMPWXLBY=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "68250080a46d574063e7c61adf78f495796d8861", + "rev": "137f5c5ed7ebbad21ee654b4a8d4044c08425966", "type": "github" }, "original": { @@ -628,23 +628,6 @@ "type": "github" } }, - "ghc-8.6.5-iohk_2": { - "flake": false, - "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", - "type": "github" - }, - "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", - "type": "github" - } - }, "gitignore": { "inputs": { "nixpkgs": [ @@ -705,11 +688,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1755995293, - "narHash": "sha256-Xg46VMTIW3NgMLzjgzmnVHZpoR3NoMmAoXEF3+hfbao=", + "lastModified": 1756600075, + "narHash": "sha256-rCDhCCWoNPbNM92s+Cy2ynLsy26GLwaT0cNgttbHbTY=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "75bda500c7583ec1f74fd3797f6aa959c51c4298", + "rev": "cfc1ade34a20cf02b8da122c7c13dc8402cff0e1", "type": "github" }, "original": { @@ -738,11 +721,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1755995304, - "narHash": "sha256-w5lJCMBdiliSvMzWy5Vmb5ljonfWWb4T1+m4l6FMAPQ=", + "lastModified": 1756600676, + "narHash": "sha256-jwu+nyaVHxJzgDJMJjZ6ZJ7kR/Tc0Zd+kj0TnbhXzwU=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "22e202424e8917582a16caf625ff4431c90165d2", + "rev": "e020d73db65a3077ed216941a682ac8de3722cd2", "type": "github" }, "original": { @@ -759,7 +742,6 @@ "cabal-36": "cabal-36_2", "cardano-shell": "cardano-shell_2", "flake-compat": "flake-compat_4", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_2", "hackage": "hackage_2", "hackage-for-stackage": "hackage-for-stackage", "hackage-internal": "hackage-internal", @@ -793,11 +775,11 @@ "stackage": "stackage_2" }, "locked": { - "lastModified": 1755996739, - "narHash": "sha256-1RUilqkbm95PJOkHwNFn7JwZ5cgXcGs2QnNBhGRocKk=", + "lastModified": 1756601532, + "narHash": "sha256-r6p+T14ZlXEDVGml9scgfz7SFq03vOdnOVpDi/muAr8=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "990d2c97b08044730a998a32405fb5c79383ad56", + "rev": "c3380cc02d0e5249b6c1b609833135b95a610af9", "type": "github" }, "original": { @@ -1272,11 +1254,11 @@ "iserv-proxy_2": { "flake": false, "locked": { - "lastModified": 1755040634, - "narHash": "sha256-8W7uHpAIG8HhO3ig5OGHqvwduoye6q6dlrea1IrP2eI=", + "lastModified": 1755243078, + "narHash": "sha256-GLbl1YaohKdpzZVJFRdcI1O1oE3F3uBer4lFv3Yy0l8=", "owner": "stable-haskell", "repo": "iserv-proxy", - "rev": "1383d199a2c64f522979005d112b4fbdee38dd92", + "rev": "150605195cb7183a6fb7bed82f23fedf37c6f52a", "type": "github" }, "original": { @@ -1611,11 +1593,11 @@ }, "nixpkgs-2505": { "locked": { - "lastModified": 1748852332, - "narHash": "sha256-r/wVJWmLYEqvrJKnL48r90Wn9HWX9SHFt6s4LhuTh7k=", + "lastModified": 1754477006, + "narHash": "sha256-suIgZZHXdb4ca9nN4MIcmdjeN+ZWsTwCtYAG4HExqAo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a8167f3cc2f991dd4d0055746df53dae5fd0c953", + "rev": "4896699973299bffae27d0d9828226983544d9e9", "type": "github" }, "original": { @@ -1674,11 +1656,11 @@ }, "nixpkgs-unstable_2": { "locked": { - "lastModified": 1748856973, - "narHash": "sha256-RlTsJUvvr8ErjPBsiwrGbbHYW8XbB/oek0Gi78XdWKg=", + "lastModified": 1754393734, + "narHash": "sha256-fbnmAwTQkuXHKBlcL5Nq1sMAzd3GFqCOQgEQw6Hy0Ak=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e4b09e47ace7d87de083786b404bf232eb6c89d8", + "rev": "a683adc19ff5228af548c6539dbc3440509bfed3", "type": "github" }, "original": { @@ -1817,11 +1799,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1755922037, - "narHash": "sha256-wY1+2JPH0ZZC4BQefoZw/k+3+DowFyfOxv17CN/idKs=", + "lastModified": 1756469547, + "narHash": "sha256-YvtD2E7MYsQ3r7K9K2G7nCslCKMPShoSEAtbjHLtH0k=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b1b3291469652d5a2edb0becc4ef0246fff97a7c", + "rev": "41d292bfc37309790f70f4c120b79280ce40af16", "type": "github" }, "original": { @@ -1956,11 +1938,11 @@ "nixpkgs": "nixpkgs_10" }, "locked": { - "lastModified": 1756003222, - "narHash": "sha256-lmEMhIIbjt8Wp1EYbNqCojuU9ygyDFv8Tu0X1k8qIMc=", + "lastModified": 1756607787, + "narHash": "sha256-ciwAdgtlAN1PCaidWK6RuWsTBL8DVuyDCGM+X3ein5Q=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "88ceedecde53e809b4bf8b5fd10d181889d9bac7", + "rev": "f46d294b87ebb9f7124f1ce13aa2a5f5acc0f3eb", "type": "github" }, "original": { @@ -2056,11 +2038,11 @@ "stackage_2": { "flake": false, "locked": { - "lastModified": 1755994465, - "narHash": "sha256-Qlq6wwYqOV1zCRsGxT3LGVZfZ6FhpcC1REz8xpGsIvo=", + "lastModified": 1756599261, + "narHash": "sha256-q5bRMT/Zr/hzXT1q8yDzPDsthgVIn6KLTa9Uens2oWo=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "ffe783102e38ec64a0ec660c58633f367eb6371a", + "rev": "1ae535ce067096a08308b6884e70a634a16ee8d0", "type": "github" }, "original": { From e1bca30b9654d5a8e44140cf4208ec19b4f88d35 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 14 Sep 2025 12:47:41 +0000 Subject: [PATCH 93/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/137f5c5ed7ebbad21ee654b4a8d4044c08425966?narHash=sha256-Crtu0Ly1q6%2BBLePIn2mbHruyE%2BJCjvXjbjVKMPWXLBY%3D' (2025-09-01) → 'github:mlabs-haskell/flake-lang.nix/5c3132a19bec8b8e7b468984674f2a4af5cea9f9?narHash=sha256-Sze2hzIeMl48tHFMF/nzar7lKxeATB2JGMX26qzvmsM%3D' (2025-09-08) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/8668deda6ff4c91896a2422f80fabd1450170cf6?narHash=sha256-FZSEC/I8JIgLFS01WTcSOOtfzUr2dHrNTuBfDWCL2dg%3D' (2025-08-27) → 'github:input-output-hk/cardano-haskell-packages/8e043cb654d69e62bfb59b80afb2ddda8481f6f7?narHash=sha256-yUv1JB7WOjoVWhEfk8cKap1P9QDn4hLd4ZHdkNoqvuY%3D' (2025-09-05) • Updated input 'flake-lang/crane': 'github:ipetkov/crane/25bd41b24426c7734278c2ff02e53258851db914?narHash=sha256-FCRRAzSaL/%2BumLIm3RU3O/%2BfJ2ssaPHseI2SSFL8yZU%3D' (2025-08-23) → 'github:ipetkov/crane/d599ae4847e7f87603e7082d73ca673aa93c916d?narHash=sha256-kTdCCMuRE%2B/HNHES5JYsbRHmgtr%2Bl9mOtf5dpcMppVc%3D' (2025-09-06) • Updated input 'flake-lang/flake-parts': 'github:hercules-ci/flake-parts/af66ad14b28a127c5c0f3bbb298218fc63528a18?narHash=sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8%3D' (2025-08-06) → 'github:hercules-ci/flake-parts/4524271976b625a4a605beefd893f270620fd751?narHash=sha256-%2BuWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw%3D' (2025-09-01) • Updated input 'flake-lang/flake-parts/nixpkgs-lib': 'github:nix-community/nixpkgs.lib/0f36c44e01a6129be94e3ade315a5883f0228a6e?narHash=sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA%3D' (2025-07-27) → 'github:nix-community/nixpkgs.lib/a73b9c743612e4244d865a2fdee11865283c04e6?narHash=sha256-x2rJ%2BOvzq0sCMpgfgGaaqgBSwY%2BLST%2BWbZ6TytnT9Rk%3D' (2025-08-10) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/c3380cc02d0e5249b6c1b609833135b95a610af9?narHash=sha256-r6p%2BT14ZlXEDVGml9scgfz7SFq03vOdnOVpDi/muAr8%3D' (2025-08-31) → 'github:input-output-hk/haskell.nix/7b64b0dfe9e38325bc6cd3a4f057b5215801c872?narHash=sha256-gVh7U8kYbIpexIXAHWL01vEtQ%2Bjc5PTY3w6bOfCGQhs%3D' (2025-09-07) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/e020d73db65a3077ed216941a682ac8de3722cd2?narHash=sha256-jwu%2BnyaVHxJzgDJMJjZ6ZJ7kR/Tc0Zd%2Bkj0TnbhXzwU%3D' (2025-08-31) → 'github:input-output-hk/hackage.nix/d22d519e92ee6d0348a659976d009f3419c3de52?narHash=sha256-FLpW1I62%2BNsfVy4F5hSs0%2BUj/vkJvjgj86WyZgrW2/s%3D' (2025-09-07) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/cfc1ade34a20cf02b8da122c7c13dc8402cff0e1?narHash=sha256-rCDhCCWoNPbNM92s%2BCy2ynLsy26GLwaT0cNgttbHbTY%3D' (2025-08-31) → 'github:input-output-hk/hackage.nix/bb8327a2c31bc99495e6b3f7bd0f0450c25f4143?narHash=sha256-dAPQdVpNP%2BwjqKh%2BXpvLgDf6QO03UXLsLXtJMetIo8o%3D' (2025-09-07) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/1ae535ce067096a08308b6884e70a634a16ee8d0?narHash=sha256-q5bRMT/Zr/hzXT1q8yDzPDsthgVIn6KLTa9Uens2oWo%3D' (2025-08-31) → 'github:input-output-hk/stackage.nix/722d22874e9fff8d13ff194bda0d9b502d923e09?narHash=sha256-5a1iwJt%2BslNOV429cf6flinG8uUXI9d0xI9GrLe9QT8%3D' (2025-09-07) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/41d292bfc37309790f70f4c120b79280ce40af16?narHash=sha256-YvtD2E7MYsQ3r7K9K2G7nCslCKMPShoSEAtbjHLtH0k%3D' (2025-08-29) → 'github:NixOS/nixpkgs/fe83bbdde2ccdc2cb9573aa846abe8363f79a97a?narHash=sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0%3D' (2025-09-04) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/e891a93b193fcaf2fc8012d890dc7f0befe86ec2?narHash=sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs%3D' (2025-08-23) → 'github:cachix/pre-commit-hooks.nix/ab82ab08d6bf74085bd328de2a8722c12d97bd9d?narHash=sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM%3D' (2025-09-07) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/f46d294b87ebb9f7124f1ce13aa2a5f5acc0f3eb?narHash=sha256-ciwAdgtlAN1PCaidWK6RuWsTBL8DVuyDCGM%2BX3ein5Q%3D' (2025-08-31) → 'github:oxalica/rust-overlay/a8c2f9348abb14647d8a4899d1b3acd0155ce2cd?narHash=sha256-ZTHwY7u8BQF1JUazhGk%2BftCjsS57Ht6KSnnkxQoUBA8%3D' (2025-09-07) --- flake.lock | 72 +++++++++++++++++++++++++++--------------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/flake.lock b/flake.lock index f8aa8eb6..bca24828 100644 --- a/flake.lock +++ b/flake.lock @@ -203,11 +203,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1756312114, - "narHash": "sha256-FZSEC/I8JIgLFS01WTcSOOtfzUr2dHrNTuBfDWCL2dg=", + "lastModified": 1757088431, + "narHash": "sha256-yUv1JB7WOjoVWhEfk8cKap1P9QDn4hLd4ZHdkNoqvuY=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "8668deda6ff4c91896a2422f80fabd1450170cf6", + "rev": "8e043cb654d69e62bfb59b80afb2ddda8481f6f7", "type": "github" }, "original": { @@ -251,11 +251,11 @@ }, "crane": { "locked": { - "lastModified": 1755993354, - "narHash": "sha256-FCRRAzSaL/+umLIm3RU3O/+fJ2ssaPHseI2SSFL8yZU=", + "lastModified": 1757183466, + "narHash": "sha256-kTdCCMuRE+/HNHES5JYsbRHmgtr+l9mOtf5dpcMppVc=", "owner": "ipetkov", "repo": "crane", - "rev": "25bd41b24426c7734278c2ff02e53258851db914", + "rev": "d599ae4847e7f87603e7082d73ca673aa93c916d", "type": "github" }, "original": { @@ -493,11 +493,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1756694438, - "narHash": "sha256-Crtu0Ly1q6+BLePIn2mbHruyE+JCjvXjbjVKMPWXLBY=", + "lastModified": 1757326766, + "narHash": "sha256-Sze2hzIeMl48tHFMF/nzar7lKxeATB2JGMX26qzvmsM=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "137f5c5ed7ebbad21ee654b4a8d4044c08425966", + "rev": "5c3132a19bec8b8e7b468984674f2a4af5cea9f9", "type": "github" }, "original": { @@ -511,11 +511,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1754487366, - "narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=", + "lastModified": 1756770412, + "narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18", + "rev": "4524271976b625a4a605beefd893f270620fd751", "type": "github" }, "original": { @@ -688,11 +688,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1756600075, - "narHash": "sha256-rCDhCCWoNPbNM92s+Cy2ynLsy26GLwaT0cNgttbHbTY=", + "lastModified": 1757204824, + "narHash": "sha256-dAPQdVpNP+wjqKh+XpvLgDf6QO03UXLsLXtJMetIo8o=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "cfc1ade34a20cf02b8da122c7c13dc8402cff0e1", + "rev": "bb8327a2c31bc99495e6b3f7bd0f0450c25f4143", "type": "github" }, "original": { @@ -721,11 +721,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1756600676, - "narHash": "sha256-jwu+nyaVHxJzgDJMJjZ6ZJ7kR/Tc0Zd+kj0TnbhXzwU=", + "lastModified": 1757204834, + "narHash": "sha256-FLpW1I62+NsfVy4F5hSs0+Uj/vkJvjgj86WyZgrW2/s=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "e020d73db65a3077ed216941a682ac8de3722cd2", + "rev": "d22d519e92ee6d0348a659976d009f3419c3de52", "type": "github" }, "original": { @@ -775,11 +775,11 @@ "stackage": "stackage_2" }, "locked": { - "lastModified": 1756601532, - "narHash": "sha256-r6p+T14ZlXEDVGml9scgfz7SFq03vOdnOVpDi/muAr8=", + "lastModified": 1757206330, + "narHash": "sha256-gVh7U8kYbIpexIXAHWL01vEtQ+jc5PTY3w6bOfCGQhs=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "c3380cc02d0e5249b6c1b609833135b95a610af9", + "rev": "7b64b0dfe9e38325bc6cd3a4f057b5215801c872", "type": "github" }, "original": { @@ -1609,11 +1609,11 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1753579242, - "narHash": "sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA=", + "lastModified": 1754788789, + "narHash": "sha256-x2rJ+Ovzq0sCMpgfgGaaqgBSwY+LST+WbZ6TytnT9Rk=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "0f36c44e01a6129be94e3ade315a5883f0228a6e", + "rev": "a73b9c743612e4244d865a2fdee11865283c04e6", "type": "github" }, "original": { @@ -1799,11 +1799,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1756469547, - "narHash": "sha256-YvtD2E7MYsQ3r7K9K2G7nCslCKMPShoSEAtbjHLtH0k=", + "lastModified": 1757020766, + "narHash": "sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "41d292bfc37309790f70f4c120b79280ce40af16", + "rev": "fe83bbdde2ccdc2cb9573aa846abe8363f79a97a", "type": "github" }, "original": { @@ -1902,11 +1902,11 @@ "nixpkgs": "nixpkgs_9" }, "locked": { - "lastModified": 1755960406, - "narHash": "sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs=", + "lastModified": 1757239681, + "narHash": "sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "e891a93b193fcaf2fc8012d890dc7f0befe86ec2", + "rev": "ab82ab08d6bf74085bd328de2a8722c12d97bd9d", "type": "github" }, "original": { @@ -1938,11 +1938,11 @@ "nixpkgs": "nixpkgs_10" }, "locked": { - "lastModified": 1756607787, - "narHash": "sha256-ciwAdgtlAN1PCaidWK6RuWsTBL8DVuyDCGM+X3ein5Q=", + "lastModified": 1757212513, + "narHash": "sha256-ZTHwY7u8BQF1JUazhGk+ftCjsS57Ht6KSnnkxQoUBA8=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "f46d294b87ebb9f7124f1ce13aa2a5f5acc0f3eb", + "rev": "a8c2f9348abb14647d8a4899d1b3acd0155ce2cd", "type": "github" }, "original": { @@ -2038,11 +2038,11 @@ "stackage_2": { "flake": false, "locked": { - "lastModified": 1756599261, - "narHash": "sha256-q5bRMT/Zr/hzXT1q8yDzPDsthgVIn6KLTa9Uens2oWo=", + "lastModified": 1757204011, + "narHash": "sha256-5a1iwJt+slNOV429cf6flinG8uUXI9d0xI9GrLe9QT8=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "1ae535ce067096a08308b6884e70a634a16ee8d0", + "rev": "722d22874e9fff8d13ff194bda0d9b502d923e09", "type": "github" }, "original": { From f0368766cc6d87f032ed9d0befcd18ea961118da Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Sun, 21 Sep 2025 12:47:02 +0000 Subject: [PATCH 94/94] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-lang': 'github:mlabs-haskell/flake-lang.nix/5c3132a19bec8b8e7b468984674f2a4af5cea9f9?narHash=sha256-Sze2hzIeMl48tHFMF/nzar7lKxeATB2JGMX26qzvmsM%3D' (2025-09-08) → 'github:mlabs-haskell/flake-lang.nix/a124f579c24dc56ba6cbe2db6774f80d95881d66?narHash=sha256-Lh/GsBeNGxUwuqgWd7L04vSX2JdywSu/rdTLzT7QTcI%3D' (2025-09-15) • Updated input 'flake-lang/cardano-haskell-packages': 'github:input-output-hk/cardano-haskell-packages/8e043cb654d69e62bfb59b80afb2ddda8481f6f7?narHash=sha256-yUv1JB7WOjoVWhEfk8cKap1P9QDn4hLd4ZHdkNoqvuY%3D' (2025-09-05) → 'github:input-output-hk/cardano-haskell-packages/97e199b88b3a0f6b9e404bb4994d4e255240a127?narHash=sha256-dL7bPSjuG9e4umn2SMXOgCWVbXirC9duhPWmsyAlj50%3D' (2025-09-11) • Updated input 'flake-lang/haskell-nix': 'github:input-output-hk/haskell.nix/7b64b0dfe9e38325bc6cd3a4f057b5215801c872?narHash=sha256-gVh7U8kYbIpexIXAHWL01vEtQ%2Bjc5PTY3w6bOfCGQhs%3D' (2025-09-07) → 'github:input-output-hk/haskell.nix/35e930ac438d89712176bff0eaa395e4b8713d0a?narHash=sha256-MVu7Op2QvLdpfGlgAhlIUI70rubNKoH4EYQCCiwMWHk%3D' (2025-09-14) • Updated input 'flake-lang/haskell-nix/hackage': 'github:input-output-hk/hackage.nix/d22d519e92ee6d0348a659976d009f3419c3de52?narHash=sha256-FLpW1I62%2BNsfVy4F5hSs0%2BUj/vkJvjgj86WyZgrW2/s%3D' (2025-09-07) → 'github:input-output-hk/hackage.nix/f571f08ad006b9fe9414187fb41c138f26903e86?narHash=sha256-MjKAoOe1BLolT0BtwzKTunNjKUq88kggRC89w4e/sHQ%3D' (2025-09-14) • Updated input 'flake-lang/haskell-nix/hackage-for-stackage': 'github:input-output-hk/hackage.nix/bb8327a2c31bc99495e6b3f7bd0f0450c25f4143?narHash=sha256-dAPQdVpNP%2BwjqKh%2BXpvLgDf6QO03UXLsLXtJMetIo8o%3D' (2025-09-07) → 'github:input-output-hk/hackage.nix/28b122b09db4268d75bf7f2d8e2114b6582845e3?narHash=sha256-iAIZlbLPFErCLSOYAEMmJ3LOAwik58oHFDWD07r3GEU%3D' (2025-09-14) • Updated input 'flake-lang/haskell-nix/stackage': 'github:input-output-hk/stackage.nix/722d22874e9fff8d13ff194bda0d9b502d923e09?narHash=sha256-5a1iwJt%2BslNOV429cf6flinG8uUXI9d0xI9GrLe9QT8%3D' (2025-09-07) → 'github:input-output-hk/stackage.nix/47702da08ac70eeb0942a35c9c91aa0d6b4da95b?narHash=sha256-KnFuvS0lCoYxXsjUh5bJ1aY6DxH5E2MawZCjM6dm1XM%3D' (2025-09-14) • Updated input 'flake-lang/iohk-nix': 'github:input-output-hk/iohk-nix/64ca6f4c0c6db283e2ec457c775bce75173fb319?narHash=sha256-rklXDo12dfukaSqcEyiYbze3ffRtTl2/WAAQCWfkGiw%3D' (2025-07-02) → 'github:input-output-hk/iohk-nix/a94259528eb6d37073512d1767f14fd8ea12a8f0?narHash=sha256-rSHOQli%2BiffMmneSF/Ov8Uci6APaROWen%2BEfRb5mmiU%3D' (2025-09-09) • Updated input 'flake-lang/nixpkgs': 'github:NixOS/nixpkgs/fe83bbdde2ccdc2cb9573aa846abe8363f79a97a?narHash=sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0%3D' (2025-09-04) → 'github:NixOS/nixpkgs/8cd5ce828d5d1d16feff37340171a98fc3bf6526?narHash=sha256-mCxPABZ6jRjUQx3bPP4vjA68ETbPLNz9V2pk9tO7pRQ%3D' (2025-09-10) • Updated input 'flake-lang/pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/ab82ab08d6bf74085bd328de2a8722c12d97bd9d?narHash=sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM%3D' (2025-09-07) → 'github:cachix/pre-commit-hooks.nix/b084b2c2b6bc23e83bbfe583b03664eb0b18c411?narHash=sha256-tJ7A8mID3ct69n9WCvZ3PzIIl3rXTdptn/lZmqSS95U%3D' (2025-09-11) • Updated input 'flake-lang/rust-overlay': 'github:oxalica/rust-overlay/a8c2f9348abb14647d8a4899d1b3acd0155ce2cd?narHash=sha256-ZTHwY7u8BQF1JUazhGk%2BftCjsS57Ht6KSnnkxQoUBA8%3D' (2025-09-07) → 'github:oxalica/rust-overlay/7005365b81bcc335f2b744aa30446f4e575e8dc2?narHash=sha256-ssgd1UHgbYBIWYdHNpiQEahGl2Cpd4Nj54fz9qEV1v0%3D' (2025-09-14) • Updated input 'hci-effects': 'github:hercules-ci/hercules-ci-effects/99e03e72e3f7e13506f80ef9ebaedccb929d84d0?narHash=sha256-AavrbMltJKcC2Fx0lfJoZfmy7g87ebXU0ddVenhajLA%3D' (2025-08-15) → 'github:hercules-ci/hercules-ci-effects/1a3667d33e247ad35ca250698d63f49a5453d824?narHash=sha256-ENUhCRWgSX4ni751HieNuQoq06dJvApV/Nm89kh%2B/A0%3D' (2025-09-16) --- flake.lock | 66 +++++++++++++++++++++++++++--------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/flake.lock b/flake.lock index bca24828..6a7b366d 100644 --- a/flake.lock +++ b/flake.lock @@ -203,11 +203,11 @@ "cardano-haskell-packages": { "flake": false, "locked": { - "lastModified": 1757088431, - "narHash": "sha256-yUv1JB7WOjoVWhEfk8cKap1P9QDn4hLd4ZHdkNoqvuY=", + "lastModified": 1757610108, + "narHash": "sha256-dL7bPSjuG9e4umn2SMXOgCWVbXirC9duhPWmsyAlj50=", "owner": "input-output-hk", "repo": "cardano-haskell-packages", - "rev": "8e043cb654d69e62bfb59b80afb2ddda8481f6f7", + "rev": "97e199b88b3a0f6b9e404bb4994d4e255240a127", "type": "github" }, "original": { @@ -493,11 +493,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1757326766, - "narHash": "sha256-Sze2hzIeMl48tHFMF/nzar7lKxeATB2JGMX26qzvmsM=", + "lastModified": 1757918300, + "narHash": "sha256-Lh/GsBeNGxUwuqgWd7L04vSX2JdywSu/rdTLzT7QTcI=", "owner": "mlabs-haskell", "repo": "flake-lang.nix", - "rev": "5c3132a19bec8b8e7b468984674f2a4af5cea9f9", + "rev": "a124f579c24dc56ba6cbe2db6774f80d95881d66", "type": "github" }, "original": { @@ -688,11 +688,11 @@ "hackage-for-stackage": { "flake": false, "locked": { - "lastModified": 1757204824, - "narHash": "sha256-dAPQdVpNP+wjqKh+XpvLgDf6QO03UXLsLXtJMetIo8o=", + "lastModified": 1757809583, + "narHash": "sha256-iAIZlbLPFErCLSOYAEMmJ3LOAwik58oHFDWD07r3GEU=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "bb8327a2c31bc99495e6b3f7bd0f0450c25f4143", + "rev": "28b122b09db4268d75bf7f2d8e2114b6582845e3", "type": "github" }, "original": { @@ -721,11 +721,11 @@ "hackage_2": { "flake": false, "locked": { - "lastModified": 1757204834, - "narHash": "sha256-FLpW1I62+NsfVy4F5hSs0+Uj/vkJvjgj86WyZgrW2/s=", + "lastModified": 1757810350, + "narHash": "sha256-MjKAoOe1BLolT0BtwzKTunNjKUq88kggRC89w4e/sHQ=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "d22d519e92ee6d0348a659976d009f3419c3de52", + "rev": "f571f08ad006b9fe9414187fb41c138f26903e86", "type": "github" }, "original": { @@ -775,11 +775,11 @@ "stackage": "stackage_2" }, "locked": { - "lastModified": 1757206330, - "narHash": "sha256-gVh7U8kYbIpexIXAHWL01vEtQ+jc5PTY3w6bOfCGQhs=", + "lastModified": 1757811101, + "narHash": "sha256-MVu7Op2QvLdpfGlgAhlIUI70rubNKoH4EYQCCiwMWHk=", "owner": "input-output-hk", "repo": "haskell.nix", - "rev": "7b64b0dfe9e38325bc6cd3a4f057b5215801c872", + "rev": "35e930ac438d89712176bff0eaa395e4b8713d0a", "type": "github" }, "original": { @@ -857,11 +857,11 @@ "nixpkgs": "nixpkgs_11" }, "locked": { - "lastModified": 1755233722, - "narHash": "sha256-AavrbMltJKcC2Fx0lfJoZfmy7g87ebXU0ddVenhajLA=", + "lastModified": 1758022363, + "narHash": "sha256-ENUhCRWgSX4ni751HieNuQoq06dJvApV/Nm89kh+/A0=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "99e03e72e3f7e13506f80ef9ebaedccb929d84d0", + "rev": "1a3667d33e247ad35ca250698d63f49a5453d824", "type": "github" }, "original": { @@ -1196,11 +1196,11 @@ "sodium": "sodium_2" }, "locked": { - "lastModified": 1751421193, - "narHash": "sha256-rklXDo12dfukaSqcEyiYbze3ffRtTl2/WAAQCWfkGiw=", + "lastModified": 1757407040, + "narHash": "sha256-rSHOQli+iffMmneSF/Ov8Uci6APaROWen+EfRb5mmiU=", "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "64ca6f4c0c6db283e2ec457c775bce75173fb319", + "rev": "a94259528eb6d37073512d1767f14fd8ea12a8f0", "type": "github" }, "original": { @@ -1799,11 +1799,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1757020766, - "narHash": "sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0=", + "lastModified": 1757545623, + "narHash": "sha256-mCxPABZ6jRjUQx3bPP4vjA68ETbPLNz9V2pk9tO7pRQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fe83bbdde2ccdc2cb9573aa846abe8363f79a97a", + "rev": "8cd5ce828d5d1d16feff37340171a98fc3bf6526", "type": "github" }, "original": { @@ -1902,11 +1902,11 @@ "nixpkgs": "nixpkgs_9" }, "locked": { - "lastModified": 1757239681, - "narHash": "sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM=", + "lastModified": 1757588530, + "narHash": "sha256-tJ7A8mID3ct69n9WCvZ3PzIIl3rXTdptn/lZmqSS95U=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "ab82ab08d6bf74085bd328de2a8722c12d97bd9d", + "rev": "b084b2c2b6bc23e83bbfe583b03664eb0b18c411", "type": "github" }, "original": { @@ -1938,11 +1938,11 @@ "nixpkgs": "nixpkgs_10" }, "locked": { - "lastModified": 1757212513, - "narHash": "sha256-ZTHwY7u8BQF1JUazhGk+ftCjsS57Ht6KSnnkxQoUBA8=", + "lastModified": 1757817311, + "narHash": "sha256-ssgd1UHgbYBIWYdHNpiQEahGl2Cpd4Nj54fz9qEV1v0=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "a8c2f9348abb14647d8a4899d1b3acd0155ce2cd", + "rev": "7005365b81bcc335f2b744aa30446f4e575e8dc2", "type": "github" }, "original": { @@ -2038,11 +2038,11 @@ "stackage_2": { "flake": false, "locked": { - "lastModified": 1757204011, - "narHash": "sha256-5a1iwJt+slNOV429cf6flinG8uUXI9d0xI9GrLe9QT8=", + "lastModified": 1757808803, + "narHash": "sha256-KnFuvS0lCoYxXsjUh5bJ1aY6DxH5E2MawZCjM6dm1XM=", "owner": "input-output-hk", "repo": "stackage.nix", - "rev": "722d22874e9fff8d13ff194bda0d9b502d923e09", + "rev": "47702da08ac70eeb0942a35c9c91aa0d6b4da95b", "type": "github" }, "original": {