diff --git a/cairo_native/all.html b/cairo_native/all.html index dc818417c..17f52c1fa 100644 --- a/cairo_native/all.html +++ b/cairo_native/all.html @@ -1,2 +1,2 @@ List of all items in this crate -

List of all items

Structs

Enums

Traits

Functions

Type Aliases

Constants

\ No newline at end of file +

List of all items

Structs

Enums

Traits

Functions

Type Aliases

Constants

\ No newline at end of file diff --git a/cairo_native/libfuncs/coupon/fn.build.html b/cairo_native/libfuncs/coupon/fn.build.html new file mode 100644 index 000000000..340cbfb49 --- /dev/null +++ b/cairo_native/libfuncs/coupon/fn.build.html @@ -0,0 +1,12 @@ +build in cairo_native::libfuncs::coupon - Rust +
pub fn build<'ctx, 'this>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<CoreType, CoreLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    selector: &CouponConcreteLibfunc
+) -> Result<()>
Expand description

Generate MLIR operations for the coupon libfuncs. +In native it’s mostly a no-op operation.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/coupon/fn.build_buy.html b/cairo_native/libfuncs/coupon/fn.build_buy.html new file mode 100644 index 000000000..2a95f8e0e --- /dev/null +++ b/cairo_native/libfuncs/coupon/fn.build_buy.html @@ -0,0 +1,11 @@ +build_buy in cairo_native::libfuncs::coupon - Rust +
pub fn build_buy<'ctx, 'this>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<CoreType, CoreLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureAndFunctionConcreteLibfunc
+) -> Result<()>
Expand description

Generate MLIR operations for the coupon libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/coupon/fn.build_refund.html b/cairo_native/libfuncs/coupon/fn.build_refund.html new file mode 100644 index 000000000..b284e3f5d --- /dev/null +++ b/cairo_native/libfuncs/coupon/fn.build_refund.html @@ -0,0 +1,11 @@ +build_refund in cairo_native::libfuncs::coupon - Rust +
pub fn build_refund<'ctx, 'this>(
+    _context: &'ctx Context,
+    _registry: &ProgramRegistry<CoreType, CoreLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _metadata: &mut MetadataStorage,
+    _info: &SignatureAndFunctionConcreteLibfunc
+) -> Result<()>
Expand description

Generate MLIR operations for the coupon libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/coupon/index.html b/cairo_native/libfuncs/coupon/index.html new file mode 100644 index 000000000..f8bbec1cf --- /dev/null +++ b/cairo_native/libfuncs/coupon/index.html @@ -0,0 +1,6 @@ +cairo_native::libfuncs::coupon - Rust +
Expand description

§Branch alignment libfunc

+

Natively compiled code doesn’t need branch alignment because it has no notion of segments. +Because of this, this libfunc is a no-op.

+

Functions§

  • Generate MLIR operations for the coupon libfuncs. +In native it’s mostly a no-op operation.
  • Generate MLIR operations for the coupon libfunc.
  • Generate MLIR operations for the coupon libfunc.
\ No newline at end of file diff --git a/cairo_native/libfuncs/coupon/sidebar-items.js b/cairo_native/libfuncs/coupon/sidebar-items.js new file mode 100644 index 000000000..149217244 --- /dev/null +++ b/cairo_native/libfuncs/coupon/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"fn":["build","build_buy","build_refund"]}; \ No newline at end of file diff --git a/cairo_native/libfuncs/enum.BranchTarget.html b/cairo_native/libfuncs/enum.BranchTarget.html index 51fd36758..bdca5a79a 100644 --- a/cairo_native/libfuncs/enum.BranchTarget.html +++ b/cairo_native/libfuncs/enum.BranchTarget.html @@ -1,5 +1,5 @@ BranchTarget in cairo_native::libfuncs - Rust -
pub enum BranchTarget<'ctx, 'a> {
+    
pub enum BranchTarget<'ctx, 'a> {
     Jump(&'a Block<'ctx>),
     Return(usize),
 }
Expand description

A libfunc branching target.

@@ -7,7 +7,7 @@ statement’s branches using BranchTarget::Return with the branch index.

Variants§

§

Jump(&'a Block<'ctx>)

A block within the current libfunc.

§

Return(usize)

A statement’s branch target by its index.

-

Trait Implementations§

source§

impl<'ctx, 'a> Clone for BranchTarget<'ctx, 'a>

source§

fn clone(&self) -> BranchTarget<'ctx, 'a>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'ctx, 'a> Debug for BranchTarget<'ctx, 'a>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'ctx, 'a> Copy for BranchTarget<'ctx, 'a>

Auto Trait Implementations§

§

impl<'ctx, 'a> Freeze for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> RefUnwindSafe for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> !Send for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> !Sync for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> Unpin for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> UnwindSafe for BranchTarget<'ctx, 'a>

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl<'ctx, 'a> Clone for BranchTarget<'ctx, 'a>

source§

fn clone(&self) -> BranchTarget<'ctx, 'a>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'ctx, 'a> Debug for BranchTarget<'ctx, 'a>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'ctx, 'a> Copy for BranchTarget<'ctx, 'a>

Auto Trait Implementations§

§

impl<'ctx, 'a> Freeze for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> RefUnwindSafe for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> !Send for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> !Sync for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> Unpin for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> UnwindSafe for BranchTarget<'ctx, 'a>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/cairo_native/libfuncs/fn.increment_builtin_counter.html b/cairo_native/libfuncs/fn.increment_builtin_counter.html index 1e379367c..5617e775a 100644 --- a/cairo_native/libfuncs/fn.increment_builtin_counter.html +++ b/cairo_native/libfuncs/fn.increment_builtin_counter.html @@ -1,5 +1,5 @@ increment_builtin_counter in cairo_native::libfuncs - Rust -
pub fn increment_builtin_counter<'ctx: 'a, 'a>(
+    
pub fn increment_builtin_counter<'ctx: 'a, 'a>(
     context: &'ctx Context,
     block: &'ctx Block<'ctx>,
     location: Location<'ctx>,
diff --git a/cairo_native/libfuncs/index.html b/cairo_native/libfuncs/index.html
index 877c6763a..c755cadf8 100644
--- a/cairo_native/libfuncs/index.html
+++ b/cairo_native/libfuncs/index.html
@@ -1,5 +1,5 @@
 cairo_native::libfuncs - Rust
-    

Module cairo_native::libfuncs

source ·
Expand description

§Compiler libfunc infrastructure

+

Module cairo_native::libfuncs

source ·
Expand description

§Compiler libfunc infrastructure

Contains libfunc generation stuff (aka. the actual instructions).

-

Modules§

Structs§

  • Helper struct which contains logic generation for extra MLIR blocks and branch operations to the +

Modules§

Structs§

  • Helper struct which contains logic generation for extra MLIR blocks and branch operations to the next statements.

Enums§

Traits§

