├── .github └── workflows │ ├── tests.yml │ └── trunk-check.yaml ├── .gitignore ├── .gitmodules ├── .trunk ├── .gitignore ├── configs │ ├── .markdownlint.yaml │ └── .yamllint.yaml └── trunk.yaml ├── LICENSE ├── Makefile ├── README.md ├── bun.lockb ├── cairo_programs ├── cairo │ ├── add.cairo │ ├── hints │ │ ├── alloc_felt_dict.cairo │ │ ├── array_append.cairo │ │ ├── dict_get.cairo │ │ ├── dict_insert.cairo │ │ ├── dict_multiple_insert.cairo │ │ ├── dict_squash.cairo │ │ ├── divmod.cairo │ │ ├── multiple_dict.cairo │ │ ├── span_multi_pop_back.cairo │ │ └── span_multi_pop_front.cairo │ ├── multiple_fn.cairo │ ├── test_less_than_false.cairo │ ├── test_less_than_true.cairo │ ├── u32_overflowing_sub_err.cairo │ └── u32_overflowing_sub_valid.cairo └── cairo_0 │ ├── bad_programs │ ├── bad_range_check96_builtin.cairo │ ├── bad_range_check_builtin.cairo │ ├── error_msg_attr.cairo │ ├── error_msg_attr_tempvar.cairo │ └── error_msg_function.cairo │ ├── benchmarks │ ├── big_factorial.cairo │ ├── big_fibonacci.cairo │ ├── integration_builtins.cairo │ └── pedersen.cairo │ ├── big_struct.cairo │ ├── bitwise_builtin.cairo │ ├── bitwise_output.cairo │ ├── bitwise_recursion.cairo │ ├── call_function_assign_param_by_name.cairo │ ├── ecop_builtin.cairo │ ├── factorial.cairo │ ├── fibonacci.cairo │ ├── function_return.cairo │ ├── function_return_if_print.cairo │ ├── function_return_to_variable.cairo │ ├── if_and_prime.cairo │ ├── if_in_function.cairo │ ├── if_list.cairo │ ├── integration.cairo │ ├── integration_with_alloc_locals.cairo │ ├── jmp.cairo │ ├── jmp_if_condition.cairo │ ├── keccak_builtin.cairo │ ├── keccak_builtin_seed.cairo │ ├── memory_holes.cairo │ ├── multiplicative_inverse.cairo │ ├── pedersen_builtin.cairo │ ├── pointers.cairo │ ├── poseidon_builtin.cairo │ ├── print.cairo │ ├── range_check96_builtin.cairo │ ├── range_check_builtin.cairo │ ├── return.cairo │ ├── reversed_register_instructions.cairo │ ├── simple_print.cairo │ ├── struct.cairo │ ├── test_addition_if.cairo │ ├── test_reverse_if.cairo │ └── test_subtraction_if.cairo ├── docs └── howToImplementAHint.md ├── package.json ├── poetry.lock ├── pyproject.toml ├── src ├── builtins │ ├── bitwise.test.ts │ ├── bitwise.ts │ ├── builtin.ts │ ├── ecdsa.test.ts │ ├── ecdsa.ts │ ├── ecop.test.ts │ ├── ecop.ts │ ├── keccak.test.ts │ ├── keccak.ts │ ├── output.test.ts │ ├── output.ts │ ├── pedersen.test.ts │ ├── pedersen.ts │ ├── poseidon.test.ts │ ├── poseidon.ts │ ├── rangeCheck.test.ts │ ├── rangeCheck.ts │ └── segmentArena.ts ├── cli.ts ├── errors │ ├── builtins.ts │ ├── cairoRunner.ts │ ├── dictionary.ts │ ├── hints.ts │ ├── instruction.ts │ ├── memory.ts │ ├── primitives.ts │ ├── scopeManager.ts │ ├── squashedDictManager.ts │ └── virtualMachine.ts ├── hints │ ├── allocSegment.test.ts │ ├── allocSegment.ts │ ├── assertLeFindSmallArc.ts │ ├── assertLeIsFirstArcExcluded.ts │ ├── assertLeIsSecondArcExcluded.ts │ ├── dict │ │ ├── allocFelt252Dict.test.ts │ │ ├── allocFelt252Dict.ts │ │ ├── felt252DictEntryInit.test.ts │ │ ├── felt252DictEntryInit.ts │ │ ├── felt252DictEntryUpdate.test.ts │ │ ├── felt252DictEntryUpdate.ts │ │ ├── getCurrentAccessDelta.test.ts │ │ ├── getCurrentAccessDelta.ts │ │ ├── getCurrentAccessIndex.test.ts │ │ ├── getCurrentAccessIndex.ts │ │ ├── getNextDictKey.test.ts │ │ ├── getNextDictKey.ts │ │ ├── getSegmentArenaIndex.test.ts │ │ ├── getSegmentArenaIndex.ts │ │ ├── initSquashData.test.ts │ │ ├── initSquashData.ts │ │ ├── shouldContinueSquashLoop.test.ts │ │ ├── shouldContinueSquashLoop.ts │ │ ├── shouldSkipSquashLoop.test.ts │ │ └── shouldSkipSquashLoop.ts │ ├── dictionary.test.ts │ ├── dictionary.ts │ ├── hintHandler.ts │ ├── hintName.ts │ ├── hintParamsSchema.test.ts │ ├── hintParamsSchema.ts │ ├── hintSchema.ts │ ├── math │ │ ├── divMod.test.ts │ │ ├── divMod.ts │ │ ├── testLessThan.test.ts │ │ ├── testLessThan.ts │ │ ├── testLessThanOrEqualAddress.test.ts │ │ └── testLessThanOrEqualAddress.ts │ ├── scopeManager.test.ts │ ├── scopeManager.ts │ ├── squashedDictManager.test.ts │ └── squashedDictManager.ts ├── index.ts ├── memory │ ├── memory.test.ts │ └── memory.ts ├── primitives │ ├── felt.test.ts │ ├── felt.ts │ ├── relocatable.test.ts │ ├── relocatable.ts │ └── segmentValue.ts ├── runners │ ├── cairoRunner.test.ts │ ├── cairoRunner.ts │ ├── layout.test.ts │ └── layout.ts ├── scripts │ ├── compare.ts │ ├── compareCli.ts │ └── run.ts └── vm │ ├── instruction.test.ts │ ├── instruction.ts │ ├── program.test.ts │ ├── program.ts │ ├── virtualMachine.test.ts │ └── virtualMachine.ts ├── tsconfig.json └── tsconfig.types.json /.github/workflows/tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/.github/workflows/tests.yml -------------------------------------------------------------------------------- /.github/workflows/trunk-check.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/.github/workflows/trunk-check.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/.gitmodules -------------------------------------------------------------------------------- /.trunk/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/.trunk/.gitignore -------------------------------------------------------------------------------- /.trunk/configs/.markdownlint.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/.trunk/configs/.markdownlint.yaml -------------------------------------------------------------------------------- /.trunk/configs/.yamllint.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/.trunk/configs/.yamllint.yaml -------------------------------------------------------------------------------- /.trunk/trunk.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/.trunk/trunk.yaml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/README.md -------------------------------------------------------------------------------- /bun.lockb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/bun.lockb -------------------------------------------------------------------------------- /cairo_programs/cairo/add.cairo: -------------------------------------------------------------------------------- 1 | fn main() -> felt252 { 2 | 12 + 10 3 | } 4 | -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/alloc_felt_dict.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/alloc_felt_dict.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/array_append.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/array_append.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/dict_get.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/dict_get.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/dict_insert.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/dict_insert.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/dict_multiple_insert.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/dict_multiple_insert.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/dict_squash.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/dict_squash.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/divmod.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/divmod.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/multiple_dict.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/multiple_dict.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/span_multi_pop_back.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/span_multi_pop_back.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/hints/span_multi_pop_front.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/hints/span_multi_pop_front.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/multiple_fn.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/multiple_fn.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/test_less_than_false.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/test_less_than_false.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/test_less_than_true.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/test_less_than_true.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/u32_overflowing_sub_err.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/u32_overflowing_sub_err.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo/u32_overflowing_sub_valid.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo/u32_overflowing_sub_valid.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/bad_programs/bad_range_check96_builtin.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/bad_programs/bad_range_check96_builtin.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/bad_programs/bad_range_check_builtin.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/bad_programs/bad_range_check_builtin.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/bad_programs/error_msg_attr.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/bad_programs/error_msg_attr.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/bad_programs/error_msg_attr_tempvar.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/bad_programs/error_msg_attr_tempvar.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/bad_programs/error_msg_function.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/bad_programs/error_msg_function.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/benchmarks/big_factorial.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/benchmarks/big_factorial.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/benchmarks/big_fibonacci.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/benchmarks/big_fibonacci.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/benchmarks/integration_builtins.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/benchmarks/integration_builtins.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/benchmarks/pedersen.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/benchmarks/pedersen.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/big_struct.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/big_struct.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/bitwise_builtin.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/bitwise_builtin.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/bitwise_output.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/bitwise_output.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/bitwise_recursion.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/bitwise_recursion.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/call_function_assign_param_by_name.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/call_function_assign_param_by_name.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/ecop_builtin.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/ecop_builtin.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/factorial.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/factorial.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/fibonacci.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/fibonacci.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/function_return.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/function_return.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/function_return_if_print.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/function_return_if_print.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/function_return_to_variable.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/function_return_to_variable.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/if_and_prime.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/if_and_prime.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/if_in_function.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/if_in_function.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/if_list.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/if_list.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/integration.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/integration.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/integration_with_alloc_locals.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/integration_with_alloc_locals.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/jmp.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/jmp.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/jmp_if_condition.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/jmp_if_condition.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/keccak_builtin.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/keccak_builtin.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/keccak_builtin_seed.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/keccak_builtin_seed.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/memory_holes.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/memory_holes.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/multiplicative_inverse.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/multiplicative_inverse.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/pedersen_builtin.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/pedersen_builtin.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/pointers.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/pointers.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/poseidon_builtin.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/poseidon_builtin.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/print.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/print.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/range_check96_builtin.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/range_check96_builtin.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/range_check_builtin.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/range_check_builtin.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/return.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/return.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/reversed_register_instructions.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/reversed_register_instructions.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/simple_print.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/simple_print.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/struct.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/struct.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/test_addition_if.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/test_addition_if.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/test_reverse_if.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/test_reverse_if.cairo -------------------------------------------------------------------------------- /cairo_programs/cairo_0/test_subtraction_if.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/cairo_programs/cairo_0/test_subtraction_if.cairo -------------------------------------------------------------------------------- /docs/howToImplementAHint.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/docs/howToImplementAHint.md -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/package.json -------------------------------------------------------------------------------- /poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/poetry.lock -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/pyproject.toml -------------------------------------------------------------------------------- /src/builtins/bitwise.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/bitwise.test.ts -------------------------------------------------------------------------------- /src/builtins/bitwise.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/bitwise.ts -------------------------------------------------------------------------------- /src/builtins/builtin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/builtin.ts -------------------------------------------------------------------------------- /src/builtins/ecdsa.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/ecdsa.test.ts -------------------------------------------------------------------------------- /src/builtins/ecdsa.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/ecdsa.ts -------------------------------------------------------------------------------- /src/builtins/ecop.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/ecop.test.ts -------------------------------------------------------------------------------- /src/builtins/ecop.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/ecop.ts -------------------------------------------------------------------------------- /src/builtins/keccak.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/keccak.test.ts -------------------------------------------------------------------------------- /src/builtins/keccak.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/keccak.ts -------------------------------------------------------------------------------- /src/builtins/output.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/output.test.ts -------------------------------------------------------------------------------- /src/builtins/output.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/output.ts -------------------------------------------------------------------------------- /src/builtins/pedersen.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/pedersen.test.ts -------------------------------------------------------------------------------- /src/builtins/pedersen.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/pedersen.ts -------------------------------------------------------------------------------- /src/builtins/poseidon.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/poseidon.test.ts -------------------------------------------------------------------------------- /src/builtins/poseidon.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/poseidon.ts -------------------------------------------------------------------------------- /src/builtins/rangeCheck.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/rangeCheck.test.ts -------------------------------------------------------------------------------- /src/builtins/rangeCheck.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/rangeCheck.ts -------------------------------------------------------------------------------- /src/builtins/segmentArena.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/builtins/segmentArena.ts -------------------------------------------------------------------------------- /src/cli.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/cli.ts -------------------------------------------------------------------------------- /src/errors/builtins.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/builtins.ts -------------------------------------------------------------------------------- /src/errors/cairoRunner.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/cairoRunner.ts -------------------------------------------------------------------------------- /src/errors/dictionary.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/dictionary.ts -------------------------------------------------------------------------------- /src/errors/hints.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/hints.ts -------------------------------------------------------------------------------- /src/errors/instruction.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/instruction.ts -------------------------------------------------------------------------------- /src/errors/memory.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/memory.ts -------------------------------------------------------------------------------- /src/errors/primitives.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/primitives.ts -------------------------------------------------------------------------------- /src/errors/scopeManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/scopeManager.ts -------------------------------------------------------------------------------- /src/errors/squashedDictManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/squashedDictManager.ts -------------------------------------------------------------------------------- /src/errors/virtualMachine.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/errors/virtualMachine.ts -------------------------------------------------------------------------------- /src/hints/allocSegment.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/allocSegment.test.ts -------------------------------------------------------------------------------- /src/hints/allocSegment.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/allocSegment.ts -------------------------------------------------------------------------------- /src/hints/assertLeFindSmallArc.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/assertLeFindSmallArc.ts -------------------------------------------------------------------------------- /src/hints/assertLeIsFirstArcExcluded.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/assertLeIsFirstArcExcluded.ts -------------------------------------------------------------------------------- /src/hints/assertLeIsSecondArcExcluded.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/assertLeIsSecondArcExcluded.ts -------------------------------------------------------------------------------- /src/hints/dict/allocFelt252Dict.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/allocFelt252Dict.test.ts -------------------------------------------------------------------------------- /src/hints/dict/allocFelt252Dict.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/allocFelt252Dict.ts -------------------------------------------------------------------------------- /src/hints/dict/felt252DictEntryInit.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/felt252DictEntryInit.test.ts -------------------------------------------------------------------------------- /src/hints/dict/felt252DictEntryInit.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/felt252DictEntryInit.ts -------------------------------------------------------------------------------- /src/hints/dict/felt252DictEntryUpdate.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/felt252DictEntryUpdate.test.ts -------------------------------------------------------------------------------- /src/hints/dict/felt252DictEntryUpdate.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/felt252DictEntryUpdate.ts -------------------------------------------------------------------------------- /src/hints/dict/getCurrentAccessDelta.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/getCurrentAccessDelta.test.ts -------------------------------------------------------------------------------- /src/hints/dict/getCurrentAccessDelta.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/getCurrentAccessDelta.ts -------------------------------------------------------------------------------- /src/hints/dict/getCurrentAccessIndex.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/getCurrentAccessIndex.test.ts -------------------------------------------------------------------------------- /src/hints/dict/getCurrentAccessIndex.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/getCurrentAccessIndex.ts -------------------------------------------------------------------------------- /src/hints/dict/getNextDictKey.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/getNextDictKey.test.ts -------------------------------------------------------------------------------- /src/hints/dict/getNextDictKey.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/getNextDictKey.ts -------------------------------------------------------------------------------- /src/hints/dict/getSegmentArenaIndex.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/getSegmentArenaIndex.test.ts -------------------------------------------------------------------------------- /src/hints/dict/getSegmentArenaIndex.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/getSegmentArenaIndex.ts -------------------------------------------------------------------------------- /src/hints/dict/initSquashData.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/initSquashData.test.ts -------------------------------------------------------------------------------- /src/hints/dict/initSquashData.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/initSquashData.ts -------------------------------------------------------------------------------- /src/hints/dict/shouldContinueSquashLoop.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/shouldContinueSquashLoop.test.ts -------------------------------------------------------------------------------- /src/hints/dict/shouldContinueSquashLoop.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/shouldContinueSquashLoop.ts -------------------------------------------------------------------------------- /src/hints/dict/shouldSkipSquashLoop.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/shouldSkipSquashLoop.test.ts -------------------------------------------------------------------------------- /src/hints/dict/shouldSkipSquashLoop.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dict/shouldSkipSquashLoop.ts -------------------------------------------------------------------------------- /src/hints/dictionary.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dictionary.test.ts -------------------------------------------------------------------------------- /src/hints/dictionary.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/dictionary.ts -------------------------------------------------------------------------------- /src/hints/hintHandler.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/hintHandler.ts -------------------------------------------------------------------------------- /src/hints/hintName.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/hintName.ts -------------------------------------------------------------------------------- /src/hints/hintParamsSchema.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/hintParamsSchema.test.ts -------------------------------------------------------------------------------- /src/hints/hintParamsSchema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/hintParamsSchema.ts -------------------------------------------------------------------------------- /src/hints/hintSchema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/hintSchema.ts -------------------------------------------------------------------------------- /src/hints/math/divMod.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/math/divMod.test.ts -------------------------------------------------------------------------------- /src/hints/math/divMod.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/math/divMod.ts -------------------------------------------------------------------------------- /src/hints/math/testLessThan.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/math/testLessThan.test.ts -------------------------------------------------------------------------------- /src/hints/math/testLessThan.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/math/testLessThan.ts -------------------------------------------------------------------------------- /src/hints/math/testLessThanOrEqualAddress.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/math/testLessThanOrEqualAddress.test.ts -------------------------------------------------------------------------------- /src/hints/math/testLessThanOrEqualAddress.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/math/testLessThanOrEqualAddress.ts -------------------------------------------------------------------------------- /src/hints/scopeManager.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/scopeManager.test.ts -------------------------------------------------------------------------------- /src/hints/scopeManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/scopeManager.ts -------------------------------------------------------------------------------- /src/hints/squashedDictManager.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/squashedDictManager.test.ts -------------------------------------------------------------------------------- /src/hints/squashedDictManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/hints/squashedDictManager.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/memory/memory.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/memory/memory.test.ts -------------------------------------------------------------------------------- /src/memory/memory.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/memory/memory.ts -------------------------------------------------------------------------------- /src/primitives/felt.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/primitives/felt.test.ts -------------------------------------------------------------------------------- /src/primitives/felt.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/primitives/felt.ts -------------------------------------------------------------------------------- /src/primitives/relocatable.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/primitives/relocatable.test.ts -------------------------------------------------------------------------------- /src/primitives/relocatable.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/primitives/relocatable.ts -------------------------------------------------------------------------------- /src/primitives/segmentValue.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/primitives/segmentValue.ts -------------------------------------------------------------------------------- /src/runners/cairoRunner.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/runners/cairoRunner.test.ts -------------------------------------------------------------------------------- /src/runners/cairoRunner.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/runners/cairoRunner.ts -------------------------------------------------------------------------------- /src/runners/layout.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/runners/layout.test.ts -------------------------------------------------------------------------------- /src/runners/layout.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/runners/layout.ts -------------------------------------------------------------------------------- /src/scripts/compare.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/scripts/compare.ts -------------------------------------------------------------------------------- /src/scripts/compareCli.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/scripts/compareCli.ts -------------------------------------------------------------------------------- /src/scripts/run.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/scripts/run.ts -------------------------------------------------------------------------------- /src/vm/instruction.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/vm/instruction.test.ts -------------------------------------------------------------------------------- /src/vm/instruction.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/vm/instruction.ts -------------------------------------------------------------------------------- /src/vm/program.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/vm/program.test.ts -------------------------------------------------------------------------------- /src/vm/program.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/vm/program.ts -------------------------------------------------------------------------------- /src/vm/virtualMachine.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/vm/virtualMachine.test.ts -------------------------------------------------------------------------------- /src/vm/virtualMachine.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/src/vm/virtualMachine.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/tsconfig.json -------------------------------------------------------------------------------- /tsconfig.types.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kkrt-labs/cairo-vm-ts/HEAD/tsconfig.types.json --------------------------------------------------------------------------------