Merge pull request #980 from aiken-lang/multivalidator-plus-optimization
Mutlivalidator is now an opcode to help minimize validator size
This commit is contained in:
commit
594a304190
|
@ -6,7 +6,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.21-alpha+4b04517"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
},
|
},
|
||||||
"license": "Apache-2.0"
|
"license": "Apache-2.0"
|
||||||
},
|
},
|
||||||
|
|
|
@ -132,6 +132,46 @@ impl<'a> CodeGenerator<'a> {
|
||||||
let mut validator_args_tree =
|
let mut validator_args_tree =
|
||||||
self.check_validator_args(&fun.arguments, true, air_tree_fun, src_code, lines);
|
self.check_validator_args(&fun.arguments, true, air_tree_fun, src_code, lines);
|
||||||
|
|
||||||
|
if let Some(other) = other_fun {
|
||||||
|
let mut air_tree_fun_other = self.build(&other.body, module_name, &[]);
|
||||||
|
|
||||||
|
air_tree_fun_other = wrap_validator_condition(air_tree_fun_other, self.tracing);
|
||||||
|
|
||||||
|
let validator_args_tree_other = self.check_validator_args(
|
||||||
|
&other.arguments,
|
||||||
|
true,
|
||||||
|
air_tree_fun_other,
|
||||||
|
src_code,
|
||||||
|
lines,
|
||||||
|
);
|
||||||
|
|
||||||
|
let (spend, spend_name, mint, mint_name) =
|
||||||
|
if other.arguments.len() > fun.arguments.len() {
|
||||||
|
(
|
||||||
|
validator_args_tree_other,
|
||||||
|
other.name.clone(),
|
||||||
|
validator_args_tree,
|
||||||
|
fun.name.clone(),
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
(
|
||||||
|
validator_args_tree,
|
||||||
|
fun.name.clone(),
|
||||||
|
validator_args_tree_other,
|
||||||
|
other.name.clone(),
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
validator_args_tree = AirTree::multi_validator(mint_name, mint, spend_name, spend);
|
||||||
|
|
||||||
|
// Special Case with multi_validators
|
||||||
|
self.special_functions
|
||||||
|
.use_function_uplc(CONSTR_FIELDS_EXPOSER.to_string());
|
||||||
|
|
||||||
|
self.special_functions
|
||||||
|
.use_function_uplc(CONSTR_INDEX_EXPOSER.to_string());
|
||||||
|
}
|
||||||
|
|
||||||
validator_args_tree = AirTree::no_op(validator_args_tree);
|
validator_args_tree = AirTree::no_op(validator_args_tree);
|
||||||
|
|
||||||
let full_tree = self.hoist_functions_to_validator(validator_args_tree);
|
let full_tree = self.hoist_functions_to_validator(validator_args_tree);
|
||||||
|
@ -142,48 +182,6 @@ impl<'a> CodeGenerator<'a> {
|
||||||
|
|
||||||
let mut term = self.uplc_code_gen(full_vec);
|
let mut term = self.uplc_code_gen(full_vec);
|
||||||
|
|
||||||
if let Some(other) = other_fun {
|
|
||||||
self.reset(false);
|
|
||||||
|
|
||||||
let mut air_tree_fun_other = self.build(&other.body, module_name, &[]);
|
|
||||||
|
|
||||||
air_tree_fun_other = wrap_validator_condition(air_tree_fun_other, self.tracing);
|
|
||||||
|
|
||||||
let mut validator_args_tree_other = self.check_validator_args(
|
|
||||||
&other.arguments,
|
|
||||||
true,
|
|
||||||
air_tree_fun_other,
|
|
||||||
src_code,
|
|
||||||
lines,
|
|
||||||
);
|
|
||||||
|
|
||||||
validator_args_tree_other = AirTree::no_op(validator_args_tree_other);
|
|
||||||
|
|
||||||
let full_tree_other = self.hoist_functions_to_validator(validator_args_tree_other);
|
|
||||||
|
|
||||||
// optimizations on air tree
|
|
||||||
|
|
||||||
let full_vec_other = full_tree_other.to_vec();
|
|
||||||
|
|
||||||
let other_term = self.uplc_code_gen(full_vec_other);
|
|
||||||
|
|
||||||
let (spend, spend_name, mint, mint_name) =
|
|
||||||
if other.arguments.len() > fun.arguments.len() {
|
|
||||||
(other_term, other.name.clone(), term, fun.name.clone())
|
|
||||||
} else {
|
|
||||||
(term, fun.name.clone(), other_term, other.name.clone())
|
|
||||||
};
|
|
||||||
|
|
||||||
// Special Case with multi_validators
|
|
||||||
self.special_functions
|
|
||||||
.use_function_uplc(CONSTR_FIELDS_EXPOSER.to_string());
|
|
||||||
|
|
||||||
self.special_functions
|
|
||||||
.use_function_uplc(CONSTR_INDEX_EXPOSER.to_string());
|
|
||||||
|
|
||||||
term = wrap_as_multi_validator(spend, mint, self.tracing, spend_name, mint_name);
|
|
||||||
}
|
|
||||||
|
|
||||||
term = cast_validator_args(term, params);
|
term = cast_validator_args(term, params);
|
||||||
|
|
||||||
self.finalize(term)
|
self.finalize(term)
|
||||||
|
@ -5703,6 +5701,24 @@ impl<'a> CodeGenerator<'a> {
|
||||||
}
|
}
|
||||||
|
|
||||||
Air::NoOp => None,
|
Air::NoOp => None,
|
||||||
|
Air::MultiValidator {
|
||||||
|
two_arg_name,
|
||||||
|
three_arg_name,
|
||||||
|
} => {
|
||||||
|
let two_arg = arg_stack.pop().unwrap();
|
||||||
|
|
||||||
|
let three_arg = arg_stack.pop().unwrap();
|
||||||
|
|
||||||
|
let term = wrap_as_multi_validator(
|
||||||
|
three_arg,
|
||||||
|
two_arg,
|
||||||
|
self.tracing,
|
||||||
|
three_arg_name,
|
||||||
|
two_arg_name,
|
||||||
|
);
|
||||||
|
|
||||||
|
Some(term)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -224,4 +224,8 @@ pub enum Air {
|
||||||
NoOp,
|
NoOp,
|
||||||
FieldsEmpty,
|
FieldsEmpty,
|
||||||
ListEmpty,
|
ListEmpty,
|
||||||
|
MultiValidator {
|
||||||
|
two_arg_name: String,
|
||||||
|
three_arg_name: String,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -402,6 +402,12 @@ pub enum AirTree {
|
||||||
then: Box<AirTree>,
|
then: Box<AirTree>,
|
||||||
},
|
},
|
||||||
// End Expressions
|
// End Expressions
|
||||||
|
MultiValidator {
|
||||||
|
two_arg_name: String,
|
||||||
|
two_arg: Box<AirTree>,
|
||||||
|
three_arg_name: String,
|
||||||
|
three_arg: Box<AirTree>,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
impl AirTree {
|
impl AirTree {
|
||||||
|
@ -1001,26 +1007,19 @@ impl AirTree {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// pub fn hoist_over(mut self, next_exp: AirTree) -> AirTree {
|
pub fn multi_validator(
|
||||||
// match &mut self {
|
two_arg_name: String,
|
||||||
// AirTree::Statement { hoisted_over, .. } => {
|
two_arg: AirTree,
|
||||||
// assert!(hoisted_over.is_none());
|
three_arg_name: String,
|
||||||
// *hoisted_over = Some(next_exp.into());
|
three_arg: AirTree,
|
||||||
// self
|
) -> AirTree {
|
||||||
// }
|
AirTree::MultiValidator {
|
||||||
|
two_arg_name,
|
||||||
// AirTree::Expression(_) => {
|
two_arg: two_arg.into(),
|
||||||
// unreachable!("Trying to hoist an expression onto an expression.")
|
three_arg_name,
|
||||||
// }
|
three_arg: three_arg.into(),
|
||||||
// AirTree::UnhoistedSequence(seq) => {
|
}
|
||||||
// let mut final_exp = next_exp;
|
}
|
||||||
// while let Some(assign) = seq.pop() {
|
|
||||||
// final_exp = assign.hoist_over(final_exp);
|
|
||||||
// }
|
|
||||||
// final_exp
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
pub fn expect_on_list() -> AirTree {
|
pub fn expect_on_list() -> AirTree {
|
||||||
let list_var = AirTree::local_var("__list_to_check", list(data()));
|
let list_var = AirTree::local_var("__list_to_check", list(data()));
|
||||||
|
@ -1595,6 +1594,20 @@ impl AirTree {
|
||||||
msg.create_air_vec(air_vec);
|
msg.create_air_vec(air_vec);
|
||||||
then.create_air_vec(air_vec);
|
then.create_air_vec(air_vec);
|
||||||
}
|
}
|
||||||
|
AirTree::MultiValidator {
|
||||||
|
two_arg,
|
||||||
|
three_arg,
|
||||||
|
two_arg_name,
|
||||||
|
three_arg_name,
|
||||||
|
} => {
|
||||||
|
air_vec.push(Air::MultiValidator {
|
||||||
|
two_arg_name: two_arg_name.clone(),
|
||||||
|
three_arg_name: three_arg_name.clone(),
|
||||||
|
});
|
||||||
|
|
||||||
|
two_arg.create_air_vec(air_vec);
|
||||||
|
three_arg.create_air_vec(air_vec);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1649,6 +1662,7 @@ impl AirTree {
|
||||||
| AirTree::FieldsEmpty { then, .. }
|
| AirTree::FieldsEmpty { then, .. }
|
||||||
| AirTree::ListEmpty { then, .. }
|
| AirTree::ListEmpty { then, .. }
|
||||||
| AirTree::NoOp { then } => then.return_type(),
|
| AirTree::NoOp { then } => then.return_type(),
|
||||||
|
AirTree::MultiValidator { .. } => void(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1725,7 +1739,8 @@ impl AirTree {
|
||||||
| AirTree::Fn { .. }
|
| AirTree::Fn { .. }
|
||||||
| AirTree::UnOp { .. }
|
| AirTree::UnOp { .. }
|
||||||
| AirTree::WrapClause { .. }
|
| AirTree::WrapClause { .. }
|
||||||
| AirTree::Finally { .. } => vec![],
|
| AirTree::Finally { .. }
|
||||||
|
| AirTree::MultiValidator { .. } => vec![],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2055,7 +2070,8 @@ impl AirTree {
|
||||||
| AirTree::Constr { .. }
|
| AirTree::Constr { .. }
|
||||||
| AirTree::RecordUpdate { .. }
|
| AirTree::RecordUpdate { .. }
|
||||||
| AirTree::ErrorTerm { .. }
|
| AirTree::ErrorTerm { .. }
|
||||||
| AirTree::Trace { .. } => {}
|
| AirTree::Trace { .. }
|
||||||
|
| AirTree::MultiValidator { .. } => {}
|
||||||
}
|
}
|
||||||
|
|
||||||
if !apply_with_func_last {
|
if !apply_with_func_last {
|
||||||
|
@ -2711,6 +2727,27 @@ impl AirTree {
|
||||||
apply_with_func_last,
|
apply_with_func_last,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
AirTree::MultiValidator {
|
||||||
|
two_arg_name: _,
|
||||||
|
two_arg,
|
||||||
|
three_arg_name: _,
|
||||||
|
three_arg,
|
||||||
|
} => {
|
||||||
|
two_arg.do_traverse_tree_with(
|
||||||
|
tree_path,
|
||||||
|
current_depth + 1,
|
||||||
|
Fields::SecondField,
|
||||||
|
with,
|
||||||
|
apply_with_func_last,
|
||||||
|
);
|
||||||
|
three_arg.do_traverse_tree_with(
|
||||||
|
tree_path,
|
||||||
|
current_depth + 1,
|
||||||
|
Fields::FourthField,
|
||||||
|
with,
|
||||||
|
apply_with_func_last,
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if apply_with_func_last {
|
if apply_with_func_last {
|
||||||
|
@ -3077,6 +3114,16 @@ impl AirTree {
|
||||||
| AirTree::ErrorTerm { .. } => {
|
| AirTree::ErrorTerm { .. } => {
|
||||||
panic!("A tree node with no children was encountered with a longer tree path.")
|
panic!("A tree node with no children was encountered with a longer tree path.")
|
||||||
}
|
}
|
||||||
|
AirTree::MultiValidator {
|
||||||
|
two_arg_name: _,
|
||||||
|
two_arg,
|
||||||
|
three_arg_name: _,
|
||||||
|
three_arg,
|
||||||
|
} => match field {
|
||||||
|
Fields::SecondField => two_arg.as_mut().do_find_air_tree_node(tree_path_iter),
|
||||||
|
Fields::FourthField => three_arg.as_mut().do_find_air_tree_node(tree_path_iter),
|
||||||
|
_ => panic!("Tree Path index outside tree children nodes"),
|
||||||
|
},
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
self
|
self
|
||||||
|
|
|
@ -14,6 +14,7 @@ pub fn aiken_optimize_and_intern(program: Program<Name>) -> Program<Name> {
|
||||||
.inline_reducer()
|
.inline_reducer()
|
||||||
.force_delay_reducer()
|
.force_delay_reducer()
|
||||||
.cast_data_reducer()
|
.cast_data_reducer()
|
||||||
|
.builtin_eval_reducer()
|
||||||
.convert_arithmetic_ops()
|
.convert_arithmetic_ops()
|
||||||
.builtin_curry_reducer()
|
.builtin_curry_reducer()
|
||||||
.lambda_reducer()
|
.lambda_reducer()
|
||||||
|
|
|
@ -9,6 +9,7 @@ use crate::{
|
||||||
ast::{Constant, Data, Name, NamedDeBruijn, Program, Term, Type},
|
ast::{Constant, Data, Name, NamedDeBruijn, Program, Term, Type},
|
||||||
builder::{CONSTR_FIELDS_EXPOSER, CONSTR_INDEX_EXPOSER},
|
builder::{CONSTR_FIELDS_EXPOSER, CONSTR_INDEX_EXPOSER},
|
||||||
builtins::DefaultFunction,
|
builtins::DefaultFunction,
|
||||||
|
machine::cost_model::ExBudget,
|
||||||
};
|
};
|
||||||
|
|
||||||
use super::interner::CodeGenInterner;
|
use super::interner::CodeGenInterner;
|
||||||
|
@ -360,7 +361,7 @@ pub enum BuiltinArgs {
|
||||||
|
|
||||||
impl BuiltinArgs {
|
impl BuiltinArgs {
|
||||||
fn args_from_arg_stack(stack: Vec<(usize, Term<Name>)>, func: DefaultFunction) -> Self {
|
fn args_from_arg_stack(stack: Vec<(usize, Term<Name>)>, func: DefaultFunction) -> Self {
|
||||||
let error_safe = func.is_error_safe(&stack.iter().map(|(_, term)| term).collect_vec());
|
let error_safe = false;
|
||||||
|
|
||||||
let mut ordered_arg_stack = stack.into_iter().sorted_by(|(_, arg1), (_, arg2)| {
|
let mut ordered_arg_stack = stack.into_iter().sorted_by(|(_, arg1), (_, arg2)| {
|
||||||
// sort by constant first if the builtin is order agnostic
|
// sort by constant first if the builtin is order agnostic
|
||||||
|
@ -986,6 +987,24 @@ impl Term<Name> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn pierce_no_inlines(&self) -> &Self {
|
||||||
|
let mut term = self;
|
||||||
|
|
||||||
|
while let Term::Lambda {
|
||||||
|
parameter_name,
|
||||||
|
body,
|
||||||
|
} = term
|
||||||
|
{
|
||||||
|
if parameter_name.as_ref().text == NO_INLINE {
|
||||||
|
term = body;
|
||||||
|
} else {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
term
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Program<Name> {
|
impl Program<Name> {
|
||||||
|
@ -1708,6 +1727,56 @@ impl Program<Name> {
|
||||||
|
|
||||||
step_b
|
step_b
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn builtin_eval_reducer(self) -> Self {
|
||||||
|
let mut applied_ids = vec![];
|
||||||
|
|
||||||
|
self.traverse_uplc_with(false, &mut |id, term, arg_stack, _scope| match term {
|
||||||
|
Term::Builtin(func) => {
|
||||||
|
let args = arg_stack
|
||||||
|
.iter()
|
||||||
|
.map(|(_, term)| term.pierce_no_inlines())
|
||||||
|
.collect_vec();
|
||||||
|
if func.can_curry_builtin()
|
||||||
|
&& arg_stack.len() == func.arity()
|
||||||
|
&& func.is_error_safe(&args)
|
||||||
|
{
|
||||||
|
let applied_term =
|
||||||
|
arg_stack
|
||||||
|
.into_iter()
|
||||||
|
.fold(Term::Builtin(*func), |acc, item| {
|
||||||
|
applied_ids.push(item.0);
|
||||||
|
acc.apply(item.1.pierce_no_inlines().clone())
|
||||||
|
});
|
||||||
|
|
||||||
|
// Check above for is error safe
|
||||||
|
let eval_term: Term<Name> = Program {
|
||||||
|
version: (1, 0, 0),
|
||||||
|
term: applied_term,
|
||||||
|
}
|
||||||
|
.to_named_debruijn()
|
||||||
|
.unwrap()
|
||||||
|
.eval(ExBudget::max())
|
||||||
|
.result()
|
||||||
|
.unwrap()
|
||||||
|
.try_into()
|
||||||
|
.unwrap();
|
||||||
|
|
||||||
|
*term = eval_term;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Term::Apply { function, .. } => {
|
||||||
|
let id = id.unwrap();
|
||||||
|
|
||||||
|
if applied_ids.contains(&id) {
|
||||||
|
*term = function.as_ref().clone();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Term::Constr { .. } => todo!(),
|
||||||
|
Term::Case { .. } => todo!(),
|
||||||
|
_ => {}
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn id_vec_function_to_var(func_name: &str, id_vec: &[usize]) -> String {
|
fn id_vec_function_to_var(func_name: &str, id_vec: &[usize]) -> String {
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353062, nanos_since_epoch = 479061000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831083, nanos_since_epoch = 877044000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"validators": [
|
"validators": [
|
||||||
|
@ -25,8 +25,8 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"compiledCode": "58e90100003232323232323232323222322533300653330063370e900018041baa3232330010013758600460166ea8c008c02cdd50019129998068008a6103d87a800013232533300b3375e600a601c6ea80080244cdd2a40006602000497ae01330040040013011002300f0012300d00114a22940526153300749011856616c696461746f722072657475726e65642066616c73650013656533333300c001153330043370e900018031baa00115333008300737540022930018018018018018018a998012490f5f72656465656d65723a20566f696400165734ae7155ceaab9e5573eae815d0aba257481",
|
"compiledCode": "58ac010000323232323232323222322533300553330053370e900018031baa3232330010013758600460126ea8c008c024dd50019129998058008a6103d87a800013232533300a3375e600a60186ea80080244cdd2a40006601c00497ae0133004004001300f002300d0012300b00114a2294052613656533333300a001153330033370e900018021baa00115333006300537540022930b0b0b0b0b0b2b9a5573aaae7955cfaba05742ae895d201",
|
||||||
"hash": "eb7578af9370ca9210a58fbf6a7000c627e7b714cbd30016a12ed270"
|
"hash": "15d65864d62e97c72afb9cdf856b589e1688fda2dd6f7cfe52722eea"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "spend.spend",
|
"title": "spend.spend",
|
||||||
|
@ -42,8 +42,8 @@
|
||||||
"$ref": "#/definitions/Data"
|
"$ref": "#/definitions/Data"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"compiledCode": "590112010000323232323232323222253330043233001001375860166018601860106ea8c02cc020dd50011129998050008a501325333007333007533300b3253330083370e900118051baa00114bd6f7b63009bab300e300b375400264660020026eacc038c03cc02cdd518070019129998068008a60103d87a8000132323232533300d33722911050000000000000021533300d3371e91010500000000000000213374a9000198091ba60014bd700a6103d87a80001330060060033756601e0066eb8c034008c044008c03c0045288a504a094452889980180180098068008a4c2a6600a92011856616c696461746f722072657475726e65642066616c736500136565734ae7155ceaab9e5573eae815d0aba201",
|
"compiledCode": "58ef01000032323232323232222533300432330010013758601460166016600e6ea8c028c01cdd50011129998048008a501325333007333007533300a3253330083370e900118049baa00114bd6f7b63009bab300d300a375400264660020026eacc034c038c028dd518068019129998060008a60103d87a8000132323232533300d33722911050000000000000021533300d3371e91010500000000000000213374a9000198089ba60014bd700a6103d87a80001330060060033756601c0066eb8c030008c040008c0380045288a504a094452889980180180098060008a4c26cacae6955ceaab9e5573eae815d0aba21",
|
||||||
"hash": "874827f25676e53d8d40f1ebb5a69f901c9c79e3797059b3a7bc36b3"
|
"hash": "f56561e01063b11146809755d9907147e79d3166aa5c65fba4040fd1"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"validators": [
|
"validators": [
|
||||||
|
@ -23,8 +23,8 @@
|
||||||
"$ref": "#/definitions/Void"
|
"$ref": "#/definitions/Void"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"compiledCode": "58c00100003232323232323232232232253330084a22930a99804a491856616c696461746f722072657475726e65642066616c73650013656533333300b001153330063370e900018041baa0011533300a3009375400229300200200200200200229999998048008a99980219b8748000c018dd50008a99980418039baa001149800c00c00c00c00c00c54cc00d2410f5f72656465656d65723a20566f6964001615330024910c5f646174756d3a20566f696400165734ae7155ceaab9e5573eae91",
|
"compiledCode": "586b0100003232323232232232253330064a229309b2b29999998040008a99980219b8748000c014dd50008a99980398031baa00114985858585858594cccccc01800454ccc008cdc3a400060066ea800454ccc014c010dd50008a4c2c2c2c2c2c2cae6955ceaab9e5573eae91",
|
||||||
"hash": "3b52a75a0bb17b0a8abbaef7e73e30a6bde7693dd79715f9d3534b75"
|
"hash": "8f0bd54fc440f7d4ced89591d43041666aeccd5903c0755c95d7a070"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353060, nanos_since_epoch = 816466000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831081, nanos_since_epoch = 901928000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353064, nanos_since_epoch = 692755000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831083, nanos_since_epoch = 434512000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353086, nanos_since_epoch = 153535000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831249, nanos_since_epoch = 124849000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353064, nanos_since_epoch = 356223000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831084, nanos_since_epoch = 29892000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353090, nanos_since_epoch = 867160000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831251, nanos_since_epoch = 240824000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353088, nanos_since_epoch = 668124000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831249, nanos_since_epoch = 836798000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353089, nanos_since_epoch = 828993000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831251, nanos_since_epoch = 15898000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353049, nanos_since_epoch = 385317000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831079, nanos_since_epoch = 22817000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353054, nanos_since_epoch = 415860000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831080, nanos_since_epoch = 166130000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"validators": [
|
"validators": [
|
||||||
|
@ -23,8 +23,8 @@
|
||||||
"$ref": "#/definitions/spend~1PoolRedeemer"
|
"$ref": "#/definitions/spend~1PoolRedeemer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"compiledCode": "5905540100003232323232323232323232323223232323223232322533300f3232325333012300b00114a226464646464a66602e601600c26464a666032601a60366ea80044c8c8c94ccc070c054c078dd500089919299980f180b98101baa0011324a2604860426ea8004074cc01c03c00cc088c07cdd500080d198038068009804244101ff00301f301c37540022940c00cc06cdd5005180e980d1baa007132325333019300d301b37540022646464a666038602a603c6ea80044c8c94ccc078c05cc080dd500089925130243021375400203a6600e01e0066044603e6ea8004068cc01c034004c021220101ff00301f301c37540022940c00cc06cdd5005180e980d1baa00722330053758601260366ea8c024c06cdd5001119baf300a301c3754600860386ea80040088c070c07400488cc00cdd6180e180e980e980c9baa300730193754004466ebcc020c068dd500080111191980080080191299980d8008a6103d87a8000132325333019300500213374a90001980f00125eb804cc010010004c07c008c0740048cdd2a40006603066e95200233018375200297ae0330184c103d87a80004bd7018099baa00130013013375400a4602c0022930a998082491856616c696461746f722072657475726e65642066616c73650013656533300d3006300f3754004264a666024002014264a666026602c004264931929998081804800899299980a800806899299980b180c8010a4c01c64a66666603400201c01c01c26eb4004038c05c004c04cdd50010a9998081802000899299980a800806899299980b180c80109924ca666024601660286ea80044c94ccc05c00403c4c8c94ccc0640040444c94ccc068c0740084c9263300e00301201232533333301e0010120120121375a0020246036002603600464a66666603800220020200200200206032002602a6ea8004038038c94cccccc0680044004038038038038c05c004c04cdd50010a99980819b87480100044c94ccc0540040344c94ccc058c0640084c9265333012300b30143754002264a66602e00201e26464a666032002022264a666034603a004264931980700180900919299999980f00080900900909bad001012301b001301b00232533333301c001100101001001001030190013015375400201c01c64a666666034002200201c01c01c01c602e00260266ea8008030c044dd500080599299999980b8008800805805805805980a00098081baa002009370e900129999998098008800803803803803a999804980118059baa003132533300e00100713232533301000100913232533301200100b13253330133016002132498cc01c014030030c94cccccc05c0040300300304dd6800806180a000980a00119299999980a80080500500509bad00100a3012001301200232533333301300110010080080080083010001300c375400600c44a666014600660186ea80084c94ccc03c00401c4c8c94ccc0440040244c94ccc048c05400852600a32533333301600100a00a00a00a1375c0026026002602600464a66666602800201001001001026eb8004c044004c034dd50010031b87480014cccccc038004400400c00c00c00c54cc01524011672656465656d65723a20506f6f6c52656465656d65720016153300449110646174756d3a20506f6f6c446174756d001615330034913d65787065637420536f6d6528706f6f6c5f6f757470757429203d206765745f6f7574707574286374782c2076616c696461746f725f6164647265737329001615330024913b65787065637420536f6d6528706f6f6c5f696e70757429203d206765745f696e707574286374782c2076616c696461746f725f616464726573732900165734ae7155ceaab9e5573eae815d0aba257481",
|
"compiledCode": "59043b010000323232323232323223232323223232322533300b323232533300e300b00114a226464646464a666026601600c26464a66602a601a602c6ea80044c8c8c94ccc060c054c064dd500089919299980d180b980d9baa0011324a2603e60386ea800458cc01c03c00cc074c068dd50008b198038068009804244101ff00301a301737540022940c00cc058dd5005180c180a9baa007132325333015300d301637540022646464a666030602a60326ea80044c8c94ccc068c05cc06cdd5000899251301f301c37540022c6600e01e006603a60346ea800458cc01c034004c021220101ff00301a301737540022940c00cc058dd5005180c180a9baa007223300537586012602c6ea8c024c058dd5001119baf300a301737546008602e6ea80040088c05cc06000488cc00cdd6180b980c180c180a1baa300730143754004466ebcc020c054dd500080111191980080080191299980b0008a6103d87a8000132325333015300500213374a90001980c80125eb804cc010010004c068008c0600048cdd2a40006602666e95200233013375200297ae0330134c103d87a80004bd7018071baa0013001300e375400a4602200229309b2b2999804980318051baa002132533300d00116132533300e3011002132498c94ccc030c0240044c94ccc040004584c94ccc044c050008526163253333330150011616161375a0022c6024002601c6ea800854ccc030c0100044c94ccc040004584c94ccc044c0500084c926533300e300b300f3754002264a6660240022c26464a6660280022c264a66602a60300042649318070018b19299999980c8008b0b0b09bad00116301600130160023253333330170011001161616163014001301037540022c2c64a66666602a00220022c2c2c2c6024002601c6ea800854ccc030cdc3a4008002264a6660200022c264a6660226028004264932999807180598079baa0011325333012001161323253330140011613253330153018002132498c03800c58c94cccccc0640045858584dd68008b180b000980b00119299999980b80088008b0b0b0b180a00098081baa00116163253333330150011001161616163012001300e37540042c60186ea800458c94cccccc048004400458585858c03c004c02cdd50010b1b87480094cccccc0380044004585858594ccc014c008c018dd500189929998048008b0991929998058008b0991929998068008b0992999807180880109924c600e00a2c64a6666660240022c2c2c26eb400458c03c004c03c008c94cccccc0400045858584dd68008b1806800980680119299999980700088008b0b0b0b180580098039baa0031625333005300230063754002264a6660120022c26464a6660160022c264a666018601e0042930b1929999998080008b0b0b0b09bae001300d001300d00232533333300e001161616161375c0026016002600e6ea800458dc3a4000a66666601200220022c2c2c2cae6955ceaab9e5573eae815d0aba25749",
|
||||||
"hash": "3ac593e0e8c626918e776b2b4c1d7578719464f516e9f1ac78bcdd22"
|
"hash": "8a2d8cc51ed80a4345327979cfeaa527b3ccdd361c3a905d59b6df7a"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353079, nanos_since_epoch = 869301000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831095, nanos_since_epoch = 72131000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353073, nanos_since_epoch = 642619000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721828369, nanos_since_epoch = 230591000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353074, nanos_since_epoch = 601697000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831093, nanos_since_epoch = 975977000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719352929, nanos_since_epoch = 982815000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721828402, nanos_since_epoch = 276492000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"validators": [
|
"validators": [
|
||||||
|
@ -31,8 +31,8 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"compiledCode": "590347010000323232323232323232323223222323232322533300c323232533300f3007301137540022646464a66602c002020264a66602e603400426464a66602a601a602e6ea803854ccc054c8cc004004018894ccc06c004528099299980c19baf301e301b3754603c00402629444cc00c00c004c07800454ccc054c0300044cdc78010088a5015330164901536578706563740a202020202020202020206c6973742e616e7928696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d2900161533016491046275726e0016375a602e0046eb8c054004044c060004c94ccc048c024c050dd50008a5eb7bdb1804dd5980c180a9baa001323233001001323300100137566034603660366036603600a44a666032002297adef6c6013232323253330193372291100002153330193371e9101000021003100513301e337606ea4008dd3000998030030019bab301b003375c6032004603a004603600244a666030002298103d87a800013232323253330183372200e0042a66603066e3c01c0084cdd2a40006603a6e980052f5c02980103d87a8000133006006003375660340066eb8c060008c070008c068004dd7180b980a1baa0033758602c00260246ea800854cc041241236578706563742074782e4d696e7428706f6c6963795f696429203d20707572706f73650016301430150023013001300f37540022930a99806a491856616c696461746f722072657475726e65642066616c7365001365632533300b30030011533300f300e37540082930050a99980598010008a99980798071baa0041498028028c030dd50019b8748008dc3a4000a66666601e002200200c00c00c00c6eb800454cc00d24018f657870656374205b506169722861737365745f6e616d652c20616d6f756e74295d203d0a2020202020206d696e740a20202020202020207c3e2076616c75652e66726f6d5f6d696e7465645f76616c75650a20202020202020207c3e2076616c75652e746f6b656e7328706f6c6963795f6964290a20202020202020207c3e20646963742e746f5f70616972732829001615330024910c72646d723a20416374696f6e00165734ae7155ceaab9e5573eae815d0aba257481",
|
"compiledCode": "5901e4010000323232323232323223222323232322533300a323232533300d3007300e37540022646464a6660260022c264a666028602e00426464a666026601a60286ea803854ccc04cc8cc004004018894ccc060004528099299980b19baf301b30183754603600402629444cc00c00c004c06c00454ccc04cc0300044cdc78010088a501616375a60280046eb8c04800458c054004c94ccc040c024c044dd50008a5eb7bdb1804dd5980a98091baa00132323300100132330010013756602e603060306030603000a44a66602c002297adef6c60132323232533301733722910100002153330173371e9101000021003100513301b337606ea4008dd3000998030030019bab3018003375c602c0046034004603000244a66602a002298103d87a800013232323253330163372200e0042a66602c66e3c01c0084cdd2a4000660346e980052f5c02980103d87a80001330060060033756602e0066eb8c054008c064008c05c004dd7180a18089baa00337586026002601e6ea800858c044c048008c040004c030dd50008a4c26cac64a66601260060022a66601860166ea8010526161533300930020011533300c300b37540082930b0b18049baa003370e90011b87480014cccccc030004400458585858dd7000ab9a5573aaae7955cfaba05742ae895d201",
|
||||||
"hash": "e8c0b6d7c88bce7578f598ed61f172854b78a78c4ec251b45d6da4c4"
|
"hash": "41f948bc5dcda5f8813cc42ffde5c8d981f37be1475a5d242d44e2fd"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "spend2.backtrace",
|
"title": "spend2.backtrace",
|
||||||
|
@ -48,8 +48,8 @@
|
||||||
"$ref": "#/definitions/Void"
|
"$ref": "#/definitions/Void"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"compiledCode": "5901680100003232323232323232323232232322322533300953330093005300b375464660020026eb0c040c044c044c034dd5180818069baa00222533300f00114c0103d87a800013232533300d4a2266e952000330120024bd70099802002000980980118088008a51153300a4914765787065637420536f6d65285f29203d206c6973742e66696e6428636f6e746578742e7472616e73616374696f6e2e6f7574707574732c20666e285f29207b2054727565207d290016149854cc0292411856616c696461746f722072657475726e65642066616c73650013656533333300f001153330073003300937540022a66601660146ea8004526005005005005005005533333300d002153330053001300737540042a66601260106ea8008526004004004004004004370e90000a99801a4810f5f72656465656d65723a20566f6964001615330024910c5f646174756d3a20566f696400165734ae7155ceaab9e5573eae815d0aba257481",
|
"compiledCode": "58c401000032323232323232322323223225333007533300730053008375464660020026eb0c034c038c038c028dd5180698051baa00222533300c00114c0103d87a800013232533300b4a2266e9520003300f0024bd70099802002000980800118070008a511614984d9594cccccc03000454ccc014c00cc018dd50008a99980418039baa00114985858585858594cccccc02800854ccc00cc004c010dd50010a99980318029baa0021498585858585858dc3a4000ae6955ceaab9e5573eae815d0aba25749",
|
||||||
"hash": "f86c88144df93f3925cf048d1b50615fa95249f063a07242f70a6bd8"
|
"hash": "419ffec4259b90352f8fde4cd451f98d01132f6cb7b1c382c9a3e810"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"validators": [
|
"validators": [
|
||||||
|
@ -23,8 +23,8 @@
|
||||||
"$ref": "#/definitions/RedeemerWrapper$Int"
|
"$ref": "#/definitions/RedeemerWrapper$Int"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"compiledCode": "5901e401000032323232323232322232533333300b002153330063370e900018041baa002153300749011c52756e6e696e672032206172672076616c696461746f72206d696e7400153330063370ea66666601600600800800826eb400c0112054149854cc01d2411856616c696461746f722072657475726e65642066616c73650013656153300749011d52756e6e696e672033206172672076616c696461746f72207370656e640013322322533300a3370e66e000100092054149854cc02d24011856616c696461746f722072657475726e65642066616c73650013656533333300d0010060060061375a00200ca66666601600600a00a00a26eb400c014c028c024dd50010a998038008b0a998038008b0a998038008b0a998038008b24991496e636f72726563742072656465656d6572207479706520666f722076616c696461746f72207370656e642e0a2020202020202020202020202020202020202020446f75626c6520636865636b20796f7520686176652077726170706564207468652072656465656d657220747970652061732073706563696669656420696e20796f757220706c757475732e6a736f6e0015330034910d72656465656d65723a20496e74001615330024910a646174756d3a20496e7400165734ae7155ceaab9e5742ae901",
|
"compiledCode": "587701000032323232322253330033370e900018021baa001153330033370ea66666600e0042c2c2c26eb400859205414984d9584cc88c894ccc01ccdc399b80004002481505261365653333330090011616161375a0022ca66666600e0042c2c2c26eb400858c018c014dd5000ab9a5573aaae795d0aba401",
|
||||||
"hash": "e2a34772b7901ffaed1c3d4bdf61bf613f028921738ec4b79329b105"
|
"hash": "1d65dca71cdfcfa33cd73184d7efd45b36f8cdaddd2a530972ed2445"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "foo.mint",
|
"title": "foo.mint",
|
||||||
|
@ -34,8 +34,8 @@
|
||||||
"$ref": "#/definitions/Int"
|
"$ref": "#/definitions/Int"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"compiledCode": "5901e401000032323232323232322232533333300b002153330063370e900018041baa002153300749011c52756e6e696e672032206172672076616c696461746f72206d696e7400153330063370ea66666601600600800800826eb400c0112054149854cc01d2411856616c696461746f722072657475726e65642066616c73650013656153300749011d52756e6e696e672033206172672076616c696461746f72207370656e640013322322533300a3370e66e000100092054149854cc02d24011856616c696461746f722072657475726e65642066616c73650013656533333300d0010060060061375a00200ca66666601600600a00a00a26eb400c014c028c024dd50010a998038008b0a998038008b0a998038008b0a998038008b24991496e636f72726563742072656465656d6572207479706520666f722076616c696461746f72207370656e642e0a2020202020202020202020202020202020202020446f75626c6520636865636b20796f7520686176652077726170706564207468652072656465656d657220747970652061732073706563696669656420696e20796f757220706c757475732e6a736f6e0015330034910d72656465656d65723a20496e74001615330024910a646174756d3a20496e7400165734ae7155ceaab9e5742ae901",
|
"compiledCode": "587701000032323232322253330033370e900018021baa001153330033370ea66666600e0042c2c2c26eb400859205414984d9584cc88c894ccc01ccdc399b80004002481505261365653333330090011616161375a0022ca66666600e0042c2c2c26eb400858c018c014dd5000ab9a5573aaae795d0aba401",
|
||||||
"hash": "e2a34772b7901ffaed1c3d4bdf61bf613f028921738ec4b79329b105"
|
"hash": "1d65dca71cdfcfa33cd73184d7efd45b36f8cdaddd2a530972ed2445"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353055, nanos_since_epoch = 72091000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831080, nanos_since_epoch = 128414000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353049, nanos_since_epoch = 708406000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831078, nanos_since_epoch = 14872000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353048, nanos_since_epoch = 606702000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831078, nanos_since_epoch = 395639000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353080, nanos_since_epoch = 562940000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831095, nanos_since_epoch = 72101000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"validators": [
|
"validators": [
|
||||||
|
@ -23,8 +23,8 @@
|
||||||
"$ref": "#/definitions/Data"
|
"$ref": "#/definitions/Data"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"compiledCode": "590341010000323232323232323232222533300532323253330083002300a3754601a60166ea800c5288a50323253330093003300b3754008264a66601c002012264a66601e602200426493192999806180300089929998088008060992999809180a00109924ca66601c601060206ea80044c94ccc04c0040384c94ccc050c0580084c9265333010300a30123754002264a66602a00202026464a66602e002024264a6660306034004264649319299980b1808000899299980d80080b099299980e180f00109924c64a6660326026002264a66603c002032264a66603e6042004264931980980080d00d192999999811000880080d00d00d00d180f800980e1baa002153330193012001132533301e00101913232533302000101b13232533302200101d132533302330250021498078c94cccccc0980040780780784dd680080f1811800981180119299999981200080e00e00e09bad00101c3021001302100232533333302200101a01a01a1375a002034603e00260386ea8008060c068dd500080b99299999980f800880080b80b80b80b980e000980c9baa00315333016300f0011533301a3019375400629300a80a980b9baa0023300c00301301332533333301b001100101301301301330180013018002325333333019001100101101101101130160013013375400201e01e64a66666602e002200201e01e01e01e602800260226ea8004034034c94cccccc0540044004034034034034c048004c03cdd50010a99980618028008a99980818079baa002149802c02cc034dd50008051929999998090008800805005005005180780098061baa0040082232533300b3005001132533301000100b132533301130130021498030c94cccccc0500040300300300304dd7000980880098071baa0031533300b3004001132533301000100b132533301130130021498030c94cccccc0500040300300300304dd7000980880098071baa00300a300c37540046e1d2002370e9000299999980600188018020020020020a4c2a6600c9211856616c696461746f722072657475726e65642066616c73650013656153300249012365787065637420646174756d3a2054657374446174756d203d207261775f646174756d00165734ae7155ceaab9e5573eae855d12ba41",
|
"compiledCode": "5902c50100003232323232323222253330043232325333007300230083754601660126ea800c5288a5032325333008300330093754008264a6660180022c264a66601a601e00426493192999805980300089929998078008b0992999808180900109924ca66601a6010601c6ea80044c94ccc044004584c94ccc048c0500084c926533300f300a30103754002264a6660260022c26464a66602a0022c264a66602c6030004264649319299980a9808000899299980c8008b099299980d180e00109924c64a6660306026002264a6660380022c264a66603a603e0042649318098008b19299999981000088008b0b0b0b180e800980d1baa002153330183012001132533301c0011613232533301e001161323253330200011613253330213023002149858c94cccccc0900045858584dd68008b181080098108011929999998110008b0b0b09bad00116301f001301f0023253333330200011616161375a0022c603a00260346ea800858c060dd50008b19299999980e80088008b0b0b0b180d000980b9baa00315333015300f00115333018301737540062930b0b180a9baa002300c00316325333333019001100116161616301600130160023253333330170011001161616163014001301137540022c2c64a66666602a00220022c2c2c2c6024002601e6ea80045858c94cccccc04c004400458585858c040004c034dd50010a99980598028008a99980718069baa00214985858c02cdd50008b19299999980800088008b0b0b0b180680098051baa0041623253330093004001132533300d00116132533300e3010002149858c94cccccc044004585858584dd7000980700098059baa002153330093003001132533300d00116132533300e3010002149858c94cccccc044004585858584dd7000980700098059baa00216300937540026e1d2002370e9000299999980500188018b0b0b0b0a4c26cacae6955ceaab9e5573eae855d12ba41",
|
||||||
"hash": "4ab81bc59370bdc62dc58c35c91f0e6703a4c4b3b9cd1e76c8ded83b"
|
"hash": "a1de9567e5106b03e8d8918c356902caa66c196db9f515be2b3eb9ee"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353073, nanos_since_epoch = 614646000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831087, nanos_since_epoch = 901025000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353080, nanos_since_epoch = 542677000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831095, nanos_since_epoch = 812343000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353072, nanos_since_epoch = 273966000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831088, nanos_since_epoch = 549014000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"validators": [
|
"validators": [
|
||||||
|
@ -25,8 +25,8 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"compiledCode": "5901ac0100003232323232323232323222323225333007323253330093005300b3754601e602000426464a666016600e601a6ea8cc00400c8cdd7980198079baa00100a1533300b3007300d375466002006466ebcc00cc03cdd50008050a5114a02a660189215f65787065637420536f6d65285f696e70757429203d0a2020202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001622323300100100322533301200114c0103d87a8000132325333010300500213374a90001980a80125eb804cc010010004c058008c0500048c04000454cc029240121657870656374204d696e74285f706f6c6963795f696429203d20707572706f736500163758601c60166ea8c038004c028dd50008a4c2a6601092011856616c696461746f722072657475726e65642066616c73650013656533333300d002153330053001300737540042a66601260106ea8008526004004004004004004370e90000a998012481085f723a20566f696400165734ae7155ceaab9e5573eae815d0aba257481",
|
"compiledCode": "58e601000032323232323232322232322533300632325333008300530093754601a601c00426464a666014600e60166ea8cc00400c8cdd7980198069baa00100a1533300a3007300b375466002006466ebcc00cc034dd50008050a5114a02c44646600200200644a6660200022980103d87a800013232533300f300500213374a90001980980125eb804cc010010004c050008c0480048c03800458dd6180618049baa300c0013008375400229309b2b29999998058010a999802180098029baa00215333007300637540042930b0b0b0b0b0b1b87480015cd2ab9d5573caae7d5d02ba15744ae91",
|
||||||
"hash": "befc649df2b68f298c49e4cff0e9649e2ccf2cfc1665be4c507f15d6"
|
"hash": "8056b66edabd51b446ba2d53056ca02dad2887337d07a454167832ae"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"validators": [
|
"validators": [
|
||||||
|
@ -23,8 +23,8 @@
|
||||||
"$ref": "#/definitions/Data"
|
"$ref": "#/definitions/Data"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"compiledCode": "5884010000323232322322253330063370e00690487777c9cfdde5c8f27bf4c1637fc55b5eeef7d8c4d9e0d4454967ff7d6e7ee6e242eb60c6318a4c2a6600e9211856616c696461746f722072657475726e65642066616c7365001365653333330050010020020021375a0020042a660049210a646174756d3a20496e7400165734ae715d21",
|
"compiledCode": "584d01000032322322253330053370e00690487777c9cfdde5c8f27bf4c1637fc55b5eeef7d8c4d9e0d4454967ff7d6e7ee6e242eb60c6318a4c26caca6666660060022c2c2c26eb4004595cd2ba41",
|
||||||
"hash": "7fb7ba29b94d55ef2cb11efc85ec3e85ce32f092c41743b2cb8a6e08"
|
"hash": "120810ff95afdddf5d16b151eab83312bfafda68c8e30f85bd9c914e"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
},
|
},
|
||||||
"license": "Apache-2.0"
|
"license": "Apache-2.0"
|
||||||
},
|
},
|
||||||
|
@ -25,8 +25,8 @@
|
||||||
"$ref": "#/definitions/Data"
|
"$ref": "#/definitions/Data"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"compiledCode": "585e0100003232222533300453330043375e004006266e3d22010b68656c6c6f20776f726c640048810b68656c6c6f20776f726c640014a02930a99802a4811856616c696461746f722072657475726e65642066616c736500136565734ae701",
|
"compiledCode": "581c01000032222533300453330043375e00400629445280a4c26cacae69",
|
||||||
"hash": "7dfcec1b2545d65c610e85bc608458efc30b94ebb6171bb5f2759a45"
|
"hash": "8be8ae44ae022691acf356eae743ba402b8b7918f1e54092367ae0b7"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
|
@ -24,5 +24,5 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/fuzz@main" = [{ secs_since_epoch = 1719353072, nanos_since_epoch = 396481000 }, "a8294651f1577c671d580c99c9bc5445ef1fd44e4aa3dde550434a4cbc8d50b6"]
|
"aiken-lang/fuzz@main" = [{ secs_since_epoch = 1721831088, nanos_since_epoch = 511891000 }, "a8294651f1577c671d580c99c9bc5445ef1fd44e4aa3dde550434a4cbc8d50b6"]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353072, nanos_since_epoch = 284242000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831088, nanos_since_epoch = 438426000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -13,4 +13,4 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353045, nanos_since_epoch = 658069000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831077, nanos_since_epoch = 252706000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -24,5 +24,5 @@ requirements = []
|
||||||
source = "github"
|
source = "github"
|
||||||
|
|
||||||
[etags]
|
[etags]
|
||||||
"aiken-lang/fuzz@main" = [{ secs_since_epoch = 1719353045, nanos_since_epoch = 907622000 }, "a8294651f1577c671d580c99c9bc5445ef1fd44e4aa3dde550434a4cbc8d50b6"]
|
"aiken-lang/fuzz@main" = [{ secs_since_epoch = 1721831077, nanos_since_epoch = 488991000 }, "a8294651f1577c671d580c99c9bc5445ef1fd44e4aa3dde550434a4cbc8d50b6"]
|
||||||
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1719353045, nanos_since_epoch = 657299000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
"aiken-lang/stdlib@main" = [{ secs_since_epoch = 1721831077, nanos_since_epoch = 254488000 }, "a746f5b5cd3c2ca5dc19c43bcfc64230c546fafea2ba5f8e340c227b85886078"]
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
"plutusVersion": "v2",
|
"plutusVersion": "v2",
|
||||||
"compiler": {
|
"compiler": {
|
||||||
"name": "Aiken",
|
"name": "Aiken",
|
||||||
"version": "v1.0.29-alpha+e856fc6"
|
"version": "v1.0.29-alpha+dfce9c1"
|
||||||
},
|
},
|
||||||
"license": "Apache-2.0"
|
"license": "Apache-2.0"
|
||||||
},
|
},
|
||||||
|
@ -27,8 +27,8 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"compiledCode": "58460100003232323222253330043370e6eb4c01cc018dd5001a40042930a99802a4811856616c696461746f722072657475726e65642066616c736500136565734ae7155cf2ba11",
|
"compiledCode": "582401000032323222253330043370e6eb4c018c014dd5001a400429309b2b2b9a5573cae841",
|
||||||
"hash": "0f3b69fc2e974a443d2e09c6bb99985d83e905a74db65f78c0da2191"
|
"hash": "047dafbc61fb4a550a28398bde3680c48ff2000cf1022efc883124cd"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"definitions": {
|
"definitions": {
|
||||||
|
|
Loading…
Reference in New Issue