Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions Scarb.lock
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ dependencies = [
[[package]]
name = "bounded_int"
version = "0.1.0"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=bbe3e469bc636b89c37cb385854447bd46277b3b#bbe3e469bc636b89c37cb385854447bd46277b3b"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=120f11fa01001856cb2c30ff045d97aa3ac77224#120f11fa01001856cb2c30ff045d97aa3ac77224"

[[package]]
name = "client"
Expand Down Expand Up @@ -59,7 +59,7 @@ source = "git+https://github.com/keep-starknet-strange/shinigami.git?rev=1963116
[[package]]
name = "stwo_cairo_air"
version = "0.1.0"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=bbe3e469bc636b89c37cb385854447bd46277b3b#bbe3e469bc636b89c37cb385854447bd46277b3b"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=120f11fa01001856cb2c30ff045d97aa3ac77224#120f11fa01001856cb2c30ff045d97aa3ac77224"
dependencies = [
"stwo_constraint_framework",
"stwo_verifier_core",
Expand All @@ -68,15 +68,15 @@ dependencies = [
[[package]]
name = "stwo_constraint_framework"
version = "0.1.0"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=bbe3e469bc636b89c37cb385854447bd46277b3b#bbe3e469bc636b89c37cb385854447bd46277b3b"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=120f11fa01001856cb2c30ff045d97aa3ac77224#120f11fa01001856cb2c30ff045d97aa3ac77224"
dependencies = [
"stwo_verifier_core",
]

[[package]]
name = "stwo_verifier_core"
version = "0.1.0"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=bbe3e469bc636b89c37cb385854447bd46277b3b#bbe3e469bc636b89c37cb385854447bd46277b3b"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=120f11fa01001856cb2c30ff045d97aa3ac77224#120f11fa01001856cb2c30ff045d97aa3ac77224"
dependencies = [
"bounded_int",
]
Expand Down
10 changes: 8 additions & 2 deletions Scarb.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
[workspace]
members = ["packages/*"]
members = [
"packages/assumevalid",
"packages/client",
"packages/consensus",
"packages/utils",
"packages/utreexo"
]

[workspace.package]
description = "Bitcoin ZK client."
Expand All @@ -21,7 +27,7 @@ enable-gas = false
sierra-replace-ids = true
# NOTE: this flag set causes build errors in Cairo 2.12.0 (because of use of print right before a panic).
# Use only for assumevalid package.
unsafe-panic = true
#unsafe-panic = true

[profile.release.cairo]
enable-gas = false
2 changes: 1 addition & 1 deletion packages/assumevalid/Scarb.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ allow-syscalls = true
cairo_execute = "2.11.4"
consensus = { path = "../consensus" }
utils = { path = "../utils" }
stwo_cairo_air = { git = "https://github.com/starkware-libs/stwo-cairo", rev = "bbe3e469bc636b89c37cb385854447bd46277b3b", features = ["minimal_verifier", "qm31_opcode"] }
stwo_cairo_air = { git = "https://github.com/starkware-libs/stwo-cairo", rev = "120f11fa01001856cb2c30ff045d97aa3ac77224", features = ["minimal_verifier", "qm31_opcode"] }

[features]
default = ["syscalls"]
Expand Down
52 changes: 52 additions & 0 deletions packages/stone_wrapper/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
install-stone:
wget -O /tmp/stone-prover-linux-x86_64.deb https://github.com/dipdup-io/stone-packaging/releases/latest/download/stone-prover-linux-x86_64.deb
sudo dpkg -i /tmp/stone-prover-linux-x86_64.deb

install-swiftness:
cargo install --git https://github.com/m-kus/integrity-calldata-generator --rev e6206805dfe481cbd8f1fbf2629957ae505a8828 swiftness

build:
scarb --profile release build --package stone_wrapper

execute:
scarb execute \
--package stone_wrapper \
--arguments-file tests/data/stwo_adapter_proof.json \
--print-resource-usage

bootload:
mkdir -p target
python3 ../../scripts/data/generate_program_input.py \
--executable target/release/stone_wrapper.executable.json \
--args-file tests/data/stwo_adapter_proof.json \
--program-hash-function poseidon \
--output target/program-input.json
cairo_program_runner \
--program ../../bootloaders/simple_bootloader_compiled.json \
--program_input target/program-input.json \
--air_public_input target/pub.json \
--air_private_input target/priv.json \
--trace_file $$PWD/target/trace \
--memory_file $$PWD/target/memory \
--layout recursive_with_poseidon \
--proof_mode

prove:
cpu_air_prover -v=1 \
--logtostderr \
--parameter_file stone_params.json \
--prover_config_file stone_config.json \
--private_input_file target/priv.json \
--public_input_file target/pub.json \
--out_file target/proof.json \
--generate_annotations true

calldata:
rm -rf ./tests/data/calldata
mkdir ./tests/data/calldata
swiftness --proof target/proof.json --layout recursive_with_poseidon --hasher keccak_160_lsb --stone-version stone6 --out tests/data/calldata

register-fact:
JOB_ID=$$((RANDOM % 10000 + 1)); \
echo "Job $$JOB_ID"; \
./scripts/register_fact.sh $$JOB_ID recursive_with_poseidon keccak_160_lsb stone6 cairo1
13 changes: 13 additions & 0 deletions packages/stone_wrapper/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Stone wrapper

An adapter program that makes it possible to verify Raito proof with [Stone](https://github.com/starkware-libs/stone-prover) prover.

## Install

To install Stone prover follow the instructions at https://stone-packaging.pages.dev/

## Proving flow

To produce a Stone compatible proof we need to perform two steps:
1. Generate a Stwo proof that can be verified by a Cairo program, provable with Stone; this mostly means using Poseidon instead of Blake2s as commitments/channel has function.
2. Generate a Stone proof of a program that verifies Stwo proof and forwards the verification output; that's what the current package does.
47 changes: 47 additions & 0 deletions packages/stone_wrapper/Scarb.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Code generated by scarb DO NOT EDIT.
version = 1

[[package]]
name = "bounded_int"
version = "0.1.0"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=c273eed286f20681d9e94aa7a7125b8fea8d7a85#c273eed286f20681d9e94aa7a7125b8fea8d7a85"

[[package]]
name = "stone_wrapper"
version = "0.1.0"
dependencies = [
"stwo_cairo_air",
]

[[package]]
name = "stwo_cairo_air"
version = "0.1.0"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=c273eed286f20681d9e94aa7a7125b8fea8d7a85#c273eed286f20681d9e94aa7a7125b8fea8d7a85"
dependencies = [
"bounded_int",
"stwo_constraint_framework",
"stwo_verifier_core",
"stwo_verifier_utils",
]

[[package]]
name = "stwo_constraint_framework"
version = "0.1.0"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=c273eed286f20681d9e94aa7a7125b8fea8d7a85#c273eed286f20681d9e94aa7a7125b8fea8d7a85"
dependencies = [
"stwo_verifier_core",
]

[[package]]
name = "stwo_verifier_core"
version = "0.1.0"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=c273eed286f20681d9e94aa7a7125b8fea8d7a85#c273eed286f20681d9e94aa7a7125b8fea8d7a85"
dependencies = [
"bounded_int",
"stwo_verifier_utils",
]

[[package]]
name = "stwo_verifier_utils"
version = "0.1.0"
source = "git+https://github.com/starkware-libs/stwo-cairo?rev=c273eed286f20681d9e94aa7a7125b8fea8d7a85#c273eed286f20681d9e94aa7a7125b8fea8d7a85"
13 changes: 13 additions & 0 deletions packages/stone_wrapper/Scarb.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[package]
name = "stone_wrapper"
version = "0.1.0"
edition = "2024_07"

[executable]

[dependencies]
cairo_execute = "2.12.0"
stwo_cairo_air = { git = "https://github.com/starkware-libs/stwo-cairo", rev = "c273eed286f20681d9e94aa7a7125b8fea8d7a85", default-features = false, features = ["poseidon252_verifier"] }

[cairo]
enable-gas = false
82 changes: 82 additions & 0 deletions packages/stone_wrapper/scripts/register_fact.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
#!/usr/bin/env bash

# File: https://github.com/HerodotusDev/integrity-calldata-generator/blob/main/cli/verify.sh

CALLDATA_DIR="tests/data/calldata"

# See https://github.com/HerodotusDev/integrity/blob/main/deployed_contracts.md
INTEGRITY_PROXY="0x16409cfef9b6c3e6002133b61c59d09484594b37b8e4daef7dcba5495a0ef1a"

if [ $# -ne 5 ]; then
echo "Usage: $0 <job_id> <layout> <hasher> <stone_version> <memory_verification>"
exit 1
fi

string_to_hex() {
input_string="$1"
hex_string="0x"
for ((i = 0; i < ${#input_string}; i++)); do
hex_char=$(printf "%x" "'${input_string:$i:1}")
hex_string+=$hex_char
done
echo "$hex_string"
}

job_id=$1
layout=$(string_to_hex $2)
hasher=$(string_to_hex $3)
stone_version=$(string_to_hex $4)
memory_verification=$(string_to_hex $5)

send_transaction() {
local retries=5
local count=0
local status=0

while [[ $count -lt $retries ]]; do
sncast \
--wait \
invoke \
--contract-address "${INTEGRITY_PROXY}" \
--function "$1" \
--calldata "$3 $(<$2)"

sleep 5 # extra delay to make sure the transaction is registered

status=$?

if [[ $status -eq 0 ]]; then
return 0
else
echo "Transaction failed with status $status. Retrying... ($((count + 1))/$retries)"
fi

count=$((count + 1))
done

echo "Transaction failed after $retries attempts."
return $status
}

echo ""
echo "Sending verify_proof_initial"
send_transaction "verify_proof_initial" "${CALLDATA_DIR}/initial" "$job_id $layout $hasher $stone_version $memory_verification"

i=1
while true; do
filename="${CALLDATA_DIR}/step${i}"

if [[ -e "$filename" ]]; then
echo ""
echo "Sending verify_proof_step (${i})"
send_transaction "verify_proof_step" "$filename" "$job_id"
else
break
fi

((i++))
done

echo ""
echo "Sending verify_proof_final_and_register_fact"
send_transaction "verify_proof_final_and_register_fact" "${CALLDATA_DIR}/final" "$job_id"
3 changes: 3 additions & 0 deletions packages/stone_wrapper/snfoundry.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[sncast.default]
url = "https://starknet-sepolia.public.blastapi.io/rpc/v0_8"
account = "test"
10 changes: 10 additions & 0 deletions packages/stone_wrapper/src/lib.cairo
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
use stwo_cairo_air::{CairoProof, VerificationOutput, get_verification_output, verify_cairo};

#[executable]
fn main(proof: CairoProof) -> VerificationOutput {
let output = get_verification_output(proof: @proof);

verify_cairo(proof);

output
}
9 changes: 9 additions & 0 deletions packages/stone_wrapper/stone_config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"cached_lde_config": {
"store_full_lde": false,
"use_fft_for_eval": false
},
"constraint_polynomial_task_size": 256,
"n_out_of_memory_merkle_layers": 6,
"table_prover_n_tasks_per_segment": 1024
}
32 changes: 32 additions & 0 deletions packages/stone_wrapper/stone_params.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"field": "PrimeField0",
"channel_hash": "poseidon3",
"pow_hash": "keccak256",
"commitment_hash": "keccak256_masked160_lsb",
"verifier_friendly_commitment_hash": "poseidon3",
"n_verifier_friendly_commitment_layers": 23,
"verifier_friendly_channel_updates": true,
"statement": {
"page_hash": "pedersen"
},
"stark": {
"fri": {
"fri_step_list": [
0,
3,
3,
3,
3,
3,
3,
3,
2
],
"last_layer_degree_bound": 64,
"n_queries": 14,
"proof_of_work_bits": 40
},
"log_n_cosets": 4
},
"use_extension_field": false
}
1 change: 1 addition & 0 deletions packages/stone_wrapper/tests/data/calldata/final
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x8 0x8 0x8 0x1e 0x17 0x1e 0x17 0x1d5a1033957f580d0ae918dbcb5b8167486a2af7a444027e6b4092fffce0238 0x8 0x1b 0x17 0x1b 0x17 0x297f020129a0fca2017d6f92d055518d065b464c7f7638cb0beee5644a2bfba 0x8 0x18 0x17 0x18 0x17 0x70090156700a9003ac5a25d3eaa85964f6d4b0af45bd2745af24e6f2e959141 0x8 0x15 0x17 0x15 0x17 0x443e9df67ff5bf802035f19e545d658dca39b60249d83a91951ff5c68910ab 0x8 0x12 0x17 0x12 0x17 0x58a30808a7ad1e8470a9948049a90858273a6c60355e921110afc8215a713fd 0x8 0xf 0x17 0xf 0x17 0x15cd740c7f1da5acf56cb7bc18906a42eb5d004371d336674f8a97dee33e7ca 0x8 0xc 0x17 0xc 0x17 0x4ba94e56dee3b9e4c7e068c1914fe4f1d260cbea89af10deb7c954df85e62dd 0x4 0xa 0x17 0xa 0x17 0x70ddf135a531e9e15a36c4ea06a57260cd044ba5afc207e4b861402a779464c 0x8 0x3544d755995d1cd31b47f28d200ddab552659b5d92a47b604cbd3fb6ae2887f 0x169247c088e64f5d056b068b83aef59c8578722cb4bc1932bce65d4f7333a3e 0x5c0a54dc0a4e9c57ffcd9d38cd36f94dac2be78253f228094d3cad27d6abfa7 0x4e28423e862e66aa275d0589fa0573b5e7d58f7895c0c9c0feea6005e82868d 0x3a156bf41aa7c3039a47a9e2e68ff4a96a086e5de3e309f622382b84bf9ca39 0x45b66524c9f31ca8afa54683a3db8796a086bff9e7a9f7f6a0eb97db4cce788 0x2bcb856561bffd170b68f1fbd1cce0efdbede62ed3f0331f761602503273e0b 0x4906402b6895bc8cc191785691a760282f72d2c5c68112ce40ca83c6d13314 0x8 0x3 0x3 0x3 0x3 0x3 0x3 0x3 0x2 0x6e5634a390d5186883cccbcea8262c83748b9d0a0785c070079b45f4e8db4b0 0x8 0xe 0x62 0x58b6932c38be37a0be71407e69fa12324941fcf18e6deacbf6fabc727047122 0x60bc2a73094b969a6af3b88286caff675ed7f5b1b990bc0f872a68cd55ffcca 0x70 0x7fccd1b26892fede4adec6c86ca6b98b62950513a37eeeaecc9d0a473404ed4 0x572451a9524329af00bfe35a20de976df1a01375960abe14f3db571f4f633fa 0x71 0x24be6148aa6551ea4c6ed0682d9043b48d64c44240fb7d92a41314bcef77a20 0x28dbae56adbcd760ff401ca5df2168920e5fec8a69f541eb0c24a8e0b09cc07 0x7c 0x570cdb1fa2808819681eda2bae20f45f95e1dd86cf7ecd26a194f876b28b9dc 0x9e44a3e6882e6d2ca5fdbb137c8098849e9985b8fba620930e3ad6b0eb83e2 0x8b 0xd0434d12d0d0f61534f24bdb76d2602431f5edc1752497f69e10a17f7b680e 0xd4b18dcf399202b4e19e8046d047f87fe2f97db7abe8dc788f43646a12023 0xc8 0x27943227c317f53da3d13fb28e01ed04cc8402e868929c9e91be8bde15b2990 0x419ae6c68e5dfa5ad20169627dc52d17a582c720a634fb5c1ac6b7884ae0447 0x1c5 0x7a7ebd5e6e4c6d21c473cf64205d3bc640023a51defb5eda61c76f9dfbce3e 0x820ba9c6377afffd41f865e9d6f8b0870c6b5cb2fd733ab50a4417f2e2d92f 0x1d7 0x201a129964173add6af75a3a0309c54a801d92f6a479874a55a946fa8efe447 0x2ca4d258096726ec4651e9d35b4f104c864ae672529cad6aa38c7c53a3a9199 0x215 0x760f39fd3ff7c6c82707e78d85b884680123782c0ca123f60115f95fcdd08ec 0x5c3ce3be43cff10bc1c1315c7b3993a3af43468562624ccdbfd7c638cf73d0e 0x2e7 0xe815c637413d53bff69c7f5e0b69d191c8ca4c0b42d7559f762bd1d6d94b03 0x5729d841655b95574489623516d9485029e7b070bb47297743b0ff806511def 0x327 0x49f065ce22673c3fc57e5e29366ff2b99830b0f1bb28d53ea39ba7006dd6343 0xb0e4e7aa1649fda57dfee9d11ea1f4652566ffe243153454e6ce203663f1e5 0x32a 0x118aa7e65d48b518ccb34c2ec2354fc9c08c648c59dd0ca1a87aa59fd33e2d7 0x348322dcf4063dbbef22a4fb92245c6cace9a6f89bc6856ff8075d671957c70 0x373 0x510ae89a8131a222d4583200a083e6edb0fde80f5ce96b8aac7a17e488eecec 0x354bb506dbc33cb434205e4662363b7bd75092967b8ed88ab74f381f1d0779f 0x3ef 0x63e1df3a49595c1dbcf6c4367e6cb2a5250b3c645b88f0b69ee9ffb21a5290c 0x6ac4625f6ad7e0b30ffa8fda3b9694fc82654379152fd54f47cc829352f35a5 0x40 0x1e3305604b06ae76f5faafc936ff86ecdba510c0a8a2ed9a7119478241d8569 0x23f4e26af374741671ebdd6df012934e6fab55a7ae5003bce5501650fbca7ed 0x5c99071afc006b5bde199c067d5915111957b93419dbd38927296016d1930d6 0x7d84f637a90b916fc8d6fcae62b064ed81e91ed44ecd5fdf3b36edae90f5de8 0x22bf82a5b2673292ea6a77e5f95fa963e69d2442535d98be44b96cd28b90256 0x3325e4fe4c9dddc18c8c1911e1d2c64551bd5a0049e29c95ca8a44ea1131bf8 0x7f853dd398704564a0a9e3bbec190981afc7b80a8512875c6120d636214a27 0xcf2912f0211db4f75c47ea306e3f9d1b3a2dff82811c9a23f5ea4d79586475 0x29a5425d5643050abd270ee4683fcc207b86512875d1ef2a3f76ff56a7440 0x6c2d5d127d99a360cd5c99c687f15e843a06e128e8aab5b36434ca54613da06 0x233ea47ae3227747ae0c30bc67384899235c1cdbb3aff68bd400934841fe416 0x6c33f44d60e7b97e6cf9749b84e1998908e4a422bac3f0894b34eec3ead175d 0x3a6b136a92f7cf3073fbebc2840ed1ce3aaa83a94bb93d8a4b2884853482b58 0x72f019bb3964e0ef0596ede6dadb5b0fdf72bb3c779c9250dd6d255cab0d785 0x7ec11706a79a4bdf9c199249086f854589da2fda3a5dd67229d5107dd33da06 0x66d07730a8a3a6488857683ce27deeb2423a46ebbb2d961e120efc1f8c62f33 0x7ba4e62210b4d82477ff91f9b70021f2ea890e729606a63db574c0436db0fd2 0x36c6f704e057dc8fa07fef84fcb51951ccc570d60a4c96e96607412bc5af11d 0x662e37708d4fbf720438bc37682e79624262e2d8779a8a50cbc02ede08a6421 0x3d06721768f6532f3e8ef61558f8bd055f57edc0d6abe3dce976f5a9546be6b 0xf5ddb9dd1dbea6edd2cf331981e58e1002500a1e50e0c090ee521a1f11e220 0x4ca6404c7b3529923e7ba0026c6400bda723c426dee23374aa70f91360996a4 0x5beaa59ea37428ab88ef570bf380d0722284c05e43af537b9b88e52fb227089 0x71d309af112ca3e8eb3491286114c106304f4e7264bc9a1b0337048a7d7ff46 0x57b2682ecf9295a3e07f511fb0c9781c1dc1845ff7bb7118bd59c071f417baa 0x4f5bbc9dd48595c20141e1885be8631e89dbee9297a841207442a19a8a1139e 0x780f1116ed7e037fe7aac833d5d5ed83d2adb37a751bd5e461a2f447a80d253 0xb6ae0606dcd71da37ebe1182aa11381caf2c3f578be0a493cb1be5b10169d3 0x3e8e64251eb6f5171048954e6e8604a0e9fc850f2e81a41bb3b7274ca281c07 0x34468e2ebc9ae49e8467ac65a2c5916d06d25dd4d2615a7f938c2d51b1b19b1 0x79cda52b51dc173452e5e0dfbbd509ac767b4ef887fa1da4bd51fa4111ad078 0x22aea9fb178ebf68dfe6135aa3e2a7a299f738ef414e8c57a795b1e852146f9 0x7d5e3529c05f9d2910d29f2a09eb5af4c7713343dbf9bf294ee00858e1475ab 0x2be749b61e5699c887ee921516801fd845a0c8aa80efe487da576a5eb7efdd 0x200af1eb5bd27edb538dfd8f876a145d90cce32d5bc36dd37e9aef74808bf12 0x5526e10dba46c9350c4299a3e8d59c1b7c0b908f91ec1ca92fdc1e6febcea1 0x2693c87b207c457f2e1970291acaf170303cd784f43c25a7d583752dd8ffb0f 0x76f6c6ec910ef013f831cfadf79abede57218994c7266aa54a8e0da0208ae41 0x8faad30044e54326108caa9c3c6a918a3b51c72915272e5a6be51ce114ecd5 0x1b59dd8bc2aa620d4f32c4ff02715a98b33b9a21854e7600bf29dc512a7c4e1 0x4f8264b43270220b182d03ece101717cbb773d6665fd7bf48d3b03a0a3e14a8 0x3ea2a67c8d36d07a2942e243944c389c4e3a52f510d8bbc5b1622e818c9b99c 0x3a8b1007a34c335ecd280f89fc5988fa817a2ca759ebb1d5f71b3b022be5356 0x6d83cb431baf3226d8353dfa632006438f7c47b0f5f4e462a9b0a70be47736f 0x11a0cb0269fb8c10aa132895f9e50f82cd52000859d6aef433585d376739e3 0x24a1d9c0dd29fb4992354124b0ac9b322a99560644de81ee7da24982fcb565d 0x4679ff77de2548bead9e1699506bc33b6fbfd0300c10cca4b286df02dcf5a4d 0x9896f9aa3d1922eb0403601a62f620f6713c204a950970c378e952660141a3 0x23bb2197270977e2635ce8adc56d0aa2d166592846352ca2a1c2e29c901a71e 0x60d9305a32ad71a1f2356dc94646de25361bc020e66310b9ff8bf6e44c5cbea 0x319de64ea6ab263b6220a7059ba216cb0c3a7a7ff0f30b000b9db86e8211fdf 0x644a04a75f1d2a353237ac7e7fa1aec641fefc1e6a21cde6f1d740c5e7fd57a 0x2429d57992c8a9c83a70961a2887f9861c69e418425960c7966c9df39cee874 0x1790b25611a475ecfa7ba75cf186bf799a64e44f9fca6cf0a18d1eefba251d0 0xaeed1cfe44aeb2cec84d073ec702639a97efcb59379b9e3a45ba88c0400efc 0x638ee741eea43c8bf2c264985a0c4a7ceb93b35f8f18692ae9aea2a9cdb326e 0x59e373e7cb01094a1ce57f40db93f84553e31c08d939882dd8bfca75579644e 0x235e95b8c3e7f1170828196c2ccc36b8ac7aec97e388fe83a72439c98a984e2 0x2e6abecbc53a1e196bb09c03b422c0554ce7c58cc4b2821c0c0c4109c742306 0x2469a37695190c36b1bdf1af8ae8e6e8d2677a2d07c56555eddcf27f5877023 0x23e2d0288f74c8c3ce1622f98671c7a00cd726ee8e8c6ee9943bf58519bddd7 0x2fc286beabe3906a18d8f50a090501fd4d97db7317b1ba505f9268df052274d 0x44c748f9a6529e6f753eaa2bbcb45d4cfb46531be70dbe2f17878943ab67ac4 0x761c886c6ceec1ebd68f08d7348272c646be0939daf3273f0aba6e52769f24b
1 change: 1 addition & 0 deletions packages/stone_wrapper/tests/data/calldata/initial

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions packages/stone_wrapper/tests/data/calldata/step1

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions packages/stone_wrapper/tests/data/calldata/step2

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions packages/stone_wrapper/tests/data/calldata/step3

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions packages/stone_wrapper/tests/data/calldata/step4

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions packages/stone_wrapper/tests/data/calldata/step5

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions packages/stone_wrapper/tests/data/calldata/step6

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions packages/stone_wrapper/tests/data/calldata/step7

Large diffs are not rendered by default.

Loading