diff --git a/crates/aiken-lang/src/ast.rs b/crates/aiken-lang/src/ast.rs index ee0e72bf..3ac288ff 100644 --- a/crates/aiken-lang/src/ast.rs +++ b/crates/aiken-lang/src/ast.rs @@ -288,14 +288,13 @@ impl TypedFunction { } pub fn validator_arity(&self) -> usize { - if self.name == HANDLER_SPEND - || self.name == HANDLER_PUBLISH - || self.name == HANDLER_PROPOSE - { + if self.name == HANDLER_SPEND { 4 } else if self.name == HANDLER_MINT || self.name == HANDLER_WITHDRAW || self.name == HANDLER_VOTE + || self.name == HANDLER_PUBLISH + || self.name == HANDLER_PROPOSE { 3 } else { diff --git a/crates/aiken-lang/src/gen_uplc.rs b/crates/aiken-lang/src/gen_uplc.rs index c44e9ce6..6b23b0cf 100644 --- a/crates/aiken-lang/src/gen_uplc.rs +++ b/crates/aiken-lang/src/gen_uplc.rs @@ -320,6 +320,78 @@ impl<'a> CodeGenerator<'a> { ), }, + "publish" => TypedPattern::Constructor { + is_record: false, + location: Span::empty(), + name: well_known::SCRIPT_PURPOSE_PUBLISH.to_string(), + arguments: vec![CallArg { + label: None, + location: Span::empty(), + value: TypedPattern::Var { + name: "__purpose_arg__".to_string(), + location: Span::empty(), + }, + }], + module: None, + constructor: PatternConstructor::Record { + name: well_known::SCRIPT_PURPOSE_PUBLISH.to_string(), + field_map: None, + }, + spread_location: None, + tipo: Type::function( + vec![Type::data()], + Type::script_purpose(), + ), + }, + + "vote" => TypedPattern::Constructor { + is_record: false, + location: Span::empty(), + name: well_known::SCRIPT_PURPOSE_VOTE.to_string(), + arguments: vec![CallArg { + label: None, + location: Span::empty(), + value: TypedPattern::Var { + name: "__purpose_arg__".to_string(), + location: Span::empty(), + }, + }], + module: None, + constructor: PatternConstructor::Record { + name: well_known::SCRIPT_PURPOSE_VOTE.to_string(), + field_map: None, + }, + spread_location: None, + tipo: Type::function( + vec![Type::data()], + Type::script_purpose(), + ), + }, + + "propose" => TypedPattern::Constructor { + is_record: false, + location: Span::empty(), + name: well_known::SCRIPT_PURPOSE_PROPOSE.to_string(), + arguments: vec![CallArg { + label: None, + location: Span::empty(), + value: TypedPattern::Var { + name: "__purpose_arg__".to_string(), + location: Span::empty(), + }, + }], + module: None, + constructor: PatternConstructor::Record { + name: well_known::SCRIPT_PURPOSE_PROPOSE.to_string(), + field_map: None, + }, + spread_location: None, + tipo: Type::function( + vec![Type::data()], + Type::script_purpose(), + ), + }, + purpose => { unreachable!("unexpected/unknown purpose: {:?}", purpose) } diff --git a/examples/acceptance_tests/script_context/v3/aiken.lock b/examples/acceptance_tests/script_context/v3/aiken.lock index 85f7de07..5fc8277e 100644 --- a/examples/acceptance_tests/script_context/v3/aiken.lock +++ b/examples/acceptance_tests/script_context/v3/aiken.lock @@ -13,4 +13,4 @@ requirements = [] source = "github" [etags] -"aiken-lang/stdlib@v2" = [{ secs_since_epoch = 1723751815, nanos_since_epoch = 69229000 }, "cdbbce58b61deb385e7ea787a2e0fc2dc8fe94db9999e0e6275bc9c70e5796be"] +"aiken-lang/stdlib@v2" = [{ secs_since_epoch = 1723818477, nanos_since_epoch = 540444000 }, "cdbbce58b61deb385e7ea787a2e0fc2dc8fe94db9999e0e6275bc9c70e5796be"] diff --git a/examples/acceptance_tests/script_context/v3/ctx/certificates/tx.template b/examples/acceptance_tests/script_context/v3/ctx/certificates/tx.template index 8e96ec3d..dae84dff 100644 --- a/examples/acceptance_tests/script_context/v3/ctx/certificates/tx.template +++ b/examples/acceptance_tests/script_context/v3/ctx/certificates/tx.template @@ -93,7 +93,7 @@ ] , [ 2 , [ 1 - , h'{{ certificates.script.hash }}' + , h'{{ certificates.purposes_publish.hash }}' ] , h'11111111111111111111111111111111111111111111111111111111' ] @@ -109,7 +109,7 @@ { 5: [[2, 20, 121([]), [1000000, 100000000]]] - , 7: [h'{{ certificates.script.cbor }}'] + , 7: [h'{{ certificates.purposes_publish.cbor }}'] }, true, diff --git a/examples/acceptance_tests/script_context/v3/ctx/proposing_all/tx.template b/examples/acceptance_tests/script_context/v3/ctx/proposing_all/tx.template index afb4c438..45a707a9 100644 --- a/examples/acceptance_tests/script_context/v3/ctx/proposing_all/tx.template +++ b/examples/acceptance_tests/script_context/v3/ctx/proposing_all/tx.template @@ -41,7 +41,7 @@ , h'F000000000000000000000000000000000000000000000000000000000' , [ 2 , { h'E022222222222222222222222222222222222222222222222222222222': 1000000 } - , h'{{ proposing_all.guardrails.hash }}' + , h'{{ proposing_all.guardrails_propose.hash }}' ] , [ "https://aiken-lang.org" , h'0000000000000000000000000000000000000000000000000000000000000000' @@ -112,7 +112,7 @@ { 5: [[5, 3, 121([]), [1000000, 100000000]]] - , 7: [h'{{ proposing_all.guardrails.cbor }}'] + , 7: [h'{{ proposing_all.guardrails_propose.cbor }}'] }, true, diff --git a/examples/acceptance_tests/script_context/v3/ctx/proposing_pparams/tx.template b/examples/acceptance_tests/script_context/v3/ctx/proposing_pparams/tx.template index 82d5fda0..09e61939 100644 --- a/examples/acceptance_tests/script_context/v3/ctx/proposing_pparams/tx.template +++ b/examples/acceptance_tests/script_context/v3/ctx/proposing_pparams/tx.template @@ -61,7 +61,7 @@ , 32: 20 , 33: 30([15, 1]) } - , h'{{ proposing_pparams.guardrails.hash }}' + , h'{{ proposing_pparams.guardrails_propose.hash }}' ] , [ "https://aiken-lang.org" , h'0000000000000000000000000000000000000000000000000000000000000000' @@ -73,7 +73,7 @@ { 5: [[5, 0, 121([]), [1000000, 100000000]]] - , 7: [h'{{ proposing_pparams.guardrails.cbor }}'] + , 7: [h'{{ proposing_pparams.guardrails_propose.cbor }}'] }, true, diff --git a/examples/acceptance_tests/script_context/v3/ctx/voting/tx.template b/examples/acceptance_tests/script_context/v3/ctx/voting/tx.template index 8fef1ee7..e57a6633 100644 --- a/examples/acceptance_tests/script_context/v3/ctx/voting/tx.template +++ b/examples/acceptance_tests/script_context/v3/ctx/voting/tx.template @@ -25,7 +25,7 @@ , [ h'7777777777777777777777777777777777777777777777777777777777777777', 2 ]: [ 2, null ] } - , [ 3, h'{{ voting.script.hash }}' ]: + , [ 3, h'{{ voting.purposes_vote.hash }}' ]: { [ h'9999999999999999999999999999999999999999999999999999999999999999', 3 ]: [ 0, null ] } @@ -33,7 +33,7 @@ { [ h'9999999999999999999999999999999999999999999999999999999999999999', 4 ]: [ 1, null ] } - , [ 1, h'{{ voting.script.hash }}' ]: + , [ 1, h'{{ voting.purposes_vote.hash }}' ]: { [ h'9999999999999999999999999999999999999999999999999999999999999999', 1 ]: [ 1, null ] } } @@ -43,7 +43,7 @@ , [4, 0, 121([42]), [1000000, 100000000]] ] - , 7: [h'{{ voting.script.cbor }}'] + , 7: [h'{{ voting.purposes_vote.cbor }}'] }, true, diff --git a/examples/acceptance_tests/script_context/v3/ctx/withdraw/tx.template b/examples/acceptance_tests/script_context/v3/ctx/withdraw/tx.template index 833f425e..a4d01dee 100644 --- a/examples/acceptance_tests/script_context/v3/ctx/withdraw/tx.template +++ b/examples/acceptance_tests/script_context/v3/ctx/withdraw/tx.template @@ -31,7 +31,7 @@ ] }, - { 5: [ [0, 0, 122([121([])]), [1000000, 100000000]] + { 5: [ [0, 0, 121([]), [1000000, 100000000]] , [3, 0, 121([]), [1000000, 100000000]] ] }, diff --git a/examples/acceptance_tests/script_context/v3/plutus.json b/examples/acceptance_tests/script_context/v3/plutus.json index 3c8e6486..46a5c262 100644 --- a/examples/acceptance_tests/script_context/v3/plutus.json +++ b/examples/acceptance_tests/script_context/v3/plutus.json @@ -6,11 +6,27 @@ "plutusVersion": "v3", "compiler": { "name": "Aiken", - "version": "v1.0.31-alpha+af5086f" + "version": "v1.0.31-alpha+765a14f" }, "license": "Apache-2.0" }, "validators": [ + { + "title": "certificates.purposes_publish", + "redeemer": { + "title": "_redeemer", + "schema": { + "$ref": "#/definitions/Void" + } + }, + "compiledCode": "5919bb0101003232323232323232323232253330053232323232533300a3370e900318061baa00113232323232323253330113005301337540022a66602266e1d2080dac409375a602e60286ea80044c94ccc048c018c050dd50008a99980919b8748070dd6980c180a9baa0011323253330143375e9812dd8799fd8799fd87a9f581c22222222222222222222222222222222222222222222222222222222ffd87a80ffff00330010054800054ccc050cdd7a612dd8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a80ffff00330010054800854ccc050cdd7a612dd8799fd87a9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a80ffff00330010054801054ccc050cdd7a6149d8799fd905009f581c1111111111111111111111111111111111111111111111111111111158209999999999999999999999999999999999999999999999999999999999999999ffff00330010054801854ccc050cdd7a612ad8799fd905019f581c11111111111111111111111111111111111111111111111111111111190539ffff00330010054802054ccc050cdd7a6133d8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799f1a002dc6c0ffffff00330010054802854ccc050cdd7a6133d8799fd87a9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799f1a002dc6c0ffffff00330010054803054ccc050cdd7a6154d8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffffffffff00330010054803854ccc050cdd7a6154d8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd8799fd87a9f581c00000000000000000000000000000000000000000000000000000000ffffffffff00330010054804054ccc050cdd7a6131d8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd87a80ffffff00330010054804854ccc050cdd7a6131d8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd87b80ffffff00330010054805054ccc050cdd7a614fd8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87b9f581c11111111111111111111111111111111111111111111111111111111d87b80ffffff00330010054805854ccc050cdd7a6151d8799fd87c9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799f581c11111111111111111111111111111111111111111111111111111111ff1a002dc6c0ffff00330010054806054ccc050cdd7a6136d8799fd87c9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd87b80ff1a002dc6c0ffff00330010054806854ccc050cdd7a6154d8799fd87c9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87b9f581c11111111111111111111111111111111111111111111111111111111d87b80ff1a002dc6c0ffff00330010054807054ccc050cdd7a614dd8799fd905029fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799f581c22222222222222222222222222222222222222222222222222222222ffffff00330010054807854ccc050cdd7a612bd8799fd905039fd8799f581c00000000000000000000000000000000000000000000000000000000ffffff00330010054808054ccc050cdd7a612fd8799fd87d9fd8799f581c00000000000000000000000000000000000000000000000000000000ff1a002dc6c0ffff00330010054808854ccc050cdd7a612fd8799fd87f9fd8799f581c00000000000000000000000000000000000000000000000000000000ff1a002dc6c0ffff00330010054809054ccc050cdd7a612ad8799fd87e9fd8799f581c00000000000000000000000000000000000000000000000000000000ffffff0033001005480984c94ccc054c024c05cdd5000899299980b19b8748010c060dd500089919299980c19b8748008c068dd5180f0010a99980c1806180d1baa00114a202e02e603a603c00260326ea8004054c06cc060dd500080a19800802a40502a6602a9201a56578706563740a202020202020536f6d65280a202020202020202055706461746544656c6567617465526570726573656e746174697665207b0a2020202020202020202064656c65676174655f726570726573656e7461746976653a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031392900161533015491c66578706563740a202020202020536f6d65280a2020202020202020556e726567697374657244656c6567617465526570726573656e746174697665207b0a2020202020202020202064656c65676174655f726570726573656e7461746976653a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020202020726566756e643a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031382900161533015491c56578706563740a202020202020536f6d65280a2020202020202020526567697374657244656c6567617465526570726573656e746174697665207b0a2020202020202020202064656c65676174655f726570726573656e7461746976653a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020206465706f7369743a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031372900161533015491b26578706563740a202020202020536f6d65280a202020202020202052657469726546726f6d436f6e737469747574696f6e616c436f6d6d6974746565207b0a20202020202020202020636f6e737469747574696f6e616c5f636f6d6d69747465655f6d656d6265723a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031362900161533015491e06578706563740a202020202020536f6d65280a2020202020202020417574686f72697a65436f6e737469747574696f6e616c436f6d6d697474656550726f7879207b0a20202020202020202020636f6e737469747574696f6e616c5f636f6d6d69747465655f6d656d6265723a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202070726f78793a20566572696669636174696f6e4b6579286f6e6c793273292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031352900161533015491ff6578706563740a202020202020536f6d65280a20202020202020205265676973746572416e6444656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465426f7468207b0a2020202020202020202020207374616b655f706f6f6c3a206f6e6c7931732c0a20202020202020202020202064656c65676174655f726570726573656e7461746976653a20416c776179734e6f436f6e666964656e63652c0a202020202020202020207d2c0a20202020202020202020646541706f7369743a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031342900161533015491ed6578706563740a202020202020536f6d65280a20202020202020205265676973746572416e6444656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f746528416c776179734e6f436f6e666964656e6365292c0a202020202020202020206465706f7369743a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031332900161533015491ec6578706563740a202020202020536f6d65280a20202020202020205265676973746572416e6444656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465426c6f636b50726f64756374696f6e286f6e6c793173292c0a202020202020202020206465706f7369743a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031322900161533015491ff6578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465426f7468207b0a2020202020202020202020207374616b655f706f6f6c3a206f6e6c7931732c0a20202020202020202020202064656c65676174655f726570726573656e7461746976653a20416c776179734e6f436f6e666964656e63652c0a202020202020202020207d2c0a20202020202020207d2c0a20202020202029203d3d206c186973742e6174286365727469666963617465732c2031312900161533015491c46578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f746528416c776179734e6f436f6e666964656e6365292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031302900161533015491be6578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f746528416c776179734162737461696e292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20392900161533015491cb6578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f7465285265676973746572656428536372697074286f6e6c7930732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20382900161533015491d46578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f7465285265676973746572656428566572696669636174696f6e4b6579286f6e6c7930732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20372900161533015491b26578706563740a202020202020536f6d65280a2020202020202020556e726567697374657243726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020202020726566756e643a20536f6d6528335f3030305f303030292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20362900161533015491b16578706563740a202020202020536f6d65280a2020202020202020526567697374657243726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020206465706f7369743a20536f6d6528335f3030305f303030292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c203529001615330154917e6578706563740a202020202020536f6d65285265746972655374616b65506f6f6c207b207374616b655f706f6f6c3a206f6e6c7931732c2061745f65706f63683a2031333337207d29203d3d206c6973742e6174280a20202020202020206365727469666963617465732c0a2020202020202020342c0a20202020202029001615330154917d6578706563740a202020202020536f6d652852656769737465725374616b65506f6f6c207b207374616b655f706f6f6c3a206f6e6c7931732c207672663a206f6e6c793973207d29203d3d206c6973742e6174280a20202020202020206365727469666963617465732c0a2020202020202020332c0a2020202020202900161533015491a76578706563740a202020202020536f6d65280a2020202020202020556e726567697374657243726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020202020726566756e643a204e6f6e652c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20322900161533015491a66578706563740a202020202020536f6d65280a2020202020202020526567697374657243726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020206465706f7369743a204e6f6e652c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20312900161533015491886578706563740a202020202020536f6d6528526567697374657243726564656e7469616c207b2063726564656e7469616c3a20536372697074286f6e6c793273292c206465706f7369743a204e6f6e65207d29203d3d206c6973742e6174280a20202020202020206365727469666963617465732c0a2020202020202020302c0a2020202020202900163001001222533301900214c103d87a8000132325333017300b00313374a90001980e00125eb804ccc014014004cdc0001a4002603a0066036004020020602e60306030603060306030603060306030603060306030603060306030603060286ea802c038038c058c05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc04cdd50051bac3015301630163016301630163012375401264a66601e66e1d20043011375400226464a66602266ebd300122d8799f581c11111111111111111111111111111111111111111111111111111111ff0030173018002153330113370e900118099baa001149854cc04924011e65787065637420536372697074282e2e29203d2063726564656e7469616c00161533012491416578706563742044656c6567617465426c6f636b50726f64756374696f6e207b207374616b655f706f6f6c3a206f6e6c793173207d203d3d2064656c656761746500163016001301237540022a66020921406578706563742044656c656761746543726564656e7469616c207b2063726564656e7469616c2c2064656c6567617465207d203d206365727469666963617465001630143015004533300d3001300f375400a2a66602260206ea80145261616370e90001bad3011001300d37540022c601e6020004601c002601c004601800260106ea8004526153300649011856616c696461746f722072657475726e65642066616c73650013656153300449013d65787065637420536f6d652831305f3030305f30303029203d207472616e73616374696f6e2e63757272656e745f74726561737572795f616d6f756e74001615330034912f65787065637420536f6d6528313429203d207472616e73616374696f6e2e74726561737572795f646f6e6174696f6e001615330024918e65787065637420536f6d652844656c656761746543726564656e7469616c207b0a20202020202063726564656e7469616c3a20536372697074282e2e292c0a20202020202064656c65676174653a2044656c6567617465426c6f636b50726f64756374696f6e282e2e292c0a202020207d29203d206c6973742e6174286365727469666963617465732c2032302900165734ae7155ceaab9e5573eae815d0aba21", + "hash": "8f82504c078bda7809945a066d47ef23931a3745f4ec2d272cb7f250" + }, + { + "title": "certificates.purposes_else", + "compiledCode": "5919bb0101003232323232323232323232253330053232323232533300a3370e900318061baa00113232323232323253330113005301337540022a66602266e1d2080dac409375a602e60286ea80044c94ccc048c018c050dd50008a99980919b8748070dd6980c180a9baa0011323253330143375e9812dd8799fd8799fd87a9f581c22222222222222222222222222222222222222222222222222222222ffd87a80ffff00330010054800054ccc050cdd7a612dd8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a80ffff00330010054800854ccc050cdd7a612dd8799fd87a9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a80ffff00330010054801054ccc050cdd7a6149d8799fd905009f581c1111111111111111111111111111111111111111111111111111111158209999999999999999999999999999999999999999999999999999999999999999ffff00330010054801854ccc050cdd7a612ad8799fd905019f581c11111111111111111111111111111111111111111111111111111111190539ffff00330010054802054ccc050cdd7a6133d8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799f1a002dc6c0ffffff00330010054802854ccc050cdd7a6133d8799fd87a9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799f1a002dc6c0ffffff00330010054803054ccc050cdd7a6154d8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffffffffff00330010054803854ccc050cdd7a6154d8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd8799fd87a9f581c00000000000000000000000000000000000000000000000000000000ffffffffff00330010054804054ccc050cdd7a6131d8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd87a80ffffff00330010054804854ccc050cdd7a6131d8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd87b80ffffff00330010054805054ccc050cdd7a614fd8799fd87b9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87b9f581c11111111111111111111111111111111111111111111111111111111d87b80ffffff00330010054805854ccc050cdd7a6151d8799fd87c9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799f581c11111111111111111111111111111111111111111111111111111111ff1a002dc6c0ffff00330010054806054ccc050cdd7a6136d8799fd87c9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87a9fd87b80ff1a002dc6c0ffff00330010054806854ccc050cdd7a6154d8799fd87c9fd8799f581c00000000000000000000000000000000000000000000000000000000ffd87b9f581c11111111111111111111111111111111111111111111111111111111d87b80ff1a002dc6c0ffff00330010054807054ccc050cdd7a614dd8799fd905029fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799f581c22222222222222222222222222222222222222222222222222222222ffffff00330010054807854ccc050cdd7a612bd8799fd905039fd8799f581c00000000000000000000000000000000000000000000000000000000ffffff00330010054808054ccc050cdd7a612fd8799fd87d9fd8799f581c00000000000000000000000000000000000000000000000000000000ff1a002dc6c0ffff00330010054808854ccc050cdd7a612fd8799fd87f9fd8799f581c00000000000000000000000000000000000000000000000000000000ff1a002dc6c0ffff00330010054809054ccc050cdd7a612ad8799fd87e9fd8799f581c00000000000000000000000000000000000000000000000000000000ffffff0033001005480984c94ccc054c024c05cdd5000899299980b19b8748010c060dd500089919299980c19b8748008c068dd5180f0010a99980c1806180d1baa00114a202e02e603a603c00260326ea8004054c06cc060dd500080a19800802a40502a6602a9201a56578706563740a202020202020536f6d65280a202020202020202055706461746544656c6567617465526570726573656e746174697665207b0a2020202020202020202064656c65676174655f726570726573656e7461746976653a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031392900161533015491c66578706563740a202020202020536f6d65280a2020202020202020556e726567697374657244656c6567617465526570726573656e746174697665207b0a2020202020202020202064656c65676174655f726570726573656e7461746976653a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020202020726566756e643a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031382900161533015491c56578706563740a202020202020536f6d65280a2020202020202020526567697374657244656c6567617465526570726573656e746174697665207b0a2020202020202020202064656c65676174655f726570726573656e7461746976653a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020206465706f7369743a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031372900161533015491b26578706563740a202020202020536f6d65280a202020202020202052657469726546726f6d436f6e737469747574696f6e616c436f6d6d6974746565207b0a20202020202020202020636f6e737469747574696f6e616c5f636f6d6d69747465655f6d656d6265723a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031362900161533015491e06578706563740a202020202020536f6d65280a2020202020202020417574686f72697a65436f6e737469747574696f6e616c436f6d6d697474656550726f7879207b0a20202020202020202020636f6e737469747574696f6e616c5f636f6d6d69747465655f6d656d6265723a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202070726f78793a20566572696669636174696f6e4b6579286f6e6c793273292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031352900161533015491ff6578706563740a202020202020536f6d65280a20202020202020205265676973746572416e6444656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465426f7468207b0a2020202020202020202020207374616b655f706f6f6c3a206f6e6c7931732c0a20202020202020202020202064656c65676174655f726570726573656e7461746976653a20416c776179734e6f436f6e666964656e63652c0a202020202020202020207d2c0a20202020202020202020646541706f7369743a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031342900161533015491ed6578706563740a202020202020536f6d65280a20202020202020205265676973746572416e6444656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f746528416c776179734e6f436f6e666964656e6365292c0a202020202020202020206465706f7369743a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031332900161533015491ec6578706563740a202020202020536f6d65280a20202020202020205265676973746572416e6444656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465426c6f636b50726f64756374696f6e286f6e6c793173292c0a202020202020202020206465706f7369743a20335f3030305f3030302c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031322900161533015491ff6578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465426f7468207b0a2020202020202020202020207374616b655f706f6f6c3a206f6e6c7931732c0a20202020202020202020202064656c65676174655f726570726573656e7461746976653a20416c776179734e6f436f6e666964656e63652c0a202020202020202020207d2c0a20202020202020207d2c0a20202020202029203d3d206c186973742e6174286365727469666963617465732c2031312900161533015491c46578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f746528416c776179734e6f436f6e666964656e6365292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c2031302900161533015491be6578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f746528416c776179734162737461696e292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20392900161533015491cb6578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f7465285265676973746572656428536372697074286f6e6c7930732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20382900161533015491d46578706563740a202020202020536f6d65280a202020202020202044656c656761746543726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a2020202020202020202064656c65676174653a2044656c6567617465566f7465285265676973746572656428566572696669636174696f6e4b6579286f6e6c7930732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20372900161533015491b26578706563740a202020202020536f6d65280a2020202020202020556e726567697374657243726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020202020726566756e643a20536f6d6528335f3030305f303030292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20362900161533015491b16578706563740a202020202020536f6d65280a2020202020202020526567697374657243726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020206465706f7369743a20536f6d6528335f3030305f303030292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c203529001615330154917e6578706563740a202020202020536f6d65285265746972655374616b65506f6f6c207b207374616b655f706f6f6c3a206f6e6c7931732c2061745f65706f63683a2031333337207d29203d3d206c6973742e6174280a20202020202020206365727469666963617465732c0a2020202020202020342c0a20202020202029001615330154917d6578706563740a202020202020536f6d652852656769737465725374616b65506f6f6c207b207374616b655f706f6f6c3a206f6e6c7931732c207672663a206f6e6c793973207d29203d3d206c6973742e6174280a20202020202020206365727469666963617465732c0a2020202020202020332c0a2020202020202900161533015491a76578706563740a202020202020536f6d65280a2020202020202020556e726567697374657243726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a20202020202020202020726566756e643a204e6f6e652c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20322900161533015491a66578706563740a202020202020536f6d65280a2020202020202020526567697374657243726564656e7469616c207b0a2020202020202020202063726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020206465706f7369743a204e6f6e652c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286365727469666963617465732c20312900161533015491886578706563740a202020202020536f6d6528526567697374657243726564656e7469616c207b2063726564656e7469616c3a20536372697074286f6e6c793273292c206465706f7369743a204e6f6e65207d29203d3d206c6973742e6174280a20202020202020206365727469666963617465732c0a2020202020202020302c0a2020202020202900163001001222533301900214c103d87a8000132325333017300b00313374a90001980e00125eb804ccc014014004cdc0001a4002603a0066036004020020602e60306030603060306030603060306030603060306030603060306030603060286ea802c038038c058c05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc05cc04cdd50051bac3015301630163016301630163012375401264a66601e66e1d20043011375400226464a66602266ebd300122d8799f581c11111111111111111111111111111111111111111111111111111111ff0030173018002153330113370e900118099baa001149854cc04924011e65787065637420536372697074282e2e29203d2063726564656e7469616c00161533012491416578706563742044656c6567617465426c6f636b50726f64756374696f6e207b207374616b655f706f6f6c3a206f6e6c793173207d203d3d2064656c656761746500163016001301237540022a66020921406578706563742044656c656761746543726564656e7469616c207b2063726564656e7469616c2c2064656c6567617465207d203d206365727469666963617465001630143015004533300d3001300f375400a2a66602260206ea80145261616370e90001bad3011001300d37540022c601e6020004601c002601c004601800260106ea8004526153300649011856616c696461746f722072657475726e65642066616c73650013656153300449013d65787065637420536f6d652831305f3030305f30303029203d207472616e73616374696f6e2e63757272656e745f74726561737572795f616d6f756e74001615330034912f65787065637420536f6d6528313429203d207472616e73616374696f6e2e74726561737572795f646f6e6174696f6e001615330024918e65787065637420536f6d652844656c656761746543726564656e7469616c207b0a20202020202063726564656e7469616c3a20536372697074282e2e292c0a20202020202064656c65676174653a2044656c6567617465426c6f636b50726f64756374696f6e282e2e292c0a202020207d29203d206c6973742e6174286365727469666963617465732c2032302900165734ae7155ceaab9e5573eae815d0aba21", + "hash": "8f82504c078bda7809945a066d47ef23931a3745f4ec2d272cb7f250" + }, { "title": "mint.test_1_mint", "redeemer": { @@ -35,13 +51,45 @@ "$ref": "#/definitions/Void" } }, - "compiledCode": "58a90101003232323232323225333002323232323253330073370e900018049baa0011323253300a4901105f5f5f5f5f6d696e745f325f5f5f5f5f0014a2a66601066e1d2000300a37540062a66601860166ea800c5261616375c601860146ea800458c02cc030008c028004c028008c020004c014dd50008a4c2a660069211856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae855d101", - "hash": "89be72769ebe14d7608af5cebaf502655394e7a2a5516cfb39f01469" + "compiledCode": "58a70101003232323232323225333002323232323253330073370e900018049baa0011323253300a49010e736c6668696f65723777387972750014a2a66601066e1d2000300a37540062a66601860166ea800c5261616375c601860146ea800458c02cc030008c028004c028008c020004c014dd50008a4c2a660069211856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae855d101", + "hash": "0c7fdf894714b91be17feb6d255619d0c45c14075faf7f9ccce61d78" }, { "title": "mint.test_2_else", - "compiledCode": "58a90101003232323232323225333002323232323253330073370e900018049baa0011323253300a4901105f5f5f5f5f6d696e745f325f5f5f5f5f0014a2a66601066e1d2000300a37540062a66601860166ea800c5261616375c601860146ea800458c02cc030008c028004c028008c020004c014dd50008a4c2a660069211856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae855d101", - "hash": "89be72769ebe14d7608af5cebaf502655394e7a2a5516cfb39f01469" + "compiledCode": "58a70101003232323232323225333002323232323253330073370e900018049baa0011323253300a49010e736c6668696f65723777387972750014a2a66601066e1d2000300a37540062a66601860166ea800c5261616375c601860146ea800458c02cc030008c028004c028008c020004c014dd50008a4c2a660069211856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae855d101", + "hash": "0c7fdf894714b91be17feb6d255619d0c45c14075faf7f9ccce61d78" + }, + { + "title": "proposing_all.guardrails_propose", + "redeemer": { + "title": "_redeemer", + "schema": { + "$ref": "#/definitions/Void" + } + }, + "compiledCode": "590cb00101003232323232323232323232323232253330073232323232533300c3370e900518071baa00113232323232323232323232323232323232323232323232324a264a666048602a604c6ea80044c94ccc094c04cdd6980718141baa001153330253375e601a60506ea800530122d8799f581c00000000000000000000000000000000000000000000000000000000ff00153330253375e601860506ea8005300103d87f8000149854cc0992412e6578706563742070726f6365647572652e676f7665726e616e63655f616374696f6e203d3d204e696365506f6c6c001615330264913a6578706563742070726f6365647572652e72657475726e5f61646472657373203d3d20566572696669636174696f6e4b6579286e756c6c3238290016024302a302737540020446601a02490081980419806008a401c4a66604666ebd30012dd87e9fd87a80d8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffffff00001149854cc0912401996578706563740a202020202020202020204e6577436f6e737469747574696f6e207b0a202020202020202020202020616e636573746f723a204e6f6e652c0a202020202020202020202020636f6e737469747574696f6e3a20436f6e737469747574696f6e207b2067756172647261696c733a20536f6d65286e756c6c323829207d2c0a202020202020202020207d203d3d20616374696f6e0016330073300b0104803094ccc088cdd7a6010ed87e9fd87a80d8799fd87a80ffff00001149854cc08d2401916578706563740a202020202020202020204e6577436f6e737469747574696f6e207b0a202020202020202020202020616e636573746f723a204e6f6e652c0a202020202020202020202020636f6e737469747574696f6e3a20436f6e737469747574696f6e207b2067756172647261696c733a204e6f6e65207d2c0a202020202020202020207d203d3d20616374696f6e0016330063300a00f480288c94ccc088c04cc090dd50008a99981119baf3374a900419813a6103d87a8000330274c1249fd8799f581c00000000000000000000000000000000000000000000000000000000ffff00330274c126a1d8799f581c00000000000000000000000000000000000000000000000000000000ff1901f4003302730283025375400297ae0002149854cc08d241e96578706563740a20202020202020202020436f6e737469747574696f6e616c436f6d6d6974746565207b0a202020202020202020202020616e636573746f723a204e6f6e652c0a202020202020202020202020657669637465645f6d656d626572733a205b566572696669636174696f6e4b6579286e756c6c3238295d2c0a20202020202020202020202061646465645f6d656d626572733a205b5061697228566572696669636174696f6e4b6579286e756c6c3238292c20353030295d2c0a20202020202020202020202071756f72756d2c0a202020202020202020207d203d3d20616374696f6e001615330234912865787065637420536f6d652871756f72756d29203d20726174696f6e616c2e6e657728312c203229001653330214a0298103d87a8000153330214a02601a6604c601a6604c6ea120013302637509001a5eb812f5c02601a6604c601a6604c981010100330264c10102004bd7025eb80cc014cc0240392008253330203375e98107d87c9fd87a80ff00001149854cc085240130657870656374204e6f436f6e666964656e6365207b20616e636573746f723a204e6f6e65207d203d3d20616374696f6e0016330043300800d4801894ccc07ccdc3a400860426ea800454ccc07cc040c084dd51812981318111baa0011498068068cc00ccc01c03120042533301e3375e98012fd87b9fa1d8799f581c11111111111111111111111111111111111111111111111111111111ff1a000f4240d87a80ff00001149854cc07d2401ff6578706563740a2020202020202020202054726561737572795769746864726177616c207b0a20202020202020202020202062656e656669636961726965733a205b0a202020202020202020202020202050616972280a20202020202020202020202020202020566572696669636174696f6e4b6579280a20202020202020202020202020202020202023223131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131222c0a20202020202020202020202020202020292c0a20202020202020202020202020202020315f3030305f3030302c0a202020202020202020204920202020292c0a2020202020202020202020205d2c0a20202020202020202020202067756172647261696c733a204e6f6e652c0a202020202020202020207d203d3d20616374696f6e0016330023300600b4800894ccc074cdd7a60135d87a9fd8799fd8799f5820000000000000000000000000000000000000000000000000000000000000000000ffffd8799f0b00ffff00001149854cc07924019d6578706563740a2020202020202020202048617264466f726b207b0a202020202020202020202020616e636573746f723a20536f6d6528476f7665726e616e6365416374696f6e4964286e756c6c33322c203029292c0a2020202020202020202020206e65775f76657273696f6e3a2050726f746f636f6c56657273696f6e2831312c2030292c0a202020202020202020207d203d3d20616374696f6e0016330013300500a4800094ccc070cdd7a6010dd87a9fd87a80d8799f0a00ffff00001149854cc07524015b6578706563740a2020202020202020202048617264466f726b207b20616e636573746f723a204e6f6e652c206e65775f76657273696f6e3a2050726f746f636f6c56657273696f6e2831302c203029207d203d3d20616374696f6e001622533301c300d301e3754004264a66603a60166eb4c018c080dd50008a99980e99baf300530203754002980122d87a9f581c00000000000000000000000000000000000000000000000000000000ff00130023004302037540022a6603c921316578706563742070726f6365647572652e72657475726e5f61646472657373203d3d20536372697074286e756c6c323829001601c3022301f375400403446040604260420024603e60400024603c0026002002444a6660380042980103d87a800013232533301a300b003130063301f0024bd70099980280280099b8000348004c08000cc078008dd2a400064a666030002020264a666032603800426464a66602e66e1d200a3019375400426464a66603266e1d2006375a603e004264646464a66603a60166eb4c08c01054ccc074cdd780126122d87a9f581c00000000000000000000000000000000000000000000000000000000ff001533301d3370e9002180f9baa001153333330250071533301d300e301f375400e2a66604260406ea801c52601a01a01a01a01a01a153301e4901346578706563742054726561737572795769746864726177616c207b202e2e207d203d20676f7665726e616e63655f616374696f6e0016153301e491276578706563742072657475726e5f61646472657373203d3d20536372697074286e756c6c3238290016153301e4911b657870656374206465706f736974203d3d20325f3030305f30303000163022302300230210013021001301c375400202a603c603e00260346ea800804cc064008c05c004044c068004dd5980c980d180d180d180d180d180d180d180d180d180b1baa00b370e9040497a009bac3017301830183018301830183018301830183018301830183018301830143754012a666020600260246ea801854ccc050c04cdd50030a4c2c2c6e1d200030143015002375a6026002601e6ea800458c044c048008c040004c040008c038004c028dd50008a4c2a660109211856616c696461746f722072657475726e65642066616c73650013656153300649013f6578706563742054726561737572795769746864726177616c207b2067756172647261696c733a20536f6d65282e2e292c202e2e207d203d20616374696f6e001615330054918d657870656374205b0a20202020506169722850726f706f7365280a202020202020332c0a20202020202050726f706f73616c50726f636564757265207b206465706f7369742c2072657475726e5f616464726573732c20676f7665726e616e63655f616374696f6e207d2c0a20202020292c0a2020202064617461292c0a20205d203d2072656465656d657273001615330044911265787065637420566f6964203d2064617461001615330034912265787065637420536f6d652870726f63656475726529203d2070726f63656475726500161533002491256578706563742070726f6365647572652e6465706f736974203d3d20325f3030305f30303000165734ae7155ceaab9e5573eae815d0aba257481", + "hash": "83a4d8791f26b72e8f7d370eaff68f9306b1423712dd464412d1cfab" + }, + { + "title": "proposing_all.guardrails_else", + "compiledCode": "590cb00101003232323232323232323232323232253330073232323232533300c3370e900518071baa00113232323232323232323232323232323232323232323232324a264a666048602a604c6ea80044c94ccc094c04cdd6980718141baa001153330253375e601a60506ea800530122d8799f581c00000000000000000000000000000000000000000000000000000000ff00153330253375e601860506ea8005300103d87f8000149854cc0992412e6578706563742070726f6365647572652e676f7665726e616e63655f616374696f6e203d3d204e696365506f6c6c001615330264913a6578706563742070726f6365647572652e72657475726e5f61646472657373203d3d20566572696669636174696f6e4b6579286e756c6c3238290016024302a302737540020446601a02490081980419806008a401c4a66604666ebd30012dd87e9fd87a80d8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffffff00001149854cc0912401996578706563740a202020202020202020204e6577436f6e737469747574696f6e207b0a202020202020202020202020616e636573746f723a204e6f6e652c0a202020202020202020202020636f6e737469747574696f6e3a20436f6e737469747574696f6e207b2067756172647261696c733a20536f6d65286e756c6c323829207d2c0a202020202020202020207d203d3d20616374696f6e0016330073300b0104803094ccc088cdd7a6010ed87e9fd87a80d8799fd87a80ffff00001149854cc08d2401916578706563740a202020202020202020204e6577436f6e737469747574696f6e207b0a202020202020202020202020616e636573746f723a204e6f6e652c0a202020202020202020202020636f6e737469747574696f6e3a20436f6e737469747574696f6e207b2067756172647261696c733a204e6f6e65207d2c0a202020202020202020207d203d3d20616374696f6e0016330063300a00f480288c94ccc088c04cc090dd50008a99981119baf3374a900419813a6103d87a8000330274c1249fd8799f581c00000000000000000000000000000000000000000000000000000000ffff00330274c126a1d8799f581c00000000000000000000000000000000000000000000000000000000ff1901f4003302730283025375400297ae0002149854cc08d241e96578706563740a20202020202020202020436f6e737469747574696f6e616c436f6d6d6974746565207b0a202020202020202020202020616e636573746f723a204e6f6e652c0a202020202020202020202020657669637465645f6d656d626572733a205b566572696669636174696f6e4b6579286e756c6c3238295d2c0a20202020202020202020202061646465645f6d656d626572733a205b5061697228566572696669636174696f6e4b6579286e756c6c3238292c20353030295d2c0a20202020202020202020202071756f72756d2c0a202020202020202020207d203d3d20616374696f6e001615330234912865787065637420536f6d652871756f72756d29203d20726174696f6e616c2e6e657728312c203229001653330214a0298103d87a8000153330214a02601a6604c601a6604c6ea120013302637509001a5eb812f5c02601a6604c601a6604c981010100330264c10102004bd7025eb80cc014cc0240392008253330203375e98107d87c9fd87a80ff00001149854cc085240130657870656374204e6f436f6e666964656e6365207b20616e636573746f723a204e6f6e65207d203d3d20616374696f6e0016330043300800d4801894ccc07ccdc3a400860426ea800454ccc07cc040c084dd51812981318111baa0011498068068cc00ccc01c03120042533301e3375e98012fd87b9fa1d8799f581c11111111111111111111111111111111111111111111111111111111ff1a000f4240d87a80ff00001149854cc07d2401ff6578706563740a2020202020202020202054726561737572795769746864726177616c207b0a20202020202020202020202062656e656669636961726965733a205b0a202020202020202020202020202050616972280a20202020202020202020202020202020566572696669636174696f6e4b6579280a20202020202020202020202020202020202023223131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131222c0a20202020202020202020202020202020292c0a20202020202020202020202020202020315f3030305f3030302c0a202020202020202020204920202020292c0a2020202020202020202020205d2c0a20202020202020202020202067756172647261696c733a204e6f6e652c0a202020202020202020207d203d3d20616374696f6e0016330023300600b4800894ccc074cdd7a60135d87a9fd8799fd8799f5820000000000000000000000000000000000000000000000000000000000000000000ffffd8799f0b00ffff00001149854cc07924019d6578706563740a2020202020202020202048617264466f726b207b0a202020202020202020202020616e636573746f723a20536f6d6528476f7665726e616e6365416374696f6e4964286e756c6c33322c203029292c0a2020202020202020202020206e65775f76657273696f6e3a2050726f746f636f6c56657273696f6e2831312c2030292c0a202020202020202020207d203d3d20616374696f6e0016330013300500a4800094ccc070cdd7a6010dd87a9fd87a80d8799f0a00ffff00001149854cc07524015b6578706563740a2020202020202020202048617264466f726b207b20616e636573746f723a204e6f6e652c206e65775f76657273696f6e3a2050726f746f636f6c56657273696f6e2831302c203029207d203d3d20616374696f6e001622533301c300d301e3754004264a66603a60166eb4c018c080dd50008a99980e99baf300530203754002980122d87a9f581c00000000000000000000000000000000000000000000000000000000ff00130023004302037540022a6603c921316578706563742070726f6365647572652e72657475726e5f61646472657373203d3d20536372697074286e756c6c323829001601c3022301f375400403446040604260420024603e60400024603c0026002002444a6660380042980103d87a800013232533301a300b003130063301f0024bd70099980280280099b8000348004c08000cc078008dd2a400064a666030002020264a666032603800426464a66602e66e1d200a3019375400426464a66603266e1d2006375a603e004264646464a66603a60166eb4c08c01054ccc074cdd780126122d87a9f581c00000000000000000000000000000000000000000000000000000000ff001533301d3370e9002180f9baa001153333330250071533301d300e301f375400e2a66604260406ea801c52601a01a01a01a01a01a153301e4901346578706563742054726561737572795769746864726177616c207b202e2e207d203d20676f7665726e616e63655f616374696f6e0016153301e491276578706563742072657475726e5f61646472657373203d3d20536372697074286e756c6c3238290016153301e4911b657870656374206465706f736974203d3d20325f3030305f30303000163022302300230210013021001301c375400202a603c603e00260346ea800804cc064008c05c004044c068004dd5980c980d180d180d180d180d180d180d180d180d180b1baa00b370e9040497a009bac3017301830183018301830183018301830183018301830183018301830143754012a666020600260246ea801854ccc050c04cdd50030a4c2c2c6e1d200030143015002375a6026002601e6ea800458c044c048008c040004c040008c038004c028dd50008a4c2a660109211856616c696461746f722072657475726e65642066616c73650013656153300649013f6578706563742054726561737572795769746864726177616c207b2067756172647261696c733a20536f6d65282e2e292c202e2e207d203d20616374696f6e001615330054918d657870656374205b0a20202020506169722850726f706f7365280a202020202020332c0a20202020202050726f706f73616c50726f636564757265207b206465706f7369742c2072657475726e5f616464726573732c20676f7665726e616e63655f616374696f6e207d2c0a20202020292c0a2020202064617461292c0a20205d203d2072656465656d657273001615330044911265787065637420566f6964203d2064617461001615330034912265787065637420536f6d652870726f63656475726529203d2070726f63656475726500161533002491256578706563742070726f6365647572652e6465706f736974203d3d20325f3030305f30303000165734ae7155ceaab9e5573eae815d0aba257481", + "hash": "83a4d8791f26b72e8f7d370eaff68f9306b1423712dd464412d1cfab" + }, + { + "title": "proposing_pparams.guardrails_propose", + "redeemer": { + "title": "_redeemer", + "schema": { + "$ref": "#/definitions/Void" + } + }, + "compiledCode": "591a8c01010032323232323232323232323232323232322533300a3232323232533300f3370e900518089baa001132323232325333014300330163754002264646464a66603066e1d2002301a3754603c0082a666030600e60346ea80044c8c8c94ccc06ccdd7999801002a4000002980106d8799f182cff001533301b3375e66600400a9001000a6109d8799f1a00025ef5ff001533301b3375e66600400a9002000a6109d8799f1a00016000ff001533301b3375e66600400a9003000a6107d8799f194000ff001533301b3375e66600400a9004000a6107d8799f19044cff001533301b3375e66600400a9005000a6109d8799f1a001e8480ff001533301b3375e66600400a9006000a6109d8799f1a1dcd6500ff001533301b3375e66600400a9007000a6105d8799f12ff001533301b3375e66600400a9008000a6107d8799f1901f4ff001323232323253330203375e666004014900900098041981299801a400c900a25eb8054ccc080cdd79998010052402800260106604a660069003241a01e97ae0153330203375e666004014900b00098041981299801a4004900525eb8054ccc080cdd79998038052404000c980107d8799f190154ff00153330203375e66600e014901100326107d8799f1910d6ff00153330203375e66600401490121000a60103d87a8000153330203375e66600401490131299999981480081001009929998130008108991929998140008118992999814981600109806998151803001998151803000a5eb80090c0a8004c0a8008c0a0004dd600081001018041981298041981299801a4104129068079981299801a414416904044bd25eb812f5c0264a66604266ebcccc00c02d20280014c116d8799fd8799f1a00d59f801b00000002540be400ffff00153330213375e6660060169015000a6116d8799fd8799f1a03b20b801b00000004a817c800ffff00153330213375e6660100169016003a6107d8799f191388ff00153330213375e6660100169017003a6106d8799f1896ff00153330213375e6660100169018003a6105d8799f03ff00153330213375e66600601690191299999981500080f80f8992999813800810099192999814800811099192999815800812099192999816800813099192999817800814099299981818198010980a19818980680499818980a198189806803998189806802a5eb80cc0c4c03400ccc0c4c050cc0c4c034004cc0c530103d8798000330314c103d8798000330314c103d8798000330314c103d87980004bd7025eb800a4c0c4004c0c4008c0bc004c0bc008c0b4004c0b4008c0ac004c0ac008c0a4004dd600080f80fa6141d8799fd8799fd8799f18331864ffd8799fd8799f0d1819ffd8799f18351864ffffd8799f181b1832ffd8799fd8799f0b14ffd87980d87980d87980d87980ffffff00153330213375e646464646464666012022901a129981499b964901186472657020766f74696e67207468726573686f6c64733a200037326600400291010015333333030001024024132533302d00102513232533302f00102713232533303100102913232533303300102b13232533303500102d13232533303700102f13232533303900103113232533303b00103313232533303d00103513232533303f001037132533304030430021302433041301d01333041302433041301d01133041301d00f4bd7019820980e80699820980e80599820981219820a60103d879800033041301d00933041301d00733041301d00533041301d0034bd7019820980e800a5eb800e0c104004c104008c0fc004c0fc008c0f4004c0f4008c0ec004c0ec008c0e4004c0e4008c0dc004c0dc008c0d4004c0d4008c0cc004c0cc008c0c4004c0c4008c0bc004dd6000812012180080091129999199981880189919191919191980600100099b8a489012800002533302d337100069007099b80483c80400c54ccc0b4cdc4001a410004266e00cdc0241002800690068b2999818000899b8a4881035b5d2900005133714911035b5f2000333300800133714911025d2900005223330090090023006001223330090090020013758605c0046eb4c0b0004c8cdd81ba8302c001374e605a0026ea800c4c94ccc0b80044cdc52441027b7d00003133714911037b5f200032323300100100322533303100110031533303130340011323330090093030001337149101023a2000333009009303100100430330011323330090093030001337149101023a20003330090093031001300633003003303500230330013371491102207d000033756006264a66605c002266e29221025b5d00003133714911035b5f2000333300600133714911015d000032233300700700230040012233300700700200137580066e292201022c2000133005375a0040022646466e2922010268270000132333001001337006e34009200133714911012700003222533302c3371000490000800899191919980300319b8000548004cdc599b80002533302f33710004900a0a40c02903719b8b33700002a66605e66e2000520141481805206e0043370c004901019b8300148080cdc70020011bae0022222323300100100522533302e00110051533302e303100113300330300010051330043030001330020023031001223233001001003225333027301600113371491101300000315333027337100029000099b8a489012d0033002002300c00113300533708002900a19b8b3370066e1400520144818000cc0040048894ccc090cdc4801240002002266600600666e1000920143371666e00cdc2801240289030000a615bd8799fd8799fd8799f18431864ffd8799fd8799f18431864ffd8799f0305ffffd8799f0304ffd8799f0305ffd8799fd87980d8799f18431864ffd8799f18431864ffd8799f18431864ffd8799f0304ffffd8799f18431864ffffff00153330213375e666010016901b003a6105d8799f07ff00153330213375e666010016901c003a6106d8799f1892ff00153330213375e666010016901d003a6105d8799f06ff00153330213375e666010016901e003a610dd8799f1b000000174876e800ff00153330213375e666010016901f003a6109d8799f1a1dcd6500ff00153330213375e6660100169020003a6105d8799f14ff00153330213375e6660060169021001180499813198022403c900125eb805288a9981124817d6578706563740a20202020202028206e65775f706172616d6574657273207c3e207265666572656e63655f736372697074735f746965725f6665655f696e697469616c5f666163746f722029203d3d20536f6d65280a20202020202020206578706563745f726174696f6e616c2831352c2031292c0a2020202020202900161533022491546578706563740a20202020202028206e65775f706172616d6574657273207c3e2064656c65676174655f726570726573656e7461746976655f6d61785f69646c655f74696d652029203d3d20536f6d652832302900161533022491576578706563740a20202020202028206e65775f706172616d6574657273207c3e2064656c65676174655f726570726573656e7461746976655f6465706f7369742029203d3d20536f6d65283530305f3030305f3030302900161533022491576578706563740a20202020202028206e65775f706172616d6574657273207c3e20676f7665726e616e63655f70726f706f73616c5f6465706f7369742029203d3d20536f6d65283130305f3030305f3030305f3030302900161533022491446578706563742028206e65775f706172616d6574657273207c3e20676f7665726e616e63655f70726f706f73616c5f6c69666574696d652029203d3d20536f6d6528362900161533022491546578706563740a20202020202028206e65775f706172616d6574657273207c3e206d61785f636f6e737469747574696f6e616c5f636f6d6d69747465655f6d616e646174652029203d3d20536f6d65283134362900161533022491496578706563742028206e65775f706172616d6574657273207c3e206d696e5f636f6e737469747574696f6e616c5f636f6d6d69747465655f73697a652029203d3d20536f6d6528372900161533022491786578706563740a20202020202028206e65775f706172616d6574657273207c3e2064656c65676174655f726570726573656e7461746976655f766f74696e675f7468726573686f6c64732029203d3d20536f6d65280a2020202020202020647265705f7468726573686f6c647328292c0a2020202020202900161533022491736578706563740a20202020202028206e65775f706172616d6574657273207c3e207374616b655f706f6f6c5f6f70657261746f725f766f74696e675f7468726573686f6c64732029203d3d20536f6d65280a202020202020202073706f5f7468726573686f6c647328292c0a20202020202029001615330224913d6578706563742028206e65775f706172616d6574657273207c3e206d61785f636f6c6c61746572616c5f696e707574732029203d3d20536f6d65283329001615330224913f6578706563742028206e65775f706172616d6574657273207c3e20636f6c6c61746572616c5f70657263656e746167652029203d3d20536f6d65283135302900161533022491396578706563742028206e65775f706172616d6574657273207c3e206d61785f76616c75655f73697a652029203d3d20536f6d65283530303029001615330224918c6578706563740a20202020202028206e65775f706172616d6574657273207c3e206d61785f626c6f636b5f657865637574696f6e5f756e6974732029203d3d20536f6d65280a2020202020202020457865637574696f6e556e697473207b206d656d6f72793a2036323030303030302c206370753a203230303030303030303030207d2c0a2020202020202900161533022491926578706563740a20202020202028206e65775f706172616d6574657273207c3e206d61785f7472616e73616374696f6e5f657865637574696f6e5f756e6974732029203d3d20536f6d65280a2020202020202020457865637574696f6e556e697473207b206d656d6f72793a2031343030303030302c206370753a203130303030303030303030207d2c0a2020202020202900162533333302900101f01f1325333026001020132533333302b001021021021132325333029001023132533333302e001024024024132533302b302e0031300f3302c3750008660586ea00052f5c004a6eb4004090c0ac004c0ac00cdd680081098140009bac00101f01f15330214901d56578706563740a20202020202028206e65775f706172616d6574657273207c3e207363726970745f657865637574696f6e5f7072696365732029203d3d20536f6d65280a2020202020202020536372697074457865637574696f6e507269636573207b0a202020202020202020206d656d6f72793a206578706563745f726174696f6e616c283537372c20315f303030292c0a202020202020202020206370753a206578706563745f726174696f6e616c283732312c20315f3030305f303030292c0a20202020202020207d2c0a2020202020202900161533021491306578706563742028206e65775f706172616d6574657273207c3e20636f73745f6d6f64656c732029203d3d204e6f6e6500161533021491476578706563742028206e65775f706172616d6574657273207c3e206d696e5f7574786f5f6465706f7369745f636f656666696369656e742029203d3d20536f6d65283433313029001615330214913d6578706563742028206e65775f706172616d6574657273207c3e206d696e5f7374616b655f706f6f6c5f636f73742029203d3d20536f6d65283334302900161533021491546578706563740a20202020202028206e65775f706172616d6574657273207c3e2074726561737572795f657870616e73696f6e2029203d3d20536f6d65286578706563745f726174696f6e616c28312c2035292900161533021491696578706563740a20202020202028206e65775f706172616d6574657273207c3e206d6f6e65746172795f657870616e73696f6e2029203d3d20536f6d65280a20202020202020206578706563745f726174696f6e616c28332c20315f303030292c0a20202020202029001615330214916f6578706563740a20202020202028206e65775f706172616d6574657273207c3e207374616b655f706f6f6c5f706c656467655f696e666c75656e63652029203d3d20536f6d65280a20202020202020206578706563745f726174696f6e616c28332c203130292c0a2020202020202900162533333302800101a01a132533302500101b132533333302a00101c01c01c13232533302800101e132533333302d00101f01f01f132533302a302d00313253330273016302937540022605a60546ea8004080cc028010004080dd680080f981500098150019bad00101c30270013758002034034444646600200200844a66604e002298103d87a8000132323253330263370e00e6eb4c0a000c4c038cc0acc0180052f5c026600a00a0046050004605600460520024464a666040601e60446ea80044c098c08cdd500080c9980180100091299980f18068008a60103d87a80001533301e33710002900009803198119803198119ba83003002330233750600600297ae04bd7009803198119803198119ba800233023375000297ae04bd701b814800054cc0712401476578706563742028206e65775f706172616d6574657273207c3e20646573697265645f6e756d6265725f6f665f7374616b655f706f6f6c732029203d3d20536f6d6528353030290016153301c491466578706563742028206e65775f706172616d6574657273207c3e207374616b655f706f6f6c5f7265746972656d656e745f686f72697a6f6e2029203d3d20536f6d65283138290016153301c491446578706563742028206e65775f706172616d6574657273207c3e207374616b655f706f6f6c5f6465706f7369742029203d3d20536f6d65283530305f3030305f303030290016153301c491486578706563742028206e65775f706172616d6574657273207c3e207374616b655f63726564656e7469616c5f6465706f7369742029203d3d20536f6d6528325f3030305f303030290016153301c491416578706563742028206e65775f706172616d6574657273207c3e206d61785f626c6f636b5f6865616465725f73697a652029203d3d20536f6d6528315f313030290016153301c491416578706563742028206e65775f706172616d6574657273207c3e206d61785f7472616e73616374696f6e5f73697a652029203d3d20536f6d652831365f333834290016153301c491406578706563742028206e65775f706172616d6574657273207c3e206d61785f626c6f636b5f626f64795f73697a652029203d3d20536f6d652839305f313132290016153301c4913e6578706563742028206e65775f706172616d6574657273207c3e206d696e5f6665655f636f6e7374616e742029203d3d20536f6d65283135355f333831290016153301c4913c6578706563742028206e65775f706172616d6574657273207c3e206d696e5f6665655f636f656666696369656e742029203d3d20536f6d65283434290016253333330230010160160161375a00202c444646600200200844a666044002298103d87a8000132323253330213370e00e6eb4c08c00c4c024cc098dd41803000a5eb804cc014014008c08c008c098008c090004dd2a4000020020603a603c0046eacc070004c070004c05cdd5000806180c980d180d180b1baa3019301a004533301230013014375400a2a66602c602a6ea80145261616370e90001bad3016001301237540022c6028602a004602600260260046022002601a6ea8004526153300b49011856616c696461746f722072657475726e65642066616c7365001365615330094901b96578706563742050726f706f73616c50726f636564757265207b0a202020202020676f7665726e616e63655f616374696f6e3a2050726f746f636f6c506172616d6574657273207b0a2020202020202020616e636573746f723a204e6f6e652c0a202020202020202067756172647261696c733a20536f6d65282e2e292c0a20202020202020206e65775f706172616d65746572732c0a2020202020207d2c0a2020202020202e2e0a202020207d203d2070726f706f73616c001615330084913565787065637420536f6d65287229203d20726174696f6e616c2e6e6577286e756d657261746f722c2064656e6f6d696e61746f72290016153300749132657870656374205b6e756d657261746f722c2064656e6f6d696e61746f725d3a204c6973743c496e743e203d20706172616d001615330064911965787065637420706172616d3a20496e74203d20706172616d00161533005491ff657870656374205b0a202020206d6f74696f6e5f6f665f6e6f5f636f6e666964656e63652c0a20202020636f6e737469747574696f6e616c5f636f6d6d69747465652c0a20202020636f6e737469747574696f6e616c5f636f6d6d69747465655f756e6465725f6e6f5f636f6e666964656e63652c0a20202020636f6e737469747574696f6e2c0a20202020686172645f666f726b2c0a2020202070726f746f636f6c5f706172616d65746572735f6e6574776f726b5f67726f75702c0a2020202070726f746f636f6c5f706172616d65746572735f65636f6e6f6d69635f67726f75702c0a2020202070726f746f636f6c5f706172616d65746572735f746a6563686e6963616c5f67726f75702c0a2020202070726f746f636f6c5f706172616d65746572735f676f7665726e616e63655f67726f75702c0a2020202074726561737572795f7769746864726177616c2c0a20205d3a204c6973743c446174613e203d20706172616d00161533004491c4657870656374205b0a202020206d6f74696f6e5f6f665f6e6f5f636f6e666964656e63652c0a20202020636f6e737469747574696f6e616c5f636f6d6d69747465652c0a20202020636f6e737469747574696f6e616c5f636f6d6d69747465655f756e6465725f6e6f5f636f6e666964656e63652c0a20202020686172645f666f726b2c0a2020202070726f746f636f6c5f706172616d65746572735f73656375726974795f67726f75702c0a20205d3a204c6973743c446174613e203d20706172616d0016153300349127657870656374205b6d656d6f72792c206370755d3a204c6973743c496e743e203d20706172616d0016153300249128657870656374205b6d656d6f72792c206370755d3a204c6973743c446174613e203d20706172616d00165734ae7155ceaab9e5573eae815d0aba257481", + "hash": "628d246855dda6aef139c7a1bec7d37ff1db213bfd28d3ae9fd52300" + }, + { + "title": "proposing_pparams.guardrails_else", + "compiledCode": "591a8c01010032323232323232323232323232323232322533300a3232323232533300f3370e900518089baa001132323232325333014300330163754002264646464a66603066e1d2002301a3754603c0082a666030600e60346ea80044c8c8c94ccc06ccdd7999801002a4000002980106d8799f182cff001533301b3375e66600400a9001000a6109d8799f1a00025ef5ff001533301b3375e66600400a9002000a6109d8799f1a00016000ff001533301b3375e66600400a9003000a6107d8799f194000ff001533301b3375e66600400a9004000a6107d8799f19044cff001533301b3375e66600400a9005000a6109d8799f1a001e8480ff001533301b3375e66600400a9006000a6109d8799f1a1dcd6500ff001533301b3375e66600400a9007000a6105d8799f12ff001533301b3375e66600400a9008000a6107d8799f1901f4ff001323232323253330203375e666004014900900098041981299801a400c900a25eb8054ccc080cdd79998010052402800260106604a660069003241a01e97ae0153330203375e666004014900b00098041981299801a4004900525eb8054ccc080cdd79998038052404000c980107d8799f190154ff00153330203375e66600e014901100326107d8799f1910d6ff00153330203375e66600401490121000a60103d87a8000153330203375e66600401490131299999981480081001009929998130008108991929998140008118992999814981600109806998151803001998151803000a5eb80090c0a8004c0a8008c0a0004dd600081001018041981298041981299801a4104129068079981299801a414416904044bd25eb812f5c0264a66604266ebcccc00c02d20280014c116d8799fd8799f1a00d59f801b00000002540be400ffff00153330213375e6660060169015000a6116d8799fd8799f1a03b20b801b00000004a817c800ffff00153330213375e6660100169016003a6107d8799f191388ff00153330213375e6660100169017003a6106d8799f1896ff00153330213375e6660100169018003a6105d8799f03ff00153330213375e66600601690191299999981500080f80f8992999813800810099192999814800811099192999815800812099192999816800813099192999817800814099299981818198010980a19818980680499818980a198189806803998189806802a5eb80cc0c4c03400ccc0c4c050cc0c4c034004cc0c530103d8798000330314c103d8798000330314c103d8798000330314c103d87980004bd7025eb800a4c0c4004c0c4008c0bc004c0bc008c0b4004c0b4008c0ac004c0ac008c0a4004dd600080f80fa6141d8799fd8799fd8799f18331864ffd8799fd8799f0d1819ffd8799f18351864ffffd8799f181b1832ffd8799fd8799f0b14ffd87980d87980d87980d87980ffffff00153330213375e646464646464666012022901a129981499b964901186472657020766f74696e67207468726573686f6c64733a200037326600400291010015333333030001024024132533302d00102513232533302f00102713232533303100102913232533303300102b13232533303500102d13232533303700102f13232533303900103113232533303b00103313232533303d00103513232533303f001037132533304030430021302433041301d01333041302433041301d01133041301d00f4bd7019820980e80699820980e80599820981219820a60103d879800033041301d00933041301d00733041301d00533041301d0034bd7019820980e800a5eb800e0c104004c104008c0fc004c0fc008c0f4004c0f4008c0ec004c0ec008c0e4004c0e4008c0dc004c0dc008c0d4004c0d4008c0cc004c0cc008c0c4004c0c4008c0bc004dd6000812012180080091129999199981880189919191919191980600100099b8a489012800002533302d337100069007099b80483c80400c54ccc0b4cdc4001a410004266e00cdc0241002800690068b2999818000899b8a4881035b5d2900005133714911035b5f2000333300800133714911025d2900005223330090090023006001223330090090020013758605c0046eb4c0b0004c8cdd81ba8302c001374e605a0026ea800c4c94ccc0b80044cdc52441027b7d00003133714911037b5f200032323300100100322533303100110031533303130340011323330090093030001337149101023a2000333009009303100100430330011323330090093030001337149101023a20003330090093031001300633003003303500230330013371491102207d000033756006264a66605c002266e29221025b5d00003133714911035b5f2000333300600133714911015d000032233300700700230040012233300700700200137580066e292201022c2000133005375a0040022646466e2922010268270000132333001001337006e34009200133714911012700003222533302c3371000490000800899191919980300319b8000548004cdc599b80002533302f33710004900a0a40c02903719b8b33700002a66605e66e2000520141481805206e0043370c004901019b8300148080cdc70020011bae0022222323300100100522533302e00110051533302e303100113300330300010051330043030001330020023031001223233001001003225333027301600113371491101300000315333027337100029000099b8a489012d0033002002300c00113300533708002900a19b8b3370066e1400520144818000cc0040048894ccc090cdc4801240002002266600600666e1000920143371666e00cdc2801240289030000a615bd8799fd8799fd8799f18431864ffd8799fd8799f18431864ffd8799f0305ffffd8799f0304ffd8799f0305ffd8799fd87980d8799f18431864ffd8799f18431864ffd8799f18431864ffd8799f0304ffffd8799f18431864ffffff00153330213375e666010016901b003a6105d8799f07ff00153330213375e666010016901c003a6106d8799f1892ff00153330213375e666010016901d003a6105d8799f06ff00153330213375e666010016901e003a610dd8799f1b000000174876e800ff00153330213375e666010016901f003a6109d8799f1a1dcd6500ff00153330213375e6660100169020003a6105d8799f14ff00153330213375e6660060169021001180499813198022403c900125eb805288a9981124817d6578706563740a20202020202028206e65775f706172616d6574657273207c3e207265666572656e63655f736372697074735f746965725f6665655f696e697469616c5f666163746f722029203d3d20536f6d65280a20202020202020206578706563745f726174696f6e616c2831352c2031292c0a2020202020202900161533022491546578706563740a20202020202028206e65775f706172616d6574657273207c3e2064656c65676174655f726570726573656e7461746976655f6d61785f69646c655f74696d652029203d3d20536f6d652832302900161533022491576578706563740a20202020202028206e65775f706172616d6574657273207c3e2064656c65676174655f726570726573656e7461746976655f6465706f7369742029203d3d20536f6d65283530305f3030305f3030302900161533022491576578706563740a20202020202028206e65775f706172616d6574657273207c3e20676f7665726e616e63655f70726f706f73616c5f6465706f7369742029203d3d20536f6d65283130305f3030305f3030305f3030302900161533022491446578706563742028206e65775f706172616d6574657273207c3e20676f7665726e616e63655f70726f706f73616c5f6c69666574696d652029203d3d20536f6d6528362900161533022491546578706563740a20202020202028206e65775f706172616d6574657273207c3e206d61785f636f6e737469747574696f6e616c5f636f6d6d69747465655f6d616e646174652029203d3d20536f6d65283134362900161533022491496578706563742028206e65775f706172616d6574657273207c3e206d696e5f636f6e737469747574696f6e616c5f636f6d6d69747465655f73697a652029203d3d20536f6d6528372900161533022491786578706563740a20202020202028206e65775f706172616d6574657273207c3e2064656c65676174655f726570726573656e7461746976655f766f74696e675f7468726573686f6c64732029203d3d20536f6d65280a2020202020202020647265705f7468726573686f6c647328292c0a2020202020202900161533022491736578706563740a20202020202028206e65775f706172616d6574657273207c3e207374616b655f706f6f6c5f6f70657261746f725f766f74696e675f7468726573686f6c64732029203d3d20536f6d65280a202020202020202073706f5f7468726573686f6c647328292c0a20202020202029001615330224913d6578706563742028206e65775f706172616d6574657273207c3e206d61785f636f6c6c61746572616c5f696e707574732029203d3d20536f6d65283329001615330224913f6578706563742028206e65775f706172616d6574657273207c3e20636f6c6c61746572616c5f70657263656e746167652029203d3d20536f6d65283135302900161533022491396578706563742028206e65775f706172616d6574657273207c3e206d61785f76616c75655f73697a652029203d3d20536f6d65283530303029001615330224918c6578706563740a20202020202028206e65775f706172616d6574657273207c3e206d61785f626c6f636b5f657865637574696f6e5f756e6974732029203d3d20536f6d65280a2020202020202020457865637574696f6e556e697473207b206d656d6f72793a2036323030303030302c206370753a203230303030303030303030207d2c0a2020202020202900161533022491926578706563740a20202020202028206e65775f706172616d6574657273207c3e206d61785f7472616e73616374696f6e5f657865637574696f6e5f756e6974732029203d3d20536f6d65280a2020202020202020457865637574696f6e556e697473207b206d656d6f72793a2031343030303030302c206370753a203130303030303030303030207d2c0a2020202020202900162533333302900101f01f1325333026001020132533333302b001021021021132325333029001023132533333302e001024024024132533302b302e0031300f3302c3750008660586ea00052f5c004a6eb4004090c0ac004c0ac00cdd680081098140009bac00101f01f15330214901d56578706563740a20202020202028206e65775f706172616d6574657273207c3e207363726970745f657865637574696f6e5f7072696365732029203d3d20536f6d65280a2020202020202020536372697074457865637574696f6e507269636573207b0a202020202020202020206d656d6f72793a206578706563745f726174696f6e616c283537372c20315f303030292c0a202020202020202020206370753a206578706563745f726174696f6e616c283732312c20315f3030305f303030292c0a20202020202020207d2c0a2020202020202900161533021491306578706563742028206e65775f706172616d6574657273207c3e20636f73745f6d6f64656c732029203d3d204e6f6e6500161533021491476578706563742028206e65775f706172616d6574657273207c3e206d696e5f7574786f5f6465706f7369745f636f656666696369656e742029203d3d20536f6d65283433313029001615330214913d6578706563742028206e65775f706172616d6574657273207c3e206d696e5f7374616b655f706f6f6c5f636f73742029203d3d20536f6d65283334302900161533021491546578706563740a20202020202028206e65775f706172616d6574657273207c3e2074726561737572795f657870616e73696f6e2029203d3d20536f6d65286578706563745f726174696f6e616c28312c2035292900161533021491696578706563740a20202020202028206e65775f706172616d6574657273207c3e206d6f6e65746172795f657870616e73696f6e2029203d3d20536f6d65280a20202020202020206578706563745f726174696f6e616c28332c20315f303030292c0a20202020202029001615330214916f6578706563740a20202020202028206e65775f706172616d6574657273207c3e207374616b655f706f6f6c5f706c656467655f696e666c75656e63652029203d3d20536f6d65280a20202020202020206578706563745f726174696f6e616c28332c203130292c0a2020202020202900162533333302800101a01a132533302500101b132533333302a00101c01c01c13232533302800101e132533333302d00101f01f01f132533302a302d00313253330273016302937540022605a60546ea8004080cc028010004080dd680080f981500098150019bad00101c30270013758002034034444646600200200844a66604e002298103d87a8000132323253330263370e00e6eb4c0a000c4c038cc0acc0180052f5c026600a00a0046050004605600460520024464a666040601e60446ea80044c098c08cdd500080c9980180100091299980f18068008a60103d87a80001533301e33710002900009803198119803198119ba83003002330233750600600297ae04bd7009803198119803198119ba800233023375000297ae04bd701b814800054cc0712401476578706563742028206e65775f706172616d6574657273207c3e20646573697265645f6e756d6265725f6f665f7374616b655f706f6f6c732029203d3d20536f6d6528353030290016153301c491466578706563742028206e65775f706172616d6574657273207c3e207374616b655f706f6f6c5f7265746972656d656e745f686f72697a6f6e2029203d3d20536f6d65283138290016153301c491446578706563742028206e65775f706172616d6574657273207c3e207374616b655f706f6f6c5f6465706f7369742029203d3d20536f6d65283530305f3030305f303030290016153301c491486578706563742028206e65775f706172616d6574657273207c3e207374616b655f63726564656e7469616c5f6465706f7369742029203d3d20536f6d6528325f3030305f303030290016153301c491416578706563742028206e65775f706172616d6574657273207c3e206d61785f626c6f636b5f6865616465725f73697a652029203d3d20536f6d6528315f313030290016153301c491416578706563742028206e65775f706172616d6574657273207c3e206d61785f7472616e73616374696f6e5f73697a652029203d3d20536f6d652831365f333834290016153301c491406578706563742028206e65775f706172616d6574657273207c3e206d61785f626c6f636b5f626f64795f73697a652029203d3d20536f6d652839305f313132290016153301c4913e6578706563742028206e65775f706172616d6574657273207c3e206d696e5f6665655f636f6e7374616e742029203d3d20536f6d65283135355f333831290016153301c4913c6578706563742028206e65775f706172616d6574657273207c3e206d696e5f6665655f636f656666696369656e742029203d3d20536f6d65283434290016253333330230010160160161375a00202c444646600200200844a666044002298103d87a8000132323253330213370e00e6eb4c08c00c4c024cc098dd41803000a5eb804cc014014008c08c008c098008c090004dd2a4000020020603a603c0046eacc070004c070004c05cdd5000806180c980d180d180b1baa3019301a004533301230013014375400a2a66602c602a6ea80145261616370e90001bad3016001301237540022c6028602a004602600260260046022002601a6ea8004526153300b49011856616c696461746f722072657475726e65642066616c7365001365615330094901b96578706563742050726f706f73616c50726f636564757265207b0a202020202020676f7665726e616e63655f616374696f6e3a2050726f746f636f6c506172616d6574657273207b0a2020202020202020616e636573746f723a204e6f6e652c0a202020202020202067756172647261696c733a20536f6d65282e2e292c0a20202020202020206e65775f706172616d65746572732c0a2020202020207d2c0a2020202020202e2e0a202020207d203d2070726f706f73616c001615330084913565787065637420536f6d65287229203d20726174696f6e616c2e6e6577286e756d657261746f722c2064656e6f6d696e61746f72290016153300749132657870656374205b6e756d657261746f722c2064656e6f6d696e61746f725d3a204c6973743c496e743e203d20706172616d001615330064911965787065637420706172616d3a20496e74203d20706172616d00161533005491ff657870656374205b0a202020206d6f74696f6e5f6f665f6e6f5f636f6e666964656e63652c0a20202020636f6e737469747574696f6e616c5f636f6d6d69747465652c0a20202020636f6e737469747574696f6e616c5f636f6d6d69747465655f756e6465725f6e6f5f636f6e666964656e63652c0a20202020636f6e737469747574696f6e2c0a20202020686172645f666f726b2c0a2020202070726f746f636f6c5f706172616d65746572735f6e6574776f726b5f67726f75702c0a2020202070726f746f636f6c5f706172616d65746572735f65636f6e6f6d69635f67726f75702c0a2020202070726f746f636f6c5f706172616d65746572735f746a6563686e6963616c5f67726f75702c0a2020202070726f746f636f6c5f706172616d65746572735f676f7665726e616e63655f67726f75702c0a2020202074726561737572795f7769746864726177616c2c0a20205d3a204c6973743c446174613e203d20706172616d00161533004491c4657870656374205b0a202020206d6f74696f6e5f6f665f6e6f5f636f6e666964656e63652c0a20202020636f6e737469747574696f6e616c5f636f6d6d69747465652c0a20202020636f6e737469747574696f6e616c5f636f6d6d69747465655f756e6465725f6e6f5f636f6e666964656e63652c0a20202020686172645f666f726b2c0a2020202070726f746f636f6c5f706172616d65746572735f73656375726974795f67726f75702c0a20205d3a204c6973743c446174613e203d20706172616d0016153300349127657870656374205b6d656d6f72792c206370755d3a204c6973743c496e743e203d20706172616d0016153300249128657870656374205b6d656d6f72792c206370755d3a204c6973743c446174613e203d20706172616d00165734ae7155ceaab9e5573eae815d0aba257481", + "hash": "628d246855dda6aef139c7a1bec7d37ff1db213bfd28d3ae9fd52300" }, { "title": "simple_spend.simple_spend_spend", @@ -65,6 +113,22 @@ "compiledCode": "59090a0101003232323232323232323225333004323232323253323300a3001300c37540042646464646464a6660286eb0c058c05cc05cc04cdd50058a99980a1bac30163017301337540162a6660286eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50058a99980819b8748150dd6980b180b980b980b98099baa00b13253330113375e980101a0003017301830183018301830183018301830183018301830143754018294454cc04924012e657870656374205b5d203d3d20646963742e746f5f7061697273287472616e73616374696f6e2e646174756d7329001653330103375e98012fa1d87a9fd8799f5820000000000000000000000000000000000000000000000000000000000000000000ffffd87980003016301730173017301730173017301730173017301337540162930a99808a49ff6578706563740a202020205b0a20202020202050616972280a20202020202020205370656e64280a202020202020202020204f75747075745265666572656e6365207b0a2020202020202020202020207472616e73616374696f6e5f69643a20232230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030222c0a2020202020202020202020206f75747075745f696e6465783a20302c0a202020202020202020207d2c0a2020202020202020292c0a2020202020202020766f696428292c0a202020202020292c0a202020205d203d3d207265640665656d657273001615330114911c657870656374203432203d3d207472616e73616374696f6e2e6665650016153301149129657870656374205b5d203d207472616e73616374696f6e2e65787472615f7369676e61746f726965730016153301149128657870656374205b5d203d207472616e73616374696f6e2e7265666572656e63655f696e70757473001615330114911f657870656374205b5d203d207472616e73616374696f6e2e6f757470757473001632533301400100e1325333015301800213232323253330153370e90001bad301b301c0021323232323232533301b3370e9002180e9baa30210021533301b3012301d37540022a66603666e3c01d221200000000000000000000000000000000000000000000000000000000000000000001533301b3375e6e9800cdd3299980da5014bd6f7b6300991919800800a5eb7bdb180894ccc0880044cc08ccdd82601014000374c00697adef6c60132323232533302233720910100002133027337609801014000374c00e00a2a66604466e3d22100002133027337609801014000374c00e00626604e66ec0dd48011ba600133006006003375660480066eb8c088008c098008c090004c8cc0040052f5bded8c044a66604200226604466ec130010140004c01051a3b9aca00004bd6f7b630099191919299981099b90489000021330263376098010140004c01051a3b9aca0000005153330213371e9101000021330263376098010140004c01051a3b9aca0000003133026337606ea4008dd4000998030030019bad3023003375c6042004604a004604600226464a66603a6028603e6ea8c08c00854ccc074c050c07cdd50008a4c03803860446046002603c6ea801454cc07124013f657870656374207265736f6c7665645f696e7075745f76616c7565203d3d206173736574732e66726f6d5f6c6f76656c6163652831303030303030303030290016153301c491606578706563740a202020207472616e73616374696f6e5f6964203d3d202322303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030302200160190193020302100130200023756603c002603c004603800260306ea800c04cdd7180d000980b1baa3019002301830190013014375400201e602c0026eb0c054c048dd5005299980719baf4c0127d8799f5820000000000000000000000000000000000000000000000000000000000000000000ff003014004149854cc03d24019c6578706563740a202020204f75747075745265666572656e6365207b0a2020202020207472616e73616374696f6e5f69643a20232230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030222c0a2020202020206f75747075745f696e6465783a20302c0a202020207d203d3d20696e666f0016533300d3371e910120c6fbd346681a8f8337f6b3e51e6ec973f1509367eabc3a44c849af58a1d8471b00375c60266028602860286028602860286028602860286028602860206ea8020526153300e491546578706563740a2020202023226336666264333436363831613866383333376636623365353165366563393733663135303933363765616263336134346338343961663538613164383437316222203d3d2069640016533300c3370e900018071baa00515333010300f375400a2930b0b1808980900098069baa002370e90010b1807180780118068009806801180580098039baa001149854cc0152411856616c696461746f722072657475726e65642066616c7365001365615330034901ff657870656374205b0a20202020496e707574207b0a2020202020206f75747075745f7265666572656e63653a204f75747075745265666572656e6365207b207472616e73616374696f6e5f69642c206f75747075745f696e6465783a2030207d2c0a2020202020206f75747075743a204f7574707574207b0a2020202020202020616464726573732c0a202020202020202076616c75653a207265736f6c7665645f696e7075745f76616c75652c0a2020202020202020646174756d3a20496e6c696e65446174756d285f292c0a20202020202020207265666572656e63655f7363726970743a204e6f6e652c0a2020202020207d2c0a202020207d2c0a200b205d203d20696e7075747300161533002491566578706563742041646472657373207b207061796d656e745f63726564656e7469616c3a20536372697074285f292c207374616b655f63726564656e7469616c3a204e6f6e65207d203d0a202020206164647265737300165734ae7155ceaab9e5573eae815d0aba21", "hash": "a1061d09b0b83996b07d2f5496ee57c308160bc39115b26058831583" }, + { + "title": "voting.purposes_vote", + "redeemer": { + "title": "redeemer", + "schema": { + "$ref": "#/definitions/Data" + } + }, + "compiledCode": "590c50010100323232323232323232323232253330053232323232533300a3370e900418061baa0011323232323232323253330123006301437540022646464a66602a6012602e6ea800854cc8cc058c004c060dd5180e180c9baa0031533301a002013132533301b301e0031323232533301a3005375a604060420042a666034600a60386ea800c54ccc068cdc7800a45209999999999999999999999999999999999999999999999999999999999999999001533301a3375e98158d8799f9fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffffa1d8799f582099999999999999999999999999999999999999999999999999999999999999991898ffd87980ffff003300a00c480084c94ccc06cc03cc074dd50008991919299980f180498101baa0021533301e300930203754604860426ea800854ccc08800407054ccc078cdd7a61abd8799f9fd87a9fd8799f581c00000000000000000000000000000000000000000000000000000000ffffa3d8799f5820777777777777777777777777777777777777777777777777777777777777777702ffd87b80d8799f5820888888888888888888888888888888888888888888888888888888888888888801ffd87b80d8799f5820999999999999999999999999999999999999999999999999999999999999999900ffd87b80ffff003300e010480184c94ccc07cc04cc084dd50008991919299981119b8748010c090dd500109929998138010110a99981199b8f0014891c000000000000000000000000000000000000000000000000000000000014a22a660489211865787065637420706f6f6c5f6964203d3d206f6e6c7930730016375c6050604a6ea8008084dd5981200118110009919bb03026001302630270013758604a60446ea8004078cc0380412008153301f491ff6578706563740a202020202020536f6d65280a202020202020202050616972280a2020202020202020202044656c6567617465526570726573656e74617469766528566572696669636174696f6e4b6579286f6e6c79307329292c0a202020202020202020205b0a20202020202020202020202050616972280a2020202020202020202020202020476f7665726e616e6365416374696f6e4964207b207472616e73616374696f6e3a206f6e6c7937732c2070726f706f73616c5f70726f6365647572653a2032207d2c0a20202020202020202020202020204162737461696e2c0a202020202020202020202020292c0a2020202020202020202020205061ff6972280a2020202020202020202020202020476f7665726e616e6365416374696f6e4964207b207472616e73616374696f6e3a206f6e6c7938732c2070726f706f73616c5f70726f6365647572653a2031207d2c0a20202020202020202020202020204162737461696e2c0a202020202020202020202020292c0a20202020202020202020202050616972280a2020202020202020202020202020476f7665726e616e6365416374696f6e4964207b207472616e73616374696f6e3a206f6e6c7939732c2070726f706f73616c5f70726f6365647572653a2030207d2c0a20202020202020202020202020204162737461696e2c0a20202020202020202020392020292c0a202020202020202020205d2c0a2020202020202020292c0a20202020202029203d3d206c6973742e617428766f7465732c203329001601c01c37566040004603c0026466ec0c088004c088c08c004dd61810980f1baa0010193300a00c4801054cc06d2401ff6578706563740a202020202020536f6d65280a202020202020202050616972280a20202020202020202020436f6e737469747574696f6e616c436f6d6d69747465654d656d62657228566572696669636174696f6e4b6579286f6e6c79307329292c0a202020202020202020205b0a20202020202020202020202050616972280a2020202020202020202020202020476f7665726e616e6365416374696f6e4964207b0a202020202020202020202020202020207472616e73616374696f6e3a206f6e6c7939732c0a2020202020202020202020202020202070726f706f73616c5f70726f6365647572653a203135322c0a2020202020202020202020202059207d2c0a20202020202020202020202020204e6f2c0a202020202020202020202020292c0a202020202020202020205d2c0a2020202020202020292c0a20202020202029203d3d206c6973742e617428766f7465732c2031290016153301b4911c657870656374207472616e73616374696f6e203d3d206f6e6c7939730016017017375c603e00260366ea8c068008c068004050c070008dc3a40040240246eacc05c008c054004c8cdd8180c800980c980d0009bac30183015375400201e6600200690001800800911299980b0010a60103d87a8000132325333014300800313374a90001980c9ba73301930160023301930170024bd7025eb804ccc014014004c02400cc06800cc060008dd5980a180a980a980a980a980a980a980a980a980a980a980a980a98089baa008323232323232533301332533333301c00c15333014300830163754018264a666032002004264a66666603c002006006006264a666036603c0062a66602e66e1d2054001153301837326600a01e9110014a20080086eb400400cc06c004c05cdd5006000800800800800899299999980e0060a99980a1804180b1baa00c15333018301737540182a6602a6e64cc009300103d879800048810014a20020020020020020022940526153301449010f6578706563742069735f76616c69640016300100122253332333301d00313232323232323300c0020013371491010128000025333019337100069007099b80483c80400c54ccc064cdc4001a410004266e00cdc0241002800690068b299980e000899b8a4881035b5d2900005133714911035b5f2000333300800133714911025d290000522333009009002300600122333009009002001375860340046eb4c060004c8cdd81ba83018001374e60320026ea800c4c94ccc0680044cdc52441027b7d00003133714911037b5f200032323300100100322533301d00110031533301d3020001132333009009301c001337149101023a2000333009009301d001004301f001132333009009301c001337149101023a2000333009009301d0013006330030033021002301f0013371491102207d000033756006264a666034002266e29221025b5d00003133714911035b5f2000333300600133714911015d000032233300700700230040012233300700700200137580066e292201022c2000133005375a0040022646466e2922010268270000132333001001300b371a00466e292201012700003222533301833710004900008008991919199803003180800299b8b33700004a66603666e2000920141481805206e3371666e000054ccc06ccdc4000a4028290300a40dc00866e18009202033706002901019b8e004002375c0044444646600200200a44a666034002200a2a666034603a002266006603800200a266008603800266004004603a00244646600200200644a666026600e002266e29220101300000315333013337100029000099b8a489012d003300200233702900000089980299b8400148050cdc599b803370a002900a240c00066002002444a66602066e2400920001001133300300333708004900a19b8b3370066e14009201448180004dc3a40006e0120013010300d37540022c601e6020004601c002601c004601800260106ea800452615330064911856616c696461746f722072657475726e65642066616c7365001365615330044901ab65787065637420536f6d65280a2020202020205061697228436f6e737469747574696f6e616c436f6d6d69747465654d656d62657228536372697074282e2e29292c0a2020202020205b5061697228476f7665726e616e6365416374696f6e4964207b207472616e73616374696f6e2c2070726f706f73616c5f70726f6365647572653a2031207d2c20596573295d292c0a2020202029203d206c6973742e617428766f7465732c203029001615330034915865787065637420536f6d6528506169722844656c6567617465526570726573656e74617469766528536372697074282e2e29292c205b5f2c202e2e5d2929203d0a2020202020206c6973742e617428766f7465732c203229001615330024914265787065637420536f6d652850616972285374616b65506f6f6c28706f6f6c5f6964292c205b5f2c202e2e5d2929203d206c6973742e617428766f7465732c20342900165734ae7155ceaab9e5573eae815d0aba257481", + "hash": "298b027639e9340c10c241a8193ab099a46840548c61930c32398a7c" + }, + { + "title": "voting.purposes_else", + "compiledCode": "590c50010100323232323232323232323232253330053232323232533300a3370e900418061baa0011323232323232323253330123006301437540022646464a66602a6012602e6ea800854cc8cc058c004c060dd5180e180c9baa0031533301a002013132533301b301e0031323232533301a3005375a604060420042a666034600a60386ea800c54ccc068cdc7800a45209999999999999999999999999999999999999999999999999999999999999999001533301a3375e98158d8799f9fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffffa1d8799f582099999999999999999999999999999999999999999999999999999999999999991898ffd87980ffff003300a00c480084c94ccc06cc03cc074dd50008991919299980f180498101baa0021533301e300930203754604860426ea800854ccc08800407054ccc078cdd7a61abd8799f9fd87a9fd8799f581c00000000000000000000000000000000000000000000000000000000ffffa3d8799f5820777777777777777777777777777777777777777777777777777777777777777702ffd87b80d8799f5820888888888888888888888888888888888888888888888888888888888888888801ffd87b80d8799f5820999999999999999999999999999999999999999999999999999999999999999900ffd87b80ffff003300e010480184c94ccc07cc04cc084dd50008991919299981119b8748010c090dd500109929998138010110a99981199b8f0014891c000000000000000000000000000000000000000000000000000000000014a22a660489211865787065637420706f6f6c5f6964203d3d206f6e6c7930730016375c6050604a6ea8008084dd5981200118110009919bb03026001302630270013758604a60446ea8004078cc0380412008153301f491ff6578706563740a202020202020536f6d65280a202020202020202050616972280a2020202020202020202044656c6567617465526570726573656e74617469766528566572696669636174696f6e4b6579286f6e6c79307329292c0a202020202020202020205b0a20202020202020202020202050616972280a2020202020202020202020202020476f7665726e616e6365416374696f6e4964207b207472616e73616374696f6e3a206f6e6c7937732c2070726f706f73616c5f70726f6365647572653a2032207d2c0a20202020202020202020202020204162737461696e2c0a202020202020202020202020292c0a2020202020202020202020205061ff6972280a2020202020202020202020202020476f7665726e616e6365416374696f6e4964207b207472616e73616374696f6e3a206f6e6c7938732c2070726f706f73616c5f70726f6365647572653a2031207d2c0a20202020202020202020202020204162737461696e2c0a202020202020202020202020292c0a20202020202020202020202050616972280a2020202020202020202020202020476f7665726e616e6365416374696f6e4964207b207472616e73616374696f6e3a206f6e6c7939732c2070726f706f73616c5f70726f6365647572653a2030207d2c0a20202020202020202020202020204162737461696e2c0a20202020202020202020392020292c0a202020202020202020205d2c0a2020202020202020292c0a20202020202029203d3d206c6973742e617428766f7465732c203329001601c01c37566040004603c0026466ec0c088004c088c08c004dd61810980f1baa0010193300a00c4801054cc06d2401ff6578706563740a202020202020536f6d65280a202020202020202050616972280a20202020202020202020436f6e737469747574696f6e616c436f6d6d69747465654d656d62657228566572696669636174696f6e4b6579286f6e6c79307329292c0a202020202020202020205b0a20202020202020202020202050616972280a2020202020202020202020202020476f7665726e616e6365416374696f6e4964207b0a202020202020202020202020202020207472616e73616374696f6e3a206f6e6c7939732c0a2020202020202020202020202020202070726f706f73616c5f70726f6365647572653a203135322c0a2020202020202020202020202059207d2c0a20202020202020202020202020204e6f2c0a202020202020202020202020292c0a202020202020202020205d2c0a2020202020202020292c0a20202020202029203d3d206c6973742e617428766f7465732c2031290016153301b4911c657870656374207472616e73616374696f6e203d3d206f6e6c7939730016017017375c603e00260366ea8c068008c068004050c070008dc3a40040240246eacc05c008c054004c8cdd8180c800980c980d0009bac30183015375400201e6600200690001800800911299980b0010a60103d87a8000132325333014300800313374a90001980c9ba73301930160023301930170024bd7025eb804ccc014014004c02400cc06800cc060008dd5980a180a980a980a980a980a980a980a980a980a980a980a980a98089baa008323232323232533301332533333301c00c15333014300830163754018264a666032002004264a66666603c002006006006264a666036603c0062a66602e66e1d2054001153301837326600a01e9110014a20080086eb400400cc06c004c05cdd5006000800800800800899299999980e0060a99980a1804180b1baa00c15333018301737540182a6602a6e64cc009300103d879800048810014a20020020020020020022940526153301449010f6578706563742069735f76616c69640016300100122253332333301d00313232323232323300c0020013371491010128000025333019337100069007099b80483c80400c54ccc064cdc4001a410004266e00cdc0241002800690068b299980e000899b8a4881035b5d2900005133714911035b5f2000333300800133714911025d290000522333009009002300600122333009009002001375860340046eb4c060004c8cdd81ba83018001374e60320026ea800c4c94ccc0680044cdc52441027b7d00003133714911037b5f200032323300100100322533301d00110031533301d3020001132333009009301c001337149101023a2000333009009301d001004301f001132333009009301c001337149101023a2000333009009301d0013006330030033021002301f0013371491102207d000033756006264a666034002266e29221025b5d00003133714911035b5f2000333300600133714911015d000032233300700700230040012233300700700200137580066e292201022c2000133005375a0040022646466e2922010268270000132333001001300b371a00466e292201012700003222533301833710004900008008991919199803003180800299b8b33700004a66603666e2000920141481805206e3371666e000054ccc06ccdc4000a4028290300a40dc00866e18009202033706002901019b8e004002375c0044444646600200200a44a666034002200a2a666034603a002266006603800200a266008603800266004004603a00244646600200200644a666026600e002266e29220101300000315333013337100029000099b8a489012d003300200233702900000089980299b8400148050cdc599b803370a002900a240c00066002002444a66602066e2400920001001133300300333708004900a19b8b3370066e14009201448180004dc3a40006e0120013010300d37540022c601e6020004601c002601c004601800260106ea800452615330064911856616c696461746f722072657475726e65642066616c7365001365615330044901ab65787065637420536f6d65280a2020202020205061697228436f6e737469747574696f6e616c436f6d6d69747465654d656d62657228536372697074282e2e29292c0a2020202020205b5061697228476f7665726e616e6365416374696f6e4964207b207472616e73616374696f6e2c2070726f706f73616c5f70726f6365647572653a2031207d2c20596573295d292c0a2020202029203d206c6973742e617428766f7465732c203029001615330034915865787065637420536f6d6528506169722844656c6567617465526570726573656e74617469766528536372697074282e2e29292c205b5f2c202e2e5d2929203d0a2020202020206c6973742e617428766f7465732c203229001615330024914265787065637420536f6d652850616972285374616b65506f6f6c28706f6f6c5f6964292c205b5f2c202e2e5d2929203d206c6973742e617428766f7465732c20342900165734ae7155ceaab9e5573eae815d0aba257481", + "hash": "298b027639e9340c10c241a8193ab099a46840548c61930c32398a7c" + }, { "title": "withdraw.thing_spend", "datum": { @@ -79,8 +143,8 @@ "$ref": "#/definitions/Void" } }, - "compiledCode": "59066f0101003232323232323232253330023232323232325323330093370e9001001099191919251533300c3004300e375400e2a666020601e6ea801c5261616301130120023010001300c37540062a66601266e1d200400213232533300b3370e900118069baa00213253323300d3375e60026602498010ad8799fd87980d87a80ff00330123001330123374a9001198092601091b000001739c890420004bd7019809199806a504c103d87a80004c0103d87980004bd7025eb80c04cc050c050c050c050c050c050c050c040dd50050991919299980819baf4c0154d8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffffffffff00330010034800054ccc040cdd7a613ad8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034800854ccc040cdd7a613ad8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034801054ccc040cdd79ba6330153376066e95200233015375200a97ae04c1010000330154bded8c0122d8799f581c00000000000000000000000000000000000000000000000000000000ff0001010e004bd6f7b630180b180b980b980b980b980b980b98099baa00d14a22a6602292016c6578706563740a2020202020205b5061697228536372697074286d795f7363726970745f68617368292c2030292c205061697228566572696669636174696f6e4b6579286f6e6c793073292c203134295d203d3d207472616e73616374696f6e2e7769746864726177616c7300161533011491b96578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20536372697074286f6e6c793173292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20322900161533011491c26578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20312900161533011491c16578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528496e6c696e6528536372697074286f6e6c7931732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20302900163001001222533301500214c103d87a8000132325333013300b00313007330180024bd70099980280280099b8000348004c06400cc05c008c8cc004004dd6180a180a980a98089baa00b22533301300114bd7009980a180a98091baa3015001330020023016001374a90000a99806a481526578706563740a202020202020696e74657276616c2e656e746972656c795f6265666f7265283135393630353930393230303029203d3d207472616e73616374696f6e2e76616c69646974795f72616e67650016375c6022601c6ea800854cc03124012a65787065637420536372697074286d795f7363726970745f6861736829203d2063726564656e7469616c0016533300a3002300c375400a2a66601c601a6ea80145261616300f300c37540062c6e1d2000300937540026018601a004601600260160046012002600a6ea800452615330034911856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae815d0aba201", - "hash": "c9d4463ce00030df3d30301301b217cbf87afdf8cb31ae3c5a6c90b8" + "compiledCode": "5906690101003232323232323232253330023232323232325323330093370e9001001099191919251533300c3004300e375400e2a666020601e6ea801c5261616301130120023010001300c37540062a66601266e1d200400213232533300b3370e900118069baa00213253323300d3375e60026602498010ad8799fd87980d87a80ff00330123001330123374a9001198092601091b000001739c890420004bd7019809199806a504c103d87a80004c0103d87980004bd7025eb80c04cc050c050c050c050c050c050c050c040dd50050991919299980819baf4c0154d8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffffffffff00330010034800054ccc040cdd7a613ad8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034800854ccc040cdd7a613ad8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034801054ccc040cdd79ba6330153376066e95200233015375200a97ae04c1010000330154bded8c0122d8799f581c00000000000000000000000000000000000000000000000000000000ff0001010e004bd6f7b630180b180b980b980b980b980b980b98099baa00d14a22a6602292016c6578706563740a2020202020205b5061697228536372697074286d795f7363726970745f68617368292c2030292c205061697228566572696669636174696f6e4b6579286f6e6c793073292c203134295d203d3d207472616e73616374696f6e2e7769746864726177616c7300161533011491b96578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20536372697074286f6e6c793173292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20322900161533011491c26578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20312900161533011491c16578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528496e6c696e6528536372697074286f6e6c7931732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20302900163001001222533301500214c103d87a8000132325333013300b00313007330180024bd70099980280280099b8000348004c06400cc05c008c8cc004004dd6180a180a980a98089baa00b22533301300114bd7009980a180a98091baa3015001330020023016001374a90000a99806a4814c65787065637420696e74657276616c2e656e746972656c795f6265666f7265283135393630353930393230303029203d3d207472616e73616374696f6e2e76616c69646974795f72616e67650016375c6022601c6ea800854cc03124012a65787065637420536372697074286d795f7363726970745f6861736829203d2063726564656e7469616c0016533300a3002300c375400a2a66601c601a6ea80145261616300f300c37540062c6e1d2000300937540026018601a004601600260160046012002600a6ea800452615330034911856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae815d0aba201", + "hash": "04137c5312a5b62c6bd9282e5c41e82d0f8b3da15fee6628552fe189" }, { "title": "withdraw.thing_withdraw", @@ -90,13 +154,13 @@ "$ref": "#/definitions/Void" } }, - "compiledCode": "59066f0101003232323232323232253330023232323232325323330093370e9001001099191919251533300c3004300e375400e2a666020601e6ea801c5261616301130120023010001300c37540062a66601266e1d200400213232533300b3370e900118069baa00213253323300d3375e60026602498010ad8799fd87980d87a80ff00330123001330123374a9001198092601091b000001739c890420004bd7019809199806a504c103d87a80004c0103d87980004bd7025eb80c04cc050c050c050c050c050c050c050c040dd50050991919299980819baf4c0154d8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffffffffff00330010034800054ccc040cdd7a613ad8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034800854ccc040cdd7a613ad8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034801054ccc040cdd79ba6330153376066e95200233015375200a97ae04c1010000330154bded8c0122d8799f581c00000000000000000000000000000000000000000000000000000000ff0001010e004bd6f7b630180b180b980b980b980b980b980b98099baa00d14a22a6602292016c6578706563740a2020202020205b5061697228536372697074286d795f7363726970745f68617368292c2030292c205061697228566572696669636174696f6e4b6579286f6e6c793073292c203134295d203d3d207472616e73616374696f6e2e7769746864726177616c7300161533011491b96578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20536372697074286f6e6c793173292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20322900161533011491c26578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20312900161533011491c16578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528496e6c696e6528536372697074286f6e6c7931732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20302900163001001222533301500214c103d87a8000132325333013300b00313007330180024bd70099980280280099b8000348004c06400cc05c008c8cc004004dd6180a180a980a98089baa00b22533301300114bd7009980a180a98091baa3015001330020023016001374a90000a99806a481526578706563740a202020202020696e74657276616c2e656e746972656c795f6265666f7265283135393630353930393230303029203d3d207472616e73616374696f6e2e76616c69646974795f72616e67650016375c6022601c6ea800854cc03124012a65787065637420536372697074286d795f7363726970745f6861736829203d2063726564656e7469616c0016533300a3002300c375400a2a66601c601a6ea80145261616300f300c37540062c6e1d2000300937540026018601a004601600260160046012002600a6ea800452615330034911856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae815d0aba201", - "hash": "c9d4463ce00030df3d30301301b217cbf87afdf8cb31ae3c5a6c90b8" + "compiledCode": "5906690101003232323232323232253330023232323232325323330093370e9001001099191919251533300c3004300e375400e2a666020601e6ea801c5261616301130120023010001300c37540062a66601266e1d200400213232533300b3370e900118069baa00213253323300d3375e60026602498010ad8799fd87980d87a80ff00330123001330123374a9001198092601091b000001739c890420004bd7019809199806a504c103d87a80004c0103d87980004bd7025eb80c04cc050c050c050c050c050c050c050c040dd50050991919299980819baf4c0154d8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffffffffff00330010034800054ccc040cdd7a613ad8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034800854ccc040cdd7a613ad8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034801054ccc040cdd79ba6330153376066e95200233015375200a97ae04c1010000330154bded8c0122d8799f581c00000000000000000000000000000000000000000000000000000000ff0001010e004bd6f7b630180b180b980b980b980b980b980b98099baa00d14a22a6602292016c6578706563740a2020202020205b5061697228536372697074286d795f7363726970745f68617368292c2030292c205061697228566572696669636174696f6e4b6579286f6e6c793073292c203134295d203d3d207472616e73616374696f6e2e7769746864726177616c7300161533011491b96578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20536372697074286f6e6c793173292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20322900161533011491c26578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20312900161533011491c16578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528496e6c696e6528536372697074286f6e6c7931732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20302900163001001222533301500214c103d87a8000132325333013300b00313007330180024bd70099980280280099b8000348004c06400cc05c008c8cc004004dd6180a180a980a98089baa00b22533301300114bd7009980a180a98091baa3015001330020023016001374a90000a99806a4814c65787065637420696e74657276616c2e656e746972656c795f6265666f7265283135393630353930393230303029203d3d207472616e73616374696f6e2e76616c69646974795f72616e67650016375c6022601c6ea800854cc03124012a65787065637420536372697074286d795f7363726970745f6861736829203d2063726564656e7469616c0016533300a3002300c375400a2a66601c601a6ea80145261616300f300c37540062c6e1d2000300937540026018601a004601600260160046012002600a6ea800452615330034911856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae815d0aba201", + "hash": "04137c5312a5b62c6bd9282e5c41e82d0f8b3da15fee6628552fe189" }, { "title": "withdraw.thing_else", - "compiledCode": "59066f0101003232323232323232253330023232323232325323330093370e9001001099191919251533300c3004300e375400e2a666020601e6ea801c5261616301130120023010001300c37540062a66601266e1d200400213232533300b3370e900118069baa00213253323300d3375e60026602498010ad8799fd87980d87a80ff00330123001330123374a9001198092601091b000001739c890420004bd7019809199806a504c103d87a80004c0103d87980004bd7025eb80c04cc050c050c050c050c050c050c050c040dd50050991919299980819baf4c0154d8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffffffffff00330010034800054ccc040cdd7a613ad8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034800854ccc040cdd7a613ad8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034801054ccc040cdd79ba6330153376066e95200233015375200a97ae04c1010000330154bded8c0122d8799f581c00000000000000000000000000000000000000000000000000000000ff0001010e004bd6f7b630180b180b980b980b980b980b980b98099baa00d14a22a6602292016c6578706563740a2020202020205b5061697228536372697074286d795f7363726970745f68617368292c2030292c205061697228566572696669636174696f6e4b6579286f6e6c793073292c203134295d203d3d207472616e73616374696f6e2e7769746864726177616c7300161533011491b96578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20536372697074286f6e6c793173292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20322900161533011491c26578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20312900161533011491c16578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528496e6c696e6528536372697074286f6e6c7931732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20302900163001001222533301500214c103d87a8000132325333013300b00313007330180024bd70099980280280099b8000348004c06400cc05c008c8cc004004dd6180a180a980a98089baa00b22533301300114bd7009980a180a98091baa3015001330020023016001374a90000a99806a481526578706563740a202020202020696e74657276616c2e656e746972656c795f6265666f7265283135393630353930393230303029203d3d207472616e73616374696f6e2e76616c69646974795f72616e67650016375c6022601c6ea800854cc03124012a65787065637420536372697074286d795f7363726970745f6861736829203d2063726564656e7469616c0016533300a3002300c375400a2a66601c601a6ea80145261616300f300c37540062c6e1d2000300937540026018601a004601600260160046012002600a6ea800452615330034911856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae815d0aba201", - "hash": "c9d4463ce00030df3d30301301b217cbf87afdf8cb31ae3c5a6c90b8" + "compiledCode": "5906690101003232323232323232253330023232323232325323330093370e9001001099191919251533300c3004300e375400e2a666020601e6ea801c5261616301130120023010001300c37540062a66601266e1d200400213232533300b3370e900118069baa00213253323300d3375e60026602498010ad8799fd87980d87a80ff00330123001330123374a9001198092601091b000001739c890420004bd7019809199806a504c103d87a80004c0103d87980004bd7025eb80c04cc050c050c050c050c050c050c050c040dd50050991919299980819baf4c0154d8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffffffffff00330010034800054ccc040cdd7a613ad8799fd8799fd8799f581c00000000000000000000000000000000000000000000000000000000ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034800854ccc040cdd7a613ad8799fd8799fd87a9f581c11111111111111111111111111111111111111111111111111111111ffd8799fd87a9f1a00261ec3181b03ffffffff00330010034801054ccc040cdd79ba6330153376066e95200233015375200a97ae04c1010000330154bded8c0122d8799f581c00000000000000000000000000000000000000000000000000000000ff0001010e004bd6f7b630180b180b980b980b980b980b980b98099baa00d14a22a6602292016c6578706563740a2020202020205b5061697228536372697074286d795f7363726970745f68617368292c2030292c205061697228566572696669636174696f6e4b6579286f6e6c793073292c203134295d203d3d207472616e73616374696f6e2e7769746864726177616c7300161533011491b96578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20536372697074286f6e6c793173292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20322900161533011491c26578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528506f696e74657228323439383234332c2032372c203329292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20312900161533011491c16578706563740a202020202020536f6d65280a202020202020202041646472657373207b0a202020202020202020207061796d656e745f63726564656e7469616c3a20566572696669636174696f6e4b6579286f6e6c793073292c0a202020202020202020207374616b655f63726564656e7469616c3a20536f6d6528496e6c696e6528536372697074286f6e6c7931732929292c0a20202020202020207d2c0a20202020202029203d3d206c6973742e6174286164647265737365732c20302900163001001222533301500214c103d87a8000132325333013300b00313007330180024bd70099980280280099b8000348004c06400cc05c008c8cc004004dd6180a180a980a98089baa00b22533301300114bd7009980a180a98091baa3015001330020023016001374a90000a99806a4814c65787065637420696e74657276616c2e656e746972656c795f6265666f7265283135393630353930393230303029203d3d207472616e73616374696f6e2e76616c69646974795f72616e67650016375c6022601c6ea800854cc03124012a65787065637420536372697074286d795f7363726970745f6861736829203d2063726564656e7469616c0016533300a3002300c375400a2a66601c601a6ea80145261616300f300c37540062c6e1d2000300937540026018601a004601600260160046012002600a6ea800452615330034911856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae815d0aba201", + "hash": "04137c5312a5b62c6bd9282e5c41e82d0f8b3da15fee6628552fe189" } ], "definitions": { diff --git a/examples/acceptance_tests/script_context/v3/validators/certificates.ak b/examples/acceptance_tests/script_context/v3/validators/certificates.ak index 5d5721c8..82f75d0b 100644 --- a/examples/acceptance_tests/script_context/v3/validators/certificates.ak +++ b/examples/acceptance_tests/script_context/v3/validators/certificates.ak @@ -1,14 +1,14 @@ use aiken/collection/list use cardano/certificate.{ AlwaysAbstain, AlwaysNoConfidence, AuthorizeConstitutionalCommitteeProxy, - DelegateBlockProduction, DelegateBoth, DelegateCredential, DelegateVote, - RegisterAndDelegateCredential, RegisterCredential, + Certificate, DelegateBlockProduction, DelegateBoth, DelegateCredential, + DelegateVote, RegisterAndDelegateCredential, RegisterCredential, RegisterDelegateRepresentative, RegisterStakePool, Registered, RetireFromConstitutionalCommittee, RetireStakePool, UnregisterCredential, UnregisterDelegateRepresentative, UpdateDelegateRepresentative, } use cardano/credential.{Script, VerificationKey} -use cardano/transaction.{Publishing, ScriptContext, ScriptInfo} +use cardano/transaction.{Transaction} const only0s = #"00000000000000000000000000000000000000000000000000000000" @@ -19,15 +19,19 @@ const only2s = #"22222222222222222222222222222222222222222222222222222222" const only9s = #"9999999999999999999999999999999999999999999999999999999999999999" -validator { - fn script(_tmp1: Void, ctx: ScriptContext) -> Bool { - assert_script_info(ctx.info) +validator purposes { + publish( + _redeemer: Void, + certificate: Certificate, + transaction: Transaction, + ) -> Bool { + assert_script_info(certificate) - let certificates = ctx.transaction.certificates + let certificates = transaction.certificates - expect Some(10_000_000) = ctx.transaction.current_treasury_amount + expect Some(10_000_000) = transaction.current_treasury_amount - expect Some(14) = ctx.transaction.treasury_donation + expect Some(14) = transaction.treasury_donation expect Some(RegisterCredential { credential: Script(only2s), deposit: None }) == list.at( @@ -197,10 +201,14 @@ validator { True } + + else(_ctx) { + fail + } } -fn assert_script_info(info: ScriptInfo) { - expect Publishing(20, DelegateCredential { credential, delegate }) = info +fn assert_script_info(certificate: Certificate) { + expect DelegateCredential { credential, delegate } = certificate expect DelegateBlockProduction { stake_pool: only1s } == delegate expect Script(..) = credential Void diff --git a/examples/acceptance_tests/script_context/v3/validators/mint.ak b/examples/acceptance_tests/script_context/v3/validators/mint.ak index ceaece1e..093dc900 100644 --- a/examples/acceptance_tests/script_context/v3/validators/mint.ak +++ b/examples/acceptance_tests/script_context/v3/validators/mint.ak @@ -123,9 +123,18 @@ fn assert_mint(mint: Value, our_policy_id: PolicyId, other_policy_id: PolicyId) Void } +// NOTE: It is imperative that test2 has a lower hash value than test1; as +// otherwise the redeemer will point to the wrong redeemer. So the trace +// below is meant to generate a small-enough hash... If this test fails +// after some code-gen changes, it's probably because the new hash is +// larger. +/// +// How to fix? +// Change the traced string down below in hope to get a +// smaller hash. validator test_2 { mint(_tmp2: Void, _policy_id: PolicyId, _transaction: Transaction) { - trace @"_____mint_2_____" + trace @"slfhioer7w8yru" True } diff --git a/examples/acceptance_tests/script_context/v3/validators/proposing_all.ak b/examples/acceptance_tests/script_context/v3/validators/proposing_all.ak index 7ca68dde..81f620b3 100644 --- a/examples/acceptance_tests/script_context/v3/validators/proposing_all.ak +++ b/examples/acceptance_tests/script_context/v3/validators/proposing_all.ak @@ -6,18 +6,22 @@ use cardano/governance.{ HardFork, NewConstitution, NicePoll, NoConfidence, ProposalProcedure, ProtocolVersion, TreasuryWithdrawal, } -use cardano/transaction.{Propose, Redeemer, ScriptContext, ScriptPurpose} +use cardano/transaction.{Propose, Redeemer, ScriptPurpose, Transaction} const null28 = #"00000000000000000000000000000000000000000000000000000000" const null32 = #"0000000000000000000000000000000000000000000000000000000000000000" -validator { - fn guardrails(_tmp1: Void, ctx: ScriptContext) -> Bool { - let procedures = ctx.transaction.proposal_procedures +validator guardrails { + propose( + _redeemer: Void, + _: ProposalProcedure, + transaction: Transaction, + ) -> Bool { + let procedures = transaction.proposal_procedures - assert_redeemers(ctx.transaction.redeemers) + assert_redeemers(transaction.redeemers) assert_proposal_procedure( list.at(procedures, 0), @@ -118,6 +122,10 @@ validator { True } + + else(_ctx) { + fail + } } fn assert_redeemers(redeemers: Pairs) -> Void { diff --git a/examples/acceptance_tests/script_context/v3/validators/proposing_pparams.ak b/examples/acceptance_tests/script_context/v3/validators/proposing_pparams.ak index 72f984dc..72d398c0 100644 --- a/examples/acceptance_tests/script_context/v3/validators/proposing_pparams.ak +++ b/examples/acceptance_tests/script_context/v3/validators/proposing_pparams.ak @@ -17,21 +17,22 @@ use cardano/governance/protocol_parameters.{ stake_pool_operator_voting_thresholds, stake_pool_pledge_influence, stake_pool_retirement_horizon, treasury_expansion, } -use cardano/transaction.{Proposing, ScriptContext} +use cardano/transaction.{Transaction} -validator { - fn guardrails(_tmp1: Void, ctx: ScriptContext) -> Bool { - expect Proposing( - 0, - ProposalProcedure { - governance_action: ProtocolParameters { - ancestor: None, - guardrails: Some(..), - new_parameters, - }, - .. +validator guardrails { + propose( + _redeemer: Void, + proposal: ProposalProcedure, + _transaction: Transaction, + ) -> Bool { + expect ProposalProcedure { + governance_action: ProtocolParameters { + ancestor: None, + guardrails: Some(..), + new_parameters, }, - ) = ctx.info + .. + } = proposal expect ( new_parameters |> min_fee_coefficient ) == Some(44) @@ -127,6 +128,10 @@ validator { True } + + else(_ctx) { + fail + } } fn expect_rational(numerator: Int, denominator: Int) -> Rational { diff --git a/examples/acceptance_tests/script_context/v3/validators/voting.ak b/examples/acceptance_tests/script_context/v3/validators/voting.ak index cce7c58f..5ee617ba 100644 --- a/examples/acceptance_tests/script_context/v3/validators/voting.ak +++ b/examples/acceptance_tests/script_context/v3/validators/voting.ak @@ -2,9 +2,9 @@ use aiken/collection/list use cardano/credential.{Script, VerificationKey} use cardano/governance.{ Abstain, ConstitutionalCommitteeMember, DelegateRepresentative, - GovernanceActionId, No, StakePool, Yes, + GovernanceActionId, No, StakePool, Voter, Yes, } -use cardano/transaction.{ScriptContext} +use cardano/transaction.{Transaction} type Foo { Foo(Int) @@ -21,11 +21,11 @@ const only8s = const only9s = #"9999999999999999999999999999999999999999999999999999999999999999" -validator { - fn script(_tmp0: Data, ctx: ScriptContext) { - assert_redeemer(ctx.redeemer) +validator purposes { + vote(redeemer: Data, _voter: Voter, transaction: Transaction) { + assert_redeemer(redeemer) - let votes = ctx.transaction.votes + let votes = transaction.votes expect Some( Pair(ConstitutionalCommitteeMember(Script(..)), @@ -35,14 +35,18 @@ validator { expect Some( - Pair(ConstitutionalCommitteeMember(VerificationKey(only0s)), - [ - Pair(GovernanceActionId { - transaction: only9s, - proposal_procedure: 152, - }, - No), - ]), + Pair( + ConstitutionalCommitteeMember(VerificationKey(only0s)), + [ + Pair( + GovernanceActionId { + transaction: only9s, + proposal_procedure: 152, + }, + No, + ), + ], + ), ) == list.at(votes, 1) expect Some(Pair(DelegateRepresentative(Script(..)), [_, ..])) = @@ -50,15 +54,23 @@ validator { expect Some( - Pair(DelegateRepresentative(VerificationKey(only0s)), - [ - Pair(GovernanceActionId { transaction: only7s, proposal_procedure: 2 }, - Abstain), - Pair(GovernanceActionId { transaction: only8s, proposal_procedure: 1 }, - Abstain), - Pair(GovernanceActionId { transaction: only9s, proposal_procedure: 0 }, - Abstain), - ]), + Pair( + DelegateRepresentative(VerificationKey(only0s)), + [ + Pair( + GovernanceActionId { transaction: only7s, proposal_procedure: 2 }, + Abstain, + ), + Pair( + GovernanceActionId { transaction: only8s, proposal_procedure: 1 }, + Abstain, + ), + Pair( + GovernanceActionId { transaction: only9s, proposal_procedure: 0 }, + Abstain, + ), + ], + ), ) == list.at(votes, 3) expect Some(Pair(StakePool(pool_id), [_, ..])) = list.at(votes, 4) @@ -66,6 +78,10 @@ validator { True } + + else(_ctx) { + fail + } } fn assert_redeemer(data: Data) {