extern crate alloc;
use alloc::{string::String, vec::Vec};
use miden_core::Felt;
pub fn masm_store_felts(felts: &[Felt], base_addr: u32) -> String {
felts
.iter()
.enumerate()
.map(|(i, felt)| {
let value = felt.as_int();
format!("push.{value} push.{} mem_store", base_addr + i as u32)
})
.collect::<Vec<_>>()
.join(" ")
}
pub fn masm_push_felts(felts: &[Felt]) -> String {
felts
.iter()
.rev()
.map(|felt| format!("push.{}", felt.as_int()))
.collect::<Vec<_>>()
.join(" ")
}