  • Generation of MLIR operations from their Sierra counterparts.

Functions§

\ No newline at end of file diff --git a/cairo_native/libfuncs/sidebar-items.js b/cairo_native/libfuncs/sidebar-items.js index 1b702d627..f9fa781ba 100644 --- a/cairo_native/libfuncs/sidebar-items.js +++ b/cairo_native/libfuncs/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"enum":["BranchTarget"],"fn":["increment_builtin_counter"],"mod":["ap_tracking","array","bitwise","bool","box","branch_align","bytes31","cast","const","debug","drop","dup","ec","enum","felt252","felt252_dict","felt252_dict_entry","function_call","gas","mem","nullable","pedersen","poseidon","sint128","sint16","sint32","sint64","sint8","snapshot_take","starknet","struct","uint128","uint16","uint256","uint32","uint512","uint64","uint8","unconditional_jump","unwrap_non_zero"],"struct":["LibfuncHelper"],"trait":["LibfuncBuilder"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"enum":["BranchTarget"],"fn":["increment_builtin_counter"],"mod":["ap_tracking","array","bitwise","bool","box","branch_align","bytes31","cast","const","coupon","debug","drop","dup","ec","enum","felt252","felt252_dict","felt252_dict_entry","function_call","gas","mem","nullable","pedersen","poseidon","sint128","sint16","sint32","sint64","sint8","snapshot_take","starknet","struct","uint128","uint16","uint256","uint32","uint512","uint64","uint8","unconditional_jump","unwrap_non_zero"],"struct":["LibfuncHelper"],"trait":["LibfuncBuilder"]}; \ No newline at end of file diff --git a/cairo_native/libfuncs/struct.LibfuncHelper.html b/cairo_native/libfuncs/struct.LibfuncHelper.html index 806717f4d..f65e20428 100644 --- a/cairo_native/libfuncs/struct.LibfuncHelper.html +++ b/cairo_native/libfuncs/struct.LibfuncHelper.html @@ -1,5 +1,5 @@ LibfuncHelper in cairo_native::libfuncs - Rust -
pub struct LibfuncHelper<'ctx, 'this>
where +
pub struct LibfuncHelper<'ctx, 'this>
where 'this: 'ctx,
{ /* private fields */ }
Expand description

Helper struct which contains logic generation for extra MLIR blocks and branch operations to the next statements.

Each branch index should be present in exactly one call a branching method (either @@ -7,13 +7,13 @@

This helper is necessary because the statement following the current one may not have the same arguments as the results returned by the current statement. Because of that, a direct jump cannot be made and some processing is required.

-

Implementations§

source§

impl<'ctx, 'this> LibfuncHelper<'ctx, 'this>
where - 'this: 'ctx,

source

pub fn init_block(&self) -> &'this Block<'ctx>

Return the initialization block.

+

Implementations§

source§

impl<'ctx, 'this> LibfuncHelper<'ctx, 'this>
where + 'this: 'ctx,

source

pub fn init_block(&self) -> &'this Block<'ctx>

Return the initialization block.

The init block is used for llvm.alloca instructions. It is guaranteed to not be executed multiple times on tail-recursive functions. This property allows generating tail-recursive functions that do not grow the stack.

-
source

pub fn append_block(&self, block: Block<'ctx>) -> &'this Block<'ctx>

Inserts a new block after all the current libfunc’s blocks.

-
source

pub fn br( +

source

pub fn append_block(&self, block: Block<'ctx>) -> &'this Block<'ctx>

Inserts a new block after all the current libfunc’s blocks.

+
source

pub fn br( &self, branch: usize, results: &[Value<'ctx, 'this>], @@ -21,7 +21,7 @@ ) -> Operation<'ctx>

Creates an unconditional branching operation out of the libfunc and into the next statement.

This method will also store the returned values so that they can be moved into the state and used later on when required.

-
source

pub fn cond_br( +

source

pub fn cond_br( &self, context: &'ctx Context, condition: Value<'ctx, 'this>, @@ -34,7 +34,7 @@ avoided whenever possible. In those cases just use [melior::dialect::cf::cond_br].

This method will also store the returned values so that they can be moved into the state and used later on when required.

-

source

pub fn switch( +

source

pub fn switch( &self, context: &'ctx Context, flag: Value<'ctx, 'this>, @@ -51,7 +51,7 @@

pub fn context(&self) -> ContextRef<'c>

Returns a context.

pub fn body(&self) -> BlockRef<'c, '_>

Returns a block of a module body.

pub fn to_raw(&self) -> MlirModule

Converts a module into a raw object.

-

Trait Implementations§

source§

impl<'ctx, 'this> Deref for LibfuncHelper<'ctx, 'this>

§

type Target = Module<'ctx>

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.

Auto Trait Implementations§

§

impl<'ctx, 'this> !Freeze for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !RefUnwindSafe for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !Send for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !Sync for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> Unpin for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !UnwindSafe for LibfuncHelper<'ctx, 'this>

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl<'ctx, 'this> Deref for LibfuncHelper<'ctx, 'this>

§

type Target = Module<'ctx>

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.

Auto Trait Implementations§

§

impl<'ctx, 'this> !Freeze for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !RefUnwindSafe for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !Send for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !Sync for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> Unpin for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !UnwindSafe for LibfuncHelper<'ctx, 'this>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/cairo_native/libfuncs/trait.LibfuncBuilder.html b/cairo_native/libfuncs/trait.LibfuncBuilder.html index 9fbe7bcb9..646f9ad42 100644 --- a/cairo_native/libfuncs/trait.LibfuncBuilder.html +++ b/cairo_native/libfuncs/trait.LibfuncBuilder.html @@ -1,5 +1,5 @@ LibfuncBuilder in cairo_native::libfuncs - Rust -
pub trait LibfuncBuilder {
+    
pub trait LibfuncBuilder {
     type Error: Error;
 
     // Required methods
@@ -16,8 +16,8 @@
 }
Expand description

Generation of MLIR operations from their Sierra counterparts.

All possible Sierra libfuncs must implement it. It is already implemented for all the core libfuncs, contained in [CoreConcreteLibfunc].

-

Required Associated Types§

source

type Error: Error

Error type returned by this trait’s methods.

-

Required Methods§

source

fn build<'ctx, 'this>( +

Required Associated Types§

source

type Error: Error

Error type returned by this trait’s methods.

+

Required Methods§

source

fn build<'ctx, 'this>( &self, context: &'ctx Context, registry: &ProgramRegistry<CoreType, CoreLibfunc>, @@ -26,10 +26,10 @@ helper: &LibfuncHelper<'ctx, 'this>, metadata: &mut MetadataStorage ) -> Result<(), Self::Error>

Generate the MLIR operations.

-
source

fn is_function_call(&self) -> Option<&FunctionId>

Return the target function if the statement is a function call.

+
source

fn is_function_call(&self) -> Option<&FunctionId>

Return the target function if the statement is a function call.

This is used by the compiler to check whether a statement is a function call and apply the tail recursion logic.

-

Implementations on Foreign Types§

source§

impl LibfuncBuilder for CoreConcreteLibfunc

§

type Error = Error

source§

fn build<'ctx, 'this>( +

Implementations on Foreign Types§

source§

impl LibfuncBuilder for CoreConcreteLibfunc

§

type Error = Error

source§

fn build<'ctx, 'this>( &self, context: &'ctx Context, registry: &ProgramRegistry<CoreType, CoreLibfunc>, @@ -37,4 +37,4 @@ location: Location<'ctx>, helper: &LibfuncHelper<'ctx, 'this>, metadata: &mut MetadataStorage -) -> Result<(), Self::Error>

source§

fn is_function_call(&self) -> Option<&FunctionId>

Implementors§

\ No newline at end of file +) -> Result<(), Self::Error>
source§

fn is_function_call(&self) -> Option<&FunctionId>

Implementors§

\ No newline at end of file diff --git a/cairo_native/types/coupon/fn.build.html b/cairo_native/types/coupon/fn.build.html new file mode 100644 index 000000000..3df8b5d5d --- /dev/null +++ b/cairo_native/types/coupon/fn.build.html @@ -0,0 +1,10 @@ +build in cairo_native::types::coupon - Rust +

Function cairo_native::types::coupon::build

source ·
pub fn build<'ctx>(
+    context: &'ctx Context,
+    _module: &Module<'ctx>,
+    _registry: &ProgramRegistry<CoreType, CoreLibfunc>,
+    _metadata: &mut MetadataStorage,
+    _info: WithSelf<'_, CouponConcreteType>
+) -> Result<Type<'ctx>>
Expand description

Build the MLIR type.

+

Check out the module for more info.

+
\ No newline at end of file diff --git a/cairo_native/types/coupon/index.html b/cairo_native/types/coupon/index.html new file mode 100644 index 000000000..e8b996c7e --- /dev/null +++ b/cairo_native/types/coupon/index.html @@ -0,0 +1,2 @@ +cairo_native::types::coupon - Rust +

Module cairo_native::types::coupon

source ·
Expand description

§Coupon type.

Functions§

  • Build the MLIR type.
\ No newline at end of file diff --git a/cairo_native/types/coupon/sidebar-items.js b/cairo_native/types/coupon/sidebar-items.js new file mode 100644 index 000000000..f85943bee --- /dev/null +++ b/cairo_native/types/coupon/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"fn":["build"]}; \ No newline at end of file diff --git a/cairo_native/types/index.html b/cairo_native/types/index.html index 8918f1e4e..ecc169c87 100644 --- a/cairo_native/types/index.html +++ b/cairo_native/types/index.html @@ -1,4 +1,4 @@ cairo_native::types - Rust -

Module cairo_native::types

source ·
Expand description

§Compiler type infrastructure

+

Module cairo_native::types

source ·
Expand description

§Compiler type infrastructure

Contains type generation stuff (aka. conversion from Sierra to MLIR types).

-

Modules§

Structs§

Traits§

  • Generation of MLIR types from their Sierra counterparts.
\ No newline at end of file +

Modules§

Structs§

Traits§

  • Generation of MLIR types from their Sierra counterparts.
\ No newline at end of file diff --git a/cairo_native/types/sidebar-items.js b/cairo_native/types/sidebar-items.js index b7af9802e..a4c2e6329 100644 --- a/cairo_native/types/sidebar-items.js +++ b/cairo_native/types/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"mod":["array","bitwise","bounded_int","box","builtin_costs","bytes31","ec_op","ec_point","ec_state","enum","felt252","felt252_dict","felt252_dict_entry","gas_builtin","non_zero","nullable","pedersen","poseidon","range_check","segment_arena","snapshot","squashed_felt252_dict","starknet","struct","uint128","uint128_mul_guarantee","uint16","uint32","uint64","uint8","uninitialized"],"struct":["WithSelf"],"trait":["TypeBuilder"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"mod":["array","bitwise","bounded_int","box","builtin_costs","bytes31","coupon","ec_op","ec_point","ec_state","enum","felt252","felt252_dict","felt252_dict_entry","gas_builtin","non_zero","nullable","pedersen","poseidon","range_check","segment_arena","snapshot","squashed_felt252_dict","starknet","struct","uint128","uint128_mul_guarantee","uint16","uint32","uint64","uint8","uninitialized"],"struct":["WithSelf"],"trait":["TypeBuilder"]}; \ No newline at end of file diff --git a/cairo_native/types/struct.WithSelf.html b/cairo_native/types/struct.WithSelf.html index c123889f8..9a0aeb31e 100644 --- a/cairo_native/types/struct.WithSelf.html +++ b/cairo_native/types/struct.WithSelf.html @@ -1,9 +1,9 @@ WithSelf in cairo_native::types - Rust -
pub struct WithSelf<'a, T> { /* private fields */ }

Implementations§

source§

impl<'a, T> WithSelf<'a, T>

source

pub fn new(self_ty: &'a ConcreteTypeId, inner: &'a T) -> Self

source

pub fn self_ty(&self) -> &ConcreteTypeId

Trait Implementations§

source§

impl<'a, T> AsRef<T> for WithSelf<'a, T>

source§

fn as_ref(&self) -> &T

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<'a, T: Clone> Clone for WithSelf<'a, T>

source§

fn clone(&self) -> WithSelf<'a, T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a, T: Debug> Debug for WithSelf<'a, T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'a, T: Hash> Hash for WithSelf<'a, T>

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where +
pub struct WithSelf<'a, T> { /* private fields */ }

Implementations§

source§

impl<'a, T> WithSelf<'a, T>

source

pub fn new(self_ty: &'a ConcreteTypeId, inner: &'a T) -> Self

source

pub fn self_ty(&self) -> &ConcreteTypeId

Trait Implementations§

source§

impl<'a, T> AsRef<T> for WithSelf<'a, T>

source§

fn as_ref(&self) -> &T

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<'a, T: Clone> Clone for WithSelf<'a, T>

source§

fn clone(&self) -> WithSelf<'a, T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a, T: Debug> Debug for WithSelf<'a, T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'a, T: Hash> Hash for WithSelf<'a, T>

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, - Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<'a, T: PartialEq> PartialEq for WithSelf<'a, T>

source§

fn eq(&self, other: &WithSelf<'a, T>) -> bool

This method tests for self and other values to be equal, and is used + Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<'a, T: PartialEq> PartialEq for WithSelf<'a, T>

source§

fn eq(&self, other: &WithSelf<'a, T>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
source§

impl<'a, T> Deref for WithSelf<'a, T>

§

type Target = T

The resulting type after dereferencing.
source§

fn deref(&self) -> &T

Dereferences the value.
source§

impl<'a, T: Eq> Eq for WithSelf<'a, T>

source§

impl<'a, T> StructuralPartialEq for WithSelf<'a, T>

Auto Trait Implementations§

§

impl<'a, T> Freeze for WithSelf<'a, T>

§

impl<'a, T> RefUnwindSafe for WithSelf<'a, T>
where +sufficient, and should not be overridden without very good reason.

source§

impl<'a, T> Deref for WithSelf<'a, T>

§

type Target = T

The resulting type after dereferencing.
source§

fn deref(&self) -> &T

Dereferences the value.
source§

impl<'a, T: Eq> Eq for WithSelf<'a, T>

source§

impl<'a, T> StructuralPartialEq for WithSelf<'a, T>

Auto Trait Implementations§

§

impl<'a, T> Freeze for WithSelf<'a, T>

§

impl<'a, T> RefUnwindSafe for WithSelf<'a, T>
where T: RefUnwindSafe,

§

impl<'a, T> Send for WithSelf<'a, T>
where T: Sync,

§

impl<'a, T> Sync for WithSelf<'a, T>
where T: Sync,

§

impl<'a, T> Unpin for WithSelf<'a, T>

§

impl<'a, T> UnwindSafe for WithSelf<'a, T>
where diff --git a/cairo_native/types/trait.TypeBuilder.html b/cairo_native/types/trait.TypeBuilder.html index 1a9b438da..6e109345a 100644 --- a/cairo_native/types/trait.TypeBuilder.html +++ b/cairo_native/types/trait.TypeBuilder.html @@ -1,5 +1,5 @@ TypeBuilder in cairo_native::types - Rust -
pub trait TypeBuilder {
+    
pub trait TypeBuilder {
     type Error: Error;
 
     // Required methods
@@ -52,8 +52,8 @@
 }
Expand description

Generation of MLIR types from their Sierra counterparts.

All possible Sierra types must implement it. It is already implemented for all the core Sierra types, contained in [CoreTypeConcrete].

-

Required Associated Types§

source

type Error: Error

Error type returned by this trait’s methods.

-

Required Methods§

source

fn build<'ctx>( +

Required Associated Types§

source

type Error: Error

Error type returned by this trait’s methods.

+

Required Methods§

source

fn build<'ctx>( &self, context: &'ctx Context, module: &Module<'ctx>, @@ -61,25 +61,25 @@ metadata: &mut MetadataStorage, self_ty: &ConcreteTypeId ) -> Result<Type<'ctx>, Self::Error>

Build the MLIR type.

-
source

fn is_builtin(&self) -> bool

Return whether the type is a builtin.

-
source

fn is_complex(&self, registry: &ProgramRegistry<CoreType, CoreLibfunc>) -> bool

Return whether the type requires a return pointer when returning.

-
source

fn is_zst(&self, registry: &ProgramRegistry<CoreType, CoreLibfunc>) -> bool

Return whether the Sierra type resolves to a zero-sized type.

-
source

fn layout( +

source

fn is_builtin(&self) -> bool

Return whether the type is a builtin.

+
source

fn is_complex(&self, registry: &ProgramRegistry<CoreType, CoreLibfunc>) -> bool

Return whether the type requires a return pointer when returning.

+
source

fn is_zst(&self, registry: &ProgramRegistry<CoreType, CoreLibfunc>) -> bool

Return whether the Sierra type resolves to a zero-sized type.

+
source

fn layout( &self, registry: &ProgramRegistry<CoreType, CoreLibfunc> ) -> Result<Layout, Self::Error>

Generate the layout of the MLIR type.

Used in both the compiler and the interface when calling the compiled code.

-
source

fn is_memory_allocated( +

source

fn is_memory_allocated( &self, registry: &ProgramRegistry<CoreType, CoreLibfunc> ) -> bool

Whether the layout should be allocated in memory (either the stack or the heap) when used as a function invocation argument or return value.

-
source

fn integer_width(&self) -> Option<usize>

If the type is an integer type, return its width in bits.

+
source

fn integer_width(&self) -> Option<usize>

If the type is an integer type, return its width in bits.

TODO: How is it used?

-
source

fn is_integer_signed(&self) -> Option<bool>

If the type is an integer type, return if its signed.

-
source

fn variants(&self) -> Option<&[ConcreteTypeId]>

If the type is a enum type, return all possible variants.

+
source

fn is_integer_signed(&self) -> Option<bool>

If the type is an integer type, return if its signed.

+
source

fn variants(&self) -> Option<&[ConcreteTypeId]>

If the type is a enum type, return all possible variants.

TODO: How is it used?

-
source

fn fields(&self) -> Option<&[ConcreteTypeId]>

source

fn build_default<'ctx, 'this>( +

source

fn fields(&self) -> Option<&[ConcreteTypeId]>

source

fn build_default<'ctx, 'this>( &self, context: &'ctx Context, registry: &ProgramRegistry<CoreType, CoreLibfunc>, @@ -88,7 +88,7 @@ helper: &LibfuncHelper<'ctx, 'this>, metadata: &mut MetadataStorage, self_ty: &ConcreteTypeId -) -> Result<Value<'ctx, 'this>, Self::Error>

source

fn build_drop<'ctx, 'this>( +) -> Result<Value<'ctx, 'this>, Self::Error>

source

fn build_drop<'ctx, 'this>( &self, context: &'ctx Context, registry: &ProgramRegistry<CoreType, CoreLibfunc>, @@ -97,20 +97,20 @@ helper: &LibfuncHelper<'ctx, 'this>, metadata: &mut MetadataStorage, self_ty: &ConcreteTypeId -) -> Result<(), Self::Error>

Implementations on Foreign Types§

source§

impl TypeBuilder for CoreTypeConcrete

§

type Error = Error

source§

fn build<'ctx>( +) -> Result<(), Self::Error>

Implementations on Foreign Types§

source§

impl TypeBuilder for CoreTypeConcrete

§

type Error = Error

source§

fn build<'ctx>( &self, context: &'ctx Context, module: &Module<'ctx>, registry: &ProgramRegistry<CoreType, CoreLibfunc>, metadata: &mut MetadataStorage, self_ty: &ConcreteTypeId -) -> Result<Type<'ctx>, Self::Error>

source§

fn is_builtin(&self) -> bool

source§

fn is_complex(&self, registry: &ProgramRegistry<CoreType, CoreLibfunc>) -> bool

source§

fn is_zst(&self, registry: &ProgramRegistry<CoreType, CoreLibfunc>) -> bool

source§

fn layout( +) -> Result<Type<'ctx>, Self::Error>

source§

fn is_builtin(&self) -> bool

source§

fn is_complex(&self, registry: &ProgramRegistry<CoreType, CoreLibfunc>) -> bool

source§

fn is_zst(&self, registry: &ProgramRegistry<CoreType, CoreLibfunc>) -> bool

source§

fn layout( &self, registry: &ProgramRegistry<CoreType, CoreLibfunc> -) -> Result<Layout, Self::Error>

source§

fn is_memory_allocated( +) -> Result<Layout, Self::Error>

source§

fn is_memory_allocated( &self, registry: &ProgramRegistry<CoreType, CoreLibfunc> -) -> bool

source§

fn integer_width(&self) -> Option<usize>

source§

fn is_integer_signed(&self) -> Option<bool>

source§

fn variants(&self) -> Option<&[ConcreteTypeId]>

source§

fn fields(&self) -> Option<&[ConcreteTypeId]>

source§

fn build_default<'ctx, 'this>( +) -> bool

source§

fn integer_width(&self) -> Option<usize>

source§

fn is_integer_signed(&self) -> Option<bool>

source§

fn variants(&self) -> Option<&[ConcreteTypeId]>

source§

fn fields(&self) -> Option<&[ConcreteTypeId]>

source§

fn build_default<'ctx, 'this>( &self, context: &'ctx Context, _registry: &ProgramRegistry<CoreType, CoreLibfunc>, @@ -119,7 +119,7 @@ _helper: &LibfuncHelper<'ctx, 'this>, _metadata: &mut MetadataStorage, _self_ty: &ConcreteTypeId -) -> Result<Value<'ctx, 'this>, Self::Error>

source§

fn build_drop<'ctx, 'this>( +) -> Result<Value<'ctx, 'this>, Self::Error>

source§

fn build_drop<'ctx, 'this>( &self, context: &'ctx Context, registry: &ProgramRegistry<CoreType, CoreLibfunc>, diff --git a/help.html b/help.html index 6be553292..bc8674262 100644 --- a/help.html +++ b/help.html @@ -1,2 +1,2 @@ -Help -

Rustdoc help

Back
\ No newline at end of file +Help +

Rustdoc help

Back
\ No newline at end of file diff --git a/search-index.js b/search-index.js index f734d89bc..b0c68f219 100644 --- a/search-index.js +++ b/search-index.js @@ -1,5 +1,5 @@ var searchIndex = new Map(JSON.parse('[\ -["cairo_native",{"doc":"Cairo Sierra to MLIR compiler and JIT engine","t":"PPFPPGNNNNNNCNNNNNNHCCNNNNNNNCCCNNNNNNNNNNCCCHHNNNNNNNNNNNNNNNCNNNNNNNNNNCNNNNCCNNPEPEGCNNNNNNNCNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNOONNOONNNNNNNNNNNNNNOONNNNNNOONNNNNNNNPPPGPPPPPPPPPPPPPIPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFNNNONNNNNNONNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNPFFPFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGRPKFPNCNCCCNNNNCNCMCCNNNCCNCCCCCCCNNNCCHNNNMCCCCNNNNNNNNNNNNNNCCCCCCCCNNNNNNNNCCCCCCCCCNNNNNNHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHFNNCNCNNCNNNNNNCCNNNNNNNNCCCNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNPPFFGFPNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIFNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNFFFPFFFPFFFKIFFFNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNMNOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONMNNNNNNNNMNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNMNMNMNNNNNNNNNNONNNNNNNNNNNNMNMNOOOOOOOONNNNNNNONOMNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNMNMNMNMNMNMNMNMNMNMNONNNNNNNNNNNNNNNNNNNOOOMNMNONNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNOOOORKFNCNCNNCCMMMCCNNNCCCCNNNNNNCCCMNNCNMNMMMMMMNCCCCCNNNNNNNCNCCCCNNNNCCCCCCCNNMNHHHHHHHHHIHHHFFNNNNHNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNHHHHHHHHHHHHHHHHHHHHHHHHHHFKSNNNMMHHNNHHNNNNNNHHHHHHNNNHHNHHHHHNNNNNNNHNNNNNNNNNPPPPPPPPGPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOO","n":["Aggressive","Default","LLVMCompileError","Less","None","OptLevel","__clone_box","__clone_box","borrow","borrow","borrow_mut","borrow_mut","cache","clone","clone","clone_into","clone_into","cmp","compare","compile","context","debug_info","default","eq","equivalent","equivalent","equivalent","equivalent","equivalent","error","execution_result","executor","fmt","fmt","fmt","from","from","from","from","hash","into","into","libfuncs","metadata","module","module_to_object","object_to_shared_lib","partial_cmp","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","starknet","to_owned","to_owned","to_smolstr","to_string","try_from","try_from","try_into","try_into","type_id","type_id","types","upcast","upcast","upcast_mut","upcast_mut","utils","values","vzip","vzip","Aot","AotProgramCache","Jit","JitProgramCache","ProgramCache","aot","borrow","borrow_mut","fmt","from","from","from","into","jit","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","AotProgramCache","borrow","borrow_mut","compile_and_insert","fmt","from","get","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","JitProgramCache","borrow","borrow_mut","compile_and_insert","context","fmt","from","get","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeContext","borrow","borrow_mut","compile","compile_with_metadata","context","default","eq","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","from","initialize_mlir","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","DebugInfo","DebugLocations","__clone_box","__clone_box","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","extract","extract","fmt","fmt","from","from","funcs","funcs","into","into","libfunc_declarations","libfunc_declarations","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","statements","statements","to_owned","to_owned","try_from","try_from","try_into","try_into","type_declarations","type_declarations","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","ConstDataMismatch","EditStateError","Err","Error","Error","GasMetadataError","InsufficientGasError","LLVMCompileError","LayoutError","LayoutErrorPolyfill","MissingMetadata","MissingParameter","MissingSyscallHandler","MlirError","Ok","ParseAttributeError","ProgramRegistryErrorBoxed","Result","SierraAssert","TryFromIntError","UnexpectedValue","borrow","borrow_mut","fmt","fmt","from","from","from","from","from","from","from","from","into","make_missing_parameter","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","to_smolstr","to_string","try_from","try_into","type_id","upcast","upcast_mut","vzip","BuiltinStats","ContractExecutionResult","ExecutionResult","__clone_box","__clone_box","__clone_box","bitwise","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builtin_stats","clone","clone","clone","clone_into","clone_into","clone_into","cmp","cmp","compare","compare","default","default","deserialize","deserialize","deserialize","ec_op","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error_msg","failure_flag","fmt","fmt","fmt","from","from","from","from_execution_result","hash","hash","into","into","into","partial_cmp","partial_cmp","pedersen","poseidon","range_check","remaining_gas","remaining_gas","return_value","return_values","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","segment_arena","serialize","serialize","serialize","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","Aot","AotNativeExecutor","ArgumentMapper","Jit","JitNativeExecutor","NativeExecutor","__clone_box","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","find_function_ptr","find_function_ptr","fmt","fmt","fmt","from","from","from","from","from","from","from_native_module","from_native_module","into","into","into","into","invoke_contract_dynamic","invoke_contract_dynamic","invoke_contract_dynamic","invoke_data","invoke_dynamic","invoke_dynamic","invoke_dynamic","invoke_dynamic_with_syscall_handler","invoke_dynamic_with_syscall_handler","invoke_dynamic_with_syscall_handler","module","new","new","program_registry","push","push_aligned","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","vzip","BranchTarget","Error","Jump","LibfuncBuilder","LibfuncHelper","Return","__clone_box","ap_tracking","append_block","array","bitwise","bool","borrow","borrow","borrow_mut","borrow_mut","box","br","branch_align","build","bytes31","cast","clone","clone_into","cond_br","const","debug","deref","drop","dup","ec","enum","felt252","felt252_dict","felt252_dict_entry","fmt","from","from","function_call","gas","increment_builtin_counter","init_block","into","into","is_function_call","mem","nullable","pedersen","poseidon","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","sint128","sint16","sint32","sint64","sint8","snapshot_take","starknet","struct","switch","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","uint128","uint16","uint256","uint32","uint512","uint64","uint8","unconditional_jump","unwrap_non_zero","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","build","build_disable","build_enable","build_revoke","build","build_append","build_get","build_len","build_new","build_pop_front","build_pop_front_consume","build_slice","build_snapshot_pop_back","build_snapshot_pop_front","build_span_from_tuple","build","build","build_bool_not","build_bool_to_felt252","build","build_into_box","build_unbox","build","build","build_const","build_from_felt252","build_to_felt252","build","build_downcast","build_upcast","build","build_const_as_box","build_const_as_immediate","build_const_type_value","build","build_print","build","build","build","build_is_zero","build_neg","build_point_from_x","build_state_add","build_state_add_mul","build_state_finalize","build_state_init","build_try_new","build_unwrap_point","build_zero","build","build_enum_value","build_from_bounded_int","build_init","build_match","build_snapshot_match","build","build_binary_operation","build_const","build_is_zero","build","build_new","build_squash","build","build_finalize","build_get","build","build","build_builtin_withdraw_gas","build_get_available_gas","build_get_builtin_costs","build_withdraw_gas","build","build_alloc_local","build_finalize_locals","build_rename","build_store_local","build_store_temp","build","build","build_pedersen","build","build_hades_permutation","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build","build_call_contract","build_class_hash_const","build_class_hash_to_felt252","build_class_hash_try_from_felt252","build_contract_address_const","build_contract_address_to_felt252","build_contract_address_try_from_felt252","build_deploy","build_emit_event","build_get_block_hash","build_get_execution_info","build_get_execution_info_v2","build_keccak","build_library_call","build_replace_class","build_send_message_to_l1","build_storage_address_from_base","build_storage_address_from_base_and_offset","build_storage_address_to_felt252","build_storage_address_try_from_felt252","build_storage_base_address_const","build_storage_base_address_from_felt252","build_storage_read","build_storage_write","build","build_construct","build_deconstruct","build_struct_value","build","build_byte_reverse","build_const","build_divmod","build_equal","build_from_felt252","build_guarantee_mul","build_guarantee_verify","build_is_zero","build_operation","build_square_root","build_to_felt252","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_divmod","build_is_zero","build_square_root","build_u256_guarantee_inv_mod_n","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_divmod_u256","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build","MetadataStorage","borrow","borrow_mut","debug_utils","default","enum_snapshot_variants","fmt","from","gas","get","get_mut","get_or_insert_with","insert","into","new","prime_modulo","realloc_bindings","remove","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","runtime_bindings","snapshot_clones","tail_recursion","try_from","try_into","type_id","upcast","upcast_mut","vzip","DebugUtils","borrow","borrow_mut","breakpoint_marker","debug_breakpoint_trap","debug_print","default","dump_mem","fmt","from","into","print_felt252","print_i1","print_i128","print_i32","print_i64","print_i8","print_pointer","register_impls","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","EnumSnapshotVariantsMeta","borrow","borrow_mut","default","from","get_variants","into","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","set_mapping","try_from","try_into","type_id","upcast","upcast_mut","vzip","ApChangeError","CostError","GasCost","GasMetadata","GasMetadataError","MetadataComputationConfig","NotEnoughGas","__clone_box","__clone_box","__clone_box","ap_change_info","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","compare","default","default","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","function_set_costs","gas_info","get_gas_cost_for_statement","get_gas_cost_for_statement_and_cost_token_type","get_initial_available_gas","hash","initial_required_gas","into","into","into","into","linear_ap_change_solver","linear_gas_solver","new","partial_cmp","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","to_owned","to_owned","to_owned","to_smolstr","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","vzip","PrimeModuloMeta","borrow","borrow_mut","fmt","from","into","new","prime","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","ReallocBindingsMeta","borrow","borrow_mut","fmt","free","from","into","new","realloc","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","RuntimeBindingsMeta","borrow","borrow_mut","default","dict_alloc_free","dict_alloc_new","dict_gas_refund","dict_get","dict_insert","fmt","from","into","libfunc_debug_print","libfunc_ec_point_from_x_nz","libfunc_ec_point_try_new_nz","libfunc_ec_state_add","libfunc_ec_state_add_mul","libfunc_ec_state_try_finalize_nz","libfunc_hades_permutation","libfunc_pedersen","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","CloneFn","SnapshotClonesMeta","borrow","borrow_mut","default","from","into","register","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","wrap_invoke","TailRecursionMeta","borrow","borrow_mut","depth_counter","fmt","from","into","new","recursion_target","return_target","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","set_return_target","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeModule","borrow","borrow_mut","fmt","from","get_metadata","insert_metadata","into","metadata","module","new","program_registry","remove_metadata","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","ArrayAbi","BlockInfo","DummySyscallHandler","Err","ExecutionInfo","ExecutionInfoV2","Felt252Abi","Ok","ResourceBounds","Secp256k1Point","Secp256r1Point","StarknetSyscallHandler","SyscallResult","TxInfo","TxV2Info","U256","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","account_contract_address","account_contract_address","account_deployment_data","block_info","block_info","block_number","block_timestamp","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","call_contract","call_contract","caller_address","caller_address","capacity","chain_id","chain_id","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","cmp","cmp","compare","compare","compare","compare","compare","compare","compare","contract_address","contract_address","default","deploy","deploy","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","emit_event","emit_event","entry_point_selector","entry_point_selector","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fee_data_availability_mode","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","get_block_hash","get_block_hash","get_execution_info","get_execution_info","get_execution_info_v2","get_execution_info_v2","hash","hash","hash","hash","hash","hash","hash","hash","hash","hi","into","into","into","into","into","into","into","into","into","into","into","into","keccak","keccak","library_call","library_call","lo","max_amount","max_fee","max_fee","max_price_per_unit","nonce","nonce","nonce_data_availability_mode","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","paymaster_data","pop_log","ptr","replace_class","replace_class","resource","resource_bounds","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","secp256k1_add","secp256k1_add","secp256k1_get_point_from_x","secp256k1_get_point_from_x","secp256k1_get_xy","secp256k1_get_xy","secp256k1_mul","secp256k1_mul","secp256k1_new","secp256k1_new","secp256r1_add","secp256r1_add","secp256r1_get_point_from_x","secp256r1_get_point_from_x","secp256r1_get_xy","secp256r1_get_xy","secp256r1_mul","secp256r1_mul","secp256r1_new","secp256r1_new","send_message_to_l1","send_message_to_l1","sequencer_address","serialize","serialize","serialize","serialize","serialize","serialize","serialize","set_account_contract_address","set_block_number","set_block_timestamp","set_caller_address","set_chain_id","set_contract_address","set_max_fee","set_nonce","set_sequencer_address","set_signature","set_transaction_hash","set_version","signature","signature","since","storage_read","storage_read","storage_write","storage_write","tip","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","transaction_hash","transaction_hash","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","tx_info","tx_info","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","until","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","version","version","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","x","x","y","y","Error","TypeBuilder","WithSelf","__clone_box","array","as_ref","bitwise","borrow","borrow_mut","bounded_int","box","build","build_default","build_drop","builtin_costs","bytes31","clone","clone_into","deref","ec_op","ec_point","ec_state","enum","eq","equivalent","equivalent","equivalent","equivalent","equivalent","felt252","felt252_dict","felt252_dict_entry","fields","fmt","from","gas_builtin","hash","integer_width","into","is_builtin","is_complex","is_integer_signed","is_memory_allocated","is_zst","layout","new","non_zero","nullable","pedersen","poseidon","range_check","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","segment_arena","self_ty","snapshot","squashed_felt252_dict","starknet","struct","to_owned","try_from","try_into","type_id","uint128","uint128_mul_guarantee","uint16","uint32","uint64","uint8","uninitialized","upcast","upcast_mut","variants","vzip","build","build","build","build","build","build","build","build","build","TypeLayout","build","get_layout_for_variants","get_type_for_variants","HALF_PRIME","PRIME","borrow","borrow","borrow_mut","borrow_mut","build","deref","deref","from","from","into","into","register_prime_modulo_meta","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","build","build","build","build","build","build","build","build","build","build","build","build","build_class_hash","build_contract_address","build_secp256_point","build_storage_address","build_storage_base_address","build_system","build","build","build","build","build","build","build","build","LayoutError","ProgramRegistryExt","SHARED_LIBRARY_EXT","__clone_box","borrow","borrow_mut","build_type","build_type_with_layout","cairo_to_sierra","cairo_to_sierra_with_debug_info","clone","clone_into","create_engine","debug_with","eq","equivalent","equivalent","equivalent","equivalent","equivalent","felt252_bigint","felt252_short_str","felt252_str","find_entry_point","find_entry_point_by_idx","find_function_id","fmt","fmt","from","generate_function_name","get_integer_layout","into","layout_repeat","next_multiple_of_u32","next_multiple_of_usize","padding_needed_for","register_runtime_symbols","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","run_pass_manager","to_owned","to_smolstr","to_string","try_from","try_into","type_id","upcast","upcast_mut","vzip","Array","BoundedInt","Bytes31","EcPoint","EcState","Enum","Felt252","Felt252Dict","JitValue","Null","Secp256K1Point","Secp256R1Point","Sint128","Sint16","Sint32","Sint64","Sint8","Struct","Uint128","Uint16","Uint32","Uint64","Uint8","__clone_box","borrow","borrow_mut","clone","clone_into","deserialize","eq","equivalent","equivalent","equivalent","equivalent","equivalent","felt_str","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","into","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","serialize","to_owned","try_from","try_into","type_id","upcast","upcast_mut","vzip","debug_name","debug_name","debug_name","fields","range","tag","value","value","value","x","x","y","y"],"q":[[0,"cairo_native"],[82,"cairo_native::cache"],[109,"cairo_native::cache::aot"],[131,"cairo_native::cache::jit"],[154,"cairo_native::context"],[185,"cairo_native::debug_info"],[241,"cairo_native::error"],[292,"cairo_native::execution_result"],[409,"cairo_native::executor"],[512,"cairo_native::libfuncs"],[606,"cairo_native::libfuncs::ap_tracking"],[610,"cairo_native::libfuncs::array"],[621,"cairo_native::libfuncs::bitwise"],[622,"cairo_native::libfuncs::bool"],[625,"cairo_native::libfuncs::box"],[628,"cairo_native::libfuncs::branch_align"],[629,"cairo_native::libfuncs::bytes31"],[633,"cairo_native::libfuncs::cast"],[636,"cairo_native::libfuncs::const"],[640,"cairo_native::libfuncs::debug"],[642,"cairo_native::libfuncs::drop"],[643,"cairo_native::libfuncs::dup"],[644,"cairo_native::libfuncs::ec"],[655,"cairo_native::libfuncs::enum"],[661,"cairo_native::libfuncs::felt252"],[665,"cairo_native::libfuncs::felt252_dict"],[668,"cairo_native::libfuncs::felt252_dict_entry"],[671,"cairo_native::libfuncs::function_call"],[672,"cairo_native::libfuncs::gas"],[677,"cairo_native::libfuncs::mem"],[683,"cairo_native::libfuncs::nullable"],[684,"cairo_native::libfuncs::pedersen"],[686,"cairo_native::libfuncs::poseidon"],[688,"cairo_native::libfuncs::sint128"],[696,"cairo_native::libfuncs::sint16"],[705,"cairo_native::libfuncs::sint32"],[714,"cairo_native::libfuncs::sint64"],[723,"cairo_native::libfuncs::sint8"],[732,"cairo_native::libfuncs::snapshot_take"],[733,"cairo_native::libfuncs::starknet"],[758,"cairo_native::libfuncs::struct"],[762,"cairo_native::libfuncs::uint128"],[774,"cairo_native::libfuncs::uint16"],[784,"cairo_native::libfuncs::uint256"],[789,"cairo_native::libfuncs::uint32"],[799,"cairo_native::libfuncs::uint512"],[801,"cairo_native::libfuncs::uint64"],[811,"cairo_native::libfuncs::uint8"],[821,"cairo_native::libfuncs::unconditional_jump"],[822,"cairo_native::libfuncs::unwrap_non_zero"],[823,"cairo_native::metadata"],[857,"cairo_native::metadata::debug_utils"],[889,"cairo_native::metadata::enum_snapshot_variants"],[910,"cairo_native::metadata::gas"],[1041,"cairo_native::metadata::prime_modulo"],[1062,"cairo_native::metadata::realloc_bindings"],[1084,"cairo_native::metadata::runtime_bindings"],[1117,"cairo_native::metadata::snapshot_clones"],[1139,"cairo_native::metadata::tail_recursion"],[1163,"cairo_native::module"],[1189,"cairo_native::starknet"],[1662,"cairo_native::types"],[1741,"cairo_native::types::array"],[1742,"cairo_native::types::bitwise"],[1743,"cairo_native::types::bounded_int"],[1744,"cairo_native::types::box"],[1745,"cairo_native::types::builtin_costs"],[1746,"cairo_native::types::bytes31"],[1747,"cairo_native::types::ec_op"],[1748,"cairo_native::types::ec_point"],[1749,"cairo_native::types::ec_state"],[1750,"cairo_native::types::enum"],[1754,"cairo_native::types::felt252"],[1794,"cairo_native::types::felt252_dict"],[1795,"cairo_native::types::felt252_dict_entry"],[1796,"cairo_native::types::gas_builtin"],[1797,"cairo_native::types::non_zero"],[1798,"cairo_native::types::nullable"],[1799,"cairo_native::types::pedersen"],[1800,"cairo_native::types::poseidon"],[1801,"cairo_native::types::range_check"],[1802,"cairo_native::types::segment_arena"],[1803,"cairo_native::types::snapshot"],[1804,"cairo_native::types::squashed_felt252_dict"],[1805,"cairo_native::types::starknet"],[1812,"cairo_native::types::struct"],[1813,"cairo_native::types::uint128"],[1814,"cairo_native::types::uint128_mul_guarantee"],[1815,"cairo_native::types::uint16"],[1816,"cairo_native::types::uint32"],[1817,"cairo_native::types::uint64"],[1818,"cairo_native::types::uint8"],[1819,"cairo_native::types::uninitialized"],[1820,"cairo_native::utils"],[1874,"cairo_native::values"],[1942,"cairo_native::values::JitValue"],[1955,"dyn_clone::sealed"],[1956,"core::cmp"],[1957,"melior::context"],[1958,"melior::ir::module"],[1959,"cairo_lang_sierra::program"],[1960,"cairo_lang_sierra::extensions::core"],[1961,"cairo_lang_sierra::extensions::core"],[1962,"core::option"],[1963,"core::result"],[1964,"core::fmt"],[1965,"core::fmt"],[1966,"alloc::vec"],[1967,"std::path"],[1968,"std::io::error"],[1969,"std::collections::hash::map"],[1970,"alloc::collections::vec_deque"],[1971,"alloc::boxed"],[1972,"smol_str"],[1973,"alloc::string"],[1974,"core::any"],[1975,"core::cmp"],[1976,"cairo_lang_compiler::db"],[1977,"cairo_lang_diagnostics::diagnostics"],[1978,"core::alloc::layout"],[1979,"melior::error"],[1980,"core::num::error"],[1981,"cairo_lang_sierra::program_registry"],[1982,"cairo_lang_sierra::ids"],[1983,"core::error"],[1984,"serde::de"],[1985,"serde::ser"],[1986,"cairo_lang_sierra::ids"],[1987,"starknet_types_core::felt"],[1988,"bumpalo"],[1989,"libloading::safe"],[1990,"cairo_lang_sierra::extensions::core"],[1991,"melior::ir::value"],[1992,"melior::ir::location"],[1993,"melior::ir::operation"],[1994,"cairo_lang_sierra::extensions::modules::ap_tracking"],[1995,"cairo_lang_sierra::extensions::lib_func"],[1996,"cairo_lang_sierra::extensions::modules::array"],[1997,"cairo_lang_sierra::extensions::lib_func"],[1998,"cairo_lang_sierra::extensions::modules::boxing"],[1999,"cairo_lang_sierra::extensions::modules::bytes31"],[2000,"cairo_lang_sierra::extensions::modules::consts"],[2001,"cairo_lang_sierra::extensions::modules::casts"],[2002,"cairo_lang_sierra::extensions::modules::casts"],[2003,"cairo_lang_sierra::extensions::modules::const_type"],[2004,"cairo_lang_sierra::extensions::modules::ec"],[2005,"cairo_lang_sierra::extensions::modules::enm"],[2006,"cairo_lang_sierra::extensions::modules::enm"],[2007,"cairo_lang_sierra::extensions::modules::felt252"],[2008,"cairo_lang_sierra::extensions::modules::felt252_dict"],[2009,"cairo_lang_sierra::extensions::modules::gas"],[2010,"cairo_lang_sierra::extensions::modules::mem"],[2011,"cairo_lang_sierra::extensions::modules::nullable"],[2012,"cairo_lang_sierra::extensions::modules::pedersen"],[2013,"cairo_lang_sierra::extensions::modules::poseidon"],[2014,"cairo_lang_sierra::extensions::modules::int::signed128"],[2015,"cairo_lang_sierra::extensions::modules::int::signed128"],[2016,"cairo_lang_sierra::extensions::modules::int"],[2017,"cairo_lang_sierra::extensions::modules::int::signed"],[2018,"cairo_lang_sierra::extensions::modules::structure"],[2019,"cairo_lang_sierra::extensions::modules::int::unsigned128"],[2020,"cairo_lang_sierra::extensions::modules::int::unsigned128"],[2021,"cairo_lang_sierra::extensions::modules::int::unsigned"],[2022,"cairo_lang_sierra::extensions::modules::int::unsigned"],[2023,"cairo_lang_sierra::extensions::modules::int::unsigned"],[2024,"melior::execution_engine"],[2025,"cairo_lang_sierra_gas"],[2026,"cairo_lang_sierra_ap_change"],[2027,"cairo_lang_sierra::program"],[2028,"melior::ir::operation"],[2029,"melior::ir::block"],[2030,"core::clone"],[2031,"core::alloc::layout"],[2032,"cairo_lang_sierra::extensions::types"],[2033,"cairo_lang_sierra::extensions::modules::enm"],[2034,"cairo_lang_sierra::extensions::modules::starknet"],[2035,"cairo_lang_sierra::extensions::modules::structure"],[2036,"cairo_lang_sierra::program"]],"d":["","","A error from the LLVM API.","","","Optimization levels.","","","","","","","","","","","","","","Run the compiler on a program. The compiled program is …","","Extracts useful debugging information from cairo programs …","","","","","","","","Various error types used thorough the crate.","","Executors","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Compiler libfunc infrastructure","Code generation metadata","","Converts a MLIR module to a compile object, that can be …","Links the passed object into a shared library, stored on …","","","","","","","","","","","","","","","","Starknet related code for cairo_native","","","","","","","","","","","Compiler type infrastructure","","","","","Various utilities","JIT params and return values de/serialization","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","A Cache for programs with the same context.","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","Context of IRs, dialects and passes for Cairo programs …","","","Compiles a sierra program into MLIR and then lowers to …","Compiles a sierra program into MLIR and then lowers to …","","","","","","","","","","Returns the argument unchanged.","Initialize an MLIR context.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Contains the error value","","","","","","","","","","","","Contains the success value","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","Starknet contract execution result.","The result of the JIT execution.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Convert a [ExecuteResult] to a [NativeExecutionResult]","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A MLIR JIT execution engine in the context of Cairo Native.","The cairo native executor, either AOT or JIT based.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","","Utility to convert a NativeModule into an AotNativeExecutor…","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","Invoke the given function by its function id, with the …","","Execute a program with the given params.","","Invoke the given function by its function id, with the …","Execute a program with the given params.","","Invoke the given function by its function id, with the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A libfunc branching target.","Error type returned by this trait’s methods.","A block within the current libfunc.","Generation of MLIR operations from their Sierra …","Helper struct which contains logic generation for extra …","A statement’s branch target by its index.","","AP tracking libfuncs","Inserts a new block after all the current libfunc’s …","Array libfuncs","Bitwise libfuncs","Boolean libfuncs","","","","","Box libfuncs","Creates an unconditional branching operation out of the …","Branch alignment libfunc","Generate the MLIR operations.","Bytes31-related libfuncs","Casting libfuncs","","","Creates a conditional binary branching operation, …","Const libfuncs","Debug libfuncs","","AP tracking libfuncs","State value duplication libfunc","Elliptic curve libfuncs","Enum-related libfuncs","Felt-related libfuncs","Felt dictionary libfuncs","Felt dictionary entry libfuncs","","Returns the argument unchanged.","Returns the argument unchanged.","Function call libfuncs","Gas management libfuncs","","Return the initialization block.","Calls U::from(self).","Calls U::from(self).","Return the target function if the statement is a function …","Memory-related libfuncs","Nullable libfuncs","Pedersen hashing libfuncs","Poseidon hashing libfuncs","","","","","","","","","","","","","","","i128-related libfuncs","i16-related libfuncs","i32-related libfuncs","i64-related libfuncs","i8-related libfuncs","Snapshot taking libfuncs","Starknet libfuncs","Struct-related libfuncs","Creates a conditional multi-branching operation, …","","","","","","","","u128-related libfuncs","u16-related libfuncs","u256-related libfuncs","u32-related libfuncs","u512-related libfuncs","u64-related libfuncs","u8-related libfuncs","Unconditional jump libfunc","Non-zero unwrapping libfuncs","","","","","","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the disable_ap_tracking …","Generate MLIR operations for the enable_ap_tracking …","Generate MLIR operations for the revoke_ap_tracking. …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the array_append libfunc.","Generate MLIR operations for the array_get libfunc.","Generate MLIR operations for the array_len libfunc.","Generate MLIR operations for the array_new libfunc.","Generate MLIR operations for the array_pop_front libfunc.","Generate MLIR operations for the array_pop_front_consume …","Generate MLIR operations for the array_slice libfunc.","Generate MLIR operations for the array_snapshot_pop_back …","Generate MLIR operations for the array_snapshot_pop_front …","Generate MLIR operations for the span_from_tuple libfunc.","Generate MLIR operations for the bitwise libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the bool_not_impl libfunc.","Generate MLIR operations for the unbox libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the into_box libfunc.","Generate MLIR operations for the unbox libfunc.","Generate MLIR operations for the branch_align libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the bytes31_const libfunc.","Generate MLIR operations for the u8_from_felt252 libfunc.","Generate MLIR operations for the bytes31_to_felt252 …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the downcast libfunc.","Generate MLIR operations for the upcast libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the const_as_box libfunc.","Generate MLIR operations for the const_as_immediate …","","","","Generate MLIR operations for the drop libfunc.","Generate MLIR operations for the dup libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the ec_point_is_zero libfunc.","Generate MLIR operations for the ec_neg libfunc.","Generate MLIR operations for the ec_point_from_x_nz …","Generate MLIR operations for the ec_state_add libfunc.","Generate MLIR operations for the ec_state_add_mul libfunc.","Generate MLIR operations for the ec_state_try_finalize_nz …","Generate MLIR operations for the ec_state_init libfunc.","Generate MLIR operations for the ec_point_try_new_nz …","Generate MLIR operations for the ec_point_unwrap libfunc.","Generate MLIR operations for the ec_point_zero libfunc.","Select and call the correct libfunc builder function from …","","Generate MLIR operations for the enum_from_bounded_int …","Generate MLIR operations for the enum_init libfunc.","Generate MLIR operations for the enum_match libfunc.","Generate MLIR operations for the enum_snapshot_match …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the following libfuncs:","Generate MLIR operations for the felt252_const libfunc.","Generate MLIR operations for the felt252_is_zero libfunc.","Select and call the correct libfunc builder function from …","","","Select and call the correct libfunc builder function from …","","","Generate MLIR operations for the function_call libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the withdraw_gas_all libfunc.","Generate MLIR operations for the get_builtin_costs libfunc.","Generate MLIR operations for the get_builtin_costs libfunc.","Generate MLIR operations for the withdraw_gas libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the alloc_local libfunc.","Generate MLIR operations for the finalize_locals libfunc.","Generate MLIR operations for the rename libfunc.","Generate MLIR operations for the store_local libfunc.","Generate MLIR operations for the store_temp libfunc.","Select and call the correct libfunc builder function from …","Select and call the correct libfunc builder function from …","","Select and call the correct libfunc builder function from …","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i128_const libfunc.","Generate MLIR operations for the i128_diff libfunc.","Generate MLIR operations for the i128_eq libfunc.","Generate MLIR operations for the i128_from_felt252 libfunc.","Generate MLIR operations for the i128_is_zero libfunc.","Generate MLIR operations for the i128 operation libfunc.","Generate MLIR operations for the i128_to_felt252 libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i16_const libfunc.","Generate MLIR operations for the i16_diff libfunc.","Generate MLIR operations for the i16_eq libfunc.","Generate MLIR operations for the i16_from_felt252 libfunc.","Generate MLIR operations for the i16_is_zero libfunc.","Generate MLIR operations for the i16 operation libfunc.","Generate MLIR operations for the i16_to_felt252 libfunc.","Generate MLIR operations for the i16_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i32_const libfunc.","Generate MLIR operations for the i32_diff libfunc.","Generate MLIR operations for the i32_eq libfunc.","Generate MLIR operations for the i32_from_felt252 libfunc.","Generate MLIR operations for the i32_is_zero libfunc.","Generate MLIR operations for the i32 operation libfunc.","Generate MLIR operations for the i32_to_felt252 libfunc.","Generate MLIR operations for the i32_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i64_const libfunc.","Generate MLIR operations for the i64_diff libfunc.","Generate MLIR operations for the i64_eq libfunc.","Generate MLIR operations for the i64_from_felt252 libfunc.","Generate MLIR operations for the i64_is_zero libfunc.","Generate MLIR operations for the i64 operation libfunc.","Generate MLIR operations for the i64_to_felt252 libfunc.","Generate MLIR operations for the i64_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i8_const libfunc.","Generate MLIR operations for the i8_diff libfunc.","Generate MLIR operations for the i8_eq libfunc.","Generate MLIR operations for the i8_from_felt252 libfunc.","Generate MLIR operations for the i8_is_zero libfunc.","Generate MLIR operations for the i8 operation libfunc.","Generate MLIR operations for the i8_to_felt252 libfunc.","Generate MLIR operations for the i8_widemul libfunc.","Generate MLIR operations for the snapshot_take libfunc.","Select and call the correct libfunc builder function from …","","","","","","","","","","","","","","","","","","","","","","","","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the struct_construct libfunc.","Generate MLIR operations for the struct_deconstruct …","Generate MLIR operations for the struct_construct libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u128_byte_reverse libfunc.","Generate MLIR operations for the u128_const libfunc.","Generate MLIR operations for the u128_safe_divmod libfunc.","Generate MLIR operations for the u128_equal libfunc.","Generate MLIR operations for the u128s_from_felt252 …","Generate MLIR operations for the u128_guarantee_mul …","Generate MLIR operations for the u128_guarantee_verify …","Generate MLIR operations for the u128_is_zero libfunc.","Generate MLIR operations for the u128_add and u128_sub …","Generate MLIR operations for the u128_sqrt libfunc.","Generate MLIR operations for the u128_to_felt252 libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u16_const libfunc.","Generate MLIR operations for the u16_safe_divmod libfunc.","Generate MLIR operations for the u16_eq libfunc.","Generate MLIR operations for the u16_from_felt252 libfunc.","Generate MLIR operations for the u16_is_zero libfunc.","Generate MLIR operations for the u16 operation libfunc.","Generate MLIR operations for the u16_sqrt libfunc.","Generate MLIR operations for the u16_to_felt252 libfunc.","Generate MLIR operations for the u16_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u256_safe_divmod libfunc.","Generate MLIR operations for the u256_is_zero libfunc.","Generate MLIR operations for the u256_sqrt libfunc.","Generate MLIR operations for the u256_guarantee_inv_mod_n …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u32_const libfunc.","Generate MLIR operations for the u32_safe_divmod libfunc.","Generate MLIR operations for the u32_eq libfunc.","Generate MLIR operations for the u32_from_felt252 libfunc.","Generate MLIR operations for the u32_is_zero libfunc.","Generate MLIR operations for the u32 operation libfunc.","Generate MLIR operations for the u32_sqrt libfunc.","Generate MLIR operations for the u32_to_felt252 libfunc.","Generate MLIR operations for the u32_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u512_safe_divmod_by_u256 …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u64_const libfunc.","Generate MLIR operations for the u64_safe_divmod libfunc.","Generate MLIR operations for the u64_eq libfunc.","Generate MLIR operations for the u64_from_felt252 libfunc.","Generate MLIR operations for the u64_is_zero libfunc.","Generate MLIR operations for the u64 operation libfunc.","Generate MLIR operations for the u64_sqrt libfunc.","Generate MLIR operations for the u64_to_felt252 libfunc.","Generate MLIR operations for the u64_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u8_const libfunc.","Generate MLIR operations for the u8_safe_divmod libfunc.","Generate MLIR operations for the u8_eq libfunc.","Generate MLIR operations for the u8_from_felt252 libfunc.","Generate MLIR operations for the u8_is_zero libfunc.","Generate MLIR operations for the u8 operation libfunc.","Generate MLIR operations for the u8_sqrt libfunc.","Generate MLIR operations for the u8_to_felt252 libfunc.","Generate MLIR operations for the u8_widemul libfunc.","Generate MLIR operations for the jump libfunc.","Generate MLIR operations for the unwrap_non_zero libfunc.","Metadata container.","","","Debug utilities","","","","Returns the argument unchanged.","","Retrieve a reference to some metadata.","Retrieve a mutable reference to some metadata.","","Insert some metadata and return a mutable reference.","Calls U::from(self).","Create an empty metadata container.","Finite field prime modulo","Memory allocation external bindings","Remove some metadata and return its last value.","","","","","","","","Runtime library bindings","","Tail recursion information","","","","","","","","","","","","Prints the given &str.","","Dump a memory region at runtime.","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","","","Holds global gas info.","Error for metadata calculations.","Configuration for metadata computation.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","Returns the initial value for the gas counter. If …","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Prime modulo number metadata.","","","","Returns the argument unchanged.","Calls U::from(self).","Create the metadata from the prime number.","Return the stored prime number.","","","","","","","","","","","","","","Memory allocation realloc metadata.","","","","Calls the free function.","Returns the argument unchanged.","Calls U::from(self).","Register the bindings to the realloc C function and return …","Calls the realloc function, returns a op with 1 result: an …","","","","","","","","","","","","","","Runtime library bindings metadata.","","","","Register if necessary, then invoke the dict_alloc_new() …","Register if necessary, then invoke the dict_alloc_new() …","Register if necessary, then invoke the dict_gas_refund() …","Register if necessary, then invoke the dict_get() function.","Register if necessary, then invoke the dict_insert() …","","Returns the argument unchanged.","Calls U::from(self).","Register if necessary, then invoke the debug::print() …","Register if necessary, then invoke the ec_point_from_x_nz()…","Register if necessary, then invoke the …","Register if necessary, then invoke the ec_state_add() …","Register if necessary, then invoke the ec_state_add_mul() …","","Register if necessary, then invoke the poseidon() function.","Register if necessary, then invoke the pedersen() function.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","The tail recursion metadata.","","","Return the current depth counter value.","","Returns the argument unchanged.","Calls U::from(self).","Create the tail recursion meta.","Return the recursion target block.","Return the return target block, if set.","","","","","","","","Set the return target block.","","","","","","","A MLIR module in the context of Cairo Native. It is …","","","","Returns the argument unchanged.","Retrieve a reference to some stored metadata.","Insert some metadata for the program execution and return …","Calls U::from(self).","","","","","Removes metadata","","","","","","","","","","","","","","","","","Contains the error value","","","Binary representation of a Felt (in MLIR).","Contains the success value","","","","","","","","Binary representation of a u256 (in MLIR).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Error type returned by this trait’s methods.","Generation of MLIR types from their Sierra counterparts.","","","Array type","","Bitwise type","","","BoundedInt type","Box type","Build the MLIR type.","","","Builtin costs type","bytes31 type","","","","Elliptic curve operation type","Elliptic curve point type","Elliptic curve state type","Enum type","","","","","","","felt252 type","Felt dictionary type","Felt dictionary entry type","","","Returns the argument unchanged.","Gas builtin type","","If the type is an integer type, return its width in bits.","Calls U::from(self).","Return whether the type is a builtin.","Return whether the type requires a return pointer when …","If the type is an integer type, return if its signed.","Whether the layout should be allocated in memory (either …","Return whether the Sierra type resolves to a zero-sized …","Generate the layout of the MLIR type.","","Non-zero type","Nullable type","Pedersen type","Poseidon type","Builtin costs type","","","","","","","","Segment arena type","","Snapshot type","Squashed Felt dictionary type","Starknet types","Struct type","","","","","Unsigned 128-bit integer type","Unsigned 128-bit multiplication guarantee type","Unsigned 16-bit integer type","Unsigned 32-bit integer type","Unsigned 64-bit integer type","Unsigned 8-bit integer type","Uninitialized type","","","If the type is a enum type, return all possible variants.","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","An MLIR type with its memory layout.","Build the MLIR type.","Extract layout for the default enum representation, its …","Extract the type and layout for the default enum …","","The felt252 prime modulo.","","","","","Build the MLIR type.","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","","","","","","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","","","","","","","","","Compile a cairo program found at the given path to sierra.","","","","Creates the execution engine, with all symbols registered.","Return a type that calls a closure when formatted using …","","","","","","","Parse any type that can be a bigint to a felt that can be …","Parse a short string into a felt that can be used in the …","Parse a numeric string into felt, wrapping negatives …","Returns the given entry point if present.","Returns the given entry point if present.","Given a string representing a function name, searches in …","","","Returns the argument unchanged.","Generate a function name.","Return the layout for an integer of arbitrary width.","Calls U::from(self).","Copied from std.","","","Edit: Copied from the std lib.","","","","","","","","","","","","","","","","","","","all elements need to be same type","","","","","","","","A JitValue is a value that can be passed to the JIT engine …","Used as return value for Nullables that are null.","","","","","","","","","","","","","","","","","","","","","","","","","","String to felt","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[4,4,0,4,4,0,3,4,3,4,3,4,0,3,4,3,4,4,4,0,0,0,4,4,4,4,4,4,4,0,0,0,3,3,4,3,4,4,4,4,3,4,0,0,0,0,0,4,3,3,3,3,3,3,3,4,4,4,4,4,4,4,0,3,4,3,3,3,4,3,4,3,4,0,3,4,3,4,0,0,3,4,34,0,34,0,0,0,34,34,34,34,34,34,34,0,34,34,34,34,34,34,34,34,34,34,34,34,34,0,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,0,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,0,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,47,47,47,47,47,47,13,13,13,13,13,13,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,15,15,86,0,15,15,15,15,15,15,15,15,15,15,86,15,15,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,0,0,59,60,61,59,59,60,61,59,60,61,60,59,60,61,59,60,61,59,61,59,61,59,61,59,60,61,59,59,60,61,59,59,59,59,59,60,60,60,60,60,61,61,61,61,61,61,61,59,60,61,59,60,61,61,59,61,59,60,61,59,61,59,59,59,60,61,60,61,59,59,59,59,59,59,59,60,60,60,60,60,60,60,61,61,61,61,61,61,61,59,59,60,61,59,60,61,59,60,61,59,60,61,59,60,61,59,60,61,59,60,61,59,60,61,64,0,0,64,0,0,64,44,70,41,64,44,70,41,64,64,64,44,41,44,41,64,44,70,41,64,64,64,44,41,44,70,41,64,44,41,64,70,44,41,64,44,41,64,44,70,41,44,70,70,44,44,44,44,44,44,44,70,70,70,70,70,70,70,41,41,41,41,41,41,41,64,64,64,64,64,64,64,64,44,70,41,64,44,70,41,64,44,70,41,64,44,70,41,64,44,70,41,64,44,70,41,64,0,83,84,0,0,84,84,0,77,0,0,0,77,84,77,84,0,77,0,83,0,0,84,84,77,0,0,77,0,0,0,0,0,0,0,84,77,84,0,0,0,77,77,84,83,0,0,0,0,77,77,77,77,77,77,77,84,84,84,84,84,84,84,0,0,0,0,0,0,0,0,77,84,77,84,77,84,77,84,0,0,0,0,0,0,0,0,0,77,84,77,84,77,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,12,0,12,0,12,12,0,12,12,12,12,12,12,0,0,12,12,12,12,12,12,12,12,0,0,0,12,12,12,12,12,12,0,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,0,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,56,56,0,0,0,0,56,75,151,46,75,75,151,46,56,75,151,46,56,75,151,46,75,151,46,151,151,75,46,75,151,56,75,75,75,75,75,151,151,151,151,151,56,56,56,56,56,75,151,46,56,56,75,151,46,56,56,56,46,75,75,75,75,151,75,75,151,46,56,46,46,75,151,75,75,75,75,75,75,75,151,151,151,151,151,151,151,46,46,46,46,46,46,46,56,56,56,56,56,56,56,56,75,151,46,56,56,75,151,46,56,75,151,46,56,75,151,46,56,75,151,46,56,75,151,46,56,75,151,46,56,0,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,0,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,0,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,0,0,161,161,161,161,161,161,161,161,161,161,161,161,161,161,161,161,161,161,161,161,0,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,0,0,0,167,0,0,0,167,0,0,0,0,0,0,0,0,169,170,171,172,173,174,175,176,177,178,173,176,173,171,172,175,175,168,179,169,170,171,172,173,174,175,176,177,178,168,179,169,170,171,172,173,174,175,176,177,178,69,168,171,172,179,173,176,169,170,171,172,173,174,175,176,177,178,169,170,171,172,173,174,175,176,177,178,170,171,172,173,174,175,176,170,171,172,173,174,175,176,171,172,170,69,168,170,171,172,173,174,175,176,69,168,171,172,170,171,172,173,174,175,176,177,178,170,170,170,170,170,171,171,171,171,171,172,172,172,172,172,173,173,173,173,173,174,174,174,174,174,175,175,175,175,175,176,176,176,176,176,177,177,177,177,177,178,178,178,178,178,173,179,169,170,171,172,173,174,175,176,177,178,168,179,169,170,171,172,173,174,175,176,177,178,69,168,69,168,69,168,170,171,172,173,174,175,176,177,178,170,168,179,169,170,171,172,173,174,175,176,177,178,69,168,69,168,170,174,173,176,174,173,176,173,170,171,172,173,174,175,176,173,69,179,69,168,174,173,168,168,168,168,168,168,168,179,179,179,179,179,179,179,169,169,169,169,169,169,169,170,170,170,170,170,170,170,171,171,171,171,171,171,171,172,172,172,172,172,172,172,173,173,173,173,173,173,173,174,174,174,174,174,174,174,175,175,175,175,175,175,175,176,176,176,176,176,176,176,177,177,177,177,177,177,177,178,178,178,178,178,178,178,69,168,69,168,69,168,69,168,69,168,69,168,69,168,69,168,69,168,69,168,69,168,175,170,171,172,173,174,175,176,69,69,69,69,69,69,69,69,69,69,69,69,173,176,179,69,168,69,168,173,169,170,171,172,173,174,175,176,177,178,173,176,168,179,169,170,171,172,173,174,175,176,177,178,168,179,169,170,171,172,173,174,175,176,177,178,171,172,168,179,169,170,171,172,173,174,175,176,177,178,179,168,179,169,170,171,172,173,174,175,176,177,178,168,179,169,170,171,172,173,174,175,176,177,178,173,176,168,179,169,170,171,172,173,174,175,176,177,178,177,178,177,178,182,0,0,181,0,181,0,181,181,0,0,182,182,182,0,0,181,181,181,0,0,0,0,181,181,181,181,181,181,0,0,0,182,181,181,0,181,182,181,182,182,182,182,182,182,181,0,0,0,0,0,181,181,181,181,181,181,181,0,181,0,0,0,0,181,181,181,181,0,0,0,0,0,0,0,181,181,182,181,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,192,191,192,0,191,192,191,192,191,192,0,191,191,191,191,191,191,191,192,192,192,192,192,192,192,191,192,191,192,191,192,191,192,191,192,191,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,50,50,197,197,0,0,50,50,0,0,50,50,50,50,50,50,0,0,0,0,0,0,50,50,50,0,0,50,0,0,0,0,0,50,50,50,50,50,50,50,0,50,50,50,50,50,50,50,50,50,72,72,72,72,72,72,72,72,0,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,206,207,208,206,209,207,207,208,209,210,211,210,211],"f":"``````{{cb}d{}}0{ce{}{}}000`{ff}{hh}{{ce}d{}{}}0{{hh}j}{{ce}j{}{}}{{lnA`{Af{AbAd}}Ah{Al{Aj}}}{{B`{dAn}}}}``{{}h}{{hh}Bb}{{ce}Bb{}{}}0000```{{fBd}Bf}0{{hBd}Bf}{cc{}}{Bhh}1{Bjh}{{hc}dBl}??```{{nh}{{B`{{Bn{Bj}}f}}}}{{{C`{Bj}}Cb}{{B`{dCd}}}}{{hh}{{Al{j}}}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}1236450`{ce{}{}}0{cCn{}}{cD`{}}{c{{B`{e}}}{}{}}000{cDb{}}0`4444``44``````44{{{Dd{c}}Bd}Bf{DfDhDjDl}}{{{Dn{c}}}{{Dd{c}}}{DfDhDj}}{cc{}}{{{E`{c}}}{{Dd{c}}}{DfDhDj}}8`9:>=?<;554888`88{{{Dn{c}}cA`h}{{Ed{Eb}}}{DfDhDj}}{{{Dn{c}}Bd}Bf{DfDhDj}}3{{{Dn{c}}c}{{Al{{Ed{Eb}}}}}{DfDhDj}};{Ef{{Dn{c}}}{DfDhDj}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}{ce{}{}}00`00{{{E`{c}}cA`h}{{Ed{Eh}}}{DhDjDf}}{{{E`{c}}}Ef{DhDjDf}}{{{E`{c}}Bd}Bf{DhDjDf}}{cc{}}{{{E`{c}}c}{{Al{{Ed{Eh}}}}}{DhDjDf}}5{Ef{{E`{c}}}{DhDjDf}}:;<=>?9887666`66{{EfA`{Al{Aj}}}{{B`{EjAn}}}}{{EfA`El}{{B`{EjAn}}}}{Efl}{{}Ef}{{EfEf}Bb}{{ce}Bb{}{}}0000{{EfBd}Bf}9{{}l}>4{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}{ce{}{}}00``{{cb}d{}}01111{EnEn}{AjAj}{{ce}d{}{}}0{{F`A`}{{B`{EnFb}}}}{{lF`En}Aj}{{EnBd}Bf}{{AjBd}Bf}{cc{}}0``99``>?{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}?{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}20{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}46``{ce{}{}}0{c{{B`{e}}}{}{}}000``{cDb{}}0222222`````````````````````22{{AnBd}Bf}0{FdAn}{FfAn}{FhAn}{FjAn}{{{Cj{Fl}}}An}{FnAn}{G`An}{cc{}};{GbAn}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{An{{Al{Gd}}}}{cCn{}}{cD`{}}{c{{B`{e}}}{}{}}0{cDb{}}{ce{}{}}00```{{cb}d{}}00`111111`{GfGf}{GhGh}{GjGj}{{ce}d{}{}}00{{GfGf}j}{{GjGj}j}{{ce}j{}{}}0{{}Gf}{{}Gj}{c{{B`{Gf}}}Gl}{c{{B`{Gh}}}Gl}{c{{B`{Gj}}}Gl}`{{GfGf}Bb}{{GhGh}Bb}{{GjGj}Bb}{{ce}Bb{}{}}00000000000000``{{GfBd}Bf}{{GhBd}Bf}{{GjBd}Bf}{cc{}}00{Gh{{B`{GjAn}}}}{{Gfc}dBl}{{Gjc}dBl}{ce{}{}}00{{GfGf}{{Al{j}}}}{{GjGj}{{Al{j}}}}```````{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}12345064635021`{{Gfc}B`Gn}{{Ghc}B`Gn}{{Gjc}B`Gn}<<<{c{{B`{e}}}{}{}}00000{cDb{}}00>>>>>>>>>``````{{cb}d{}}????????{H`H`}{{ce}d{}{}}{{EhHb}Hd}{{EbHb}Hd}{{EhBd}Bf}{{EbBd}Bf}{{H`Bd}Bf}{cc{}}00{EbH`}{EhH`}2{{Ejh}Eh}{{Ejh}Eb}{ce{}{}}000{{EhHb{C`{Hf}}{Al{Hh}}c}{{B`{GjAn}}}Hj}{{EbHb{C`{Hf}}{Al{Hh}}c}{{B`{GjAn}}}Hj}{{H`Hb{C`{Hf}}{Al{Hh}}c}{{B`{GjAn}}}Hj}{Hl{{C`{Hn}}}}{{EhHb{C`{I`}}{Al{Hh}}}{{B`{GhAn}}}}{{EbHb{C`{I`}}{Al{Hh}}}{{B`{GhAn}}}}{{H`Hb{C`{I`}}{Al{Hh}}}{{B`{GhAn}}}}{{EhHb{C`{I`}}{Al{Hh}}c}{{B`{GhAn}}}Hj}{{EbHb{C`{I`}}{Al{Hh}}c}{{B`{GhAn}}}Hj}{{H`Hb{C`{I`}}{Al{Hh}}c}{{B`{GhAn}}}Hj}{Ehn}{{Ib{Af{AbAd}}}Hl}{{Id{Af{AbAd}}If}Eb}{Eh{{Af{AbAd}}}}{{HlGbIhI`}{{B`{d{Cj{Fl}}}}}}{{HlBh{C`{Hn}}}d}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}320465112305462463510{ce{}{}}{c{{B`{e}}}{}{}}0000000{cDb{}}000222222222222``````{{cb}d{}}`{{IjIl}Il}```4444`{{IjBh{C`{In}}J`}Jb}`{{{Jf{}{{Jd{c}}}}l{Af{AbAd}}IlJ`IjAh}{{B`{dc}}}Gd}``{JhJh}{{ce}d{}{}}{{IjlIn{Jj{Bh}}{Jj{{C`{In}}}}J`}Jb}``{Ijc{}}```````{{JhBd}Bf}{cc{}}0``{{lIlJ`In}{{Jl{In}}}}{IjIl}>>{{{Jf{}{{Jd{c}}}}}{{Al{Hb}}}Gd}````{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}6125430````````{{IjlIn{Cl{Jh{C`{In}}}}{C`{{Cl{JnJh{C`{In}}}}}}J`}{{B`{JbAn}}}}{ce{}{}}{c{{B`{e}}}{}{}}000{cDb{}}0`````````222222{{l{Af{AbAd}}IlJ`IjAhK`}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKb}{{Jl{d}}}}00{{l{Af{AbAd}}IlJ`IjAhKd}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKf}{{Jl{d}}}}0020000002{{l{Af{AbAd}}IlJ`IjAhKh}{{Jl{d}}}}33{{l{Af{AbAd}}IlJ`IjAhKj}{{Jl{d}}}}224{{l{Af{AbAd}}IlJ`IjAhKl}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKn}{{Jl{d}}}}66{{l{Af{AbAd}}IlJ`IjAhL`}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhLb}{{Jl{d}}}}8{{l{Af{AbAd}}IlJ`IjAhLd}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhLf}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhLh}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhLj}{{Jl{In}}}}{{l{Af{AbAd}}IlJ`IjAhLl}{{Jl{d}}}}==={{l{Af{AbAd}}IlJ`IjAhLn}{{Jl{d}}}}>>>>>>>>>>{{l{Af{AbAd}}IlJ`IjAhM`}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhInGbGbBh}{{Jl{In}}}}{{l{Af{AbAd}}IlJ`IjAhMb}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhMd}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKb}{{Jl{d}}}}0{{l{Af{AbAd}}IlJ`IjAhMf}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhMh}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhMj}{{Jl{d}}}}3{{l{Af{AbAd}}IlJ`IjAhMl}{{Jl{d}}}}44{{l{Af{AbAd}}IlJ`IjAhMn}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKf}{{Jl{d}}}}0{{l{Af{AbAd}}IlJ`IjAhN`}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhNb}{{Jl{d}}}}8888{{l{Af{AbAd}}IlJ`IjAhNd}{{Jl{d}}}}3{{l{Af{AbAd}}IlJ`IjKb}{{Jl{d}}}}04{{l{Af{AbAd}}IlJ`IjKf}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhNf}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhNh}{{Jl{d}}}}={{l{Af{AbAd}}IlJ`IjAhNj}{{Jl{d}}}}>{{l{Af{AbAd}}IlJ`IjAhNl}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{O`{Nn}}}{{Jl{d}}}}66{{l{Af{AbAd}}IlJ`IjAhKb}{{Jl{d}}}}7{{l{Af{AbAd}}IlJ`IjOb}{{Jl{d}}}}1{{l{Af{AbAd}}IlJ`IjAhOd}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{O`{Of}}}{{Jl{d}}}}::3:233{{l{Af{AbAd}}IlJ`IjAhOh}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{O`{Oj}}}{{Jl{d}}}}<<5<455{{l{Af{AbAd}}IlJ`IjAhOl}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{O`{On}}}{{Jl{d}}}}>>7>677{{l{Af{AbAd}}IlJ`IjAhA`}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{O`{Ab}}}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjKb}{{Jl{d}}}}0:09:::{{l{Af{AbAd}}IlJ`IjAhAd}{{Jl{d}}}};{{l{Af{AbAd}}IlJ`IjAhKn}{{Jl{d}}}}<<0<<<<<<<<<<<<<<<0<<<{{l{Af{AbAd}}IlJ`IjAhAf}{{Jl{d}}}}=={{l{Af{AbAd}}IlJ`IjAhGb{C`{In}}}{{Jl{In}}}}{{l{Af{AbAd}}IlJ`IjAhAh}{{Jl{d}}}}?{{l{Af{AbAd}}IlJ`IjAh{O`{Aj}}}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKb}{{Jl{d}}}}00000{{l{Af{AbAd}}IlJ`IjAhOb}{{Jl{d}}}}11{{l{Af{AbAd}}IlJ`IjAhAl}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{O`{An}}}{{Jl{d}}}}::3:{{l{Af{AbAd}}IlJ`IjOb}{{Jl{d}}}}444{{l{Af{AbAd}}IlJ`IjAhAA`}{{Jl{d}}}}5555{{l{Af{AbAd}}IlJ`IjAhAAb}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{O`{AAd}}}{{Jl{d}}}}>>7>3777{{l{Af{AbAd}}IlJ`IjAhAAf}{{Jl{d}}}}8{{l{Af{AbAd}}IlJ`IjAhAAh}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{O`{AAj}}}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjKb}{{Jl{d}}}}0;07;;;{{l{Af{AbAd}}IlJ`IjAhAAl}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{O`{AAn}}}{{Jl{d}}}}22=29=====`{ce{}{}}0`{{}Ah}`{{AhBd}Bf}{cc{}}`{Ah{{Al{c}}}AB`}0{{Ahe}cAB`{{ABd{}{{ABb{c}}}}}}{{Ahc}{{Al{c}}}AB`}65``2{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}```{c{{B`{e}}}{}{}}0{cDb{}}???`??{{ABflnIlJ`}{{Jl{d}}}}{{ABfIlJ`}{{Jl{d}}}}{{ABflnIlABhJ`}{{Jl{d}}}}{{}ABf}{{ABflnIlInBhJ`}{{Jl{d}}}}{{ABfBd}Bf}{cc{}}{ce{}{}}{{ABflnIlInJ`}{{Jl{d}}}}000000{{ABfABj}d}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}=>{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}999`99{{}ABl};{{ABlGb}{{Al{{Bn{Gb}}}}}};5{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}578{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}:{{ABlGb{Al{{C`{Gb}}}}}d}665>>>```````{{cb}d{}}00`????????{IfIf}{ABnABn}{ElEl}{{ce}d{}{}}00{{ABnABn}j}{{ce}j{}{}}{{}If}{{}El}{{IfIf}Bb}{{ABnABn}Bb}{{G`G`}Bb}{{ce}Bb{}{}}00000000000000{{IfBd}Bf}{{ABnBd}Bf}{{ElBd}Bf}{{G`Bd}Bf}0{cc{}}000{AC`G`}{ACbG`}``{{IfACd}{{Al{Hh}}}}{{IfACdACf}{{Al{Hh}}}}{{IfHb{Al{Hh}}}{{B`{HhG`}}}}{{ABnc}dBl}{{IfHb}{{Al{Hh}}}}{ce{}{}}000``{{A`{Al{El}}}{{B`{IfG`}}}}{{ABnABn}{{Al{j}}}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}301624530124560314652{G`{{Al{Gd}}}}:::{cCn{}}{cD`{}}{c{{B`{e}}}{}{}}0000000{cDb{}}000>>>>>>>>>>>>`>>{{{ACh{c}}Bd}BfDl}{cc{}}{ce{}{}}{ACj{{ACh{c}}}{}}{{{ACh{c}}}ACj{}}?>{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}};<=>776333`33{{AClBd}Bf}{{lInJ`}Jb}65{{ln}ACl}{{lInInJ`}Jb}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}6{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}???`??{{}ACn}{{ACnlnInIlJ`}{{Jl{AD`}}}}{{ACnlnIlJ`}{{Jl{AD`}}}}{{ACnlnIlInJ`}{{Jl{AD`}}}}{{ACnlnIlInInJ`}{{Jl{AD`}}}}{{ACnlnIlInInInJ`}{{Jl{AD`}}}}{{ACnBd}Bf}{cc{}}{ce{}{}}{{ACnlnIlInInInJ`}{{Jl{In}}}}6654544{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}=>?{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}??>555``55{{}ADb}76{{ADbGb{ADd{c}}c}d{}}4{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}463{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}<<<{{ADbGb}{{Al{{ADh{ADf}}}}}}`=={ADjIn}{{ADjBd}Bf}{cc{}}{ce{}{}}{{InIl}ADj}{ADjADl}{ADj{{Al{ADl}}}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}?>{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{ADjIl}d}??>999`99{{EjBd}Bf};{Ej{{Al{c}}}AB`}{{Ejc}{{Al{c}}}AB`}<{EjAh}{Ejn}{{n{Af{AbAd}}Ah}Ej}{Ej{{Af{AbAd}}}}5{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}:>=;<{c{{B`{e}}}{}{}}0{cDb{}}{ce{}{}}00````````````````{{cb}d{}}000000000```````111111111111111111111111{{HjHfHf{C`{Hf}}Hh}{{ADn{{Bn{Hf}}}}}}{{AE`HfHf{C`{Hf}}Hh}{{ADn{{Bn{Hf}}}}}}`````{AEbAEb}{AEdAEd}{AEfAEf}{AEhAEh}{AEjAEj}{AElAEl}{AEnAEn}{AF`AF`}{AFbAFb}{AFdAFd}{{ce}d{}{}}000000000{{AEdAEd}j}{{AEfAEf}j}{{AEhAEh}j}{{AEjAEj}j}{{AElAEl}j}{{AEnAEn}j}{{AF`AF`}j}{{ce}j{}{}}000000``{{}AEd}{{HjHfHf{C`{Hf}}BbHh}{{ADn{{Cl{Hf{Bn{Hf}}}}}}}}{{AE`HfHf{C`{Hf}}BbHh}{{ADn{{Cl{Hf{Bn{Hf}}}}}}}}{c{{B`{AEd}}}Gl}{c{{B`{AEf}}}Gl}{c{{B`{AEh}}}Gl}{c{{B`{AEj}}}Gl}{c{{B`{AEl}}}Gl}{c{{B`{AEn}}}Gl}{c{{B`{AF`}}}Gl}{{Hj{C`{Hf}}{C`{Hf}}Hh}{{ADn{d}}}}{{AE`{C`{Hf}}{C`{Hf}}Hh}{{ADn{d}}}}``{{AEdAEd}Bb}{{AEfAEf}Bb}{{AEhAEh}Bb}{{AEjAEj}Bb}{{AElAEl}Bb}{{AEnAEn}Bb}{{AF`AF`}Bb}{{AFbAFb}Bb}{{AFdAFd}Bb}{{ce}Bb{}{}}00000000000000000000000000000000000000000000`{{{AFf{c}}Bd}BfDl}{{AEbBd}Bf}{{AEdBd}Bf}{{AEfBd}Bf}{{AEhBd}Bf}{{AEjBd}Bf}{{AElBd}Bf}{{AEnBd}Bf}{{AF`Bd}Bf}{{AFbBd}Bf}{{AFdBd}Bf}{cc{}}00000000000{{HjHnHh}{{ADn{Hf}}}}{{AE`HnHh}{{ADn{Hf}}}}{{HjHh}{{ADn{AEf}}}}{{AE`Hh}{{ADn{AEf}}}}{{HjHh}{{ADn{AEh}}}}{{AE`Hh}{{ADn{AEh}}}}{{AEdc}dBl}{{AEfc}dBl}{{AEhc}dBl}{{AEjc}dBl}{{AElc}dBl}{{AEnc}dBl}{{AF`c}dBl}{{AFbc}dBl}{{AFdc}dBl}`{ce{}{}}00000000000{{Hj{C`{Hn}}Hh}{{ADn{AEd}}}}{{AE`{C`{Hn}}Hh}{{ADn{AEd}}}}{{HjHfHf{C`{Hf}}Hh}{{ADn{{Bn{Hf}}}}}}{{AE`HfHf{C`{Hf}}Hh}{{ADn{{Bn{Hf}}}}}}````````{{AEdAEd}{{Al{j}}}}{{AEfAEf}{{Al{j}}}}{{AEhAEh}{{Al{j}}}}{{AEjAEj}{{Al{j}}}}{{AElAEl}{{Al{j}}}}{{AEnAEn}{{Al{j}}}}{{AF`AF`}{{Al{j}}}}`{Hjd}`{{HjHfHh}{{ADn{d}}}}{{AE`HfHh}{{ADn{d}}}}``{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}05432163201654265140304165233456210312645023456104561023560432102345613204561{{HjAFbAFbHh}{{ADn{AFb}}}}{{AE`AFbAFbHh}{{ADn{AFb}}}}{{HjAEdBbHh}{{ADn{{Al{AFb}}}}}}{{AE`AEdBbHh}{{ADn{{Al{AFb}}}}}}{{HjAFbHh}{{ADn{{Cl{AEdAEd}}}}}}{{AE`AFbHh}{{ADn{{Cl{AEdAEd}}}}}}{{HjAFbAEdHh}{{ADn{AFb}}}}{{AE`AFbAEdHh}{{ADn{AFb}}}}{{HjAEdAEdHh}{{ADn{{Al{AFb}}}}}}{{AE`AEdAEdHh}{{ADn{{Al{AFb}}}}}}{{HjAFdAFdHh}{{ADn{AFd}}}}{{AE`AFdAFdHh}{{ADn{AFd}}}}{{HjAEdBbHh}{{ADn{{Al{AFd}}}}}}{{AE`AEdBbHh}{{ADn{{Al{AFd}}}}}}{{HjAFdHh}{{ADn{{Cl{AEdAEd}}}}}}{{AE`AFdHh}{{ADn{{Cl{AEdAEd}}}}}}{{HjAFdAEdHh}{{ADn{AFd}}}}{{AE`AFdAEdHh}{{ADn{AFd}}}}{{HjAEdAEdHh}{{ADn{{Al{AFd}}}}}}{{AE`AEdAEdHh}{{ADn{{Al{AFd}}}}}}{{HjHf{C`{Hf}}Hh}{{ADn{d}}}}{{AE`Hf{C`{Hf}}Hh}{{ADn{d}}}}`{{AEdc}B`Gn}{{AEfc}B`Gn}{{AEhc}B`Gn}{{AEjc}B`Gn}{{AElc}B`Gn}{{AEnc}B`Gn}{{AF`c}B`Gn}{{HjHf}d}{{HjHn}d}0111{{HjHh}d}22{{Hj{C`{Hf}}}d}33```{{HjAFhHfHh}{{ADn{Hf}}}}{{AE`AFhHfHh}{{ADn{Hf}}}}{{HjAFhHfHfHh}{{ADn{d}}}}{{AE`AFhHfHfHh}{{ADn{d}}}}`{ce{}{}}000000000``{c{{B`{e}}}{}{}}00000000000000000000000``{cDb{}}00000000000`222222222222222222222222``222222222222```````{{cb}d{}}`{{{AFj{c}}}c{}}`44``{{{AFl{}{{Jd{c}}}}ln{Af{AbAd}}AhGb}{{B`{AFnc}}}Gd}{{{AFl{}{{Jd{c}}}}l{Af{AbAd}}IlJ`IjAhGb}{{B`{Inc}}}Gd}{{{AFl{}{{Jd{c}}}}l{Af{AbAd}}IlJ`IjAhGb}{{B`{dc}}}Gd}``{{{AFj{c}}}{{AFj{c}}}AG`}{{ce}d{}{}}5````{{{AFj{c}}{AFj{c}}}BbDf}{{ce}Bb{}{}}0000```{{{AFl{}{{Jd{c}}}}}{{Al{{C`{Gb}}}}}Gd}{{{AFj{c}}Bd}BfDl}{cc{}}`{{{AFj{c}}e}dDjBl}{{{AFl{}{{Jd{c}}}}}{{Al{Bh}}}Gd}{ce{}{}}{{{AFl{}{{Jd{c}}}}}BbGd}{{{AFl{}{{Jd{c}}}}{Af{AbAd}}}BbGd}{{{AFl{}{{Jd{c}}}}}{{Al{Bb}}}Gd}11{{{AFl{}{{Jd{c}}}}{Af{AbAd}}}{{B`{AGbc}}}Gd}{{Gbc}{{AFj{c}}}{}}`````{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}`{{{AFj{c}}}Gb{}}````={c{{B`{e}}}{}{}}0{cDb{}}```````??{{{AFl{}{{Jd{c}}}}}{{Al{{C`{Gb}}}}}Gd}{ce{}{}}{{ln{Af{AbAd}}Ah{AFj{AGd}}}{{Jl{AFn}}}}{{ln{Af{AbAd}}Ah{AFj{AGf}}}{{Jl{AFn}}}}{{ln{Af{AbAd}}Ah{AFj{AGh}}}{{Jl{AFn}}}}21{{ln{Af{AbAd}}AhAGf}{{Jl{AFn}}}}222`{{ln{Af{AbAd}}Ah{AFj{AGj}}}{{Jl{AFn}}}}{{{Af{AbAd}}{C`{Gb}}}{{Jl{{Cl{AGbAGb{Bn{AGb}}}}}}}}{{ln{Af{AbAd}}Ah{C`{Gb}}}{{Jl{{Cl{AGbAGl{Bn{AGl}}}}}}}}``77775{AGnACj}{AH`AHb}{cc{}}0::{Ah{{ACh{Hf}}}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}3402615{c{{B`{e}}}{}{}}000{cDb{}}0{ce{}{}}00000{{ln{Af{AbAd}}Ah{AFj{AGd}}}{{Jl{AFn}}}}0{{ln{Af{AbAd}}Ah{AFj{AGf}}}{{Jl{AFn}}}}11000011{{ln{Af{AbAd}}Ah{AFj{AHd}}}{{Jl{AFn}}}}11{{ln{Af{AbAd}}Ah{AFj{AHf}}}{{Jl{AFn}}}}222{{ln{Af{AbAd}}Ah{AFj{AHh}}}{{Jl{AFn}}}}3333334```{{cb}d{}}66{{AHjln{Af{AbAd}}AhGb}{{B`{AFnAn}}}}{{AHjln{Af{AbAd}}AhGb}{{B`{{Cl{AFnAGb}}An}}}}{Cb{{ADh{A`}}}}{{lCb}{{B`{{Cl{A`Aj}}An}}}}{FdFd}{{ce}d{}{}}{{nAhh}ABj}{c{{`{Dl}}}{{ADf{Bd}{{ABb{Bf}}}}}}{{FdFd}Bb}{{ce}Bb{}{}}0000{c{{Jj{AFh}}}{{AHl{AHb}}}}{ABh{{Jj{AFh}}}}0{{A`ABh}{{Al{{AHn{ACd}}}}}}{{A`Bh}{{Al{{AHn{ACd}}}}}}{{A`ABh}Hb}{{FdBd}Bf}0{cc{}}{Hb{{AI`{ABh}}}}{AFhAGb}{ce{}{}}{{AGbBh}{{B`{{Cl{AGbBh}}Fd}}}}{{AFhAFh}AFh}{{BhBh}Bh}{{AGbBh}Bh}{ABjd}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{ln}{{B`{dFh}}}}={cCn{}}{cD`{}}{c{{B`{e}}}{}{}}0{cDb{}}{ce{}{}}00```````````````````````{{cb}d{}}11{I`I`}{{ce}d{}{}}{c{{B`{I`}}}Gl}{{I`I`}Bb}{{ce}Bb{}{}}0000{ABhI`}{{I`Bd}Bf}{{{Jj{c}}}I`{{AHl{I`}}}}{AIbI`}{JnI`}{AIdI`}{AIfI`}{BjI`}{AFhI`}{HnI`}{{{Bn{c}}}I`{{AHl{I`}}}}{AIhI`}{HhI`}{cc{}}{HfI`}{AIjI`}{{{C`{c}}}I`{{AHl{I`}}AG`}}{ce{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Cj{e}}}{{B`{{Cj{e}}g}}}{}{}{}}{{c{Cf{eg}}}{{B`{{Cf{eg}}i}}}{}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{I`c}B`Gn}8{c{{B`{e}}}{}{}}0{cDb{}}:::`````````````","c":[],"p":[[5,"Private",1955],[1,"unit"],[5,"LLVMCompileError",0],[6,"OptLevel",0],[6,"Ordering",1956],[5,"Context",1957],[5,"Module",1958],[5,"Program",1959],[6,"CoreType",1960],[6,"CoreLibfunc",1960],[5,"ProgramRegistry",1961],[5,"MetadataStorage",823],[5,"DebugLocations",185],[6,"Option",1962],[6,"Error",241],[6,"Result",1963],[1,"bool"],[5,"Formatter",1964],[8,"Result",1964],[1,"usize"],[1,"u8"],[10,"Hasher",1965],[5,"Vec",1966],[1,"slice"],[5,"Path",1967],[5,"Error",1968],[5,"HashMap",1969],[5,"VecDeque",1970],[5,"Box",1971],[1,"tuple"],[5,"SmolStr",1972],[5,"String",1973],[5,"TypeId",1974],[6,"ProgramCache",82],[10,"PartialEq",1956],[10,"Eq",1956],[10,"Hash",1965],[10,"Debug",1964],[5,"AotProgramCache",109],[5,"JitProgramCache",131],[5,"AotNativeExecutor",409],[5,"Rc",1975],[5,"NativeContext",154],[5,"JitNativeExecutor",409],[5,"NativeModule",1163],[5,"MetadataComputationConfig",910],[5,"DebugInfo",185],[5,"RootDatabase",1976],[5,"DiagnosticAdded",1977],[5,"LayoutError",1820],[5,"LayoutError",1978],[6,"Error",1979],[5,"TryFromIntError",1980],[6,"ProgramRegistryError",1961],[6,"EditStateError",1981],[6,"GasMetadataError",910],[5,"ConcreteTypeId",1982],[10,"Error",1983],[5,"BuiltinStats",292],[5,"ExecutionResult",292],[5,"ContractExecutionResult",292],[10,"Deserializer",1984],[10,"Serializer",1985],[6,"NativeExecutor",409],[5,"FunctionId",1982],[6,"c_void",1986],[5,"Felt",1987],[1,"u128"],[10,"StarknetSyscallHandler",1189],[5,"ArgumentMapper",409],[1,"u64"],[6,"JitValue",1874],[5,"Bump",1988],[5,"Library",1989],[5,"GasMetadata",910],[6,"CoreTypeConcrete",1960],[5,"LibfuncHelper",512],[5,"Block",1990],[5,"Value",1991],[5,"Location",1992],[5,"Operation",1993],[17,"Error"],[10,"LibfuncBuilder",512],[6,"BranchTarget",512],[1,"array"],[8,"Result",241],[1,"i64"],[6,"ApTrackingConcreteLibfunc",1994],[5,"SignatureOnlyConcreteLibfunc",1995],[6,"ArrayConcreteLibfunc",1996],[5,"SignatureAndTypeConcreteLibfunc",1995],[6,"BoolConcreteLibfunc",1997],[6,"BoxConcreteLibfunc",1998],[6,"Bytes31ConcreteLibfunc",1999],[5,"SignatureAndConstConcreteLibfunc",2000],[6,"CastConcreteLibfunc",2001],[5,"DowncastConcreteLibfunc",2001],[6,"ConstConcreteLibfunc",2002],[5,"ConstAsBoxConcreteLibfunc",2002],[5,"ConstAsImmediateConcreteLibfunc",2002],[5,"ConstConcreteType",2002],[6,"DebugConcreteLibfunc",2003],[6,"EcConcreteLibfunc",2004],[6,"EnumConcreteLibfunc",2005],[5,"EnumFromBoundedIntConcreteLibfunc",2005],[5,"EnumInitConcreteLibfunc",2005],[6,"Felt252Concrete",2006],[6,"Felt252BinaryOperationConcrete",2006],[5,"Felt252ConstConcreteLibfunc",2006],[6,"Felt252DictConcreteLibfunc",2007],[6,"Felt252DictEntryConcreteLibfunc",2007],[5,"SignatureAndFunctionConcreteLibfunc",2008],[6,"GasConcreteLibfunc",2009],[6,"MemConcreteLibfunc",2010],[6,"NullableConcreteLibfunc",2011],[6,"PedersenConcreteLibfunc",2012],[6,"PoseidonConcreteLibfunc",2013],[6,"Sint128Concrete",2014],[5,"Sint128Traits",2014],[5,"IntConstConcreteLibfunc",2015],[5,"IntOperationConcreteLibfunc",2015],[8,"Sint16Concrete",2016],[5,"Sint16Traits",2016],[8,"Sint32Concrete",2016],[5,"Sint32Traits",2016],[8,"Sint64Concrete",2016],[5,"Sint64Traits",2016],[8,"Sint8Concrete",2016],[5,"Sint8Traits",2016],[6,"StarkNetConcreteLibfunc",2017],[6,"StructConcreteLibfunc",2018],[6,"Uint128Concrete",2019],[5,"Uint128Traits",2019],[8,"Uint16Concrete",2020],[5,"Uint16Traits",2020],[6,"Uint256Concrete",2021],[8,"Uint32Concrete",2020],[5,"Uint32Traits",2020],[6,"Uint512Concrete",2022],[8,"Uint64Concrete",2020],[5,"Uint64Traits",2020],[8,"Uint8Concrete",2020],[5,"Uint8Traits",2020],[10,"Any",1974],[17,"Output"],[10,"FnOnce",2023],[5,"DebugUtils",857],[1,"str"],[5,"ExecutionEngine",2024],[5,"EnumSnapshotVariantsMeta",889],[5,"GasCost",910],[6,"CostError",2025],[6,"ApChangeError",2026],[5,"StatementIdx",1959],[6,"CostTokenType",2009],[5,"PrimeModuloMeta",1041],[5,"BigUint",2027],[5,"ReallocBindingsMeta",1062],[5,"RuntimeBindingsMeta",1084],[5,"OperationRef",1993],[5,"SnapshotClonesMeta",1117],[8,"CloneFn",1117],[10,"Fn",2023],[5,"Arc",2028],[5,"TailRecursionMeta",1139],[5,"BlockRef",1990],[8,"SyscallResult",1189],[5,"DummySyscallHandler",1189],[5,"Felt252Abi",1189],[5,"U256",1189],[5,"ExecutionInfo",1189],[5,"ExecutionInfoV2",1189],[5,"TxV2Info",1189],[5,"ResourceBounds",1189],[5,"BlockInfo",1189],[5,"TxInfo",1189],[5,"Secp256k1Point",1189],[5,"Secp256r1Point",1189],[5,"ArrayAbi",1189],[1,"u32"],[5,"WithSelf",1662],[10,"TypeBuilder",1662],[5,"Type",2029],[10,"Clone",2030],[5,"Layout",1978],[5,"InfoAndTypeConcreteType",2031],[5,"InfoOnlyConcreteType",2031],[5,"BoundedIntConcreteType",2032],[5,"EnumConcreteType",2005],[8,"TypeLayout",1750],[5,"PRIME",1754],[5,"HALF_PRIME",1754],[5,"BigInt",2033],[6,"StarkNetTypeConcrete",2017],[6,"Secp256PointTypeConcrete",2034],[5,"StructConcreteType",2018],[10,"ProgramRegistryExt",1820],[10,"Into",2035],[5,"GenFunction",1959],[6,"Cow",2036],[1,"i16"],[1,"i128"],[1,"i8"],[1,"u16"],[1,"i32"],[15,"Struct",1942],[15,"Enum",1942],[15,"Felt252Dict",1942],[15,"BoundedInt",1942],[15,"Secp256K1Point",1942],[15,"Secp256R1Point",1942]],"b":[[32,"impl-Debug-for-LLVMCompileError"],[33,"impl-Display-for-LLVMCompileError"],[36,"impl-From%3Cusize%3E-for-OptLevel"],[38,"impl-From%3Cu8%3E-for-OptLevel"],[91,"impl-From%3CAotProgramCache%3C\'a,+K%3E%3E-for-ProgramCache%3C\'a,+K%3E"],[93,"impl-From%3CJitProgramCache%3C\'a,+K%3E%3E-for-ProgramCache%3C\'a,+K%3E"],[264,"impl-Display-for-Error"],[265,"impl-Debug-for-Error"],[266,"impl-From%3CLayoutError%3E-for-Error"],[267,"impl-From%3CLayoutError%3E-for-Error"],[268,"impl-From%3CError%3E-for-Error"],[269,"impl-From%3CTryFromIntError%3E-for-Error"],[270,"impl-From%3CBox%3CProgramRegistryError%3E%3E-for-Error"],[271,"impl-From%3CEditStateError%3E-for-Error"],[272,"impl-From%3CGasMetadataError%3E-for-Error"],[434,"impl-From%3CAotNativeExecutor%3E-for-NativeExecutor%3C\'m%3E"],[435,"impl-From%3CJitNativeExecutor%3C\'m%3E%3E-for-NativeExecutor%3C\'m%3E"],[960,"impl-Display-for-GasMetadataError"],[961,"impl-Debug-for-GasMetadataError"],[966,"impl-From%3CCostError%3E-for-GasMetadataError"],[967,"impl-From%3CApChangeError%3E-for-GasMetadataError"],[1846,"impl-Debug-for-LayoutError"],[1847,"impl-Display-for-LayoutError"],[1911,"impl-From%3C%5BT;+N%5D%3E-for-JitValue"],[1912,"impl-From%3Ci16%3E-for-JitValue"],[1913,"impl-From%3Ci64%3E-for-JitValue"],[1914,"impl-From%3Ci128%3E-for-JitValue"],[1915,"impl-From%3Ci8%3E-for-JitValue"],[1916,"impl-From%3Cu8%3E-for-JitValue"],[1917,"impl-From%3Cu32%3E-for-JitValue"],[1918,"impl-From%3Cu64%3E-for-JitValue"],[1919,"impl-From%3CVec%3CT%3E%3E-for-JitValue"],[1920,"impl-From%3Cu16%3E-for-JitValue"],[1921,"impl-From%3Cu128%3E-for-JitValue"],[1923,"impl-From%3CFelt%3E-for-JitValue"],[1924,"impl-From%3Ci32%3E-for-JitValue"],[1925,"impl-From%3C%26%5BT%5D%3E-for-JitValue"]]}],\ +["cairo_native",{"doc":"Cairo Sierra to MLIR compiler and JIT engine","t":"PPFPPGNNNNNNCNNNNNNHCCNNNNNNNCCCNNNNNNNNNNCCCHHNNNNNNNNNNNNNNNCNNNNNNNNNNCNNNNCCNNPEPEGCNNNNNNNCNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNOONNOONNNNNNNNNNNNNNOONNNNNNOONNNNNNNNPPPGPPPPPPPPPPPPPIPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFNNNONNNNNNONNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNPFFPFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGRPKFPNCNCCCNNNNCNCMCCNNNCCCNCCCCCCCNNNCCHNNNMCCCCNNNNNNNNNNNNNNCCCCCCCCNNNNNNNNCCCCCCCCCNNNNNNHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHFNNCNCNNCNNNNNNCCNNNNNNNNCCCNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNPPFFGFPNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIFNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNFFFPFFFPFFFKIFFFNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNMNOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONMNNNNNNNNMNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNMNMNMNNNNNNNNNNONNNNNNNNNNNNMNMNOOOOOOOONNNNNNNONOMNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNMNMNMNMNMNMNMNMNMNMNONNNNNNNNNNNNNNNNNNNOOOMNMNONNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNOOOORKFNCNCNNCCMMMCCNNCNCCCCNNNNNNCCCMNNCNMNMMMMMMNCCCCCNNNNNNNCNCCCCNNNNCCCCCCCNNMNHHHHHHHHHHIHHHFFNNNNHNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNHHHHHHHHHHHHHHHHHHHHHHHHHHFKSNNNMMHHNNHHNNNNNNHHHHHHNNNHHNHHHHHNNNNNNNHNNNNNNNNNPPPPPPPPGPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOO","n":["Aggressive","Default","LLVMCompileError","Less","None","OptLevel","__clone_box","__clone_box","borrow","borrow","borrow_mut","borrow_mut","cache","clone","clone","clone_into","clone_into","cmp","compare","compile","context","debug_info","default","eq","equivalent","equivalent","equivalent","equivalent","equivalent","error","execution_result","executor","fmt","fmt","fmt","from","from","from","from","hash","into","into","libfuncs","metadata","module","module_to_object","object_to_shared_lib","partial_cmp","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","starknet","to_owned","to_owned","to_smolstr","to_string","try_from","try_from","try_into","try_into","type_id","type_id","types","upcast","upcast","upcast_mut","upcast_mut","utils","values","vzip","vzip","Aot","AotProgramCache","Jit","JitProgramCache","ProgramCache","aot","borrow","borrow_mut","fmt","from","from","from","into","jit","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","AotProgramCache","borrow","borrow_mut","compile_and_insert","fmt","from","get","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","JitProgramCache","borrow","borrow_mut","compile_and_insert","context","fmt","from","get","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeContext","borrow","borrow_mut","compile","compile_with_metadata","context","default","eq","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","from","initialize_mlir","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","DebugInfo","DebugLocations","__clone_box","__clone_box","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","extract","extract","fmt","fmt","from","from","funcs","funcs","into","into","libfunc_declarations","libfunc_declarations","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","statements","statements","to_owned","to_owned","try_from","try_from","try_into","try_into","type_declarations","type_declarations","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","ConstDataMismatch","EditStateError","Err","Error","Error","GasMetadataError","InsufficientGasError","LLVMCompileError","LayoutError","LayoutErrorPolyfill","MissingMetadata","MissingParameter","MissingSyscallHandler","MlirError","Ok","ParseAttributeError","ProgramRegistryErrorBoxed","Result","SierraAssert","TryFromIntError","UnexpectedValue","borrow","borrow_mut","fmt","fmt","from","from","from","from","from","from","from","from","into","make_missing_parameter","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","to_smolstr","to_string","try_from","try_into","type_id","upcast","upcast_mut","vzip","BuiltinStats","ContractExecutionResult","ExecutionResult","__clone_box","__clone_box","__clone_box","bitwise","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builtin_stats","clone","clone","clone","clone_into","clone_into","clone_into","cmp","cmp","compare","compare","default","default","deserialize","deserialize","deserialize","ec_op","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error_msg","failure_flag","fmt","fmt","fmt","from","from","from","from_execution_result","hash","hash","into","into","into","partial_cmp","partial_cmp","pedersen","poseidon","range_check","remaining_gas","remaining_gas","return_value","return_values","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","segment_arena","serialize","serialize","serialize","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","Aot","AotNativeExecutor","ArgumentMapper","Jit","JitNativeExecutor","NativeExecutor","__clone_box","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","find_function_ptr","find_function_ptr","fmt","fmt","fmt","from","from","from","from","from","from","from_native_module","from_native_module","into","into","into","into","invoke_contract_dynamic","invoke_contract_dynamic","invoke_contract_dynamic","invoke_data","invoke_dynamic","invoke_dynamic","invoke_dynamic","invoke_dynamic_with_syscall_handler","invoke_dynamic_with_syscall_handler","invoke_dynamic_with_syscall_handler","module","new","new","program_registry","push","push_aligned","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","vzip","BranchTarget","Error","Jump","LibfuncBuilder","LibfuncHelper","Return","__clone_box","ap_tracking","append_block","array","bitwise","bool","borrow","borrow","borrow_mut","borrow_mut","box","br","branch_align","build","bytes31","cast","clone","clone_into","cond_br","const","coupon","debug","deref","drop","dup","ec","enum","felt252","felt252_dict","felt252_dict_entry","fmt","from","from","function_call","gas","increment_builtin_counter","init_block","into","into","is_function_call","mem","nullable","pedersen","poseidon","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","sint128","sint16","sint32","sint64","sint8","snapshot_take","starknet","struct","switch","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","uint128","uint16","uint256","uint32","uint512","uint64","uint8","unconditional_jump","unwrap_non_zero","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","build","build_disable","build_enable","build_revoke","build","build_append","build_get","build_len","build_new","build_pop_front","build_pop_front_consume","build_slice","build_snapshot_pop_back","build_snapshot_pop_front","build_span_from_tuple","build","build","build_bool_not","build_bool_to_felt252","build","build_into_box","build_unbox","build","build","build_const","build_from_felt252","build_to_felt252","build","build_downcast","build_upcast","build","build_const_as_box","build_const_as_immediate","build_const_type_value","build","build_buy","build_refund","build","build_print","build","build","build","build_is_zero","build_neg","build_point_from_x","build_state_add","build_state_add_mul","build_state_finalize","build_state_init","build_try_new","build_unwrap_point","build_zero","build","build_enum_value","build_from_bounded_int","build_init","build_match","build_snapshot_match","build","build_binary_operation","build_const","build_is_zero","build","build_new","build_squash","build","build_finalize","build_get","build","build","build_builtin_withdraw_gas","build_get_available_gas","build_get_builtin_costs","build_withdraw_gas","build","build_alloc_local","build_finalize_locals","build_rename","build_store_local","build_store_temp","build","build","build_pedersen","build","build_hades_permutation","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build","build_call_contract","build_class_hash_const","build_class_hash_to_felt252","build_class_hash_try_from_felt252","build_contract_address_const","build_contract_address_to_felt252","build_contract_address_try_from_felt252","build_deploy","build_emit_event","build_get_block_hash","build_get_execution_info","build_get_execution_info_v2","build_keccak","build_library_call","build_replace_class","build_send_message_to_l1","build_storage_address_from_base","build_storage_address_from_base_and_offset","build_storage_address_to_felt252","build_storage_address_try_from_felt252","build_storage_base_address_const","build_storage_base_address_from_felt252","build_storage_read","build_storage_write","build","build_construct","build_deconstruct","build_struct_value","build","build_byte_reverse","build_const","build_divmod","build_equal","build_from_felt252","build_guarantee_mul","build_guarantee_verify","build_is_zero","build_operation","build_square_root","build_to_felt252","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_divmod","build_is_zero","build_square_root","build_u256_guarantee_inv_mod_n","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_divmod_u256","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build","MetadataStorage","borrow","borrow_mut","debug_utils","default","enum_snapshot_variants","fmt","from","gas","get","get_mut","get_or_insert_with","insert","into","new","prime_modulo","realloc_bindings","remove","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","runtime_bindings","snapshot_clones","tail_recursion","try_from","try_into","type_id","upcast","upcast_mut","vzip","DebugUtils","borrow","borrow_mut","breakpoint_marker","debug_breakpoint_trap","debug_print","default","dump_mem","fmt","from","into","print_felt252","print_i1","print_i128","print_i32","print_i64","print_i8","print_pointer","register_impls","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","EnumSnapshotVariantsMeta","borrow","borrow_mut","default","from","get_variants","into","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","set_mapping","try_from","try_into","type_id","upcast","upcast_mut","vzip","ApChangeError","CostError","GasCost","GasMetadata","GasMetadataError","MetadataComputationConfig","NotEnoughGas","__clone_box","__clone_box","__clone_box","ap_change_info","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","compare","default","default","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","function_set_costs","gas_info","get_gas_cost_for_statement","get_gas_cost_for_statement_and_cost_token_type","get_initial_available_gas","hash","initial_required_gas","into","into","into","into","linear_ap_change_solver","linear_gas_solver","new","partial_cmp","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","to_owned","to_owned","to_owned","to_smolstr","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","vzip","PrimeModuloMeta","borrow","borrow_mut","fmt","from","into","new","prime","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","ReallocBindingsMeta","borrow","borrow_mut","fmt","free","from","into","new","realloc","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","RuntimeBindingsMeta","borrow","borrow_mut","default","dict_alloc_free","dict_alloc_new","dict_gas_refund","dict_get","dict_insert","fmt","from","into","libfunc_debug_print","libfunc_ec_point_from_x_nz","libfunc_ec_point_try_new_nz","libfunc_ec_state_add","libfunc_ec_state_add_mul","libfunc_ec_state_try_finalize_nz","libfunc_hades_permutation","libfunc_pedersen","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","CloneFn","SnapshotClonesMeta","borrow","borrow_mut","default","from","into","register","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","wrap_invoke","TailRecursionMeta","borrow","borrow_mut","depth_counter","fmt","from","into","new","recursion_target","return_target","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","set_return_target","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeModule","borrow","borrow_mut","fmt","from","get_metadata","insert_metadata","into","metadata","module","new","program_registry","remove_metadata","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","ArrayAbi","BlockInfo","DummySyscallHandler","Err","ExecutionInfo","ExecutionInfoV2","Felt252Abi","Ok","ResourceBounds","Secp256k1Point","Secp256r1Point","StarknetSyscallHandler","SyscallResult","TxInfo","TxV2Info","U256","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","account_contract_address","account_contract_address","account_deployment_data","block_info","block_info","block_number","block_timestamp","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","call_contract","call_contract","caller_address","caller_address","capacity","chain_id","chain_id","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","cmp","cmp","compare","compare","compare","compare","compare","compare","compare","contract_address","contract_address","default","deploy","deploy","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","emit_event","emit_event","entry_point_selector","entry_point_selector","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fee_data_availability_mode","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","get_block_hash","get_block_hash","get_execution_info","get_execution_info","get_execution_info_v2","get_execution_info_v2","hash","hash","hash","hash","hash","hash","hash","hash","hash","hi","into","into","into","into","into","into","into","into","into","into","into","into","keccak","keccak","library_call","library_call","lo","max_amount","max_fee","max_fee","max_price_per_unit","nonce","nonce","nonce_data_availability_mode","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","paymaster_data","pop_log","ptr","replace_class","replace_class","resource","resource_bounds","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","secp256k1_add","secp256k1_add","secp256k1_get_point_from_x","secp256k1_get_point_from_x","secp256k1_get_xy","secp256k1_get_xy","secp256k1_mul","secp256k1_mul","secp256k1_new","secp256k1_new","secp256r1_add","secp256r1_add","secp256r1_get_point_from_x","secp256r1_get_point_from_x","secp256r1_get_xy","secp256r1_get_xy","secp256r1_mul","secp256r1_mul","secp256r1_new","secp256r1_new","send_message_to_l1","send_message_to_l1","sequencer_address","serialize","serialize","serialize","serialize","serialize","serialize","serialize","set_account_contract_address","set_block_number","set_block_timestamp","set_caller_address","set_chain_id","set_contract_address","set_max_fee","set_nonce","set_sequencer_address","set_signature","set_transaction_hash","set_version","signature","signature","since","storage_read","storage_read","storage_write","storage_write","tip","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","transaction_hash","transaction_hash","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","tx_info","tx_info","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","until","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","version","version","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","x","x","y","y","Error","TypeBuilder","WithSelf","__clone_box","array","as_ref","bitwise","borrow","borrow_mut","bounded_int","box","build","build_default","build_drop","builtin_costs","bytes31","clone","clone_into","coupon","deref","ec_op","ec_point","ec_state","enum","eq","equivalent","equivalent","equivalent","equivalent","equivalent","felt252","felt252_dict","felt252_dict_entry","fields","fmt","from","gas_builtin","hash","integer_width","into","is_builtin","is_complex","is_integer_signed","is_memory_allocated","is_zst","layout","new","non_zero","nullable","pedersen","poseidon","range_check","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","segment_arena","self_ty","snapshot","squashed_felt252_dict","starknet","struct","to_owned","try_from","try_into","type_id","uint128","uint128_mul_guarantee","uint16","uint32","uint64","uint8","uninitialized","upcast","upcast_mut","variants","vzip","build","build","build","build","build","build","build","build","build","build","TypeLayout","build","get_layout_for_variants","get_type_for_variants","HALF_PRIME","PRIME","borrow","borrow","borrow_mut","borrow_mut","build","deref","deref","from","from","into","into","register_prime_modulo_meta","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","build","build","build","build","build","build","build","build","build","build","build","build","build_class_hash","build_contract_address","build_secp256_point","build_storage_address","build_storage_base_address","build_system","build","build","build","build","build","build","build","build","LayoutError","ProgramRegistryExt","SHARED_LIBRARY_EXT","__clone_box","borrow","borrow_mut","build_type","build_type_with_layout","cairo_to_sierra","cairo_to_sierra_with_debug_info","clone","clone_into","create_engine","debug_with","eq","equivalent","equivalent","equivalent","equivalent","equivalent","felt252_bigint","felt252_short_str","felt252_str","find_entry_point","find_entry_point_by_idx","find_function_id","fmt","fmt","from","generate_function_name","get_integer_layout","into","layout_repeat","next_multiple_of_u32","next_multiple_of_usize","padding_needed_for","register_runtime_symbols","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","run_pass_manager","to_owned","to_smolstr","to_string","try_from","try_into","type_id","upcast","upcast_mut","vzip","Array","BoundedInt","Bytes31","EcPoint","EcState","Enum","Felt252","Felt252Dict","JitValue","Null","Secp256K1Point","Secp256R1Point","Sint128","Sint16","Sint32","Sint64","Sint8","Struct","Uint128","Uint16","Uint32","Uint64","Uint8","__clone_box","borrow","borrow_mut","clone","clone_into","deserialize","eq","equivalent","equivalent","equivalent","equivalent","equivalent","felt_str","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","into","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","serialize","to_owned","try_from","try_into","type_id","upcast","upcast_mut","vzip","debug_name","debug_name","debug_name","fields","range","tag","value","value","value","x","x","y","y"],"q":[[0,"cairo_native"],[82,"cairo_native::cache"],[109,"cairo_native::cache::aot"],[131,"cairo_native::cache::jit"],[154,"cairo_native::context"],[185,"cairo_native::debug_info"],[241,"cairo_native::error"],[292,"cairo_native::execution_result"],[409,"cairo_native::executor"],[512,"cairo_native::libfuncs"],[607,"cairo_native::libfuncs::ap_tracking"],[611,"cairo_native::libfuncs::array"],[622,"cairo_native::libfuncs::bitwise"],[623,"cairo_native::libfuncs::bool"],[626,"cairo_native::libfuncs::box"],[629,"cairo_native::libfuncs::branch_align"],[630,"cairo_native::libfuncs::bytes31"],[634,"cairo_native::libfuncs::cast"],[637,"cairo_native::libfuncs::const"],[641,"cairo_native::libfuncs::coupon"],[644,"cairo_native::libfuncs::debug"],[646,"cairo_native::libfuncs::drop"],[647,"cairo_native::libfuncs::dup"],[648,"cairo_native::libfuncs::ec"],[659,"cairo_native::libfuncs::enum"],[665,"cairo_native::libfuncs::felt252"],[669,"cairo_native::libfuncs::felt252_dict"],[672,"cairo_native::libfuncs::felt252_dict_entry"],[675,"cairo_native::libfuncs::function_call"],[676,"cairo_native::libfuncs::gas"],[681,"cairo_native::libfuncs::mem"],[687,"cairo_native::libfuncs::nullable"],[688,"cairo_native::libfuncs::pedersen"],[690,"cairo_native::libfuncs::poseidon"],[692,"cairo_native::libfuncs::sint128"],[700,"cairo_native::libfuncs::sint16"],[709,"cairo_native::libfuncs::sint32"],[718,"cairo_native::libfuncs::sint64"],[727,"cairo_native::libfuncs::sint8"],[736,"cairo_native::libfuncs::snapshot_take"],[737,"cairo_native::libfuncs::starknet"],[762,"cairo_native::libfuncs::struct"],[766,"cairo_native::libfuncs::uint128"],[778,"cairo_native::libfuncs::uint16"],[788,"cairo_native::libfuncs::uint256"],[793,"cairo_native::libfuncs::uint32"],[803,"cairo_native::libfuncs::uint512"],[805,"cairo_native::libfuncs::uint64"],[815,"cairo_native::libfuncs::uint8"],[825,"cairo_native::libfuncs::unconditional_jump"],[826,"cairo_native::libfuncs::unwrap_non_zero"],[827,"cairo_native::metadata"],[861,"cairo_native::metadata::debug_utils"],[893,"cairo_native::metadata::enum_snapshot_variants"],[914,"cairo_native::metadata::gas"],[1045,"cairo_native::metadata::prime_modulo"],[1066,"cairo_native::metadata::realloc_bindings"],[1088,"cairo_native::metadata::runtime_bindings"],[1121,"cairo_native::metadata::snapshot_clones"],[1143,"cairo_native::metadata::tail_recursion"],[1167,"cairo_native::module"],[1193,"cairo_native::starknet"],[1666,"cairo_native::types"],[1746,"cairo_native::types::array"],[1747,"cairo_native::types::bitwise"],[1748,"cairo_native::types::bounded_int"],[1749,"cairo_native::types::box"],[1750,"cairo_native::types::builtin_costs"],[1751,"cairo_native::types::bytes31"],[1752,"cairo_native::types::coupon"],[1753,"cairo_native::types::ec_op"],[1754,"cairo_native::types::ec_point"],[1755,"cairo_native::types::ec_state"],[1756,"cairo_native::types::enum"],[1760,"cairo_native::types::felt252"],[1800,"cairo_native::types::felt252_dict"],[1801,"cairo_native::types::felt252_dict_entry"],[1802,"cairo_native::types::gas_builtin"],[1803,"cairo_native::types::non_zero"],[1804,"cairo_native::types::nullable"],[1805,"cairo_native::types::pedersen"],[1806,"cairo_native::types::poseidon"],[1807,"cairo_native::types::range_check"],[1808,"cairo_native::types::segment_arena"],[1809,"cairo_native::types::snapshot"],[1810,"cairo_native::types::squashed_felt252_dict"],[1811,"cairo_native::types::starknet"],[1818,"cairo_native::types::struct"],[1819,"cairo_native::types::uint128"],[1820,"cairo_native::types::uint128_mul_guarantee"],[1821,"cairo_native::types::uint16"],[1822,"cairo_native::types::uint32"],[1823,"cairo_native::types::uint64"],[1824,"cairo_native::types::uint8"],[1825,"cairo_native::types::uninitialized"],[1826,"cairo_native::utils"],[1880,"cairo_native::values"],[1948,"cairo_native::values::JitValue"],[1961,"dyn_clone::sealed"],[1962,"core::cmp"],[1963,"melior::context"],[1964,"melior::ir::module"],[1965,"cairo_lang_sierra::program"],[1966,"cairo_lang_sierra::extensions::core"],[1967,"cairo_lang_sierra::extensions::core"],[1968,"core::option"],[1969,"core::result"],[1970,"core::fmt"],[1971,"core::fmt"],[1972,"alloc::vec"],[1973,"std::path"],[1974,"std::io::error"],[1975,"alloc::collections::vec_deque"],[1976,"alloc::boxed"],[1977,"std::collections::hash::map"],[1978,"smol_str"],[1979,"alloc::string"],[1980,"core::any"],[1981,"core::cmp"],[1982,"cairo_lang_compiler::db"],[1983,"cairo_lang_diagnostics::diagnostics"],[1984,"core::num::error"],[1985,"core::alloc::layout"],[1986,"melior::error"],[1987,"cairo_lang_sierra::edit_state"],[1988,"cairo_lang_sierra::program_registry"],[1989,"core::error"],[1990,"serde::de"],[1991,"serde::ser"],[1992,"cairo_lang_sierra::ids"],[1993,"starknet_types_core::felt"],[1994,"bumpalo"],[1995,"libloading::safe"],[1996,"cairo_lang_sierra::extensions::core"],[1997,"melior::ir::value"],[1998,"melior::ir::location"],[1999,"melior::ir::operation"],[2000,"cairo_lang_sierra::extensions::modules::ap_tracking"],[2001,"cairo_lang_sierra::extensions::lib_func"],[2002,"cairo_lang_sierra::extensions::modules::array"],[2003,"cairo_lang_sierra::extensions::lib_func"],[2004,"cairo_lang_sierra::extensions::modules::boxing"],[2005,"cairo_lang_sierra::extensions::modules::bytes31"],[2006,"cairo_lang_sierra::extensions::modules::consts"],[2007,"cairo_lang_sierra::extensions::modules::casts"],[2008,"cairo_lang_sierra::extensions::modules::casts"],[2009,"cairo_lang_sierra::extensions::modules::const_type"],[2010,"cairo_lang_sierra::extensions::modules::function_call"],[2011,"cairo_lang_sierra::extensions::modules::debug"],[2012,"cairo_lang_sierra::extensions::modules::ec"],[2013,"cairo_lang_sierra::extensions::modules::enm"],[2014,"cairo_lang_sierra::extensions::modules::enm"],[2015,"cairo_lang_sierra::extensions::modules::felt252"],[2016,"cairo_lang_sierra::extensions::modules::felt252_dict"],[2017,"cairo_lang_sierra::extensions::modules::mem"],[2018,"cairo_lang_sierra::extensions::modules::nullable"],[2019,"cairo_lang_sierra::extensions::modules::pedersen"],[2020,"cairo_lang_sierra::extensions::modules::poseidon"],[2021,"cairo_lang_sierra::extensions::modules::int::signed128"],[2022,"cairo_lang_sierra::extensions::modules::int::signed128"],[2023,"cairo_lang_sierra::extensions::modules::int"],[2024,"cairo_lang_sierra::extensions::modules::int::signed"],[2025,"cairo_lang_sierra::extensions::modules::structure"],[2026,"cairo_lang_sierra::extensions::modules::int::unsigned128"],[2027,"cairo_lang_sierra::extensions::modules::int::unsigned128"],[2028,"cairo_lang_sierra::extensions::modules::int::unsigned"],[2029,"cairo_lang_sierra::extensions::modules::int::unsigned"],[2030,"cairo_lang_sierra::extensions::modules::int::unsigned"],[2031,"melior::execution_engine"],[2032,"cairo_lang_sierra_ap_change"],[2033,"cairo_lang_sierra_gas"],[2034,"cairo_lang_sierra::program"],[2035,"melior::ir::operation"],[2036,"melior::ir::block"],[2037,"core::clone"],[2038,"core::alloc::layout"],[2039,"cairo_lang_sierra::extensions::types"],[2040,"cairo_lang_sierra::extensions::modules::coupon"],[2041,"cairo_lang_sierra::extensions::modules::starknet"],[2042,"cairo_lang_sierra::extensions::modules::structure"],[2043,"cairo_lang_sierra::program"]],"d":["","","A error from the LLVM API.","","","Optimization levels.","","","","","","","","","","","","","","Run the compiler on a program. The compiled program is …","","Extracts useful debugging information from cairo programs …","","","","","","","","Various error types used thorough the crate.","","Executors","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Compiler libfunc infrastructure","Code generation metadata","","Converts a MLIR module to a compile object, that can be …","Links the passed object into a shared library, stored on …","","","","","","","","","","","","","","","","Starknet related code for cairo_native","","","","","","","","","","","Compiler type infrastructure","","","","","Various utilities","JIT params and return values de/serialization","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","A Cache for programs with the same context.","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","Context of IRs, dialects and passes for Cairo programs …","","","Compiles a sierra program into MLIR and then lowers to …","Compiles a sierra program into MLIR and then lowers to …","","","","","","","","","","Returns the argument unchanged.","Initialize an MLIR context.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Contains the error value","","","","","","","","","","","","Contains the success value","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","Starknet contract execution result.","The result of the JIT execution.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Convert a [ExecuteResult] to a [NativeExecutionResult]","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A MLIR JIT execution engine in the context of Cairo Native.","The cairo native executor, either AOT or JIT based.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","Utility to convert a NativeModule into an AotNativeExecutor…","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","Invoke the given function by its function id, with the …","","Execute a program with the given params.","","Invoke the given function by its function id, with the …","Execute a program with the given params.","","Invoke the given function by its function id, with the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A libfunc branching target.","Error type returned by this trait’s methods.","A block within the current libfunc.","Generation of MLIR operations from their Sierra …","Helper struct which contains logic generation for extra …","A statement’s branch target by its index.","","AP tracking libfuncs","Inserts a new block after all the current libfunc’s …","Array libfuncs","Bitwise libfuncs","Boolean libfuncs","","","","","Box libfuncs","Creates an unconditional branching operation out of the …","Branch alignment libfunc","Generate the MLIR operations.","Bytes31-related libfuncs","Casting libfuncs","","","Creates a conditional binary branching operation, …","Const libfuncs","Branch alignment libfunc","Debug libfuncs","","AP tracking libfuncs","State value duplication libfunc","Elliptic curve libfuncs","Enum-related libfuncs","Felt-related libfuncs","Felt dictionary libfuncs","Felt dictionary entry libfuncs","","Returns the argument unchanged.","Returns the argument unchanged.","Function call libfuncs","Gas management libfuncs","","Return the initialization block.","Calls U::from(self).","Calls U::from(self).","Return the target function if the statement is a function …","Memory-related libfuncs","Nullable libfuncs","Pedersen hashing libfuncs","Poseidon hashing libfuncs","","","","","","","","","","","","","","","i128-related libfuncs","i16-related libfuncs","i32-related libfuncs","i64-related libfuncs","i8-related libfuncs","Snapshot taking libfuncs","Starknet libfuncs","Struct-related libfuncs","Creates a conditional multi-branching operation, …","","","","","","","","u128-related libfuncs","u16-related libfuncs","u256-related libfuncs","u32-related libfuncs","u512-related libfuncs","u64-related libfuncs","u8-related libfuncs","Unconditional jump libfunc","Non-zero unwrapping libfuncs","","","","","","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the disable_ap_tracking …","Generate MLIR operations for the enable_ap_tracking …","Generate MLIR operations for the revoke_ap_tracking. …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the array_append libfunc.","Generate MLIR operations for the array_get libfunc.","Generate MLIR operations for the array_len libfunc.","Generate MLIR operations for the array_new libfunc.","Generate MLIR operations for the array_pop_front libfunc.","Generate MLIR operations for the array_pop_front_consume …","Generate MLIR operations for the array_slice libfunc.","Generate MLIR operations for the array_snapshot_pop_back …","Generate MLIR operations for the array_snapshot_pop_front …","Generate MLIR operations for the span_from_tuple libfunc.","Generate MLIR operations for the bitwise libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the bool_not_impl libfunc.","Generate MLIR operations for the unbox libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the into_box libfunc.","Generate MLIR operations for the unbox libfunc.","Generate MLIR operations for the branch_align libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the bytes31_const libfunc.","Generate MLIR operations for the u8_from_felt252 libfunc.","Generate MLIR operations for the bytes31_to_felt252 …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the downcast libfunc.","Generate MLIR operations for the upcast libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the const_as_box libfunc.","Generate MLIR operations for the const_as_immediate …","","Generate MLIR operations for the coupon libfuncs. In …","Generate MLIR operations for the coupon libfunc.","Generate MLIR operations for the coupon libfunc.","","","Generate MLIR operations for the drop libfunc.","Generate MLIR operations for the dup libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the ec_point_is_zero libfunc.","Generate MLIR operations for the ec_neg libfunc.","Generate MLIR operations for the ec_point_from_x_nz …","Generate MLIR operations for the ec_state_add libfunc.","Generate MLIR operations for the ec_state_add_mul libfunc.","Generate MLIR operations for the ec_state_try_finalize_nz …","Generate MLIR operations for the ec_state_init libfunc.","Generate MLIR operations for the ec_point_try_new_nz …","Generate MLIR operations for the ec_point_unwrap libfunc.","Generate MLIR operations for the ec_point_zero libfunc.","Select and call the correct libfunc builder function from …","","Generate MLIR operations for the enum_from_bounded_int …","Generate MLIR operations for the enum_init libfunc.","Generate MLIR operations for the enum_match libfunc.","Generate MLIR operations for the enum_snapshot_match …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the following libfuncs:","Generate MLIR operations for the felt252_const libfunc.","Generate MLIR operations for the felt252_is_zero libfunc.","Select and call the correct libfunc builder function from …","","","Select and call the correct libfunc builder function from …","","","Generate MLIR operations for the function_call libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the withdraw_gas_all libfunc.","Generate MLIR operations for the get_builtin_costs libfunc.","Generate MLIR operations for the get_builtin_costs libfunc.","Generate MLIR operations for the withdraw_gas libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the alloc_local libfunc.","Generate MLIR operations for the finalize_locals libfunc.","Generate MLIR operations for the rename libfunc.","Generate MLIR operations for the store_local libfunc.","Generate MLIR operations for the store_temp libfunc.","Select and call the correct libfunc builder function from …","Select and call the correct libfunc builder function from …","","Select and call the correct libfunc builder function from …","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i128_const libfunc.","Generate MLIR operations for the i128_diff libfunc.","Generate MLIR operations for the i128_eq libfunc.","Generate MLIR operations for the i128_from_felt252 libfunc.","Generate MLIR operations for the i128_is_zero libfunc.","Generate MLIR operations for the i128 operation libfunc.","Generate MLIR operations for the i128_to_felt252 libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i16_const libfunc.","Generate MLIR operations for the i16_diff libfunc.","Generate MLIR operations for the i16_eq libfunc.","Generate MLIR operations for the i16_from_felt252 libfunc.","Generate MLIR operations for the i16_is_zero libfunc.","Generate MLIR operations for the i16 operation libfunc.","Generate MLIR operations for the i16_to_felt252 libfunc.","Generate MLIR operations for the i16_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i32_const libfunc.","Generate MLIR operations for the i32_diff libfunc.","Generate MLIR operations for the i32_eq libfunc.","Generate MLIR operations for the i32_from_felt252 libfunc.","Generate MLIR operations for the i32_is_zero libfunc.","Generate MLIR operations for the i32 operation libfunc.","Generate MLIR operations for the i32_to_felt252 libfunc.","Generate MLIR operations for the i32_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i64_const libfunc.","Generate MLIR operations for the i64_diff libfunc.","Generate MLIR operations for the i64_eq libfunc.","Generate MLIR operations for the i64_from_felt252 libfunc.","Generate MLIR operations for the i64_is_zero libfunc.","Generate MLIR operations for the i64 operation libfunc.","Generate MLIR operations for the i64_to_felt252 libfunc.","Generate MLIR operations for the i64_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i8_const libfunc.","Generate MLIR operations for the i8_diff libfunc.","Generate MLIR operations for the i8_eq libfunc.","Generate MLIR operations for the i8_from_felt252 libfunc.","Generate MLIR operations for the i8_is_zero libfunc.","Generate MLIR operations for the i8 operation libfunc.","Generate MLIR operations for the i8_to_felt252 libfunc.","Generate MLIR operations for the i8_widemul libfunc.","Generate MLIR operations for the snapshot_take libfunc.","Select and call the correct libfunc builder function from …","","","","","","","","","","","","","","","","","","","","","","","","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the struct_construct libfunc.","Generate MLIR operations for the struct_deconstruct …","Generate MLIR operations for the struct_construct libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u128_byte_reverse libfunc.","Generate MLIR operations for the u128_const libfunc.","Generate MLIR operations for the u128_safe_divmod libfunc.","Generate MLIR operations for the u128_equal libfunc.","Generate MLIR operations for the u128s_from_felt252 …","Generate MLIR operations for the u128_guarantee_mul …","Generate MLIR operations for the u128_guarantee_verify …","Generate MLIR operations for the u128_is_zero libfunc.","Generate MLIR operations for the u128_add and u128_sub …","Generate MLIR operations for the u128_sqrt libfunc.","Generate MLIR operations for the u128_to_felt252 libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u16_const libfunc.","Generate MLIR operations for the u16_safe_divmod libfunc.","Generate MLIR operations for the u16_eq libfunc.","Generate MLIR operations for the u16_from_felt252 libfunc.","Generate MLIR operations for the u16_is_zero libfunc.","Generate MLIR operations for the u16 operation libfunc.","Generate MLIR operations for the u16_sqrt libfunc.","Generate MLIR operations for the u16_to_felt252 libfunc.","Generate MLIR operations for the u16_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u256_safe_divmod libfunc.","Generate MLIR operations for the u256_is_zero libfunc.","Generate MLIR operations for the u256_sqrt libfunc.","Generate MLIR operations for the u256_guarantee_inv_mod_n …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u32_const libfunc.","Generate MLIR operations for the u32_safe_divmod libfunc.","Generate MLIR operations for the u32_eq libfunc.","Generate MLIR operations for the u32_from_felt252 libfunc.","Generate MLIR operations for the u32_is_zero libfunc.","Generate MLIR operations for the u32 operation libfunc.","Generate MLIR operations for the u32_sqrt libfunc.","Generate MLIR operations for the u32_to_felt252 libfunc.","Generate MLIR operations for the u32_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u512_safe_divmod_by_u256 …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u64_const libfunc.","Generate MLIR operations for the u64_safe_divmod libfunc.","Generate MLIR operations for the u64_eq libfunc.","Generate MLIR operations for the u64_from_felt252 libfunc.","Generate MLIR operations for the u64_is_zero libfunc.","Generate MLIR operations for the u64 operation libfunc.","Generate MLIR operations for the u64_sqrt libfunc.","Generate MLIR operations for the u64_to_felt252 libfunc.","Generate MLIR operations for the u64_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u8_const libfunc.","Generate MLIR operations for the u8_safe_divmod libfunc.","Generate MLIR operations for the u8_eq libfunc.","Generate MLIR operations for the u8_from_felt252 libfunc.","Generate MLIR operations for the u8_is_zero libfunc.","Generate MLIR operations for the u8 operation libfunc.","Generate MLIR operations for the u8_sqrt libfunc.","Generate MLIR operations for the u8_to_felt252 libfunc.","Generate MLIR operations for the u8_widemul libfunc.","Generate MLIR operations for the jump libfunc.","Generate MLIR operations for the unwrap_non_zero libfunc.","Metadata container.","","","Debug utilities","","","","Returns the argument unchanged.","","Retrieve a reference to some metadata.","Retrieve a mutable reference to some metadata.","","Insert some metadata and return a mutable reference.","Calls U::from(self).","Create an empty metadata container.","Finite field prime modulo","Memory allocation external bindings","Remove some metadata and return its last value.","","","","","","","","Runtime library bindings","","Tail recursion information","","","","","","","","","","","","Prints the given &str.","","Dump a memory region at runtime.","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","","","Holds global gas info.","Error for metadata calculations.","Configuration for metadata computation.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","Returns the initial value for the gas counter. If …","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Prime modulo number metadata.","","","","Returns the argument unchanged.","Calls U::from(self).","Create the metadata from the prime number.","Return the stored prime number.","","","","","","","","","","","","","","Memory allocation realloc metadata.","","","","Calls the free function.","Returns the argument unchanged.","Calls U::from(self).","Register the bindings to the realloc C function and return …","Calls the realloc function, returns a op with 1 result: an …","","","","","","","","","","","","","","Runtime library bindings metadata.","","","","Register if necessary, then invoke the dict_alloc_new() …","Register if necessary, then invoke the dict_alloc_new() …","Register if necessary, then invoke the dict_gas_refund() …","Register if necessary, then invoke the dict_get() function.","Register if necessary, then invoke the dict_insert() …","","Returns the argument unchanged.","Calls U::from(self).","Register if necessary, then invoke the debug::print() …","Register if necessary, then invoke the ec_point_from_x_nz()…","Register if necessary, then invoke the …","Register if necessary, then invoke the ec_state_add() …","Register if necessary, then invoke the ec_state_add_mul() …","","Register if necessary, then invoke the poseidon() function.","Register if necessary, then invoke the pedersen() function.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","The tail recursion metadata.","","","Return the current depth counter value.","","Returns the argument unchanged.","Calls U::from(self).","Create the tail recursion meta.","Return the recursion target block.","Return the return target block, if set.","","","","","","","","Set the return target block.","","","","","","","A MLIR module in the context of Cairo Native. It is …","","","","Returns the argument unchanged.","Retrieve a reference to some stored metadata.","Insert some metadata for the program execution and return …","Calls U::from(self).","","","","","Removes metadata","","","","","","","","","","","","","","","","","Contains the error value","","","Binary representation of a Felt (in MLIR).","Contains the success value","","","","","","","","Binary representation of a u256 (in MLIR).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Error type returned by this trait’s methods.","Generation of MLIR types from their Sierra counterparts.","","","Array type","","Bitwise type","","","BoundedInt type","Box type","Build the MLIR type.","","","Builtin costs type","bytes31 type","","","Coupon type.","","Elliptic curve operation type","Elliptic curve point type","Elliptic curve state type","Enum type","","","","","","","felt252 type","Felt dictionary type","Felt dictionary entry type","","","Returns the argument unchanged.","Gas builtin type","","If the type is an integer type, return its width in bits.","Calls U::from(self).","Return whether the type is a builtin.","Return whether the type requires a return pointer when …","If the type is an integer type, return if its signed.","Whether the layout should be allocated in memory (either …","Return whether the Sierra type resolves to a zero-sized …","Generate the layout of the MLIR type.","","Non-zero type","Nullable type","Pedersen type","Poseidon type","Builtin costs type","","","","","","","","Segment arena type","","Snapshot type","Squashed Felt dictionary type","Starknet types","Struct type","","","","","Unsigned 128-bit integer type","Unsigned 128-bit multiplication guarantee type","Unsigned 16-bit integer type","Unsigned 32-bit integer type","Unsigned 64-bit integer type","Unsigned 8-bit integer type","Uninitialized type","","","If the type is a enum type, return all possible variants.","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","An MLIR type with its memory layout.","Build the MLIR type.","Extract layout for the default enum representation, its …","Extract the type and layout for the default enum …","","The felt252 prime modulo.","","","","","Build the MLIR type.","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","","","","","","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","","","","","","","","","Compile a cairo program found at the given path to sierra.","","","","Creates the execution engine, with all symbols registered.","Return a type that calls a closure when formatted using …","","","","","","","Parse any type that can be a bigint to a felt that can be …","Parse a short string into a felt that can be used in the …","Parse a numeric string into felt, wrapping negatives …","Returns the given entry point if present.","Returns the given entry point if present.","Given a string representing a function name, searches in …","","","Returns the argument unchanged.","Generate a function name.","Return the layout for an integer of arbitrary width.","Calls U::from(self).","Copied from std.","","","Edit: Copied from the std lib.","","","","","","","","","","","","","","","","","","","all elements need to be same type","","","","","","","","A JitValue is a value that can be passed to the JIT engine …","Used as return value for Nullables that are null.","","","","","","","","","","","","","","","","","","","","","","","","","","String to felt","","Returns the argument unchanged.","","","","","","","","","","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[4,4,0,4,4,0,3,4,3,4,3,4,0,3,4,3,4,4,4,0,0,0,4,4,4,4,4,4,4,0,0,0,3,3,4,3,4,4,4,4,3,4,0,0,0,0,0,4,3,3,3,3,3,3,3,4,4,4,4,4,4,4,0,3,4,3,3,3,4,3,4,3,4,0,3,4,3,4,0,0,3,4,34,0,34,0,0,0,34,34,34,34,34,34,34,0,34,34,34,34,34,34,34,34,34,34,34,34,34,0,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,0,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,0,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,47,47,47,47,47,47,13,13,13,13,13,13,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,47,13,15,15,86,0,15,15,15,15,15,15,15,15,15,15,86,15,15,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,0,0,59,60,61,59,59,60,61,59,60,61,60,59,60,61,59,60,61,59,61,59,61,59,61,59,60,61,59,59,60,61,59,59,59,59,59,60,60,60,60,60,61,61,61,61,61,61,61,59,60,61,59,60,61,61,59,61,59,60,61,59,61,59,59,59,60,61,60,61,59,59,59,59,59,59,59,60,60,60,60,60,60,60,61,61,61,61,61,61,61,59,59,60,61,59,60,61,59,60,61,59,60,61,59,60,61,59,60,61,59,60,61,59,60,61,64,0,0,64,0,0,64,44,70,41,64,44,70,41,64,64,64,44,41,44,41,64,44,70,41,64,64,64,44,41,44,70,41,64,44,41,64,70,44,41,64,44,41,64,44,70,41,44,70,70,44,44,44,44,44,44,44,70,70,70,70,70,70,70,41,41,41,41,41,41,41,64,64,64,64,64,64,64,64,44,70,41,64,44,70,41,64,44,70,41,64,44,70,41,64,44,70,41,64,44,70,41,64,0,83,84,0,0,84,84,0,77,0,0,0,77,84,77,84,0,77,0,83,0,0,84,84,77,0,0,0,77,0,0,0,0,0,0,0,84,77,84,0,0,0,77,77,84,83,0,0,0,0,77,77,77,77,77,77,77,84,84,84,84,84,84,84,0,0,0,0,0,0,0,0,77,84,77,84,77,84,77,84,0,0,0,0,0,0,0,0,0,77,84,77,84,77,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,12,0,12,0,12,12,0,12,12,12,12,12,12,0,0,12,12,12,12,12,12,12,12,0,0,0,12,12,12,12,12,12,0,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,0,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,55,55,0,0,0,0,55,75,152,46,75,75,152,46,55,75,152,46,55,75,152,46,75,152,46,152,152,75,46,75,152,55,75,75,75,75,75,152,152,152,152,152,55,55,55,55,55,75,152,46,55,55,75,152,46,55,55,55,46,75,75,75,75,152,75,75,152,46,55,46,46,75,152,75,75,75,75,75,75,75,152,152,152,152,152,152,152,46,46,46,46,46,46,46,55,55,55,55,55,55,55,55,75,152,46,55,55,75,152,46,55,75,152,46,55,75,152,46,55,75,152,46,55,75,152,46,55,75,152,46,55,0,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,0,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,0,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,0,0,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,0,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,0,0,0,168,0,0,0,168,0,0,0,0,0,0,0,0,170,171,172,173,174,175,176,177,178,179,174,177,174,172,173,176,176,169,180,170,171,172,173,174,175,176,177,178,179,169,180,170,171,172,173,174,175,176,177,178,179,69,169,172,173,180,174,177,170,171,172,173,174,175,176,177,178,179,170,171,172,173,174,175,176,177,178,179,171,172,173,174,175,176,177,171,172,173,174,175,176,177,172,173,171,69,169,171,172,173,174,175,176,177,69,169,172,173,171,172,173,174,175,176,177,178,179,171,171,171,171,171,172,172,172,172,172,173,173,173,173,173,174,174,174,174,174,175,175,175,175,175,176,176,176,176,176,177,177,177,177,177,178,178,178,178,178,179,179,179,179,179,174,180,170,171,172,173,174,175,176,177,178,179,169,180,170,171,172,173,174,175,176,177,178,179,69,169,69,169,69,169,171,172,173,174,175,176,177,178,179,171,169,180,170,171,172,173,174,175,176,177,178,179,69,169,69,169,171,175,174,177,175,174,177,174,171,172,173,174,175,176,177,174,69,180,69,169,175,174,169,169,169,169,169,169,169,180,180,180,180,180,180,180,170,170,170,170,170,170,170,171,171,171,171,171,171,171,172,172,172,172,172,172,172,173,173,173,173,173,173,173,174,174,174,174,174,174,174,175,175,175,175,175,175,175,176,176,176,176,176,176,176,177,177,177,177,177,177,177,178,178,178,178,178,178,178,179,179,179,179,179,179,179,69,169,69,169,69,169,69,169,69,169,69,169,69,169,69,169,69,169,69,169,69,169,176,171,172,173,174,175,176,177,69,69,69,69,69,69,69,69,69,69,69,69,174,177,180,69,169,69,169,174,170,171,172,173,174,175,176,177,178,179,174,177,169,180,170,171,172,173,174,175,176,177,178,179,169,180,170,171,172,173,174,175,176,177,178,179,172,173,169,180,170,171,172,173,174,175,176,177,178,179,180,169,180,170,171,172,173,174,175,176,177,178,179,169,180,170,171,172,173,174,175,176,177,178,179,174,177,169,180,170,171,172,173,174,175,176,177,178,179,178,179,178,179,183,0,0,182,0,182,0,182,182,0,0,183,183,183,0,0,182,182,0,182,0,0,0,0,182,182,182,182,182,182,0,0,0,183,182,182,0,182,183,182,183,183,183,183,183,183,182,0,0,0,0,0,182,182,182,182,182,182,182,0,182,0,0,0,0,182,182,182,182,0,0,0,0,0,0,0,182,182,183,182,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,193,194,193,194,0,193,194,193,194,193,194,0,193,193,193,193,193,193,193,194,194,194,194,194,194,194,193,194,193,194,193,194,193,194,193,194,193,194,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,54,54,54,199,199,0,0,54,54,0,0,54,54,54,54,54,54,0,0,0,0,0,0,54,54,54,0,0,54,0,0,0,0,0,54,54,54,54,54,54,54,0,54,54,54,54,54,54,54,54,54,72,72,72,72,72,72,72,72,0,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,208,209,210,208,211,209,209,210,211,212,213,212,213],"f":"``````{{cb}d{}}0{ce{}{}}000`{ff}{hh}{{ce}d{}{}}0{{hh}j}{{ce}j{}{}}{{lnA`{Af{AbAd}}Ah{Al{Aj}}}{{B`{dAn}}}}``{{}h}{{hh}Bb}{{ce}Bb{}{}}0000```{{fBd}Bf}0{{hBd}Bf}{cc{}}{Bhh}1{Bjh}{{hc}dBl}??```{{nh}{{B`{{Bn{Bj}}f}}}}{{{C`{Bj}}Cb}{{B`{dCd}}}}{{hh}{{Al{j}}}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}5631042`{ce{}{}}0{cCn{}}{cD`{}}{c{{B`{e}}}{}{}}000{cDb{}}0`4444``44``````44{{{Dd{c}}Bd}Bf{DfDhDjDl}}{cc{}}{{{Dn{c}}}{{Dd{c}}}{DfDhDj}}{{{E`{c}}}{{Dd{c}}}{DfDhDj}}8`>9:<=;?554888`88{{{E`{c}}cA`h}{{Ed{Eb}}}{DfDhDj}}{{{E`{c}}Bd}Bf{DfDhDj}}4{{{E`{c}}c}{{Al{{Ed{Eb}}}}}{DfDhDj}};{Ef{{E`{c}}}{DfDhDj}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}{ce{}{}}00`00{{{Dn{c}}cA`h}{{Ed{Eh}}}{DhDjDf}}{{{Dn{c}}}Ef{DhDjDf}}{{{Dn{c}}Bd}Bf{DhDjDf}}{cc{}}{{{Dn{c}}c}{{Al{{Ed{Eh}}}}}{DhDjDf}}5{Ef{{Dn{c}}}{DhDjDf}}9;<=>:?887666`66{{EfA`{Al{Aj}}}{{B`{EjAn}}}}{{EfA`El}{{B`{EjAn}}}}{Efl}{{}Ef}{{EfEf}Bb}{{ce}Bb{}{}}0000{{EfBd}Bf}9{{}l}>4{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}{ce{}{}}00``{{cb}d{}}01111{EnEn}{AjAj}{{ce}d{}{}}0{{F`A`}{{B`{EnFb}}}}{{lF`En}Aj}{{EnBd}Bf}{{AjBd}Bf}{cc{}}0``99``{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}?>{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}?{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}3{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}243{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}``{ce{}{}}0{c{{B`{e}}}{}{}}000``{cDb{}}0222222`````````````````````22{{AnBd}Bf}0{FdAn}{FfAn}{FhAn}{FjAn}{FlAn}{FnAn}{{{Ch{G`}}}An}{cc{}};{GbAn}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}?{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{An{{Al{Gd}}}}{cCn{}}{cD`{}}{c{{B`{e}}}{}{}}0{cDb{}}{ce{}{}}00```{{cb}d{}}00`111111`{GfGf}{GhGh}{GjGj}{{ce}d{}{}}00{{GfGf}j}{{GjGj}j}{{ce}j{}{}}0{{}Gf}{{}Gj}{c{{B`{Gf}}}Gl}{c{{B`{Gh}}}Gl}{c{{B`{Gj}}}Gl}`{{GfGf}Bb}{{GhGh}Bb}{{GjGj}Bb}{{ce}Bb{}{}}00000000000000``{{GfBd}Bf}{{GhBd}Bf}{{GjBd}Bf}{cc{}}00{Gh{{B`{GjAn}}}}{{Gfc}dBl}{{Gjc}dBl}{ce{}{}}00{{GfGf}{{Al{j}}}}{{GjGj}{{Al{j}}}}```````{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}52013642463105`{{Gfc}B`Gn}{{Ghc}B`Gn}{{Gjc}B`Gn}<<<{c{{B`{e}}}{}{}}00000{cDb{}}00>>>>>>>>>``````{{cb}d{}}????????{H`H`}{{ce}d{}{}}{{EhHb}Hd}{{EbHb}Hd}{{EhBd}Bf}{{EbBd}Bf}{{H`Bd}Bf}{cc{}}00{EhH`}1{EbH`}{{Ejh}Eh}{{Ejh}Eb}{ce{}{}}000{{EhHb{C`{Hf}}{Al{Hh}}c}{{B`{GjAn}}}Hj}{{EbHb{C`{Hf}}{Al{Hh}}c}{{B`{GjAn}}}Hj}{{H`Hb{C`{Hf}}{Al{Hh}}c}{{B`{GjAn}}}Hj}{Hl{{C`{Hn}}}}{{EhHb{C`{I`}}{Al{Hh}}}{{B`{GhAn}}}}{{EbHb{C`{I`}}{Al{Hh}}}{{B`{GhAn}}}}{{H`Hb{C`{I`}}{Al{Hh}}}{{B`{GhAn}}}}{{EhHb{C`{I`}}{Al{Hh}}c}{{B`{GhAn}}}Hj}{{EbHb{C`{I`}}{Al{Hh}}c}{{B`{GhAn}}}Hj}{{H`Hb{C`{I`}}{Al{Hh}}c}{{B`{GhAn}}}Hj}{Ehn}{{Ib{Af{AbAd}}}Hl}{{Id{Af{AbAd}}If}Eb}{Eh{{Af{AbAd}}}}{{HlGbIhI`}{{B`{d{Ch{G`}}}}}}{{HlBh{C`{Hn}}}d}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}012653460123451420635{ce{}{}}{c{{B`{e}}}{}{}}0000000{cDb{}}000222222222222``````{{cb}d{}}`{{IjIl}Il}```4444`{{IjBh{C`{In}}J`}Jb}`{{{Jf{}{{Jd{c}}}}l{Af{AbAd}}IlJ`IjAh}{{B`{dc}}}Gd}``{JhJh}{{ce}d{}{}}{{IjlIn{Jj{Bh}}{Jj{{C`{In}}}}J`}Jb}```{Ijc{}}```````{{JhBd}Bf}{cc{}}0``{{lIlJ`In}{{Jl{In}}}}{IjIl}>>{{{Jf{}{{Jd{c}}}}}{{Al{Hb}}}Gd}````{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}2405163````````{{IjlIn{Cl{Jh{C`{In}}}}{C`{{Cl{JnJh{C`{In}}}}}}J`}{{B`{JbAn}}}}{ce{}{}}{c{{B`{e}}}{}{}}000{cDb{}}0`````````222222{{l{Af{AbAd}}IlJ`IjAhK`}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKb}{{Jl{d}}}}00{{l{Af{AbAd}}IlJ`IjAhKd}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKf}{{Jl{d}}}}0020000002{{l{Af{AbAd}}IlJ`IjAhKh}{{Jl{d}}}}33{{l{Af{AbAd}}IlJ`IjAhKj}{{Jl{d}}}}224{{l{Af{AbAd}}IlJ`IjAhKl}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKn}{{Jl{d}}}}66{{l{Af{AbAd}}IlJ`IjAhL`}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhLb}{{Jl{d}}}}8{{l{Af{AbAd}}IlJ`IjAhLd}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhLf}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhLh}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhLj}{{Jl{In}}}}{{l{Af{AbAd}}IlJ`IjAhLl}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhLn}{{Jl{d}}}}0{{l{Af{AbAd}}IlJ`IjAhM`}{{Jl{d}}}}???{{l{Af{AbAd}}IlJ`IjAhMb}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKb}{{Jl{d}}}}000000000{{l{Af{AbAd}}IlJ`IjAhMd}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhInGbGbBh}{{Jl{In}}}}{{l{Af{AbAd}}IlJ`IjAhMf}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhMh}{{Jl{d}}}}44{{l{Af{AbAd}}IlJ`IjAhMj}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhMl}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhMn}{{Jl{d}}}}7{{l{Af{AbAd}}IlJ`IjAhN`}{{Jl{d}}}}88{{l{Af{AbAd}}IlJ`IjAhNb}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKf}{{Jl{d}}}}0={{l{Af{AbAd}}IlJ`IjAhNd}{{Jl{d}}}};;;;{{l{Af{AbAd}}IlJ`IjAhNf}{{Jl{d}}}}2{{l{Af{AbAd}}IlJ`IjKb}{{Jl{d}}}}03{{l{Af{AbAd}}IlJ`IjKf}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhNh}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhNj}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKb}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhNl}{{Jl{d}}}}1{{l{Af{AbAd}}IlJ`IjAhNn}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{Ob{O`}}}{{Jl{d}}}}7737{{l{Af{AbAd}}IlJ`IjOd}{{Jl{d}}}}4{{l{Af{AbAd}}IlJ`IjAhOf}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{Ob{Oh}}}{{Jl{d}}}}::6:266{{l{Af{AbAd}}IlJ`IjAhOj}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{Ob{Ol}}}{{Jl{d}}}}<<8<488{{l{Af{AbAd}}IlJ`IjAhOn}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{Ob{A`}}}{{Jl{d}}}}>>:>6::{{l{Af{AbAd}}IlJ`IjAhAb}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{Ob{Ad}}}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjKb}{{Jl{d}}}}0=09==={{l{Af{AbAd}}IlJ`IjAhAf}{{Jl{d}}}}>{{l{Af{AbAd}}IlJ`IjAhKn}{{Jl{d}}}}??0???????????????0???{{l{Af{AbAd}}IlJ`IjAhAh}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAhKb}{{Jl{d}}}}0{{l{Af{AbAd}}IlJ`IjAhGb{C`{In}}}{{Jl{In}}}}{{l{Af{AbAd}}IlJ`IjAhAj}{{Jl{d}}}}2{{l{Af{AbAd}}IlJ`IjAh{Ob{Al}}}{{Jl{d}}}}333333{{l{Af{AbAd}}IlJ`IjAhOd}{{Jl{d}}}}44{{l{Af{AbAd}}IlJ`IjAhAn}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{Ob{AA`}}}{{Jl{d}}}}::6:{{l{Af{AbAd}}IlJ`IjOd}{{Jl{d}}}}777{{l{Af{AbAd}}IlJ`IjAhAAb}{{Jl{d}}}}8888{{l{Af{AbAd}}IlJ`IjAhAAd}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{Ob{AAf}}}{{Jl{d}}}}>>:>3:::{{l{Af{AbAd}}IlJ`IjAhAAh}{{Jl{d}}}};{{l{Af{AbAd}}IlJ`IjAhAAj}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{Ob{AAl}}}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjKb}{{Jl{d}}}}0>07>>>{{l{Af{AbAd}}IlJ`IjAhAAn}{{Jl{d}}}}{{l{Af{AbAd}}IlJ`IjAh{Ob{AB`}}}{{Jl{d}}}}22{{l{Af{AbAd}}IlJ`IjAhKb}{{Jl{d}}}}3:00000`{ce{}{}}0`{{}Ah}`{{AhBd}Bf}{cc{}}`{Ah{{Al{c}}}ABb}0{{Ahe}cABb{{ABf{}{{ABd{c}}}}}}{{Ahc}{{Al{c}}}ABb}65``2{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}```{c{{B`{e}}}{}{}}0{cDb{}}???`??{{ABhlnIlJ`}{{Jl{d}}}}{{ABhIlJ`}{{Jl{d}}}}{{ABhlnIlABjJ`}{{Jl{d}}}}{{}ABh}{{ABhlnIlInBhJ`}{{Jl{d}}}}{{ABhBd}Bf}{cc{}}{ce{}{}}{{ABhlnIlInJ`}{{Jl{d}}}}000000{{ABhABl}d}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}};;;`;;{{}ABn}={{ABnGb}{{Al{{Bn{Gb}}}}}}=:876549{{ABnGb{Al{{C`{Gb}}}}}d}443>>>```````{{cb}d{}}00`????????{IfIf}{AC`AC`}{ElEl}{{ce}d{}{}}00{{AC`AC`}j}{{ce}j{}{}}{{}If}{{}El}{{IfIf}Bb}{{AC`AC`}Bb}{{FnFn}Bb}{{ce}Bb{}{}}00000000000000{{IfBd}Bf}{{AC`Bd}Bf}{{ElBd}Bf}{{FnBd}Bf}0{cc{}}000{ACbFn}{ACdFn}``{{IfACf}{{Al{Hh}}}}{{IfACfACh}{{Al{Hh}}}}{{IfHb{Al{Hh}}}{{B`{HhFn}}}}{{AC`c}dBl}{{IfHb}{{Al{Hh}}}}{ce{}{}}000``{{A`{Al{El}}}{{B`{IfFn}}}}{{AC`AC`}{{Al{j}}}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}632014545326014201536{Fn{{Al{Gd}}}}:::{cCn{}}{cD`{}}{c{{B`{e}}}{}{}}0000000{cDb{}}000>>>>>>>>>>>>`>>{{{ACj{c}}Bd}BfDl}{cc{}}{ce{}{}}{ACl{{ACj{c}}}{}}{{{ACj{c}}}ACl{}};:>=?<{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}776333`33{{ACnBd}Bf}{{lInJ`}Jb}65{{ln}ACn}{{lInInJ`}Jb}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}7{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}???`??{{}AD`}{{AD`lnInIlJ`}{{Jl{ADb}}}}{{AD`lnIlJ`}{{Jl{ADb}}}}{{AD`lnIlInJ`}{{Jl{ADb}}}}{{AD`lnIlInInJ`}{{Jl{ADb}}}}{{AD`lnIlInInInJ`}{{Jl{ADb}}}}{{AD`Bd}Bf}{cc{}}{ce{}{}}{{AD`lnIlInInInJ`}{{Jl{In}}}}6654544{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}:::``::{{}ADd}<;{{ADdGb{ADf{c}}c}d{}}7:98654332<<<{{ADdGb}{{Al{{ADj{ADh}}}}}}`=={ADlIn}{{ADlBd}Bf}{cc{}}{ce{}{}}{{InIl}ADl}{ADlADn}{ADl{{Al{ADn}}}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{ADlIl}d}{c{{B`{e}}}{}{}}0{cDb{}}===`=={{EjBd}Bf}?{Ej{{Al{c}}}ABb}{{Ejc}{{Al{c}}}ABb}{ce{}{}}{EjAh}{Ejn}{{n{Af{AbAd}}Ah}Ej}{Ej{{Af{AbAd}}}}6{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{c{{B`{e}}}{}{}}0{cDb{}}===````````````````{{cb}d{}}000000000```````>>>>>>>>>>>>>>>>>>>>>>>>{{HjHfHf{C`{Hf}}Hh}{{AE`{{Bn{Hf}}}}}}{{AEbHfHf{C`{Hf}}Hh}{{AE`{{Bn{Hf}}}}}}`````{AEdAEd}{AEfAEf}{AEhAEh}{AEjAEj}{AElAEl}{AEnAEn}{AF`AF`}{AFbAFb}{AFdAFd}{AFfAFf}{{ce}d{}{}}000000000{{AEfAEf}j}{{AEhAEh}j}{{AEjAEj}j}{{AElAEl}j}{{AEnAEn}j}{{AF`AF`}j}{{AFbAFb}j}{{ce}j{}{}}000000``{{}AEf}{{HjHfHf{C`{Hf}}BbHh}{{AE`{{Cl{Hf{Bn{Hf}}}}}}}}{{AEbHfHf{C`{Hf}}BbHh}{{AE`{{Cl{Hf{Bn{Hf}}}}}}}}{c{{B`{AEf}}}Gl}{c{{B`{AEh}}}Gl}{c{{B`{AEj}}}Gl}{c{{B`{AEl}}}Gl}{c{{B`{AEn}}}Gl}{c{{B`{AF`}}}Gl}{c{{B`{AFb}}}Gl}{{Hj{C`{Hf}}{C`{Hf}}Hh}{{AE`{d}}}}{{AEb{C`{Hf}}{C`{Hf}}Hh}{{AE`{d}}}}``{{AEfAEf}Bb}{{AEhAEh}Bb}{{AEjAEj}Bb}{{AElAEl}Bb}{{AEnAEn}Bb}{{AF`AF`}Bb}{{AFbAFb}Bb}{{AFdAFd}Bb}{{AFfAFf}Bb}{{ce}Bb{}{}}00000000000000000000000000000000000000000000`{{{AFh{c}}Bd}BfDl}{{AEdBd}Bf}{{AEfBd}Bf}{{AEhBd}Bf}{{AEjBd}Bf}{{AElBd}Bf}{{AEnBd}Bf}{{AF`Bd}Bf}{{AFbBd}Bf}{{AFdBd}Bf}{{AFfBd}Bf}{cc{}}00000000000{{HjHnHh}{{AE`{Hf}}}}{{AEbHnHh}{{AE`{Hf}}}}{{HjHh}{{AE`{AEh}}}}{{AEbHh}{{AE`{AEh}}}}{{HjHh}{{AE`{AEj}}}}{{AEbHh}{{AE`{AEj}}}}{{AEfc}dBl}{{AEhc}dBl}{{AEjc}dBl}{{AElc}dBl}{{AEnc}dBl}{{AF`c}dBl}{{AFbc}dBl}{{AFdc}dBl}{{AFfc}dBl}`{ce{}{}}00000000000{{Hj{C`{Hn}}Hh}{{AE`{AEf}}}}{{AEb{C`{Hn}}Hh}{{AE`{AEf}}}}{{HjHfHf{C`{Hf}}Hh}{{AE`{{Bn{Hf}}}}}}{{AEbHfHf{C`{Hf}}Hh}{{AE`{{Bn{Hf}}}}}}````````{{AEfAEf}{{Al{j}}}}{{AEhAEh}{{Al{j}}}}{{AEjAEj}{{Al{j}}}}{{AElAEl}{{Al{j}}}}{{AEnAEn}{{Al{j}}}}{{AF`AF`}{{Al{j}}}}{{AFbAFb}{{Al{j}}}}`{Hjd}`{{HjHfHh}{{AE`{d}}}}{{AEbHfHh}{{AE`{d}}}}``{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}16023453601524134506202153464015623256431060123453542106601234523015463502416{{HjAFdAFdHh}{{AE`{AFd}}}}{{AEbAFdAFdHh}{{AE`{AFd}}}}{{HjAEfBbHh}{{AE`{{Al{AFd}}}}}}{{AEbAEfBbHh}{{AE`{{Al{AFd}}}}}}{{HjAFdHh}{{AE`{{Cl{AEfAEf}}}}}}{{AEbAFdHh}{{AE`{{Cl{AEfAEf}}}}}}{{HjAFdAEfHh}{{AE`{AFd}}}}{{AEbAFdAEfHh}{{AE`{AFd}}}}{{HjAEfAEfHh}{{AE`{{Al{AFd}}}}}}{{AEbAEfAEfHh}{{AE`{{Al{AFd}}}}}}{{HjAFfAFfHh}{{AE`{AFf}}}}{{AEbAFfAFfHh}{{AE`{AFf}}}}{{HjAEfBbHh}{{AE`{{Al{AFf}}}}}}{{AEbAEfBbHh}{{AE`{{Al{AFf}}}}}}{{HjAFfHh}{{AE`{{Cl{AEfAEf}}}}}}{{AEbAFfHh}{{AE`{{Cl{AEfAEf}}}}}}{{HjAFfAEfHh}{{AE`{AFf}}}}{{AEbAFfAEfHh}{{AE`{AFf}}}}{{HjAEfAEfHh}{{AE`{{Al{AFf}}}}}}{{AEbAEfAEfHh}{{AE`{{Al{AFf}}}}}}{{HjHf{C`{Hf}}Hh}{{AE`{d}}}}{{AEbHf{C`{Hf}}Hh}{{AE`{d}}}}`{{AEfc}B`Gn}{{AEhc}B`Gn}{{AEjc}B`Gn}{{AElc}B`Gn}{{AEnc}B`Gn}{{AF`c}B`Gn}{{AFbc}B`Gn}{{HjHf}d}{{HjHn}d}0111{{HjHh}d}22{{Hj{C`{Hf}}}d}33```{{HjAFjHfHh}{{AE`{Hf}}}}{{AEbAFjHfHh}{{AE`{Hf}}}}{{HjAFjHfHfHh}{{AE`{d}}}}{{AEbAFjHfHfHh}{{AE`{d}}}}`{ce{}{}}000000000``{c{{B`{e}}}{}{}}00000000000000000000000``{cDb{}}00000000000`222222222222222222222222``222222222222```````{{cb}d{}}`{{{AFl{c}}}c{}}`44``{{{AFn{}{{Jd{c}}}}ln{Af{AbAd}}AhGb}{{B`{AG`c}}}Gd}{{{AFn{}{{Jd{c}}}}l{Af{AbAd}}IlJ`IjAhGb}{{B`{Inc}}}Gd}{{{AFn{}{{Jd{c}}}}l{Af{AbAd}}IlJ`IjAhGb}{{B`{dc}}}Gd}``{{{AFl{c}}}{{AFl{c}}}AGb}{{ce}d{}{}}`5````{{{AFl{c}}{AFl{c}}}BbDf}{{ce}Bb{}{}}0000```{{{AFn{}{{Jd{c}}}}}{{Al{{C`{Gb}}}}}Gd}{{{AFl{c}}Bd}BfDl}{cc{}}`{{{AFl{c}}e}dDjBl}{{{AFn{}{{Jd{c}}}}}{{Al{Bh}}}Gd}{ce{}{}}{{{AFn{}{{Jd{c}}}}}BbGd}{{{AFn{}{{Jd{c}}}}{Af{AbAd}}}BbGd}{{{AFn{}{{Jd{c}}}}}{{Al{Bb}}}Gd}11{{{AFn{}{{Jd{c}}}}{Af{AbAd}}}{{B`{AGdc}}}Gd}{{Gbc}{{AFl{c}}}{}}`````{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}`{{{AFl{c}}}Gb{}}````={c{{B`{e}}}{}{}}0{cDb{}}```````??{{{AFn{}{{Jd{c}}}}}{{Al{{C`{Gb}}}}}Gd}{ce{}{}}{{ln{Af{AbAd}}Ah{AFl{AGf}}}{{Jl{AG`}}}}{{ln{Af{AbAd}}Ah{AFl{AGh}}}{{Jl{AG`}}}}{{ln{Af{AbAd}}Ah{AFl{AGj}}}{{Jl{AG`}}}}21{{ln{Af{AbAd}}AhAGh}{{Jl{AG`}}}}{{ln{Af{AbAd}}Ah{AFl{AGl}}}{{Jl{AG`}}}}333`{{ln{Af{AbAd}}Ah{AFl{AGn}}}{{Jl{AG`}}}}{{{Af{AbAd}}{C`{Gb}}}{{Jl{{Cl{AGdAGd{Bn{AGd}}}}}}}}{{ln{Af{AbAd}}Ah{C`{Gb}}}{{Jl{{Cl{AGdAH`{Bn{AH`}}}}}}}}``88886{AHbACl}{AHdAHf}{cc{}}0;;{Ah{{ACj{Hf}}}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}2340156{c{{B`{e}}}{}{}}000{cDb{}}0{ce{}{}}00000{{ln{Af{AbAd}}Ah{AFl{AGf}}}{{Jl{AG`}}}}0{{ln{Af{AbAd}}Ah{AFl{AGh}}}{{Jl{AG`}}}}11000011{{ln{Af{AbAd}}Ah{AFl{AHh}}}{{Jl{AG`}}}}11{{ln{Af{AbAd}}Ah{AFl{AHj}}}{{Jl{AG`}}}}222{{ln{Af{AbAd}}Ah{AFl{AHl}}}{{Jl{AG`}}}}3333334```{{cb}d{}}66{{AHnln{Af{AbAd}}AhGb}{{B`{AG`An}}}}{{AHnln{Af{AbAd}}AhGb}{{B`{{Cl{AG`AGd}}An}}}}{Cb{{ADj{A`}}}}{{lCb}{{B`{{Cl{A`Aj}}An}}}}{FlFl}{{ce}d{}{}}{{nAhh}ABl}{c{{`{Dl}}}{{ADh{Bd}{{ABd{Bf}}}}}}{{FlFl}Bb}{{ce}Bb{}{}}0000{c{{Jj{AFj}}}{{AI`{AHf}}}}{ABj{{Jj{AFj}}}}0{{A`ABj}{{Al{{AIb{ACf}}}}}}{{A`Bh}{{Al{{AIb{ACf}}}}}}{{A`ABj}Hb}{{FlBd}Bf}0{cc{}}{Hb{{AId{ABj}}}}{AFjAGd}{ce{}{}}{{AGdBh}{{B`{{Cl{AGdBh}}Fl}}}}{{AFjAFj}AFj}{{BhBh}Bh}{{AGdBh}Bh}{ABld}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{ln}{{B`{dFh}}}}={cCn{}}{cD`{}}{c{{B`{e}}}{}{}}0{cDb{}}{ce{}{}}00```````````````````````{{cb}d{}}11{I`I`}{{ce}d{}{}}{c{{B`{I`}}}Gl}{{I`I`}Bb}{{ce}Bb{}{}}0000{ABjI`}{{I`Bd}Bf}{cc{}}{AIfI`}{AIhI`}{AIjI`}{HhI`}{BjI`}{AFjI`}{HnI`}{{{Jj{c}}}I`{{AI`{I`}}}}{AIlI`}{{{Bn{c}}}I`{{AI`{I`}}}}{HfI`}{JnI`}{AInI`}{{{C`{c}}}I`{{AI`{I`}}AGb}}{ce{}{}}{{c{Bn{e}}}{{B`{{Bn{e}}g}}}{}{}{}}{{c{Al{e}}}{{B`{{Al{e}}g}}}{}{}{}}{{c{Cj{eg}}}{{B`{{Cj{eg}}i}}}{}{}{}{}}{{c{B`{eg}}}{{B`{{B`{eg}}i}}}{}{}{}{}}{{c{Cf{e}}}{{B`{{Cf{e}}g}}}{}{}{}}{{c{Ch{e}}}{{B`{{Ch{e}}g}}}{}{}{}}{{c{Cl{eg}}}{{B`{{Cl{eg}}i}}}{}{}{}{}}{{I`c}B`Gn}8{c{{B`{e}}}{}{}}0{cDb{}}:::`````````````","c":[],"p":[[5,"Private",1961],[1,"unit"],[5,"LLVMCompileError",0],[6,"OptLevel",0],[6,"Ordering",1962],[5,"Context",1963],[5,"Module",1964],[5,"Program",1965],[6,"CoreType",1966],[6,"CoreLibfunc",1966],[5,"ProgramRegistry",1967],[5,"MetadataStorage",827],[5,"DebugLocations",185],[6,"Option",1968],[6,"Error",241],[6,"Result",1969],[1,"bool"],[5,"Formatter",1970],[8,"Result",1970],[1,"usize"],[1,"u8"],[10,"Hasher",1971],[5,"Vec",1972],[1,"slice"],[5,"Path",1973],[5,"Error",1974],[5,"VecDeque",1975],[5,"Box",1976],[5,"HashMap",1977],[1,"tuple"],[5,"SmolStr",1978],[5,"String",1979],[5,"TypeId",1980],[6,"ProgramCache",82],[10,"PartialEq",1962],[10,"Eq",1962],[10,"Hash",1971],[10,"Debug",1970],[5,"JitProgramCache",131],[5,"AotProgramCache",109],[5,"AotNativeExecutor",409],[5,"Rc",1981],[5,"NativeContext",154],[5,"JitNativeExecutor",409],[5,"NativeModule",1167],[5,"MetadataComputationConfig",914],[5,"DebugInfo",185],[5,"RootDatabase",1982],[5,"DiagnosticAdded",1983],[5,"TryFromIntError",1984],[5,"LayoutError",1985],[6,"Error",1986],[6,"EditStateError",1987],[5,"LayoutError",1826],[6,"GasMetadataError",914],[6,"ProgramRegistryError",1967],[5,"ConcreteTypeId",1988],[10,"Error",1989],[5,"BuiltinStats",292],[5,"ExecutionResult",292],[5,"ContractExecutionResult",292],[10,"Deserializer",1990],[10,"Serializer",1991],[6,"NativeExecutor",409],[5,"FunctionId",1988],[6,"c_void",1992],[5,"Felt",1993],[1,"u128"],[10,"StarknetSyscallHandler",1193],[5,"ArgumentMapper",409],[1,"u64"],[6,"JitValue",1880],[5,"Bump",1994],[5,"Library",1995],[5,"GasMetadata",914],[6,"CoreTypeConcrete",1966],[5,"LibfuncHelper",512],[5,"Block",1996],[5,"Value",1997],[5,"Location",1998],[5,"Operation",1999],[17,"Error"],[10,"LibfuncBuilder",512],[6,"BranchTarget",512],[1,"array"],[8,"Result",241],[1,"i64"],[6,"ApTrackingConcreteLibfunc",2000],[5,"SignatureOnlyConcreteLibfunc",2001],[6,"ArrayConcreteLibfunc",2002],[5,"SignatureAndTypeConcreteLibfunc",2001],[6,"BoolConcreteLibfunc",2003],[6,"BoxConcreteLibfunc",2004],[6,"Bytes31ConcreteLibfunc",2005],[5,"SignatureAndConstConcreteLibfunc",2006],[6,"CastConcreteLibfunc",2007],[5,"DowncastConcreteLibfunc",2007],[6,"ConstConcreteLibfunc",2008],[5,"ConstAsBoxConcreteLibfunc",2008],[5,"ConstAsImmediateConcreteLibfunc",2008],[5,"ConstConcreteType",2008],[6,"CouponConcreteLibfunc",2009],[5,"SignatureAndFunctionConcreteLibfunc",2010],[6,"DebugConcreteLibfunc",2011],[6,"EcConcreteLibfunc",2012],[6,"EnumConcreteLibfunc",2013],[5,"EnumFromBoundedIntConcreteLibfunc",2013],[5,"EnumInitConcreteLibfunc",2013],[6,"Felt252Concrete",2014],[6,"Felt252BinaryOperationConcrete",2014],[5,"Felt252ConstConcreteLibfunc",2014],[6,"Felt252DictConcreteLibfunc",2015],[6,"Felt252DictEntryConcreteLibfunc",2015],[6,"GasConcreteLibfunc",2016],[6,"MemConcreteLibfunc",2017],[6,"NullableConcreteLibfunc",2018],[6,"PedersenConcreteLibfunc",2019],[6,"PoseidonConcreteLibfunc",2020],[6,"Sint128Concrete",2021],[5,"Sint128Traits",2021],[5,"IntConstConcreteLibfunc",2022],[5,"IntOperationConcreteLibfunc",2022],[8,"Sint16Concrete",2023],[5,"Sint16Traits",2023],[8,"Sint32Concrete",2023],[5,"Sint32Traits",2023],[8,"Sint64Concrete",2023],[5,"Sint64Traits",2023],[8,"Sint8Concrete",2023],[5,"Sint8Traits",2023],[6,"StarkNetConcreteLibfunc",2024],[6,"StructConcreteLibfunc",2025],[6,"Uint128Concrete",2026],[5,"Uint128Traits",2026],[8,"Uint16Concrete",2027],[5,"Uint16Traits",2027],[6,"Uint256Concrete",2028],[8,"Uint32Concrete",2027],[5,"Uint32Traits",2027],[6,"Uint512Concrete",2029],[8,"Uint64Concrete",2027],[5,"Uint64Traits",2027],[8,"Uint8Concrete",2027],[5,"Uint8Traits",2027],[10,"Any",1980],[17,"Output"],[10,"FnOnce",2030],[5,"DebugUtils",861],[1,"str"],[5,"ExecutionEngine",2031],[5,"EnumSnapshotVariantsMeta",893],[5,"GasCost",914],[6,"ApChangeError",2032],[6,"CostError",2033],[5,"StatementIdx",1965],[6,"CostTokenType",2016],[5,"PrimeModuloMeta",1045],[5,"BigUint",2034],[5,"ReallocBindingsMeta",1066],[5,"RuntimeBindingsMeta",1088],[5,"OperationRef",1999],[5,"SnapshotClonesMeta",1121],[8,"CloneFn",1121],[10,"Fn",2030],[5,"Arc",2035],[5,"TailRecursionMeta",1143],[5,"BlockRef",1996],[8,"SyscallResult",1193],[5,"DummySyscallHandler",1193],[5,"Felt252Abi",1193],[5,"U256",1193],[5,"ExecutionInfo",1193],[5,"ExecutionInfoV2",1193],[5,"TxV2Info",1193],[5,"ResourceBounds",1193],[5,"BlockInfo",1193],[5,"TxInfo",1193],[5,"Secp256k1Point",1193],[5,"Secp256r1Point",1193],[5,"ArrayAbi",1193],[1,"u32"],[5,"WithSelf",1666],[10,"TypeBuilder",1666],[5,"Type",2036],[10,"Clone",2037],[5,"Layout",1985],[5,"InfoAndTypeConcreteType",2038],[5,"InfoOnlyConcreteType",2038],[5,"BoundedIntConcreteType",2039],[5,"CouponConcreteType",2009],[5,"EnumConcreteType",2013],[8,"TypeLayout",1756],[5,"PRIME",1760],[5,"HALF_PRIME",1760],[5,"BigInt",2040],[6,"StarkNetTypeConcrete",2024],[6,"Secp256PointTypeConcrete",2041],[5,"StructConcreteType",2025],[10,"ProgramRegistryExt",1826],[10,"Into",2042],[5,"GenFunction",1965],[6,"Cow",2043],[1,"u16"],[1,"i8"],[1,"i128"],[1,"i16"],[1,"i32"],[15,"Struct",1948],[15,"Enum",1948],[15,"Felt252Dict",1948],[15,"BoundedInt",1948],[15,"Secp256K1Point",1948],[15,"Secp256R1Point",1948]],"b":[[32,"impl-Debug-for-LLVMCompileError"],[33,"impl-Display-for-LLVMCompileError"],[36,"impl-From%3Cusize%3E-for-OptLevel"],[38,"impl-From%3Cu8%3E-for-OptLevel"],[92,"impl-From%3CJitProgramCache%3C\'a,+K%3E%3E-for-ProgramCache%3C\'a,+K%3E"],[93,"impl-From%3CAotProgramCache%3C\'a,+K%3E%3E-for-ProgramCache%3C\'a,+K%3E"],[264,"impl-Display-for-Error"],[265,"impl-Debug-for-Error"],[266,"impl-From%3CTryFromIntError%3E-for-Error"],[267,"impl-From%3CLayoutError%3E-for-Error"],[268,"impl-From%3CError%3E-for-Error"],[269,"impl-From%3CEditStateError%3E-for-Error"],[270,"impl-From%3CLayoutError%3E-for-Error"],[271,"impl-From%3CGasMetadataError%3E-for-Error"],[272,"impl-From%3CBox%3CProgramRegistryError%3E%3E-for-Error"],[434,"impl-From%3CJitNativeExecutor%3C\'m%3E%3E-for-NativeExecutor%3C\'m%3E"],[436,"impl-From%3CAotNativeExecutor%3E-for-NativeExecutor%3C\'m%3E"],[964,"impl-Debug-for-GasMetadataError"],[965,"impl-Display-for-GasMetadataError"],[970,"impl-From%3CApChangeError%3E-for-GasMetadataError"],[971,"impl-From%3CCostError%3E-for-GasMetadataError"],[1852,"impl-Display-for-LayoutError"],[1853,"impl-Debug-for-LayoutError"],[1918,"impl-From%3Cu16%3E-for-JitValue"],[1919,"impl-From%3Ci8%3E-for-JitValue"],[1920,"impl-From%3Ci128%3E-for-JitValue"],[1921,"impl-From%3Cu128%3E-for-JitValue"],[1922,"impl-From%3Cu8%3E-for-JitValue"],[1923,"impl-From%3Cu32%3E-for-JitValue"],[1924,"impl-From%3Cu64%3E-for-JitValue"],[1925,"impl-From%3C%5BT;+N%5D%3E-for-JitValue"],[1926,"impl-From%3Ci16%3E-for-JitValue"],[1927,"impl-From%3CVec%3CT%3E%3E-for-JitValue"],[1928,"impl-From%3CFelt%3E-for-JitValue"],[1929,"impl-From%3Ci64%3E-for-JitValue"],[1930,"impl-From%3Ci32%3E-for-JitValue"],[1931,"impl-From%3C%26%5BT%5D%3E-for-JitValue"]]}],\ ["cairo_native_compile",{"doc":"","t":"PFPGNONNNNNNNNNNNNNNNNNNNHOOOOONNNNNNNNNNNNNNONNNNNNNNNNNNNNNNN","n":["Aot","Args","Jit","RunMode","__clone_box","allow_warnings","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","command","command_for_update","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","group_id","into","into","main","opt_level","output_library","output_mlir","path","replace_ids","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","single_file","to_owned","to_possible_value","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","update_from_arg_matches","update_from_arg_matches_mut","value_variants","vzip","vzip"],"q":[[0,"cairo_native_compile"],[63,"dyn_clone::sealed"],[64,"clap_builder::builder::command"],[65,"core::fmt"],[66,"core::fmt"],[67,"clap_builder"],[68,"core::result"],[69,"clap_builder::util::id"],[70,"core::option"],[71,"anyhow"],[72,"alloc::boxed"],[73,"alloc::vec"],[74,"std::collections::hash::map"],[75,"alloc::collections::vec_deque"],[76,"clap_builder::builder::possible_value"],[77,"core::any"]],"d":["","Compiles a Cairo project outputting the generated MLIR and …","","","","Allows the compilation to succeed with warnings.","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","","Optimization level, Valid: 0, 1, 2, 3. Values higher than …","If a path is passed, a dynamic library will be compiled …","The output path for the mlir, if none is passed, out.mlir …","The Cairo project path to compile and run its tests.","Replaces sierra ids with human-readable ones.","","","","","","","","","","","","","","","Whether path is a single file.","","","","","","","","","","","","","","","","",""],"i":[4,0,4,0,4,7,7,7,4,7,4,7,4,4,7,7,4,7,4,7,7,7,7,4,7,0,7,7,7,7,7,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,4,4,4,7,4,7,4,7,4,7,4,7,7,7,4,4,7],"f":"````{{cb}d{}}`{ff}0{ce{}{}}000{hh}{{ce}d{}{}}{{}f}0{{hj}l}{{nj}l}{cc{}}0{A`{{Ad{nAb}}}}0{{}{{Ah{Af}}}}88{{}{{Aj{d}}}}`````{{c{Ad{eg}}}{{Ad{{Ad{eg}}i}}}{}{}{}{}}{{c{Ah{e}}}{{Ad{{Ah{e}}g}}}{}{}{}}{{c{Al{eg}}}{{Ad{{Al{eg}}i}}}{}{}{}{}}{{c{An{e}}}{{Ad{{An{e}}g}}}{}{}{}}{{c{B`{e}}}{{Ad{{B`{e}}g}}}{}{}{}}{{c{Bb{eg}}}{{Ad{{Bb{eg}}i}}}{}{}{}{}}{{c{Bd{e}}}{{Ad{{Bd{e}}g}}}{}{}{}}1604325`{ce{}{}}{h{{Ah{Bf}}}}{c{{Ad{e}}}{}{}}000{cBh{}}03333{{nA`}{{Ad{dAb}}}}0{{}{{Bj{h}}}}55","c":[],"p":[[5,"Private",63],[1,"unit"],[5,"Command",64],[6,"RunMode",0],[5,"Formatter",65],[8,"Result",65],[5,"Args",0],[5,"ArgMatches",66],[8,"Error",67],[6,"Result",68],[5,"Id",69],[6,"Option",70],[8,"Result",71],[1,"tuple"],[5,"Box",72],[5,"Vec",73],[5,"HashMap",74],[5,"VecDeque",75],[5,"PossibleValue",76],[5,"TypeId",77],[1,"slice"]],"b":[]}],\ ["cairo_native_dump",{"doc":"","t":"FGPPNNNNNNNNNNNNNNNNNNNNNONNHHOHHNNNNNNNNNNNNNNONNNNNNNNNNNNNNNN","n":["CmdLine","CompilerOutput","Path","Stdout","__clone_box","__clone_box","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","group_id","input","into","into","load_program","main","output","parse_input","parse_output","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","starknet","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip"],"q":[[0,"cairo_native_dump"],[64,"dyn_clone::sealed"],[65,"clap_builder::builder::command"],[66,"core::fmt"],[67,"core::fmt"],[68,"clap_builder"],[69,"core::result"],[70,"clap_builder::util::id"],[71,"core::option"],[72,"std::path"],[73,"melior::context"],[74,"cairo_lang_sierra::program"],[75,"cairo_native::debug_info"],[76,"core::error"],[77,"alloc::boxed"],[78,"std::path"],[79,"std::collections::hash::map"],[80,"alloc::collections::vec_deque"],[81,"alloc::vec"],[82,"core::any"]],"d":["","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","Compile a starknet contract","","","","","","","","","","","","","","","",""],"i":[0,0,5,5,4,5,4,4,4,5,4,5,4,5,4,5,4,4,4,5,4,5,4,4,4,4,4,5,0,0,4,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,4,4,5,4,5,4,5,4,5,4,5,4,5,4,4,4,5],"f":"````{{cb}d{}}0{ff}0{ce{}{}}000{hh}{jj}{{ce}d{}{}}0{{}f}0{{hl}n}{{jl}n}{cc{}}0{A`{{Ad{hAb}}}}0{{}{{Ah{Af}}}}`99{{Aj{Ah{Al}}An}{{Ad{{Bd{B`{Ah{Bb}}}}{Bh{Bf}}}}}}{{}{{Ad{d{Bh{Bf}}}}}}`{Bj{{Ad{BlBn}}}}{Bj{{Ad{jBn}}}}{{c{C`{eg}}}{{Ad{{C`{eg}}i}}}{}{}{}{}}{{c{Ad{eg}}}{{Ad{{Ad{eg}}i}}}{}{}{}{}}{{c{Cb{e}}}{{Ad{{Cb{e}}g}}}{}{}{}}{{c{Ah{e}}}{{Ad{{Ah{e}}g}}}{}{}{}}{{c{Cd{e}}}{{Ad{{Cd{e}}g}}}{}{}{}}{{c{Bd{eg}}}{{Ad{{Bd{eg}}i}}}{}{}{}{}}{{c{Bh{e}}}{{Ad{{Bh{e}}g}}}{}{}{}}2103654`{ce{}{}}0{c{{Ad{e}}}{}{}}000{cCf{}}02222{{hA`}{{Ad{dAb}}}}033","c":[],"p":[[5,"Private",64],[1,"unit"],[5,"Command",65],[5,"CmdLine",0],[6,"CompilerOutput",0],[5,"Formatter",66],[8,"Result",66],[5,"ArgMatches",67],[8,"Error",68],[6,"Result",69],[5,"Id",70],[6,"Option",71],[5,"Path",72],[5,"Context",73],[1,"bool"],[5,"Program",74],[5,"DebugLocations",75],[1,"tuple"],[10,"Error",76],[5,"Box",77],[1,"str"],[5,"PathBuf",72],[5,"String",78],[5,"HashMap",79],[5,"VecDeque",80],[5,"Vec",81],[5,"TypeId",82]],"b":[]}],\ ["cairo_native_run",{"doc":"","t":"PFPGNONNONNNNNNNNNNNNNNNNNHOONNNNNNNNNNNNNNOONNNNNNNNNNNNNNCNNNPPFGNNNNNNNHNHNNNNHOHNNNNNNNNNNNNNNOCNNNNNNNNNNNNNNNPPFGFFNNNNNNNNNNHNOOHHNNNNONNNONNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Aot","Args","Jit","RunMode","__clone_box","allow_warnings","augment_args","augment_args_for_update","available_gas","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","command","command_for_update","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","group_id","into","into","main","opt_level","path","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","run_mode","single_file","to_owned","to_possible_value","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","update_from_arg_matches","update_from_arg_matches_mut","utils","value_variants","vzip","vzip","Aot","Jit","RunArgs","RunMode","__clone_box","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","find_function","fmt","format_for_panic","from","from","into","into","jitvalue_to_felt","opt_level","result_to_runresult","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","run_mode","test","to_owned","to_possible_value","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","value_variants","vzip","vzip","Fail","Success","TestResult","TestStatus","TestSyscallHandler","TestsSummary","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","call_contract","deploy","display_tests_summary","emit_event","failed","failed_run_results","filter_test_cases","find_testable_targets","from","from","from","from","gas_usage","get_block_hash","get_execution_info","get_execution_info_v2","ignored","into","into","into","into","keccak","library_call","passed","replace_class","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","run_tests","secp256k1_add","secp256k1_get_point_from_x","secp256k1_get_xy","secp256k1_mul","secp256k1_new","secp256r1_add","secp256r1_get_point_from_x","secp256r1_get_xy","secp256r1_mul","secp256r1_new","send_message_to_l1","status","storage_read","storage_write","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","vzip"],"q":[[0,"cairo_native_run"],[63,"cairo_native_run::utils"],[115,"cairo_native_run::utils::test"],[221,"dyn_clone::sealed"],[222,"clap_builder::builder::command"],[223,"core::fmt"],[224,"core::fmt"],[225,"clap_builder"],[226,"core::result"],[227,"clap_builder::util::id"],[228,"core::option"],[229,"anyhow"],[230,"alloc::vec"],[231,"alloc::collections::vec_deque"],[232,"alloc::boxed"],[233,"std::collections::hash::map"],[234,"clap_builder::builder::possible_value"],[235,"core::any"],[236,"cairo_lang_sierra::program"],[237,"cairo_lang_sierra::program"],[238,"alloc::vec::into_iter"],[239,"alloc::string"],[240,"cairo_native::values"],[241,"starknet_types_core::felt"],[242,"cairo_native::execution_result"],[243,"cairo_lang_runner"],[244,"cairo_native::starknet"],[245,"cairo_lang_test_plugin"],[246,"scarb_metadata"],[247,"scarb_metadata"],[248,"cairo_lang_sierra::ids"],[249,"cairo_lang_sierra::extensions::modules::gas"],[250,"cairo_lang_utils::ordered_hash_map"],[251,"cairo_native::starknet"]],"d":["","Command line args parser. Exits with 1 if the compilation …","","","","Allows the compilation to succeed with warnings.","","","In cases where gas is available, the amount of provided …","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","","Optimization level, Valid: 0, 1, 2, 3. Values higher than …","The Cairo project path to compile and run its tests.","","","","","","","","","","","","","","","Run with JIT or AOT (compiled).","Whether path is a single file.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Find the function ending with name_suffix in the program.","","Formats the given felts as a panic string.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Convert a JIT value to a felt.","","Convert the execution result to a run result.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The result of a ran test.","The status of a ran test.","","Summary data of the ran tests.","","","","","","","","","","","Display the summary of the ran tests.","","","","Filter compiled test cases with user provided arguments.","Find all testable targets in the Scarb package.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","The gas usage of the run if relevant.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Runs the tests and process the results for a summary.","","","","","","","","","","","","The status of the run.","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[4,0,4,0,4,7,7,7,7,4,7,4,7,4,4,7,7,4,7,4,7,7,7,7,4,7,0,7,7,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,4,4,4,7,4,7,4,7,4,7,4,7,7,7,0,4,4,7,22,22,0,0,22,51,22,51,22,22,22,0,22,0,51,22,51,22,0,51,0,51,51,51,51,51,51,51,22,22,22,22,22,22,22,51,0,22,22,51,22,51,22,51,22,51,22,51,22,22,51,22,55,55,0,0,0,0,37,56,55,33,37,56,55,33,33,33,0,33,37,37,0,0,37,56,55,33,56,33,33,33,37,37,56,55,33,33,33,37,33,37,37,37,37,37,37,37,56,56,56,56,56,56,56,55,55,55,55,55,55,55,33,33,33,33,33,33,33,0,33,33,33,33,33,33,33,33,33,33,33,56,33,33,37,56,55,33,37,56,55,33,37,56,55,33,37,56,55,33,37,56,55,33,37,56,55,33],"f":"````{{cb}d{}}`{ff}0`{ce{}{}}000{hh}{{ce}d{}{}}{{}f}0{{hj}l}{{nj}l}{cc{}}0{A`{{Ad{nAb}}}}0{{}{{Ah{Af}}}}88{{}{{Aj{d}}}}``{{c{Al{e}}}{{Ad{{Al{e}}g}}}{}{}{}}{{c{An{e}}}{{Ad{{An{e}}g}}}{}{}{}}{{c{B`{eg}}}{{Ad{{B`{eg}}i}}}{}{}{}{}}{{c{Bb{e}}}{{Ad{{Bb{e}}g}}}{}{}{}}{{c{Ah{e}}}{{Ad{{Ah{e}}g}}}{}{}{}}{{c{Bd{eg}}}{{Ad{{Bd{eg}}i}}}{}{}{}{}}{{c{Ad{eg}}}{{Ad{{Ad{eg}}i}}}{}{}{}{}}5061234``{ce{}{}}{h{{Ah{Bf}}}}{c{{Ad{e}}}{}{}}000{cBh{}}03333{{nA`}{{Ad{dAb}}}}0`{{}{{Bj{h}}}}55````{{cb}d{}}6666{BlBl}{{ce}d{}{}}{{BnC`}{{Aj{Cb}}}}{{Blj}l}{{{Cf{Cd}}}Ch}{cc{}}0<<{Cj{{Al{Cl}}}}`{Cn{{Aj{D`}}}}{{c{An{e}}}{{Ad{{An{e}}g}}}{}{}{}}{{c{B`{eg}}}{{Ad{{B`{eg}}i}}}{}{}{}{}}{{c{Bb{e}}}{{Ad{{Bb{e}}g}}}{}{}{}}{{c{Al{e}}}{{Ad{{Al{e}}g}}}{}{}{}}{{c{Ah{e}}}{{Ad{{Ah{e}}g}}}{}{}{}}{{c{Bd{eg}}}{{Ad{{Bd{eg}}i}}}{}{}{}{}}{{c{Ad{eg}}}{{Ad{{Ad{eg}}i}}}{}{}{}{}}3452106``{ce{}{}}{Bl{{Ah{Bf}}}}{c{{Ad{e}}}{}{}}000{cBh{}}03333{{}{{Bj{Bl}}}}44``````44444444{{DbClCl{Bj{Cl}}Dd}{{Df{{Al{Cl}}}}}}{{DbClCl{Bj{Cl}}DhDd}{{Df{{B`{Cl{Al{Cl}}}}}}}}{{DjDl}d}{{Db{Bj{Cl}}{Bj{Cl}}Dd}{{Df{d}}}}``{{DnDhDhCh}{{B`{DnDl}}}}{E`{{Al{Eb}}}}{cc{}}000`{{DbEdDd}{{Df{Cl}}}}{{DbDd}{{Df{Ef}}}}{{DbDd}{{Df{Eh}}}}`>>>>{{Db{Bj{Ed}}Dd}{{Df{Ej}}}}:`{{DbClDd}{{Df{d}}}}{{c{Al{e}}}{{Ad{{Al{e}}g}}}{}{}{}}{{c{Bb{e}}}{{Ad{{Bb{e}}g}}}{}{}{}}{{c{An{e}}}{{Ad{{An{e}}g}}}{}{}{}}{{c{Ad{eg}}}{{Ad{{Ad{eg}}i}}}{}{}{}{}}{{c{Bd{eg}}}{{Ad{{Bd{eg}}i}}}{}{}{}{}}{{c{Ah{e}}}{{Ad{{Ah{e}}g}}}{}{}{}}{{c{B`{eg}}}{{Ad{{B`{eg}}i}}}{}{}{}{}}013564224301651234065{{{Al{{B`{ChEl}}}}Bn{Fd{En{Fd{F`Fb}}}}Ff}{{Aj{Dj}}}}{{DbFhFhDd}{{Df{Fh}}}}{{DbEjDhDd}{{Df{{Ah{Fh}}}}}}{{DbFhDd}{{Df{{B`{EjEj}}}}}}{{DbFhEjDd}{{Df{Fh}}}}{{DbEjEjDd}{{Df{{Ah{Fh}}}}}}{{DbFjFjDd}{{Df{Fj}}}}{{DbEjDhDd}{{Df{{Ah{Fj}}}}}}{{DbFjDd}{{Df{{B`{EjEj}}}}}}{{DbFjEjDd}{{Df{Fj}}}}{{DbEjEjDd}{{Df{{Ah{Fj}}}}}}{{DbCl{Bj{Cl}}Dd}{{Df{d}}}}`{{DbFlClDd}{{Df{Cl}}}}{{DbFlClClDd}{{Df{d}}}}{c{{Ad{e}}}{}{}}0000000{cBh{}}000{ce{}{}}00000000000","c":[],"p":[[5,"Private",221],[1,"unit"],[5,"Command",222],[6,"RunMode",0],[5,"Formatter",223],[8,"Result",223],[5,"Args",0],[5,"ArgMatches",224],[8,"Error",225],[6,"Result",226],[5,"Id",227],[6,"Option",228],[8,"Result",229],[5,"Vec",230],[5,"VecDeque",231],[1,"tuple"],[5,"Box",232],[5,"HashMap",233],[5,"PossibleValue",234],[5,"TypeId",235],[1,"slice"],[6,"RunMode",63],[5,"Program",236],[1,"str"],[8,"Function",236],[5,"Felt252",237],[5,"IntoIter",238],[5,"String",239],[6,"JitValue",240],[5,"Felt",241],[5,"ExecutionResult",242],[6,"RunResultValue",243],[5,"TestSyscallHandler",115],[1,"u128"],[8,"SyscallResult",244],[1,"bool"],[5,"TestsSummary",115],[1,"usize"],[5,"TestCompilation",245],[5,"PackageMetadata",246],[5,"TargetMetadata",246],[1,"u64"],[5,"ExecutionInfo",244],[5,"ExecutionInfoV2",244],[5,"U256",244],[5,"TestConfig",247],[5,"FunctionId",248],[6,"CostTokenType",249],[1,"i32"],[5,"OrderedHashMap",250],[5,"RunArgs",63],[5,"Secp256k1Point",244],[5,"Secp256r1Point",244],[1,"u32"],[6,"TestStatus",115],[5,"TestResult",115]],"b":[]}],\ diff --git a/settings.html b/settings.html index ed1c128fe..d570cb844 100644 --- a/settings.html +++ b/settings.html @@ -1,2 +1,2 @@ -Settings -

Rustdoc settings

Back
\ No newline at end of file +Settings +

Rustdoc settings

Back
\ No newline at end of file diff --git a/src-files.js b/src-files.js index d0e1865d7..783630069 100644 --- a/src-files.js +++ b/src-files.js @@ -1,5 +1,5 @@ var srcIndex = new Map(JSON.parse('[\ -["cairo_native",["",[["cache",[],["aot.rs","jit.rs"]],["debug_info",[],["funcs.rs","libfunc_declarations.rs","statements.rs","type_declarations.rs"]],["executor",[],["aot.rs","jit.rs"]],["libfuncs",[["starknet",[],["secp256.rs"]]],["ap_tracking.rs","array.rs","bitwise.rs","bool.rs","box.rs","branch_align.rs","bytes31.rs","cast.rs","const.rs","debug.rs","drop.rs","dup.rs","ec.rs","enum.rs","felt252.rs","felt252_dict.rs","felt252_dict_entry.rs","function_call.rs","gas.rs","mem.rs","nullable.rs","pedersen.rs","poseidon.rs","sint128.rs","sint16.rs","sint32.rs","sint64.rs","sint8.rs","snapshot_take.rs","starknet.rs","struct.rs","uint128.rs","uint16.rs","uint256.rs","uint32.rs","uint512.rs","uint64.rs","uint8.rs","unconditional_jump.rs","unwrap_non_zero.rs"]],["metadata",[],["debug_utils.rs","enum_snapshot_variants.rs","gas.rs","prime_modulo.rs","realloc_bindings.rs","runtime_bindings.rs","snapshot_clones.rs","tail_recursion.rs"]],["types",[],["array.rs","bitwise.rs","bounded_int.rs","box.rs","builtin_costs.rs","bytes31.rs","ec_op.rs","ec_point.rs","ec_state.rs","enum.rs","felt252.rs","felt252_dict.rs","felt252_dict_entry.rs","gas_builtin.rs","non_zero.rs","nullable.rs","pedersen.rs","poseidon.rs","range_check.rs","segment_arena.rs","snapshot.rs","squashed_felt252_dict.rs","starknet.rs","struct.rs","uint128.rs","uint128_mul_guarantee.rs","uint16.rs","uint32.rs","uint64.rs","uint8.rs","uninitialized.rs"]]],["block_ext.rs","cache.rs","compiler.rs","context.rs","debug_info.rs","error.rs","execution_result.rs","executor.rs","ffi.rs","lib.rs","libfuncs.rs","metadata.rs","module.rs","starknet.rs","types.rs","utils.rs","values.rs"]]],\ +["cairo_native",["",[["cache",[],["aot.rs","jit.rs"]],["debug_info",[],["funcs.rs","libfunc_declarations.rs","statements.rs","type_declarations.rs"]],["executor",[],["aot.rs","jit.rs"]],["libfuncs",[["starknet",[],["secp256.rs"]]],["ap_tracking.rs","array.rs","bitwise.rs","bool.rs","box.rs","branch_align.rs","bytes31.rs","cast.rs","const.rs","coupon.rs","debug.rs","drop.rs","dup.rs","ec.rs","enum.rs","felt252.rs","felt252_dict.rs","felt252_dict_entry.rs","function_call.rs","gas.rs","mem.rs","nullable.rs","pedersen.rs","poseidon.rs","sint128.rs","sint16.rs","sint32.rs","sint64.rs","sint8.rs","snapshot_take.rs","starknet.rs","struct.rs","uint128.rs","uint16.rs","uint256.rs","uint32.rs","uint512.rs","uint64.rs","uint8.rs","unconditional_jump.rs","unwrap_non_zero.rs"]],["metadata",[],["debug_utils.rs","enum_snapshot_variants.rs","gas.rs","prime_modulo.rs","realloc_bindings.rs","runtime_bindings.rs","snapshot_clones.rs","tail_recursion.rs"]],["types",[],["array.rs","bitwise.rs","bounded_int.rs","box.rs","builtin_costs.rs","bytes31.rs","coupon.rs","ec_op.rs","ec_point.rs","ec_state.rs","enum.rs","felt252.rs","felt252_dict.rs","felt252_dict_entry.rs","gas_builtin.rs","non_zero.rs","nullable.rs","pedersen.rs","poseidon.rs","range_check.rs","segment_arena.rs","snapshot.rs","squashed_felt252_dict.rs","starknet.rs","struct.rs","uint128.rs","uint128_mul_guarantee.rs","uint16.rs","uint32.rs","uint64.rs","uint8.rs","uninitialized.rs"]]],["block_ext.rs","cache.rs","compiler.rs","context.rs","debug_info.rs","error.rs","execution_result.rs","executor.rs","ffi.rs","lib.rs","libfuncs.rs","metadata.rs","module.rs","starknet.rs","types.rs","utils.rs","values.rs"]]],\ ["cairo_native_compile",["",[],["cairo-native-compile.rs"]]],\ ["cairo_native_dump",["",[],["cairo-native-dump.rs"]]],\ ["cairo_native_run",["",[["utils",[],["mod.rs","test.rs"]]],["cairo-native-run.rs"]]],\ diff --git a/src/cairo_native/libfuncs.rs.html b/src/cairo_native/libfuncs.rs.html index b90e59d0d..dfaf9ff5e 100644 --- a/src/cairo_native/libfuncs.rs.html +++ b/src/cairo_native/libfuncs.rs.html @@ -756,6 +756,12 @@

Files

754 755 756 +757 +758 +759 +760 +761 +762
//! # Compiler libfunc infrastructure
 //!
 //! Contains libfunc generation stuff (aka. the actual instructions).
@@ -786,6 +792,7 @@ 

Files

pub mod bytes31; pub mod cast; pub mod r#const; +pub mod coupon; pub mod debug; pub mod drop; pub mod dup; @@ -974,14 +981,19 @@

Files

Self::UnwrapNonZero(info) => self::unwrap_non_zero::build( context, registry, entry, location, helper, metadata, info, ), - Self::Coupon(_) => todo!(), - Self::CouponCall(_) => todo!(), + Self::Coupon(info) => { + self::coupon::build(context, registry, entry, location, helper, metadata, info) + } + Self::CouponCall(info) => self::function_call::build( + context, registry, entry, location, helper, metadata, info, + ), } } fn is_function_call(&self) -> Option<&FunctionId> { match self { CoreConcreteLibfunc::FunctionCall(info) => Some(&info.function.id), + CoreConcreteLibfunc::CouponCall(info) => Some(&info.function.id), _ => None, } } diff --git a/src/cairo_native/libfuncs/coupon.rs.html b/src/cairo_native/libfuncs/coupon.rs.html new file mode 100644 index 000000000..aa414d6fc --- /dev/null +++ b/src/cairo_native/libfuncs/coupon.rs.html @@ -0,0 +1,195 @@ +coupon.rs - source +
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+
//! # Branch alignment libfunc
+//!
+//! Natively compiled code doesn't need branch alignment because it has no notion of segments.
+//! Because of this, this libfunc is a no-op.
+
+use super::LibfuncHelper;
+use crate::{
+    block_ext::BlockExt, error::Result, metadata::MetadataStorage, utils::ProgramRegistryExt,
+};
+use cairo_lang_sierra::{
+    extensions::{
+        core::{CoreLibfunc, CoreType},
+        coupon::CouponConcreteLibfunc,
+        function_call::SignatureAndFunctionConcreteLibfunc,
+        ConcreteLibfunc,
+    },
+    program_registry::ProgramRegistry,
+};
+use melior::{
+    dialect::llvm,
+    ir::{Block, Location},
+    Context,
+};
+
+/// Generate MLIR operations for the `coupon` libfuncs.
+/// In native it's mostly a no-op operation.
+pub fn build<'ctx, 'this>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<CoreType, CoreLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    selector: &CouponConcreteLibfunc,
+) -> Result<()> {
+    match selector {
+        CouponConcreteLibfunc::Buy(info) => {
+            // Libfunc for buying a coupon for a function. The cost of the coupon is the cost of running the
+            // function (not including the `call` and `ret` instructions).
+            // The coupon can be used to pay in advance for running the function, and run it later for
+            // free (paying only for the `call` and `ret` instructions) using `coupon_call`.
+            build_buy(context, registry, entry, location, helper, metadata, info)
+        }
+        CouponConcreteLibfunc::Refund(info) => {
+            // Libfunc for getting a refund for an unused coupon. The refund is the cost of the function
+            // and it is added back to the gas wallet.
+            build_refund(context, registry, entry, location, helper, metadata, info)
+        }
+    }
+}
+
+/// Generate MLIR operations for the `coupon` libfunc.
+pub fn build_buy<'ctx, 'this>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<CoreType, CoreLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureAndFunctionConcreteLibfunc,
+) -> Result<()> {
+    // In the future if the gas cost is required, this is how to get it.
+    // let gas = metadata.get::<GasMetadata>().ok_or(Error::MissingMetadata)?;
+    // let gas_cost = gas.initial_required_gas(&info.function.id);
+    let ty = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.branch_signatures()[0].vars[0].ty,
+    )?;
+    let coupon = entry.append_op_result(llvm::undef(ty, location))?;
+
+    entry.append_operation(helper.br(0, &[coupon], location));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the `coupon` libfunc.
+pub fn build_refund<'ctx, 'this>(
+    _context: &'ctx Context,
+    _registry: &ProgramRegistry<CoreType, CoreLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _metadata: &mut MetadataStorage,
+    _info: &SignatureAndFunctionConcreteLibfunc,
+) -> Result<()> {
+    // In the future if the gas cost is required, this is how to get it.
+    // let gas = metadata.get::<GasMetadata>().ok_or(Error::MissingMetadata)?;
+    // let gas_cost = gas.initial_required_gas(&info.function.id);
+
+    entry.append_operation(helper.br(0, &[], location));
+
+    Ok(())
+}
+
\ No newline at end of file diff --git a/src/cairo_native/types.rs.html b/src/cairo_native/types.rs.html index f341cfaf2..aa3e7b1cb 100644 --- a/src/cairo_native/types.rs.html +++ b/src/cairo_native/types.rs.html @@ -1032,6 +1032,15 @@

Files

1030 1031 1032 +1033 +1034 +1035 +1036 +1037 +1038 +1039 +1040 +1041
//! # Compiler type infrastructure
 //!
 //! Contains type generation stuff (aka. conversion from Sierra to MLIR types).
@@ -1076,6 +1085,7 @@ 

Files

pub mod r#box; pub mod builtin_costs; pub mod bytes31; +pub mod coupon; pub mod ec_op; pub mod ec_point; pub mod ec_state; @@ -1440,7 +1450,13 @@

Files

metadata, WithSelf::new(self_ty, info), ), - CoreTypeConcrete::Coupon(_) => todo!(), + CoreTypeConcrete::Coupon(info) => self::coupon::build( + context, + module, + registry, + metadata, + WithSelf::new(self_ty, info), + ), } } @@ -1454,6 +1470,7 @@

Files

| CoreTypeConcrete::RangeCheck(_) | CoreTypeConcrete::Pedersen(_) | CoreTypeConcrete::Poseidon(_) + | CoreTypeConcrete::Coupon(_) | CoreTypeConcrete::StarkNet(StarkNetTypeConcrete::System(_)) | CoreTypeConcrete::SegmentArena(_) ) @@ -1525,7 +1542,7 @@

Files

CoreTypeConcrete::Const(_) => todo!(), CoreTypeConcrete::Span(_) => todo!(), CoreTypeConcrete::StarkNet(StarkNetTypeConcrete::Secp256Point(_)) => todo!(), - CoreTypeConcrete::Coupon(_) => todo!(), + CoreTypeConcrete::Coupon(_) => false, } } @@ -1539,7 +1556,9 @@

Files

| CoreTypeConcrete::Poseidon(_) | CoreTypeConcrete::SegmentArena(_) => false, // Other builtins: - CoreTypeConcrete::BuiltinCosts(_) | CoreTypeConcrete::Uint128MulGuarantee(_) => true, +
CoreTypeConcrete::BuiltinCosts(_) + | CoreTypeConcrete::Uint128MulGuarantee(_) + | CoreTypeConcrete::Coupon(_) => true, // Normal types: CoreTypeConcrete::Array(_) @@ -1593,7 +1612,6 @@

Files

type_info.is_zst(registry) } CoreTypeConcrete::Span(_) => todo!(), - CoreTypeConcrete::Coupon(_) => todo!(), } } @@ -1699,7 +1717,7 @@

Files

CoreTypeConcrete::Const(const_type) => { registry.get_type(&const_type.inner_ty)?.layout(registry)? } - CoreTypeConcrete::Coupon(_) => todo!(), + CoreTypeConcrete::Coupon(_) => Layout::new::<()>(), } .pad_to_align()) } @@ -1774,7 +1792,7 @@

Files

.get_type(&info.inner_ty) .unwrap() .is_memory_allocated(registry), - CoreTypeConcrete::Coupon(_) => todo!(), + CoreTypeConcrete::Coupon(_) => false, } } diff --git a/src/cairo_native/types/coupon.rs.html b/src/cairo_native/types/coupon.rs.html new file mode 100644 index 000000000..8f71f9bf7 --- /dev/null +++ b/src/cairo_native/types/coupon.rs.html @@ -0,0 +1,61 @@ +coupon.rs - source +
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+
//! # Coupon type.
+
+use super::WithSelf;
+use crate::{error::Result, metadata::MetadataStorage};
+use cairo_lang_sierra::{
+    extensions::{
+        core::{CoreLibfunc, CoreType},
+        coupon::CouponConcreteType,
+    },
+    program_registry::ProgramRegistry,
+};
+use melior::{
+    dialect::llvm,
+    ir::{r#type::IntegerType, Module, Type},
+    Context,
+};
+
+/// Build the MLIR type.
+///
+/// Check out [the module](self) for more info.
+pub fn build<'ctx>(
+    context: &'ctx Context,
+    _module: &Module<'ctx>,
+    _registry: &ProgramRegistry<CoreType, CoreLibfunc>,
+    _metadata: &mut MetadataStorage,
+    _info: WithSelf<CouponConcreteType>,
+) -> Result<Type<'ctx>> {
+    Ok(llvm::r#type::array(IntegerType::new(context, 8).into(), 0))
+}
+
\ No newline at end of file