From 35bac067e0b1279e70815597e25d8cbd25f19e07 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 1 Oct 2025 00:00:10 +1000 Subject: [PATCH 01/47] convert static config data into functions (with dummy values, compiled program will define them) --- kmir/src/kmir/kdist/mir-semantics/kmir.md | 100 +++++----- .../kdist/mir-semantics/rt/configuration.md | 23 ++- kmir/src/kmir/kdist/mir-semantics/rt/data.md | 160 ++++++---------- .../kmir/kdist/mir-semantics/rt/decoding.md | 175 ++++++------------ kmir/src/kmir/kdist/mir-semantics/rt/types.md | 86 ++++----- kmir/src/kmir/kdist/mir-semantics/rt/value.md | 33 ++++ 6 files changed, 240 insertions(+), 337 deletions(-) diff --git a/kmir/src/kmir/kdist/mir-semantics/kmir.md b/kmir/src/kmir/kdist/mir-semantics/kmir.md index c2344735d..f76cd4703 100644 --- a/kmir/src/kmir/kdist/mir-semantics/kmir.md +++ b/kmir/src/kmir/kdist/mir-semantics/kmir.md @@ -43,22 +43,20 @@ Execution of a program begins by creating a stack frame for the `main` function and executing its function body. Before execution begins, the function map and the initial memory have to be set up. -```k +All of this is done in the client code so we omit the initialisation code which was historically placed here. + +``` // #init step, assuming a singleton in the K cell - rule #init(_NAME:Symbol _ALLOCS:GlobalAllocs FUNCTIONS:FunctionNames ITEMS:MonoItems TYPES:TypeMappings _MACHINE:MachineInfo) + rule #init(_NAME:Symbol _ALLOCS:GlobalAllocs FUNCTIONS:FunctionNames _ITEMS:MonoItems _TYPES:TypeMappings _MACHINE:MachineInfo) => #execFunction(#findItem(ITEMS, FUNCNAME), FUNCTIONS) - _ => #mkFunctionMap(FUNCTIONS, ITEMS) - FUNCNAME - _ => #mkTypeMap(.Map, TYPES) - _ => #mkAdtMap(.Map, TYPES) ``` The `Map` of types is static information used for decoding constants and allocated data into `Value`s. It maps `Ty` IDs to `TypeInfo` that can be supplied to decoding and casting functions as well as operations involving `Aggregate` values (related to `struct`s and `enum`s). -```k +``` syntax Map ::= #mkTypeMap ( Map, TypeMappings ) [function, total, symbol("mkTypeMap")] rule #mkTypeMap(ACC, .TypeMappings) => ACC @@ -79,7 +77,7 @@ It maps `Ty` IDs to `TypeInfo` that can be supplied to decoding and casting func Another type-related `Map` is required to associate an `AdtDef` ID with its corresponding `Ty` ID for `struct`s and `enum`s when creating or using `Aggregate` values. -```k +``` syntax Map ::= #mkAdtMap ( Map , TypeMappings ) [function, total, symbol("mkAdtMap")] // -------------------------------------------------------------- rule #mkAdtMap(ACC, .TypeMappings) => ACC @@ -111,7 +109,7 @@ they are callee in a `Call` terminator within an `Item`). The function _names_ and _ids_ are not relevant for calls and therefore dropped. -```k +``` syntax Map ::= #mkFunctionMap ( FunctionNames, MonoItems ) [ function, total, symbol("mkFunctionMap") ] | #accumFunctions ( Map, Map, FunctionNames ) [ function, total ] | #accumItems ( Map, MonoItems ) [ function, total ] @@ -166,7 +164,7 @@ structure from its function body and then execute the first basic block of the body. The function's `Ty` index in the `functions` map must be known to populate the `currentFunc` field. -```k +``` // find function through its MonoItemFn.name syntax MonoItem ::= #findItem ( MonoItems, Symbol ) [ function ] @@ -213,20 +211,9 @@ be known to populate the `currentFunc` field. [owise] rule #tyFromName(_, .List) => ty(-1) // HACK see #mainIsMinusOne above - - syntax List ::= toKList(BasicBlocks) [function, total] - - rule toKList( .BasicBlocks ) => .List - rule toKList(B:BasicBlock REST:BasicBlocks) => ListItem(B) toKList(REST) - - syntax List ::= #reserveFor( LocalDecls ) [function, total] - - rule #reserveFor(.LocalDecls) => .List - - rule #reserveFor(localDecl(TY, _, MUT) REST:LocalDecls) - => - ListItem(newLocal(TY, MUT)) #reserveFor(REST) ``` +#### Function Execution + Executing a function body consists of repeated calls to `#execBlock` for the basic blocks that, together, constitute the function body. The @@ -373,7 +360,7 @@ If the local `_0` does not have a value (i.e., it remained uninitialised), the f _ => CALLER // - _ => #getBlocks(FUNCS, CALLER) + _ => #getBlocks(CALLER) CALLER => NEWCALLER DEST => NEWDEST someBasicBlockIdx(TARGET) => NEWTARGET @@ -382,9 +369,6 @@ If the local `_0` does not have a value (i.e., it remained uninitialised), the f // // remaining call stack (without top frame) ListItem(StackFrame(NEWCALLER, NEWDEST, NEWTARGET, UNWIND, NEWLOCALS)) STACK => STACK - FUNCS - requires CALLER in_keys(FUNCS) - [preserves-definedness] // CALLER lookup defined // no value to return, skip writing rule #execTerminator(terminator(terminatorKindReturn, _SPAN)) ~> _ @@ -393,7 +377,7 @@ If the local `_0` does not have a value (i.e., it remained uninitialised), the f _ => CALLER // - _ => #getBlocks(FUNCS, CALLER) + _ => #getBlocks(CALLER) CALLER => NEWCALLER _ => NEWDEST someBasicBlockIdx(TARGET) => NEWTARGET @@ -402,15 +386,11 @@ If the local `_0` does not have a value (i.e., it remained uninitialised), the f // // remaining call stack (without top frame) ListItem(StackFrame(NEWCALLER, NEWDEST, NEWTARGET, UNWIND, NEWLOCALS)) STACK => STACK - FUNCS - requires CALLER in_keys(FUNCS) - [preserves-definedness] // CALLER lookup defined - syntax List ::= #getBlocks(Map, Ty) [function] - | #getBlocksAux(MonoItemKind) [function, total] + syntax List ::= #getBlocks( Ty ) [function] + | #getBlocksAux( MonoItemKind ) [function, total] - rule #getBlocks(FUNCS, ID) => #getBlocksAux({FUNCS[ID]}:>MonoItemKind) - requires ID in_keys(FUNCS) + rule #getBlocks(TY) => #getBlocksAux(lookupFunction(TY)) // returns blocks from the body rule #getBlocksAux(monoItemFn(_, _, noBody)) => .List @@ -419,6 +399,11 @@ If the local `_0` does not have a value (i.e., it remained uninitialised), the f rule #getBlocksAux(monoItemStatic(_, _, _)) => .List // should not occur in calls rule #getBlocksAux(monoItemGlobalAsm(_)) => .List // not supported rule #getBlocksAux(IntrinsicFunction(_)) => .List // intrinsics have no body + + syntax List ::= toKList(BasicBlocks) [function, total] + // --------------------------------------------------- + rule toKList( .BasicBlocks ) => .List + rule toKList(B:BasicBlock REST:BasicBlocks) => ListItem(B) toKList(REST) ``` When a `terminatorKindReturn` is executed but the optional target is empty @@ -462,18 +447,14 @@ where the returned result should go. // Intrinsic function call - execute directly without state switching rule #execTerminator(terminator(terminatorKindCall(FUNC, ARGS, DEST, TARGET, _UNWIND), _SPAN)) ~> _ => - #execIntrinsic({FUNCTIONS[#tyOfCall(FUNC)]}:>MonoItemKind, ARGS, DEST) ~> #continueAt(TARGET) + #execIntrinsic(lookupFunction(#tyOfCall(FUNC)), ARGS, DEST) ~> #continueAt(TARGET) - FUNCTIONS - requires #tyOfCall(FUNC) in_keys(FUNCTIONS) - andBool isMonoItemKind(FUNCTIONS[#tyOfCall(FUNC)]) - andBool isIntrinsicFunction({FUNCTIONS[#tyOfCall(FUNC)]}:>MonoItemKind) - [preserves-definedness] // callee lookup defined + requires isIntrinsicFunction(lookupFunction(#tyOfCall(FUNC))) // Regular function call - full state switching and stack setup rule #execTerminator(terminator(terminatorKindCall(FUNC, ARGS, DEST, TARGET, UNWIND), _SPAN)) ~> _ => - #setUpCalleeData({FUNCTIONS[#tyOfCall(FUNC)]}:>MonoItemKind, ARGS) + #setUpCalleeData(lookupFunction(#tyOfCall(FUNC)), ARGS) CALLER => #tyOfCall(FUNC) @@ -485,11 +466,7 @@ where the returned result should go. LOCALS STACK => ListItem(StackFrame(OLDCALLER, OLDDEST, OLDTARGET, OLDUNWIND, LOCALS)) STACK - FUNCTIONS - requires #tyOfCall(FUNC) in_keys(FUNCTIONS) - andBool isMonoItemKind(FUNCTIONS[#tyOfCall(FUNC)]) - andBool notBool isIntrinsicFunction({FUNCTIONS[#tyOfCall(FUNC)]}:>MonoItemKind) - [preserves-definedness] // callee lookup defined + requires notBool isIntrinsicFunction(lookupFunction(#tyOfCall(FUNC))) syntax Bool ::= isIntrinsicFunction(MonoItemKind) [function] rule isIntrinsicFunction(IntrinsicFunction(_)) => true @@ -534,6 +511,14 @@ An operand may be a `Reference` (the only way a function could access another fu // TODO: Haven't handled "noBody" case + syntax List ::= #reserveFor( LocalDecls ) [function, total] + + rule #reserveFor(.LocalDecls) => .List + + rule #reserveFor(localDecl(TY, _, MUT) REST:LocalDecls) + => + ListItem(newLocal(TY, MUT)) #reserveFor(REST) + syntax KItem ::= #setArgsFromStack ( Int, Operands) | #setArgFromStack ( Int, Operand) @@ -659,11 +644,10 @@ Execution gets stuck (no matching rule) when operands have different types or un ```k // Raw eq: dereference operands, extract types, and delegate to typed comparison rule #execIntrinsic(IntrinsicFunction(symbol("raw_eq")), ARG1:Operand ARG2:Operand .Operands, PLACE) - => #execRawEqTyped(PLACE, #withDeref(ARG1), #extractOperandType(#withDeref(ARG1), LOCALS, TYPEMAP), - #withDeref(ARG2), #extractOperandType(#withDeref(ARG2), LOCALS, TYPEMAP)) + => #execRawEqTyped(PLACE, #withDeref(ARG1), #extractOperandType(#withDeref(ARG1), LOCALS), + #withDeref(ARG2), #extractOperandType(#withDeref(ARG2), LOCALS)) ... LOCALS - TYPEMAP // Compare values only if types are identical syntax KItem ::= #execRawEqTyped(Place, Evaluation, MaybeTy, Evaluation, MaybeTy) [seqstrict(2,4)] @@ -683,17 +667,17 @@ Execution gets stuck (no matching rule) when operands have different types or un rule #withDeref(OP) => OP [owise] // Extract type from operands (locals with projections, constants, fallback to unknown) - syntax MaybeTy ::= #extractOperandType(Operand, List, Map) [function, total] - rule #extractOperandType(operandCopy(place(local(I), PROJS)), LOCALS, TYPEMAP) - => getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS, TYPEMAP) + syntax MaybeTy ::= #extractOperandType(Operand, List) [function, total] + rule #extractOperandType(operandCopy(place(local(I), PROJS)), LOCALS) + => getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS) requires 0 <=Int I andBool I getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS, TYPEMAP) + rule #extractOperandType(operandMove(place(local(I), PROJS)), LOCALS) + => getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS) requires 0 <=Int I andBool I TY - rule #extractOperandType(_, _, _) => TyUnknown [owise] + rule #extractOperandType(operandConstant(constOperand(_, _, mirConst(_, TY, _))), _) => TY + rule #extractOperandType(_, _) => TyUnknown [owise] ``` ### Stopping on Program Errors @@ -722,6 +706,6 @@ The top-level module `KMIR` includes both the control flow constructs (and trans module KMIR imports KMIR-CONTROL-FLOW imports KMIR-LEMMAS - imports KMIR-SYMBOLIC-LOCALS +// imports KMIR-SYMBOLIC-LOCALS endmodule diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/configuration.md b/kmir/src/kmir/kdist/mir-semantics/rt/configuration.md index 7057818f8..c49ebc0c5 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/configuration.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/configuration.md @@ -46,16 +46,21 @@ module KMIR-CONFIGURATION // remaining call stack (without top frame) .List - // static and dynamic allocations: AllocId -> Value - .Map - // ============ static information ============ - // function store, Ty -> MonoItemFn - .Map - symbol($STARTSYM:String) - // static information about the base type interning in the MIR - .Map - .Map +``` + +Additional fields of the configuration contain _static_ information. + +* The function store mapping `Ty` to `MonoItemFn` (and `IntrinsicFn`). This is essentially the entire program. +* The allocation store, mapping `AllocId` to `Value` (or error markers if undecoded) +* The type metadata map, associating `Ty` with a `TypeInfo` (which may contain more `Ty`s) +* The mapping from `AdtDef` ID to `Ty` +For better performance, this information is reified to K functions, +rather than carrying static `Map` structures with the configuration. + +The functions are defined in the `RT-VALUE` module for now but should have their own module. + +```k endmodule ``` diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/data.md b/kmir/src/kmir/kdist/mir-semantics/rt/data.md index e9d495fc5..80ea049f7 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/data.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/data.md @@ -124,13 +124,10 @@ Constant operands are simply decoded according to their type. ```k rule operandConstant(constOperand(_, _, mirConst(KIND, TY, _))) - => #decodeConstant(KIND, TY, {TYPEMAP[TY]}:>TypeInfo) + => #decodeConstant(KIND, TY, lookupTy(TY)) ... - TYPEMAP - requires TY in_keys(TYPEMAP) - andBool isTypeInfo(TYPEMAP[TY]) - [preserves-definedness] // valid Map lookup checked + requires typeInfoVoidType =/=K lookupTy(TY) ``` ### Copying and Moving @@ -293,13 +290,7 @@ A `Deref` projection in the projections list changes the target of the write ope andBool isStackFrame(STACK[FRAME -Int 1]) [preserves-definedness] // valid context ensured upon context construction - rule #traverseProjection(toAlloc(ALLOC_ID), _ORIGINAL, .ProjectionElems, CONTEXTS) - ~> #writeMoved - => .K - ... - - MEMORY => MEMORY[ALLOC_ID <- #buildUpdate(Moved, CONTEXTS)] - [preserves-definedness] // valid ALLOC_ID ensured when destination set + // allocations should not be written to, therefore no rule for `toAlloc` ``` These helpers mark down, as we traverse the projection, what `Place` we are currently looking up in the traversal. @@ -703,17 +694,14 @@ even though this could be supported. ) => #traverseProjection( toAlloc(ALLOC_ID), - {MEMORYMAP[ALLOC_ID]}:>Value, + lookupAlloc(ALLOC_ID), ALLOC_PROJS, // alloc projections .Contexts // previous contexts obsolete ) ~> #derefTruncate(META, PROJS) // then truncate, then continue with remaining projections ... - MEMORYMAP - requires ALLOC_ID in_keys(MEMORYMAP) - andBool isValue(MEMORYMAP[ALLOC_ID]) - [preserves-definedness] + requires Moved =/=K lookupAlloc(ALLOC_ID) ``` ## Evaluation of R-Values (`Rvalue` sort) @@ -747,24 +735,21 @@ The most basic ones are simply accessing an operand, either directly or by way o rule rvalueUse(OPERAND) => OPERAND ... rule rvalueCast(CASTKIND, operandCopy(place(local(I), PROJS)) #as OPERAND, TY) - => #cast(OPERAND, CASTKIND, getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS, TYPEMAP), TY) ... + => #cast(OPERAND, CASTKIND, getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS), TY) ... LOCALS - TYPEMAP requires 0 <=Int I andBool I rvalueCast(CASTKIND, operandMove(place(local(I), PROJS)) #as OPERAND, TY) - => #cast(OPERAND, CASTKIND, getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS, TYPEMAP), TY) ... + => #cast(OPERAND, CASTKIND, getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS), TY) ... LOCALS - TYPEMAP requires 0 <=Int I andBool I rvalueCast(CASTKIND, operandConstant(constOperand(_, _, mirConst(_, CONST_TY, _))) #as OPERAND, TY) => #cast(OPERAND, CASTKIND, CONST_TY, TY) ... - [preserves-definedness] // valid list indexing checked ``` A number of unary and binary operations exist, (which are dependent on the operand types). @@ -782,9 +767,8 @@ The `RValue::Repeat` creates and array of (statically) fixed length by repeating ```k syntax Evaluation ::= #mkArray ( Evaluation , Int ) [strict(1)] - rule rvalueRepeat(ELEM, tyConst(KIND, _)) => #mkArray(ELEM, readTyConstInt(KIND, TYPES)) ... - TYPES - requires isInt(readTyConstInt(KIND, TYPES)) + rule rvalueRepeat(ELEM, tyConst(KIND, _)) => #mkArray(ELEM, readTyConstInt(KIND)) ... + requires isInt(readTyConstInt(KIND)) [preserves-definedness] rule #mkArray(ELEMENT:Value, N) => Range(makeList(N, ELEMENT)) ... @@ -802,7 +786,6 @@ The `RValue::Repeat` creates and array of (statically) fixed length by repeating Integer(size(LIST), 64, false) // returns usize ... - ``` ### Aggregates @@ -891,9 +874,8 @@ The `getTyOf` helper applies the projections from the `Place` to determine the ` ```k rule rvalueDiscriminant(place(local(I), PROJS) #as PLACE) - => #discriminant(operandCopy(PLACE), getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS, TYPEMAP)) ... + => #discriminant(operandCopy(PLACE), getTyOf(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS)) ... LOCALS - TYPEMAP requires 0 <=Int I andBool I #discriminant(Aggregate(IDX, _), TY:Ty) - => Integer(#lookupDiscriminant({TYPEMAP[TY]}:>TypeInfo, IDX), 128, false) // parameters for stored u128 + => Integer(#lookupDiscriminant(lookupTy(TY), IDX), 128, false) // parameters for stored u128 ... - TYPEMAP - requires TY in_keys(TYPEMAP) - andBool isTypeInfo(TYPEMAP[TY]) - [preserves-definedness] // valid map lookup and sort coercion syntax Int ::= #lookupDiscriminant ( TypeInfo , VariantIdx ) [function, total] | #lookupDiscrAux ( Discriminants , Int ) [function] @@ -956,11 +934,10 @@ This eliminates any `Deref` projections from the place, and also resolves `Index rule rvalueRef(_REGION, KIND, place(local(I), PROJS)) => #traverseProjection(toLocal(I), getValue(LOCALS, I), PROJS, .Contexts) - ~> #forRef(#mutabilityOf(KIND), #metadata(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS, TYPEMAP)) + ~> #forRef(#mutabilityOf(KIND), #metadata(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS)) ... LOCALS - TYPEMAP requires 0 <=Int I andBool I rvalueAddressOf(MUT, place(local(I), PROJS)) => #traverseProjection(toLocal(I), getValue(LOCALS, I), PROJS, .Contexts) - ~> #forPtr(MUT, #metadata(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS, TYPEMAP)) + ~> #forPtr(MUT, #metadata(tyOfLocal({LOCALS[I]}:>TypedLocal), PROJS)) // we should use #alignOf to emulate the address ... LOCALS - TYPEMAP requires 0 <=Int I andBool I #cast(Integer(VAL, WIDTH, _SIGNEDNESS), castKindIntToInt, _, TY) => - #intAsType(VAL, WIDTH, #numTypeOf({TYPEMAP[TY]}:>TypeInfo)) + #intAsType(VAL, WIDTH, #numTypeOf(lookupTy(TY))) ... - TYPEMAP - requires #isIntType({TYPEMAP[TY]}:>TypeInfo) + requires #isIntType(lookupTy(TY)) [preserves-definedness] // ensures #numTypeOf is defined ``` @@ -1101,21 +1076,19 @@ Boolean values can also be cast to Integers (encoding `true` as `1`). ```k rule #cast(BoolVal(VAL), castKindIntToInt, _, TY) => - #intAsType(1, 8, #numTypeOf({TYPEMAP[TY]}:>TypeInfo)) + #intAsType(1, 8, #numTypeOf(lookupTy(TY))) ... - TYPEMAP - requires #isIntType({TYPEMAP[TY]}:>TypeInfo) + requires #isIntType(lookupTy(TY)) andBool VAL [preserves-definedness] // ensures #numTypeOf is defined rule #cast(BoolVal(VAL), castKindIntToInt, _, TY) => - #intAsType(0, 8, #numTypeOf({TYPEMAP[TY]}:>TypeInfo)) + #intAsType(0, 8, #numTypeOf(lookupTy(TY))) ... - TYPEMAP - requires #isIntType({TYPEMAP[TY]}:>TypeInfo) + requires #isIntType(lookupTy(TY)) andBool notBool VAL [preserves-definedness] // ensures #numTypeOf is defined ``` @@ -1139,27 +1112,22 @@ which have the same representation `Value::Range`. ```k rule #cast(PtrLocal(OFFSET, PLACE, MUT, EMUL), castKindPtrToPtr, TY_SOURCE, TY_TARGET) => - PtrLocal(OFFSET, PLACE, MUT, #convertPtrEmul(EMUL, {TYPEMAP[TY_TARGET]}:>TypeInfo, TYPEMAP)) + PtrLocal(OFFSET, PLACE, MUT, #convertPtrEmul(EMUL, lookupTy(TY_TARGET))) ... - TYPEMAP - requires TY_SOURCE in_keys(TYPEMAP) - andBool TY_TARGET in_keys(TYPEMAP) - andBool isTypeInfo(TYPEMAP[TY_SOURCE]) - andBool isTypeInfo(TYPEMAP[TY_TARGET]) - andBool #typesCompatible({TYPEMAP[TY_SOURCE]}:>TypeInfo, {TYPEMAP[TY_TARGET]}:>TypeInfo, TYPEMAP) + requires #typesCompatible(lookupTy(TY_SOURCE), lookupTy(TY_TARGET)) [preserves-definedness] // valid map lookups checked - syntax PtrEmulation ::= #convertPtrEmul ( PtrEmulation , TypeInfo , Map ) [function, total] + syntax PtrEmulation ::= #convertPtrEmul ( PtrEmulation , TypeInfo ) [function, total] // ---------------------------------------------------------------------------------- ``` Pointers to slices can be converted to pointers to single elements, _losing_ their metadata. ```k - rule #convertPtrEmul( ptrEmulation(_) , typeInfoRefType(POINTEE_TY), TYPEMAP) => ptrEmulation(noMetadata) - requires #metadata(POINTEE_TY, TYPEMAP) ==K noMetadata [priority(60)] - rule #convertPtrEmul( ptrEmulation(_) , typeInfoPtrType(POINTEE_TY), TYPEMAP) => ptrEmulation(noMetadata) - requires #metadata(POINTEE_TY, TYPEMAP) ==K noMetadata [priority(60)] + rule #convertPtrEmul( ptrEmulation(_) , typeInfoRefType(POINTEE_TY)) => ptrEmulation(noMetadata) + requires #metadata(POINTEE_TY) ==K noMetadata [priority(60)] + rule #convertPtrEmul( ptrEmulation(_) , typeInfoPtrType(POINTEE_TY)) => ptrEmulation(noMetadata) + requires #metadata(POINTEE_TY) ==K noMetadata [priority(60)] ``` Conversely, when casting a pointer to an element to a pointer to a slice or array, @@ -1169,17 +1137,17 @@ the original allocation size must be checked to be sufficient. ```k // no metadata to begin with, fill it in from target type (NB dynamicSize(1) if dynamic) - rule #convertPtrEmul( ptrEmulation(noMetadata) , typeInfoRefType(POINTEE_TY), TYPEMAP) => ptrEmulation(#metadata(POINTEE_TY, TYPEMAP)) - rule #convertPtrEmul( ptrEmulation(noMetadata) , typeInfoPtrType(POINTEE_TY), TYPEMAP) => ptrEmulation(#metadata(POINTEE_TY, TYPEMAP)) + rule #convertPtrEmul( ptrEmulation(noMetadata) , typeInfoRefType(POINTEE_TY)) => ptrEmulation(#metadata(POINTEE_TY)) + rule #convertPtrEmul( ptrEmulation(noMetadata) , typeInfoPtrType(POINTEE_TY)) => ptrEmulation(#metadata(POINTEE_TY)) ``` Conversion from an array to a slice pointer requires adding metadata (`dynamicSize`) with the previously-static length. ```k // convert static length to dynamic length - rule #convertPtrEmul(ptrEmulation(staticSize(SIZE)), typeInfoRefType(POINTEE_TY), TYPEMAP) => ptrEmulation(dynamicSize(SIZE)) - requires #metadata(POINTEE_TY, TYPEMAP) ==K dynamicSize(1) - rule #convertPtrEmul(ptrEmulation(staticSize(SIZE)), typeInfoPtrType(POINTEE_TY), TYPEMAP) => ptrEmulation(dynamicSize(SIZE)) - requires #metadata(POINTEE_TY, TYPEMAP) ==K dynamicSize(1) + rule #convertPtrEmul(ptrEmulation(staticSize(SIZE)), typeInfoRefType(POINTEE_TY)) => ptrEmulation(dynamicSize(SIZE)) + requires #metadata(POINTEE_TY) ==K dynamicSize(1) + rule #convertPtrEmul(ptrEmulation(staticSize(SIZE)), typeInfoPtrType(POINTEE_TY)) => ptrEmulation(dynamicSize(SIZE)) + requires #metadata(POINTEE_TY) ==K dynamicSize(1) ``` Conversion from a slice to an array pointer, or between different static length array pointers, is allowed in all cases. @@ -1188,29 +1156,29 @@ It may however be illegal to _dereference_ (i.e., access) the created pointer, d **TODO** we can mark cases of insufficient original length as "InvalidCast" in the future, similar to the above future work. ```k - rule #convertPtrEmul(ptrEmulation(staticSize(_)), typeInfoRefType(POINTEE_TY), TYPEMAP ) => ptrEmulation(#metadata(POINTEE_TY, TYPEMAP)) - requires #metadata(POINTEE_TY, TYPEMAP) =/=K dynamicSize(1) - rule #convertPtrEmul(ptrEmulation(staticSize(_)), typeInfoPtrType(POINTEE_TY), TYPEMAP ) => ptrEmulation(#metadata(POINTEE_TY, TYPEMAP)) - requires #metadata(POINTEE_TY, TYPEMAP) =/=K dynamicSize(1) - - rule #convertPtrEmul(ptrEmulation(dynamicSize(_)), typeInfoRefType(POINTEE_TY), TYPEMAP ) => ptrEmulation(#metadata(POINTEE_TY, TYPEMAP)) - requires #metadata(POINTEE_TY, TYPEMAP) =/=K dynamicSize(1) - rule #convertPtrEmul(ptrEmulation(dynamicSize(_)), typeInfoPtrType(POINTEE_TY), TYPEMAP ) => ptrEmulation(#metadata(POINTEE_TY, TYPEMAP)) - requires #metadata(POINTEE_TY, TYPEMAP) =/=K dynamicSize(1) + rule #convertPtrEmul(ptrEmulation(staticSize(_)), typeInfoRefType(POINTEE_TY)) => ptrEmulation(#metadata(POINTEE_TY)) + requires #metadata(POINTEE_TY) =/=K dynamicSize(1) + rule #convertPtrEmul(ptrEmulation(staticSize(_)), typeInfoPtrType(POINTEE_TY)) => ptrEmulation(#metadata(POINTEE_TY)) + requires #metadata(POINTEE_TY) =/=K dynamicSize(1) + + rule #convertPtrEmul(ptrEmulation(dynamicSize(_)), typeInfoRefType(POINTEE_TY)) => ptrEmulation(#metadata(POINTEE_TY)) + requires #metadata(POINTEE_TY) =/=K dynamicSize(1) + rule #convertPtrEmul(ptrEmulation(dynamicSize(_)), typeInfoPtrType(POINTEE_TY)) => ptrEmulation(#metadata(POINTEE_TY)) + requires #metadata(POINTEE_TY) =/=K dynamicSize(1) ``` For a cast bwetween two pointer types with `dynamicSize` metadata (unlikely to occur), the dynamic size value is retained. ```k - rule #convertPtrEmul(ptrEmulation(dynamicSize(SIZE)), typeInfoRefType(POINTEE_TY), TYPEMAP) => ptrEmulation(dynamicSize(SIZE)) - requires #metadata(POINTEE_TY, TYPEMAP) ==K dynamicSize(1) - rule #convertPtrEmul(ptrEmulation(dynamicSize(SIZE)), typeInfoPtrType(POINTEE_TY), TYPEMAP) => ptrEmulation(dynamicSize(SIZE)) - requires #metadata(POINTEE_TY, TYPEMAP) ==K dynamicSize(1) + rule #convertPtrEmul(ptrEmulation(dynamicSize(SIZE)), typeInfoRefType(POINTEE_TY)) => ptrEmulation(dynamicSize(SIZE)) + requires #metadata(POINTEE_TY) ==K dynamicSize(1) + rule #convertPtrEmul(ptrEmulation(dynamicSize(SIZE)), typeInfoPtrType(POINTEE_TY)) => ptrEmulation(dynamicSize(SIZE)) + requires #metadata(POINTEE_TY) ==K dynamicSize(1) ``` ```k // non-pointer and non-ref target type (should not happen!) - rule #convertPtrEmul( _ , _OTHER_INFO , _ ) => ptrEmulation(noMetadata) [priority(100)] + rule #convertPtrEmul( _ , _OTHER_INFO ) => ptrEmulation(noMetadata) [priority(100)] ``` `PointerCoercion` may achieve a simmilar effect, or deal with function and closure pointers, depending on the coercion type: @@ -1260,25 +1228,13 @@ What can be supported without additional layout consideration is trivial casts b ```k rule #cast(Reference(_, _, _, _) #as REF, castKindTransmute, TY_SOURCE, TY_TARGET) => REF ... - TYPEMAP - requires TY_SOURCE in_keys(TYPEMAP) - andBool TY_TARGET in_keys(TYPEMAP) - andBool TYPEMAP[TY_SOURCE] ==K TYPEMAP[TY_TARGET] - [preserves-definedness] // valid map lookups checked + requires lookupTy(TY_SOURCE) ==K lookupTy(TY_TARGET) rule #cast(AllocRef(_, _, _) #as REF, castKindTransmute, TY_SOURCE, TY_TARGET) => REF ... - TYPEMAP - requires TY_SOURCE in_keys(TYPEMAP) - andBool TY_TARGET in_keys(TYPEMAP) - andBool TYPEMAP[TY_SOURCE] ==K TYPEMAP[TY_TARGET] - [preserves-definedness] // valid map lookups checked + requires lookupTy(TY_SOURCE) ==K lookupTy(TY_TARGET) rule #cast(PtrLocal(_, _, _, _) #as PTR, castKindTransmute, TY_SOURCE, TY_TARGET) => PTR ... - TYPEMAP - requires TY_SOURCE in_keys(TYPEMAP) - andBool TY_TARGET in_keys(TYPEMAP) - andBool TYPEMAP[TY_SOURCE] ==K TYPEMAP[TY_TARGET] - [preserves-definedness] // valid map lookups checked + requires lookupTy(TY_SOURCE) ==K lookupTy(TY_TARGET) ``` ### Other casts involving pointers @@ -1306,10 +1262,9 @@ For allocated constants without provenance, the decoder works directly with the _TY, TYPEINFO ) - => #decodeValue(BYTES, TYPEINFO, TYPEMAP) + => #decodeValue(BYTES, TYPEINFO) ... - TYPEMAP ``` Zero-sized types can be decoded trivially into their respective representation. @@ -1340,12 +1295,10 @@ into the `` heap where all allocated constants have been decoded at prog _TY, typeInfoRefType(POINTEE_TY) ) - => AllocRef(ALLOC_ID, .ProjectionElems, #metadata(POINTEE_TY, TYPEMAP)) + => AllocRef(ALLOC_ID, .ProjectionElems, #metadata(POINTEE_TY)) ... - ALLOCMAP - TYPEMAP - requires ALLOC_ID in_keys(ALLOCMAP) + requires lookupAlloc(ALLOC_ID) =/=K Moved andBool lengthBytes(BYTES) ==Int 8 // no dynamic metadata rule #decodeConstant( @@ -1362,8 +1315,7 @@ into the `` heap where all allocated constants have been decoded at prog // assumes usize == u64 ... - ALLOCMAP - requires ALLOC_ID in_keys(ALLOCMAP) + requires lookupAlloc(ALLOC_ID) =/=K Moved andBool lengthBytes(BYTES) ==Int 16 // fat pointer (assumes usize == u64) [preserves-definedness] // Byte length checked to be sufficient ``` @@ -1741,12 +1693,10 @@ Since our arithmetic operations signal undefined behaviour on overflow independe // FIXME: 64 is hardcoded since usize not supported rule rvalueNullaryOp(nullOpAlignOf, TY) => - Integer(#alignOf({TYPEMAP[TY]}:>TypeInfo), 64, false) + Integer(#alignOf(lookupTy(TY)), 64, false) ... - TYPEMAP - requires TY in_keys(TYPEMAP) - andBool isTypeInfo(TYPEMAP[TY]) + requires lookupTy(TY) =/=K typeInfoVoidType ``` #### Other operations diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/decoding.md b/kmir/src/kmir/kdist/mir-semantics/rt/decoding.md index 8835cb481..acd80a7b3 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/decoding.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/decoding.md @@ -37,20 +37,20 @@ and arrays (where layout is trivial). ### Decoding `PrimitiveType`s ```k - syntax Evaluation ::= #decodeValue ( Bytes , TypeInfo , Map ) [function, total, symbol(decodeValue)] + syntax Evaluation ::= #decodeValue ( Bytes , TypeInfo ) [function, total, symbol(decodeValue)] | UnableToDecode( Bytes , TypeInfo ) | UnableToDecode( Bytes , Ty , ProvenanceMapEntries ) // Boolean: should be one byte with value one or zero - rule #decodeValue(BYTES, typeInfoPrimitiveType(primTypeBool), _TYPEMAP) => BoolVal(false) + rule #decodeValue(BYTES, typeInfoPrimitiveType(primTypeBool)) => BoolVal(false) requires 0 ==Int Bytes2Int(BYTES, LE, Unsigned) andBool lengthBytes(BYTES) ==Int 1 - rule #decodeValue(BYTES, typeInfoPrimitiveType(primTypeBool), _TYPEMAP) => BoolVal(true) + rule #decodeValue(BYTES, typeInfoPrimitiveType(primTypeBool)) => BoolVal(true) requires 1 ==Int Bytes2Int(BYTES, LE, Unsigned) andBool lengthBytes(BYTES) ==Int 1 // Integer: handled in separate module for numeric operation_s - rule #decodeValue(BYTES, TYPEINFO, TYPEMAP) => #decodeInteger(BYTES, #intTypeOf(TYPEINFO)) - requires #isIntType(TYPEINFO) andBool lengthBytes(BYTES) ==Int #elemSize(TYPEINFO, TYPEMAP) + rule #decodeValue(BYTES, TYPEINFO) => #decodeInteger(BYTES, #intTypeOf(TYPEINFO)) + requires #isIntType(TYPEINFO) andBool lengthBytes(BYTES) ==Int #elemSize(TYPEINFO) [preserves-definedness] // TODO Char type @@ -65,17 +65,13 @@ and arrays (where layout is trivial). Arrays are decoded iteratively, using a known (expected) length or the length of the byte array. ```k -rule #decodeValue(BYTES, typeInfoArrayType(ELEMTY, someTyConst(tyConst(LEN, _))), TYPEMAP) - => #decodeArrayAllocation(BYTES, {TYPEMAP[ELEMTY]}:>TypeInfo, readTyConstInt(LEN, TYPEMAP), TYPEMAP) - requires ELEMTY in_keys(TYPEMAP) - andBool isTypeInfo(TYPEMAP[ELEMTY]) - andBool isInt(readTyConstInt(LEN, TYPEMAP)) +rule #decodeValue(BYTES, typeInfoArrayType(ELEMTY, someTyConst(tyConst(LEN, _)))) + => #decodeArrayAllocation(BYTES, lookupTy(ELEMTY), readTyConstInt(LEN)) + requires isInt(readTyConstInt(LEN)) [preserves-definedness] -rule #decodeValue(BYTES, typeInfoArrayType(ELEMTY, noTyConst), TYPEMAP) - => #decodeSliceAllocation(BYTES, {TYPEMAP[ELEMTY]}:>TypeInfo, TYPEMAP) - requires ELEMTY in_keys(TYPEMAP) - andBool isTypeInfo(TYPEMAP[ELEMTY]) +rule #decodeValue(BYTES, typeInfoArrayType(ELEMTY, noTyConst)) + => #decodeSliceAllocation(BYTES, lookupTy(ELEMTY)) ``` ### Error marker (becomes thunk) for other (unimplemented) cases @@ -83,43 +79,42 @@ rule #decodeValue(BYTES, typeInfoArrayType(ELEMTY, noTyConst), TYPEMAP) All unimplemented cases will become thunks by way of this default rule: ```k - rule #decodeValue(BYTES, TYPEINFO, _TYPEMAP) => UnableToDecode(BYTES, TYPEINFO) [owise] + rule #decodeValue(BYTES, TYPEINFO) => UnableToDecode(BYTES, TYPEINFO) [owise] ``` ## Helper function to determine the expected byte length for a type ```k // TODO: this function should go into the rt/types.md module - syntax Int ::= #elemSize ( TypeInfo , Map ) [function] + syntax Int ::= #elemSize ( TypeInfo ) [function] ``` Known element sizes for common types: ```k - rule #elemSize(typeInfoPrimitiveType(primTypeBool), _) => 1 - rule #elemSize(TYPEINFO, _) => #bitWidth(#intTypeOf(TYPEINFO)) /Int 8 + rule #elemSize(typeInfoPrimitiveType(primTypeBool)) => 1 + rule #elemSize(TYPEINFO) => #bitWidth(#intTypeOf(TYPEINFO)) /Int 8 requires #isIntType(TYPEINFO) - rule #elemSize(typeInfoArrayType(ELEM_TY, someTyConst(tyConst(LEN, _))), TYPEMAP) - => #elemSize({TYPEMAP[ELEM_TY]}:>TypeInfo, TYPEMAP) *Int readTyConstInt(LEN, TYPEMAP) - requires ELEM_TY in_keys(TYPEMAP) + rule #elemSize(typeInfoArrayType(ELEM_TY, someTyConst(tyConst(LEN, _)))) + => #elemSize(lookupTy(ELEM_TY)) *Int readTyConstInt(LEN) // thin and fat pointers - rule #elemSize(typeInfoRefType(TY), TYPEMAP) => #elemSize(typeInfoPrimitiveType(primTypeUint(uintTyUsize)), .Map) - requires dynamicSize(1) ==K #metadata(TY, TYPEMAP) - rule #elemSize(typeInfoRefType(_), _TYPEMAP) => 2 *Int #elemSize(typeInfoPrimitiveType(primTypeUint(uintTyUsize)), .Map) + rule #elemSize(typeInfoRefType(TY)) => #elemSize(typeInfoPrimitiveType(primTypeUint(uintTyUsize))) + requires dynamicSize(1) ==K #metadata(TY) + rule #elemSize(typeInfoRefType(_)) => 2 *Int #elemSize(typeInfoPrimitiveType(primTypeUint(uintTyUsize))) [owise] - rule #elemSize(typeInfoPtrType(TY), TYPEMAP) => #elemSize(typeInfoPrimitiveType(primTypeUint(uintTyUsize)), .Map) - requires dynamicSize(1) ==K #metadata(TY, TYPEMAP) - rule #elemSize(typeInfoPtrType(_), _TYPEMAP) => 2 *Int #elemSize(typeInfoPrimitiveType(primTypeUint(uintTyUsize)), .Map) + rule #elemSize(typeInfoPtrType(TY)) => #elemSize(typeInfoPrimitiveType(primTypeUint(uintTyUsize))) + requires dynamicSize(1) ==K #metadata(TY) + rule #elemSize(typeInfoPtrType(_)) => 2 *Int #elemSize(typeInfoPrimitiveType(primTypeUint(uintTyUsize))) [owise] - rule #elemSize(typeInfoVoidType, _) => 0 + rule #elemSize(typeInfoVoidType) => 0 // FIXME can only use size from layout here. Requires adding layout first. // Enum, Struct, Tuple, - rule 0 <=Int #elemSize(_, _) => true [simplification, preserves-definedness] + rule 0 <=Int #elemSize(_) => true [simplification, preserves-definedness] ``` @@ -138,7 +133,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , discriminants: Discriminants , fieldTypess: Tyss , layout: MaybeLayoutShape // -> layoutFields layoutVariants layoutSize - , types: Map ) | deMatchLayoutFields( @@ -148,7 +142,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , layoutFields: FieldsShape // -> layoutFieldOffsets , layoutVariants: VariantsShape , layoutSize: MachineSize - , types: Map ) | deMatchLayoutVariants( @@ -158,7 +151,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , layoutFieldOffsets: MachineSizes , layoutVariants: VariantsShape // -> variantIndex | variantTag variantTagEncoding variantTagField variantLayouts , layoutSize: MachineSize - , types: Map ) | deSingle( @@ -168,7 +160,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , layoutFieldOffsets: MachineSizes , variantIndex: Int , layoutSize: MachineSize - , types: Map ) | deMultipleMatchTagType( @@ -181,7 +172,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagField: Int , variantLayouts: LayoutShapes , layoutSize: MachineSize - , types: Map ) | deMultipleMatchTagType( @@ -194,7 +184,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagField: Int , variantLayouts: LayoutShapes , layoutSize: MachineSize - , types: Map ) | deMultipleMatchTagOffset( @@ -207,7 +196,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagField: Int // -> . , variantLayouts: LayoutShapes , layoutSize: MachineSize - , types: Map ) | deMultipleDecodeTag( @@ -219,7 +207,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagEncoding: TagEncoding // -> . , variantLayouts: LayoutShapes , layoutSize: MachineSize - , types: Map ) | deMultipleDecodeTagDirect( @@ -230,7 +217,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , tagType: TypeInfo , variantLayouts: LayoutShapes , layoutSize: MachineSize - , types: Map ) | deMultipleMatchTag( @@ -240,7 +226,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , tagValue: Evaluation , variantLayouts: LayoutShapes , layoutSize: MachineSize - , types: Map ) | deMultipleFindVariantIdx( @@ -250,7 +235,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , tag: Int , variantLayouts: LayoutShapes , layoutSize: MachineSize - , types: Map ) | deMultipleMatchFindVariantIdxResult( @@ -259,7 +243,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , findVariantIdxResult: FindVariantIdxResult , variantLayouts: LayoutShapes , layoutSize: MachineSize - , types: Map ) | deMultipleSelectVariant( @@ -268,7 +251,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantIndex: Int , variantLayouts: LayoutShapes , layoutSize: MachineSize - , types: Map ) | deMultipleMatchSelectVariantResult( @@ -277,7 +259,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantIndex: Int , selectVariantLayoutResult: SelectVariantLayoutResult , layoutSize: MachineSize - , types: Map ) | deMultiple( @@ -286,7 +267,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantIndex: Int , variantLayout: LayoutShape , layoutSize: MachineSize - , types: Map ) rule #decodeValue( @@ -298,7 +278,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , fields: FIELD_TYPESS , layout: LAYOUT ) - , TYPES ) => #evalDecodeEnum( deMatchLayout(... @@ -306,7 +285,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , discriminants: DISCRIMINANTS , fieldTypess: FIELD_TYPESS , layout: LAYOUT - , types: TYPES ) ) @@ -326,7 +304,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , size: LAYOUT_SIZE ) ) - , types: TYPES ) ) => #evalDecodeEnum( @@ -337,7 +314,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , layoutFields: LAYOUT_FIELDS , layoutVariants: LAYOUT_VARIANTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -349,7 +325,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , layoutFields: fieldsShapeArbitrary(mk(... offsets: LAYOUT_FIELD_OFFSETS)) , layoutVariants: LAYOUT_VARIANTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -360,7 +335,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , layoutFieldOffsets: LAYOUT_FIELD_OFFSETS , layoutVariants: LAYOUT_VARIANTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -372,7 +346,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , layoutFieldOffsets: LAYOUT_FIELD_OFFSETS , layoutVariants: variantsShapeSingle(mk(... index: variantIdx(VARIANT_INDEX))) , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -383,7 +356,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , layoutFieldOffsets: LAYOUT_FIELD_OFFSETS , variantIndex: VARIANT_INDEX , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -402,7 +374,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr ) ) , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -416,7 +387,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagField: VARIANT_TAG_FIELD , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -431,7 +401,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagField: VARIANT_TAG_FIELD , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -445,7 +414,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagField: VARIANT_TAG_FIELD , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -460,7 +428,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagField: 0 , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -473,7 +440,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagEncoding: VARIANT_TAG_ENCODING , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -487,7 +453,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantTagEncoding: tagEncodingDirect , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -499,7 +464,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , tagType: TAG_TYPE , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -512,7 +476,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , tagType: TAG_TYPE , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -524,19 +487,17 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr substrBytes( BYTES , TAG_OFFSET_NUM_BITS /Int 8 - , (TAG_OFFSET_NUM_BITS /Int 8) +Int #elemSize(TAG_TYPE, .Map) + , (TAG_OFFSET_NUM_BITS /Int 8) +Int #elemSize(TAG_TYPE) ) , TAG_TYPE - , .Map ) , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) requires TAG_OFFSET_NUM_BITS >=Int 0 - andBool #elemSize(TAG_TYPE, .Map) >Int 0 - andBool lengthBytes(BYTES) >=Int (TAG_OFFSET_NUM_BITS /Int 8) +Int #elemSize(TAG_TYPE, .Map) + andBool #elemSize(TAG_TYPE) >Int 0 + andBool lengthBytes(BYTES) >=Int (TAG_OFFSET_NUM_BITS /Int 8) +Int #elemSize(TAG_TYPE) andBool #isIntType (TAG_TYPE) [preserves-definedness] @@ -548,7 +509,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , tagValue: Integer(TAG, _BIT_WIDTH, _SIGNED) , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -559,7 +519,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , tag: TAG , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -571,7 +530,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , tag: TAG , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -581,7 +539,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , findVariantIdxResult: #findVariantIdx(... tag: TAG, discriminants: DISCRIMINANTS) , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -592,7 +549,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , findVariantIdxResult: ok(VARIANT_INDEX) , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -602,7 +558,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantIndex: VARIANT_INDEX , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -613,7 +568,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantIndex: VARIANT_INDEX , variantLayouts: VARIANT_LAYOUTS , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -629,7 +583,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , index: VARIANT_INDEX ) , layoutSize: LAYOUT_SIZE - , types: TYPES ) ) @@ -640,7 +593,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantIndex: VARIANT_INDEX , selectVariantLayoutResult: ok(VARIANT_LAYOUT) , layoutSize: MACHINE_SIZE - , types: TYPES ) ) => #evalDecodeEnum( @@ -650,7 +602,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantIndex: VARIANT_INDEX , variantLayout: VARIANT_LAYOUT , layoutSize: MACHINE_SIZE - , types: TYPES ) ) @@ -661,7 +612,6 @@ where `DECODE_ENUM` is a data structure representing the step in the decoding pr , variantIndex: VARIANT_INDEX , variantLayout: _VARIANT_LAYOUT , layoutSize: _MACHINE_SIZE - , types: _TYPES ) ) => Aggregate(variantIdx(VARIANT_INDEX), .List) @@ -842,35 +792,33 @@ bytes for the declared array length, the function will get stuck rather than pro results. ```k - syntax Value ::= #decodeArrayAllocation ( Bytes, TypeInfo, Int , Map ) [function] + syntax Value ::= #decodeArrayAllocation ( Bytes, TypeInfo, Int ) [function] // bytes, element type info, array length, type map (for recursion) - rule #decodeArrayAllocation(BYTES, ELEMTYPEINFO, LEN, TYPEMAP) - => Range(#decodeArrayElements(BYTES, ELEMTYPEINFO, LEN, TYPEMAP, .List)) + rule #decodeArrayAllocation(BYTES, ELEMTYPEINFO, LEN) + => Range(#decodeArrayElements(BYTES, ELEMTYPEINFO, LEN, .List)) - syntax List ::= #decodeArrayElements ( Bytes, TypeInfo, Int, Map, List ) [function] + syntax List ::= #decodeArrayElements ( Bytes, TypeInfo, Int, List ) [function] // bytes, elem type info, remaining length, accumulated list - rule #decodeArrayElements(BYTES, _ELEMTYPEINFO, LEN, _TYPEMAP, ACC) + rule #decodeArrayElements(BYTES, _ELEMTYPEINFO, LEN, ACC) => ACC requires LEN <=Int 0 andBool lengthBytes(BYTES) ==Int 0 // exact match - no surplus bytes [preserves-definedness] - rule #decodeArrayElements(BYTES, ELEMTYPEINFO, LEN, TYPEMAP, ACC) + rule #decodeArrayElements(BYTES, ELEMTYPEINFO, LEN, ACC) => #decodeArrayElements( - substrBytes(BYTES, #elemSize(ELEMTYPEINFO, TYPEMAP), lengthBytes(BYTES)), + substrBytes(BYTES, #elemSize(ELEMTYPEINFO), lengthBytes(BYTES)), ELEMTYPEINFO, LEN -Int 1, - TYPEMAP, ACC ListItem(#decodeValue( - substrBytes(BYTES, 0, #elemSize(ELEMTYPEINFO, TYPEMAP)), - ELEMTYPEINFO, - TYPEMAP + substrBytes(BYTES, 0, #elemSize(ELEMTYPEINFO)), + ELEMTYPEINFO )) ) requires LEN >Int 0 - andBool lengthBytes(BYTES) >=Int #elemSize(ELEMTYPEINFO, TYPEMAP) // enough bytes remaining + andBool lengthBytes(BYTES) >=Int #elemSize(ELEMTYPEINFO) // enough bytes remaining [preserves-definedness] ``` @@ -881,19 +829,18 @@ The `#decodeSliceAllocation` function computes the array length by dividing the by the element size, then uses the same element-by-element decoding approach as arrays. ```k - syntax Value ::= #decodeSliceAllocation ( Bytes, TypeInfo , Map ) [function] + syntax Value ::= #decodeSliceAllocation ( Bytes, TypeInfo ) [function] // ------------------------------------------------------------------- - rule #decodeSliceAllocation(BYTES, ELEMTYPEINFO, TYPEMAP) + rule #decodeSliceAllocation(BYTES, ELEMTYPEINFO) => Range(#decodeArrayElements( BYTES, ELEMTYPEINFO, - lengthBytes(BYTES) /Int #elemSize(ELEMTYPEINFO, TYPEMAP), - TYPEMAP, + lengthBytes(BYTES) /Int #elemSize(ELEMTYPEINFO), .List ) ) - requires lengthBytes(BYTES) %Int #elemSize(ELEMTYPEINFO, TYPEMAP) ==Int 0 // element size divides cleanly - andBool 0 Value + syntax Map ::= #decodeAlloc ( AllocId , Ty , Allocation ) [function] // returns AllocId |-> Value // ---------------------------------------------------------- - rule #decodeAlloc(ID, TY, allocation(BYTES, provenanceMap(.ProvenanceMapEntries), _ALIGN, _MUT), TYPEMAP) - => ID |-> #decodeValue(BYTES, {TYPEMAP[TY]}:>TypeInfo, TYPEMAP) - requires TY in_keys(TYPEMAP) - andBool isTypeInfo(TYPEMAP[TY]) + rule #decodeAlloc(ID, TY, allocation(BYTES, provenanceMap(.ProvenanceMapEntries), _ALIGN, _MUT)) + => ID |-> #decodeValue(BYTES, lookupTy(TY)) ``` If there are entries in the provenance map, then the decoder must create references to other allocations. @@ -930,28 +875,22 @@ The reference metadata is either determined statically by type, or filled in fro rule #decodeAlloc( ID, TY, - allocation(BYTES, provenanceMap(provenanceMapEntry(0, REF_ID) ), _ALIGN, _MUT), - TYPEMAP + allocation(BYTES, provenanceMap(provenanceMapEntry(0, REF_ID) ), _ALIGN, _MUT) ) => ID |-> AllocRef(REF_ID, .ProjectionElems, dynamicSize(Bytes2Int(substrBytes(BYTES, 8, 16), LE, Unsigned))) - requires TY in_keys(TYPEMAP) - andBool isTypeInfo(TYPEMAP[TY]) - andBool isTy(pointeeTy({TYPEMAP[TY]}:>TypeInfo)) // ensures this is a reference type + requires isTy(pointeeTy(lookupTy(TY))) // ensures this is a reference type andBool lengthBytes(BYTES) ==Int 16 // sufficient data to decode dynamic size (assumes usize == u64) - andBool dynamicSize(1) ==K #metadata(pointeeTy({TYPEMAP[TY]}:>TypeInfo), TYPEMAP) // expect fat pointer + andBool dynamicSize(1) ==K #metadata(pointeeTy(lookupTy(TY))) // expect fat pointer [preserves-definedness] // valid type lookup ensured // Otherwise query type information for static size and insert it. rule #decodeAlloc( ID, TY, - allocation(BYTES, provenanceMap(provenanceMapEntry(0, REF_ID) ), _ALIGN, _MUT), - TYPEMAP + allocation(BYTES, provenanceMap(provenanceMapEntry(0, REF_ID) ), _ALIGN, _MUT) ) - => ID |-> AllocRef(REF_ID, .ProjectionElems, #metadata(pointeeTy({TYPEMAP[TY]}:>TypeInfo), TYPEMAP)) - requires TY in_keys(TYPEMAP) - andBool isTypeInfo(TYPEMAP[TY]) - andBool isTy(pointeeTy({TYPEMAP[TY]}:>TypeInfo)) // ensures this is a reference type + => ID |-> AllocRef(REF_ID, .ProjectionElems, #metadata(pointeeTy(lookupTy(TY)))) + requires isTy(pointeeTy(lookupTy(TY))) // ensures this is a reference type andBool lengthBytes(BYTES) ==Int 8 // single slim pointer (assumes usize == u64) [priority(60), preserves-definedness] // valid type lookup ensured ``` @@ -959,7 +898,7 @@ The reference metadata is either determined statically by type, or filled in fro Allocations with more than one provenance map entry or witn non-reference types remain undecoded. ```k - rule #decodeAlloc(ID, TY, allocation(BYTES, provenanceMap(ENTRIES), _ALIGN, _MUT), _TYPEMAP) + rule #decodeAlloc(ID, TY, allocation(BYTES, provenanceMap(ENTRIES), _ALIGN, _MUT)) => ID |-> UnableToDecode(BYTES, TY, ENTRIES) [owise] ``` @@ -967,9 +906,11 @@ Allocations with more than one provenance map entry or witn non-reference types The entire set of `GlobalAllocs` is decoded by iterating over the list. It is assumed that the given `Ty -> TypeInfo` map contains all types required. -```k - syntax Map ::= #decodeAllocs ( GlobalAllocs , Map ) [function, total, symbol("decodeAllocs")] // AllocId |-> Thing - | #decodeAllocs ( Map , GlobalAllocs , Map ) [function, total] // accumulating version +This code is disabled + +``` + syntax Map ::= #decodeAllocs ( GlobalAllocs ) [function, total, symbol("decodeAllocs")] // AllocId |-> Thing + | #decodeAllocs ( Map , GlobalAllocs ) [function, total] // accumulating version // ----------------------------------------------------------------------------------------------- rule #decodeAllocs(ALLOCS, TYPEMAP) => #decodeAllocs(.Map, ALLOCS, TYPEMAP) @@ -983,7 +924,7 @@ It is assumed that the given `Ty -> TypeInfo` map contains all types required. If the type of an alloc cannot be found, or for non-`Memory` allocs, the raw data is stored in a super-sort of `Value`. This ensures that the function is total (anyway lookups require constraining the sort). -```k +``` syntax AllocData ::= Value | AllocData ( Ty , GlobalAllocKind ) rule #decodeAllocs(ACCUM, globalAllocEntry(ID, TY, OTHER) ALLOCS, TYPEMAP) diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/types.md b/kmir/src/kmir/kdist/mir-semantics/rt/types.md index 546e02b35..0a7dd449f 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/types.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/types.md @@ -28,38 +28,32 @@ values, and pointers to them, can be converted from one type to the other. The `#typesCompatible` function determines this compatibility, and is by default `false`. ```k - syntax Bool ::= #typesCompatible ( TypeInfo , TypeInfo , Map ) [function, total] + syntax Bool ::= #typesCompatible ( TypeInfo , TypeInfo ) [function, total] // by default, only identical types are compatible - rule #typesCompatible ( T , T , _ ) => true [priority(60)] - rule #typesCompatible ( _ , _ , _ ) => false [owise] + rule #typesCompatible ( T , T ) => true [priority(60)] + rule #typesCompatible ( _ , _ ) => false [owise] ``` Arrays and slices are compatible if their element type is (ignoring length) ```k - rule #typesCompatible ( typeInfoArrayType(TY1, _), typeInfoArrayType(TY2, _), TYPEMAP) => #typesCompatible({TYPEMAP[TY1]}:>TypeInfo, {TYPEMAP[TY2]}:>TypeInfo, TYPEMAP) - requires isTypeInfo(TYPEMAP[TY1]) - andBool isTypeInfo(TYPEMAP[TY2]) + rule #typesCompatible ( typeInfoArrayType(TY1, _), typeInfoArrayType(TY2, _)) => #typesCompatible(lookupTy(TY1), lookupTy(TY2)) ``` Pointers are compatible if their pointee types are ```k - rule #typesCompatible ( typeInfoPtrType(TY1) , typeInfoPtrType(TY2) , TYPEMAP) => true - requires isTypeInfo(TYPEMAP[TY1]) - andBool isTypeInfo(TYPEMAP[TY2]) - andBool #typesCompatible({TYPEMAP[TY1]}:>TypeInfo, {TYPEMAP[TY2]}:>TypeInfo, TYPEMAP) + rule #typesCompatible ( typeInfoPtrType(TY1) , typeInfoPtrType(TY2) ) => true + requires #typesCompatible(lookupTy(TY1), lookupTy(TY2)) [priority(59)] ``` Pointers to arrays/slices are compatible with pointers to the element type ```k - rule #typesCompatible ( typeInfoPtrType(TY1) , typeInfoPtrType(TY2) , TYPEMAP) => true - requires isTypeInfo(TYPEMAP[TY1]) - andBool #isArrayOf({TYPEMAP[TY1]}:>TypeInfo, TY2) + rule #typesCompatible ( typeInfoPtrType(TY1) , typeInfoPtrType(TY2) ) => true + requires #isArrayOf(lookupTy(TY1), TY2) - rule #typesCompatible ( typeInfoPtrType(TY1) , typeInfoPtrType(TY2) , TYPEMAP) => true - requires isTypeInfo(TYPEMAP[TY2]) - andBool #isArrayOf({TYPEMAP[TY2]}:>TypeInfo, TY1) + rule #typesCompatible ( typeInfoPtrType(TY1) , typeInfoPtrType(TY2) ) => true + requires #isArrayOf(lookupTy(TY2), TY1) syntax Bool ::= #isArrayOf ( TypeInfo , Ty ) [function, total] @@ -76,28 +70,25 @@ To make this function total, an optional `MaybeTy` is used. syntax MaybeTy ::= Ty | "TyUnknown" - syntax MaybeTy ::= getTyOf( MaybeTy , ProjectionElems , Map ) [function, total] + syntax MaybeTy ::= getTyOf( MaybeTy , ProjectionElems ) [function, total] // ----------------------------------------------------------- - rule getTyOf(TyUnknown, _ , _ ) => TyUnknown - rule getTyOf(TY, .ProjectionElems , _ ) => TY + rule getTyOf(TyUnknown, _ ) => TyUnknown + rule getTyOf(TY, .ProjectionElems ) => TY - rule getTyOf(TY, projectionElemDeref PROJS, TYPEMAP ) => getTyOf(pointeeTy({TYPEMAP[TY]}:>TypeInfo), PROJS, TYPEMAP) - requires TY in_keys(TYPEMAP) andBool isTypeInfo(TYPEMAP[TY]) - rule getTyOf( _, projectionElemField(_, TY) PROJS, TYPEMAP ) => getTyOf(TY, PROJS, TYPEMAP) // could also look it up + rule getTyOf(TY, projectionElemDeref PROJS ) => getTyOf(pointeeTy(lookupTy(TY)), PROJS) + rule getTyOf( _, projectionElemField(_, TY) PROJS ) => getTyOf(TY, PROJS) // could also look it up - rule getTyOf(TY, projectionElemIndex(_) PROJS, TYPEMAP ) => getTyOf(elemTy({TYPEMAP[TY]}:>TypeInfo), PROJS, TYPEMAP) - requires TY in_keys(TYPEMAP) andBool isTypeInfo(TYPEMAP[TY]) - rule getTyOf(TY, projectionElemConstantIndex(_, _, _) PROJS, TYPEMAP ) => getTyOf(elemTy({TYPEMAP[TY]}:>TypeInfo), PROJS, TYPEMAP) - requires TY in_keys(TYPEMAP) andBool isTypeInfo(TYPEMAP[TY]) - rule getTyOf(TY, projectionElemSubslice(_, _, _) PROJS, TYPEMAP ) => getTyOf(TY, PROJS, TYPEMAP) // TODO assumes TY is already a slice type + rule getTyOf(TY, projectionElemIndex(_) PROJS) => getTyOf(elemTy(lookupTy(TY)), PROJS) + rule getTyOf(TY, projectionElemConstantIndex(_, _, _) PROJS) => getTyOf(elemTy(lookupTy(TY)), PROJS) + rule getTyOf(TY, projectionElemSubslice(_, _, _) PROJS) => getTyOf(TY, PROJS) // TODO assumes TY is already a slice type - rule getTyOf(TY, projectionElemDowncast(_) PROJS, TYPEMAP ) => getTyOf(TY, PROJS, TYPEMAP) // unchanged type, just setting variantIdx + rule getTyOf(TY, projectionElemDowncast(_) PROJS) => getTyOf(TY, PROJS) // unchanged type, just setting variantIdx - rule getTyOf( _, projectionElemOpaqueCast(TY) PROJS, TYPEMAP ) => getTyOf(TY, PROJS, TYPEMAP) + rule getTyOf( _, projectionElemOpaqueCast(TY) PROJS) => getTyOf(TY, PROJS) - rule getTyOf( _, projectionElemSubtype(TY) PROJS, TYPEMAP ) => getTyOf(TY, PROJS, TYPEMAP) + rule getTyOf( _, projectionElemSubtype(TY) PROJS) => getTyOf(TY, PROJS) // ----------------------------------------------------------- - rule getTyOf(_, _, _) => TyUnknown [owise] + rule getTyOf(_, _) => TyUnknown [owise] syntax MaybeTy ::= pointeeTy ( TypeInfo ) [function, total] @@ -122,34 +113,33 @@ A [similar function exists in `rustc`](https://doc.rust-lang.org/nightly/nightly Slices, `str`s and dynamic types require it, and any `Ty` that `is_sized` does not. ```k - syntax Metadata ::= #metadata ( Ty , ProjectionElems , Map ) [function, total] - | #metadata ( MaybeTy , Map ) [function, total] - | #metadataAux ( TypeInfo , Map ) [function, total] + syntax Metadata ::= #metadata ( Ty , ProjectionElems ) [function, total] + | #metadata ( MaybeTy ) [function, total] + | #metadataAux ( TypeInfo ) [function, total] // ------------------------------------------------------------ - rule #metadata(TY, PROJS, TYPEMAP) => #metadata(getTyOf(TY, PROJS, TYPEMAP), TYPEMAP) + rule #metadata(TY, PROJS) => #metadata(getTyOf(TY, PROJS)) - rule #metadata(TY, TYPEMAP) => #metadataAux({TYPEMAP[TY]}:>TypeInfo, TYPEMAP) - requires TY in_keys(TYPEMAP) andBool isTypeInfo(TYPEMAP[TY]) [preserves-definedness] // valid map key and sort coercion - rule #metadata( _, _) => noMetadata [owise, preserves-definedness] // if the type is not known, assume no metadata is required + rule #metadata(TyUnknown) => noMetadata + rule #metadata(TY) => #metadataAux(lookupTy(TY)) - rule #metadataAux(typeInfoArrayType(_, noTyConst ), _ ) => dynamicSize(1) - rule #metadataAux(typeInfoArrayType(_, someTyConst(tyConst(CONST, _))), TYPEMAP) => staticSize(readTyConstInt(CONST, TYPEMAP)) - rule #metadataAux( _OTHER , _ ) => noMetadata [owise] + rule #metadataAux(typeInfoArrayType(_, noTyConst )) => dynamicSize(1) + rule #metadataAux(typeInfoArrayType(_, someTyConst(tyConst(CONST, _)))) => staticSize(readTyConstInt(CONST)) + rule #metadataAux( _OTHER ) => noMetadata [owise] ``` ```k // reading Int-valued TyConsts from allocated bytes - syntax Int ::= readTyConstInt ( TyConstKind , Map ) [function] + syntax Int ::= readTyConstInt ( TyConstKind ) [function] // ----------------------------------------------------------- - rule readTyConstInt( tyConstKindValue(TY, allocation(BYTES, _, _, _)), TYPEMAP) => Bytes2Int(BYTES, LE, Unsigned) - requires isUintTy(#numTypeOf({TYPEMAP[TY]}:>TypeInfo)) - andBool lengthBytes(BYTES) ==Int #bitWidth(#numTypeOf({TYPEMAP[TY]}:>TypeInfo)) /Int 8 + rule readTyConstInt( tyConstKindValue(TY, allocation(BYTES, _, _, _))) => Bytes2Int(BYTES, LE, Unsigned) + requires isUintTy(#numTypeOf(lookupTy(TY))) + andBool lengthBytes(BYTES) ==Int #bitWidth(#numTypeOf(lookupTy(TY))) /Int 8 [preserves-definedness] - rule readTyConstInt( tyConstKindValue(TY, allocation(BYTES, _, _, _)), TYPEMAP) => Bytes2Int(BYTES, LE, Signed ) - requires isIntTy(#numTypeOf({TYPEMAP[TY]}:>TypeInfo)) - andBool lengthBytes(BYTES) ==Int #bitWidth(#numTypeOf({TYPEMAP[TY]}:>TypeInfo)) /Int 8 + rule readTyConstInt( tyConstKindValue(TY, allocation(BYTES, _, _, _))) => Bytes2Int(BYTES, LE, Signed ) + requires isIntTy(#numTypeOf(lookupTy(TY))) + andBool lengthBytes(BYTES) ==Int #bitWidth(#numTypeOf(lookupTy(TY))) /Int 8 [preserves-definedness] ``` diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/value.md b/kmir/src/kmir/kdist/mir-semantics/rt/value.md index c589e976b..ebccd1303 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/value.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/value.md @@ -5,10 +5,14 @@ This is the base module for all data in KMIR at runtime. It defines how values a ```k requires "../ty.md" requires "../body.md" +requires "../lib.md" +requires "../mono.md" module RT-VALUE-SYNTAX imports TYPES imports BODY + imports LIB + imports MONO ``` ## Values in MIR @@ -125,6 +129,35 @@ The basic operations of reading and writing those values can use K's "heating" a ``` +# Static data + +These functions are global static data accessed from many places, and will be extended for the particular program. + +**TODO find a better home for these definitions.** + +```k + // // function store, Ty -> MonoItemFn + syntax MonoItemKind ::= lookupFunction ( Ty ) [function, total] + // ------------------------------------------------------------ + rule lookupFunction(ty(TY)) => monoItemFn(symbol("** UNKNOWN FUNCTION **"), defId(TY), noBody) [owise] // HACK + // cannot be total without a default "error" element. `Ty` is key for both functions and data. + + // // static allocations: AllocId -> AllocData (Value or error) + syntax Value ::= lookupAlloc ( AllocId ) [function, total] + // ----------------------------------------------------------- + rule lookupAlloc(_ID) => Moved [owise] // HACK + + // // static information about the base type interning in the MIR: Ty -> TypeInfo + syntax TypeInfo ::= lookupTy ( Ty ) [function, total] + // ----------------------------------------------------- + rule lookupTy(_TY) => typeInfoVoidType [owise] // HACK + + // // static information about ADTs: adtDef -> Ty + syntax Ty ::= lookupAdtTy ( AdtDef ) [function, total] + // --------------------------------------------------- + rule lookupAdtTy(adtDef(ID)) => ty( 0 -Int ID ) [owise] // HACK +``` + ```k endmodule ``` From 2f19a1ffe0b55e5cce689c8dde4d148dfcb0c0f3 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 1 Oct 2025 08:28:47 +1000 Subject: [PATCH 02/47] add a notes file describing the approach (in docs, should remove or extend later) --- docs/notes-compile-to-k.md | 64 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 docs/notes-compile-to-k.md diff --git a/docs/notes-compile-to-k.md b/docs/notes-compile-to-k.md new file mode 100644 index 000000000..69541d829 --- /dev/null +++ b/docs/notes-compile-to-k.md @@ -0,0 +1,64 @@ +Compiling a Rust program via SMIR JSON to a K module +============================ + +To avoid fattening the configuration beyond the size manageable for the symbolic backend, +static elements of the configuration (function table, types table, allocs table, adt table) +are translated to K functions in a dedicated module. +This module is then imported into the KMIR semantics to extend the function equations provided in the semantics. + +Note: no need to _extend_, instead we can just provide that module for import. +Requires standard name and location, complicates debugging as we don't know which program we were dealing with. + +# Adapting the semantics + +* Declare functions to look up static data. + - Functions declared total, return dummy values in `[owise]` rules for now (HACK). + - Functions are currently declared in `value.md` module, could have their own module. + - TODO inconsistent naming +* All uses of static data cells in the semantics replaced by function calls + +# Generating a module with the declared functions for a particular program + +* Python code `SMIR -> K Module (as Text)` +* imports `VALUE-SYNTAX` (`value.md`) to bring function declaration into scope +* imports `KMIR` to have semantics in scope + +* Four groups of equations + 1. `lookupFunction : Ty -> MonoItemKind` + - depends on `MONO` (`mono.md`), already present via `RT-VALUE-SYNTAX` + - contains equations `lookupFunction(ty(N)) => Item` + - item with symbol_name from `functions[N]` + - add negative `N` for all items not present in `functions` + - most Python code exists in `kmir.py::_make_function_map` + but needs to be copied and modified to make function equations instead of a K `Map` + 2. `lookupAlloc : AllocId -> Value` + - depends on `RT-DECODING` (`decoding.md`) + - contains equations `lookupAlloc(ID) => decodeAlloc(ID, TY, ALLOC)[ID]` + - TODO remove the `Map` return + - using data from `allocs` (each `AllocInfo(ID, TY, ALLOC)`) + - we should probably decode in python later? + 3. `lookupTy : Ty -> TypeInfo` + - depends on `TYPES` (`ty.md`), already present via `RT-VALUE-SYNTAX` + - contains equations `lookupTy(T) => typeInfo` + - using data from `types` (each `[T, TypeInfo]`) + - most python code exists in `kmir.py::_make_type_and_adt_maps` + 4. `lookupAdtTy : AdtDef -> Ty` + - depends on `TYPES` (`ty.md`), already present + - most python code exists in `kmir.py::_make_type_and_adt_maps` + +# Compiling the module together with the semantics + +The generated module becomes the main module to run `kompile` calls on +- three compilations: llvm, llvm-library, haskell + +The compiled artefacts should be what the `KMIR` class uses (`definition_dir`). + +That means, the module generation and compilation happens when creating the `KMIR` object. +Module and compilation results should be cached (can be omitted in a prototype, recompiling every time using temp files). + +# Changes to running and proving + +To run a program/function or prove a property, we still generate a call configuration +but the configuration does not have any static fields any more. +The configuration is executed with the compiled module. + From 01b2a0489e19bd2a3627de3ae484db1a3d19a831 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 1 Oct 2025 08:34:05 +1000 Subject: [PATCH 03/47] CHERRY-PICK-ME Adjust Makefile to avoid nix-formatting files that aren't checked in --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 9e255e5d5..f515c26c4 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@ PARALLEL := 4 TOP_DIR := $(shell pwd) -NIX_SRCS := $(shell bash -O globstar -c 'ls **/*.nix') +NIX_SRCS := $(shell git ls-files | grep -e '.*\.nix$$') default: check build From 902361ff49ea2bd6e54c3dd4a4f781abfcedd768 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 1 Oct 2025 14:16:55 +1000 Subject: [PATCH 04/47] WIP generate module (plugged into gen-spec for manual testing --- kmir/src/kmir/__main__.py | 15 +++++++++- kmir/src/kmir/kmir.py | 62 ++++++++++++++++++++++++++++++++++++++- kmir/src/kmir/smir.py | 4 +++ 3 files changed, 79 insertions(+), 2 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 6cbf23a92..f51c6b97d 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -61,6 +61,17 @@ def _kmir_run(opts: RunOpts) -> None: print(kmir.kore_to_pretty(result)) +def _kmir_gen_mod(opts: GenSpecOpts) -> None: + kmir = KMIR(HASKELL_DEF_DIR, LLVM_LIB_DIR) + + result = kmir.make_program_module(SMIRInfo.from_file(opts.input_file)) + + if opts.output_file is not None: + opts.output_file.write_text(kmir.pretty_print(result)) + else: + print(kmir.pretty_print(result)) + + def _kmir_prove_rs(opts: ProveRSOpts) -> None: kmir = KMIR(HASKELL_DEF_DIR, LLVM_LIB_DIR, bug_report=opts.bug_report) proof = kmir.prove_rs(opts) @@ -203,7 +214,7 @@ def kmir(args: Sequence[str]) -> None: case RunOpts(): _kmir_run(opts) case GenSpecOpts(): - _kmir_gen_spec(opts) + _kmir_gen_mod(opts) case InfoOpts(): _kmir_info(opts) case ProveRawOpts(): @@ -376,6 +387,8 @@ def _parse_args(ns: Namespace) -> KMirOpts: ) case 'gen-spec': return GenSpecOpts(input_file=Path(ns.input_file), output_file=ns.output_file, start_symbol=ns.start_symbol) + case 'gen-mod': + return GenSpecOpts(input_file=Path(ns.input_file), output_file=ns.output_file, start_symbol=ns.start_symbol) case 'info': return InfoOpts(smir_file=Path(ns.smir_file), types=ns.types) case 'prove': diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 6ef8252ea..57c7654ce 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -7,7 +7,8 @@ from pyk.cli.utils import bug_report_arg from pyk.cterm import CTerm, cterm_symbolic from pyk.kast.inner import KApply, KSequence, KSort, KToken, KVariable, Subst -from pyk.kast.manip import abstract_term_safely, free_vars, split_config_from +from pyk.kast.manip import abstract_term_safely, build_rule, free_vars, split_config_from +from pyk.kast.outer import KFlatModule, KImport from pyk.kast.prelude.collections import list_empty, list_of, map_of from pyk.kast.prelude.utils import token from pyk.kcfg import KCFG @@ -96,6 +97,65 @@ def functions(self, smir_info: SMIRInfo) -> dict[int, KInner]: return functions + def make_program_module(self, smir_info: SMIRInfo) -> KFlatModule: + equations = [] + for fty, body in self.functions(smir_info).items(): + rule, _ = build_rule( + f'lookupFunction-{fty}', + KApply('lookupFunction', (KApply('ty', (token(fty),)),)), + body, + ) + equations.append(rule) + + parser = Parser(self.definition) + types: set[KInner] = set() + for type in smir_info._smir['types']: + parse_result = parser.parse_mir_json(type, 'TypeMapping') + assert parse_result is not None + type_mapping, _ = parse_result + assert isinstance(type_mapping, KApply) and len(type_mapping.args) == 2 + ty, tyinfo = type_mapping.args + if ty in types: + raise ValueError(f'Key collision in type map: {ty}') + types.add(ty) + assert isinstance(ty, KApply) and len(ty.args) == 1 and isinstance(ty.args[0], KToken) + rule, _ = build_rule( + f'lookupTy-{ty.args[0].token}', + KApply('lookupTy', (ty,)), + tyinfo, + ) + equations.append(rule) + if isinstance(tyinfo, KApply) and tyinfo.label.name in ['TypeInfo::EnumType', 'TypeInfo::StructType']: + adt_def = tyinfo.args[1] + assert isinstance(adt_def, KApply) and len(adt_def.args) == 1 and isinstance(adt_def.args[0], KToken) + rule, _ = build_rule( + f'lookupAdtTy-{adt_def.args[0].token}', + KApply('lookupAdtTy', (adt_def,)), + ty, + ) + equations.append(rule) + + for alloc in smir_info._smir['allocs']: + parse_result = parser.parse_mir_json(alloc, 'GlobalAlloc') + assert parse_result is not None + if 'Memory' in alloc['global_alloc']: + alloc_info, _ = parse_result + assert isinstance(alloc_info, KApply) and len(alloc_info.args) == 3 + id, aty, alloc_data = alloc_info.args + assert isinstance(alloc_data, KApply) and len(alloc_data.args) == 1 + the_alloc = alloc_data.args[0] + assert isinstance(id, KApply) and len(id.args) == 1 and isinstance(id.args[0], KToken) + rule, _ = build_rule( + f'lookupAlloc-{id.args[0].token}', + KApply('lookupAlloc', (id,)), + KApply('decodeAlloc', (id, aty, the_alloc)), + ) + equations.append(rule) + + name = smir_info.name.replace('_', '-') + + return KFlatModule(f'KMIR-PROGRAM-{name}', equations, (KImport('KMIR'),)) + def _make_function_map(self, smir_info: SMIRInfo) -> KInner: parsed_terms: dict[KInner, KInner] = {} for ty, body in self.functions(smir_info).items(): diff --git a/kmir/src/kmir/smir.py b/kmir/src/kmir/smir.py index 906a6d149..66be7d8c3 100644 --- a/kmir/src/kmir/smir.py +++ b/kmir/src/kmir/smir.py @@ -35,6 +35,10 @@ def from_file(smir_json_file: Path) -> SMIRInfo: def dump(self, smir_json_file: Path) -> None: smir_json_file.write_text(json.dumps(self._smir)) + @cached_property + def name(self) -> str: + return self._smir['name'] + @cached_property def allocs(self) -> dict[AllocId, AllocInfo]: return { From 0a7c31d1d8dbfa626a2d76d7b124919ea95fffc5 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 1 Oct 2025 14:36:01 +1000 Subject: [PATCH 05/47] Change type for lookupAlloc and decodeAlloc to Evaluation --- kmir/src/kmir/kdist/mir-semantics/rt/data.md | 10 +++++----- .../kmir/kdist/mir-semantics/rt/decoding.md | 18 +++++++++--------- kmir/src/kmir/kdist/mir-semantics/rt/value.md | 6 ++++-- 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/data.md b/kmir/src/kmir/kdist/mir-semantics/rt/data.md index 66ae0cf21..4b76fbb04 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/data.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/data.md @@ -694,14 +694,14 @@ even though this could be supported. ) => #traverseProjection( toAlloc(ALLOC_ID), - lookupAlloc(ALLOC_ID), + {lookupAlloc(ALLOC_ID)}:>Value, ALLOC_PROJS, // alloc projections .Contexts // previous contexts obsolete ) ~> #derefTruncate(META, PROJS) // then truncate, then continue with remaining projections ... - requires Moved =/=K lookupAlloc(ALLOC_ID) + requires isValue(lookupAlloc(ALLOC_ID)) ``` ## Evaluation of R-Values (`Rvalue` sort) @@ -1298,7 +1298,7 @@ into the `` heap where all allocated constants have been decoded at prog => AllocRef(ALLOC_ID, .ProjectionElems, #metadata(POINTEE_TY)) ... - requires lookupAlloc(ALLOC_ID) =/=K Moved + requires isValue(lookupAlloc(ALLOC_ID)) andBool lengthBytes(BYTES) ==Int 8 // no dynamic metadata rule #decodeConstant( @@ -1315,8 +1315,8 @@ into the `` heap where all allocated constants have been decoded at prog // assumes usize == u64 ... - requires lookupAlloc(ALLOC_ID) =/=K Moved - andBool lengthBytes(BYTES) ==Int 16 // fat pointer (assumes usize == u64) + requires isValue(lookupAlloc(ALLOC_ID)) + andBool lengthBytes(BYTES) ==Int 16 // fat pointer (assumes usize == u64) [preserves-definedness] // Byte length checked to be sufficient ``` diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/decoding.md b/kmir/src/kmir/kdist/mir-semantics/rt/decoding.md index acd80a7b3..faa40db4f 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/decoding.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/decoding.md @@ -857,10 +857,10 @@ One example of this is allocated error strings, whose length is stored in a fat The basic decoding function is very similar to `#decodeConstant` but returns its result as a singleton `Map` instead of a mere value. ```k - syntax Map ::= #decodeAlloc ( AllocId , Ty , Allocation ) [function] // returns AllocId |-> Value + syntax Evaluation ::= #decodeAlloc ( AllocId , Ty , Allocation ) [function] // ---------------------------------------------------------- - rule #decodeAlloc(ID, TY, allocation(BYTES, provenanceMap(.ProvenanceMapEntries), _ALIGN, _MUT)) - => ID |-> #decodeValue(BYTES, lookupTy(TY)) + rule #decodeAlloc(_ID, TY, allocation(BYTES, provenanceMap(.ProvenanceMapEntries), _ALIGN, _MUT)) + => #decodeValue(BYTES, lookupTy(TY)) ``` If there are entries in the provenance map, then the decoder must create references to other allocations. @@ -873,11 +873,11 @@ The reference metadata is either determined statically by type, or filled in fro ```k // if length(BYTES) ==Int 16 decode BYTES[9..16] as dynamic size. rule #decodeAlloc( - ID, + _ID, TY, allocation(BYTES, provenanceMap(provenanceMapEntry(0, REF_ID) ), _ALIGN, _MUT) ) - => ID |-> AllocRef(REF_ID, .ProjectionElems, dynamicSize(Bytes2Int(substrBytes(BYTES, 8, 16), LE, Unsigned))) + => AllocRef(REF_ID, .ProjectionElems, dynamicSize(Bytes2Int(substrBytes(BYTES, 8, 16), LE, Unsigned))) requires isTy(pointeeTy(lookupTy(TY))) // ensures this is a reference type andBool lengthBytes(BYTES) ==Int 16 // sufficient data to decode dynamic size (assumes usize == u64) andBool dynamicSize(1) ==K #metadata(pointeeTy(lookupTy(TY))) // expect fat pointer @@ -885,11 +885,11 @@ The reference metadata is either determined statically by type, or filled in fro // Otherwise query type information for static size and insert it. rule #decodeAlloc( - ID, + _ID, TY, allocation(BYTES, provenanceMap(provenanceMapEntry(0, REF_ID) ), _ALIGN, _MUT) ) - => ID |-> AllocRef(REF_ID, .ProjectionElems, #metadata(pointeeTy(lookupTy(TY)))) + => AllocRef(REF_ID, .ProjectionElems, #metadata(pointeeTy(lookupTy(TY)))) requires isTy(pointeeTy(lookupTy(TY))) // ensures this is a reference type andBool lengthBytes(BYTES) ==Int 8 // single slim pointer (assumes usize == u64) [priority(60), preserves-definedness] // valid type lookup ensured @@ -898,8 +898,8 @@ The reference metadata is either determined statically by type, or filled in fro Allocations with more than one provenance map entry or witn non-reference types remain undecoded. ```k - rule #decodeAlloc(ID, TY, allocation(BYTES, provenanceMap(ENTRIES), _ALIGN, _MUT)) - => ID |-> UnableToDecode(BYTES, TY, ENTRIES) + rule #decodeAlloc(_ID, TY, allocation(BYTES, provenanceMap(ENTRIES), _ALIGN, _MUT)) + => UnableToDecode(BYTES, TY, ENTRIES) [owise] ``` diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/value.md b/kmir/src/kmir/kdist/mir-semantics/rt/value.md index ebccd1303..3d890c167 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/value.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/value.md @@ -143,9 +143,11 @@ These functions are global static data accessed from many places, and will be e // cannot be total without a default "error" element. `Ty` is key for both functions and data. // // static allocations: AllocId -> AllocData (Value or error) - syntax Value ::= lookupAlloc ( AllocId ) [function, total] + syntax Evaluation ::= lookupAlloc ( AllocId ) [function, total] // ----------------------------------------------------------- - rule lookupAlloc(_ID) => Moved [owise] // HACK + rule lookupAlloc(ID) => InvalidAlloc(ID) [owise] + + syntax Evaluation ::= InvalidAlloc ( AllocId ) // // static information about the base type interning in the MIR: Ty -> TypeInfo syntax TypeInfo ::= lookupTy ( Ty ) [function, total] From bfde0a5c28dd515cb9f4b27183301abdbb1a7584 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 1 Oct 2025 14:55:19 +1000 Subject: [PATCH 06/47] suppress duplicate adtDef equations (polymorphic ADTs), adjust #decodeAlloc name --- kmir/src/kmir/kmir.py | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 57c7654ce..3a0a59545 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -8,7 +8,7 @@ from pyk.cterm import CTerm, cterm_symbolic from pyk.kast.inner import KApply, KSequence, KSort, KToken, KVariable, Subst from pyk.kast.manip import abstract_term_safely, build_rule, free_vars, split_config_from -from pyk.kast.outer import KFlatModule, KImport +from pyk.kast.outer import KDefinition, KFlatModule, KImport, KRequire from pyk.kast.prelude.collections import list_empty, list_of, map_of from pyk.kast.prelude.utils import token from pyk.kcfg import KCFG @@ -97,7 +97,7 @@ def functions(self, smir_info: SMIRInfo) -> dict[int, KInner]: return functions - def make_program_module(self, smir_info: SMIRInfo) -> KFlatModule: + def make_program_module(self, smir_info: SMIRInfo) -> KDefinition: equations = [] for fty, body in self.functions(smir_info).items(): rule, _ = build_rule( @@ -109,6 +109,7 @@ def make_program_module(self, smir_info: SMIRInfo) -> KFlatModule: parser = Parser(self.definition) types: set[KInner] = set() + adts: set[KInner] = set() for type in smir_info._smir['types']: parse_result = parser.parse_mir_json(type, 'TypeMapping') assert parse_result is not None @@ -127,13 +128,17 @@ def make_program_module(self, smir_info: SMIRInfo) -> KFlatModule: equations.append(rule) if isinstance(tyinfo, KApply) and tyinfo.label.name in ['TypeInfo::EnumType', 'TypeInfo::StructType']: adt_def = tyinfo.args[1] - assert isinstance(adt_def, KApply) and len(adt_def.args) == 1 and isinstance(adt_def.args[0], KToken) - rule, _ = build_rule( - f'lookupAdtTy-{adt_def.args[0].token}', - KApply('lookupAdtTy', (adt_def,)), - ty, - ) - equations.append(rule) + if not adt_def in adts: + adts.add(adt_def) + assert ( + isinstance(adt_def, KApply) and len(adt_def.args) == 1 and isinstance(adt_def.args[0], KToken) + ) + rule, _ = build_rule( + f'lookupAdtTy-{adt_def.args[0].token}', + KApply('lookupAdtTy', (adt_def,)), + ty, + ) + equations.append(rule) for alloc in smir_info._smir['allocs']: parse_result = parser.parse_mir_json(alloc, 'GlobalAlloc') @@ -148,13 +153,15 @@ def make_program_module(self, smir_info: SMIRInfo) -> KFlatModule: rule, _ = build_rule( f'lookupAlloc-{id.args[0].token}', KApply('lookupAlloc', (id,)), - KApply('decodeAlloc', (id, aty, the_alloc)), + KApply('#decodeAlloc', (id, aty, the_alloc)), ) equations.append(rule) name = smir_info.name.replace('_', '-') - return KFlatModule(f'KMIR-PROGRAM-{name}', equations, (KImport('KMIR'),)) + module = KFlatModule(f'KMIR-PROGRAM-{name}', equations, (KImport('KMIR'),)) + + return KDefinition(f'KMIR-PROGRAM-{name}', (module,), (KRequire('kmir.md'),)) def _make_function_map(self, smir_info: SMIRInfo) -> KInner: parsed_terms: dict[KInner, KInner] = {} From 992b34ad0caa8f4ebb4d7d9dbd9a90d4a3a43438 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 1 Oct 2025 17:48:21 +1000 Subject: [PATCH 07/47] remove @ chars from function names to make llvm's lld happy :exploding-head: --- kmir/src/kmir/kmir.py | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 3a0a59545..422f91f48 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -6,7 +6,7 @@ from pyk.cli.utils import bug_report_arg from pyk.cterm import CTerm, cterm_symbolic -from pyk.kast.inner import KApply, KSequence, KSort, KToken, KVariable, Subst +from pyk.kast.inner import KApply, KLabel, KSequence, KSort, KToken, KVariable, Subst from pyk.kast.manip import abstract_term_safely, build_rule, free_vars, split_config_from from pyk.kast.outer import KDefinition, KFlatModule, KImport, KRequire from pyk.kast.prelude.collections import list_empty, list_of, map_of @@ -99,11 +99,37 @@ def functions(self, smir_info: SMIRInfo) -> dict[int, KInner]: def make_program_module(self, smir_info: SMIRInfo) -> KDefinition: equations = [] - for fty, body in self.functions(smir_info).items(): + + # the LLVM backend does not like the `@` character in function names at all (ld.lld: undefined version) + def _mangle_name(kind: KInner) -> KInner: + # mono_item_kind: {MonoItemFn: { name: "8-@", id: ... , body: ...}} + match kind: + case KApply( + label=KLabel('MonoItemKind::MonoItemFn'), + args=( + KApply(label=KLabel('symbol(_)_LIB_Symbol_String'), args=(KToken(token=name, sort=s),)), + id, + body, + ), + ): + return KApply( + 'monoItemFn', + ( + KApply('symbol', (KToken(name.replace('@', '_AT_'), s),)), + id, + body, + ), + ) + case KApply(label=KLabel('IntrinsicFunction'), args=_): + return kind + case _: + raise Exception(f'Unexpected {kind}') + + for fty, kind in self.functions(smir_info).items(): rule, _ = build_rule( f'lookupFunction-{fty}', KApply('lookupFunction', (KApply('ty', (token(fty),)),)), - body, + _mangle_name(kind), ) equations.append(rule) From 918be67b5b0009f6efb8a7a823d6d56f3abd0d3d Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 1 Oct 2025 21:44:31 +1000 Subject: [PATCH 08/47] Draft code for proving with static data in a module --- kmir/src/kmir/__main__.py | 97 +++++++++++++++++++++++++++++++++++++-- kmir/src/kmir/build.py | 1 + 2 files changed, 94 insertions(+), 4 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index f51c6b97d..bb52a5451 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -14,7 +14,7 @@ from pyk.proof.show import APRProofShow from pyk.proof.tui import APRProofViewer -from .build import HASKELL_DEF_DIR, LLVM_DEF_DIR, LLVM_LIB_DIR +from .build import HASKELL_DEF_DIR, KMIR_SOURCE_DIR, LLVM_DEF_DIR, LLVM_LIB_DIR from .cargo import CargoProject from .kmir import KMIR, KMIRAPRNodePrinter from .linker import link @@ -80,6 +80,72 @@ def _kmir_prove_rs(opts: ProveRSOpts) -> None: sys.exit(1) +def _kmir_prove_x(opts: ProveRSOpts) -> None: + kmir = KMIR(HASKELL_DEF_DIR) + prog_module = kmir.make_program_module(SMIRInfo.from_file(opts.rs_file)) + + import tempfile + + with tempfile.NamedTemporaryFile(mode='w+t', delete=False) as prog_mod_file: + prog_mod_file.write(kmir.pretty_print(prog_module)) + + + # kompile the module, for Haskell and for LLVM-library + # code using KompileTarget from kmir.kdist.plugin + from pyk.ktool.kompile import LLVMKompileType, PykBackend, kompile + from kmir.kdist.plugin import KompileTarget, __TARGETS__, _default_args + llvm_args = { + 'main_file': prog_mod_file.name, + 'main_module': prog_module.main_module_name, + 'backend': PykBackend.LLVM, + 'llvm_kompile_type': LLVMKompileType.C, + 'md_selector': 'k & ! symbolic', + **_default_args(KMIR_SOURCE_DIR / 'mir-semantics') + } + llvm_out = kompile(output_dir='out/llvm', verbose=True, **llvm_args) + + hs_args = { + 'main_file': prog_mod_file.name, + 'main_module': prog_module.main_module_name, + 'backend': PykBackend.HASKELL, + 'md_selector': 'k & ! concrete', + **_default_args(KMIR_SOURCE_DIR / 'mir-semantics') + } + hs_out = kompile(output_dir='out/hs/', verbose=True, **hs_args) + + print(f'LLVM: {llvm_out}\nHS: {hs_out}\n') + + import os + if os.path.exists(prog_mod_file.name): + os.remove(prog_mod_file.name) + + # make a new KMIR with these paths + kmir = KMIR(hs_out, llvm_out, bug_report=opts.bug_report) + + # run a modified prove_rs (inlined here) with this + label = str(opts.rs_file.stem) + '.' + opts.start_symbol + if not opts.reload and opts.proof_dir is not None and APRProof.proof_data_exists(label, opts.proof_dir): + _LOGGER.info(f'Reading proof from disc: {opts.proof_dir}, {label}') + apr_proof = APRProof.read_proof_data(opts.proof_dir, label) + else: + _LOGGER.info(f'Constructing initial proof: {label}') + smir_info = SMIRInfo.from_file(opts.rs_file) + + apr_proof = kmir.apr_proof_from_smir( + label, smir_info, start_symbol=opts.start_symbol, proof_dir=opts.proof_dir + ) + # if apr_proof.proof_dir is not None and (apr_proof.proof_dir / apr_proof.id).is_dir(): + # smir_info.dump(apr_proof.proof_dir / apr_proof.id / 'smir.json') + if not apr_proof.passed: + with kmir.kcfg_explore(label) as kcfg_explore: + prover = APRProver(kcfg_explore, execute_depth=opts.max_depth) + prover.advance_proof(apr_proof, max_iterations=opts.max_iterations) + + print(str(apr_proof.summary)) + if not apr_proof.passed: + sys.exit(1) + + def _kmir_gen_spec(opts: GenSpecOpts) -> None: kmir = KMIR(HASKELL_DEF_DIR, LLVM_LIB_DIR) @@ -226,7 +292,10 @@ def kmir(args: Sequence[str]) -> None: case PruneOpts(): _kmir_prune(opts) case ProveRSOpts(): - _kmir_prove_rs(opts) + if ns.command == 'prove-x': + _kmir_prove_x(opts) + else: + _kmir_prove_rs(opts) case LinkOpts(): _kmir_link(opts) case _: @@ -364,6 +433,16 @@ def _arg_parser() -> ArgumentParser: '--start-symbol', type=str, metavar='SYMBOL', default='main', help='Symbol name to begin execution from' ) + prove_x_parser = command_parser.add_parser( + 'prove-x', + help='prove a smir file using a compiled module for static data', + parents=[kcli_args.logging_args, prove_args], + ) + prove_x_parser.add_argument('smir_file', type=Path, metavar='SMIR', help='SMIR JSON file to work with') + prove_x_parser.add_argument( + '--start-symbol', type=str, metavar='SYMBOL', default='main', help='Symbol name to begin execution from' + ) + link_parser = command_parser.add_parser( 'link', help='Link together 2 or more SMIR JSON files', parents=[kcli_args.logging_args] ) @@ -387,8 +466,6 @@ def _parse_args(ns: Namespace) -> KMirOpts: ) case 'gen-spec': return GenSpecOpts(input_file=Path(ns.input_file), output_file=ns.output_file, start_symbol=ns.start_symbol) - case 'gen-mod': - return GenSpecOpts(input_file=Path(ns.input_file), output_file=ns.output_file, start_symbol=ns.start_symbol) case 'info': return InfoOpts(smir_file=Path(ns.smir_file), types=ns.types) case 'prove': @@ -442,6 +519,18 @@ def _parse_args(ns: Namespace) -> KMirOpts: smir=ns.smir, start_symbol=ns.start_symbol, ) + case 'prove-x': + return ProveRSOpts( + rs_file=Path(ns.smir_file), + proof_dir=ns.proof_dir, + bug_report=ns.bug_report, + max_depth=ns.max_depth, + max_iterations=ns.max_iterations, + reload=ns.reload, + save_smir=False, + smir=True, + start_symbol=ns.start_symbol, + ) case 'link': return LinkOpts( smir_files=ns.smir_files, diff --git a/kmir/src/kmir/build.py b/kmir/src/kmir/build.py index 8cfccaa96..5556a7ee2 100644 --- a/kmir/src/kmir/build.py +++ b/kmir/src/kmir/build.py @@ -10,3 +10,4 @@ LLVM_DEF_DIR: Final = kdist.which('mir-semantics.llvm') LLVM_LIB_DIR: Final = kdist.which('mir-semantics.llvm-library') HASKELL_DEF_DIR: Final = kdist.which('mir-semantics.haskell') +KMIR_SOURCE_DIR: Final = kdist.which('mir-semantics.source') \ No newline at end of file From 048865efb9985ddb65ed22d7e370eee75ed7411d Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 1 Oct 2025 21:52:27 +1000 Subject: [PATCH 09/47] formatting etc --- kmir/src/kmir/__main__.py | 14 +++++++------- kmir/src/kmir/build.py | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index bb52a5451..0af88c463 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -89,18 +89,19 @@ def _kmir_prove_x(opts: ProveRSOpts) -> None: with tempfile.NamedTemporaryFile(mode='w+t', delete=False) as prog_mod_file: prog_mod_file.write(kmir.pretty_print(prog_module)) - # kompile the module, for Haskell and for LLVM-library # code using KompileTarget from kmir.kdist.plugin from pyk.ktool.kompile import LLVMKompileType, PykBackend, kompile - from kmir.kdist.plugin import KompileTarget, __TARGETS__, _default_args + + from kmir.kdist.plugin import _default_args + llvm_args = { 'main_file': prog_mod_file.name, 'main_module': prog_module.main_module_name, 'backend': PykBackend.LLVM, 'llvm_kompile_type': LLVMKompileType.C, 'md_selector': 'k & ! symbolic', - **_default_args(KMIR_SOURCE_DIR / 'mir-semantics') + **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), } llvm_out = kompile(output_dir='out/llvm', verbose=True, **llvm_args) @@ -109,13 +110,14 @@ def _kmir_prove_x(opts: ProveRSOpts) -> None: 'main_module': prog_module.main_module_name, 'backend': PykBackend.HASKELL, 'md_selector': 'k & ! concrete', - **_default_args(KMIR_SOURCE_DIR / 'mir-semantics') + **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), } hs_out = kompile(output_dir='out/hs/', verbose=True, **hs_args) print(f'LLVM: {llvm_out}\nHS: {hs_out}\n') import os + if os.path.exists(prog_mod_file.name): os.remove(prog_mod_file.name) @@ -131,9 +133,7 @@ def _kmir_prove_x(opts: ProveRSOpts) -> None: _LOGGER.info(f'Constructing initial proof: {label}') smir_info = SMIRInfo.from_file(opts.rs_file) - apr_proof = kmir.apr_proof_from_smir( - label, smir_info, start_symbol=opts.start_symbol, proof_dir=opts.proof_dir - ) + apr_proof = kmir.apr_proof_from_smir(label, smir_info, start_symbol=opts.start_symbol, proof_dir=opts.proof_dir) # if apr_proof.proof_dir is not None and (apr_proof.proof_dir / apr_proof.id).is_dir(): # smir_info.dump(apr_proof.proof_dir / apr_proof.id / 'smir.json') if not apr_proof.passed: diff --git a/kmir/src/kmir/build.py b/kmir/src/kmir/build.py index 5556a7ee2..4a3d629a1 100644 --- a/kmir/src/kmir/build.py +++ b/kmir/src/kmir/build.py @@ -10,4 +10,4 @@ LLVM_DEF_DIR: Final = kdist.which('mir-semantics.llvm') LLVM_LIB_DIR: Final = kdist.which('mir-semantics.llvm-library') HASKELL_DEF_DIR: Final = kdist.which('mir-semantics.haskell') -KMIR_SOURCE_DIR: Final = kdist.which('mir-semantics.source') \ No newline at end of file +KMIR_SOURCE_DIR: Final = kdist.which('mir-semantics.source') From e258ac7fd138f43e9b4ced3d6588bec1b7c5368a Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 2 Oct 2025 08:29:02 +1000 Subject: [PATCH 10/47] Reduce item table before generating the K module (prevents re-use, enables kompile to do the job) --- kmir/src/kmir/__main__.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 0af88c463..cdbb6fbe5 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -82,7 +82,14 @@ def _kmir_prove_rs(opts: ProveRSOpts) -> None: def _kmir_prove_x(opts: ProveRSOpts) -> None: kmir = KMIR(HASKELL_DEF_DIR) - prog_module = kmir.make_program_module(SMIRInfo.from_file(opts.rs_file)) + + # modules get too big for the compiler to handle them, reduce items here + # (prevents reuse of the generated definition, though) + all_smir = SMIRInfo.from_file(opts.rs_file) + reduced = all_smir.reduce_to(opts.start_symbol) + _LOGGER.info(f'Reduced items table size from {len(all_smir.items)} to {len(reduced.items)}.') + + prog_module = kmir.make_program_module(reduced) import tempfile From 0c960e596f10ebc8b39442fe88bebca9ec119c22 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 2 Oct 2025 08:29:37 +1000 Subject: [PATCH 11/47] Use info logging to report status and module file --- kmir/src/kmir/__main__.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index cdbb6fbe5..ac232f119 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -95,6 +95,7 @@ def _kmir_prove_x(opts: ProveRSOpts) -> None: with tempfile.NamedTemporaryFile(mode='w+t', delete=False) as prog_mod_file: prog_mod_file.write(kmir.pretty_print(prog_module)) + _LOGGER.info(f'Program module written to {prog_mod_file.name}') # kompile the module, for Haskell and for LLVM-library # code using KompileTarget from kmir.kdist.plugin @@ -121,7 +122,7 @@ def _kmir_prove_x(opts: ProveRSOpts) -> None: } hs_out = kompile(output_dir='out/hs/', verbose=True, **hs_args) - print(f'LLVM: {llvm_out}\nHS: {hs_out}\n') + _LOGGER.info(f'Kompile output: LLVM: {llvm_out},HS: {hs_out}') import os From 4bed164f993caf52e204199e301a05fd7eba9545 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 2 Oct 2025 18:47:44 +1000 Subject: [PATCH 12/47] CHERRY-PICK-ME escape \n, @, and " when printing bytes as ascii text --- kmir/src/kmir/parse/parser.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/kmir/src/kmir/parse/parser.py b/kmir/src/kmir/parse/parser.py index 209653a43..d248b02f9 100644 --- a/kmir/src/kmir/parse/parser.py +++ b/kmir/src/kmir/parse/parser.py @@ -445,15 +445,28 @@ def _parse_mir_bytes_json(self, json: JSON, prod: KProduction) -> ParseResult: for i in json: # null values are allowed and taken to mean \x00 assert isinstance(i, int) or i is None + import string + # Characters that need special escaping (using hex encoding) + ESCAPE_CHARS = {'\n': '\\x0a', '@': '\\x40', '"': '\\x34'} + # TODO: Handle uninitialized bytes instead of defaulting to 0 if all((chr(int(i)) if i is not None else chr(0)) in string.printable for i in json): - # if all elements are ascii printable, use simple characters - bytes = ''.join([chr(int(i)) for i in json]) + # if all elements are ascii printable, use characters with escaping + def format_printable_byte(byte_val): + if byte_val is None: + return '\\x00' + char = chr(byte_val) + if char in ESCAPE_CHARS: + return ESCAPE_CHARS[char] + else: + return char + bytes = ''.join([format_printable_byte(i) for i in json]) else: # otherwise convert to hexadecimal representation \xCA\xFE bytes = ''.join([f'\\x{i:02x}' if i is not None else '\\x00' for i in json]) + symbol = _get_label(prod) if symbol == 'MIRBytes::Bytes': return KToken('b"' + str(bytes) + '"', KSort('Bytes')), KSort('Bytes') From df4e06f2e5267739b68b114d9644d1d73fb61c80 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Mon, 13 Oct 2025 16:37:05 +1100 Subject: [PATCH 13/47] adjust alloc equation generation. Status: Not working as expected --- kmir/src/kmir/kmir.py | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 2f40a64ae..72bb05886 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -4,6 +4,7 @@ from contextlib import contextmanager from functools import cached_property from typing import TYPE_CHECKING +from xml.dom.minidom import TypeInfo from pyk.cli.utils import bug_report_arg from pyk.cterm import CTerm, cterm_symbolic @@ -133,21 +134,13 @@ def make_program_module(self, smir_info: SMIRInfo) -> KDefinition: equations.append(rule) for alloc in smir_info._smir['allocs']: - parse_result = parser.parse_mir_json(alloc, 'GlobalAlloc') - assert parse_result is not None - if 'Memory' in alloc['global_alloc']: - alloc_info, _ = parse_result - assert isinstance(alloc_info, KApply) and len(alloc_info.args) == 3 - id, aty, alloc_data = alloc_info.args - assert isinstance(alloc_data, KApply) and len(alloc_data.args) == 1 - the_alloc = alloc_data.args[0] - assert isinstance(id, KApply) and len(id.args) == 1 and isinstance(id.args[0], KToken) - rule, _ = build_rule( - f'lookupAlloc-{id.args[0].token}', - KApply('lookupAlloc', (id,)), - KApply('#decodeAlloc', (id, aty, the_alloc)), - ) - equations.append(rule) + alloc_id, value = self._decode_alloc(smir_info=smir_info, raw_alloc=alloc) + rule, _ = build_rule( + f'lookupAlloc-{alloc_id.args[0].token}', + alloc_id, + value, + ) + equations.append(rule) name = smir_info.name.replace('_', '-') From d01cf2ca80ce5908af10912edb7536739246f5db Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Mon, 13 Oct 2025 16:58:37 +1100 Subject: [PATCH 14/47] WIP implementing run-x --- kmir/src/kmir/__main__.py | 12 ++++++++++ kmir/src/kmir/kmir.py | 46 ++++++++++++++++++++++++++++++++++++++- 2 files changed, 57 insertions(+), 1 deletion(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index ac232f119..668689195 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -61,6 +61,18 @@ def _kmir_run(opts: RunOpts) -> None: print(kmir.kore_to_pretty(result)) +def _kmir_run_x(opts: RunOpts) -> None: + assert opts.file is not None + # produce and compile a module and re-load a KMIR object with it + smir_info = SMIRInfo.from_file(Path(opts.file)) + + # see prove_x, should share code later + kmir = KMIR.from_kompiled_program(smir_info) + + result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) + print(kmir.kore_to_pretty(result)) + + def _kmir_gen_mod(opts: GenSpecOpts) -> None: kmir = KMIR(HASKELL_DEF_DIR, LLVM_LIB_DIR) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 72bb05886..497feaa2e 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -1,10 +1,11 @@ from __future__ import annotations import logging +import os +import tempfile from contextlib import contextmanager from functools import cached_property from typing import TYPE_CHECKING -from xml.dom.minidom import TypeInfo from pyk.cli.utils import bug_report_arg from pyk.cterm import CTerm, cterm_symbolic @@ -18,13 +19,16 @@ from pyk.kcfg.explore import KCFGExplore from pyk.kcfg.semantics import DefaultSemantics from pyk.kcfg.show import NodePrinter +from pyk.ktool.kompile import LLVMKompileType, PykBackend, kompile from pyk.ktool.kprove import KProve from pyk.ktool.krun import KRun from pyk.proof.reachability import APRProof, APRProver from pyk.proof.show import APRProofNodePrinter +from .build import HASKELL_DEF_DIR, KMIR_SOURCE_DIR from .cargo import cargo_get_smir_json from .kast import mk_call_terminator, symbolic_locals +from .kdist.plugin import _default_args from .kparse import KParse from .parse.parser import Parser from .smir import SMIRInfo @@ -57,6 +61,45 @@ def __init__( KParse.__init__(self, definition_dir) self.llvm_library_dir = llvm_library_dir + @staticmethod + def from_kompiled_program(smir_info: SMIRInfo, bug_report: Path | None = None) -> KMIR: + kmir = KMIR(HASKELL_DEF_DIR) + + prog_module = kmir.make_program_module(smir_info) + + with tempfile.NamedTemporaryFile(mode='w+t', delete=False) as prog_mod_file: + prog_mod_file.write(kmir.pretty_print(prog_module)) + _LOGGER.info(f'Program module written to {prog_mod_file.name}') + + # kompile the module, for Haskell and for LLVM-library + # code using KompileTarget from kmir.kdist.plugin + llvm_args = { + 'main_file': prog_mod_file.name, + 'main_module': prog_module.main_module_name, + 'backend': PykBackend.LLVM, + 'llvm_kompile_type': LLVMKompileType.C, + 'md_selector': 'k & ! symbolic', + **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), + } + llvm_out = kompile(output_dir='out/llvm', verbose=True, **llvm_args) + + hs_args = { + 'main_file': prog_mod_file.name, + 'main_module': prog_module.main_module_name, + 'backend': PykBackend.HASKELL, + 'md_selector': 'k & ! concrete', + **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), + } + hs_out = kompile(output_dir='out/hs/', verbose=True, **hs_args) + + _LOGGER.info(f'Kompile output: LLVM: {llvm_out},HS: {hs_out}') + + if os.path.exists(prog_mod_file.name): + os.remove(prog_mod_file.name) + + # make a new KMIR with these paths + return KMIR(hs_out, llvm_out, bug_report=bug_report) + class Symbols: END_PROGRAM: Final = KApply('#EndProgram_KMIR-CONTROL-FLOW_KItem') @@ -135,6 +178,7 @@ def make_program_module(self, smir_info: SMIRInfo) -> KDefinition: for alloc in smir_info._smir['allocs']: alloc_id, value = self._decode_alloc(smir_info=smir_info, raw_alloc=alloc) + assert isinstance(alloc_id, KApply) and isinstance(alloc_id.args[0], KToken) rule, _ = build_rule( f'lookupAlloc-{alloc_id.args[0].token}', alloc_id, From 44577826201c20c2ada2ec982b66a02bdb4cf194 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Mon, 13 Oct 2025 17:13:05 +1100 Subject: [PATCH 15/47] WIP run-x: try-catch around module compilation --- kmir/src/kmir/kmir.py | 66 +++++++++++++++++++++++-------------------- 1 file changed, 35 insertions(+), 31 deletions(-) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 497feaa2e..4ad445695 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -65,37 +65,41 @@ def __init__( def from_kompiled_program(smir_info: SMIRInfo, bug_report: Path | None = None) -> KMIR: kmir = KMIR(HASKELL_DEF_DIR) - prog_module = kmir.make_program_module(smir_info) - - with tempfile.NamedTemporaryFile(mode='w+t', delete=False) as prog_mod_file: - prog_mod_file.write(kmir.pretty_print(prog_module)) - _LOGGER.info(f'Program module written to {prog_mod_file.name}') - - # kompile the module, for Haskell and for LLVM-library - # code using KompileTarget from kmir.kdist.plugin - llvm_args = { - 'main_file': prog_mod_file.name, - 'main_module': prog_module.main_module_name, - 'backend': PykBackend.LLVM, - 'llvm_kompile_type': LLVMKompileType.C, - 'md_selector': 'k & ! symbolic', - **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), - } - llvm_out = kompile(output_dir='out/llvm', verbose=True, **llvm_args) - - hs_args = { - 'main_file': prog_mod_file.name, - 'main_module': prog_module.main_module_name, - 'backend': PykBackend.HASKELL, - 'md_selector': 'k & ! concrete', - **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), - } - hs_out = kompile(output_dir='out/hs/', verbose=True, **hs_args) - - _LOGGER.info(f'Kompile output: LLVM: {llvm_out},HS: {hs_out}') - - if os.path.exists(prog_mod_file.name): - os.remove(prog_mod_file.name) + try: + prog_module = kmir.make_program_module(smir_info) + + with tempfile.NamedTemporaryFile(mode='w+t', delete=False) as prog_mod_file: + prog_mod_file.write(kmir.pretty_print(prog_module)) + _LOGGER.info(f'Program module written to {prog_mod_file.name}') + + # kompile the module, for Haskell and for LLVM-library + # code using KompileTarget from kmir.kdist.plugin + llvm_args = { + 'main_file': prog_mod_file.name, + 'main_module': prog_module.main_module_name, + 'backend': PykBackend.LLVM, + 'llvm_kompile_type': LLVMKompileType.C, + 'md_selector': 'k & ! symbolic', + **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), + } + llvm_out = kompile(output_dir='out/llvm', verbose=True, **llvm_args) + + hs_args = { + 'main_file': prog_mod_file.name, + 'main_module': prog_module.main_module_name, + 'backend': PykBackend.HASKELL, + 'md_selector': 'k & ! concrete', + **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), + } + hs_out = kompile(output_dir='out/hs/', verbose=True, **hs_args) + + _LOGGER.info(f'Kompile output: LLVM: {llvm_out},HS: {hs_out}') + except Exception as e: + _LOGGER.error(f'Exception during kompile phase: {e}') + raise e + finally: + if os.path.exists(prog_mod_file.name): + os.remove(prog_mod_file.name) # make a new KMIR with these paths return KMIR(hs_out, llvm_out, bug_report=bug_report) From 1d725818eb11e88084e564a8fe10eb0297282c66 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Tue, 14 Oct 2025 10:55:49 +1100 Subject: [PATCH 16/47] update the notes with some insight about blockers and workarounds --- docs/notes-compile-to-k.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/notes-compile-to-k.md b/docs/notes-compile-to-k.md index 69541d829..1dffc56ba 100644 --- a/docs/notes-compile-to-k.md +++ b/docs/notes-compile-to-k.md @@ -62,3 +62,14 @@ To run a program/function or prove a property, we still generate a call configur but the configuration does not have any static fields any more. The configuration is executed with the compiled module. +# Obstacles + +1. LLVM backend is confused about symbol versions when an `@` char is in a string or binary data (`\x40h`). + This was caused by the LLVM backend using the literal kore string as a symbol name. Fixed in llvm backend, open PR. +2. Compilation fails because of "long" lists (>100 elements) causing problems in the rule parser. + Work-arounds considered: + - generate kore instead , and insert it into the `definition.kore` + - need to do this manually as there are no helper functions to make `kore` rules directly. + - generate `kast` syntax and splice into the K code. + - need to extend `pyk` with a `kast` pretty-printer. The `kast` format specification is somewhat tricky and incomplete, as I was told. + From 311b631e6d504c59338c023d80b25e086ef768f9 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Tue, 14 Oct 2025 10:56:25 +1100 Subject: [PATCH 17/47] WIP adding a `run-x` command for testing --- kmir/src/kmir/__main__.py | 25 ++++++++++++++++++++++--- kmir/src/kmir/kmir.py | 5 ++++- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 668689195..5f253be5d 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -66,8 +66,8 @@ def _kmir_run_x(opts: RunOpts) -> None: # produce and compile a module and re-load a KMIR object with it smir_info = SMIRInfo.from_file(Path(opts.file)) - # see prove_x, should share code later - kmir = KMIR.from_kompiled_program(smir_info) + # code from prove_x factored into a constructor. Should share code later + kmir = KMIR.from_kompiled_program(smir_info, symbolic=opts.haskell_backend) result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) print(kmir.kore_to_pretty(result)) @@ -298,7 +298,10 @@ def kmir(args: Sequence[str]) -> None: logging.basicConfig(level=_loglevel(ns), format=_LOG_FORMAT) match opts: case RunOpts(): - _kmir_run(opts) + if ns.command == 'run-x': + _kmir_run_x(opts) + else: + _kmir_run(opts) case GenSpecOpts(): _kmir_gen_mod(opts) case InfoOpts(): @@ -338,6 +341,14 @@ def _arg_parser() -> ArgumentParser: ) run_parser.add_argument('--haskell-backend', action='store_true', help='Run with the haskell backend') + run_parser = command_parser.add_parser('run-x', help='run stable MIR programs', parents=[kcli_args.logging_args]) + run_parser.add_argument('--file', metavar='SMIR', help='SMIR json file to execute') + run_parser.add_argument('--depth', type=int, metavar='DEPTH', help='Depth to execute') + run_parser.add_argument( + '--start-symbol', type=str, metavar='SYMBOL', default='main', help='Symbol name to begin execution from' + ) + run_parser.add_argument('--symbolic', action='store_true', help='Run with the haskell backend') + gen_spec_parser = command_parser.add_parser( 'gen-spec', help='Generate a k spec from a SMIR json', parents=[kcli_args.logging_args] ) @@ -484,6 +495,14 @@ def _parse_args(ns: Namespace) -> KMirOpts: start_symbol=ns.start_symbol, haskell_backend=ns.haskell_backend, ) + case 'run-x': + return RunOpts( + bin=None, + file=ns.file, + depth=ns.depth, + start_symbol=ns.start_symbol, + haskell_backend=ns.symbolic, + ) case 'gen-spec': return GenSpecOpts(input_file=Path(ns.input_file), output_file=ns.output_file, start_symbol=ns.start_symbol) case 'info': diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 4ad445695..f265d04e9 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -62,7 +62,7 @@ def __init__( self.llvm_library_dir = llvm_library_dir @staticmethod - def from_kompiled_program(smir_info: SMIRInfo, bug_report: Path | None = None) -> KMIR: + def from_kompiled_program(smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = False) -> KMIR: kmir = KMIR(HASKELL_DEF_DIR) try: @@ -84,6 +84,9 @@ def from_kompiled_program(smir_info: SMIRInfo, bug_report: Path | None = None) - } llvm_out = kompile(output_dir='out/llvm', verbose=True, **llvm_args) + if not symbolic: + raise Exception('non-symbolic compiled module: not implemented yet') + hs_args = { 'main_file': prog_mod_file.name, 'main_module': prog_module.main_module_name, From a7c1f42c5121bd1efcc81cf4a9cd6557ef9e2445 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Tue, 14 Oct 2025 13:24:05 +1100 Subject: [PATCH 18/47] fix lookupAlloc in generated module, use custom constructor in prove-x --- kmir/src/kmir/__main__.py | 49 ++++----------------------------------- kmir/src/kmir/kmir.py | 15 +++++++++--- 2 files changed, 16 insertions(+), 48 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 5f253be5d..2d5c98dd9 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -14,7 +14,7 @@ from pyk.proof.show import APRProofShow from pyk.proof.tui import APRProofViewer -from .build import HASKELL_DEF_DIR, KMIR_SOURCE_DIR, LLVM_DEF_DIR, LLVM_LIB_DIR +from .build import HASKELL_DEF_DIR, LLVM_DEF_DIR, LLVM_LIB_DIR from .cargo import CargoProject from .kmir import KMIR, KMIRAPRNodePrinter from .linker import link @@ -67,7 +67,7 @@ def _kmir_run_x(opts: RunOpts) -> None: smir_info = SMIRInfo.from_file(Path(opts.file)) # code from prove_x factored into a constructor. Should share code later - kmir = KMIR.from_kompiled_program(smir_info, symbolic=opts.haskell_backend) + kmir = KMIR.from_kompiled_program(smir_info, symbolic=opts.haskell_backend, keep_module=True) result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) print(kmir.kore_to_pretty(result)) @@ -93,7 +93,6 @@ def _kmir_prove_rs(opts: ProveRSOpts) -> None: def _kmir_prove_x(opts: ProveRSOpts) -> None: - kmir = KMIR(HASKELL_DEF_DIR) # modules get too big for the compiler to handle them, reduce items here # (prevents reuse of the generated definition, though) @@ -101,48 +100,8 @@ def _kmir_prove_x(opts: ProveRSOpts) -> None: reduced = all_smir.reduce_to(opts.start_symbol) _LOGGER.info(f'Reduced items table size from {len(all_smir.items)} to {len(reduced.items)}.') - prog_module = kmir.make_program_module(reduced) - - import tempfile - - with tempfile.NamedTemporaryFile(mode='w+t', delete=False) as prog_mod_file: - prog_mod_file.write(kmir.pretty_print(prog_module)) - _LOGGER.info(f'Program module written to {prog_mod_file.name}') - - # kompile the module, for Haskell and for LLVM-library - # code using KompileTarget from kmir.kdist.plugin - from pyk.ktool.kompile import LLVMKompileType, PykBackend, kompile - - from kmir.kdist.plugin import _default_args - - llvm_args = { - 'main_file': prog_mod_file.name, - 'main_module': prog_module.main_module_name, - 'backend': PykBackend.LLVM, - 'llvm_kompile_type': LLVMKompileType.C, - 'md_selector': 'k & ! symbolic', - **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), - } - llvm_out = kompile(output_dir='out/llvm', verbose=True, **llvm_args) - - hs_args = { - 'main_file': prog_mod_file.name, - 'main_module': prog_module.main_module_name, - 'backend': PykBackend.HASKELL, - 'md_selector': 'k & ! concrete', - **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), - } - hs_out = kompile(output_dir='out/hs/', verbose=True, **hs_args) - - _LOGGER.info(f'Kompile output: LLVM: {llvm_out},HS: {hs_out}') - - import os - - if os.path.exists(prog_mod_file.name): - os.remove(prog_mod_file.name) - - # make a new KMIR with these paths - kmir = KMIR(hs_out, llvm_out, bug_report=opts.bug_report) + # produce a KMIR object with a compiled module for the program + kmir = KMIR.from_kompiled_program(reduced, symbolic=True, keep_module=True) # run a modified prove_rs (inlined here) with this label = str(opts.rs_file.stem) + '.' + opts.start_symbol diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index f265d04e9..5682ed24f 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -2,6 +2,7 @@ import logging import os +import shutil import tempfile from contextlib import contextmanager from functools import cached_property @@ -62,7 +63,9 @@ def __init__( self.llvm_library_dir = llvm_library_dir @staticmethod - def from_kompiled_program(smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = False) -> KMIR: + def from_kompiled_program( + smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = False, keep_module: bool = False + ) -> KMIR: kmir = KMIR(HASKELL_DEF_DIR) try: @@ -102,7 +105,13 @@ def from_kompiled_program(smir_info: SMIRInfo, bug_report: Path | None = None, s raise e finally: if os.path.exists(prog_mod_file.name): - os.remove(prog_mod_file.name) + if keep_module: + shutil.move(prog_mod_file.name, 'out/program_module.k') + _LOGGER.info('Compiled module kept as file out/program_module.k.') + else: + os.remove(prog_mod_file.name) + else: + raise Exception('Unable to provide module file') # make a new KMIR with these paths return KMIR(hs_out, llvm_out, bug_report=bug_report) @@ -188,7 +197,7 @@ def make_program_module(self, smir_info: SMIRInfo) -> KDefinition: assert isinstance(alloc_id, KApply) and isinstance(alloc_id.args[0], KToken) rule, _ = build_rule( f'lookupAlloc-{alloc_id.args[0].token}', - alloc_id, + KApply('lookupAlloc', (alloc_id,)), value, ) equations.append(rule) From 5c402e9d01be2b7696beb240d0fa40cf065d262e Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Tue, 14 Oct 2025 14:39:51 +1100 Subject: [PATCH 19/47] WIP generating kore function equations for the module --- kmir/src/kmir/__main__.py | 6 +++--- kmir/src/kmir/kmir.py | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 3 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 2d5c98dd9..0846ffb14 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -76,12 +76,12 @@ def _kmir_run_x(opts: RunOpts) -> None: def _kmir_gen_mod(opts: GenSpecOpts) -> None: kmir = KMIR(HASKELL_DEF_DIR, LLVM_LIB_DIR) - result = kmir.make_program_module(SMIRInfo.from_file(opts.input_file)) + result = kmir.make_kore_rules(SMIRInfo.from_file(opts.input_file)) if opts.output_file is not None: - opts.output_file.write_text(kmir.pretty_print(result)) + opts.output_file.write_text('\n\n'.join(result)) else: - print(kmir.pretty_print(result)) + print('\n\n'.join(result)) def _kmir_prove_rs(opts: ProveRSOpts) -> None: diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 5682ed24f..49bc6c64e 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -208,6 +208,42 @@ def make_program_module(self, smir_info: SMIRInfo) -> KDefinition: return KDefinition(f'KMIR-PROGRAM-{name}', (module,), (KRequire('kmir.md'),)) + def make_kore_rules(self, smir_info: SMIRInfo) -> list[str]: # generates kore syntax directly as string + equations = [] + + for fty, kind in self.functions(smir_info).items(): + equations.append(self._mk_equation('lookupFunction', KApply('ty', (token(fty),)), kind)) + + types: set[KInner] = set() + for type in smir_info._smir['types']: + parse_result = self.parser.parse_mir_json(type, 'TypeMapping') + assert parse_result is not None + type_mapping, _ = parse_result + assert isinstance(type_mapping, KApply) and len(type_mapping.args) == 2 + ty, tyinfo = type_mapping.args + if ty in types: + raise ValueError(f'Key collision in type map: {ty}') + types.add(ty) + equations.append(self._mk_equation('lookupTy', ty, tyinfo)) + + for alloc in smir_info._smir['allocs']: + alloc_id, value = self._decode_alloc(smir_info=smir_info, raw_alloc=alloc) + equations.append(self._mk_equation('lookupAlloc', alloc_id, value)) + + return equations + + def _mk_equation(self, fun: str, arg: KInner, result: KInner) -> str: + # use a template here. Assumes we can render KInner as valid kore. + arg_kore = self.kast_to_kore(arg).text + result_kore = self.kast_to_kore(result).text + + from pyk.kore.rule import FunctionRule + from pyk.kore.syntax import App + + fun_app = App(fun, (), (arg_kore,)) + + return f'implement me: {fun_app} = {result_kore} as kore' + def make_call_config( self, smir_info: SMIRInfo, From d09c5f31e5a0660876e6350c914cb3eed04a886b Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Tue, 14 Oct 2025 18:54:06 +1100 Subject: [PATCH 20/47] produce and render function equations using pyk, define shorter symbols --- kmir/src/kmir/kdist/mir-semantics/rt/value.md | 6 +-- kmir/src/kmir/kmir.py | 46 +++++++++++++------ 2 files changed, 36 insertions(+), 16 deletions(-) diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/value.md b/kmir/src/kmir/kdist/mir-semantics/rt/value.md index ac87a18c0..22c4e4220 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/value.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/value.md @@ -140,20 +140,20 @@ These functions are global static data accessed from many places, and will be e ```k // // function store, Ty -> MonoItemFn - syntax MonoItemKind ::= lookupFunction ( Ty ) [function, total] + syntax MonoItemKind ::= lookupFunction ( Ty ) [function, total, symbol(lookupFunction)] // ------------------------------------------------------------ rule lookupFunction(ty(TY)) => monoItemFn(symbol("** UNKNOWN FUNCTION **"), defId(TY), noBody) [owise] // HACK // cannot be total without a default "error" element. `Ty` is key for both functions and data. // // static allocations: AllocId -> AllocData (Value or error) - syntax Evaluation ::= lookupAlloc ( AllocId ) [function, total] + syntax Evaluation ::= lookupAlloc ( AllocId ) [function, total, symbol(lookupAlloc)] // ----------------------------------------------------------- rule lookupAlloc(ID) => InvalidAlloc(ID) [owise] syntax Evaluation ::= InvalidAlloc ( AllocId ) // // static information about the base type interning in the MIR: Ty -> TypeInfo - syntax TypeInfo ::= lookupTy ( Ty ) [function, total] + syntax TypeInfo ::= lookupTy ( Ty ) [function, total, symbol(lookupTy)] // ----------------------------------------------------- rule lookupTy(_TY) => typeInfoVoidType [owise] // HACK ``` diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 49bc6c64e..49c311afc 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -212,7 +212,9 @@ def make_kore_rules(self, smir_info: SMIRInfo) -> list[str]: # generates kore s equations = [] for fty, kind in self.functions(smir_info).items(): - equations.append(self._mk_equation('lookupFunction', KApply('ty', (token(fty),)), kind)) + equations.append( + self._mk_equation('lookupFunction', KApply('ty', (token(fty),)), 'Ty', kind, 'MonoItemKind') + ) types: set[KInner] = set() for type in smir_info._smir['types']: @@ -224,25 +226,43 @@ def make_kore_rules(self, smir_info: SMIRInfo) -> list[str]: # generates kore s if ty in types: raise ValueError(f'Key collision in type map: {ty}') types.add(ty) - equations.append(self._mk_equation('lookupTy', ty, tyinfo)) + equations.append(self._mk_equation('lookupTy', ty, 'Ty', tyinfo, 'TypeInfo')) for alloc in smir_info._smir['allocs']: alloc_id, value = self._decode_alloc(smir_info=smir_info, raw_alloc=alloc) - equations.append(self._mk_equation('lookupAlloc', alloc_id, value)) + equations.append(self._mk_equation('lookupAlloc', alloc_id, 'AllocId', value, 'Evaluation')) return equations - def _mk_equation(self, fun: str, arg: KInner, result: KInner) -> str: - # use a template here. Assumes we can render KInner as valid kore. - arg_kore = self.kast_to_kore(arg).text - result_kore = self.kast_to_kore(result).text - + def _mk_equation(self, fun: str, arg: KInner, arg_sort: str, result: KInner, result_sort: str) -> str: from pyk.kore.rule import FunctionRule - from pyk.kore.syntax import App - - fun_app = App(fun, (), (arg_kore,)) - - return f'implement me: {fun_app} = {result_kore} as kore' + from pyk.kore.syntax import App, SortApp + + fun_app = self.kast_to_kore(KApply(fun, (arg,))) + result_kore = self.kast_to_kore(result) + + assert isinstance(fun_app, App) + rule = FunctionRule( + lhs=fun_app, + rhs=result_kore, + req=None, + ens=None, + sort=SortApp(result_sort), + arg_sorts=(SortApp(arg_sort),), + anti_left=None, + priority=50, + uid='fubar', + label='fubaz', + ) + return '\n'.join( + [ + ( + f'// {fun}({self.pretty_print(arg)})' + + (f' => {self.pretty_print(result)}' if len(self.pretty_print(result)) < 1000 else '') + ), + rule.to_axiom().text, + ] + ) def make_call_config( self, From e576a1e328176f2fc4e503891c5a1074e2c701a6 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Tue, 14 Oct 2025 21:53:07 +1100 Subject: [PATCH 21/47] complete definition.kore generation and llvm kompile (draft) --- docs/notes-compile-to-k.md | 3 +- kmir/src/kmir/__main__.py | 69 ++++++++++++++++++++++++++++++++++---- 2 files changed, 65 insertions(+), 7 deletions(-) diff --git a/docs/notes-compile-to-k.md b/docs/notes-compile-to-k.md index 1dffc56ba..cfe9b2918 100644 --- a/docs/notes-compile-to-k.md +++ b/docs/notes-compile-to-k.md @@ -72,4 +72,5 @@ The configuration is executed with the compiled module. - need to do this manually as there are no helper functions to make `kore` rules directly. - generate `kast` syntax and splice into the K code. - need to extend `pyk` with a `kast` pretty-printer. The `kast` format specification is somewhat tricky and incomplete, as I was told. - + Work-around 1 appears to work, code developed on new branch extending the other. + diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 0846ffb14..da64b9778 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -73,15 +73,72 @@ def _kmir_run_x(opts: RunOpts) -> None: print(kmir.kore_to_pretty(result)) +def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Path) -> None: + with open(input_file, 'r') as f: + lines = f.readlines() + + # last line must start with 'endmodule' + last_line = lines[-1] + assert last_line.startswith('endmodule') + new_lines = lines[:-1] + + # Insert rules before the endmodule line + new_lines.append(f'\n// Generated from file {input_file}\n\n') + new_lines.extend(rules) + new_lines.append('\n' + last_line) + + # Write to output file + with open(output_file, 'w') as f: + f.writelines(new_lines) + + def _kmir_gen_mod(opts: GenSpecOpts) -> None: + import shutil + import subprocess + kmir = KMIR(HASKELL_DEF_DIR, LLVM_LIB_DIR) - result = kmir.make_kore_rules(SMIRInfo.from_file(opts.input_file)) + rules = kmir.make_kore_rules(SMIRInfo.from_file(opts.input_file)) + _LOGGER.info(f'Generated {len(rules)} function equations to add to `definition.kore') - if opts.output_file is not None: - opts.output_file.write_text('\n\n'.join(result)) - else: - print('\n\n'.join(result)) + out_dir = opts.output_file if opts.output_file is not None else Path('out/') + + # Create output directories + out_llvm_dir = out_dir / 'llvm' + out_llvmdt_dir = out_llvm_dir / 'dt' + out_hs_dir = out_dir / 'hs' + + _LOGGER.info(f'Creating directories {out_llvmdt_dir} and {out_hs_dir}') + out_llvmdt_dir.mkdir(parents=True, exist_ok=True) + out_hs_dir.mkdir(parents=True, exist_ok=True) + + # Process LLVM definition + _LOGGER.info('Writing LLVM definition file') + llvm_def_file = LLVM_LIB_DIR / 'definition.kore' + llvm_def_output = out_llvm_dir / 'definition.kore' + _insert_rules_and_write(llvm_def_file, rules, llvm_def_output) + + # Run llvm-kompile-matching and llvm-kompile for LLVM + _LOGGER.info('Running llvm-kompile-matching') + subprocess.run(['llvm-kompile-matching', str(llvm_def_output), 'qbaL', str(out_llvmdt_dir), '1/2'], check=True) + _LOGGER.info('Running llvm-kompile') + subprocess.run( + ['llvm-kompile', str(llvm_def_output), str(out_llvmdt_dir), 'c', '-O2', '--', '-o', out_llvm_dir / 'interpreter'], check=True + ) + + # Process Haskell definition + _LOGGER.info('Writing Haskell definition file') + hs_def_file = HASKELL_DEF_DIR / 'definition.kore' + _insert_rules_and_write(hs_def_file, rules, out_hs_dir / 'definition.kore') + + # Copy all files except definition.kore from HASKELL_DEF_DIR to out/hs + _LOGGER.info('Copying other artefacts into HS output directory') + for file_path in HASKELL_DEF_DIR.iterdir(): + if file_path.name != 'definition.kore': + if file_path.is_file(): + shutil.copy2(file_path, out_hs_dir / file_path.name) + elif file_path.is_dir(): + shutil.copytree(file_path, out_hs_dir / file_path.name, dirs_exist_ok=True) def _kmir_prove_rs(opts: ProveRSOpts) -> None: @@ -101,7 +158,7 @@ def _kmir_prove_x(opts: ProveRSOpts) -> None: _LOGGER.info(f'Reduced items table size from {len(all_smir.items)} to {len(reduced.items)}.') # produce a KMIR object with a compiled module for the program - kmir = KMIR.from_kompiled_program(reduced, symbolic=True, keep_module=True) + kmir = KMIR.from_kompiled_program(reduced, symbolic=True, keep_module=True, bug_report=opts.bug_report) # run a modified prove_rs (inlined here) with this label = str(opts.rs_file.stem) + '.' + opts.start_symbol From 2245172bfc5bbee23594858752b11abc50de9637 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Tue, 14 Oct 2025 22:50:57 +1100 Subject: [PATCH 22/47] fix app and sorts in rule rendering, simply print rules unless output dir given --- kmir/src/kmir/__main__.py | 19 +++++++++++++++++-- kmir/src/kmir/kmir.py | 9 +++++---- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index da64b9778..8afcca7a4 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -101,7 +101,12 @@ def _kmir_gen_mod(opts: GenSpecOpts) -> None: rules = kmir.make_kore_rules(SMIRInfo.from_file(opts.input_file)) _LOGGER.info(f'Generated {len(rules)} function equations to add to `definition.kore') - out_dir = opts.output_file if opts.output_file is not None else Path('out/') + if opts.output_file is None: + print('\n//////////////////////\n'.join(rules)) + return + assert isinstance(opts.output_file, Path) + + out_dir = opts.output_file # Create output directories out_llvm_dir = out_dir / 'llvm' @@ -123,7 +128,17 @@ def _kmir_gen_mod(opts: GenSpecOpts) -> None: subprocess.run(['llvm-kompile-matching', str(llvm_def_output), 'qbaL', str(out_llvmdt_dir), '1/2'], check=True) _LOGGER.info('Running llvm-kompile') subprocess.run( - ['llvm-kompile', str(llvm_def_output), str(out_llvmdt_dir), 'c', '-O2', '--', '-o', out_llvm_dir / 'interpreter'], check=True + [ + 'llvm-kompile', + str(llvm_def_output), + str(out_llvmdt_dir), + 'c', + '-O2', + '--', + '-o', + out_llvm_dir / 'interpreter', + ], + check=True, ) # Process Haskell definition diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 49c311afc..dd628ff2a 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -238,8 +238,9 @@ def _mk_equation(self, fun: str, arg: KInner, arg_sort: str, result: KInner, res from pyk.kore.rule import FunctionRule from pyk.kore.syntax import App, SortApp - fun_app = self.kast_to_kore(KApply(fun, (arg,))) - result_kore = self.kast_to_kore(result) + arg_kore = self.kast_to_kore(arg, KSort(arg_sort)) + fun_app = App('Lbl' + fun, (), (arg_kore,)) + result_kore = self.kast_to_kore(result, KSort(result_sort)) assert isinstance(fun_app, App) rule = FunctionRule( @@ -247,8 +248,8 @@ def _mk_equation(self, fun: str, arg: KInner, arg_sort: str, result: KInner, res rhs=result_kore, req=None, ens=None, - sort=SortApp(result_sort), - arg_sorts=(SortApp(arg_sort),), + sort=SortApp('Sort' + result_sort), + arg_sorts=(SortApp('Sort' + arg_sort),), anti_left=None, priority=50, uid='fubar', From bde92b86de737dd451530e6aefa35bc80c859d2f Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 15 Oct 2025 11:01:51 +1100 Subject: [PATCH 23/47] move kore generation into a KMIR constructor, adjustments --- kmir/src/kmir/__main__.py | 89 ++++---------------------------- kmir/src/kmir/kmir.py | 104 +++++++++++++++++++++++++++++++++++--- 2 files changed, 109 insertions(+), 84 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 8afcca7a4..55f10a567 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -2,6 +2,7 @@ import logging import sys +import tempfile from argparse import ArgumentParser from pathlib import Path from typing import TYPE_CHECKING @@ -73,87 +74,19 @@ def _kmir_run_x(opts: RunOpts) -> None: print(kmir.kore_to_pretty(result)) -def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Path) -> None: - with open(input_file, 'r') as f: - lines = f.readlines() - - # last line must start with 'endmodule' - last_line = lines[-1] - assert last_line.startswith('endmodule') - new_lines = lines[:-1] - - # Insert rules before the endmodule line - new_lines.append(f'\n// Generated from file {input_file}\n\n') - new_lines.extend(rules) - new_lines.append('\n' + last_line) - - # Write to output file - with open(output_file, 'w') as f: - f.writelines(new_lines) - - def _kmir_gen_mod(opts: GenSpecOpts) -> None: - import shutil - import subprocess - - kmir = KMIR(HASKELL_DEF_DIR, LLVM_LIB_DIR) - - rules = kmir.make_kore_rules(SMIRInfo.from_file(opts.input_file)) - _LOGGER.info(f'Generated {len(rules)} function equations to add to `definition.kore') if opts.output_file is None: - print('\n//////////////////////\n'.join(rules)) - return - assert isinstance(opts.output_file, Path) - - out_dir = opts.output_file - - # Create output directories - out_llvm_dir = out_dir / 'llvm' - out_llvmdt_dir = out_llvm_dir / 'dt' - out_hs_dir = out_dir / 'hs' - - _LOGGER.info(f'Creating directories {out_llvmdt_dir} and {out_hs_dir}') - out_llvmdt_dir.mkdir(parents=True, exist_ok=True) - out_hs_dir.mkdir(parents=True, exist_ok=True) - - # Process LLVM definition - _LOGGER.info('Writing LLVM definition file') - llvm_def_file = LLVM_LIB_DIR / 'definition.kore' - llvm_def_output = out_llvm_dir / 'definition.kore' - _insert_rules_and_write(llvm_def_file, rules, llvm_def_output) - - # Run llvm-kompile-matching and llvm-kompile for LLVM - _LOGGER.info('Running llvm-kompile-matching') - subprocess.run(['llvm-kompile-matching', str(llvm_def_output), 'qbaL', str(out_llvmdt_dir), '1/2'], check=True) - _LOGGER.info('Running llvm-kompile') - subprocess.run( - [ - 'llvm-kompile', - str(llvm_def_output), - str(out_llvmdt_dir), - 'c', - '-O2', - '--', - '-o', - out_llvm_dir / 'interpreter', - ], - check=True, - ) - - # Process Haskell definition - _LOGGER.info('Writing Haskell definition file') - hs_def_file = HASKELL_DEF_DIR / 'definition.kore' - _insert_rules_and_write(hs_def_file, rules, out_hs_dir / 'definition.kore') - - # Copy all files except definition.kore from HASKELL_DEF_DIR to out/hs - _LOGGER.info('Copying other artefacts into HS output directory') - for file_path in HASKELL_DEF_DIR.iterdir(): - if file_path.name != 'definition.kore': - if file_path.is_file(): - shutil.copy2(file_path, out_hs_dir / file_path.name) - elif file_path.is_dir(): - shutil.copytree(file_path, out_hs_dir / file_path.name, dirs_exist_ok=True) + with tempfile.TemporaryDirectory() as target_dir: + _ = KMIR.from_kompiled_via_kore( + SMIRInfo.from_file(opts.input_file), bug_report=None, symbolic=True, target_dir=target_dir + ) + print((Path(target_dir) / 'haskell' / 'definition.kore').read_text()) + else: + _ = KMIR.from_kompiled_via_kore( + SMIRInfo.from_file(opts.input_file), bug_report=None, symbolic=True, target_dir=str(opts.output_file) + ) + _LOGGER.info(f'Created program-specific artefacts in {opts.output_file}.') def _kmir_prove_rs(opts: ProveRSOpts) -> None: diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index dd628ff2a..9bb941c43 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -6,6 +6,7 @@ import tempfile from contextlib import contextmanager from functools import cached_property +from pathlib import Path from typing import TYPE_CHECKING from pyk.cli.utils import bug_report_arg @@ -26,7 +27,7 @@ from pyk.proof.reachability import APRProof, APRProver from pyk.proof.show import APRProofNodePrinter -from .build import HASKELL_DEF_DIR, KMIR_SOURCE_DIR +from .build import HASKELL_DEF_DIR, KMIR_SOURCE_DIR, LLVM_LIB_DIR from .cargo import cargo_get_smir_json from .kast import mk_call_terminator, symbolic_locals from .kdist.plugin import _default_args @@ -36,7 +37,6 @@ if TYPE_CHECKING: from collections.abc import Iterator - from pathlib import Path from typing import Any, Final from pyk.cterm.show import CTermShow @@ -64,7 +64,7 @@ def __init__( @staticmethod def from_kompiled_program( - smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = False, keep_module: bool = False + smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = True, keep_module: bool = False ) -> KMIR: kmir = KMIR(HASKELL_DEF_DIR) @@ -75,6 +75,9 @@ def from_kompiled_program( prog_mod_file.write(kmir.pretty_print(prog_module)) _LOGGER.info(f'Program module written to {prog_mod_file.name}') + if not symbolic: + raise Exception('non-symbolic compiled module: not implemented yet') + # kompile the module, for Haskell and for LLVM-library # code using KompileTarget from kmir.kdist.plugin llvm_args = { @@ -87,9 +90,6 @@ def from_kompiled_program( } llvm_out = kompile(output_dir='out/llvm', verbose=True, **llvm_args) - if not symbolic: - raise Exception('non-symbolic compiled module: not implemented yet') - hs_args = { 'main_file': prog_mod_file.name, 'main_module': prog_module.main_module_name, @@ -116,6 +116,96 @@ def from_kompiled_program( # make a new KMIR with these paths return KMIR(hs_out, llvm_out, bug_report=bug_report) + @staticmethod + def from_kompiled_via_kore( + smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = True, target_dir: str = 'out-kore' + ) -> KMIR: + kmir = KMIR(HASKELL_DEF_DIR) + + def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Path) -> None: + with open(input_file, 'r') as f: + lines = f.readlines() + + # last line must start with 'endmodule' + last_line = lines[-1] + assert last_line.startswith('endmodule') + new_lines = lines[:-1] + + # Insert rules before the endmodule line + new_lines.append(f'\n// Generated from file {input_file}\n\n') + new_lines.extend(rules) + new_lines.append('\n' + last_line) + + # Write to output file + with open(output_file, 'w') as f: + f.writelines(new_lines) + + target_path = Path(target_dir) + # TODO if target dir exists and contains files, check file dates (definition files and interpreter) + # to decide whether or not to recompile. For now we always recompile. + target_path.mkdir(parents=True, exist_ok=True) + + rules = kmir.make_kore_rules(smir_info) + _LOGGER.info(f'Generated {len(rules)} function equations to add to `definition.kore') + + if not symbolic: + raise Exception('Non-symbolic (LLVM) kore-module not implemented') + + # Create output directories + target_llvm_path = target_path / 'llvm-library' + target_llvmdt_path = target_llvm_path / 'dt' + target_hs_path = target_path / 'haskell' + + _LOGGER.info(f'Creating directories {target_llvmdt_path} and {target_hs_path}') + target_llvmdt_path.mkdir(parents=True, exist_ok=True) + target_hs_path.mkdir(parents=True, exist_ok=True) + + # Process LLVM definition + _LOGGER.info('Writing LLVM definition file') + llvm_def_file = LLVM_LIB_DIR / 'definition.kore' + llvm_def_output = target_llvm_path / 'definition.kore' + _insert_rules_and_write(llvm_def_file, rules, llvm_def_output) + + # Run llvm-kompile-matching and llvm-kompile for LLVM + # TODO use pyk to do this if possible (subprocess wrapper, maybe llvm-kompile itself?) + # TODO align compilation options to what we use in plugin.py + import subprocess + + _LOGGER.info('Running llvm-kompile-matching') + subprocess.run( + ['llvm-kompile-matching', str(llvm_def_output), 'qbaL', str(target_llvmdt_path), '1/2'], check=True + ) + _LOGGER.info('Running llvm-kompile') + subprocess.run( + [ + 'llvm-kompile', + str(llvm_def_output), + str(target_llvmdt_path), + 'c', + '-O2', + '--', + '-o', + target_llvm_path / 'interpreter', + ], + check=True, + ) + + # Process Haskell definition + _LOGGER.info('Writing Haskell definition file') + hs_def_file = HASKELL_DEF_DIR / 'definition.kore' + _insert_rules_and_write(hs_def_file, rules, target_hs_path / 'definition.kore') + + # Copy all files except definition.kore from HASKELL_DEF_DIR to out/hs + _LOGGER.info('Copying other artefacts into HS output directory') + for file_path in HASKELL_DEF_DIR.iterdir(): + if file_path.name != 'definition.kore': + if file_path.is_file(): + shutil.copy2(file_path, target_hs_path / file_path.name) + elif file_path.is_dir(): + shutil.copytree(file_path, target_hs_path / file_path.name, dirs_exist_ok=True) + + return KMIR(target_hs_path, target_llvm_path, bug_report=bug_report) + class Symbols: END_PROGRAM: Final = KApply('#EndProgram_KMIR-CONTROL-FLOW_KItem') @@ -257,6 +347,8 @@ def _mk_equation(self, fun: str, arg: KInner, arg_sort: str, result: KInner, res ) return '\n'.join( [ + '', + '', ( f'// {fun}({self.pretty_print(arg)})' + (f' => {self.pretty_print(result)}' if len(self.pretty_print(result)) < 1000 else '') From 0f67a25a96d216136bbd6031c4244ae58c28a89b Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 15 Oct 2025 12:00:21 +1100 Subject: [PATCH 24/47] Add definedness and totality to avoid fall-back --- kmir/src/kmir/kdist/mir-semantics/kmir.md | 2 +- kmir/src/kmir/kdist/mir-semantics/rt/data.md | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/kmir/src/kmir/kdist/mir-semantics/kmir.md b/kmir/src/kmir/kdist/mir-semantics/kmir.md index 346f96d04..05c7fd500 100644 --- a/kmir/src/kmir/kdist/mir-semantics/kmir.md +++ b/kmir/src/kmir/kdist/mir-semantics/kmir.md @@ -360,7 +360,7 @@ If the local `_0` does not have a value (i.e., it remained uninitialised), the f // remaining call stack (without top frame) ListItem(StackFrame(NEWCALLER, NEWDEST, NEWTARGET, UNWIND, NEWLOCALS)) STACK => STACK - syntax List ::= #getBlocks( Ty ) [function] + syntax List ::= #getBlocks( Ty ) [function, total] | #getBlocksAux( MonoItemKind ) [function, total] rule #getBlocks(TY) => #getBlocksAux(lookupFunction(TY)) diff --git a/kmir/src/kmir/kdist/mir-semantics/rt/data.md b/kmir/src/kmir/kdist/mir-semantics/rt/data.md index ceecfac1d..27a5857aa 100644 --- a/kmir/src/kmir/kdist/mir-semantics/rt/data.md +++ b/kmir/src/kmir/kdist/mir-semantics/rt/data.md @@ -702,6 +702,7 @@ even though this could be supported. ... requires isValue(lookupAlloc(ALLOC_ID)) + [preserves-definedness] // sort projection checked ``` ## Evaluation of R-Values (`Rvalue` sort) From ba427bc32c16f19584a9534fb5962d2982f5bccd Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 15 Oct 2025 12:00:59 +1100 Subject: [PATCH 25/47] WIP hacking in kore-based running and proving. run-x not working as expected --- kmir/src/kmir/__main__.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 55f10a567..0085112a1 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -67,9 +67,16 @@ def _kmir_run_x(opts: RunOpts) -> None: # produce and compile a module and re-load a KMIR object with it smir_info = SMIRInfo.from_file(Path(opts.file)) - # code from prove_x factored into a constructor. Should share code later - kmir = KMIR.from_kompiled_program(smir_info, symbolic=opts.haskell_backend, keep_module=True) + # kmir = KMIR.from_kompiled_program(smir_info, symbolic=opts.haskell_backend, keep_module=True) + # result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) + # print(kmir.kore_to_pretty(result)) + # with tempfile.TemporaryDirectory() as work_dir: + # kmir = KMIR.from_kompiled_via_kore(smir_info, symbolic=opts.haskell_backend, target_dir=work_dir) + # result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) + # print(kmir.kore_to_pretty(result)) + + kmir = KMIR.from_kompiled_via_kore(smir_info, symbolic=opts.haskell_backend) # leaves out-kore behind result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) print(kmir.kore_to_pretty(result)) @@ -106,7 +113,9 @@ def _kmir_prove_x(opts: ProveRSOpts) -> None: _LOGGER.info(f'Reduced items table size from {len(all_smir.items)} to {len(reduced.items)}.') # produce a KMIR object with a compiled module for the program - kmir = KMIR.from_kompiled_program(reduced, symbolic=True, keep_module=True, bug_report=opts.bug_report) + + # kmir = KMIR.from_kompiled_program(reduced, symbolic=True, keep_module=True, bug_report=opts.bug_report) + kmir = KMIR.from_kompiled_via_kore(reduced, symbolic=True, bug_report=opts.bug_report) # TODO use proof dir/label! # run a modified prove_rs (inlined here) with this label = str(opts.rs_file.stem) + '.' + opts.start_symbol From e2ac856789aa9649b027dad11f03a5f42777a003 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 15 Oct 2025 15:43:32 +1100 Subject: [PATCH 26/47] Reduce logging for pyk.ktool.kprint --- kmir/src/kmir/kmir.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 9bb941c43..ea9f5d40e 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -301,6 +301,10 @@ def make_program_module(self, smir_info: SMIRInfo) -> KDefinition: def make_kore_rules(self, smir_info: SMIRInfo) -> list[str]: # generates kore syntax directly as string equations = [] + # kprint tool is too chatty + kprint_logger = logging.getLogger('pyk.ktool.kprint') + kprint_logger.setLevel(logging.WARNING) + for fty, kind in self.functions(smir_info).items(): equations.append( self._mk_equation('lookupFunction', KApply('ty', (token(fty),)), 'Ty', kind, 'MonoItemKind') From 0a405199c0dc5bd2773fc4db9300b0403f910de3 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 15 Oct 2025 16:38:11 +1100 Subject: [PATCH 27/47] remove K module based approach --- kmir/src/kmir/__main__.py | 13 ++--- kmir/src/kmir/kmir.py | 111 ++------------------------------------ 2 files changed, 7 insertions(+), 117 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index dae96cedf..87dc00368 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -67,16 +67,12 @@ def _kmir_run_x(opts: RunOpts) -> None: # produce and compile a module and re-load a KMIR object with it smir_info = SMIRInfo.from_file(Path(opts.file)) - # kmir = KMIR.from_kompiled_program(smir_info, symbolic=opts.haskell_backend, keep_module=True) - # result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) - # print(kmir.kore_to_pretty(result)) - # with tempfile.TemporaryDirectory() as work_dir: # kmir = KMIR.from_kompiled_via_kore(smir_info, symbolic=opts.haskell_backend, target_dir=work_dir) # result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) # print(kmir.kore_to_pretty(result)) - kmir = KMIR.from_kompiled_via_kore(smir_info, symbolic=opts.haskell_backend) # leaves out-kore behind + kmir = KMIR.from_kompiled_kore(smir_info, symbolic=opts.haskell_backend) # leaves out-kore behind result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) print(kmir.kore_to_pretty(result)) @@ -85,12 +81,12 @@ def _kmir_gen_mod(opts: GenSpecOpts) -> None: if opts.output_file is None: with tempfile.TemporaryDirectory() as target_dir: - _ = KMIR.from_kompiled_via_kore( + _ = KMIR.from_kompiled_kore( SMIRInfo.from_file(opts.input_file), bug_report=None, symbolic=True, target_dir=target_dir ) print((Path(target_dir) / 'haskell' / 'definition.kore').read_text()) else: - _ = KMIR.from_kompiled_via_kore( + _ = KMIR.from_kompiled_kore( SMIRInfo.from_file(opts.input_file), bug_report=None, symbolic=True, target_dir=str(opts.output_file) ) _LOGGER.info(f'Created program-specific artefacts in {opts.output_file}.') @@ -114,8 +110,7 @@ def _kmir_prove_x(opts: ProveRSOpts) -> None: # produce a KMIR object with a compiled module for the program - # kmir = KMIR.from_kompiled_program(reduced, symbolic=True, keep_module=True, bug_report=opts.bug_report) - kmir = KMIR.from_kompiled_via_kore(reduced, symbolic=True, bug_report=opts.bug_report) # TODO use proof dir/label! + kmir = KMIR.from_kompiled_kore(reduced, symbolic=True, bug_report=opts.bug_report) # TODO use proof dir/label! # run a modified prove_rs (inlined here) with this label = str(opts.rs_file.stem) + '.' + opts.start_symbol diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index ea9f5d40e..d0e148f48 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -1,9 +1,7 @@ from __future__ import annotations import logging -import os import shutil -import tempfile from contextlib import contextmanager from functools import cached_property from pathlib import Path @@ -12,8 +10,7 @@ from pyk.cli.utils import bug_report_arg from pyk.cterm import CTerm, cterm_symbolic from pyk.kast.inner import KApply, KSequence, KSort, KToken, KVariable, Subst -from pyk.kast.manip import abstract_term_safely, build_rule, free_vars, split_config_from -from pyk.kast.outer import KDefinition, KFlatModule, KImport, KRequire +from pyk.kast.manip import abstract_term_safely, free_vars, split_config_from from pyk.kast.prelude.collections import list_empty, list_of, map_of from pyk.kast.prelude.kint import intToken from pyk.kast.prelude.utils import token @@ -21,16 +18,14 @@ from pyk.kcfg.explore import KCFGExplore from pyk.kcfg.semantics import DefaultSemantics from pyk.kcfg.show import NodePrinter -from pyk.ktool.kompile import LLVMKompileType, PykBackend, kompile from pyk.ktool.kprove import KProve from pyk.ktool.krun import KRun from pyk.proof.reachability import APRProof, APRProver from pyk.proof.show import APRProofNodePrinter -from .build import HASKELL_DEF_DIR, KMIR_SOURCE_DIR, LLVM_LIB_DIR +from .build import HASKELL_DEF_DIR, LLVM_LIB_DIR from .cargo import cargo_get_smir_json from .kast import mk_call_terminator, symbolic_locals -from .kdist.plugin import _default_args from .kparse import KParse from .parse.parser import Parser from .smir import SMIRInfo @@ -63,61 +58,7 @@ def __init__( self.llvm_library_dir = llvm_library_dir @staticmethod - def from_kompiled_program( - smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = True, keep_module: bool = False - ) -> KMIR: - kmir = KMIR(HASKELL_DEF_DIR) - - try: - prog_module = kmir.make_program_module(smir_info) - - with tempfile.NamedTemporaryFile(mode='w+t', delete=False) as prog_mod_file: - prog_mod_file.write(kmir.pretty_print(prog_module)) - _LOGGER.info(f'Program module written to {prog_mod_file.name}') - - if not symbolic: - raise Exception('non-symbolic compiled module: not implemented yet') - - # kompile the module, for Haskell and for LLVM-library - # code using KompileTarget from kmir.kdist.plugin - llvm_args = { - 'main_file': prog_mod_file.name, - 'main_module': prog_module.main_module_name, - 'backend': PykBackend.LLVM, - 'llvm_kompile_type': LLVMKompileType.C, - 'md_selector': 'k & ! symbolic', - **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), - } - llvm_out = kompile(output_dir='out/llvm', verbose=True, **llvm_args) - - hs_args = { - 'main_file': prog_mod_file.name, - 'main_module': prog_module.main_module_name, - 'backend': PykBackend.HASKELL, - 'md_selector': 'k & ! concrete', - **_default_args(KMIR_SOURCE_DIR / 'mir-semantics'), - } - hs_out = kompile(output_dir='out/hs/', verbose=True, **hs_args) - - _LOGGER.info(f'Kompile output: LLVM: {llvm_out},HS: {hs_out}') - except Exception as e: - _LOGGER.error(f'Exception during kompile phase: {e}') - raise e - finally: - if os.path.exists(prog_mod_file.name): - if keep_module: - shutil.move(prog_mod_file.name, 'out/program_module.k') - _LOGGER.info('Compiled module kept as file out/program_module.k.') - else: - os.remove(prog_mod_file.name) - else: - raise Exception('Unable to provide module file') - - # make a new KMIR with these paths - return KMIR(hs_out, llvm_out, bug_report=bug_report) - - @staticmethod - def from_kompiled_via_kore( + def from_kompiled_kore( smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = True, target_dir: str = 'out-kore' ) -> KMIR: kmir = KMIR(HASKELL_DEF_DIR) @@ -252,52 +193,6 @@ def functions(self, smir_info: SMIRInfo) -> dict[int, KInner]: return functions - def make_program_module(self, smir_info: SMIRInfo) -> KDefinition: - equations = [] - - for fty, kind in self.functions(smir_info).items(): - rule, _ = build_rule( - f'lookupFunction-{fty}', - KApply('lookupFunction', (KApply('ty', (token(fty),)),)), - kind, - ) - equations.append(rule) - - parser = Parser(self.definition) - types: set[KInner] = set() - for type in smir_info._smir['types']: - parse_result = parser.parse_mir_json(type, 'TypeMapping') - assert parse_result is not None - type_mapping, _ = parse_result - assert isinstance(type_mapping, KApply) and len(type_mapping.args) == 2 - ty, tyinfo = type_mapping.args - if ty in types: - raise ValueError(f'Key collision in type map: {ty}') - types.add(ty) - assert isinstance(ty, KApply) and len(ty.args) == 1 and isinstance(ty.args[0], KToken) - rule, _ = build_rule( - f'lookupTy-{ty.args[0].token}', - KApply('lookupTy', (ty,)), - tyinfo, - ) - equations.append(rule) - - for alloc in smir_info._smir['allocs']: - alloc_id, value = self._decode_alloc(smir_info=smir_info, raw_alloc=alloc) - assert isinstance(alloc_id, KApply) and isinstance(alloc_id.args[0], KToken) - rule, _ = build_rule( - f'lookupAlloc-{alloc_id.args[0].token}', - KApply('lookupAlloc', (alloc_id,)), - value, - ) - equations.append(rule) - - name = smir_info.name.replace('_', '-') - - module = KFlatModule(f'KMIR-PROGRAM-{name}', equations, (KImport('KMIR'),)) - - return KDefinition(f'KMIR-PROGRAM-{name}', (module,), (KRequire('kmir.md'),)) - def make_kore_rules(self, smir_info: SMIRInfo) -> list[str]: # generates kore syntax directly as string equations = [] From cf54a71bf40b30e543ef1b808081ff4f0eb1c845 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 15 Oct 2025 16:51:30 +1100 Subject: [PATCH 28/47] prune read-only config parts from make_call_config --- kmir/src/kmir/kmir.py | 36 +----------------------------------- 1 file changed, 1 insertion(+), 35 deletions(-) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index d0e148f48..cc38910de 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -11,7 +11,7 @@ from pyk.cterm import CTerm, cterm_symbolic from pyk.kast.inner import KApply, KSequence, KSort, KToken, KVariable, Subst from pyk.kast.manip import abstract_term_safely, free_vars, split_config_from -from pyk.kast.prelude.collections import list_empty, list_of, map_of +from pyk.kast.prelude.collections import list_empty, list_of from pyk.kast.prelude.kint import intToken from pyk.kast.prelude.utils import token from pyk.kcfg import KCFG @@ -269,16 +269,11 @@ def make_call_config( args_info = smir_info.function_arguments[start_symbol] locals, constraints = symbolic_locals(smir_info, args_info) - types = self._make_type_map(smir_info) _subst = { 'K_CELL': mk_call_terminator(smir_info.function_tys[start_symbol], len(args_info)), - 'STARTSYMBOL_CELL': KApply('symbol(_)_LIB_Symbol_String', (token(start_symbol),)), 'STACK_CELL': list_empty(), # FIXME see #560, problems matching a symbolic stack 'LOCALS_CELL': list_of(locals), - 'MEMORY_CELL': self._make_memory_map(smir_info, types), - 'FUNCTIONS_CELL': self._make_function_map(smir_info), - 'TYPES_CELL': types, } _init_subst: dict[str, KInner] = {} @@ -295,16 +290,6 @@ def make_call_config( config = self.definition.empty_config(KSort(sort)) return (subst.apply(config), constraints) - def _make_memory_map(self, smir_info: SMIRInfo, types: KInner) -> KInner: - raw_allocs = smir_info._smir['allocs'] - return map_of( - self._decode_alloc( - smir_info=smir_info, - raw_alloc=raw_alloc, - ) - for raw_alloc in raw_allocs - ) - def _decode_alloc(self, smir_info: SMIRInfo, raw_alloc: Any) -> tuple[KInner, KInner]: from .decoding import UnableToDecodeValue, decode_alloc_or_unable @@ -321,25 +306,6 @@ def _decode_alloc(self, smir_info: SMIRInfo, raw_alloc: Any) -> tuple[KInner, KI alloc_id_term = KApply('allocId', intToken(alloc_id)) return alloc_id_term, value.to_kast() - def _make_function_map(self, smir_info: SMIRInfo) -> KInner: - parsed_terms: dict[KInner, KInner] = {} - for ty, body in self.functions(smir_info).items(): - parsed_terms[KApply('ty', [token(ty)])] = body - return map_of(parsed_terms) - - def _make_type_map(self, smir_info: SMIRInfo) -> KInner: - types: dict[KInner, KInner] = {} - for type in smir_info._smir['types']: - parse_result = self.parser.parse_mir_json(type, 'TypeMapping') - assert parse_result is not None - type_mapping, _ = parse_result - assert isinstance(type_mapping, KApply) and len(type_mapping.args) == 2 - ty, tyinfo = type_mapping.args - if ty in types: - raise ValueError(f'Key collision in type map: {ty}') - types[ty] = tyinfo - return map_of(types) - def run_smir(self, smir_info: SMIRInfo, start_symbol: str = 'main', depth: int | None = None) -> Pattern: smir_info = smir_info.reduce_to(start_symbol) init_config, init_constraints = self.make_call_config(smir_info, start_symbol=start_symbol, init=True) From 94b98d5d1ce5b71c01eb2754924460124d038bcb Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Wed, 15 Oct 2025 19:04:20 +1100 Subject: [PATCH 29/47] refactor KMIR.prove-rs to a static method, move code out of __main__.kmir_prove_x --- kmir/src/kmir/__main__.py | 35 ++++------------------------ kmir/src/kmir/kmir.py | 49 ++++++++++++++++++++++++++++++++++++--- 2 files changed, 50 insertions(+), 34 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 87dc00368..99f7aae80 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -94,43 +94,16 @@ def _kmir_gen_mod(opts: GenSpecOpts) -> None: def _kmir_prove_rs(opts: ProveRSOpts) -> None: kmir = KMIR(HASKELL_DEF_DIR, LLVM_LIB_DIR, bug_report=opts.bug_report) - proof = kmir.prove_rs(opts) + proof = kmir.prove_rss(opts) print(str(proof.summary)) if not proof.passed: sys.exit(1) def _kmir_prove_x(opts: ProveRSOpts) -> None: - - # modules get too big for the compiler to handle them, reduce items here - # (prevents reuse of the generated definition, though) - all_smir = SMIRInfo.from_file(opts.rs_file) - reduced = all_smir.reduce_to(opts.start_symbol) - _LOGGER.info(f'Reduced items table size from {len(all_smir.items)} to {len(reduced.items)}.') - - # produce a KMIR object with a compiled module for the program - - kmir = KMIR.from_kompiled_kore(reduced, symbolic=True, bug_report=opts.bug_report) # TODO use proof dir/label! - - # run a modified prove_rs (inlined here) with this - label = str(opts.rs_file.stem) + '.' + opts.start_symbol - if not opts.reload and opts.proof_dir is not None and APRProof.proof_data_exists(label, opts.proof_dir): - _LOGGER.info(f'Reading proof from disc: {opts.proof_dir}, {label}') - apr_proof = APRProof.read_proof_data(opts.proof_dir, label) - else: - _LOGGER.info(f'Constructing initial proof: {label}') - smir_info = SMIRInfo.from_file(opts.rs_file) - - apr_proof = kmir.apr_proof_from_smir(label, smir_info, start_symbol=opts.start_symbol, proof_dir=opts.proof_dir) - # if apr_proof.proof_dir is not None and (apr_proof.proof_dir / apr_proof.id).is_dir(): - # smir_info.dump(apr_proof.proof_dir / apr_proof.id / 'smir.json') - if not apr_proof.passed: - with kmir.kcfg_explore(label) as kcfg_explore: - prover = APRProver(kcfg_explore, execute_depth=opts.max_depth) - prover.advance_proof(apr_proof, max_iterations=opts.max_iterations) - - print(str(apr_proof.summary)) - if not apr_proof.passed: + proof = KMIR.prove_rs(opts) + print(str(proof.summary)) + if not proof.passed: sys.exit(1) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index cc38910de..4e73dc883 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -59,7 +59,7 @@ def __init__( @staticmethod def from_kompiled_kore( - smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = True, target_dir: str = 'out-kore' + smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = True, target_dir: str | None = None ) -> KMIR: kmir = KMIR(HASKELL_DEF_DIR) @@ -81,7 +81,7 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat with open(output_file, 'w') as f: f.writelines(new_lines) - target_path = Path(target_dir) + target_path = Path(target_dir) if target_dir is not None else Path('out-kore') # TODO if target dir exists and contains files, check file dates (definition files and interpreter) # to decide whether or not to recompile. For now we always recompile. target_path.mkdir(parents=True, exist_ok=True) @@ -337,7 +337,7 @@ def apr_proof_from_smir( target_node = kcfg.create_node(rhs) return APRProof(id, kcfg, [], init_node.id, target_node.id, {}, proof_dir=proof_dir) - def prove_rs(self, opts: ProveRSOpts) -> APRProof: + def prove_rss(self, opts: ProveRSOpts) -> APRProof: if not opts.rs_file.is_file(): raise ValueError(f'Rust spec file does not exist: {opts.rs_file}') @@ -367,6 +367,49 @@ def prove_rs(self, opts: ProveRSOpts) -> APRProof: prover.advance_proof(apr_proof, max_iterations=opts.max_iterations) return apr_proof + @staticmethod + def prove_rs(opts: ProveRSOpts) -> APRProof: + if not opts.rs_file.is_file(): + raise ValueError(f'Rust spec file does not exist: {opts.rs_file}') + + label = str(opts.rs_file.stem) + '.' + opts.start_symbol + if not opts.reload and opts.proof_dir is not None and APRProof.proof_data_exists(label, opts.proof_dir): + _LOGGER.info(f'Reading proof from disc: {opts.proof_dir}, {label}') + apr_proof = APRProof.read_proof_data(opts.proof_dir, label) + # TODO avoid compilation, use compilation output from the proof directory + # kmir = KMIR(opts.proof_dir / label / haskell, opts.proof_dir / label / llvm-library) if they exist + # or else implement this in the `from_kompiled_kore` constructor + target_path = opts.proof_dir / label + smir_info = SMIRInfo.from_file(target_path / 'smir.json') + kmir = KMIR.from_kompiled_kore( + smir_info, symbolic=True, bug_report=opts.bug_report, target_dir=str(target_path) + ) + else: + _LOGGER.info(f'Constructing initial proof: {label}') + if opts.smir: + smir_info = SMIRInfo.from_file(opts.rs_file) + else: + smir_info = SMIRInfo(cargo_get_smir_json(opts.rs_file, save_smir=opts.save_smir)) + + smir_info = smir_info.reduce_to(opts.start_symbol) + _LOGGER.info(f'Reduced items table size {len(smir_info.items)}') + + target_dir = str(opts.proof_dir / label) if opts.proof_dir is not None else None + kmir = KMIR.from_kompiled_kore(smir_info, symbolic=True, bug_report=opts.bug_report, target_dir=target_dir) + + apr_proof = kmir.apr_proof_from_smir( + label, smir_info, start_symbol=opts.start_symbol, proof_dir=opts.proof_dir + ) + if apr_proof.proof_dir is not None and (apr_proof.proof_dir / apr_proof.id).is_dir(): + smir_info.dump(apr_proof.proof_dir / apr_proof.id / 'smir.json') + if apr_proof.passed: + return apr_proof + + with kmir.kcfg_explore(label) as kcfg_explore: + prover = APRProver(kcfg_explore, execute_depth=opts.max_depth) + prover.advance_proof(apr_proof, max_iterations=opts.max_iterations) + return apr_proof + class KMIRSemantics(DefaultSemantics): def is_terminal(self, cterm: CTerm) -> bool: From e59b649ab74966bc995b722218932fe763ecd7b7 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 16 Oct 2025 19:39:35 +1100 Subject: [PATCH 30/47] Remove default dir out-kore, implement non-symbolic compilation path --- docs/notes-compile-to-k.md | 62 ++++++++++++++++ kmir/src/kmir/__main__.py | 12 +-- kmir/src/kmir/kmir.py | 147 ++++++++++++++++++++++--------------- 3 files changed, 155 insertions(+), 66 deletions(-) diff --git a/docs/notes-compile-to-k.md b/docs/notes-compile-to-k.md index cfe9b2918..8cac4e999 100644 --- a/docs/notes-compile-to-k.md +++ b/docs/notes-compile-to-k.md @@ -74,3 +74,65 @@ The configuration is executed with the compiled module. - need to extend `pyk` with a `kast` pretty-printer. The `kast` format specification is somewhat tricky and incomplete, as I was told. Work-around 1 appears to work, code developed on new branch extending the other. + +# Technical work to prepare the change + +## Integration tests +- [ ] `test_decode_value`: need to replace type map by definition contents (non-python tests only) + - pre-compile an LLVM interpreter with the types fixed to a standard table (covering all test cases) + - alternative is compiling once per test, bad. +- [ ] `exec_smir`: needs an implementation of `kmir run` for concrete execution, LLVM and Haskell + - KMIR.run_smir should just be a static method, preparing the definition beforehand + - BTW the _binary_ format is the problem for `kmir run` with `--backend haskell` +- [ ] `prove_rs`: + - [X] turned `KMIR.prove_rs` into a static method, preparing the definition beforehand + - [ ] proof failures: + ``` + FAILED test_prove_termination[Ref-weirdRefs] - assert False + FAILED test_prove_termination[Array-indexing] - assert False + FAILED test_prove_termination[Array-index-writes] - assert False + FAILED test_prove_termination[Array-inlined] - assert False + FAILED test_prove_termination[Alloc-array-const-compare] - assert False + FAILED test_prove_termination[niche-enum] - assert False + FAILED test_prove_termination[main-a-b-c] - assert False + FAILED test_prove_termination[assign-cast] - assert False + FAILED test_prove_termination[struct-field-update] - assert False + FAILED test_prove_termination[arithmetic] - assert False + FAILED test_prove_termination[arithmetic-unchecked] - assert False + FAILED test_prove_termination[unary] - assert False + FAILED test_prove_termination[Ref-simple] - assert False + FAILED test_prove_termination[Ref-refAsArg] - assert False + FAILED test_prove_termination[Ref-doubleRef] - assert False + ``` + - `test_prove_termination` for all failing tests. + - uses `gen-spec` and `prove-raw` + - should instead use `prove-rs --smir` + + - [ ] compilation failures (non-deterministic): + ``` + FAILED test_prove_rs[double-ref-deref] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... + FAILED test_prove_rs[array_nest_compare] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... + FAILED test_prove_rs[branch-negative] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... + FAILED test_prove_rs[bitwise-not-shift] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... + FAILED test_prove_rs[pointer-cast] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... + ``` + - caused by concurrent access to the same files. Need to compile into temp directory or proof-dir + - [ ] Unexpected output: Probably always an additional step to an unknown function + ``` + FAILED kmir/src/tests/integration/test_cli.py::test_cli_show_statistics_and_leaves - AssertionError: The actual output does not match the expected output: + FAILED test_prove_rs[symbolic-structs-fail] - AssertionError: The actual output does not match the expected output: + FAILED test_crate_examples[single-lib] - AssertionError: The actual output does not match the expected output: + FAILED test_prove_rs[symbolic-args-fail] - AssertionError: The actual output does not match the expected output: + FAILED test_prove_rs[pointer-cast-length-test-fail] - AssertionError: The actual output does not match the expected output: + ``` + - could extend the function lookup and provide the symbol name for functions not present in the items table. + - or just leave things as they are, not much difference to before (getting stuck one step later now) +- [ ] `test_prove`: single test with a checked-in spec file. Delete this test! + +1. use temp directory or proof directory for prove-rs DONE +2. do not copy the bin file for HS backend DONE +3. implement LLVM backend compilation for concrete execution +4. implement KMIR.run_rs static (with the above) + - or rather factor out the compilation method and revert prove_rs change +5. delete `test_prove` test +6. re-test (without `test_decode_value`) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 99f7aae80..dd70281c2 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -67,14 +67,10 @@ def _kmir_run_x(opts: RunOpts) -> None: # produce and compile a module and re-load a KMIR object with it smir_info = SMIRInfo.from_file(Path(opts.file)) - # with tempfile.TemporaryDirectory() as work_dir: - # kmir = KMIR.from_kompiled_via_kore(smir_info, symbolic=opts.haskell_backend, target_dir=work_dir) - # result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) - # print(kmir.kore_to_pretty(result)) - - kmir = KMIR.from_kompiled_kore(smir_info, symbolic=opts.haskell_backend) # leaves out-kore behind - result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) - print(kmir.kore_to_pretty(result)) + with tempfile.TemporaryDirectory() as work_dir: + kmir = KMIR.from_kompiled_kore(smir_info, symbolic=opts.haskell_backend, target_dir=work_dir) + result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) + print(kmir.kore_to_pretty(result)) def _kmir_gen_mod(opts: GenSpecOpts) -> None: diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 4e73dc883..1f20dff4f 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -2,6 +2,7 @@ import logging import shutil +import tempfile from contextlib import contextmanager from functools import cached_property from pathlib import Path @@ -59,7 +60,7 @@ def __init__( @staticmethod def from_kompiled_kore( - smir_info: SMIRInfo, bug_report: Path | None = None, symbolic: bool = True, target_dir: str | None = None + smir_info: SMIRInfo, target_dir: str, bug_report: Path | None = None, symbolic: bool = True ) -> KMIR: kmir = KMIR(HASKELL_DEF_DIR) @@ -81,7 +82,7 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat with open(output_file, 'w') as f: f.writelines(new_lines) - target_path = Path(target_dir) if target_dir is not None else Path('out-kore') + target_path = Path(target_dir) # TODO if target dir exists and contains files, check file dates (definition files and interpreter) # to decide whether or not to recompile. For now we always recompile. target_path.mkdir(parents=True, exist_ok=True) @@ -89,63 +90,90 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat rules = kmir.make_kore_rules(smir_info) _LOGGER.info(f'Generated {len(rules)} function equations to add to `definition.kore') - if not symbolic: - raise Exception('Non-symbolic (LLVM) kore-module not implemented') - # Create output directories target_llvm_path = target_path / 'llvm-library' target_llvmdt_path = target_llvm_path / 'dt' target_hs_path = target_path / 'haskell' - _LOGGER.info(f'Creating directories {target_llvmdt_path} and {target_hs_path}') - target_llvmdt_path.mkdir(parents=True, exist_ok=True) - target_hs_path.mkdir(parents=True, exist_ok=True) - - # Process LLVM definition - _LOGGER.info('Writing LLVM definition file') - llvm_def_file = LLVM_LIB_DIR / 'definition.kore' - llvm_def_output = target_llvm_path / 'definition.kore' - _insert_rules_and_write(llvm_def_file, rules, llvm_def_output) - - # Run llvm-kompile-matching and llvm-kompile for LLVM - # TODO use pyk to do this if possible (subprocess wrapper, maybe llvm-kompile itself?) - # TODO align compilation options to what we use in plugin.py - import subprocess + if symbolic: + _LOGGER.info(f'Creating directories {target_llvmdt_path} and {target_hs_path}') + target_llvmdt_path.mkdir(parents=True, exist_ok=True) + target_hs_path.mkdir(parents=True, exist_ok=True) + + # Process LLVM definition + _LOGGER.info('Writing LLVM definition file') + llvm_def_file = LLVM_LIB_DIR / 'definition.kore' + llvm_def_output = target_llvm_path / 'definition.kore' + _insert_rules_and_write(llvm_def_file, rules, llvm_def_output) + + # Run llvm-kompile-matching and llvm-kompile for LLVM + # TODO use pyk to do this if possible (subprocess wrapper, maybe llvm-kompile itself?) + # TODO align compilation options to what we use in plugin.py + import subprocess + + _LOGGER.info('Running llvm-kompile-matching') + subprocess.run( + ['llvm-kompile-matching', str(llvm_def_output), 'qbaL', str(target_llvmdt_path), '1/2'], check=True + ) + _LOGGER.info('Running llvm-kompile') + subprocess.run( + [ + 'llvm-kompile', + str(llvm_def_output), + str(target_llvmdt_path), + 'c', + '-O2', + '--', + '-o', + target_llvm_path / 'interpreter', + ], + check=True, + ) - _LOGGER.info('Running llvm-kompile-matching') - subprocess.run( - ['llvm-kompile-matching', str(llvm_def_output), 'qbaL', str(target_llvmdt_path), '1/2'], check=True - ) - _LOGGER.info('Running llvm-kompile') - subprocess.run( - [ - 'llvm-kompile', - str(llvm_def_output), - str(target_llvmdt_path), - 'c', - '-O2', - '--', - '-o', - target_llvm_path / 'interpreter', - ], - check=True, - ) + # Process Haskell definition + _LOGGER.info('Writing Haskell definition file') + hs_def_file = HASKELL_DEF_DIR / 'definition.kore' + _insert_rules_and_write(hs_def_file, rules, target_hs_path / 'definition.kore') + + # Copy all files except definition.kore and binary from HASKELL_DEF_DIR to out/hs + _LOGGER.info('Copying other artefacts into HS output directory') + for file_path in HASKELL_DEF_DIR.iterdir(): + if file_path.name != 'definition.kore' and file_path.name != 'haskellDefinition.bin': + if file_path.is_file(): + shutil.copy2(file_path, target_hs_path / file_path.name) + elif file_path.is_dir(): + shutil.copytree(file_path, target_hs_path / file_path.name, dirs_exist_ok=True) + return KMIR(target_hs_path, target_llvm_path, bug_report=bug_report) + else: + import subprocess - # Process Haskell definition - _LOGGER.info('Writing Haskell definition file') - hs_def_file = HASKELL_DEF_DIR / 'definition.kore' - _insert_rules_and_write(hs_def_file, rules, target_hs_path / 'definition.kore') + _LOGGER.info(f'Creating directory {target_llvmdt_path}') + target_llvmdt_path.mkdir(parents=True, exist_ok=True) - # Copy all files except definition.kore from HASKELL_DEF_DIR to out/hs - _LOGGER.info('Copying other artefacts into HS output directory') - for file_path in HASKELL_DEF_DIR.iterdir(): - if file_path.name != 'definition.kore': - if file_path.is_file(): - shutil.copy2(file_path, target_hs_path / file_path.name) - elif file_path.is_dir(): - shutil.copytree(file_path, target_hs_path / file_path.name, dirs_exist_ok=True) + # Process LLVM definition + _LOGGER.info('Writing LLVM definition file') + llvm_def_file = LLVM_LIB_DIR / 'definition.kore' + llvm_def_output = target_llvm_path / 'definition.kore' + _insert_rules_and_write(llvm_def_file, rules, llvm_def_output) - return KMIR(target_hs_path, target_llvm_path, bug_report=bug_report) + _LOGGER.info('Running llvm-kompile-matching') + subprocess.run( + ['llvm-kompile-matching', str(llvm_def_output), 'qbaL', str(target_llvmdt_path), '1/2'], check=True + ) + _LOGGER.info('Running llvm-kompile') + subprocess.run( + [ + 'llvm-kompile', + str(llvm_def_output), + str(target_llvmdt_path), + '-O2', + '--', + '-o', + target_llvm_path / 'interpreter', + ], + check=True, + ) + return KMIR(target_llvm_path, None, bug_report=bug_report) class Symbols: END_PROGRAM: Final = KApply('#EndProgram_KMIR-CONTROL-FLOW_KItem') @@ -370,7 +398,7 @@ def prove_rss(self, opts: ProveRSOpts) -> APRProof: @staticmethod def prove_rs(opts: ProveRSOpts) -> APRProof: if not opts.rs_file.is_file(): - raise ValueError(f'Rust spec file does not exist: {opts.rs_file}') + raise ValueError(f'Input file does not exist: {opts.rs_file}') label = str(opts.rs_file.stem) + '.' + opts.start_symbol if not opts.reload and opts.proof_dir is not None and APRProof.proof_data_exists(label, opts.proof_dir): @@ -394,14 +422,17 @@ def prove_rs(opts: ProveRSOpts) -> APRProof: smir_info = smir_info.reduce_to(opts.start_symbol) _LOGGER.info(f'Reduced items table size {len(smir_info.items)}') - target_dir = str(opts.proof_dir / label) if opts.proof_dir is not None else None - kmir = KMIR.from_kompiled_kore(smir_info, symbolic=True, bug_report=opts.bug_report, target_dir=target_dir) + with tempfile.TemporaryDirectory() as tmp_dir: + target_dir = str(opts.proof_dir / label) if opts.proof_dir is not None else tmp_dir + kmir = KMIR.from_kompiled_kore( + smir_info, symbolic=True, bug_report=opts.bug_report, target_dir=target_dir + ) - apr_proof = kmir.apr_proof_from_smir( - label, smir_info, start_symbol=opts.start_symbol, proof_dir=opts.proof_dir - ) - if apr_proof.proof_dir is not None and (apr_proof.proof_dir / apr_proof.id).is_dir(): - smir_info.dump(apr_proof.proof_dir / apr_proof.id / 'smir.json') + apr_proof = kmir.apr_proof_from_smir( + label, smir_info, start_symbol=opts.start_symbol, proof_dir=opts.proof_dir + ) + if apr_proof.proof_dir is not None and (apr_proof.proof_dir / label).is_dir(): + smir_info.dump(apr_proof.proof_dir / apr_proof.id / 'smir.json') if apr_proof.passed: return apr_proof From 00ccba19f38799eb3cd0d842841615a08ef3db2f Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 16 Oct 2025 19:50:00 +1100 Subject: [PATCH 31/47] Remove run-x, moving code to `_kmir_run` --- docs/notes-compile-to-k.md | 2 +- kmir/src/kmir/__main__.py | 30 +----------------------------- 2 files changed, 2 insertions(+), 30 deletions(-) diff --git a/docs/notes-compile-to-k.md b/docs/notes-compile-to-k.md index 8cac4e999..186fddc15 100644 --- a/docs/notes-compile-to-k.md +++ b/docs/notes-compile-to-k.md @@ -131,7 +131,7 @@ The configuration is executed with the compiled module. 1. use temp directory or proof directory for prove-rs DONE 2. do not copy the bin file for HS backend DONE -3. implement LLVM backend compilation for concrete execution +3. implement LLVM backend compilation for concrete execution DONE 4. implement KMIR.run_rs static (with the above) - or rather factor out the compilation method and revert prove_rs change 5. delete `test_prove` test diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index dd70281c2..5b825e1a6 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -58,15 +58,6 @@ def _kmir_run(opts: RunOpts) -> None: # target = opts.bin if opts.bin else cargo.default_target smir_info = cargo.smir_for_project(clean=False) - result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) - print(kmir.kore_to_pretty(result)) - - -def _kmir_run_x(opts: RunOpts) -> None: - assert opts.file is not None - # produce and compile a module and re-load a KMIR object with it - smir_info = SMIRInfo.from_file(Path(opts.file)) - with tempfile.TemporaryDirectory() as work_dir: kmir = KMIR.from_kompiled_kore(smir_info, symbolic=opts.haskell_backend, target_dir=work_dir) result = kmir.run_smir(smir_info, start_symbol=opts.start_symbol, depth=opts.depth) @@ -243,10 +234,7 @@ def kmir(args: Sequence[str]) -> None: logging.basicConfig(level=_loglevel(ns), format=_LOG_FORMAT) match opts: case RunOpts(): - if ns.command == 'run-x': - _kmir_run_x(opts) - else: - _kmir_run(opts) + _kmir_run(opts) case GenSpecOpts(): _kmir_gen_mod(opts) case InfoOpts(): @@ -286,14 +274,6 @@ def _arg_parser() -> ArgumentParser: ) run_parser.add_argument('--haskell-backend', action='store_true', help='Run with the haskell backend') - run_parser = command_parser.add_parser('run-x', help='run stable MIR programs', parents=[kcli_args.logging_args]) - run_parser.add_argument('--file', metavar='SMIR', help='SMIR json file to execute') - run_parser.add_argument('--depth', type=int, metavar='DEPTH', help='Depth to execute') - run_parser.add_argument( - '--start-symbol', type=str, metavar='SYMBOL', default='main', help='Symbol name to begin execution from' - ) - run_parser.add_argument('--symbolic', action='store_true', help='Run with the haskell backend') - gen_spec_parser = command_parser.add_parser( 'gen-spec', help='Generate a k spec from a SMIR json', parents=[kcli_args.logging_args] ) @@ -450,14 +430,6 @@ def _parse_args(ns: Namespace) -> KMirOpts: start_symbol=ns.start_symbol, haskell_backend=ns.haskell_backend, ) - case 'run-x': - return RunOpts( - bin=None, - file=ns.file, - depth=ns.depth, - start_symbol=ns.start_symbol, - haskell_backend=ns.symbolic, - ) case 'gen-spec': return GenSpecOpts(input_file=Path(ns.input_file), output_file=ns.output_file, start_symbol=ns.start_symbol) case 'info': From 8320c06a45bc74ea3a62c39b7f5da06708031548 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 16 Oct 2025 20:43:52 +1100 Subject: [PATCH 32/47] fix llvm execution --- kmir/src/kmir/__main__.py | 2 +- kmir/src/kmir/kmir.py | 9 ++- .../exec-smir/main-a-b-c/main-a-b-c.run.state | 30 ------- .../exec-smir/main-a-b-c/main-a-b-c.state | 30 ------- .../exec-smir/pointers/ref_ptr_cases.state | 81 ------------------- .../src/tests/integration/test_integration.py | 14 ++-- 6 files changed, 16 insertions(+), 150 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 5b825e1a6..824935afc 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -234,7 +234,7 @@ def kmir(args: Sequence[str]) -> None: logging.basicConfig(level=_loglevel(ns), format=_LOG_FORMAT) match opts: case RunOpts(): - _kmir_run(opts) + _kmir_run(opts) case GenSpecOpts(): _kmir_gen_mod(opts) case InfoOpts(): diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 1f20dff4f..92c6fadcc 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -24,7 +24,7 @@ from pyk.proof.reachability import APRProof, APRProver from pyk.proof.show import APRProofNodePrinter -from .build import HASKELL_DEF_DIR, LLVM_LIB_DIR +from .build import HASKELL_DEF_DIR, LLVM_DEF_DIR, LLVM_LIB_DIR from .cargo import cargo_get_smir_json from .kast import mk_call_terminator, symbolic_locals from .kparse import KParse @@ -166,6 +166,7 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat 'llvm-kompile', str(llvm_def_output), str(target_llvmdt_path), + 'main', '-O2', '--', '-o', @@ -173,6 +174,12 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat ], check=True, ) + # for file in ['mainModule.txt', 'mainSyntaxModule.txt', 'backend.txt', 'compiled.json', 'scanner']: + blacklist = ['definition.kore', 'interpreter', 'dt'] + to_copy = [file.name for file in LLVM_DEF_DIR.iterdir() if file.name not in blacklist] + for file in to_copy: + _LOGGER.info(f'Copying file {file}') + shutil.copy2(LLVM_DEF_DIR / file, target_llvm_path / file) return KMIR(target_llvm_path, None, bug_report=bug_report) class Symbols: diff --git a/kmir/src/tests/integration/data/exec-smir/main-a-b-c/main-a-b-c.run.state b/kmir/src/tests/integration/data/exec-smir/main-a-b-c/main-a-b-c.run.state index fe1a84c21..596624cb4 100644 --- a/kmir/src/tests/integration/data/exec-smir/main-a-b-c/main-a-b-c.run.state +++ b/kmir/src/tests/integration/data/exec-smir/main-a-b-c/main-a-b-c.run.state @@ -32,34 +32,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 25 ) |-> monoItemFn (... name: symbol ( "a" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 55 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 26 ) , id: mirConstId ( 10 ) ) ) ) , args: .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 56 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 57 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 58 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 59 ) ) ) ) - ty ( 26 ) |-> monoItemFn (... name: symbol ( "b" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 11 ) ) ) ) , args: .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 62 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 63 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 64 ) ) ) ) - ty ( 27 ) |-> monoItemFn (... name: symbol ( "c" ) , id: defId ( 9 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 65 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 66 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 67 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 51 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 52 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 53 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 54 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 28 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 29 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 21 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 30 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 13 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 11 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 29 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 30 ) |-> typeInfoVoidType - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/main-a-b-c/main-a-b-c.state b/kmir/src/tests/integration/data/exec-smir/main-a-b-c/main-a-b-c.state index 7ce94c6d2..a8b20314b 100644 --- a/kmir/src/tests/integration/data/exec-smir/main-a-b-c/main-a-b-c.state +++ b/kmir/src/tests/integration/data/exec-smir/main-a-b-c/main-a-b-c.state @@ -34,34 +34,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( 0 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionContinue , ListItem ( newLocal ( ty ( 1 ) , mutabilityMut ) ) ) ) ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 25 ) |-> monoItemFn (... name: symbol ( "a" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 55 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 26 ) , id: mirConstId ( 10 ) ) ) ) , args: .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 56 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 57 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 58 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 59 ) ) ) ) - ty ( 26 ) |-> monoItemFn (... name: symbol ( "b" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 11 ) ) ) ) , args: .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 62 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 63 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 64 ) ) ) ) - ty ( 27 ) |-> monoItemFn (... name: symbol ( "c" ) , id: defId ( 9 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 65 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 66 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 67 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 51 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 52 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 53 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 54 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 28 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 29 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 21 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 30 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 13 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 11 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 29 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 30 ) |-> typeInfoVoidType - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/pointers/ref_ptr_cases.state b/kmir/src/tests/integration/data/exec-smir/pointers/ref_ptr_cases.state index c06cee13f..06612f321 100644 --- a/kmir/src/tests/integration/data/exec-smir/pointers/ref_ptr_cases.state +++ b/kmir/src/tests/integration/data/exec-smir/pointers/ref_ptr_cases.state @@ -39,85 +39,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 5 ) |-> Integer ( 1 , 8 , false ) - allocId ( 6 ) |-> StringVal ( "assertion failed: (first as *const u8) == (first_again as *const u8)" ) - allocId ( 7 ) |-> StringVal ( "assertion failed: (first as *const u8) != (second as *const u8)" ) - allocId ( 8 ) |-> StringVal ( "assertion failed: (&left as *const i32) != (&right as *const i32)" ) - allocId ( 9 ) |-> StringVal ( "assertion failed: (first as *const i32) == (second as *const i32)" ) - allocId ( 10 ) |-> StringVal ( "assertion failed: std::ptr::eq(first, second)" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 42 ) |-> monoItemFn (... name: symbol ( "std::ptr::eq::" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 76 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 75 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 35 ) , span: span ( 77 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 78 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 36 ) , span: span ( 79 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 78 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 79 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 80 ) ) ) ) - ty ( 49 ) |-> monoItemFn (... name: symbol ( "core::panicking::assert_failed::" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 83 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 83 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 38 ) ) ) , span: span ( 83 ) ) statement (... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 84 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 84 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 38 ) ) ) , span: span ( 84 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 81 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 37 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 82 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 39 ) , span: span ( 85 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 40 ) , span: span ( 86 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 87 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 88 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 41 ) , span: span ( 89 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 38 ) , span: span ( 83 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 38 ) , span: span ( 84 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 84 ) , mut: mutabilityNot ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 86 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "left" ) , sourceInfo: sourceInfo (... span: span ( 87 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "right" ) , sourceInfo: sourceInfo (... span: span ( 88 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo (... name: symbol ( "args" ) , sourceInfo: sourceInfo (... span: span ( 89 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 90 ) ) ) ) - ty ( 54 ) |-> monoItemFn (... name: symbol ( "aliasing_refs_have_same_pointer" ) , id: defId ( 10 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 97 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 16 ) ) ) ) ) ) , span: span ( 97 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 98 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 99 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 100 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 101 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 96 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 96 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 104 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 105 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 102 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 42 ) , id: mirConstId ( 17 ) ) ) ) , args: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 103 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 106 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 43 ) , id: mirConstId ( 18 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00A\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 44 ) , id: mirConstId ( 19 ) ) ) ) .Operands , destination: place (... local: local ( 7 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 106 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 103 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 107 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 108 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 43 ) , id: mirConstId ( 18 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00-\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 44 ) , id: mirConstId ( 20 ) ) ) ) .Operands , destination: place (... local: local ( 11 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 108 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 109 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 110 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 45 ) , span: span ( 111 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 45 ) , span: span ( 112 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 35 ) , span: span ( 96 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 113 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 114 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 103 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 104 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 105 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 108 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "value" ) , sourceInfo: sourceInfo (... span: span ( 110 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "first" ) , sourceInfo: sourceInfo (... span: span ( 111 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "second" ) , sourceInfo: sourceInfo (... span: span ( 112 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 115 ) ) ) ) - ty ( 55 ) |-> monoItemFn (... name: symbol ( "distinct_locals_have_distinct_pointers" ) , id: defId ( 11 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 117 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\n\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 117 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 118 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\n\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 118 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 119 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 5 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 119 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 120 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 7 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 120 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 116 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 116 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 121 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 122 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 43 ) , id: mirConstId ( 18 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00A\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 44 ) , id: mirConstId ( 22 ) ) ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 122 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 123 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 124 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 16 ) , span: span ( 125 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 35 ) , span: span ( 116 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 126 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 45 ) , span: span ( 119 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 36 ) , span: span ( 127 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 45 ) , span: span ( 120 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 39 ) , span: span ( 122 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "left" ) , sourceInfo: sourceInfo (... span: span ( 124 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right" ) , sourceInfo: sourceInfo (... span: span ( 125 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 128 ) ) ) ) - ty ( 56 ) |-> monoItemFn (... name: symbol ( "array_element_addresses_are_distinct" ) , id: defId ( 12 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindArray ( ty ( 9 ) ) , operandConstant ( constOperand (... span: span ( 130 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x03" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 23 ) ) ) ) operandConstant ( constOperand (... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x05" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 24 ) ) ) ) operandConstant ( constOperand (... span: span ( 132 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x07" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 25 ) ) ) ) .Operands ) ) , span: span ( 133 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 134 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 46 ) , id: mirConstId ( 26 ) ) ) ) ) ) , span: span ( 134 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 46 ) , id: mirConstId ( 27 ) ) ) ) ) ) , span: span ( 129 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 129 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 129 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) , span: span ( 136 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 137 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 46 ) , id: mirConstId ( 26 ) ) ) ) ) ) , span: span ( 137 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 46 ) , id: mirConstId ( 27 ) ) ) ) ) ) , span: span ( 135 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 135 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 2 ) , unwind: unwindActionContinue ) , span: span ( 135 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 7 ) ) .ProjectionElems ) ) ) , span: span ( 139 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 140 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 46 ) , id: mirConstId ( 28 ) ) ) ) ) ) , span: span ( 140 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 46 ) , id: mirConstId ( 27 ) ) ) ) ) ) , span: span ( 138 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 138 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionContinue ) , span: span ( 138 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 11 ) ) .ProjectionElems ) ) ) , span: span ( 142 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 143 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 144 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 141 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 141 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 146 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 10 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place (... local: local ( 19 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 20 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 145 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 18 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 7 ) ) .Branches , otherwise: basicBlockIdx ( 6 ) ) ) , span: span ( 145 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 148 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 43 ) , id: mirConstId ( 18 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00D\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 44 ) , id: mirConstId ( 29 ) ) ) ) .Operands , destination: place (... local: local ( 17 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 148 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 149 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 150 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 43 ) , id: mirConstId ( 18 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00?\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 4 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 44 ) , id: mirConstId ( 30 ) ) ) ) .Operands , destination: place (... local: local ( 21 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 150 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 151 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 47 ) , span: span ( 152 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 46 ) , span: span ( 134 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 46 ) , span: span ( 129 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 129 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 154 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 46 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 46 ) , span: span ( 135 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 135 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 155 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 46 ) , span: span ( 140 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 46 ) , span: span ( 138 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 138 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 141 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 48 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 48 ) , span: span ( 157 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 148 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 145 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 48 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 48 ) , span: span ( 159 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "items" ) , sourceInfo: sourceInfo (... span: span ( 152 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "first" ) , sourceInfo: sourceInfo (... span: span ( 153 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "first_again" ) , sourceInfo: sourceInfo (... span: span ( 154 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "second" ) , sourceInfo: sourceInfo (... span: span ( 155 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 160 ) ) ) ) - ty ( 57 ) |-> monoItemFn (... name: symbol ( "reborrow_mut_pointer_roundtrip" ) , id: defId ( 13 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 162 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 31 ) ) ) ) ) ) , span: span ( 162 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 163 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place (... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 163 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 164 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 32 ) ) ) ) ) ) , span: span ( 165 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 166 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 167 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 5 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 167 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 168 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 4 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 169 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 4 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 170 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 7 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 171 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 172 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 161 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 161 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 173 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 14 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 176 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 15 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 177 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 174 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 49 ) , id: mirConstId ( 34 ) ) ) ) , args: operandMove ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 13 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 175 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 178 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 179 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 51 ) , span: span ( 180 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 52 ) , span: span ( 163 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 53 ) , span: span ( 168 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 166 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 167 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 169 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 170 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 35 ) , span: span ( 161 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 171 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 172 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 40 ) , span: span ( 181 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 39 ) , span: span ( 175 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 41 ) , span: span ( 177 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "byte" ) , sourceInfo: sourceInfo (... span: span ( 179 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "ptr" ) , sourceInfo: sourceInfo (... span: span ( 180 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 169 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 170 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 181 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 182 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 16 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 183 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 54 ) , id: mirConstId ( 35 ) ) ) ) , args: .Operands , destination: place (... local: local ( 1 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 184 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 185 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 55 ) , id: mirConstId ( 36 ) ) ) ) , args: .Operands , destination: place (... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 186 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 187 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 56 ) , id: mirConstId ( 37 ) ) ) ) , args: .Operands , destination: place (... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 188 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 189 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 57 ) , id: mirConstId ( 38 ) ) ) ) , args: .Operands , destination: place (... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 190 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 191 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 192 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 1 ) , span: span ( 184 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 1 ) , span: span ( 186 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 1 ) , span: span ( 188 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 1 ) , span: span ( 190 ) , mut: mutabilityNot ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 193 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 86 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 48 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 28 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 39 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 43 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 41 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoEnumType (... name: "std::result::Result<(), std::fmt::Error>" , adtDef: adtDef ( 28 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 1 ) .Tys : ty ( 64 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 23 ) |-> typeInfoRefType ( ty ( 25 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 58 ) ) - ty ( 25 ) |-> typeInfoRefType ( ty ( 9 ) ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 31 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 33 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 34 ) |-> typeInfoPtrType ( ty ( 25 ) ) - ty ( 35 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 36 ) |-> typeInfoPtrType ( ty ( 16 ) ) - ty ( 38 ) |-> typeInfoRefType ( ty ( 87 ) ) - ty ( 39 ) |-> typeInfoVoidType - ty ( 40 ) |-> typeInfoEnumType (... name: "core::panicking::AssertKind" , adtDef: adtDef ( 14 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 41 ) |-> typeInfoEnumType (... name: "std::option::Option>" , adtDef: adtDef ( 15 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 50 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) ) ) - ty ( 44 ) |-> typeInfoRefType ( ty ( 66 ) ) - ty ( 45 ) |-> typeInfoRefType ( ty ( 16 ) ) - ty ( 46 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 47 ) |-> typeInfoArrayType ( ty ( 9 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 46 ) , allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 48 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 50 ) |-> typeInfoStructType ( "std::fmt::Arguments<'_>" , adtDef ( 46 ) , ty ( 69 ) ty ( 70 ) ty ( 71 ) .Tys ) - ty ( 51 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 52 ) |-> typeInfoRefType ( ty ( 9 ) ) - ty ( 53 ) |-> typeInfoTupleType ( ty ( 25 ) ty ( 25 ) .Tys ) - ty ( 58 ) |-> typeInfoStructType ( "std::fmt::Formatter<'_>" , adtDef ( 18 ) , ty ( 26 ) ty ( 59 ) ty ( 60 ) ty ( 61 ) ty ( 61 ) ty ( 62 ) .Tys ) - ty ( 59 ) |-> typeInfoPrimitiveType ( primTypeChar ) - ty ( 60 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Alignment" , adtDef: adtDef ( 25 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) discriminant ( 3 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 3 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 61 ) |-> typeInfoEnumType (... name: "std::option::Option" , adtDef: adtDef ( 15 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 46 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 62 ) |-> typeInfoRefType ( ty ( 63 ) ) - ty ( 64 ) |-> typeInfoStructType ( "std::fmt::Error" , adtDef ( 31 ) , .Tys ) - ty ( 65 ) |-> typeInfoRefType ( ty ( 67 ) ) - ty ( 66 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 67 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 36 ) , ty ( 44 ) ty ( 26 ) ty ( 26 ) .Tys ) - ty ( 69 ) |-> typeInfoRefType ( ty ( 72 ) ) - ty ( 70 ) |-> typeInfoEnumType (... name: "std::option::Option<&[core::fmt::rt::Placeholder]>" , adtDef: adtDef ( 15 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 73 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 71 ) |-> typeInfoRefType ( ty ( 77 ) ) - ty ( 72 ) |-> typeInfoArrayType ( ty ( 44 ) , noTyConst ) - ty ( 73 ) |-> typeInfoRefType ( ty ( 74 ) ) - ty ( 74 ) |-> typeInfoArrayType ( ty ( 75 ) , noTyConst ) - ty ( 75 ) |-> typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 50 ) , ty ( 46 ) ty ( 59 ) ty ( 60 ) ty ( 26 ) ty ( 76 ) ty ( 76 ) .Tys ) - ty ( 76 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Count" , adtDef: adtDef ( 57 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: ty ( 46 ) .Tys : ty ( 46 ) .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 77 ) |-> typeInfoArrayType ( ty ( 78 ) , noTyConst ) - ty ( 78 ) |-> typeInfoStructType ( "core::fmt::rt::Argument<'_>" , adtDef ( 60 ) , ty ( 79 ) .Tys ) - ty ( 79 ) |-> typeInfoEnumType (... name: "core::fmt::rt::ArgumentType<'_>" , adtDef: adtDef ( 62 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 80 ) ty ( 81 ) ty ( 82 ) .Tys : ty ( 46 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) machineSize (... numBits: 64 ) machineSize (... numBits: 128 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 80 ) |-> typeInfoStructType ( "std::ptr::NonNull<()>" , adtDef ( 67 ) , ty ( 83 ) .Tys ) - ty ( 82 ) |-> typeInfoStructType ( "std::marker::PhantomData<&()>" , adtDef ( 69 ) , .Tys ) - ty ( 83 ) |-> typeInfoPtrType ( ty ( 1 ) ) - ty ( 85 ) |-> typeInfoRefType ( ty ( 1 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/test_integration.py b/kmir/src/tests/integration/test_integration.py index f928a499e..e2de23b64 100644 --- a/kmir/src/tests/integration/test_integration.py +++ b/kmir/src/tests/integration/test_integration.py @@ -14,7 +14,6 @@ from pyk.proof.show import APRProofShow from kmir.__main__ import _kmir_gen_spec, _kmir_prove_raw -from kmir.build import HASKELL_DEF_DIR, LLVM_DEF_DIR from kmir.cargo import CargoProject from kmir.kmir import KMIR, KMIRAPRNodePrinter from kmir.options import GenSpecOpts, ProveRawOpts, ProveRSOpts, ShowOpts @@ -307,7 +306,7 @@ def test_crate_examples(main_crate: Path, kmir: KMIR, update_expected_output: bo ] -@pytest.mark.parametrize('kmir_backend', [KMIR(LLVM_DEF_DIR), KMIR(HASKELL_DEF_DIR)], ids=['llvm', 'haskell']) +@pytest.mark.parametrize('symbolic', [False, True], ids=['llvm', 'haskell']) @pytest.mark.parametrize( 'test_case', EXEC_DATA, @@ -315,17 +314,18 @@ def test_crate_examples(main_crate: Path, kmir: KMIR, update_expected_output: bo ) def test_exec_smir( test_case: tuple[str, Path, Path, int], - kmir_backend: KMIR, + symbolic: bool, update_expected_output: bool, ) -> None: (_, input_json, output_kast, depth) = test_case smir_info = SMIRInfo.from_file(input_json) - result = kmir_backend.run_smir(smir_info, depth=depth) - - result_pretty = kmir_backend.kore_to_pretty(result).rstrip() - assert_or_update_show_output(result_pretty, output_kast, update=update_expected_output) + with tempfile.TemporaryDirectory() as temp_dir: + kmir_backend = KMIR.from_kompiled_kore(smir_info, target_dir=temp_dir, symbolic=symbolic) + result = kmir_backend.run_smir(smir_info, depth=depth) + result_pretty = kmir_backend.kore_to_pretty(result).rstrip() + assert_or_update_show_output(result_pretty, output_kast, update=update_expected_output) @pytest.mark.parametrize( From 11a4869134bb84584f234e6d25c00290c097e0f7 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 16 Oct 2025 22:02:52 +1100 Subject: [PATCH 33/47] Remove all read-only data from the expectation files for exec-smir tests --- .../allocs/array_const_compare.state | 112 ------------- .../exec-smir/allocs/array_nest_compare.state | 140 ---------------- .../exec-smir/allocs/enum-two-refs-fail.state | 123 --------------- .../arithmetic-unchecked-runs.state | 40 ----- .../exec-smir/arithmetic/arithmetic.state | 33 ---- .../data/exec-smir/arithmetic/unary.state | 30 ---- .../exec-smir/arrays/array_indexing.state | 36 ----- .../data/exec-smir/arrays/array_inlined.state | 71 --------- .../data/exec-smir/arrays/array_write.state | 37 ----- .../data/exec-smir/assign-cast/assign-cast | Bin 0 -> 3980224 bytes .../exec-smir/assign-cast/assign-cast.state | 33 ---- .../data/exec-smir/assign-cast/assign-cast2 | Bin 0 -> 3980648 bytes .../call-with-args/main-a-b-with-int.state | 31 ---- .../data/exec-smir/enum/enum.state | 33 ---- .../data/exec-smir/intrinsic/blackbox.state | 70 -------- .../exec-smir/intrinsic/raw_eq_simple.state | 35 ---- .../exec-smir/niche-enum/niche-enum.state | 80 ---------- .../pointer-cast-length-test-fail.state | 51 ------ .../pointer-cast-length-test.smir.dot | 149 ++++++++++++++++++ .../exec-smir/references/array_elem_ref.state | 39 ----- .../exec-smir/references/doubleRef.smir.dot | 129 +++++++++++++++ .../data/exec-smir/references/doubleRef.state | 41 ----- .../exec-smir/references/mutableRef.state | 36 ----- .../exec-smir/references/refAsArg.smir.dot | 106 +++++++++++++ .../data/exec-smir/references/refAsArg.state | 36 ----- .../exec-smir/references/refAsArg2.smir.dot | 115 ++++++++++++++ .../data/exec-smir/references/refAsArg2.state | 37 ----- .../exec-smir/references/refReturned.smir.dot | 115 ++++++++++++++ .../exec-smir/references/refReturned.state | 37 ----- .../data/exec-smir/references/simple.smir.dot | 97 ++++++++++++ .../data/exec-smir/references/simple.state | 35 ---- .../data/exec-smir/references/weirdRefs.state | 46 ------ .../structs-tuples/struct_field_update.state | 31 ---- .../structs-tuples/structs-tuples.state | 32 ---- 34 files changed, 711 insertions(+), 1325 deletions(-) create mode 100755 kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast create mode 100755 kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast2 create mode 100644 kmir/src/tests/integration/data/exec-smir/pointers/pointer-cast-length-test.smir.dot create mode 100644 kmir/src/tests/integration/data/exec-smir/references/doubleRef.smir.dot create mode 100644 kmir/src/tests/integration/data/exec-smir/references/refAsArg.smir.dot create mode 100644 kmir/src/tests/integration/data/exec-smir/references/refAsArg2.smir.dot create mode 100644 kmir/src/tests/integration/data/exec-smir/references/refReturned.smir.dot create mode 100644 kmir/src/tests/integration/data/exec-smir/references/simple.smir.dot diff --git a/kmir/src/tests/integration/data/exec-smir/allocs/array_const_compare.state b/kmir/src/tests/integration/data/exec-smir/allocs/array_const_compare.state index 08978f759..3e8bde783 100644 --- a/kmir/src/tests/integration/data/exec-smir/allocs/array_const_compare.state +++ b/kmir/src/tests/integration/data/exec-smir/allocs/array_const_compare.state @@ -49,116 +49,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 0 ) |-> Range ( ListItem ( Integer ( 1 , 8 , true ) ) - ListItem ( Integer ( -2 , 8 , true ) ) - ListItem ( Integer ( 3 , 8 , true ) ) ) - allocId ( 1 ) |-> Range ( ListItem ( Integer ( 1 , 8 , true ) ) - ListItem ( Integer ( -2 , 8 , true ) ) - ListItem ( Integer ( 3 , 8 , true ) ) ) - allocId ( 3 ) |-> Range ( ListItem ( Integer ( 100 , 16 , false ) ) - ListItem ( Integer ( 200 , 16 , false ) ) - ListItem ( Integer ( 300 , 16 , false ) ) ) - allocId ( 4 ) |-> StringVal ( "assertion failed: compare_to_stored(U16_ARRAY)" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 64 ) |-> monoItemFn (... name: symbol ( ">::spec_eq" ) , id: defId ( 16 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 183 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 25 ) ) ) , span: span ( 183 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 181 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 72 ) , id: mirConstId ( 30 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 182 ) ) ) basicBlock (... statements: statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 185 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 184 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 186 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 187 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 188 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 183 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 187 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 188 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 189 ) ) ) ) - ty ( 65 ) |-> monoItemFn (... name: symbol ( ">::spec_eq" ) , id: defId ( 16 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 183 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 66 ) ) ) , span: span ( 183 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 181 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 71 ) , id: mirConstId ( 29 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 182 ) ) ) basicBlock (... statements: statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 185 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 184 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 186 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 66 ) , span: span ( 187 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 66 ) , span: span ( 188 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 66 ) , span: span ( 183 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 187 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 188 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 189 ) ) ) ) - ty ( 71 ) |-> IntrinsicFunction ( symbol ( "raw_eq" ) ) - ty ( 72 ) |-> IntrinsicFunction ( symbol ( "raw_eq" ) ) - ty ( 79 ) |-> monoItemFn (... name: symbol ( "std::array::equality::::eq" ) , id: defId ( 12 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 154 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 64 ) , id: mirConstId ( 25 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 155 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 156 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 157 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 158 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 159 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 158 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 159 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 160 ) ) ) ) - ty ( 80 ) |-> monoItemFn (... name: symbol ( "compare_to_stored" ) , id: defId ( 21 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 289 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 66 ) , id: mirConstId ( 43 ) ) ) ) ) ) , span: span ( 289 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 290 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 288 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 87 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 288 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 291 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 292 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 81 ) , span: span ( 293 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 66 ) , span: span ( 289 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 66 ) , span: span ( 290 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "array" ) , sourceInfo: sourceInfo (... span: span ( 293 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 294 ) ) ) ) - ty ( 82 ) |-> monoItemFn (... name: symbol ( "core::panicking::assert_failed::<[i8; 3], [i8; 3]>" ) , id: defId ( 13 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 163 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 163 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 52 ) ) ) , span: span ( 163 ) ) statement (... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 164 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 164 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 52 ) ) ) , span: span ( 164 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 161 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 67 ) , id: mirConstId ( 27 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 162 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 68 ) , span: span ( 165 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 69 ) , span: span ( 166 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 167 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 168 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 70 ) , span: span ( 169 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 52 ) , span: span ( 163 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 163 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 52 ) , span: span ( 164 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 164 ) , mut: mutabilityNot ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 166 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "left" ) , sourceInfo: sourceInfo (... span: span ( 167 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "right" ) , sourceInfo: sourceInfo (... span: span ( 168 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo (... name: symbol ( "args" ) , sourceInfo: sourceInfo (... span: span ( 169 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 170 ) ) ) ) - ty ( 87 ) |-> monoItemFn (... name: symbol ( "std::array::equality::::eq" ) , id: defId ( 12 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 154 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 65 ) , id: mirConstId ( 26 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 155 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 156 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 157 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 66 ) , span: span ( 158 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 66 ) , span: span ( 159 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 158 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 159 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 160 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 19 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 271 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 35 ) ) ) ) ) ) , span: span ( 271 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 272 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 36 ) ) ) ) ) ) , span: span ( 272 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 274 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 275 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 270 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 79 ) , id: mirConstId ( 34 ) ) ) ) , args: operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 270 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 270 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 276 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 80 ) , id: mirConstId ( 37 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 277 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"d\x00\xc8\x00,\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityNot ) ) , ty: ty ( 81 ) , id: mirConstId ( 38 ) ) ) ) .Operands , destination: place (... local: local ( 10 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 278 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 20 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 281 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 18 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 83 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 282 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 279 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 82 ) , id: mirConstId ( 39 ) ) ) ) , args: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 280 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 6 ) ) ) , span: span ( 278 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 283 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 40 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 85 ) , id: mirConstId ( 41 ) ) ) ) .Operands , destination: place (... local: local ( 11 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 283 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 284 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 285 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 86 ) , span: span ( 273 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 271 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 272 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 274 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 275 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 30 ) , span: span ( 270 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 69 ) , span: span ( 286 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 68 ) , span: span ( 280 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 70 ) , span: span ( 282 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 278 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 68 ) , span: span ( 283 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 274 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 275 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 286 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 287 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 98 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 99 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 35 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 68 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 62 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 60 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoEnumType (... name: "std::result::Result<(), std::fmt::Error>" , adtDef: adtDef ( 35 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 1 ) .Tys : ty ( 96 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 23 ) |-> typeInfoRefType ( ty ( 25 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 90 ) ) - ty ( 25 ) |-> typeInfoRefType ( ty ( 89 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 28 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 2 ) ) - ty ( 30 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 31 ) |-> typeInfoArrayType ( ty ( 2 ) , noTyConst ) - ty ( 32 ) |-> typeInfoPtrType ( ty ( 2 ) ) - ty ( 34 ) |-> typeInfoPtrType ( ty ( 2 ) ) - ty ( 36 ) |-> typeInfoStructType ( "std::marker::PhantomData<&i8>" , adtDef ( 48 ) , .Tys ) - ty ( 37 ) |-> typeInfoRefType ( ty ( 31 ) ) - ty ( 38 ) |-> typeInfoRefType ( ty ( 39 ) ) - ty ( 39 ) |-> typeInfoStructType ( "std::fmt::DebugList<'_, '_>" , adtDef ( 41 ) , ty ( 97 ) .Tys ) - ty ( 40 ) |-> typeInfoStructType ( "std::slice::Iter<'_, i8>" , adtDef ( 6 ) , ty ( 42 ) ty ( 32 ) ty ( 36 ) .Tys ) - ty ( 41 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 42 ) |-> typeInfoStructType ( "std::ptr::NonNull" , adtDef ( 5 ) , ty ( 32 ) .Tys ) - ty ( 43 ) |-> typeInfoStructType ( "std::ptr::NonNull<[i8]>" , adtDef ( 5 ) , ty ( 44 ) .Tys ) - ty ( 44 ) |-> typeInfoPtrType ( ty ( 31 ) ) - ty ( 45 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 52 ) |-> typeInfoRefType ( ty ( 101 ) ) - ty ( 53 ) |-> typeInfoEnumType (... name: "std::option::Option<&i8>" , adtDef: adtDef ( 18 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 28 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 54 ) |-> typeInfoRefType ( ty ( 40 ) ) - ty ( 56 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 58 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 59 ) |-> typeInfoPtrType ( ty ( 28 ) ) - ty ( 60 ) |-> typeInfoPtrType ( ty ( 25 ) ) - ty ( 62 ) |-> typeInfoRefType ( ty ( 37 ) ) - ty ( 63 ) |-> typeInfoStructType ( "std::ops::RangeFull" , adtDef ( 39 ) , .Tys ) - ty ( 66 ) |-> typeInfoRefType ( ty ( 81 ) ) - ty ( 68 ) |-> typeInfoVoidType - ty ( 69 ) |-> typeInfoEnumType (... name: "core::panicking::AssertKind" , adtDef: adtDef ( 20 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 70 ) |-> typeInfoEnumType (... name: "std::option::Option>" , adtDef: adtDef ( 18 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 83 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) ) ) - ty ( 73 ) |-> typeInfoPtrType ( ty ( 42 ) ) - ty ( 74 ) |-> typeInfoPtrType ( ty ( 41 ) ) - ty ( 75 ) |-> typeInfoPtrType ( ty ( 42 ) ) - ty ( 76 ) |-> typeInfoPtrType ( ty ( 32 ) ) - ty ( 77 ) |-> typeInfoRefType ( ty ( 42 ) ) - ty ( 78 ) |-> typeInfoPtrType ( ty ( 32 ) ) - ty ( 81 ) |-> typeInfoArrayType ( ty ( 100 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 41 ) , allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 83 ) |-> typeInfoStructType ( "std::fmt::Arguments<'_>" , adtDef ( 72 ) , ty ( 105 ) ty ( 106 ) ty ( 107 ) .Tys ) - ty ( 85 ) |-> typeInfoRefType ( ty ( 109 ) ) - ty ( 86 ) |-> typeInfoTupleType ( ty ( 25 ) ty ( 25 ) .Tys ) - ty ( 89 ) |-> typeInfoArrayType ( ty ( 2 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 41 ) , allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 90 ) |-> typeInfoStructType ( "std::fmt::Formatter<'_>" , adtDef ( 25 ) , ty ( 45 ) ty ( 91 ) ty ( 92 ) ty ( 93 ) ty ( 93 ) ty ( 94 ) .Tys ) - ty ( 91 ) |-> typeInfoPrimitiveType ( primTypeChar ) - ty ( 92 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Alignment" , adtDef: adtDef ( 32 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) discriminant ( 3 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 3 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 93 ) |-> typeInfoEnumType (... name: "std::option::Option" , adtDef: adtDef ( 18 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 41 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 94 ) |-> typeInfoRefType ( ty ( 95 ) ) - ty ( 96 ) |-> typeInfoStructType ( "std::fmt::Error" , adtDef ( 38 ) , .Tys ) - ty ( 97 ) |-> typeInfoStructType ( "core::fmt::builders::DebugInner<'_, '_>" , adtDef ( 43 ) , ty ( 24 ) ty ( 22 ) ty ( 30 ) .Tys ) - ty ( 99 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 100 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU16 ) ) - ty ( 104 ) |-> typeInfoRefType ( ty ( 123 ) ) - ty ( 105 ) |-> typeInfoRefType ( ty ( 108 ) ) - ty ( 106 ) |-> typeInfoEnumType (... name: "std::option::Option<&[core::fmt::rt::Placeholder]>" , adtDef: adtDef ( 18 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 110 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 107 ) |-> typeInfoRefType ( ty ( 114 ) ) - ty ( 108 ) |-> typeInfoArrayType ( ty ( 85 ) , noTyConst ) - ty ( 109 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 110 ) |-> typeInfoRefType ( ty ( 111 ) ) - ty ( 111 ) |-> typeInfoArrayType ( ty ( 112 ) , noTyConst ) - ty ( 112 ) |-> typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 76 ) , ty ( 41 ) ty ( 91 ) ty ( 92 ) ty ( 45 ) ty ( 113 ) ty ( 113 ) .Tys ) - ty ( 113 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Count" , adtDef: adtDef ( 83 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: ty ( 41 ) .Tys : ty ( 41 ) .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 114 ) |-> typeInfoArrayType ( ty ( 115 ) , noTyConst ) - ty ( 115 ) |-> typeInfoStructType ( "core::fmt::rt::Argument<'_>" , adtDef ( 86 ) , ty ( 116 ) .Tys ) - ty ( 116 ) |-> typeInfoEnumType (... name: "core::fmt::rt::ArgumentType<'_>" , adtDef: adtDef ( 88 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 117 ) ty ( 118 ) ty ( 119 ) .Tys : ty ( 41 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) machineSize (... numBits: 64 ) machineSize (... numBits: 128 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 117 ) |-> typeInfoStructType ( "std::ptr::NonNull<()>" , adtDef ( 5 ) , ty ( 120 ) .Tys ) - ty ( 119 ) |-> typeInfoStructType ( "std::marker::PhantomData<&()>" , adtDef ( 48 ) , .Tys ) - ty ( 120 ) |-> typeInfoPtrType ( ty ( 1 ) ) - ty ( 122 ) |-> typeInfoRefType ( ty ( 1 ) ) - ty ( 123 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 93 ) , ty ( 85 ) ty ( 45 ) ty ( 45 ) .Tys ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/allocs/array_nest_compare.state b/kmir/src/tests/integration/data/exec-smir/allocs/array_nest_compare.state index 768c366d7..a32dddf86 100644 --- a/kmir/src/tests/integration/data/exec-smir/allocs/array_nest_compare.state +++ b/kmir/src/tests/integration/data/exec-smir/allocs/array_nest_compare.state @@ -65,144 +65,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 0 ) |-> Range ( ListItem ( Range ( ListItem ( Integer ( 100 , 16 , false ) ) - ListItem ( Integer ( 200 , 16 , false ) ) - ListItem ( Integer ( 300 , 16 , false ) ) ) ) - ListItem ( Range ( ListItem ( Integer ( 100 , 16 , false ) ) - ListItem ( Integer ( 200 , 16 , false ) ) - ListItem ( Integer ( 300 , 16 , false ) ) ) ) ) - allocId ( 1 ) |-> Range ( ListItem ( Range ( ListItem ( Integer ( 100 , 16 , false ) ) - ListItem ( Integer ( 200 , 16 , false ) ) - ListItem ( Integer ( 300 , 16 , false ) ) ) ) - ListItem ( Range ( ListItem ( Integer ( 100 , 16 , false ) ) - ListItem ( Integer ( 200 , 16 , false ) ) - ListItem ( Integer ( 300 , 16 , false ) ) ) ) ) - allocId ( 4 ) |-> Range ( ListItem ( Range ( ListItem ( Integer ( 100 , 16 , false ) ) - ListItem ( Integer ( 200 , 16 , false ) ) - ListItem ( Integer ( 300 , 16 , false ) ) ) ) - ListItem ( Range ( ListItem ( Integer ( 100 , 16 , false ) ) - ListItem ( Integer ( 200 , 16 , false ) ) - ListItem ( Integer ( 300 , 16 , false ) ) ) ) ) - allocId ( 5 ) |-> StringVal ( "assertion failed: compare_to_stored(U16_ARRAY)" ) - allocId ( 6 ) |-> StringVal ( "assertion failed: compare_to_stored(NESTED[0])" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 81 ) |-> monoItemFn (... name: symbol ( ">::spec_eq" ) , id: defId ( 15 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 161 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 25 ) ) ) , span: span ( 161 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 159 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 30 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 160 ) ) ) basicBlock (... statements: statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 163 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 162 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 164 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 165 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 166 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 161 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 165 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 166 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 167 ) ) ) ) - ty ( 82 ) |-> monoItemFn (... name: symbol ( "<[u16; 3] as std::array::equality::SpecArrayEq<[u16; 3], 2>>::spec_eq" ) , id: defId ( 15 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 161 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 28 ) ) ) , span: span ( 161 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 159 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 87 ) , id: mirConstId ( 29 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 160 ) ) ) basicBlock (... statements: statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 163 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 162 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 164 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 165 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 166 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 161 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 165 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 166 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 167 ) ) ) ) - ty ( 87 ) |-> IntrinsicFunction ( symbol ( "raw_eq" ) ) - ty ( 88 ) |-> IntrinsicFunction ( symbol ( "raw_eq" ) ) - ty ( 100 ) |-> monoItemFn (... name: symbol ( "std::array::equality::::eq" ) , id: defId ( 11 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 132 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 82 ) , id: mirConstId ( 26 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 133 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 134 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 135 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 136 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 137 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 136 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 138 ) ) ) ) - ty ( 101 ) |-> monoItemFn (... name: symbol ( "compare_to_stored" ) , id: defId ( 20 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 273 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 42 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 273 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x02\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 42 ) , id: mirConstId ( 44 ) ) ) ) ) ) , span: span ( 272 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 272 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 272 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 272 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 4 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 47 ) ) ) ) ) ) , span: span ( 272 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 7 ) , projection: projectionElemDeref projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) , span: span ( 272 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 275 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 274 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 108 ) , id: mirConstId ( 46 ) ) ) ) , args: operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 274 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 276 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 277 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 48 ) , span: span ( 278 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 272 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 42 ) , span: span ( 273 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 42 ) , span: span ( 272 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 272 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 275 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 272 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "array" ) , sourceInfo: sourceInfo (... span: span ( 278 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 279 ) ) ) ) - ty ( 102 ) |-> monoItemFn (... name: symbol ( "core::panicking::assert_failed::<[[u16; 3]; 2], [[u16; 3]; 2]>" ) , id: defId ( 12 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 141 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 141 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 60 ) ) ) , span: span ( 141 ) ) statement (... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 142 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 142 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 60 ) ) ) , span: span ( 142 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 139 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 83 ) , id: mirConstId ( 27 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 140 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 84 ) , span: span ( 143 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 85 ) , span: span ( 144 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 145 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 146 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 86 ) , span: span ( 147 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 60 ) , span: span ( 141 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 141 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 60 ) , span: span ( 142 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 142 ) , mut: mutabilityNot ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 144 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "left" ) , sourceInfo: sourceInfo (... span: span ( 145 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "right" ) , sourceInfo: sourceInfo (... span: span ( 146 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo (... name: symbol ( "args" ) , sourceInfo: sourceInfo (... span: span ( 147 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 148 ) ) ) ) - ty ( 108 ) |-> monoItemFn (... name: symbol ( "std::array::equality::::eq" ) , id: defId ( 11 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 132 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 81 ) , id: mirConstId ( 25 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 133 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 134 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 30 ) , span: span ( 135 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 136 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 137 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 136 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 138 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 18 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 249 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 36 ) ) ) ) ) ) , span: span ( 249 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 250 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 250 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 251 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 28 ) ) .ProjectionElems ) ) ) ) , span: span ( 252 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 28 ) ) .ProjectionElems ) ) ) ) , span: span ( 253 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 248 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 100 ) , id: mirConstId ( 35 ) ) ) ) , args: operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 248 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 248 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 254 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 101 ) , id: mirConstId ( 38 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 255 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"d\x00\xc8\x00,\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityNot ) ) , ty: ty ( 48 ) , id: mirConstId ( 39 ) ) ) ) .Operands , destination: place (... local: local ( 10 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 256 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 19 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 259 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 17 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 103 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 260 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 257 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 102 ) , id: mirConstId ( 40 ) ) ) ) , args: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 258 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 6 ) ) ) , span: span ( 256 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 261 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 104 ) , id: mirConstId ( 41 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 105 ) , id: mirConstId ( 42 ) ) ) ) .Operands , destination: place (... local: local ( 11 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 261 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 263 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"d\x00\xc8\x00,\x01d\x00\xc8\x00,\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityNot ) ) , ty: ty ( 106 ) , id: mirConstId ( 43 ) ) ) ) ) ) , span: span ( 263 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 264 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 42 ) , id: mirConstId ( 31 ) ) ) ) ) ) , span: span ( 264 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x02\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 42 ) , id: mirConstId ( 44 ) ) ) ) ) ) , span: span ( 262 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 262 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 17 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 7 ) , unwind: unwindActionContinue ) , span: span ( 262 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 14 ) , projection: projectionElemIndex ( local ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 262 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 265 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 101 ) , id: mirConstId ( 38 ) ) ) ) , args: operandMove ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 12 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 266 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 10 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 266 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 267 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 268 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 104 ) , id: mirConstId ( 41 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 105 ) , id: mirConstId ( 45 ) ) ) ) .Operands , destination: place (... local: local ( 18 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 268 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 269 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 107 ) , span: span ( 251 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 249 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 250 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 252 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 253 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 30 ) , span: span ( 248 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 85 ) , span: span ( 270 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 84 ) , span: span ( 258 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 86 ) , span: span ( 260 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 256 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 84 ) , span: span ( 261 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 266 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 48 ) , span: span ( 262 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 106 ) , span: span ( 263 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 42 ) , span: span ( 264 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 42 ) , span: span ( 262 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 262 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 84 ) , span: span ( 268 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 252 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 253 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 270 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 271 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 143 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 144 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 54 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 84 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 68 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 66 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoEnumType (... name: "std::result::Result<(), std::fmt::Error>" , adtDef: adtDef ( 54 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 1 ) .Tys : ty ( 134 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 23 ) |-> typeInfoRefType ( ty ( 25 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 130 ) ) - ty ( 25 ) |-> typeInfoRefType ( ty ( 48 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 28 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 106 ) ) - ty ( 30 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 31 ) |-> typeInfoArrayType ( ty ( 33 ) , noTyConst ) - ty ( 32 ) |-> typeInfoPtrType ( ty ( 33 ) ) - ty ( 33 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU16 ) ) - ty ( 35 ) |-> typeInfoPtrType ( ty ( 33 ) ) - ty ( 37 ) |-> typeInfoStructType ( "std::marker::PhantomData<&u16>" , adtDef ( 58 ) , .Tys ) - ty ( 38 ) |-> typeInfoRefType ( ty ( 31 ) ) - ty ( 39 ) |-> typeInfoRefType ( ty ( 40 ) ) - ty ( 40 ) |-> typeInfoStructType ( "std::fmt::DebugList<'_, '_>" , adtDef ( 73 ) , ty ( 138 ) .Tys ) - ty ( 41 ) |-> typeInfoStructType ( "std::slice::Iter<'_, u16>" , adtDef ( 6 ) , ty ( 43 ) ty ( 32 ) ty ( 37 ) .Tys ) - ty ( 42 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 43 ) |-> typeInfoStructType ( "std::ptr::NonNull" , adtDef ( 5 ) , ty ( 32 ) .Tys ) - ty ( 44 ) |-> typeInfoStructType ( "std::ptr::NonNull<[u16]>" , adtDef ( 5 ) , ty ( 45 ) .Tys ) - ty ( 45 ) |-> typeInfoPtrType ( ty ( 31 ) ) - ty ( 46 ) |-> typeInfoArrayType ( ty ( 48 ) , noTyConst ) - ty ( 47 ) |-> typeInfoPtrType ( ty ( 48 ) ) - ty ( 48 ) |-> typeInfoArrayType ( ty ( 33 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 42 ) , allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 1 ) ) ) ) - ty ( 49 ) |-> typeInfoPtrType ( ty ( 48 ) ) - ty ( 51 ) |-> typeInfoStructType ( "std::marker::PhantomData<&[u16; 3]>" , adtDef ( 58 ) , .Tys ) - ty ( 52 ) |-> typeInfoRefType ( ty ( 46 ) ) - ty ( 53 ) |-> typeInfoStructType ( "std::slice::Iter<'_, [u16; 3]>" , adtDef ( 6 ) , ty ( 54 ) ty ( 47 ) ty ( 51 ) .Tys ) - ty ( 54 ) |-> typeInfoStructType ( "std::ptr::NonNull<[u16; 3]>" , adtDef ( 5 ) , ty ( 47 ) .Tys ) - ty ( 55 ) |-> typeInfoStructType ( "std::ptr::NonNull<[[u16; 3]]>" , adtDef ( 5 ) , ty ( 56 ) .Tys ) - ty ( 56 ) |-> typeInfoPtrType ( ty ( 46 ) ) - ty ( 60 ) |-> typeInfoRefType ( ty ( 137 ) ) - ty ( 61 ) |-> typeInfoEnumType (... name: "std::option::Option<&[u16; 3]>" , adtDef: adtDef ( 17 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 25 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 62 ) |-> typeInfoRefType ( ty ( 53 ) ) - ty ( 65 ) |-> typeInfoRefType ( ty ( 33 ) ) - ty ( 66 ) |-> typeInfoEnumType (... name: "std::option::Option<&u16>" , adtDef: adtDef ( 17 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 65 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 67 ) |-> typeInfoRefType ( ty ( 41 ) ) - ty ( 68 ) |-> typeInfoRefType ( ty ( 65 ) ) - ty ( 70 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 72 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 73 ) |-> typeInfoPtrType ( ty ( 65 ) ) - ty ( 74 ) |-> typeInfoPtrType ( ty ( 25 ) ) - ty ( 75 ) |-> typeInfoPtrType ( ty ( 28 ) ) - ty ( 77 ) |-> typeInfoRefType ( ty ( 38 ) ) - ty ( 78 ) |-> typeInfoStructType ( "std::ops::RangeFull" , adtDef ( 65 ) , .Tys ) - ty ( 80 ) |-> typeInfoRefType ( ty ( 52 ) ) - ty ( 84 ) |-> typeInfoVoidType - ty ( 85 ) |-> typeInfoEnumType (... name: "core::panicking::AssertKind" , adtDef: adtDef ( 19 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 86 ) |-> typeInfoEnumType (... name: "std::option::Option>" , adtDef: adtDef ( 17 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 103 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) ) ) - ty ( 89 ) |-> typeInfoPtrType ( ty ( 54 ) ) - ty ( 90 ) |-> typeInfoPtrType ( ty ( 42 ) ) - ty ( 91 ) |-> typeInfoPtrType ( ty ( 54 ) ) - ty ( 92 ) |-> typeInfoPtrType ( ty ( 47 ) ) - ty ( 93 ) |-> typeInfoRefType ( ty ( 54 ) ) - ty ( 94 ) |-> typeInfoPtrType ( ty ( 47 ) ) - ty ( 95 ) |-> typeInfoPtrType ( ty ( 43 ) ) - ty ( 96 ) |-> typeInfoPtrType ( ty ( 43 ) ) - ty ( 97 ) |-> typeInfoPtrType ( ty ( 32 ) ) - ty ( 98 ) |-> typeInfoRefType ( ty ( 43 ) ) - ty ( 99 ) |-> typeInfoPtrType ( ty ( 32 ) ) - ty ( 103 ) |-> typeInfoStructType ( "std::fmt::Arguments<'_>" , adtDef ( 23 ) , ty ( 110 ) ty ( 111 ) ty ( 112 ) .Tys ) - ty ( 105 ) |-> typeInfoRefType ( ty ( 114 ) ) - ty ( 106 ) |-> typeInfoArrayType ( ty ( 48 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 42 ) , allocation (... bytes: b"\x02\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 107 ) |-> typeInfoTupleType ( ty ( 28 ) ty ( 28 ) .Tys ) - ty ( 109 ) |-> typeInfoRefType ( ty ( 136 ) ) - ty ( 110 ) |-> typeInfoRefType ( ty ( 113 ) ) - ty ( 111 ) |-> typeInfoEnumType (... name: "std::option::Option<&[core::fmt::rt::Placeholder]>" , adtDef: adtDef ( 17 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 115 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 112 ) |-> typeInfoRefType ( ty ( 122 ) ) - ty ( 113 ) |-> typeInfoArrayType ( ty ( 105 ) , noTyConst ) - ty ( 114 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 115 ) |-> typeInfoRefType ( ty ( 116 ) ) - ty ( 116 ) |-> typeInfoArrayType ( ty ( 117 ) , noTyConst ) - ty ( 117 ) |-> typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 27 ) , ty ( 42 ) ty ( 118 ) ty ( 119 ) ty ( 120 ) ty ( 121 ) ty ( 121 ) .Tys ) - ty ( 118 ) |-> typeInfoPrimitiveType ( primTypeChar ) - ty ( 119 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Alignment" , adtDef: adtDef ( 34 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) discriminant ( 3 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 3 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 120 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 121 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Count" , adtDef: adtDef ( 35 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: ty ( 42 ) .Tys : ty ( 42 ) .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 122 ) |-> typeInfoArrayType ( ty ( 123 ) , noTyConst ) - ty ( 123 ) |-> typeInfoStructType ( "core::fmt::rt::Argument<'_>" , adtDef ( 38 ) , ty ( 124 ) .Tys ) - ty ( 124 ) |-> typeInfoEnumType (... name: "core::fmt::rt::ArgumentType<'_>" , adtDef: adtDef ( 40 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 125 ) ty ( 126 ) ty ( 127 ) .Tys : ty ( 42 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) machineSize (... numBits: 64 ) machineSize (... numBits: 128 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 125 ) |-> typeInfoStructType ( "std::ptr::NonNull<()>" , adtDef ( 5 ) , ty ( 128 ) .Tys ) - ty ( 127 ) |-> typeInfoStructType ( "std::marker::PhantomData<&()>" , adtDef ( 58 ) , .Tys ) - ty ( 128 ) |-> typeInfoPtrType ( ty ( 1 ) ) - ty ( 130 ) |-> typeInfoStructType ( "std::fmt::Formatter<'_>" , adtDef ( 46 ) , ty ( 120 ) ty ( 118 ) ty ( 119 ) ty ( 131 ) ty ( 131 ) ty ( 132 ) .Tys ) - ty ( 131 ) |-> typeInfoEnumType (... name: "std::option::Option" , adtDef: adtDef ( 17 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 42 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 132 ) |-> typeInfoRefType ( ty ( 133 ) ) - ty ( 134 ) |-> typeInfoStructType ( "std::fmt::Error" , adtDef ( 57 ) , .Tys ) - ty ( 135 ) |-> typeInfoRefType ( ty ( 1 ) ) - ty ( 136 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 59 ) , ty ( 105 ) ty ( 120 ) ty ( 120 ) .Tys ) - ty ( 138 ) |-> typeInfoStructType ( "core::fmt::builders::DebugInner<'_, '_>" , adtDef ( 75 ) , ty ( 24 ) ty ( 22 ) ty ( 30 ) .Tys ) - ty ( 144 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/allocs/enum-two-refs-fail.state b/kmir/src/tests/integration/data/exec-smir/allocs/enum-two-refs-fail.state index fc7be9a2f..fadc379df 100644 --- a/kmir/src/tests/integration/data/exec-smir/allocs/enum-two-refs-fail.state +++ b/kmir/src/tests/integration/data/exec-smir/allocs/enum-two-refs-fail.state @@ -75,127 +75,4 @@ ListItem ( newLocal ( ty ( 69 ) , mutabilityNot ) ) ) ) ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 0 ) |-> UnableToDecodePy (... msg: "Unable to decode value: b'', of type: ArrayT(element_type=113, length=0): Method nbytes() is unsupported for type: StructT(name=\"core::fmt::rt::Argument<'_>\", adt_def=51, fields=[114])" ) - allocId ( 1 ) |-> UnableToDecodePy (... msg: "Unable to decode alloc: b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00', of type: EnumT(name=\"Thing<'_>\", adt_def=25, discriminants=[0], fields=[[37, 45]], layout=LayoutShape(fields=ArbitraryFields(offsets=[MachineSize(num_bits=0), MachineSize(num_bits=64)]), variants=Single(index=0), abi=ValueAbi(), abi_align=8, size=MachineSize(num_bits=128)))" ) - allocId ( 2 ) |-> UnableToDecodePy (... msg: "Unable to decode alloc: b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00', of type: EnumT(name=\"Thing<'_>\", adt_def=25, discriminants=[0], fields=[[37, 45]], layout=LayoutShape(fields=ArbitraryFields(offsets=[MachineSize(num_bits=0), MachineSize(num_bits=64)]), variants=Single(index=0), abi=ValueAbi(), abi_align=8, size=MachineSize(num_bits=128)))" ) - allocId ( 3 ) |-> UnableToDecodePy (... msg: "Unable to decode alloc: b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00', of type: StructT(name=\"Another<'_>\", adt_def=44, fields=[28, 42])" ) - allocId ( 4 ) |-> UnableToDecodePy (... msg: "Unable to decode alloc: b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00', of type: StructT(name=\"Another<'_>\", adt_def=44, fields=[28, 42])" ) - allocId ( 5 ) |-> UnableToDecodePy (... msg: "Unable to decode alloc: b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00', of type: ArrayT(element_type=96, length=1)" ) - allocId ( 8 ) |-> StringVal ( "Thing" ) - allocId ( 9 ) |-> StringVal ( "Another" ) - allocId ( 10 ) |-> UnableToDecodePy (... msg: "Unknown type: 0" ) - allocId ( 11 ) |-> UnableToDecodePy (... msg: "Unknown type: 0" ) - allocId ( 12 ) |-> UnableToDecodePy (... msg: "Unknown type: 0" ) - allocId ( 13 ) |-> UnableToDecodePy (... msg: "Unknown type: 0" ) - allocId ( 14 ) |-> Integer ( 1 , 32 , true ) - allocId ( 15 ) |-> Integer ( 2 , 32 , false ) - allocId ( 16 ) |-> Integer ( 1 , 32 , true ) - allocId ( 17 ) |-> Integer ( 2 , 32 , false ) - allocId ( 18 ) |-> StringVal ( "All assertions passed\n" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 48 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 4 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 55 ) ) statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 51 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 37 ) , span: span ( 57 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 37 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 44 ) , span: span ( 52 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 44 ) , span: span ( 53 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 57 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 59 ) ) ) ) - ty ( 49 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 5 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 55 ) ) statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 51 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 57 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 16 ) , span: span ( 52 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 53 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 57 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 59 ) ) ) ) - ty ( 50 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 63 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 52 ) , id: mirConstId ( 17 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 64 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 31 ) , span: span ( 66 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 31 ) , span: span ( 67 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 45 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 45 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - ty ( 51 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 55 ) ) statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 51 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 42 ) , span: span ( 57 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 42 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 47 ) , span: span ( 52 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 47 ) , span: span ( 53 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 57 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 59 ) ) ) ) - ty ( 52 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 55 ) ) statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 51 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 45 ) , span: span ( 57 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 45 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 46 ) , span: span ( 52 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 46 ) , span: span ( 53 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 57 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 59 ) ) ) ) - ty ( 53 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 63 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 48 ) , id: mirConstId ( 13 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 64 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 66 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 36 ) , span: span ( 67 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 37 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 37 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - ty ( 85 ) |-> monoItemFn (... name: symbol ( " as std::cmp::PartialEq>::eq" ) , id: defId ( 21 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 146 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 13 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 37 ) ) .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 14 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 45 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 15 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 37 ) ) .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 16 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 45 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , span: span ( 145 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 145 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 93 ) , id: mirConstId ( 47 ) ) ) ) , args: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 145 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 145 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 147 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 94 ) , id: mirConstId ( 48 ) ) ) ) , args: operandMove ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 147 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 147 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 43 ) , id: mirConstId ( 49 ) ) ) ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 4 ) ) , span: span ( 147 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 148 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 146 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 146 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 146 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 91 ) , span: span ( 146 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 145 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 31 ) , span: span ( 147 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 36 ) , span: span ( 145 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 31 ) , span: span ( 147 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 43 ) , span: span ( 145 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 54 ) , span: span ( 145 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 54 ) , span: span ( 145 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 147 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 147 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 146 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 146 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 146 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 146 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 146 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 146 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "__self_0" ) , sourceInfo: sourceInfo (... span: span ( 145 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "__self_1" ) , sourceInfo: sourceInfo (... span: span ( 147 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "__arg1_0" ) , sourceInfo: sourceInfo (... span: span ( 145 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "__arg1_1" ) , sourceInfo: sourceInfo (... span: span ( 147 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 146 ) ) ) ) - ty ( 86 ) |-> monoItemFn (... name: symbol ( " as std::cmp::PartialEq>::eq" ) , id: defId ( 23 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 28 ) ) .ProjectionElems ) ) ) , span: span ( 153 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 28 ) ) .ProjectionElems ) ) ) , span: span ( 153 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 153 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 97 ) , id: mirConstId ( 52 ) ) ) ) , args: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 153 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 153 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 42 ) ) .ProjectionElems ) ) ) , span: span ( 154 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 42 ) ) .ProjectionElems ) ) ) , span: span ( 154 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 154 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 98 ) , id: mirConstId ( 53 ) ) ) ) , args: operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 154 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 154 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 43 ) , id: mirConstId ( 49 ) ) ) ) ) ) , span: span ( 154 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 4 ) ) , span: span ( 154 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 34 ) , span: span ( 156 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 34 ) , span: span ( 156 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 43 ) , span: span ( 153 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 153 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 153 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 40 ) , span: span ( 154 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 40 ) , span: span ( 154 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 156 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 156 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 156 ) ) ) ) - ty ( 87 ) |-> monoItemFn (... name: symbol ( "core::panicking::assert_failed::, Thing<'_>>" ) , id: defId ( 16 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 103 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 103 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 81 ) ) ) , span: span ( 103 ) ) statement (... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 104 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 104 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 81 ) ) ) , span: span ( 104 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 101 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 80 ) , id: mirConstId ( 34 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 102 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 82 ) , span: span ( 105 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 83 ) , span: span ( 106 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 107 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 108 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 84 ) , span: span ( 109 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 81 ) , span: span ( 103 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 103 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 81 ) , span: span ( 104 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 104 ) , mut: mutabilityNot ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 106 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "left" ) , sourceInfo: sourceInfo (... span: span ( 107 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "right" ) , sourceInfo: sourceInfo (... span: span ( 108 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo (... name: symbol ( "args" ) , sourceInfo: sourceInfo (... span: span ( 109 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 110 ) ) ) ) - ty ( 88 ) |-> monoItemFn (... name: symbol ( "std::fmt::Arguments::<'_>::new_const::<1>" ) , id: defId ( 12 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 92 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 64 ) ) ) , span: span ( 92 ) ) statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 93 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand (... span: span ( 93 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 65 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 66 ) ) ) , span: span ( 93 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 13 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region (... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 67 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 94 ) ) statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 95 ) ) statement (... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 95 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 91 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 68 ) , span: span ( 96 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 69 ) , span: span ( 97 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 64 ) , span: span ( 92 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 66 ) , span: span ( 93 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "pieces" ) , sourceInfo: sourceInfo (... span: span ( 97 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 98 ) ) ) ) - ty ( 89 ) |-> monoItemFn (... name: symbol ( "core::panicking::assert_failed::, Another<'_>>" ) , id: defId ( 16 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 103 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 103 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 81 ) ) ) , span: span ( 103 ) ) statement (... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 104 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 104 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 81 ) ) ) , span: span ( 104 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 101 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 80 ) , id: mirConstId ( 34 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 102 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 82 ) , span: span ( 105 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 83 ) , span: span ( 106 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 34 ) , span: span ( 107 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 34 ) , span: span ( 108 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 84 ) , span: span ( 109 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 81 ) , span: span ( 103 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 33 ) , span: span ( 103 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 81 ) , span: span ( 104 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 33 ) , span: span ( 104 ) , mut: mutabilityNot ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 106 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "left" ) , sourceInfo: sourceInfo (... span: span ( 107 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "right" ) , sourceInfo: sourceInfo (... span: span ( 108 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo (... name: symbol ( "args" ) , sourceInfo: sourceInfo (... span: span ( 109 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 110 ) ) ) ) - ty ( 93 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 63 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 53 ) , id: mirConstId ( 18 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 64 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 54 ) , span: span ( 66 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 54 ) , span: span ( 67 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 36 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - ty ( 94 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 63 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 50 ) , id: mirConstId ( 15 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 64 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 66 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 30 ) , span: span ( 67 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 31 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 31 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - ty ( 97 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 63 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 49 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 64 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 66 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 67 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - ty ( 98 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 63 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 51 ) , id: mirConstId ( 16 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 64 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 43 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 40 ) , span: span ( 66 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 40 ) , span: span ( 67 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 42 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 42 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 18 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 117 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 117 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 118 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 38 ) ) ) ) ) ) , span: span ( 118 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 119 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 120 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 121 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 116 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 85 ) , id: mirConstId ( 36 ) ) ) ) , args: operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 116 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 116 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 123 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 34 ) , id: mirConstId ( 40 ) ) ) ) ) ) , span: span ( 123 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 124 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 4 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 34 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 124 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 125 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 126 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 122 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 39 ) ) ) ) , args: operandCopy ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 122 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 19 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 130 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 20 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 68 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 131 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 128 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 87 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 129 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 122 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 133 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 5 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 69 ) , id: mirConstId ( 44 ) ) ) ) ) ) , span: span ( 133 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 132 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 43 ) ) ) ) , args: operandCopy ( place (... local: local ( 21 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 20 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 19 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 136 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 20 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 68 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 137 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 134 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 89 ) , id: mirConstId ( 45 ) ) ) ) , args: operandMove ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 18 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 17 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 135 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 138 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 90 ) , id: mirConstId ( 46 ) ) ) ) , args: operandMove ( place (... local: local ( 20 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 19 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 139 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 140 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 141 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 91 ) , span: span ( 119 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 117 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 118 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 120 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 121 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 43 ) , span: span ( 116 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 83 ) , span: span ( 142 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 82 ) , span: span ( 129 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 84 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 92 ) , span: span ( 125 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 34 ) , span: span ( 123 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 34 ) , span: span ( 124 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 34 ) , span: span ( 126 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 34 ) , span: span ( 127 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 43 ) , span: span ( 122 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 83 ) , span: span ( 143 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 82 ) , span: span ( 135 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 84 ) , span: span ( 137 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 1 ) , span: span ( 139 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 68 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 69 ) , span: span ( 133 ) , mut: mutabilityNot ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 120 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 121 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 142 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 126 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 127 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 143 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 144 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 130 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 131 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 40 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 82 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 83 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 81 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoEnumType (... name: "std::result::Result<(), std::fmt::Error>" , adtDef: adtDef ( 40 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 1 ) .Tys : ty ( 107 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 23 ) |-> typeInfoRefType ( ty ( 25 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 100 ) ) - ty ( 25 ) |-> typeInfoRefType ( ty ( 99 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 28 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 16 ) ) - ty ( 30 ) |-> typeInfoRefType ( ty ( 31 ) ) - ty ( 31 ) |-> typeInfoRefType ( ty ( 45 ) ) - ty ( 33 ) |-> typeInfoRefType ( ty ( 34 ) ) - ty ( 34 ) |-> typeInfoRefType ( ty ( 108 ) ) - ty ( 36 ) |-> typeInfoRefType ( ty ( 37 ) ) - ty ( 37 ) |-> typeInfoRefType ( ty ( 44 ) ) - ty ( 39 ) |-> typeInfoRefType ( ty ( 40 ) ) - ty ( 40 ) |-> typeInfoRefType ( ty ( 42 ) ) - ty ( 42 ) |-> typeInfoRefType ( ty ( 47 ) ) - ty ( 43 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 44 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI16 ) ) - ty ( 45 ) |-> typeInfoRefType ( ty ( 46 ) ) - ty ( 46 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU16 ) ) - ty ( 47 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 54 ) |-> typeInfoRefType ( ty ( 36 ) ) - ty ( 64 ) |-> typeInfoRefType ( ty ( 110 ) ) - ty ( 65 ) |-> typeInfoRefType ( ty ( 112 ) ) - ty ( 66 ) |-> typeInfoRefType ( ty ( 121 ) ) - ty ( 67 ) |-> typeInfoEnumType (... name: "std::option::Option<&[core::fmt::rt::Placeholder]>" , adtDef: adtDef ( 20 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 122 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 68 ) |-> typeInfoStructType ( "std::fmt::Arguments<'_>" , adtDef ( 13 ) , ty ( 64 ) ty ( 67 ) ty ( 66 ) .Tys ) - ty ( 69 ) |-> typeInfoRefType ( ty ( 126 ) ) - ty ( 71 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 73 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 74 ) |-> typeInfoPtrType ( ty ( 37 ) ) - ty ( 75 ) |-> typeInfoPtrType ( ty ( 28 ) ) - ty ( 76 ) |-> typeInfoPtrType ( ty ( 31 ) ) - ty ( 77 ) |-> typeInfoPtrType ( ty ( 40 ) ) - ty ( 78 ) |-> typeInfoPtrType ( ty ( 25 ) ) - ty ( 79 ) |-> typeInfoPtrType ( ty ( 34 ) ) - ty ( 81 ) |-> typeInfoRefType ( ty ( 127 ) ) - ty ( 82 ) |-> typeInfoVoidType - ty ( 83 ) |-> typeInfoEnumType (... name: "core::panicking::AssertKind" , adtDef: adtDef ( 19 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 84 ) |-> typeInfoEnumType (... name: "std::option::Option>" , adtDef: adtDef ( 20 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 68 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) ) ) - ty ( 91 ) |-> typeInfoTupleType ( ty ( 25 ) ty ( 25 ) .Tys ) - ty ( 92 ) |-> typeInfoTupleType ( ty ( 34 ) ty ( 34 ) .Tys ) - ty ( 96 ) |-> typeInfoRefType ( ty ( 111 ) ) - ty ( 99 ) |-> typeInfoEnumType (... name: "Thing<'_>" , adtDef: adtDef ( 25 ) , discriminants: discriminant ( 0 ) .Discriminants , fields: ty ( 37 ) ty ( 45 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 100 ) |-> typeInfoStructType ( "std::fmt::Formatter<'_>" , adtDef ( 30 ) , ty ( 47 ) ty ( 101 ) ty ( 102 ) ty ( 103 ) ty ( 103 ) ty ( 104 ) .Tys ) - ty ( 101 ) |-> typeInfoPrimitiveType ( primTypeChar ) - ty ( 102 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Alignment" , adtDef: adtDef ( 37 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) discriminant ( 3 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 3 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 103 ) |-> typeInfoEnumType (... name: "std::option::Option" , adtDef: adtDef ( 20 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 105 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 104 ) |-> typeInfoRefType ( ty ( 106 ) ) - ty ( 105 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 107 ) |-> typeInfoStructType ( "std::fmt::Error" , adtDef ( 43 ) , .Tys ) - ty ( 108 ) |-> typeInfoStructType ( "Another<'_>" , adtDef ( 44 ) , ty ( 28 ) ty ( 42 ) .Tys ) - ty ( 110 ) |-> typeInfoArrayType ( ty ( 96 ) , noTyConst ) - ty ( 111 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 112 ) |-> typeInfoArrayType ( ty ( 113 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 105 ) , allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 113 ) |-> typeInfoStructType ( "core::fmt::rt::Argument<'_>" , adtDef ( 51 ) , ty ( 114 ) .Tys ) - ty ( 114 ) |-> typeInfoEnumType (... name: "core::fmt::rt::ArgumentType<'_>" , adtDef: adtDef ( 53 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 115 ) ty ( 116 ) ty ( 117 ) .Tys : ty ( 105 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) machineSize (... numBits: 64 ) machineSize (... numBits: 128 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 115 ) |-> typeInfoStructType ( "std::ptr::NonNull<()>" , adtDef ( 58 ) , ty ( 118 ) .Tys ) - ty ( 117 ) |-> typeInfoStructType ( "std::marker::PhantomData<&()>" , adtDef ( 60 ) , .Tys ) - ty ( 118 ) |-> typeInfoPtrType ( ty ( 1 ) ) - ty ( 120 ) |-> typeInfoRefType ( ty ( 1 ) ) - ty ( 121 ) |-> typeInfoArrayType ( ty ( 113 ) , noTyConst ) - ty ( 122 ) |-> typeInfoRefType ( ty ( 123 ) ) - ty ( 123 ) |-> typeInfoArrayType ( ty ( 124 ) , noTyConst ) - ty ( 124 ) |-> typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 61 ) , ty ( 105 ) ty ( 101 ) ty ( 102 ) ty ( 47 ) ty ( 125 ) ty ( 125 ) .Tys ) - ty ( 125 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Count" , adtDef: adtDef ( 68 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: ty ( 105 ) .Tys : ty ( 105 ) .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 126 ) |-> typeInfoArrayType ( ty ( 96 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 105 ) , allocation (... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 1 ) ) ) ) - ty ( 128 ) |-> typeInfoRefType ( ty ( 129 ) ) - ty ( 129 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 77 ) , ty ( 96 ) ty ( 47 ) ty ( 47 ) .Tys ) - ty ( 131 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/arithmetic/arithmetic-unchecked-runs.state b/kmir/src/tests/integration/data/exec-smir/arithmetic/arithmetic-unchecked-runs.state index 60d250574..09d56cea7 100644 --- a/kmir/src/tests/integration/data/exec-smir/arithmetic/arithmetic-unchecked-runs.state +++ b/kmir/src/tests/integration/data/exec-smir/arithmetic/arithmetic-unchecked-runs.state @@ -54,44 +54,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 2 ) |-> StringVal ( "unsafe precondition(s) violated: u8::unchecked_add cannot overflow" ) - allocId ( 3 ) |-> StringVal ( "unsafe precondition(s) violated: i8::unchecked_sub cannot overflow" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 22 ) |-> monoItemFn (... name: symbol ( "core::num::::unchecked_sub::precondition_check" ) , id: defId ( 4 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 55 ) ) statement (... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpSub , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) ) , span: span ( 57 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 21 ) ) .ProjectionElems ) ) ) ) , span: span ( 58 ) ) statement (... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 59 ) ) statement (... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 54 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 23 ) , id: mirConstId ( 7 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 61 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00B\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 24 ) , id: mirConstId ( 8 ) ) ) ) .Operands , destination: place (... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 62 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 63 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 64 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 65 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 65 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 62 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 57 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 21 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 56 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "lhs" ) , sourceInfo: sourceInfo (... span: span ( 65 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "rhs" ) , sourceInfo: sourceInfo (... span: span ( 65 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "rhs" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 57 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - ty ( 27 ) |-> monoItemFn (... name: symbol ( "core::num::::unchecked_add::precondition_check" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 80 ) ) statement (... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 81 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 81 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 9 ) ) .ProjectionElems ) ) ) ) , span: span ( 82 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 21 ) ) .ProjectionElems ) ) ) ) , span: span ( 83 ) ) statement (... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 84 ) ) statement (... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 80 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 79 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 85 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 23 ) , id: mirConstId ( 7 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 86 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00B\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 24 ) , id: mirConstId ( 10 ) ) ) ) .Operands , destination: place (... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 87 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 88 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 89 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 90 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 9 ) , span: span ( 90 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 87 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 9 ) , span: span ( 82 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 21 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 81 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "lhs" ) , sourceInfo: sourceInfo (... span: span ( 90 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "rhs" ) , sourceInfo: sourceInfo (... span: span ( 90 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 91 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "rhs" ) , sourceInfo: sourceInfo (... span: span ( 92 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 82 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 83 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 93 ) ) ) ) - ty ( 33 ) |-> monoItemFn (... name: symbol ( "core::num::::unchecked_add" ) , id: defId ( 5 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 69 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 21 ) ) ) , span: span ( 44 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 69 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 70 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 9 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 71 ) ) ) basicBlock (... statements: statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 73 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAddUnchecked , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 74 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 72 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 9 ) , span: span ( 75 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 76 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 9 ) , span: span ( 77 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 21 ) , span: span ( 69 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 1 ) , span: span ( 71 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 76 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "rhs" ) , sourceInfo: sourceInfo (... span: span ( 77 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 78 ) ) ) ) - ty ( 34 ) |-> monoItemFn (... name: symbol ( "core::num::::unchecked_sub" ) , id: defId ( 3 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 43 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 21 ) ) ) , span: span ( 44 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 43 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 45 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 22 ) , id: mirConstId ( 6 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 46 ) ) ) basicBlock (... statements: statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 48 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 49 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 47 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 2 ) , span: span ( 50 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 51 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 52 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 21 ) , span: span ( 43 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 1 ) , span: span ( 46 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 51 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "rhs" ) , sourceInfo: sourceInfo (... span: span ( 52 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 53 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 10 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandConstant ( constOperand (... span: span ( 101 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 14 ) ) ) ) , operandConstant ( constOperand (... span: span ( 102 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 14 ) ) ) ) ) ) , span: span ( 103 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 21 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandConstant ( constOperand (... span: span ( 101 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 14 ) ) ) ) , operandConstant ( constOperand (... span: span ( 102 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 14 ) ) ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 103 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 9 ) ) .ProjectionElems ) ) ) ) , span: span ( 103 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 104 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 33 ) , id: mirConstId ( 15 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand (... span: span ( 105 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 16 ) ) ) ) .Operands , destination: place (... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 106 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpSub , operandConstant ( constOperand (... span: span ( 107 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 17 ) ) ) ) , operandConstant ( constOperand (... span: span ( 108 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"d" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 18 ) ) ) ) ) ) , span: span ( 109 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 5 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 21 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpSub , operandConstant ( constOperand (... span: span ( 107 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 17 ) ) ) ) , operandConstant ( constOperand (... span: span ( 108 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"d" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 18 ) ) ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionContinue ) , span: span ( 109 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 5 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) ) , span: span ( 109 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 110 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 34 ) , id: mirConstId ( 19 ) ) ) ) , args: operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand (... span: span ( 111 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x1c" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 20 ) ) ) ) .Operands , destination: place (... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 112 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 35 ) ) ) , span: span ( 114 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 35 ) ) ) , span: span ( 115 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpMul , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 113 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 21 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpMul , operandMove ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 113 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 35 ) ) .ProjectionElems ) ) ) ) , span: span ( 113 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 35 ) ) ) , span: span ( 117 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 116 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 13 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 21 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionContinue ) , span: span ( 116 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 13 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 35 ) ) .ProjectionElems ) ) ) ) , span: span ( 116 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 118 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 119 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 120 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 103 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 121 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 122 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 109 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 123 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 35 ) , span: span ( 124 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 35 ) , span: span ( 114 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 115 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 113 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 125 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 35 ) , span: span ( 117 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 116 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 120 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 121 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "c" ) , sourceInfo: sourceInfo (... span: span ( 122 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "d" ) , sourceInfo: sourceInfo (... span: span ( 123 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "e" ) , sourceInfo: sourceInfo (... span: span ( 124 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "f" ) , sourceInfo: sourceInfo (... span: span ( 125 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 126 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 39 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 40 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 24 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 25 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 16 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 14 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 21 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 37 ) ) - ty ( 25 ) |-> typeInfoVoidType - ty ( 26 ) |-> typeInfoTupleType ( ty ( 2 ) ty ( 21 ) .Tys ) - ty ( 28 ) |-> typeInfoTupleType ( ty ( 9 ) ty ( 21 ) .Tys ) - ty ( 30 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 32 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 35 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI16 ) ) - ty ( 36 ) |-> typeInfoTupleType ( ty ( 35 ) ty ( 21 ) .Tys ) - ty ( 37 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 40 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/arithmetic/arithmetic.state b/kmir/src/tests/integration/data/exec-smir/arithmetic/arithmetic.state index 0e70f7967..a2940d22a 100644 --- a/kmir/src/tests/integration/data/exec-smir/arithmetic/arithmetic.state +++ b/kmir/src/tests/integration/data/exec-smir/arithmetic/arithmetic.state @@ -67,37 +67,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 9 ) ) ) ) , operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x80" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 52 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 9 ) ) ) ) , operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x80" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 10 ) ) ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 52 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 9 ) ) .ProjectionElems ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpSub , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\xff" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 54 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 4 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpSub , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\xff" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 11 ) ) ) ) ) , target: basicBlockIdx ( 2 ) , unwind: unwindActionContinue ) , span: span ( 54 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 4 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 9 ) ) .ProjectionElems ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpSub , operandConstant ( constOperand (... span: span ( 55 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 12 ) ) ) ) , operandConstant ( constOperand (... span: span ( 56 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"d" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 13 ) ) ) ) ) ) , span: span ( 57 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 7 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpSub , operandConstant ( constOperand (... span: span ( 55 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 12 ) ) ) ) , operandConstant ( constOperand (... span: span ( 56 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"d" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 13 ) ) ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionContinue ) , span: span ( 57 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 7 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) ) , span: span ( 57 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpSub , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 58 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x1c" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 14 ) ) ) ) ) ) , span: span ( 59 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 8 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpSub , operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 58 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x1c" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 14 ) ) ) ) ) , target: basicBlockIdx ( 4 ) , unwind: unwindActionContinue ) , span: span ( 59 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 8 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) ) , span: span ( 59 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , ty ( 9 ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 9 ) ) ) ) ) ) , span: span ( 61 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandMove ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 9 ) ) ) ) ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 9 ) ) .ProjectionElems ) ) ) ) , span: span ( 61 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpSub , operandCopy ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 63 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 13 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpSub , operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionContinue ) , span: span ( 63 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 13 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 9 ) ) .ProjectionElems ) ) ) ) , span: span ( 63 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 65 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 66 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpMul , operandCopy ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 64 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 17 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpMul , operandMove ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 7 ) , unwind: unwindActionContinue ) , span: span ( 64 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 17 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 26 ) ) .ProjectionElems ) ) ) ) , span: span ( 64 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 68 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 67 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 20 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 19 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 8 ) , unwind: unwindActionContinue ) , span: span ( 67 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 20 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 26 ) ) .ProjectionElems ) ) ) ) , span: span ( 67 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 69 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 70 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 71 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 52 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 72 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 54 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 73 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 59 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 74 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 9 ) , span: span ( 61 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 62 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 61 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 63 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 75 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 64 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 76 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 68 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 71 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 72 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "c" ) , sourceInfo: sourceInfo (... span: span ( 73 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "d" ) , sourceInfo: sourceInfo (... span: span ( 74 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "e" ) , sourceInfo: sourceInfo (... span: span ( 75 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "f" ) , sourceInfo: sourceInfo (... span: span ( 76 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 77 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 31 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 32 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 17 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 33 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 10 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 8 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 25 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI16 ) ) - ty ( 27 ) |-> typeInfoTupleType ( ty ( 9 ) ty ( 25 ) .Tys ) - ty ( 28 ) |-> typeInfoTupleType ( ty ( 2 ) ty ( 25 ) .Tys ) - ty ( 29 ) |-> typeInfoTupleType ( ty ( 26 ) ty ( 25 ) .Tys ) - ty ( 32 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 33 ) |-> typeInfoVoidType - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/arithmetic/unary.state b/kmir/src/tests/integration/data/exec-smir/arithmetic/unary.state index ef50509a5..97333b1b7 100644 --- a/kmir/src/tests/integration/data/exec-smir/arithmetic/unary.state +++ b/kmir/src/tests/integration/data/exec-smir/arithmetic/unary.state @@ -41,34 +41,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 9 ) ) ) ) , operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x80" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 52 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x7f" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 9 ) ) ) ) , operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x80" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 10 ) ) ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 52 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 9 ) ) .ProjectionElems ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandConstant ( constOperand (... span: span ( 55 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x85" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandConstant ( constOperand (... span: span ( 57 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 12 ) ) ) ) ) ) , span: span ( 58 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x80" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 13 ) ) ) ) ) ) , span: span ( 53 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , expected: false , msg: assertMessageOverflowNeg ( operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 2 ) , unwind: unwindActionContinue ) , span: span ( 53 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNeg , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 53 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 59 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 60 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 61 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 52 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 62 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 63 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 64 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 65 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 53 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 61 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 62 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "c" ) , sourceInfo: sourceInfo (... span: span ( 63 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "d" ) , sourceInfo: sourceInfo (... span: span ( 64 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "e" ) , sourceInfo: sourceInfo (... span: span ( 65 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 66 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 28 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 29 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 19 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 30 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 12 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 10 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 25 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 26 ) |-> typeInfoTupleType ( ty ( 9 ) ty ( 25 ) .Tys ) - ty ( 29 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 30 ) |-> typeInfoVoidType - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/arrays/array_indexing.state b/kmir/src/tests/integration/data/exec-smir/arrays/array_indexing.state index 7947d1403..d905964fc 100644 --- a/kmir/src/tests/integration/data/exec-smir/arrays/array_indexing.state +++ b/kmir/src/tests/integration/data/exec-smir/arrays/array_indexing.state @@ -49,40 +49,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 1 ) |-> StringVal ( "assertion failed: b == c" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueRepeat ( operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 9 ) ) ) ) , tyConst (... kind: tyConstKindValue ( ty ( 25 ) , allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 50 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 50 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 50 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) ) , span: span ( 50 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 25 ) ) ) , span: span ( 55 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 2 ) , unwind: unwindActionContinue ) , span: span ( 54 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 7 ) ) .ProjectionElems ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 56 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 56 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 57 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 58 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 12 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 13 ) ) ) ) .Operands , destination: place (... local: local ( 11 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 58 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 59 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 60 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 61 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 53 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 50 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 50 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 62 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 55 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 54 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 54 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 31 ) , span: span ( 58 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 60 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 61 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "c" ) , sourceInfo: sourceInfo (... span: span ( 62 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 63 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 32 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 33 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 17 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 31 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 10 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 8 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 25 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI16 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 36 ) ) - ty ( 29 ) |-> typeInfoArrayType ( ty ( 26 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 25 ) , allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 30 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 31 ) |-> typeInfoVoidType - ty ( 33 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 35 ) |-> typeInfoRefType ( ty ( 37 ) ) - ty ( 36 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 37 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 23 ) , ty ( 28 ) ty ( 38 ) ty ( 38 ) .Tys ) - ty ( 38 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/arrays/array_inlined.state b/kmir/src/tests/integration/data/exec-smir/arrays/array_inlined.state index 69b84b43d..a4e52f93f 100644 --- a/kmir/src/tests/integration/data/exec-smir/arrays/array_inlined.state +++ b/kmir/src/tests/integration/data/exec-smir/arrays/array_inlined.state @@ -92,75 +92,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 44 ) |-> monoItemFn (... name: symbol ( "core::panicking::assert_failed::" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 77 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 77 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 36 ) ) ) , span: span ( 77 ) ) statement (... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 78 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 78 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 36 ) ) ) , span: span ( 78 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 75 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 35 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 76 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 37 ) , span: span ( 79 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 38 ) , span: span ( 80 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 81 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 82 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 39 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 36 ) , span: span ( 77 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 77 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 36 ) , span: span ( 78 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 78 ) , mut: mutabilityNot ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 80 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "left" ) , sourceInfo: sourceInfo (... span: span ( 81 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "right" ) , sourceInfo: sourceInfo (... span: span ( 82 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo (... name: symbol ( "args" ) , sourceInfo: sourceInfo (... span: span ( 83 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 84 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 9 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 91 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\xfe\x03" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityNot ) ) , ty: ty ( 40 ) , id: mirConstId ( 16 ) ) ) ) ) ) , span: span ( 91 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 92 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 41 ) , id: mirConstId ( 17 ) ) ) ) ) ) , span: span ( 92 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 41 ) , id: mirConstId ( 18 ) ) ) ) ) ) , span: span ( 90 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 90 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 90 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 3 ) , projection: projectionElemIndex ( local ( 4 ) ) .ProjectionElems ) ) ) ) , span: span ( 90 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 94 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\xfe\x03" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityNot ) ) , ty: ty ( 40 ) , id: mirConstId ( 16 ) ) ) ) ) ) , span: span ( 94 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 95 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 41 ) , id: mirConstId ( 19 ) ) ) ) ) ) , span: span ( 95 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 41 ) , id: mirConstId ( 18 ) ) ) ) ) ) , span: span ( 93 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 93 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 2 ) , unwind: unwindActionContinue ) , span: span ( 93 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 8 ) , projection: projectionElemIndex ( local ( 9 ) ) .ProjectionElems ) ) ) ) , span: span ( 93 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpMul , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 96 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 42 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpMul , operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionContinue ) , span: span ( 96 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) ) , span: span ( 96 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 98 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\n\x00\x00\x00\xec\xff\xff\xff\x1e\x00\x00\x00\xd8\xff\xff\xff" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityNot ) ) , ty: ty ( 43 ) , id: mirConstId ( 20 ) ) ) ) ) ) , span: span ( 98 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 99 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 41 ) , id: mirConstId ( 17 ) ) ) ) ) ) , span: span ( 99 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 41 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 97 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 17 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 97 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 18 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 17 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 4 ) , unwind: unwindActionContinue ) , span: span ( 97 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 15 ) , projection: projectionElemIndex ( local ( 16 ) ) .ProjectionElems ) ) ) ) , span: span ( 97 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 101 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\n\x00\x00\x00\xec\xff\xff\xff\x1e\x00\x00\x00\xd8\xff\xff\xff" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityNot ) ) , ty: ty ( 43 ) , id: mirConstId ( 20 ) ) ) ) ) ) , span: span ( 101 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 102 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 41 ) , id: mirConstId ( 19 ) ) ) ) ) ) , span: span ( 102 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 41 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 100 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 21 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 100 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 23 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 22 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 21 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 100 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 20 ) , projection: projectionElemIndex ( local ( 21 ) ) .ProjectionElems ) ) ) ) , span: span ( 100 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpMul , operandCopy ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 103 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 24 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 42 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpMul , operandMove ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 19 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionContinue ) , span: span ( 103 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 24 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 16 ) ) .ProjectionElems ) ) ) ) , span: span ( 103 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 16 ) ) ) , span: span ( 106 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpMul , operandCopy ( place (... local: local ( 28 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 104 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"d\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 22 ) ) ) ) ) ) , span: span ( 105 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 29 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 42 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpMul , operandMove ( place (... local: local ( 28 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 104 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"d\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 22 ) ) ) ) ) , target: basicBlockIdx ( 7 ) , unwind: unwindActionContinue ) , span: span ( 105 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 29 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 16 ) ) .ProjectionElems ) ) ) ) , span: span ( 105 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 27 ) , projection: .ProjectionElems ) ) ) , span: span ( 108 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 13 ) , projection: .ProjectionElems ) ) ) , span: span ( 109 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 26 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 30 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 110 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 31 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 25 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 111 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 32 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 25 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 112 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 34 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 31 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 113 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 32 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 114 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 33 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 34 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 35 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 107 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 33 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 9 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 107 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 115 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 36 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 10 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 118 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 38 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 11 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 119 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 116 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 44 ) , id: mirConstId ( 23 ) ) ) ) , args: operandMove ( place (... local: local ( 36 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 31 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 32 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 38 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 37 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 117 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 120 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 121 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 90 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 40 ) , span: span ( 91 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 41 ) , span: span ( 92 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 41 ) , span: span ( 90 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 42 ) , span: span ( 90 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 93 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 40 ) , span: span ( 94 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 41 ) , span: span ( 95 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 41 ) , span: span ( 93 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 42 ) , span: span ( 93 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 46 ) , span: span ( 96 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 122 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 16 ) , span: span ( 97 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 43 ) , span: span ( 98 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 41 ) , span: span ( 99 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 41 ) , span: span ( 97 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 42 ) , span: span ( 97 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 100 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 43 ) , span: span ( 101 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 41 ) , span: span ( 102 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 41 ) , span: span ( 100 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 42 ) , span: span ( 100 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 47 ) , span: span ( 103 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 48 ) , span: span ( 110 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 108 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 105 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 16 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 47 ) , span: span ( 105 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 109 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 111 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 112 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 42 ) , span: span ( 107 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 113 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 114 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 38 ) , span: span ( 123 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 37 ) , span: span ( 117 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 39 ) , span: span ( 119 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "i8_product" ) , sourceInfo: sourceInfo (... span: span ( 121 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "i32_product" ) , sourceInfo: sourceInfo (... span: span ( 122 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 111 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 31 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 112 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 32 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 123 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 36 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 124 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 79 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 80 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 54 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 37 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 15 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 13 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoEnumType (... name: "std::result::Result<(), std::fmt::Error>" , adtDef: adtDef ( 54 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 1 ) .Tys : ty ( 76 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 23 ) |-> typeInfoRefType ( ty ( 25 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 72 ) ) - ty ( 25 ) |-> typeInfoRefType ( ty ( 16 ) ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 31 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 33 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 34 ) |-> typeInfoPtrType ( ty ( 25 ) ) - ty ( 36 ) |-> typeInfoRefType ( ty ( 50 ) ) - ty ( 37 ) |-> typeInfoVoidType - ty ( 38 ) |-> typeInfoEnumType (... name: "core::panicking::AssertKind" , adtDef: adtDef ( 10 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 39 ) |-> typeInfoEnumType (... name: "std::option::Option>" , adtDef: adtDef ( 11 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 45 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) ) ) - ty ( 40 ) |-> typeInfoArrayType ( ty ( 2 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 41 ) , allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 41 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 42 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 43 ) |-> typeInfoArrayType ( ty ( 16 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 41 ) , allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 1 ) ) ) ) - ty ( 45 ) |-> typeInfoStructType ( "std::fmt::Arguments<'_>" , adtDef ( 22 ) , ty ( 52 ) ty ( 53 ) ty ( 54 ) .Tys ) - ty ( 46 ) |-> typeInfoTupleType ( ty ( 2 ) ty ( 42 ) .Tys ) - ty ( 47 ) |-> typeInfoTupleType ( ty ( 16 ) ty ( 42 ) .Tys ) - ty ( 48 ) |-> typeInfoTupleType ( ty ( 25 ) ty ( 25 ) .Tys ) - ty ( 51 ) |-> typeInfoRefType ( ty ( 78 ) ) - ty ( 52 ) |-> typeInfoRefType ( ty ( 55 ) ) - ty ( 53 ) |-> typeInfoEnumType (... name: "std::option::Option<&[core::fmt::rt::Placeholder]>" , adtDef: adtDef ( 11 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 58 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 54 ) |-> typeInfoRefType ( ty ( 64 ) ) - ty ( 55 ) |-> typeInfoArrayType ( ty ( 56 ) , noTyConst ) - ty ( 56 ) |-> typeInfoRefType ( ty ( 57 ) ) - ty ( 57 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 58 ) |-> typeInfoRefType ( ty ( 59 ) ) - ty ( 59 ) |-> typeInfoArrayType ( ty ( 60 ) , noTyConst ) - ty ( 60 ) |-> typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 26 ) , ty ( 41 ) ty ( 61 ) ty ( 62 ) ty ( 26 ) ty ( 63 ) ty ( 63 ) .Tys ) - ty ( 61 ) |-> typeInfoPrimitiveType ( primTypeChar ) - ty ( 62 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Alignment" , adtDef: adtDef ( 33 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) discriminant ( 3 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 3 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 63 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Count" , adtDef: adtDef ( 34 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: ty ( 41 ) .Tys : ty ( 41 ) .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 64 ) |-> typeInfoArrayType ( ty ( 65 ) , noTyConst ) - ty ( 65 ) |-> typeInfoStructType ( "core::fmt::rt::Argument<'_>" , adtDef ( 37 ) , ty ( 66 ) .Tys ) - ty ( 66 ) |-> typeInfoEnumType (... name: "core::fmt::rt::ArgumentType<'_>" , adtDef: adtDef ( 39 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 67 ) ty ( 68 ) ty ( 69 ) .Tys : ty ( 41 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) machineSize (... numBits: 64 ) machineSize (... numBits: 128 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 67 ) |-> typeInfoStructType ( "std::ptr::NonNull<()>" , adtDef ( 44 ) , ty ( 70 ) .Tys ) - ty ( 69 ) |-> typeInfoStructType ( "std::marker::PhantomData<&()>" , adtDef ( 58 ) , .Tys ) - ty ( 70 ) |-> typeInfoPtrType ( ty ( 1 ) ) - ty ( 72 ) |-> typeInfoStructType ( "std::fmt::Formatter<'_>" , adtDef ( 46 ) , ty ( 26 ) ty ( 61 ) ty ( 62 ) ty ( 73 ) ty ( 73 ) ty ( 74 ) .Tys ) - ty ( 73 ) |-> typeInfoEnumType (... name: "std::option::Option" , adtDef: adtDef ( 11 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 41 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 74 ) |-> typeInfoRefType ( ty ( 75 ) ) - ty ( 76 ) |-> typeInfoStructType ( "std::fmt::Error" , adtDef ( 57 ) , .Tys ) - ty ( 77 ) |-> typeInfoRefType ( ty ( 1 ) ) - ty ( 78 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 59 ) , ty ( 56 ) ty ( 26 ) ty ( 26 ) .Tys ) - ty ( 80 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/arrays/array_write.state b/kmir/src/tests/integration/data/exec-smir/arrays/array_write.state index f161d0351..b5fd26e06 100644 --- a/kmir/src/tests/integration/data/exec-smir/arrays/array_write.state +++ b/kmir/src/tests/integration/data/exec-smir/arrays/array_write.state @@ -58,41 +58,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 1 ) |-> StringVal ( "assertion failed: a[0] == a[1]" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueRepeat ( operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 9 ) ) ) ) , tyConst (... kind: tyConstKindValue ( ty ( 25 ) , allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 50 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 50 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 50 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 2 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 55 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x02\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 12 ) ) ) ) ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 57 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 13 ) ) ) ) ) ) , span: span ( 57 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 2 ) , unwind: unwindActionContinue ) , span: span ( 54 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 6 ) ) .ProjectionElems ) ) ) , span: span ( 59 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x02\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 12 ) ) ) ) ) ) , span: span ( 61 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 62 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 58 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 58 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionContinue ) , span: span ( 58 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 11 ) ) .ProjectionElems ) ) ) ) , span: span ( 58 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 64 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 13 ) ) ) ) ) ) , span: span ( 64 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 63 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 63 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 17 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 4 ) , unwind: unwindActionContinue ) , span: span ( 63 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 63 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 65 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 65 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 66 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 67 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 14 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x1e\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 15 ) ) ) ) .Operands , destination: place (... local: local ( 18 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 67 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 68 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 69 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 53 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 50 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 50 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 31 ) , span: span ( 70 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 57 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 54 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 54 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 58 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 62 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 58 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 58 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 63 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 64 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 63 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 63 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 32 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 69 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 70 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 71 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 33 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 34 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 17 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 32 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 10 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 8 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 25 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI16 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 37 ) ) - ty ( 29 ) |-> typeInfoArrayType ( ty ( 26 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 25 ) , allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 30 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 31 ) |-> typeInfoRefType ( ty ( 26 ) ) - ty ( 32 ) |-> typeInfoVoidType - ty ( 34 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 36 ) |-> typeInfoRefType ( ty ( 38 ) ) - ty ( 37 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 38 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 22 ) , ty ( 28 ) ty ( 39 ) ty ( 39 ) .Tys ) - ty ( 39 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast b/kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast new file mode 100755 index 0000000000000000000000000000000000000000..8f750f4766fa2e6a78129d0c84b35265e46925f8 GIT binary patch literal 3980224 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 rlIzR|Az16p zhucl#H<%AXu$sArV6~XG$U3j$N>vchs?4E0VVXL8+3m z(RvGY%}L!`vwu$N+#0oXeNdW!pFODy9RwnOxX}dwNCtu~nU=hkS@zl?H@sQmTvj3=%zcP$?pjAs@s3r$sT2=H%qVVw!MB2Cr6qT0+@V?I=OEv>~i0K z8yreMBskO^c885YK@4?Io-(_x)^6yAM5Jl*kD1J7Y3(8@BaQQ&VIg_T=G>b(^=S>y zDyqPD_n#lDsflo$QEajX73H*&n^{`m5GQJ(ggI%I?05CgZj&8FWZ60u$;`U zB5gh-2pVxV%b4cIc{fI0Y>as_V;|}}(2Ylvl%Ob8Qh(YJv_(;SA|;pXm*5*!M0Bp2 zBZjn>S7SZfP5ZE(m1d$i*JUnoxp-0I#wFK);Urlvh@QSw+Sn|&dW`%ij&p@PB)_Nt z!1|^WVJb>Sjq`coAsSe^ha56W5ZR1mPC4CNP;ry0Y^)mPX#{pWNi91?D2^IaagA0? z{EcdBM357%w`}o9?W~m&GoycYh-feZBaXEHBppX#cGCu#xXxzjj2bcF()nl^xb)f@ zVW}NlS%9!oF}Mm)*sw}zY<#6{P$X#^^hp{elaz9$?TF8;#(CgLP^D1ear-0A9G_?~ za56NWV~D==2raBjh%h%jMsy*<8YhO3lXp8psTYHZ*U=$)JyN+FWtzK2q396CQ8w|h z<*=$FTSCf6%8@pO_wA0bOOS>LlsC`}6~M{_k-L(<6S_wNk1!sZ(gIHiX|KaU++1;aa%bAfi3dSP@Z_=|TqJp#fY}omR&v)ML>3K}* zX-GXC_I(hYgxZW<+qi2_IW0#V75tS9L&%!-qUeVt+SdSAUvvjBeKLgT(w{pzlHz^V zXWjR3l@$N$T~jDJ_g#A&ic1}9;wwMri=jWP0}6_;8n)=+kt(>0guC%U(lckIJAl#b zzc};m1{rRkOR3JWCA1-x?9zv}OjRoR61V6fuKKW~#E-2X|2PB3b(9yp>d_Vf1>q!8 z$xiNilES(82+X=4bi0x_*2bs!wn$PD0?1U^VyaXICa+!j=#`+MDX4`zYhxSPCd#Zs z)NGt4Nae<7g1KA7S9A9n4~31x1bOF?k`&wU)V$W*gv9>S6syf9nXN!dcgqAs=Fl6S zB-9yBv{prGpCqIk<3ay!mkExJ+QnGsmq0si*9n!Bxs#r2%S3g|v~nEzl(}|!F`*i7 zH4cF#hC&IUB<_yTD^|62(o0x4y*L}Br;oKI_8)0|Rl;2*_K&a{Z)NP{P4aqefz%_( zGrz*SEbY=IUD&OAK>5V}!9`slfU3S5W+lgym&6Lx+E9yi-@RmDo-p36I6rXAv)>-#G&91n8o)?=3qF1I#D2M=o7TUEI; zT|O96Q3Fd^Az zcaM*%x*ER|NFa!ECf3n-tEojz9<7GfOCqQlNbn5IKvYn)qSOn;dMSkr&?4A-glzJB#e{cq6`Uy%- znOu3wK~Eu-^!Z6L0|%2@rIO#1BpxZP75kWe$Y{7F#RVt?G96_DkuCv%bO6S$QDu~QzRs~%n3V6~6 z-liPbw5_2)gi!^3(d5%~PU^Q>9)$11`GmV-Cc8>7&J$}V@|on797@%)nich0Yk32y zF~#9`oOfGg)*-@5Qubi?Aa{C6II*6S=^of4H$Zx=xgEaKV_nK@Z2mc{5&}L;t^V~Oxbwh1b1U`<>Mi5DzYex zRy$>F?(e@PunrsSzG?OuQ-w_hnYg@tS=)pq)3O`?bKRM;qKDIP3yamYCP7!riZzg-2}) zTX%kdd%N{mp{%{$qAUB7VGMN#v?CGcg@~)8V7l}wcz=&+6^~eVeu8DYj!b60fdUxs zgS-tCp8-XQrG%dOl@Pt}a>`M6vk|9Vxx3@(bmUa`YAP#}(H_5U2i4(l)YBiVL06;W zPY2GC>1W(lG0Dkd7e5PQmz{3J`GmvYQrkJ8%yyc~pj|N`n^6|9dm73r;1+V5n@xq( zkHZ|X>UXt$p-;23^T||5FW+GqI9H*yR8NxKPg1kkrRiQ!gfaY>V3{h5f_Og|++)df zf0AZ1qnT0Lbs-~WH8IpXzd936DnKlEc_&pM0 zy7X-EC$Ub~vI|JwuIrzvQ`SCMxYQZ(Ch%(WCstw-K(PJUn&{QRHSZ))iT+@A>0QMyP-C~?YKBv z0Y*n1IK_T4I5PcfLEn{4IQLEFS!;Hl4@90mT~70aM%|gzGUIMPB5UGGAi%*hTzXufcQ8QFah{w9I{57QZbc>~rbuRId< zHLCY?j=AkZThfh)bKTy$V9Nu!Yjku5Cxky|j9x(LMu;RA9QGpW&VcGBc=1y?~V8YKs`#u-)_5xn-+*uiw_ zCy#2ioE=~0P@>~6>T(N}{{oKQ}w~hGB{{NI$lJ~x@!^d-( zBk9dvl)*oFUX&gMIxQ<%^$)V2${%p76zZ;0WTB?Ss%Ev7D3g5)mITMz-LIEo)%WzE ze$Z{U%Iv!LZEG^7-!m-CNxCaB6p5i9TqRsnP$?hONTSJh{YPSx{TfJbl7%H# zes=IvVtLU=G^lN6#5(v$Eaa%WFSe7!q#wUYXaIR4Q_2 zuSC37z3F%%3mi20v^M9)p|sX=D->u2R*4w9yUNz^t7@Y_t=7k#d4LE7uNR=tELpLi zf*fg3NXDvOC7rj*wJru;GU0Mu^sD{SNR_XN)r#PI=T`DZ^uy&S$W@1mEm6dICw(XT z>V!t1YpthF;8&LFFS_^x09910?R_CBtP-5}!Ts83lbgN%-1!yv;s8YEC4<$;2=v)k zdD!C1O2wtImj%+bq}MBq(yk9kO&QTGHOC1 z0z>94y6V%3!dEcLys!6+PKkca?4OXR!_-LKwnbm}Pdwxj+l25HPZXYhu(++{9WN=) zu^yN|9?JOek9o>)W2D}NJdyb)l%h@Qk;yO${6%R8(14r?yM(qET@$|IBSizJ50fHS zq~*6M#S?202j?t(P@m#V%yP6)td1sc&o`-f8!s(hH_#$wdC!T01M|c$8cn{zb-lL) zXLnSBA0ZBzCs>SVNYChMy#S+;}Dv0_NWEWXkVPjyTER{2e7Nh^0)75FUcy^2}afGB*d2RY>@6gYxPWhCFz6(f>WGlbvcKzHg_P`CTckAJfo6N~N z=Pc`&G+sO>L@Q63P#XdV^>*l|y;DD{Qt~NZmX<8#j-1a@b(wbh_6qHEW1I@B%ug`A ztVVu1_to-=ILqoa!Dz1?wwV%nQC&Px6KqC-EwTdnE-{r_d166#sj#fSgoXG*^Oi|ZjA^7P|xfR_AA z>m`kn1{HM5WD_b@!yY`ok}LBA$?B`)yx{Z~2hApMsGff8V(ANBq@~!PX&(DC;>GyN z_h{+`e^O9VOoDFGlDhdpTAw3C?gih-Qa#5IbQNrlzx2pz7sxY>DYE)x>x>8)gz>!eCg=LxvdCk1? zNh8?p*^XM|m^WRcR>ME@@}R4#Y4%NBX?yK1(I2Ut7>ef(jC~0fCW|!EB(LAer$^v& zbxWA}DNRD*^UNSbtj2AmDEUcyc;uiYL-=zk8Ay(jdN^)1Aw3pBz*WYmDnin>nNYpS zS!8lHnNUC)HX4H?w z8;NXq#oXjGLBb=TEPUlN}N7fwaiOMk7Kft>M@AJvE~tU@v=w@b?F z?{Obfq?ZTEn2x#NRnR~-P#ALoG2(vi<@CIVDKLtv3MzSMJ#jyylFVkxXa0zMkUc`4 zf<;s`r%(T#T#iz4G`--*WWSN@k|EO}3MW&U zj99w)HobQwbK;7XpXbJH$yVfo(*=oo+|D^=ecxsQ4BTC_Usv;Z1uo41RM#A z#P7H#TynMNZD=|i;l75Bu@Filk$c1Mr z%-kug0)Qx*>EL&^!Us=__k)n^(p+#Q)%)?P`l|W~JvVM0!Cpe25iM#ys&K;kCVfNA z#Nv+(&fA8YspCq((255w%#6ux=1?E600!_fuhK^XJiirjlbQ9>k)&Lt$oz>vx#0U! zdjWEf6wa_%hx0iix!ONj^?L4%|^* zM8_aRr=I}0R|}Ebzd8uN!uA>zq;68!&*tG5 zt2FInV%>ajVvyd+FXfWHxHA;#qXiCcofzY#FTUk-&a!GDDe5W8+^ZeGUowCbIrNew zB?O63{{Wa|4edV+} zAYFHo?&QqkK;H%|v4mN9CVCGWsuF7Rg~R5P7(0WsJxZJCJxXufDE-mRfIQ8^fJ;*~ z0{oulTDNOv?#p$$av$gdTIOCcf8|!tko!P*p_Ltg%^8Nn1(r|ECT6YDzV3>8)P0r= z*4!R_C_^-S6$}!yLc9*DiC->wFD-88ftBWqW!pLM#(86e118=W=KndoZ(cH10Ox`8 z9M{9#=CNfmG`tNrV=M+vaG6(`9fOZUB8=sNPY~t%sLezGi_3S9Bia1(3C?jmWljyw z_WOzua?*)E2{O!H4#idM0=bd!zjhPMie;oi?HO15@DBp_R_pGg!D6Qr>86NH-p6SS!!g~(tzPl9%p`Y-Ywv;M2 zrL-o`uj%vF!pm!Wq1P@^H*r^rbhlq!>{sPnm+*h&^(u7FIQ?j{jNDF|>%pFzcqge%Cg%1hT0!Yj@OJ{+%u^ur%A zG2MLRA0zxri4oQ6@@ff}{y@T4K2d8IcO!am-XC!%R*Gp}#J!{j6V_V0`|Xl8?DU$C zjXD@5a@6RSM~h$MV3zazcNV`H9e!3BKNh{1J*aSf-e}i78oMWR7_H!|y@O$>rzLep zZM(ta_#M9D73tczN1&!@btnFZ)$$tBT6o#R63flnNL@DecBF2*wPMp(i5D2%3(LwP z?o}M8dh3KPd~M|E>;bkbp%jN7)Q+NZuv$8*q-|Bmv+4=OvGq{`DzM{3JIZ*0DV8R))p8`JgKQ`(B_D1TMfu6S zEg@ufh=ibLRS5<3(f}bj79nk$WHCo3KIMO4ecKa|(TDZvXH~!EStZw_Fxl(F4bjSskyPrB+HfRG8;C_*qc)D)CQ0OrgD=sFErEj1=hk;$VclEu{ri9pph`jYr&ddj!2veGCXlA2yMbh{302A`klbuS^(K@yA>Gadk~>UD_dkK8T$GUh z%5Er-tT3T|6RPs@WJ0wjR3zODByAH4n9wW}sx+Z_CRAfWOH8QVgj!9g$%Iy#&>R!e zeIYw;19cz!3LuM{P|Aeno6u@4Cy&;x>*A*n6(2UrU6KuKn0jj%eZhvw-Nw(fNf5je z+F?RMB!tSeiN+K^D@<#$suHR)32}bbnuI1(-Zr5=6Pjg0ohCHTgyx&j5)+D>P^$^G znb1lT>M)_zCRAhySI9{CToqd$y`1OEun{N5(e<-F%d6*lG=9xFMCq7oTi2|g8@8@_ za;|k%uh3;Z^$yO-48E?Q$w#b~JD5>aF~vI(8zY{+^419tyI-b$F1U#8-c;|zo@By$m0hH} zP8lnE?OgCzT&9QL%oX-0q* z2h4X>rTN}bW4?FQo9~(?^IbQGuay)PcjmGqi;9HzDxV9qD}xKHQqC5*Ls?qjF6Cu` zHDxl71M4dIG{}54U$54D+imk*HOqYOm}kCsEivCUt$g37;5waqtO(LwET|2y37C-2 zhbm1-c+~sCD4>W2>%biiR<$1BOD!v@j-=J{sg_q1lU@2#??VylHKG3xFelKT6z&8Y z(ZhNe%xcl*31Z5V6|ydHMq@%{CZtF!Pwv z=dK$4tf|+}x+XpiR6fUi)mEKwd)$OqwVCf79p-yir}?f)nXhV~tSYcxp6n+I`08cE z%9GnnNU>g?R1IGhZ?%*geIOKTvQ+{&g>*?MPl{HD+EQezHwn5VlqZ`^LY#y-CZWlc zpKn5aCKNZJP7`V~q4_4%VM1{e>NKG?6H1v-hY9tWkSqzb*G~vBXPbQ7ldgVJIOS>Q z@)0+Fu?vwtXA(fDD0*PC*xC(0DMXlQ-pN4u?EN-Qh(hMM%q}v@zc|)sGS!+7A*=jI zAA&}M7Dk&EK72wdStTiOZ5i16>t!i%UdaV*s)MF1|_}UHK!kV3;v{d@e8)GHjGMItW+#Wxo`Dc zkzMz(bwii1bGf86P1^8WwJj1y7M|NDG2L&MPV*+5z(%Ow{`eKxv>*-$SjDrJ?2r19 z@GGqri_GD=#TAPt^0#c!ThZ~yEP9pAQh>f~lZt38an&*WxZ*i&WB4s;iRNM$6;iJ( zvE$^)m+bKRwZ&m4ASVhkNU~hs4W4AC%GeniK^RcyinBXd=>1c?^j*D-A;b-3FIZYjFAs^9c5f=6I8LgJ(M1BafQ4<+aw)91*IW8Q+WISO~{*+K2kjU zbG!oT?JH~IQ%Qzfdv3Lqf-!f^R+?yVR|&gnaN9rB2G{M7kF!oV2Mc78R=l*03zB8> z6IHav7_B`EC?OR8Rq|oSK_No5grZ(#>>TWjIsqf<{ctSw%lfOPc~}>7=r62=cIJ~# z$!&aMI4?C@0dYiX-I|K9<%!^}vitSQ$fzy!#Jah=tUGqF%7K8=L?L8`K0ds6cMnDe zV2-{wcAD89b>8HyYGBXzMu#0Nrq?yHit8~+<98;tqT@r~t4s)AMgZakQl7P`=Vrdbki3iXM#M23o ziCV77l@Jyc39LhyVQ72HSUJZg=P!cf^!I$`5G>t(KXhnBRVYRY++oMAQf}JbinpJ{ zU$uCV)$&DCT*xZDstu*_SrXy%DX%pSbk^E7`LwoIfU)?_14VcgS`itC(@NBj?I~b# zTh*w*P?tPZ!#S(l+Gg?^!f0*PP_)f1<=GbMNLET6?%~HW4EUF1;THlHiAD&D-K3C@ z|6r=f>2rVpsiTR{{aTl~Qpki5lFDt0t88|l)v_Mmp3tGDk821pouw35m?a;%2JlX$ z2$o;s{@tU++!A+s+rEqijyK_9=^q3sFmq$lS{|c3_Z%@}zfxhp`riag{|zJ%`mdmiKi}HXok&XK~27Ii-Slz*X^)XY4D{9uCthQL;LzN%->Zf~tWW72Gs|R9gCp&7tYhlH)@Wi#G`h@|{)V zY;?bCbJ^-+bVF2$#s6KJL3hIux4u3scSdd}E|D8$B_970rIUgn8BDGpa55j^Qg68U zJ-hfxd-!*1x!Z_plzqUsM|yPX37*hFfF}Lbm@*MEM@>ZBL=@#C25x?%WTO$2I)C7o zP_~I{8~D{R@T=bc#SQ|)`A5jem~ao_L4I*UDAahSwf49#gc6?ztsB^I6rJfFcGE=n zupc)%Jj+%3q`T4{EDLB2F z=RIrrGyG^U#;Xwwn3g}JVgH?I9dFx>ZzeKQ-D@rX4L`&m5f_@JE!2_AZ;>eDr^(Id zF9U<*sRTm1x_7}sx$PxyQ`hw__@?U#LSPdH+IWS@E2xmXXS%wOkR6GscR{UhJ2Q}7 z`b5=Q2iYrJZ@xfcmLCBqaX-{Iw+*#c5eeiL4Qv@dX-9qr{8(ROFa8(Yt5-LFkEL&( zz<_mR>;6aJL-AO)*ALvKT3=%&AxE^djX-t`(Y}-7(U~-INM4uEgJc-8zJOowKO!kX z5eye*RrL}v9;um)gKyg&& z5;C*J9`MIHZcD_wOIUN}?9#o!_YqYBk?doE&-f);)j?XCxo^ zrU(+8cdvevB}PLmCO3f`7VR3+V3@U%#ViF8w@W11$oMW{+=#92I$_=EM~@J(wcRX{ zKd6-~TqNSgRKyv}dfi-%Qkk11Dh69E&#@xfu4c2{6S+D+qZr3{s#8e^PLwoH z`3LoM$0jf-gbGB}J?8#_;hX;lI&bXS<%I7qlHbP`(jVxdTy z(uWrrFb!A@JkhE@v08d_FFmN1wmpiAJ5%0CRNJU+Wd2;uu7(1-k7S;snK6*sw3i&8 zK17bw$$>Tut5m}TtcEA(!%Nhywp3QbMkq~$gorz>GUA?#KJkGR9gDatl+(Iv`=y(Z z;XY8@2FlYZ9B;sdGA(a)-R`dK$$(~?Uxl#J`Ay;VPJ+T_Cx20j84KUe!d zH>!DcF)^KkXppV4cEc?_XtlEGLN`P$zh#ay^o9vqEz1rTdfJe8Lj?bos(5#RqL5Y} zJtRAd;6f_~SXDg;A2qVYG5Ff>)FXQ9+M|k?H7YpN6RALu(hu{%(+{ecqzolyKi>1m|-J9PRpF=U!^Et?CK+1+VpKvEqvh+7~FVSm~Ycy>7fF~5yC z5%c4cW|WJ1bC`A5ueSh19g`YzrZ1=Me1owY8(V)XO&i>}+Od#x18%5saDSsXR*pLN zmPsf-8dGD(gx%XD3Y#?_iE`hN8>1<_o31ardl=6nXTzMwx;lQ8yisd#Z9Fwgc$!m zvdW@&wPzxFG_*A8l;O@Wv?MC7&~?Se#4}JU&gZ8n)RhRTlqRh5vrj-p zI^_tfd?IgjEgU#lHA?*SL)>R$E(=NrCquhVhG8xZCFcmGdzThYhF!yA<%|nat|nyO zHw;Ypw{`EtGq@gCBR>NZEh|9FfwP4|DPmVTaJnRcUZZQPpA+UY)Ni#-$Cs z)lqkpDmgt@2H-_y<60udEJq_EHH>y3T!h4WKASgY0^4D2B8`g znlGUt*Y@JXP)-)TzJZ^OaT8^B$0Tj@lkma>Yre0aNlB+|b^%*-(%!Ge&12`R#$1QTjA zX|@Sf8iHxkkP^%+li*X*9Fq{Iwt4(Sz?!e0_9Z4;r>QM&LNXBKY?ToEBl-MWk;EDX>N0EMWh^UZKYiATE0$VWMKcy zkI3*f;-3<&)};7^(@_@AVy7*8*18?Be`Ic!9FCe0BiIQZn_-)|^g@K0aF4Hp1<6Q+ zvh0iEQWnw=Le}-u@~YOZ9M;xd5a?Xra@h()M(04jq>UzzPT_XVW&V{1_?t}2equW@a zy}Llm&a5m%mw(-e*P59ZvRu+RkwDl52&aHWsK6oav(4UxStQ&7#-QASHB3ToeWlNV z8MM`!u0ZAbGNM5kxPJ{$sM1%5yWgk`k9ue~Jv$l+p}L4G=LC1@Xu5i-+!kH?S;xcq zoI4DR>g5zr4L8%h75AO~6^sTVe}zz`b;z40M;Z!%H4)!js2=20WCCba0rM9~ZoB{r zRaF9#53fRhHPF8a^bhCRU|zegYrQ*bhdZgtoqAlMe!t#o?-^9=M^|G=f?|LBaIRKk zh{$p@sMddsaDD4KB?otsX!m_;5zK6lcakh7?1F{Z6p?VCoAlaWsyhqG;tLz1urgvH zv{f&8F2TV}IPsuV08PIwe8AVUbS)7Z2E%3`M{Wj5>sIn01Dezt@AAp-t0EJ-ai99E z*aESjl~;Yp(|_-M4eYbF1dA0&`W3k;Wa3H#Ou9Ep1*CFpImS=o)Om&(iQ9tG~-{Ft=^+>$> zneCm$32-+DBTre&Pk0do!1WK{}v8{@uQ@bRBA`l{gr;yBzwCIs*2#bz^P z!oTvi)>g8Ai_|g;IuPsiA@jp&e;8zA(sgoN0xPBT%OFec^{Xop;*Jyn2CnArint^@$K2}RRJ@@RLaeM^bj1g4|M6#W~IaS%q3)I*8c;o#- z$}yx$@y^UPOyJ^S=Vh+hNDR+3!r_Y)vz&CfoWpsCaf4_>z-oO9-(iT^I^j!y_+yoZ zcGsAH)GoT}hh=q1E+J>;&lIA1F}@C(Ew7o9dZ+tI$zAud)e?O{wi5X}hjCV0b{?wT z$Zs?~4Gp#E?B7p_b2IcS$g{<>Mu}APe~dcCUbA=b>H zg67ea;@2II7ut67Oi^NKXAxIB+{Spk_5^dM?r^}6wpt!(uEe#1)l!MM(4>tGCl#Hb zRySIYpC^LT)$#EBJt@7Th@g5J*sr{1E=kzM>UdjUl~ zf-jxEZbXhBis9y?)#Kjbio0lPW68J^jAtato*m`q!uB65i?`+#b#lBzC3AZkYD!|? z>?x@^9wSl~!Ej>Zi2MkbQ%=T#mP-HKIDgr%pK(4~$N5`YyOy1}v83kTjP@HWqfAF> z1(G{u$Vi`ab0NL4b5ML94rc_@r}#Lv(G^qJ3W!VEfH1qlrLKr1vEfbrC$k~*2mbIr z@vnYI4UfbQW7WC$&d+iW$Pp0!ZJ?{WhgEgA?w26luRV_U%OnSdg+qoF+xi9=tG0DyxP?~)GgrBfTI*ENOi zw()K;EwlM(W6^J88R?R(2d6eF){UMRzi#|~dE|?68%~}Z+hmIEgP5G6uA=NwgZMv= zNtCi$J^(ry-q6O9kx&94Kw3gx1Ab0rUfRcs>oM#Ynl$_DRJiyR&@50X;XU0}H~`I} ziWOXkl=A+~yx)T!{!{D!pU}gntc?GP9wrR|Cr=Oi$?PykPcpwmN)|Mg>ynz!6#o$@ zPN)Gb82;qxyplO@rlkAxT=0CdWwwyYSiSU3WScV3%X?=uoU!SHY*f797v{=*n5q4KxOq_lNa;s+FJhXxb+AZ5?mR&46v~7C{$NfW zzMT75BR-(3`@+<#!<>`PzuHgD}sbC4p{B96WVp>ty=W*N9&+Ml= zN=1}wko4wYQw3dMUa=&+pZ-;00poX=>1o{k{>yQ@Mhh8)Zb5h{B%~KSXl6Bl{lyz*?iT!?G~B9+o;~L`>M}@I=9(Lc#slA5h9#MTOVtC@eIMerR$8bLayH62-V2mcTY*Zl8*w`Q*7=;YiFemr z@K6`_=k%zD%7PrfzK9$bYK~8+z@&)fU3$u8q`X3Fyn8v2BBm4R8cE@zCn*n`6mtm3 zvzanzH4H-f#gEA&M{K#^FZ|N%I=5d+EPxQ}4%8_^eR=|rX0Oi$n@uz~3w3>rk~y=2 z0+|qhvikvFcARwM41xmefM|#z_Ru>&x*yI3&v9hT%%zP}F5m6a#y@Edu9}`U&2$|P zVeF7$s$Zab>Xy*nPmn)r1u(I~5@3c4fG_z0ONu&;9YfETxiZ-tjCy|^E5^C>E}gwZ zF2H}L_a}QgfDw&=yiX$O3c7OHcA5bW(InbV>22g=`y~2BE>C_}O7)bk;KL$In}^?E zVp{mfKlEuG(!2Rl;k<`{2!IVGHhvzGN9%FQi>k%E`#6mph57@CO1hp425Dca_zD>m z-2?VFyPcA6y+HvL`iB_G22aU1ee`+WGC6iD1EI9_$MfX!XfFLM0%R^2r;*+7v!_*V zz#H>3h>1&pMW4C60>$Y0a^$xICMNbe&I{@HQ*xJ5BG9URU9o$I=&?`|in;?uUJ(Sw zGF&Fi!FW^@?C`ULbXgSVTJNSf)=I7>OmvqY&Ce7+HM6H84*o5%3r~OBqPW_=k``xt z>SZGOXLuiPw&EUZC@M>tpMX)NpBOTWzMnwGGRbd*T|%wWtdT|t2?ruHM?ReXnKU(J zbJR7>d`&lA-(@S|tl>zO60uf(_L`q;an|(n(+V`Ml+$y>2o%zdtL0`&TvSWOdP#Ov zw<1Ov6FroZw_+X*%B|!iC#{7HVNY>o<`p}r$BaC%%=c|T0 zUjo1a{MYJ4f{YAoo&dx3FZ1NRx%*WB_ zCy-nC{ap8HG7$7pno3+(Q&JZGs|*bP;#SM8d?aOx8>wN(VX!7IcVbd_ExRa57>CNg zcfr;24DLMg_Tk=EQH_TRY+1t(Xk9v-jeQg26Dr{XE1)KxKaSMB$^pRP2nfcpg0vZS zIEX!2??& z2`ObbNx5i6ngQ3mF_Z73@wHFa8B)3QNj4cYLcJ!WEDVp5CZxlGBHx6RS~&ePAsHje zr3uN|yM8>O7H-jO(~n-VgRbiV8M?Olh&G3Ea!y>ymviD8{it~?1%)BVm8Ln8x4d15 z*D9YKr&yEZD{pM0sGhx(tFZ&{=MxYA#Qa)kx$Uh{+cgd&x7BQEklWwK?Ce)Fq z^DC(&;`~LdNDK_j>D`;%5OKKl(#K3~lU@|}GEM<{ZM#eRrg$aC=%z@|U2u!od};iQ z6Ji&sFWz;moopmpPK6{a>6HkeJ}@%l43rRuC0+KFs`DCY9?yJf$=y6_v$LMRQ^lI8J-5 z!eV?$;qZ~rM$I{*)%zX+lqXC0sJ_)umgO-avl z!Doe#R4v+kB}W+YDo^Wg!Ist1BH7&1)93(hCqfSnAYKXQH*p{FOUW$n)Hztn8q6Ll zV`5Cp(PT(B2+6EsFa0%9Sf#QvNC*gBh_7k6q{NnPKt>ca(b^TiS!x4c*)w1WE$^oo7yr(~fr z2&V}^YyJjIQYpt|Pd`{r4kpa8_Qy}NX158n<7f89cuGPxF%^O;)5%=$%TNwkLtp4>NjV>o^YE*l)583Nsx_mo8`nLULwp_KfXrY)?iq*F!BUt*5Q zuif`OWyIxzCDbS6%m}2@Nb!Ta&?-&;DZ`C)m9pI$nQfxqtq)A3mDK{L^O!7T2zT8o)h4sBC_+& zJb-hGmjb7~eEUN231d~yen?*P$hX%p!$vU+^3+2x4V z@=?SO+gl@9bHT?L)p1+ms+|*6wV(~7^37KAL+WHA28iIb%3-n5bC=Z~&r4!2O1$&Q z(ETEoARLOmz|%L9>U{&Xby*H3`D*M<^?dwWqVcH~t$y2TJqH%5YP9BKK+Ox^+be1& z5v{1HA~#+vzN{*BgCWrKXB`;zdONV%y&#{Xx^8I&!(-Z@=rqhT4Tue`sU}qzgCW3e`4doyp{o3g8}$jc9PIOSbikl3Ook9FQMzp9ujgNlrlFkYgXgte7@}8 zupOE_haau-qlrV$B~&NB>-jBJ@FKSHy0%Qs}} z{SnP)F;-Mu4c*ODYveU0`j7*L_ABtaJGA#Bq2HR(r?&73;aSt&gio4{p3wJ+y zV)w?Eln!gYTMjGSB~||MqTEM6g)!x&$2k+Md+k$o^1Vr!xrtBeV~L3Ko?ZP(SgzzX zg9ONwE0!bdI;_nuBOLbjJ;S=U{`AvCwu%kM&_$Tj6jGd2xb7iq#TopB#74k-R#ItE zf)~%q{9Cm%+wwnJu@pn*cbh7>tXYX8r`B*WQaSz@mhXZQ!_HPt^GeR(LLs+{x8R=+ zKG{1dab3lWIJ-BSSR7$(sE^dW982rn%|}QLyg1rwDHq-*kI1WzQn~k`i?E%EjIZsoVl7oF3jCfk`hi}*Q&I|o&wd!7)l2Yx&8fOS~v)tmSG#eE%PQZ~k!~+x}QctHkz7{thZw5=!bNV={+M zZ<5>aWicSLTHcVPy2g~X;%(9OF|Q)L8x%@hH>`yFE}JB7xIE?~^JrEjMyQ?9;!P1A zXt9>BB~iqJjF4TV7^=SNRDm&4o#tjViD5T#ssYZGdj2QCU7~efo(j1Qry2ks8US#z zR3a0fCzNE;1K-yq3ixc-Mu)WooO5lS`_|4<;5$(30>0a&iosc;la;W}mPoOBtsIx) zkUWtBLmQjN)BBkGRxzu^~C{UD4sL8q94LM}2|nJZ=Q{VxEB7Jp9T`}vJqEoYF|2Ot}A_brOlJrYBO z@Lu@XhyWmmdtvvwq8%Y;rvcyuX}0c@h3hg$$uHb?;cXgf*$6$q(&+9xSc@0TxnXytv7NR#|71`rtjWQEKnAhR{Y}ieLMh&t5 zcg#ZcA14=ztV7qMWn0B}sohgD7ARQHcMsYafeBC62LPl~Vht_+gGC^9&#d8hr&6#S z_X9JLvubre^<#~&>nXh&or#SxTN5@hoyHH>8`*$we;H0Zgg*AoW*#XA`Nv41sne_40$SsmzSlzBNrUhCFU2bvGvGMbo%8n_82=x-Av=a32BzO*JWDV`-ld=pvAA2*p(_V8I1 z_OkI8M8XrTWtw~4(UtPt-SP{i#o-rJn30ZQhPydqOM{?z=>7zMJB)Xx zS`rhv3TrvHzjKN47?>QWQ9WtfKnN=XzS9)GhY+qJ-d!u7L0o(X15}1%97aX`GQ+&3 ztw!Yq+)<}L>b&=@(r+=N-Gwrv`w{E{k*`Uf_w27lS4KvCa-U8$tFb$dp$X1Mx}(m= zng3*pb5J|^JkGO5>eP`*_XOvP-!7cJk3Y`6g8(RyCoO+XKAFz8I~|nrDECQ7P&@-F z9Uh>ksIxx&)H_qXl6@lHVf9n$PJBLWo!K3&?hA{L(H+H$UyiUQO>;}S!*$!5VZUtG zr{J*GuIpPkklZ{C6fZFlh; zAej$=>6}e49cOPCmzup{gZO>U|04?%$XP%fXaSe7|I5>>m+#F6-j=g<^Xn)&0nN@{-@psj|Kp-uNchg#J<@ z7{%gh!M-8$0uY{1Vryioc1DI@-WT@1K04~W9RB#_aPG0}{zLIs_qRnZl(O%FBzh_a z6!$1&!`^ux+I2gv<=2Qf;+2e#era3O$wcLP%h!o=n@YlB7(AWd)4hF%hl`(ze(60_ zWzp&_Ytn_g#nihWxzsHL;I81TFcrC zpPbprj2O0X|H4hy$jt9VSQN2j?S5lLG5bjK*Rd^&ErxP9wmFRUH&j}!a>t_iyS7_u zf6Hhj{z^ZLvIaht3*L=EkS=;RYjv|zLZV0(Mx;r6TCr#b0&8{=o7I<+1D0)-*Ig`lf-+?TJTUh5zMFekQNSb0d;n=uyME&2~!7)x`%$!87v%}w0cPeJF6z% z4XC?1thGI0yJqSLNFC=;N9H0XB)hy}f{sXa2Env+(aCcs_B2#s?m4liq)P2Q6AzET zVIAYr*cEZ+p+9CPP%e|9wqO?P@b6~pC5rhioO=pF5w7~OzlQLTE)U{yc9a#Wt^L(J zloe1tx{p1T75{__19N)Barsqd=zLnX)rR)N&fjgC z0R&MI`kOD2L+VA$jTomd6UG+d#F$agBf5Q=OJazTOj)gyI6#g#S&r+3+}+ZCpxBF2 zG)%N8cqx(;S8kaxa_~$G2k7jR<pgG(@)Hv?V8fc)C}?0L{^U+<#$%$+_cyU0$ds zSH0LziBkVk(pE-K4hMA!9b&Y>ycR1l|4e?Z0AnmLxCswPl7y1>IQ_X%qqsj6{Ct@{ zIj|Yb!$PH}>Tx9({0j|+^;nLA@$E^;QQQnm)8{$zhnO)No1KXN9Kz6^@fyNzJp+k< zziepFF!)+elwM$zPGq1k_L&~0ZKsC zA25`nxQqLWyVow|>4T-uU4x)sV;WeP=by{{};sk+9gAWoZ)zqr~zWmmg~>#KK^(!HJSJ3c|*5dSc04! zb7FvS8nzf>`RRB&IM<AVO)0?VQNgN#Aew zj6sHZ;vTQ#bPO$>%t-&(1=_ARAzMHCz**Rx9SDz~t#)hgrdMp@@~!wnyz(&`(hO3& zJP#@r@n)gSD2!61BCC8xS*2ATDGTtLbs2AShMn262Vg_Wj4N0oSVY<&p*X8eEAvkv z)A{G9853ankZ&V_^c{ogMKoh~aTTga{wHS{5gXN1qZnpXK}cBkj*#jsLV7kRp1tl6 zXoa_8;+4HZ3mHfT%lp6B@>1sB^v*POxme&2YtfXkQ(RoN$WQp_iA%OHpm+!)uPM|4nJ`Riu z`e1>A0^4cVPxX4-=GjgkJJ#Zb)5blWT`2JS)mzC|==jE@w1vOeyR?Mcu2ft74#o=m zC=w>HMyw@cWViz0*S6qK7~_`~?GyVFyX;*ufm!~p3l{B%4z+n0yYu8D5vwu7gg`~f z;m<#F!I<)xy98jQk1neP={LV9flRaq=5n~_pOkRpbI8H6;0|9Nipgq&SM!D)_lH(m z$wks{Z|TbPKb{xqaA}8XwP9*2VG}U6y)wX8FY*~+d=5Nnyqq;%-8RUatd=FJ%MF&al`k9$x z--k=|=r6*}<|z8~{sX!WMmhbX3I52Uq5NNs?B)12(~&(L;8>62mKwJ+tqXt*SNCA( z1g*!af$*M1gP6n4sVF1&ll>89EsMrwQUHhey}M(cGTzx}@sNslrQaIQCXffPI0OFQ z!MW}tAI?)n(mg3pfwGSk3WTO#gt){?N@1)lfDxB6Me-y_9>(o{#^&eXQRx{9kqSaA zz#<5-9IMzZ0Aekx9pLb7V5T(sGvzDPEB_CfDZxCP5!uFe31!*de!q@^GBF%%)YWrl zuex||vR!?Wk?r}&P-4fi=DhU*vJ?^giq&!uKlPQ^uER_{?bMSg9_)&_t#}iBBqI*D z{QBZ&92>h7-|rD`GDl3iI5yt6;QVkG9g%+)%GYsQP&FK8H99Yc5>Hfy5*vTca>KZA>+1lK7ecKlCL&8-J!%Iz~2r0-TQ>RCBVPq z)UY)P9{@RPaWY)@?BaNs%|Lk6E~yi<#EscTsXFm#`NBKJYx8z2ASUb|LIzFrQd5eW zQu}y|`w}^+XB$WZv31gGt!BHOTOY356ng}2BV@;>rHK!`D;_CE^oIk>ZA`THaN@4C zUICIbVRRQW8}R2ckn$-wqLikL=d@TDV7}BV1!+e}nj!0aa%wP{D>CA%Krsvxccun1 zw?kQ4M&V*fNY7yvLwFqHI}6Mf7NU^EZ&w5Hzk{Ntq7HNcEKIGELm5 zO>`A8_eEO4ah0De?A5%fY%sj5aq`~|Rcx5BG;CtuGa;}0gNQGoWsLWJR!YlL*&UY&qV<&W& z;W19A(wN>lp|Q4eewFP!7ID5)LwQB06GEsl-Eu{-w_Tz((XC4Ogg>6=}Yt<5%EI9 zBF+eyQMfpic=e3<&Q})kFlA`Ci3|-3apn<9^qkHE-QHEVAbPPa@s~7ub#=g z-%oK2M@(hJnGe0rs*zpJz)0kd3ImF<9gymC!Ec-+(mfawxe;^rQ7{%6m2n3O$XjUF zhgCjG#u&2BAQN`~GbPJr{^qmf@#Q>bS8rNyDi&d!{1xxCi$9@T&(VFH2f>Lsw?Wk4 zzemv?(yQ`F_4{o4>Rt$2lQ$~L#-;RQ+T#TASu4R#g`U1IPp(vRu(iWl{AKLH#-$4N zHTAWpHlGad7H!N25oi7E4P2_~nQP5Sy>HD=aodVNSXuAGH7mVdCH(RO>#r%hc)con znTUXuc#8#LV}LfW`MQN`r6FM37_xqx3RUh1#nC5T<2;*q%i>J|w(OM!`XX-iT(XVI z`}uJQ-_3l_=3-ZKA3vs4nr6S9ooi*c67fD?9+Js^#7(d5$?dTVY;OTAudg@9lp7ay z64)jXd1q|{2a68|_A#cC=ek*ICJC4%EP9(m&4mY%8kW|(sjnAJ_epf^z3ho{ib~8w zbQU+3+F7aB@34v4s3Fihd&2{j&;@7}uU#q5or@pU;u}Pf-p9C8)q1Mhf3T{6Ull1p z)jUE{vZY;84?g*dF`ipr>1W9kivP`zFYotyrQB+VTc6Z9LnaT_gpXQ@ag4bRc%KgV zk^X=WoKOFs@&14Lcn>gyPjkU{VQVZCGO=?@C?xsf*yCBYOc$gv z0SHfZCv1q+J-Kk~RPQhhw6NftS{4;|Yez)g8jJwK)7^$A%BH)KCjwckr(Q16Ax^Wl zAn4m7`#%-IiQ;tcfK6d*;?uUfzg@kvfrF+7_v;5>8;ik5J6X3kCbxvdzQ>tXX*(Qt zH~n(ISw3M+4IWa>O?m z8H2@fY08LKEvc>xNe!(Nup6w#bVKV2ur)jP=pg91;2ecxZUES;qvMZ`v6h|`IayoI z1&<{$>`pG5+tVpg6!F7==sSYWe$(^on7iC+1_{BTbSIR!&A_HkPx z#g8=~Gj7Y2@qgxZ4oscfH&_#8;wPG`Ul!^rgh2M)+#Cz{bPEtsG$d6tUw7*xe)A#g z%*|?qzF~*7|MHObpRyD07B4uF_8-yqe=kCw?JVKw7&}>Kex=<*XJG=u^lD@#+pq;BlM9NUg>bH6tk@>>vKQQJ zl@Av+LBzR~u55<#YVz_rz;lP<rA!{|X;XYb`6$dgk)kY>?bj9yqD7IW$y zAun7!H{@viROi-5Hv?Vx%1`D;ik~x^Vdv!!>^s7)&HM}q9zlnpb&PDv&qZAJg0Fp* z9YiI)$pz1ZB+czN0610loB(uWAt1eSRw;IK^7?gmY(~T#8M5we6Sy!O8oh9qH$?zy zRY09T_X$Aul{*2brw|~grLSI!7vV(9uASzDoMpUDi{13$+}BI3!M@RGqk?yHv)Fr{YHt|c5;me zhR(idlG)h)vutn-gjFvw>nHcdg@s{L)1#wKBZHF(jEeG2m%jC^JLKfL#7Md<(Q389 z@Pcc(3q^%L(?RW7(I&O<4=V@e6Ssk6_shO};{(Dz^4sEE@KlBE>%&kH~c($4}~ z7+{Mk=`7p28Hpw8V6_Wh(C5!|-MbI2z=b(kF^9ztLS;0Mexv;n^&n$0GV?{2NF{q` z>1x|E{wUn0Iow^Eg*A77#I-RWSh53*m9f!L;$=w#(1<%{9wsRedutrX#1;x;?GaM*0kj9PSLX>8)GB zZ=P$6IM32L@W`$X-W^BBXM3KM!xS0QO7s@67VLE7OicQ1wHygRif-WUb6m0rf^VSq#s7H!9;Ln+#hJcu1 z;L%xv61IL8%if%b1NI!j9v2H-fGeZ_Xchd&%Rvg-$$BCiJ95Ein8vnePV@&S-?&HS z8eT0VXFHuTVI)h*sjx!RCCYMyh&gNY33Yy>` zWHs=>j)W`0oRlkd30E@QNJy-J0%1E-u%XKZFRT|fBdozxp9`K%Om>v{63=-M%t!7H zz=Y&gPb{Zny&_cU6jvj%^Ue_N@=E&KC4=lIKgD-IIbjC}LmUN(Hg9gCOJ?`z1(mRL zj;iOfK8mh3+8a)MR=Ti}0~YCjQTFPHcSnT`x0oR8L_Ej^f6loHyotr%Wo_qZQS48P ztn!4+FWX71=977XKh0GL{~b^mvesuK@Wk9RIY6U~guYhEe5NLZ>Ffk)t{_E<fTvcN{&Tn zq0F+28z>l^tU+vpSb|o>rFnlPa&#q^!2~K;3EYEA-kC&+ zNOUo0bi4Cz_|SsG|rSfh9Cu&~!Sj7tj(G1C6wSQ$Y?toQIj%R_lDM5^DByQI0`!KURd zmfEdC25#ds$W$%bRUYDAcqBW%sjf+jI2}R(xG+H=Ty3Zz8+-M?Upjl~DC~uM6EH|S z$Hg}*i3G!P$|H8zH^6en%uU>0sYC_}UdC$r>PPaP5@J)O;e1@BwPf+rp@$s6NUW$BcpED`F zL3cf276am3E*oL!Hx%T5)Dzazyma|Y)y!Ab%=lNTdCaaRWq)15SpCrB*j9SKLj3D+ z-@Oj^CvJyt8yodjbvQs{9F4?}$`f%FJDl$d@btIETlkgFn0lZqJP$;~fx1e$1n=++ zYxcJ9Hx{vLBpCEYsw_5M6wmbXvr+Ns0ZQ3WVc!pcYQi++eSZOcb8IBlcS*VPQmsqckBQVn0pN(wkv87_Y(`W4&ADb$sG#7|YBHSbA zYC%~gZ5+kZ=G=JRB6M-Fa}p(Rx6X~7jolZif|P^s*`|9_#I#k}9LSncdmwTG@?E*H zp9{dKOR$p|tdJZiW7hRQ(;)1TK6Q!KiRjFCF6{AR@ zU$Q^G(-(gH&XUM|SY+OpTgF1)-P(C59$)IP{z3;)oB9`c15b=fD>uB6CkDpz`oom~ z+`r8i=8oPez%KGDwi8ghg!=Jo#BG*zJnsR?99T0@RFK{uygwh}j?-Qvd)tRv^|VZD z6Se|*>9BVeqVizfy0PH>D2z zPAb_E(epDcdN$jlCyN)=wK{>u~peLVOMyKEgi@}zYr4% zslBx#(P~o3m9I6TzQ~hVg3X1#@LdCa6Yt7W+TEkWWO!jAJ?OHGJu>at)sWC&wf-E~^2O&x{*>J|rE*sA+ z>o&Bmi9|jCivnx&lbFxo?HZam?G;Fg2PE?o$=ja~?+}>cd0voOWKY>fFg<5$k*cEE zmZx&0R{(M$0KEu>JqhkWShbA`VFnB6F)^V zK#8hDi&T$L3Ww*&*&q%}1>1~jeHT31jy}}K8sa;Sct)rX=5|J1uG8F{Y6;|uOm5bO zOyZ21Yp_F=Y%?9F(@rt^ zFsk3<14T29x;d#V(0EBxy zN(DS3dH47hHF|98u12Nzq6X!d#SdSUxuET`#X<#$@l&J-It-8qIgG0Gfq#PSh7F?* zkvMOJDBr{9YyfPhJl-|#CmsjqXN_>%#aAR`(Nm6@wqLG}ndbAIY!CC3v?|c`AMp@k zQx2R|J$I&L@CX&ZF0H(0eB?0JvC1AeG{(rCmPJt3W?A*prABwF{J^r>8r={+=~6}W zN^mxWoehGp(w#lD}pBifjER6=ktP zyqj%RooR?cW#`qm_Usd_b)PJ*JaAoc<;F_#eWNOk-AR@-M_Sp%^{svSw2;MYBlC#s z`c&4sze&m7saAJvY<=rlecJ47ee7&0MLJW8=pbjFf;m|TqdC2dx+b$J(1N8}uceNo z^$tID{z;e>My`21gnMvKsQNBFOpG`EKTplZ#AMgi0LXVaPv>aQ{4&sa@q!^7_eA>s zY`V;KW)wjuSc+#luXY;Yeyk?tn5`APlfcm(GSIZr|>k2{xvJSb_oSnb&Ft@7Td z>)n#~tgiP@wU(R0qOoqedm{aFQ!jrPI74 zGq&eUJ^e^}x}&S7R}N10bk`|8{rHrg{{57mesW4rcPD$=(%{~sdb&;Zbcgh`CDBua zk)F=l>A*R)ca9~tv#0yh57bH(lmQjdc;0VEbC`%3`ZyoEdG;L0yXXI$w61s)qCZzs z7m5LH^veqlL_os0`2#=JlTt+)*%__W6Lr1P^xv-a_^lbNN0D$?k2g~&;2N;{V;QYRO2<_dXDMSiMO_?g>V^BBk%zzfSt(%U-*&l!0ixWOBVaW zcjTk^KovWEpjew0yhrH9<%EFX<5FLwPY%D$UUPFvfyL93lE@?sr|~x6``o73!pbKG zrbeTFYO!;Z#gJqT?L3SfnTemZ<{FOce#>acG*dw0eMt%1ODajGuguC*YB2<2+SiP zO^j*lkeuTshHG7kxklV8yXM0ry=^iT&fiijL;Vd3f5tf7Ub~3 zoT^|f=OljW1Zk4gsC`VY4(OG+u_xEMjJgdKE?evr^W0dRT-Y#mup=>TefiF`^~rSy z*DoC6GS`y>O@cWGjy4BHdoQWnI>;Zs1@;Uj@9nvWiTkc|Rvz2^NFnbx8djJLTnBWODe`u}c1y z4w0A^ya2(p+to&$D7au(||mh%0>9aNvp*%fa6bXZv_P0e1`Q%f7;= zKSvBpOyXoW`HX3x()3ZWys=S<+^77scATvJH0*R!Xf z6A3uKtQVAH1XIP&NPZLnIc>djiq4{f@{2r$PsWQZ5)8)*PjE?LR(*LdWdC2&1KEWt zrT=nSj-znPxVz_2_AHs4dPkuU%|^`^^wS%enomuOkwcnz6;s)@ru)rUe`9D+-dScR zjB4@vR+`=8AlPzry%X3Z84IqGkHJf5jXQGf{H_Tj`jwAk4g}GTSb|vH)?c{dP4=G` z3t{WPIn`1%ZwAS^MrsqmFhqes;F^+xb;t(3i6}*1q+3R)TvnHAd=iw-zZg?n?E6qi zN>TPSA*EFymNp8CET8$Lwh+}(+(>0qo}nqcJJ?g9qE78dE_z|R`*f&$?%4IJ6Bi{q z5xc=9=k;4?On~-J@Su5;mS{P~VL(N53h0H6#&a6(pVkMP{FhUsA_ir(F?fL32VkH@ z5&F_3l74qQ18shAHsZCg0MIF(_xF(rMxxotY4m>~B4d;Don|#WLp>a@&>MA%!T#Apv5+igYssz0BB{r84oWhGXLkP~3 zbgW;%s;d;Wi8rC(b_b6>Ix=<>>#u%qA7^&6%WMoZ;_8z9$WTlCkGtqE2-c}T88yF@ zUSg{e%%M^+w0yLKNF@X(`xfsU1xT%%T;`F=y+et9GTEs6(P&5DAS9=A_aoED?;4#> zye#oWaAspA-Pu-Jr7~p%_V%jZtNjoTLT(zfw^v~%)j!QY%zB00Nh&{pBxN5rx8Iw< zUmLckB&w+BpMvjGfNLs71J*hojk>eZ^*c=eyTT0p`AZ#mCmF#xd{TNMPGoUV@-MX9 zl6ffJN~8U^`8e6}Mk?59esfmoT&NF6k9Is5OfbuTM3|-(bUBUai%ztxaDj8OT#k5+f?5w zff%!lFSr4gkJBSVhL<>ERIx-|$r#!z9Rkb4#p41knMQC6?@ZG7j8K!53+*?8t9amm z)=}PvAp4^oG&6{rX?8Tw#V(fq@POs}#(aF!*c|6X9uxfwyI?409K}k7)F2m?E`~*+ zuL*8>^aHV!7Y>Df8`Kd0l|rL#A>0YK6on4rwsJLEn~cDLUiAmg0*7E)*~hbwR2>&A zF@m$G3`g+HSdhQz1e$eaH<(8(VynU7qZ#!F`ee78$E~~M9bb9E%9mfLc1^Onkn5gx ziS7?tgf{5)rT<)Lf!BdW7FL?Vg7Wd2Qt`W zkprz*ficuYw<8Zb%;SOMRR1f+79FRjV3Wtu&T(bnI6<_3Orr9Se*@=w_De=xVR112 zXcJ}j%Ajkfq2kK;?nkcXwVS&Tscog-qJ>PO?$Og1skG{UCUzMa(pi?S><%aG_hqOg+(Ct4+cLg- zB2)01ufW7Y`Q1T1E8zyU6o%!w7d4=G^DH01oBSi?C687zaDcWDAX;zh5TwvY#WLGQ zP`SW|Bi|G32pl7@@dfM(lq;6Box?p3H2tik749$sa>2J+SW)B06(suTy(Nh@rB-(; z_C%>FX!KsDDEFk9*mNUQO?E}29+k>8VOQC=U!b%9lI)xxm*uH3QRR#u-z|-pZLz-M zFC+kmZj|B$Yp})>_gV9E>lsu+_7J_yH!!XQJ6@yqJ`j$rddKBP=m2V$RFr>ZvY`AO zcEiJIn32vXm61-TXD>+;fi;~HT*~^J=vG6E1UNAa`PgT+a$=B9Od6Um`0A0q8r+KB z)=u&eP?ob)36J#vgN@jF&$quao7~lGh)|>y1-+-6^lP%d77uUf0WOiM&pe*SF>MTJ=@R z{$5_MP-W%yXY!g4a2lrI1K@!b0!x_qDSThZcmG4lg^GUn{3M+Sp2H|w|6n1DMr0@h z?@tdLxDFZHcsU?}(_f912J=bM#&Q`M&yj6tNiIS!AI)*3S z&hSLOO}K1#Ix-8Jt=N@{9CYz#{Dqy7`KS?dB>1%Wt>XFG(}^(V%;GNI#f*M&ox@iM zTK|-1mUu73;zyg5%dFZM%(M3e9WZG=&*{D`=x8hTkUA{`-@;zF5~@vsb|-AcqtIE^ zAtYGvvb+$rXQm|~3wcl)Xg6C0gn2$%a=|&t8C227oxQXZ=wS-tmcde`h2pSB|{jV1L(yeKW}i#QS{Y-@6dmU1{VE3Q21D9&myLVYQW?{GZt zW7vR4xGSXpP7PwFR*@M_roZ&+hmmoQSs=3u^HRiYh{%$94zF;?-T@Q zZU2hJMf4H`HcdX%MBG44Xq2;?RXtl^7O^^Y#)qNk?asOSpmeDt_8GEgtQBqSu53A( zDgsPiKFN}oD4LR`j#}-8A1V3+$8u;({*%RwwjhK27}g05w(p4Ci9*mP5{QajN0z13 zqSqO&q7s~RJAe~6`A>ZNFTQcQ!Vp9`l{T$--U>eQVHWkOLfT)%V{$hAihOd!`1%{W z7{)ttS<_Rx%yv?BcBu7ohgNwQsR10v^9m+JiYk*2%C<0$WILSrl;|0T5$p7)mGTKP zVfR8o@&`Vhs&A?~^gVKM{Osip9Lzf56Y6p|B0-+K58Go&X!Wobc6T)7K zvogYkq83Wn+a$uCkCU8#D(r=*4!V$O*Y7W~hETUe+ERkwMjSwO%l_e3y8e=o023eu zKZT>Qg>bP|FrR-xh6T?n5tBlb=w56jF@5OvZ1!fD$gPzz>{~ZX1xN4EiUZ6RK(2X_uXaW}uT&lzTzU=<&6UU4 zfb^qp&dTVgF0&qkEh1*({`QE+TT_H@Iq8;AC)&AWjg*(bebj?pV_(C~o zW(E~jdm@veUto5}0)ip9o6Vr20Wv8Bxnqt?=^>+!vkfM~Kzln6V0Jr4{h$xLTcb(& zEh=51$ZBznt2*99$mGp#Sij%+qvxH(;jU9MtG`@&AC>FWb=Xpu}h_DYEG@# z|2s*PX-lcL?DvQS@kZ7YW11Gpj0RR;Bn@r3x1D&X%UZmSuLyX)B-0ZwS<1TQzJe%n zYNpabveud~EBBb4YDHP^zyJ~AhEG7*&t8@JpZgN4I-YkIdK>3k4*22?c9;lpSG+`4 zJhz7u4~p-6yqv;cTuouROFt-hiT;qMb1s$u7u*M{63g>kX6tDL15@qse@awg{a%8c zMf~q_vN1moIv=jUZ231rf)qV+hBHT)Zj=>rz7gN*G}i&d@3CIalrEq2?~eTvrPICG zd#tPkqIljPY1!5_$xl-MhzD2IA<3esKSw2fF98Oh-V8aF@)pY$6%`#{*tyh#1yB>~ z8SCxNR`)@MO;lbOP8|{@+AtjoV+WT~Kzec)Xm@Q77bl!Qc8m2l)y___N7UaRX+eW0 z>H?qROP}NL*ewZt4anv|09`l$4&ma8t%pwGAEaq*fMyUJeD8kb%I+M3w6@YqsK_bu zAqQ}_QXrvN%5IBcDU@Ib?3)7hHUsFqcaal0KQ+M16LJEN;YWw)C%Dg}es88H`#9l= zjnKEDEKFu4y+|>bDN4t38$W?uJ?t{x68oZ!gOgm*;1a~b_U8j-iBDH}xa?M7JqK4X zu8{TQx+AwXJ1bA*Afm5vMs9tj@WxXp`|2}aaE{UsD;(3*;_c?Kj(~WrB_s-9z{8oT1`(wj2B{6;V~v}P+3#PQ}CCV_>W|jaEUark;=~Vh8^fo2m1Z}y>MXj zmR#pj2OmmvVig>pNfv)exIe>`IXJU};GueT%@=%C1ezSCV%m8HWt6T+>{6 zB74C=JFBOC&-^hq0(=y^NY~nrX&XGxj~~2h)o1QR6e!L1nqDUR@FQoPj_y)_Zz+Y2 zW}nP3>kTEwq#WMG397{L5#*-)THG6ml!=tX1yhdZa-R>*Sox!Ky#&HVzO3onSYr?HN%P@DEkVkka#)ybRu7XAA7X* zNx}%hUWg+K<>TNwVL7yXjM}+1agImL{i)d#nf=AeB1++Jj&r$e1MzJ_Ng`f{PBFGK>6=tk4T{#K}4lM(2{U|P!rmZ8&2T|B@*OgKc8ex z=E|BZh2TIxOD|Hyb8wkjj{_3x5pn|wG6E|p0>#1BTm*zUEXaLEr5s?`DEB+t;%-j9 zI_3U|FYIIY(Q#$O!)WBoXv9Ybdb3T^b*NQ)n=C#Bf7#6NjDhj`Hyl;RM6z5k(-U|y zKg|fr!4(dfM(&JUqoAY(?;&;q({jxj1B;1(A2`4uoM_D?1RtJ5&BiEl^v^K*-;f)- zmFqV#b_5`Q-5^@x^u3`u~a=-+$-S*;_ zGkzdRtDOf0P4q_@VA}RJM9#pT(+K{8Og=e?Qu9?`Hmq_|zj@qwdfIdyC!_UW{7Enc zobgNKSbh&_oaCI-Pv+;5GtkUzn`RcLCFrFQ5R#;Mf+C7Dgk~C*qNGajg;%Xw-s~aK zK8?)Lbyu7=N4wds+m)y}x~Xf9yxr%>YtK;)6`y&IWO5n@{I4gc_HtP|J>L5I)XA9$ zjQ`W*{9m`8p1bU{xw;C~#s7iz^lNs9|I79Cw@cNOrGItml+}vn>R(w;DfT@BJ#sZ7 z)E8RT=``C{UJRzi^WI`7Gl@|)`$3KL0^@l7Q zq4m7;v3y@ur{0-L0?MG)#vN!)qu02b9=_B0R%Psxl>K?w|9;}85c`ar<6bJKUMT%z z>`#vFnEw$+Qd_QZZ!P;aB2#V27LIazaLTMRmG6qp>e^2tx<0s-KNVXvKj-|g>^#nPO=$ZO(&fqT;LwVodDfIV*gh3r%Srp=>9c6^1IZ-f$re4!Op!QcF5uhQv170uJRTTYhgu?b2zzEwF z{PCh>@e<(GhVMFW;4|PO`j`;kazia%^l+Lz4+iU7bMSWqzJ3G_qi*0MJXVe{a>{J+LA1Ej3F(af9vvt;a zdbtgka^c>>G31cwV)fd64UZy?g(nwd=wTn8pwTZ5x7UCXQaX0EY>nXW1(i~1%>fdi z2W3X+WBJs@!^+MUI^#!&CwiPIxz@XUM?>BPukg7$8637Bg|hv4QhdHp5$2SR;t7RR z$6#m;Dw}f^{UHr~R0li6(G*hqkLCofw*SMZL?tWxk7m(Jy=ti=u>@Zs{zjUYfxdDbLaagUeqx3L&vf0&6{8vIPo0R991SV|&jm-{|#pS7JTQ0Yq>$e&V04C)aCPm)JvF?4W-EV2c-{XUy!pV}`bU(*-9df#e+jC>faLh9h;#E(1l$i{-Qg(% zu_v4|u;^=Mv239yj0d-pcL}+<1Tg{Zo`h@sOhn#UXx68##Q0@^Q4`^lFVgob%pqpr zM1&iHGu|Q>Y6jk+(#lEwAvAyC$rG6mRVhPQ?lb~v6snvw7Ge3Q&^YV{6~QqjpH0_< zIsWbf_>`<5;*g>rQ(FxqbX;;JQQu)5RJF76Sn6I2iVmjP(MA8T7px^=8rha6YOa80*j>1q%7sV_PxN*$@GKmX*7rTE`I8jqr5IQc@RDD0pccRD122hQ`L#@d%_%5Hk^baYx3faSWjmlQBIG%SM zMBEb2j$+T=6?K-~07o4QM>T?eU~$Qv5V9>A$`f4m*x<4r!d3h73Pa^pAMkAEdIech zvLTWKp3TBYmnQH<7SPZ4CYi^@fMpNb+cH$i1(as}R^DMvQeqrFdiIk0`s-wg8ge-6 zzsTZ_Q2b(;3V;-5C4NeFdq!}cyhMt6OAS1Nqi;wJW`pJ7Rn}sYS&*Y*yUDNj zB!R5%Y7%#l1dysJg!QhbzM^`Xnu>FnJ?b7x%8L2Be31zcebL28wS5Hz9+GJi*dXZh z69**d#cYxpA6u#iI_}?RImKIB1Ox)25Guo{XWT(AX^*c zB_iu>lT9brs?WOW&}~$0{gxD4GSWZ7A2EQ{(QNs}XIV}JQTTA^NN2zwE==L3o z6jYPL6}b^oa6G4UI8TrQ)FDd0j}KC@e1sg3q{+b+BIGIPIPDX1utlBs+A4imO{7Qo z6MLlz>z8Bgvlw?U(LTlKYoB6>a!ws%NDyzkQl;yEL-mX3U#e3d5a;8x@l$b!*b8Cm zhWbqH*ybkpjXx3@BFhu`wvr*ZXc!ZvK}O9>bd197jG7@5krbhzFGDIwj~#eB>pElNBl|SN-=S z$uan3(?zI2g5-#%$lA+$c-Fx9YID}Ws^fC*WYqkMGyq=}IDWQK^R8-g{CCa*n7hvT zsmF07zSo9FHPbTzOFVB$Te2BBvl5c=0r;m$#*?f|CpTHxOIfHuOCH^TOR#<(q$ot< zR?4Uq)j9%SSQ5O+u1{gjQ|2YgSo0~As7OfGT~d*jp++QNNL7eAk~GC0tt3SmN$Epp zCztU7eBv~?%^syJK%!D@X{CS>c!D<+13sv`q>J$ZpCT1l?0wSO_KC3M9S9-=`6$eQ zd!;oq2>w*E%i?}b9wJ3cvGi6TTMQ*9Ng^Vows!L4B-yq;Pfp(^Atcmtfff{nvb`%w z_I_LKOKruQ5kNU1B!Mwe$fY-Ai81;3@AjC44p9N(T8k2*L9nTm{{|S+ z;0+oEu^yTRi?XgsDI()^B^YT_-z&Nx&$A(SeW?&nNsA6ilkoQ!+f5ol1u0YCKUqf% z6|pq?VJb`AC}ED`g&5)bpd{+Ivpd8?51rwLn$w zZ;`k+-;x?0M2fRl=51XK6T~c1^iEg*X4tSzAPWd^WBEmiv6F%5u`4-+7m?Afu8&kl z3pb!-w3Chra7s`-#1pL6+Ak@#h;rl3B+R=HC97E{IZ~vd*LhDRh{^qy9m;lz8k*#( z!f1`$_AaZrYygNd+uz^bwL9N*cnX`b0-1nHj;FFQinUzAJ__n7`>1VYx3Y(t;=d`O zu(2;Fjuef_MceR0cMvzS1~3CXTVhN^qwuuMnC9_k(HTwrxr`M71^n|*v?MMKIJ!vI zt>^CwGZ!h${0$Jx#iLsDE8qtzmZTXW+33)k|7X7N4^XFkRz8eoF8Go$6YC}d*+Tzt zIZCwjfsm`lkcV;RGvD9RLW2ruiLcRj_#h#3Wm)S8Cw4ZqGg&^5H~Ht$2GR}ONKN#G zS}}RASk!uOO`O~M7CB^Z<$npOeK9vIOH%}AQ+^$)U4ZmYjCm_7Ou(N3JPmFl$%a)J zNl#e8<16Uo%9R{E#ONb&8oQ;RudGm(g;Eh9G~oiK7= z_@4TCd7=Ci%#9iav)Ni`-BV@7X2{{247OC6&yckn%nW0xhs>|)E+_DZ^$Qtmn-0np zHcLiL5@wJqF|dm6YDMlXoCk!+GMhLqYTz>{Cr-=xR;F7qeR) zBf~`mx7J&^Y~W}}ULA5J=x-*danv^{a)+F^;C+RXZkE?kzbp1ecm1WVcQ?eU!Mz#m zL^~P2=cST@lL{}J1us|g(U(!NSgpv1sa@}GP@VJ$J__0kWS!aB*Rm!}bQkyD{C zaWBE*-sGV_WD5$c*3;w_(kG;L&WFh%*?%xGBq)g!bgxV-UQV3^ImW$XrwA_tDU+ay z-RWWA(5Qq}4Ck}Zm84aS5n%HI+w3SSd6SQ*#wWjo0wHas3tKXSa5#qrvFva2OEG$C`JYcFP&)ZgqnuOd_H zb1-0O0IzusiO9+R*J8baat=_MYtr-?{-`dzPFja{>6_Jn{80uZVGra=+5@p)uq{MW z_Y1at=wqka0?q#(`vq+u8k?JH-NP|yR7^kVYpVGbUbRo=rKlVi{7@x*5xmsK;;VS(t~QdwFX>%!!e0y>F+bzPHt8UUv{2U9JyzC z?0i{p$@2|45t?96%_}mQ+!rY4FvHaIRCLW#vy1@N+al7IAG zSvOua@AM{vPAUC!`M2Z-q*Ko)MCN^l`AaO?iY%4gKIp$pnhji=R=z;Tifn!NZ**AB zF^u3_lsfe+gNt|a)xKIsZ?C{qehUOs5KTD&>vJ$8m?vaHmF$P>ADqsrP=B(sX3nDiq%n@I9mmitj&W zo}&0J8;8>Shd49X$7l&|DRicP*O0upHz`Ms5opZam?yRF?2$}W+ZQE~_T{@sq&*~` z&3mP`TB%KM?Yv#J?G>y{GAoC*N!}&A6Vlv@W-v%1Y{-$l%R<_9XjCoH7{!g8Z-I_kgx~;_K*vo+a4(Gp zI%XTe(Wzjq0Z_nt=7S_cokzl6{%mmFp-p>-0@uuFSNcXFP9gS6-zOOyC$Q=eQ*{wr7H z`%KX7?iz_%UF{x{(NBSHTvx4^b>(W1TtHVUt5Xd3jL;h-$xbn}h#^VNbUgdaRJx2%eOeNYO#592_D}K?+)kbn0~^Ct)gWNQd^yuADyh+rzIMh;5bxJv2s8 znfgbHa=Xg)la3upnOv#&acPl30);-uOhW2?+OD_fCw9G$rq=tmRKSUZlw)O3u8wln z&q+?Qq$EEQ`DCVIN7pGzjG-DXmD);U7Q)c=4qs&40JiPj_XE=-nb)8rHUclxfP{9t zmSAnfamSLzHl)MRsosq(9a>?DOR$=Ns#uN^9ml^0LyUR;`>v1lxkmdt88tqIVCzI+ zL4qBC6Njjgyzx!QL84hYf4%N#@ZV|96TU5+5#YomN&hHWpJq?4QaC4VCgUS-qaFni2ma+` z{7^E=s4H93qC_hM7g9Y@sTY%q2;n(8Wn8BJI%nlN1_?XTIS9V%-qxDu`Z8~Q3yS8x zw}BmKm(f)B&HX@{LTN2ltox*^=2~^vpv!FO4%Qmn1&+KYGyh`&FH+=xUtR`K#>Rkd z^N)^v0`jRZe4SFQ2PVGOi8G#~Y)uD~8DRwn1&Lr7EkOWv zMW!iB9EnEZip-#M#{>iF-C0;pMv3AG!*p}s;5!7GVehnq!2%a9lxTxBxx#<=V3zZdIdqHLGX2Fln^m{uH+cGr z1$F7+A_*kzf4Bs(RBcb+mC9_>>v*2=cP-Qzq2H?X|E}ta#jP`?Ua3&W{7%%v6in#a zBgIF)&7w=lpdv;7Y+VxhE@D5bq{u>BiX>EKR$8nekv*U6Gdju6;3E5Uuh(M0Y>6|a zJ?;j*Y#J>RJ#(>mbgGUU!DcE5bX@Gu6DTj{MQs7J7#({DVcu+Lo&Se~S^0G5o0YMl zXR;;VPkC*<@)X#XYD2y zIwS~U-)R`>d*wG$T4~Un%SDP8Y7)@){q1NqUoNKk@_DELX9|enxu~pWFP4*c z{0&)={v{|umg4S?^g5Mk!oj!_EbfgX8n+XJhCY1>J(?D!Jk)p5;D#n)Kk+OlzF$-9 z0bGDbsS)^-=;*rb|M18Cy!EX=3cmuWv>YheuWHvO< z$shD<4sLbbl>}(9TBUt*yvC~=%J!8M63b_|*O+#acdC-Qo;aBa@T$K{Ppp$N5sV_NrMD`jlqz8r?#UNc_ky85 zoiCj>l@`?-xq-(LVk}%b_=ZTIp~6hKOQ*!KJ9aMp_nM!~h-7jv$d^e*1qSv>_ZY8k zD%*`eqw*Kusr?sbsIE7ZU0f0wN9&A19xxM!@InGTIdEKowz;plyDuF-T)rjtTgWAn zH~I*=`tK;PrK`9~N2nvqzY=AH&5ylZ6x&}JjBI9O0x7Ys%6}rl}~1_ zdU7_4>*uS9ASEAJe?%AKp4Y#rLdZ(-cM|pb^Ob}W8$r2r$o7@=R{>{38-t!dnZbwe z@Bu%5pW_6RKYVO7;lD>9yKd|*zxFLOZdEsJy*+vQ8$s`Wed5Dq>P|vvAYsM z%%-TwaVm(}giN%ao~ z-={ey(dDC17_R?tcpKNzMm#oJpN%Me?S5>0ua}(Zl5@Y#nNCibV(QFXr8AG+HEGa- z^Sq9)$L^9bD+a69mEQ-C%+v$cX4eLzhFl2gQnxsN2OrWqIUx8R_kk?T=W^IlT$VS6 z3lArtCKZy{#jn=rh6u)#VT3Bc3pJtE&8n&|eWtpe&u9MWl#`G~Wuiq*a9{G-##GVDJAGz@p5EGqRq-&Bjx0JSY+8Cx>`qot4(}MPd%^L_?;RGbc;n z#+>xPksF!cd$U&?!Cy*wbE8!+TO~Za3J!}}FeIn{tN52@ozNdvd4G|7Wblh|G@ zU9d@Hy;qSAGd=B&K-awDXUfJ{Gk@}1Mq`IpN%DqZ;`Gx7xgV8EFFGWdpB#p@yo zZAQFRI=F>@^BMjFdiY(ueg~KjF#P-I^OtJ)uO-z(r}xrniMT2Opk+jMGAK@o+brQU zm5e0eGz+{aOk@V#*+<;w=GY+K>Goc_z13~*jAg^$V28vQ5-_Uv?v4*lBgh)c$m5Vb zwtA6Um<%23!X0^dw=>Xbklx_V`ox{J&CeF`+k~t;e$j%VKI7GGWrMth&E*0iS9vw) zUOxJYHJDLz2I{Mb*mkn)?_<~7^a**#8pPIrETm2+SvkBafEYrgnq!1 zNM);9P~u3K$QoR(!4BieJeJ-=tGc+`ZP*g{V?M`mZzS{T*d+=6B)6$Xyv>1QIc#JA zD+*Y>2))->oVCda`Z$}EnC@a!l*1%F3bt$t93&j>^$x~at&1YQO-={hbi9%#H7^p8 z`}&N)!Cv(TnUxlMR#+0p>{%%S^q{t{kVL1SU8y=v)E|=oV|UBm(y<$hXl^0v zB-Bj!ZP_upC7HN0yr?+G<9YWvc6kavA=@W>xtlNSwYZl~=NzHliLTvSaz=XG#7;|@ z(I%va6YNA2=}=KERY3Lj>2%i$J6>fX|9hk(@SoqN1pdne5aP5^D?#N%EViQ)1a))g zOK}lO62*V4t9|R8)O4CFCq1bQvGwzE8-+(yA;jDx-VbD$0}evqBo8-oXYVj_=e8RC zZyRIupOr7p`GA0 z$Xn=pf*g?^qkqAVsd-(bM`RhpCqYpgiIb{J%W7v3b$$s_-sqOoNRq}+p^!#v{nw}YIdS<`0@@lfj^IFkF$bk^M z+ffQvcCSwy-Wox+ZfVM$4`5{v1nBdBu0Yq4hFc7trMDu0$*+ccc|LDSWHsH<26vO# zd$$d!a!!PHnnxA}K-UOH;* z77){103f}>uB9jCmBVg%ogB`rOy2Dx5TClgZdGIAZw}X-9ECEzE+fEwNi~%$Mdhsh z6S*NkHfLtk9e%SWw}AAj&U{ARs1ZYb-~BC%`%2L3OD{I&aDE%gXT15z)jw(arwvX? zq96u8vRUG%SpSUSr%M=JA?@KZFW$`OF9Lz%TYVY#G_9xvW!SnB2XQNUpz_foOjiQB z$XP$`QP~F|xsl1JSqrkogAr*^R91xzeu$mEx!ZJC@+i$ItTN?(Q62Wa`}$fU)q-A2 zbM>#fdXo33pc@DHO1HxiG+<1Qod+3ahVFB$aXQwz9s6A-rzifXd>kodC?dF7*{aOm z2o$m{HnH3OTcW{xCYCHMtJCp2SkGYqMP(7rtQDN_WXuN8bDpLd|IeINY_{>teIXh+ zk#0O!PpDW~-6Dy)#TxoQc(`|kFxl7@?VFv(iam~dxd+%-R$p`-BV*KvTO!w}2i-Ex zN*^Hpc=wTtHUU>S6bH|%;dDkOe=(`8v;~27wJZE%HEu9chp8XU`lCCYTlYA(TEg$B z+G!wDyyvXqN*%*MPRVrETba(PJ@Tr;%F4H^_>c5-(&celq|eWEq1pWB+)Q12~|(~O#LGj(Qt{hn+macmWD;?|X|dtGKzivESpx!kb2W>1ljnbI$m zJfd5XYNi;=d~?(8#TmKxy;IDa=BAmO1FJg$DjR)wZ*1MboIv#J*jWku+H7?;VO2_U z%77Bp4)N=_jOl_OQ00$j%Xmtyo2d19^`33yTdL2<5$$Y~$ zAU7I;eUumYtKFbGBGB)JZX++t^h#Lk9QiG)b+RmX^W z7}$G~zIz<+8P#9N_rfoYnq%?+8Mu@SVF~!PNJ4!DYX#lG%>fAk?bRYkWzYyErHC(b)S*frp!DQ(pgS#foyH@?BYm4}m7meBf0QTR;}S?-akjP%_G3N!xdGT05A z6R6Z4QI$#{FRnJ(UoRPZxG4oY=n|rkQ&`Dq!p!<}kxOKJSPDfdmc;XZrHbTLt0DyV zCICpCjB+IJA(ez+@r=$g6w?|ahH)>les5Rb@s;?qe&58q`u-pK{dbA)cKIh0-=EOm z=On)WP`_WH-oe~E^n0(w_vz}r$1?SiOs@3}aA=Hn4M+!Fx$93BM*%mqKDUNjhB)wY2G{r}dJCHte2c)q zpm-ah3JbTCjrSF7D}B&c*kDv6jj-ICjq3e8_;{%4<$z>5j(Z%(W8d;&vmq5*PqT^T z>eJF65Fr;nWK{pBU9M)eDo0IwC54@;b`_7HC7n zk(MsBYy~avmK+?P#`AL61XJXM8p{8!h$T5xk?pFLyb08yc8B(R3mJ5vJK~u~C3D}) z64Q>8APcEMr!G@%C70Jrx;lr-ON=2Lyh1wZx2i@^!q0nhe!K2kt~w+Pjw6*yFL7wi zBZRm1g&)if?8y|bX(E@lI*_Lu+IM;e9W5#Rz^I800j%r>Ph>iqvL?^4HjW`l;#x7Z zg#(pr_m)Tf{8eO6YL+<9n0LCDqo;V?x`YV}SGSBpU~*BP!h)BmPypPrAFME)~hgyG23O87J*B3Sa4KUgY@OweypPVRUU zQI~JINXoor>9r;{bKaoN*r^6*}Y3$ZiPp>nOaswdqJaK8Yikv+0e~ zLTy% z{fj&tceXckv~|QulyJ-hwVZzK1!A4CDmb}#xEjGn7sTr^q1{X*=;i3$K{6Cj86y9- za51&RmyK{myFd`A&jOLTQ)0n2qFSwLk;%|iB_;zwgy~tvWe`eqH>yQD;H+=Wb`cz~ z`VcR~AU2!S{xdP1PGi-ZYC1zl7xpy|Gm%vXL?<4*HW55DNI4mwHr*d?a7gxN0hbID zYH8J*rP7^vJ#}oi@mUn9e-O{ctpxR)9W7{Lz)b)9fzDhbP)~YQTuoVEvdm}gxJi*| z4qPN~l$?b~0c$8NcB)ZDH7Ns$UJ^IeWWz?y*H8zUtkl6Y%puIQlYqtqk8SWw^fRP> z2FIu?BUU?8xAlN0`-pW7(;Iew7@plETROJy+~AX@C*X~Nl6xZIAE5eM4|=kZ_WXps z&N62=6|OG*$kW&;$Rr4HuzmZmcF$IB1oKA=R`cCa@xHU}TG4|ubowyE$JtmbAXVogg26y(6oInhk|1UA8r zlq$x4lx=-)Qp2;~m)io6&E>qZi2+R=22cBT@32l^#+zSDEiULw;CQYP8pPJ!8+nqz z&G9C+Hh(9J45mHFO5+ps#;mX0)628n((u5pweoEYP}kFL)2pT%LI;?t~m&efh@okcjGHNog| z)_0myon5*NcU$0CuFIIxX7vTMB+n^QbDF|)F3$nx6rRH@zI(msqhuyqm~ZnKgvwaf zekO(^_+Z^EI8gi7A2BpcsBq>}<|i?y7t7crD8CWBH17;^YY2T{eiGSEnI+MV)eru-?EKV#%izWmAMPcP5%UiN?3XNVl)F`c=T z?pO>8_2*iyEc-uzd5KZwQ$zzJtkP~RfwiyV$t_s+9`%5=Tske+NrfH)vlHWCT_-0P z;d_>Q3qCf2*PkOx=@YCmmUs&~O9~Hg{lr(U@Pp07Y2)$h60_awh#S>QLC2E9-A2ta z!O)C~N_Jk#D`~w5m+)e=?3{Ui$rU+Z67~olW9r=H?t-t0>8U&S~M zc-pslhHVqR;j9}Nb`M;F+Ws4^7D`gU0oLcd0(Tgj%E0jqqvld1CBZ=9s$;NW;jC-H zAl;V`s%s(n@HVIs_YbYla@GdV8Um7WlLWSj(5Lzih>0kpIm?v#Lg!M4wOzzP?xLti zumd~I5=QkLLxO&OOtSCWg$Ty61^X8Ez6q#~D`Rbo$K)O?gF_*cU1o=x86m>kH3QS4xX#vyDH0HoX@x}@L2=7HBVaf28NkMN z=_fU^LpzuhFu)H9(E?>v+e>!vw4h32;5}kqEmoZ%V=b}7C%O%Q#=b|t%@)@C42D&5^T@F`)nF&)@ zcr#5^cF+4l-9+J^qObOG_E>;|`I3G@^Ea}~_7&{)X>Vh+A8=}4VTX^q$5<4VKJ$|j zv!iv?r?Rs>tjMb47>mJO@Qn~V|LdI8VBYv(t_-@(-mMLXSz@zUVgm!m5scp9)frwP zJ3*loLiL1NR4@!F)M5_coI)*(y0-3wqW)l3cBeI$g0ApA&5WTL5k4CBf2amyXeHfe zig(Jnn7T7?K7^7RX2epxGzU?vuTj$sfk8yOpzJ(cj?v+A{WbEEHybTN1xNMk^IcG+ zgpkITa>QhJXursF3kR@~Tx*MIa#^Cw+yk$VU8lDr$^9cnuk9$gU){u}K%IdsIG>{| zW7V%Gi^d*%=Ft9yyHe)ECHK{DRd<3q3)V~P&?aa5T1D+bzhQ|dph4KkoE(ZSJeQqR zVk0Gkp?0~kt2G>p%+>8%RP$Td!m9Iv^VyZj&Q7;a1s@}FB;oDewhW}VaI5juY!;-D zDOc@?{vK|G`n`r{81VSuje!aF_gWWx8$S3n9Xac&x~0w&eP;jMv0ItXbyNS$Ccwn6qky5S*c85L84$rWkBd zR{GH8*^+T3!aPf0a+~Gi8;XFS#EFt4#?WtgNY}Jj)^AIX6TmO)}~rowz99{bzw<_F}iA(*^f(*5wFH)(6PaiG}bAi_`e$ zyYw57_%*S)70FN&KWFWa6^Fz+uZt@N8|a&?8MzuPWz7s%#U{#rP&jOd=CD_uk;A4d z4(l+U`cLYx{8Xr$-i<`7o0iqJY3zClO8&YmRwkWW#f2*eJ3eD9Y5#ZK+kaJ+?bg0g zC%1;BFn5vV+pQW38p~wCrJuUsas}nBa&W|1muWpiOU}AM)>G{{Zb6@?C68nN`kugi3ZXsMW#XWfN? z&hw3*SV-R7!GsR@YOF<2bN39fkdd}}jKvWewl|+;y&PGS^$3~JEa^=O>4A6vI+(BcL@Y*gjqr>xON}lV`wos|N*jQ;uX)f`=Qy?sliCSW%=j+1_9v zllCs`-rhO}_Fv;j=|U9sCg1u1tVGttb|1c|_Wjlhl3+Q#OUEt;1=6rcM>8P|q6=}3 zvyv3z2#p4Dz88-=xnkx+-3zgh=T>756wX$wXRkL~+*+a>kBjP!x_d4d<1&v|?M-MF zZj}9~+)`{T+m5ZGtiEb5uQtwH%cB#-t*D`QSENkiJI2ukCd#tj1?X@<~Z7>G=oLvm~jn_UiUzC<87fxp2%b?A#N6 z>wDxfs)y4RoA*Ej;PL&8YD2mgIClPmv%?vh+z6+K$7}wcRKN%~Rjhqb3P=41h1DR4 z&y;4WJazHQ)A{>Zr}KA40cM`$;_GA)bSZvLP z5%?t-MBAtFZhw*D+m(D)+Yg&>rw*!7Ef+a=aq@mf;4R_gt0a{u!sc2!uW+MC@5Nr` zLy_#mWE9y-v0|L@_nm?LLK}9yE-HaKjL{-JcH$g7)mS#-PBksup?3rgC-TB4N_F?t z%M?7rRB@UL*FE2(rE6}W+KOo98rGpk_pr;+q9966XK=Ejdff%2bK${SK>DB1*(QI8 zN7S!+$uI^w&Npgqmi>98@AY&DMHdcsd0zTsEE_i&GpX5hiBO=kmz0e`72T~{4N}hB zbjF??LqTnKtXsF%JK8uK$&?B`W<+q@d`pB}^RU`55PAnSt~kI2{>X#10nE`v;#}t9 z3{*7(zAt*OP&LyeRPGjjQ>f~0p$&Cs%Q=F`5Y5OCr^#svGHYEeQ>_#gVq^Eu#D)yS z25E8iKQvt}>E7al|3ZsUYh<(RHWlkelM%Izss`R+u;nkpM+6Z+ry>cY)(EJ8@` z;7uan)lE@4eCr}~O?q&`blBGT*bHjydL&OW1Lv}8k<>$q10*8tC<^`|HXtOrTet&B{zqV%O4gP7{L&2Gt>B6Ynh3zZsWfeOnIVJjR` z2<3iXwjP{1Civ7@6d;P?H;L;4xyuZQ(^Nb=bXLW6XN!0|SM0@V6MH_(r6w00w?3ls z&tcQ7w40W0`DAfjt|h@|opn6+w(d$i_OrgjBc|DP7$9XQ%1hm7imlItVut;1ihyU; z$-vcN#*M|c><8>ZO5j!*-m!CQHM8}U%1?6{mc+o2dSZS8RnQ6D1M6vWcud7YitC1- zabVDZs@3QIkPx;+?_W>Mq}Xg#3y{QaQ2ps;J*UQ(w$iQI#G}Ki;8BK3vR8I;d|Qv7 zs!`WaBuBe`11D)oMl-pjd~D1mogVF8?%2V}kJH>v%-RfRVI%73j>(bCZzz$b&T)d+ zaZ(@;r##~Y9G5x=P;XW}y>gD)DBEgHCq@0w0pDEU^#f2rJ9w-xU8o*PfVs|SNh;FmdS|P8IylvEml`8i{y&|>eHK_N4=x2ySs~XH3u9CP2;8~sJZ1s-bhAj8# zEcw8$?A?L=0iCO_bUz9EbvoZniejG3gx1FM-utC$@y(y$I3y%2o;OJ6x|Li?#H;UFi{fwAKjjdVj_5G_cH9K zbh5jvwklPC6nI)#<&im^nFO;3n1nI{WFOi4PYwP92C#ip-BCIa_i#(0>#lMfo7ePPY>?ft& zj?a01zF)n1-fPso+ix|GE{Awa2m7tz+3AS79f#eHt&S5ehg_2VU;Wmq++Xwj>wfFh z^M^dY+pj@oM}7(RYvj=-B`vpOpUZK=fh|ydmj5Y^Z5O#R{CK2Ts~)cGRmsiMn}`Z? z#r^9Kqbhe6e1OL5)HHa=u~XAFvBm9Hv;c+L`tC`HRxT8E-Lg3g-a9pkl+E2UVWNc~ zcuKjAo~i~lIpLC*JXLBO?dd`umSv6uwu)JC0DR)4BnsD%Gxp`2pUKhh7^mX{etlyc zPRIM|A>HZNq#iQ3!#;JO8Zt2r^>1*QpTBL7(P2;h=U3c+RF4s7KnH-XTiRD}fm74k zk^Z`6D`<0}jO~`>EI91qxayR&FHcP>_|n{#%(PL!DA*9oO7zm@*uZi1hfd?QV@^ls z+v;p!{K##2nB|AA|z2g43?m*|1$fW;>OnSw!X-cHej|w(L`n*_Gzcro?#&jTY zyBw{kv>DGOjA!}9>ds9^v!gyhtiVCM-IVLluj%DE>NQrF!(%fu3>t2^DD zPCCgASs=1@SQ8XX*n@xxB+#whfU<}PhyoErWJ!0x1qdWa+O|h#M#p7F#bwlS8RN$0 zCfY+EZaV5XzTfjc?|&{2>09SkojP^u)TvY3snR>l z41N#23lr%aKr5RU{#7u!gwtAodJuG3`JEj$udx9kWgQsw3AO{{em43DrPqM@msOPx zrJw-@h10VPr|YKSNJs)m#Qj0!jGEsHN)u}+@qs#|#lEGvpo=pfy|LCGmIEPy6bmOc zgx);Oza8!zgQZ(`5InJa4%j{WaZpn!-_L_TaONAYQOV>?CGKjBJlmYQo;qJLjxqU) z2wt+C?DY1F5D}oMl$xaW+ z?Szl&vxdmk=A2QVmjHm?R8C#Pq@aKjKl%Pe?hg*z zR54pJ(B{1n{@jncr`fn$iMK%toEUIUzKVCM?_@jqru2}1!>N_Bd~QH_P$p+ZKtBIQ zJDZkPW3_h`CB`C@9d{W!Jp-NITg-Xe4DI2o0ZtNlmc_j}#gs#)>fw*eS#P2o=Wx4k zrk23BDqoEP`ujUPwSKTyEgwTHtybxF8pyxutZXZ913m8}p1Hs?#X@XCD>&%?DwIcl zjAU>F4&6)ZQtaO4W=>6W>a#Ech;#2;7v!8Og8}|&@;4h&M`Gr2KaW9C1(;Ee9R=8J zoeZsjVNE&twH*nYaSgl{u4S%#@^n+a3&jE>H@L>28NG_k(2Ug6k{TD$AlecQB%IIi z$Xor|b%(GG9GY+Yq4rKK=MIv}i4yNT_-kFd7D7U*6b&K-Bi)yTV^yAwg;COWl%IVaB zB2a;*_IE8VZFMTXY{a(wejsJUc0<1)DgJxGX0#=2`ue)gi$OF@jT--R{QRZ%rOw5{ zv#R;0jU{*;3~~Nom{er*#80oa(Nusnzvl?bB!Ni07HQRKx&6 zj=uhVd)tZ16tWgDQ>Vz->qnj7Jbb_wh zo>^n#(hWYA@N*4MQd`iS#xWbb2tlO7ql4f>GzL4!(ZB46K8$$_vvSO)j5v&nSkjSB z-*v$8WI7P1He&F>S*(6~O7) zgj(FXg*R%{c26g)aG~wNArM#W*_GP8a6)4XGP%A+AJd3jt}rbe=*Yfj|kQmei?3)6N7;&=KYc%oR zqX5fS#w&OTgS(#9$7SPD+5CzZIOkSlEMG^=lFKC>O=}E_>H@0cC}yY+;aC<1WPRa z5+|E@xQ@bc!Eil=&B5^36gC9I{!$zYT$hquKH>Pbf^U`o&$-}w1m%KC!i zg=hz84_MWYE*}%SZImUpJ`rW1Qr%wP0CLZ6p}8wpPlEKQr!fP)Evo-Wdvn$AQDY&R zvZ@O2TCwXOn5gpjyltkEJkK-(--sQl@Q11Js3jtt3cvo&K;e%NOe*|G6qXAAF@>eV zAEmHV_)h|buiaK~j2C`CFZ@9&d~IQ#XC###+Q5`oJ~|fu#4NG?WGY~1+xAf;x1eoQ zETdB^RxY_A;=<(x(%%5Jr7X^*spYcmNRutj3zQ5Q#*{K*3hkZBIqyDE{~QH;qj9wB zSOX3pyE5S;FfjgA<3nE5_~+awu-yPV<H_q3B7flpJMlUz{QJ{2YN|JE zA6bl~IVPOiR?xuE9M7SLLE^qhtXP^;FU6=t5(y1oF7lJh6QmH76SLFVV*P zF$YU%{_XUslUIUGyz6gHJrl0Zeg(eH8b02IHK#relp0afQ8^gg3_|ycvf-2<)>1Gm z^2Xnf-pJ+|4L?)H3oAG^YaO2GTlIO9Z~)(IE4{^v&(!gaPQx*I_*EK(UljTSQ31Z8 zSH98Md~5e<&8dIHsDS6^8+r}Fx&n5&pkc-F8ZKV$T2u%s#fiZK+&SPDzNB1b-FEEb zb*DjGh9M!mOZbd^@q+3*b*tVVk6?xfMo)rK19}P??4>!(J%vl1Pjhz!|Ix+*JC!KU zj1R~v4?UtWNd*D_gc=mIuT;>ekb+)gMT!h^Sg%gKD~UMSnrO$C-$Z;;kH9OLV z#31*D;JG1$l&i9kVvx;q9p^dDE25$#VGYXLf`GhwCLk9l8Xa$kmB=lJ=SBm0-q>mY zGO3`0c>ObFPKWuo2Ru$xppHNgnx&^;E#RsL3VtywW?B!UgAUR_RUJH!My4RG(7h#e z91K3HrV5&apiW)2|1f=chNiTEnrDU65&mK7`6-NV)0$&3b??Y*bn3QamcOE02g4P^ zSDX^RAIiPQ4~ri^Oprvnf&KS@x3 z>!7~Il?(QqeadRS7Ug%wl+pN}_Xp7L z^>q3t@Eupfpkw&50c#8P%y;c?3l;C`LS0HOTwhUoGN6&(o^yfvhdWN;1^vTRdfjBE zZ@T@qO|jY&M*qkLC-#(PV`FG*d-fiu$FKDcp0AymJDo9G?CFP{>4)t(hvBNd^xZ^q z?N8{p!AP~|yiesPuDM34{3d!_v07P9`?H+B%Z9=ElwH>ZJ}RXjV`xz_Bsx}E^&#Hu zo{zvUhsW>lEcjvf>;tp{rwI$5$2X_vN1DgUIY1_LK}E?R=IX?q=us8I7ECWfgI4R1 zD1kHB6bCjGuQCEV4kbnNAHN>>LeE481TG+N=X_#Z?!|V`888TRJ^c#G?d$&te#$U+ zjQ!QPDYEo*6vq5;4>Kx*8`th9L{J@Ds=#{%5b3W&`k*lmKTo7|aCC_vQPzaL6wLEh;-$$x^$H;;6 zeI)psB+omVSicOce;2X^)>nhyCe+Rv{Eh_QshZRzq+j9p_)gAuv@$4jbq4cV zZNygpgUU&$Vd!9A|F#lY^>mYWpm_!P$>-n_zQi(3yz|R;xcaE2 z9gV)s_|8j>P!R`sfua9sP4SvEzUF#f6n-0TnwX$C(|m0jA5TD52S_-|H5|wc!w?OJ zNL>z~ijSz+R`3altjxMkAho}Ob?fhl%sO&#)CLkL`1a|G!Rjm@A*q4|LWA%jIL&2i zY;$88JIdyT4@z$?Sk(Uo!a!w%7y$#H8@R~75bY=O_3sR#ur$!PT<&gFdl2?GA7U40 zAj0902m$@5%@0mOC%eIl47U~Fg6Hi8#6lWVKg@rztq=Wmg~NL@+(Xm8aO|Xy0eLnr zj1!vsBbV3?Z%>DJQKG%{pJv7NA|dgP0vHTD(qf&gVuiM zAaR~IzkLRJe#mlu`>b-T;sbD*r{EuUucLjU9f35OA8LogPHu~>s@7mH9b#fG1NJ1u zIdrGMHnTP)ah4w_BoDx#gKHk*0Q~HNFRC3QkH4<=j_+?K zhNK9FTeB|Cp?#-#Atae6<2xt4Z6xZevlb$44qpmh^o3xKuxpgeN1$fzB@_kqj)0^ zmyZmm=U-0pv{G&N?8Yqgh@@t&B<9TPc8C?D0P{LX? z*GbaxXU;o1E=uB*U75Y3{v!;zoxWK*LbItCpp?k{9+rv8tJ^BtpM}|eEBfvXbiBNu z+fnx%dTiBw{i;=Xg_=#{ADikspu-|p=kNf70WstgbIX{{hu(#Ud>EsTVX#AL81w5e zYV01IW2wWWZ$@hMV# zjuf9$3i@;8GeExv^cz6GAt?Ph;xAP8zKj3=Dm`b$p(+iXS)hyk_2}Z1vdcAeaROb! zuSbWi=e1OqC}W~Pm-Oq=r6^@ILqh0M1iIG09$gw75(8D5K-Kmaq1s2)u!pMQL#-N6 z(R-@^tUiI4>Oz~ctlE)NOt30;N2KCfj1(zr8ukE^bxzoaQEIpBg zl1=K&{HnM=q~Gkmoy#pZ5I11=!YzZ)S1x&`vH7YQacgZl9K@Pe(R|G5xqv2Le++!N zxPjb5bxHR-VAu=wM5CHOBl#N5Tw1PcuJw+}g2LTCDk}@P;Ffg|wC=W1gRnnqF^pX- zmU(Z?P^WGko*i|U3e@UdT2MeC;|*Lz;Yva5cL-VYI4e}m@%mc469y1Nch`;M*4ldn z^viGkyZS@4U29a{x-b7nmaC{aH9?&GB2cAw;wfQo$Y{4AJfGJk>A-u%8x!Hxtq zw-YG0e-Y-H`5p%_5%}whfspgVjTs6~2gWoNoDla&tN`229wa3VC)`lvbR;=2KSvta zp{vE}4(1$?R?P=QpkSZ*qd+BAtKfc#_6CPCR$W*K=ueD4uyp6y1)EQGpX*AodoFnP zW4vL-P)oBB+wp@ou<&6Aox%83*a^+G*_GlwWW^$YU+cf22x(bdSr<)L-94{!$8h(P zH$gA*7i)cMX?tR8J8b{px9mM#|>9gr@8q%4$#i84cLw>gAU9QW??`$FY zoh6s8AHyMQ?V>pDmNgF14gL@CSMP_zc3YHxtJ8DNj!DLW=)hZ*?OB3b@^-jm{cTIm z*HXWoWXm~JM0Zvwl}k<8d;CT>T=JYp|A#ToA%{|M9;5QIH=u+aSbN3luC*wI)>^yc z)lk%f_ZTZSgARe@iNAI~9Ge@CNTSE8kl3h3`?Gh5Q%Gx?Wa zq`yZA{XOb8(chzl{vP$4=36i=5!63A@e69VBdWL+61bO(4ZfHsWTsn?iMJzZP=d$F}I@$ zLce{9fg`EYZ(zAy165j0{`WAJ)HKI1S~<3#J!(@A28;F#@5~*!@=69K4GFe00M8e+ z&3hgjb+>DCp!lkgyXblt_C}4zP|3DG-KF%6+1iL+3&g?PoJhKH(fX&tZfn?5}$;BN& zSWgWMjml9EeCUWx5kcref})Ee3%V=K3Wb#_pfCA&6`EJo$=Hc=L8cTd`&1w0SU|>7 z163Bb_#RS;CcWI8TDpi7DV^e+aF8_HunHaMbx(w;r*row&Xz1a#9Wv2yNfcV1=4+w z1u0bP&K2wLvUKSs9_*U@*)ijwnBF6vTxuCuFS>A5Mm7Z0a5at^wW)t^V*%l$Xv8#=-c!WP&i z$#%~Vb{*{#!j+8=2RaPDVL`%LA<3DCAJ;dtywaT#6u>Ce?7nI?{ z%4#el5r@#ODqTGsIZZ{quw2leZC-WycPDvz+(9v z^9d%`A^%wSXe`;{J`p~?glndq#2!9h@v06tDhI{hQw3uwbO3FOg0ErSAwkYP3t?Mg z`KIa?Y7r+fYXb$?oSHPBu~&8eDtx&gU(~~46%Nm_=G3#dhs@;!^fBBbklrMhrUF?*K^S-c35xSKT*9RZ-l#ur0Qq zp?K=W;+IiDwRHY;)caA?`zOJA-^*i;?@BWZd--I1Vgy}9^q(>5+@{iHi8^-yS3TH$ z;*H*3Z~-*2p(XfJ6klF&fot%3sy2j z>4=xoYS?_ss$h`275Kyl<1xiH!kmQPLS=bDZE3Z^Gol~nK(Nt(MpyE9q^i!~IahK_ z@m-VUTX7HVSdY&N~?{Pt?Ecw)rMvrRq~`VL0s?fZYPvaI~8y zt}v-p8Pw0i2MsYPWlsY;ZoYs|c3Q8>!+wS>#b*C(dd=PwX-5Nwxt}=U#@MO6@?l7M z9p3h>o!KASyi;169oZi`F@VZEYL9_OB5k{aBYmqQo&5XIE{84H<*=prJxpcg>~tlO zzRevpq_r!ayc}aE!)f02@f`)hH#h^8dPLEF#*KCOMn>D=UdWz#iu*3DEUi^=ekx~+ zLm7z;-6LRs)!5)lWF=f}V$W0xyu|O+PB%#P<;dCLN^$xo!-}iQ8#EZ#Ub&AuutWV$ z`$nOHI}}lvfUE`*)$v;PRvxi|^nf_IaFgWFK*OT?q}&Z1^TQfPIk8 zn6pl7Bj#Ljrtfm5!?)8e7bYfmFCGd;K+&bz;H)oq(A^1GaNh0yhL;~Z{es(@Vb$i( zAZZP_7~MAqL7#CXhvEzf+#=y@P^ViZO~b`Qn_tFum}+&RQU@L$PjF^WY2N zQ4kH}Rf!)I1o>)vTBtWe!PfF!5gTWV!f5%?dLr#H!i+AOU1_}nX*-9ehAYI;Y$dsb zIQmi_c@V28fdzE+dh}p>gt0>>MsSl-=@KMX*0oP4JF?_@+=YTOD0ye9qOo7TxypZ3 zj2E<>LPgkAeBKPTT+n3@;fnVDsxb+;v8?=idSn_rGJwPM{Y9fWrONLru=3@!lF=M3zfeel!V`ed(ZW+<3N_p zoL_EBET7aWu#rmLn5s&*wm*^9D=}X2UB?x$-BV-Fgv5R8$gHC2ku$Cw9MUip4d&A$ zG_8g)h{x;}-bRX$bLkB_El6--h`p1!7u>cABC7c_S&Cbsut(`u!` zmQ&?^jnA7Z3#w=WwTdQCp}4=rWt=eTH2s&ohvtf;(fBU+@%jpU#{u%vFEJAXiuVx3 zrPrzy|C#@u+@Yn%xwp7Bg?Y;D$MEK8qo>#UUq|y6(7fOM_ls!W;%|j2h53!SrpKxr zx}9`aNX{wu*ADDQp=A&Cxa}_5=7Ga-TEwl`yyPlI-&u0^K)B6U9;7IlPJVLItH7ot`zzKsc~f!Mr92SI>Yu}>1UV&J!(%sgWC(t_Vn+Z zy6@0?9Y!b%xzSSCsym?V$j<^DzdwU_y7>a938@ioq`&aC1(W5RVbRmTTy;{9+cn!b z)Az%pT2xUY^1~Rt{sYLWx_;QajT{x?6r%&D7^*%q!t0;YHz^l_@Hr-9@$*fHKKd?C znLn=AsWVkLUjc6Z^R1a_>hJcSg;31xR;_{@##9 zkh`q(Zow?*{Hnry<+kngR*Scj*i)($?Tx0tH6}p)?*e*+BJKSrrJRcyw0Zjxoc94T zzJPeQoyW@$^zt44%=?u7_z_|L9{f33LzoZI+d+IN+QTt_NObNo0pQ<5(A_+z_dxS* z#5}TtQXf!LnMzkP?q=TKlk_JSQpa9N|Wm;X5h^3Y&Gi8B9V{2rvd zIiu*$Ug8#3tcv#03znpg90P{0@QZe}_k_LFUxJm%3(Be$(0za$N7LU&4SZjrU0L>_ zGp7j-l`(*WCsQ;Kn8(TZe*>5_A4tJXWj=78#Ijh?KAs)Vn6d&X!~(@nYcQxP6kXYi zwU`Bm3HxEfeiY(|g;}dDr_uda?y}gnQQI@C!(}Hl%E0v{cCVq5Y#n$4syZ3XkHW?@ z*wU+UzmIF^)!w_SaZcd89e%{BzQ)&+CP&NxzNNkam%zB%Qv{5w8tm|MR#m4(*sex^ zwPu62Kym?F(qUz%4){B(#TBoYwHt=6k zak=nt^FOYSU7aL*Hj+LTww+`zY4+AV*Hho}GxpZT8zb01;=Ej%-GgKM=lSw6jz&R| zY(+PQ9aZEy%8ku@uK<|Gk6mR~@;;Pqd(5eWk$%phjH<)AFlXioW#tNV88qLh!+Sa2 zaWfm{2RLv-&DFksL-?5t9PgP6YDj4pLE|`cesC(Iez5sQG}D>_9C+cH+rz}OdluR3o@>WCJvUFXZy!D#6w!WPxO~+EoLHE*eR!Hqm$z+rTUJl5IP$o4 zjOm8TJbwNOy@y%?e}^?VX#_8jSYL0pXKu#_+*_sCJ&pF9gGCdeb+I8E-siq1B)Cj` z$cRBh42#}(_r&1BnRCwRsdgy&Rai!Wqlyn4x=*n2&;JgoL&+ZW-KA4A19E6(|KoX_ zYuS6iH;u3}9OCan@`XIJXt$r|oFlUyr;U7Z14;IC4k@L7Li@(?tlpfY>m-um7VmKP zKqrWa4_v?nk}y^*z z7pUE#UXX+dr0&G-Aiu}>+PA{>VNTCMj3W^b13+g^gR2CqgN%7*Y$q?N^z!_oJ4-h zr)P1H1}gD<>8H4JwAnx+jeD8_gMc^Je}EUPq{48yAOxPoE(J@0`6(Fhy$Da4FG9}O z-JPPR5PyrJH@Y&0tR*<#!DbzY?$hiuFd_5NF4hg{!y}M*eCs}i@rm%Yx_t}TBIw;6 zo_has%)@yObH@Qhlz%?0rl@p;tj~fJ!w~#&V1^X5;D0qyH$+b%{uV`Vw$kmOr-|s< zbBGy+hZitJfRN8dKNgQLQoH3D!?ICyCXhIXeYTNcqo^Ic+hho6$^sVS5 zuEGM&ozPIjt!VZc07DhrnFVz)2<<+XYBqHJ0h2Ig<4F%;@()XwHIub1@AJ6xf|^{K1ILOEi)Tr>_*no%z{-`i>Y=S>RX9?Gep()%Wd z(N$=vh)#zJz1*dl&8zx4^Q;;~iM+vk;K&M`4pFB4qPV^Z&f?W;m;-ye-PLsD&GVQI z3H<{dx;l{cyv@tQ$bdJmVEe*CSfw-b3!0(5;>}znQObsLmHfT3&Qw;pM6vrESUka& zNSgCsxJH`q@2buB4}jP@x(4R^G1))B?#u5=+qOuy^Si?L^u^Qt-6;+RaEOEZMrpP` zg&;Vm$suCCAEW#S_(VUZSL^QI0Y@%_-47@w1w`q(f+u~-UATC&IlBS=HZo< zUlN008MNb5`#51)P+c-4i>CMA#}{~WAzgrjy6qiT%&RC$r0*DTW>AC|d4#_bf+(yJ zVx>UaZ?OO%Z^2)*+atXN4}kM@HNcsJ3#aF;EAjW??bG`v`6yQ1DU(2Jw-C@PuU(*< zu$I;Y=wd5OWu7^>;C)Ag4Uqq6QX`XK2? z2kv2Qhlm|0BCX;O!IXpRi+a+vysHc>1)PB0$lX~6mI6KsE(L6W1Y+oWkkxMo5Elhv zQ#@SZ(nfOJrK4^-nG2LS*j$dugQW)?-fl)nvHfi;5@M2>DP{ZcmxN5(|G_1AIMfVw zBf{_C+vK<%cf^oW9*sHR1o4SZbl{C%XX90aF3_O35_}0>w-uDojcM`MAf9JcHEW?^|OSMx9Y&7+gkvqPGOOEyy>?CnbE^Ul*T}pR4uIhwXqkZi$EmZ?A_=nMDw96~`tTOM+ z5oHB;wOG1c@BiCXY79GKPy}sOYN(i&8eP)(#IjlSAA*UYG3_fF`HYkmF~7%GcVS86 z{mT~A{|)aYpVgK$u66aU{|g1SE+}ctS~QW*RTX%SVtxv9QcZD-VnGeOXkk`rNl9bn z(jpWFlTtVaG$ltLM({!`K5vhzKZm-=!z>jN=@*ZnM8ke6Q93?i&WdA<3d5+BJP%}} zeQ`PmHU#19muI4x&pnxKx^p=GXT}6pqQjGmMfPcQE)WG_?4tci@K1nofZ8YVp^iA# z#g85xw5@2OwWmds@-{+qvy#o2e87rahdjRMSF)KJ)#l|1uwhCzH{l&h`LQayZ^e&z zA71hgg?@37_#5~^S4Q2%DefK~;_>1N$VH+Gb)V8KO4x4jqlbp4x$45Hoz=IXwbInn z>S_FCr?UDBdV$nEfGMfdxVEe+4_BZi<0|Y*Oyts>Z>>#%(=l(1O}&eXq!$QEeINtV z?pP>RI-+zAz%#eFW@A!o^Rh%+^G^R%x>&jj_dt&$3aVXBJ6w#H z+|jgonF&TzlYb~qZAZgSZE|2&RTjSdsDAm;-v!Vg35pxK@3^2sFZgkYr|JT&I?%O! zjW&2U!bPSDD1*DT!-Jc_t{}~WYrQ-0TfM*X(}itqa94er$9aJ(+xjO^0v9}^f7_f| zd@WYs=z0OPBV6g0hXwHxTwUK+S?6kli_fw8{Uxr1-$fVK=TM9&%sAq*cwDMZOXuIl zRKZa<_5{0D`OUbrJ3poxtE5^sE6$Z5pQ20reQ`~E%r?)rp&u5t=XxILp_msbgh$5$ z8lJZ1cpl_>O*0?FO|$Bq#a`p_F({^o>txgy*6g@Wwt0=;K`kLfY8mQQLqVF^<}-Gx zBB`KzYv}|i9U?LE8y@Jmn@^J&xLAUjgfFjMO^9Hc;ObgTq0&5mHGW8mPvX+0o=NAQ zd~k?YIzXv-ZHaznH4Lp(8*f)f5kf9RpGd`6_`Duh}#P~SjoMPi5i5_Z4 zEzrY133`SRJ^YxT;M*Icc`p2PqR)8{R8n6S$d~xSeQMaCw>d$?Ey0>{@B^GOUUwBC zQCY(~<;bkzp9CqdQ@MSqAMvC#OvJs05LK@4X+2~tS?+W5aJmW;jkut9Vm9pZGs?PY z*yOVfcUz{U6%6X=&b8-kQC7Z;;ydxOdOh(0F08W8i1|y{8?Fvc-!dH*DzluPCie;d ze0jXK*i2?SMlMgGcY{Bn9j@^X-46H>uF$FTkG?xF0(&PLt{|{~^IYcXJ9_y0N%jmJ zEx4|O)p&;v?NDF(<#O^)*_3&DiP8^RV269N-vkd9IIzZd^uW;rcSC`KCyRp9IayvU zsSF_856C6w8LAiG(0z7Vwq5KL>Qt;xC6+c@i_ClrKh~owbfwM9i=aPfaa!GGQPkJA z-Ox1?niV^XtR-}^Dt-=rpd`znBsbCMC2s>=3dj8$1(WKTn)FLG>4Cd>(u}1%>9_dV zbQw=tgTHm7(OalV;qJG#xf2^&i~T=vc8HaN?U<>nWQ9tTu{x)*8Q+`edq*^LxO4Qu z6U&dyE6#U34{PENTYT#)j$ddlZEDO_{;)0Ix0=B{7rcL0bp8Q8b^lPgqWP3A0jN$I z9~<1*j5xquXxu%h5x(KZRu}LKP^xmR`}3{atkt>JhFt5Zd@JqF2wkhcc)n`C4gC4J z`Kp*8_XF#L+I-iuza;$*N1*n!^ec{+fP2`pi$2a%6*7NNS#R)cDfv|K-I0D8tVWFTXn;3(Gr(z&GpSeSEc_uk^bY2UhyeYAgNUliFYLF6ARn*QxUJ zi}N4&%kuxB_@ew>KcBxhSp1;0tR4W5<5Ps7w-r8?u>-X4w zc^BZ8yZw!YBRzkKC$GQ=rCf*51M$lc!YmqcY_9#mh;{hIe}&7B8O4_=>v!Tt^*K8T zUsZjp{JB*#^E0;q8&B$az(^^vz=_RSFagiUDy4ftX35U1@&}B|=~Htx_n#tjTkb#p zz54bK3*zDZQ<%K`^7_idNo#I!WBjJ+j7liFfV`;1nW3z1gpRN8jFMnw^}0gOeSrcy ze1;6{HY(97CbNp~;u7excQmKYmk~ZpbJifTy*uXV+_sk6J z2d+f-_zVte<7$QBg`R>Y(vsEwSap0bB(^9fE^Byse*BMqY;=jgOO2RE5mkd<+XeNb zz4Y6ti%9wi%2@6gczYn1NS;&5I>oaqx3VePvokmAbZ*A!lJhecb!2-=whU6%?Ljx1 z$g@i6Q|Ot{^qLM-`7PR*<$P>WEUKI~Wc}z*Q)7R+kV=p;kz#8jkuzmGa+OE6MIdlH zu`4%>HmSc#RMtliCHY=78qWJ6Gjn#2f@N3rb@H5@1jfE30te-E?zx$n4a$13a_IG( zkhn30u(-j}QN$@e1&=+*!#0w=T1Yj~OT)06OZwNX=I)$HSb-tF4aZ>MJmzCIPYsg9 z7Fpu5P!H$fV+z9xikbS&0#R-G@#nC&qzOVoThbcyct-Zj9T(NeRbYi06^mEQ|6en8EZJJ4FQSC!7;bnrJpk!oD zdrrfBd2CS}HS+O8QTz|6_#`1G=8HNXKNQ8^-h`>8RlLr@hs$L?oYVNgD}EH&f+`C{ z`MquU)d(=I9|g`8=c(+<%IA=K9{;fU`Znu#lRsBnv#q?c9V?T)^5#@itUS-2yv&^; z8t^@6z@4fFv~vwO2|8~|{Ap5uWAQpZ{(HM;$BOf$`tm(n7QcW$d8G|AiZfeetjb3u zq)NtZ3B-`LoFVZ)kUX>lVH%djoBYQhcVK(I8eNl#Gipg9$;1Gdy(&Y9ALK$V%^M9j z#(8HC<}0>J=$K8hUTz6_jy#Av1?Y5Ng6mqi z(w|Y>3tLRK;a*>T!JJA$hSydFbE_eGyOi~3aACs2LXRu;I1TGz)5E1iQTyDIU0J#1 zuGDX6Dxe*R({L?*!~Y5ND-t-g1U^Gg$jb@Aqupm~s_Hs%p@AnnD2rq=J!!ci#Jm&Z z1FO`NUO!LjNnhg<1Y+f$RPK*{Wq&#)zD{(e$?MYwcJt<`ACwtQIMx0a(bfZOW zxG)+0=s*2wT4%KQAO6qOUdW+F*1DkMEq6i3;dl;gvI;H*Nj+azwi$_0vZYh%Ff2(j0>{c%jTKiISszvd-Sxm(7S!2yq^&!$WJDI55R%WKRThRopJ33F?w z?BF*IU+N&jws=Rmh=%;4`&l<)e;`E42eZm|{68YzBgMVd5t19gEN>^6Df~Mp(+*?(b`VO5HBA_eI>$=xabt09fU2e+T z(2NO!{4V+TV)hOVbGJ?Rtt&SltNP8j$qF5LCMd_YWNLoF@ggpyKLK=$`_RHJ?!(-X zb8fN1w}0<!hAI=@KlRPD_G{i6{KiAT)c=Ly_}lFz{H6UB z&D|(Go6ywP!l-WU_7sINzG3w>2+{}nG0TBp@Gjzu-=9lD_Kf_{9G(0m$N{`7Vd40& za5%oiu$Yb;QJ6?hQ~;8==DY|j3EWx zf#*`>+e(6q`m8rG)-eM7LBQKafIkDcTt5QOTY%F!9`OkH1klq>0P!o}qg#L%1KvJD z{P``wcYzObe9SiS=O`*ru0xUUSj5ki@Qe2pM3(t%*5Zg?kwnHRVDuXf4-bp>AC6DP zA;14m#~1Bq78IRaZUHBsEdwQjx@+%!02l8B67PKhm*qvk`vKlL0vAm-#H<{Q#Hsl7QdP0-ni$r$@;5M!=IJz-Iy;sa|FQ-dT!&srEhze31Dp!@ER? z|2klOBf!rCCi6$&X>0+$5b#L&%K(o==c*Rqx3z$09m*xwi=c<*KV<&PWdSO7HT{tu z(J!t6OuW-)*heAHw2)9x=9&PHk-lw~-syFc7JeQ5qa06eixfq)ofja7G93b*4Y{>y zxaddlP<$7ktlG<+_)Ql;>0Oq6`YhU%0=|));3wi^34?~m6S7KEui~AOi1$8_Pr08F zaDf)dLLTvb2KXWKP4szmFg#mIA^ME)@`?B#n?lX#4b8#5aQvvRxqHDJ{U40Z#QI9ua>z;6mo9a^Dex)QKuObblm*rI0X0$>r_ltrrBAq~H)n0xsKcTOFE}m#t z0zaBX$P*qG?OgnZL`FcaGx`=j?g;-b>o$rn?4lXSKyK%9ol(5O^hbKa%Nd?;xIPJ| zf3$>)UWKg?j#oqzbpG1!0#Ep_RRgqyH$1)w%Qg?eey+T6BBAyh9=~tccUd;+Q~$8< z;rz_izW-b~gs!{=2(pkS9FNFG(AUy;sGE={Jf5(T(xK1gK0&~Hh3WaE5Ntsk>mI;m znHA|D0$grO0#5oymigWqURj3|NS1X93w=lL^vJd)g=L*iVbQl#<6WjNJRcG7-LQB9 zel-{;rx)-sEx@M%F3X;XZ$^d5cx0U|)0>ERGJiyRIu#P*PMHTSQc$e#6z)8O4 z_9Wn>BShQ6D--SMO7KT+*8;u*aJk$9z8dfxLZCeY?gL!N5PcGGy8lydOM(yE5J&Xk z6kounAii8*0#5BEmLh78fZx~xe0mFT8s{bmB={A0sNakP{|n$U{i6P_MOvAjQ5w!X z{K|5rf&csS8*$(&4bKz!m34(^zrS>zPv|G{8%|zJ`ApX$J_)%HGESfyH26c%v$FgO z_$w{IUvB|E6#c5KPXwN~4WaV^0{$c5LKn&OoI(dL)6-L<^8|k7_9x)IP_9Vv*8(o< zClQ}6_mlOLfIkYj(4my2fYa@0LMIVi@L&8AOn$~{foJh6^J9z#|4-+|MP4B5C!dzS z3%K}g2}w)eMY+Xqc>15Sr^Dk5zWmbpOCiIwawY360Uz7~d_W8ELcqlw0$u}cWIo<| z5I}nb{sjnAA1fXKUj#t90OD7M+akb=0E^VWxd4~-gut^5@JRW-0l2W4@EXYXO}s~< z=U%|=6j6HwelNn2`cHyWA1xjc|1kji3m|?4d?nuHb|m0sfOm@!e{~pKv^(nOWV=AX ziIzz4OIv_n4R`|ni$~y@3_yke;#a`$#k*|p2zW;{2zfj&;Mssj(laz)F8Wx?Mz%pH z4D}cCbPfrH>L~go@*{ggmKy;NpZ^r_j?mYU^kx^pW7}2@xL8^Q~wC~90cWh74UH=uS~y`^#8=GY!g#~ggzVxz6x89;A9We z^9cAM-YG2J6Hq_0eh~0mfhUC`YL9@=13XCp@hjkW0^Yd=xZEy8{JRie);}^lQvADH zh)?iH@t3v`pWu<=uL8VF1o{as>j6RMYQQ6vm*A1`mjfQDyabOF-`fIyf=7x^^R{6>vc_5$2#j($hnGzX|PG=D%zkQWQ}iBB|*2ML3)v!oCpSMLjG) zCUTw0aJk(H_zbjPId1{~eGBkEguzAHdq9ZX9>eQN#9NMda@pj*h{_Uf4~EN2I3MJ; zLg~BHAL%hm@AL}tL!O_*C)%Y*6dqs5&G(2P*Qu~UNR|eO#P}8PSiH-8uxfEe<5#XH z0iO)GOpC1JD5>ZN=$#%}1}H4|?Gz5@Yxs9LFN!bvP*HyJ6Ge{*(|W8NZqUM_&4_wv zY;K;f#p56$7iwz8&~5N%kfQ#IbQxEvVbRt^`@<#i9N$4r;Dr26zg~?muFY*)vns^r9XrweTse{0lV3;7}LO|9dTrt*1OJ%B`XM@6UfZ@Lvx6mjnOh zz<)XLUk>~q=0NqIgvAnC$S*bf;f(eh`ZZ|Rg~P+bC1K&84?5=DK6lol!B&SO-X3v^2cfQ+odC{U7m)~|<@w{FO7R|qP)(jU9ShKVG&CHsaJzz%P83SkZ zEu2-@r(fUx_!%&(@a8@<`wzT%U>42}4eXoA7P*UDGpxn478T8zf4eoi_n`j0vwGb= z=a$*7+wQPt+|;Lkzy5_Y2NYWSWcBISD?7VapFx>y)QAy-tr-(;cHi!DTeJK2?u#S? z+&tK4S)YErv-)LfV5V!O>z0sgj7mss(=MTvZUU@LeU2^)gP5q^?DmAHgu#|8ELNC) zhCt9rL1S;EOfu!BX>m{|rVhI76qb;E%-J~R@CB@iq~i4vehBubPLAuFD!Ral9DJ1LM5fn+Ij1XBWea9UGk zj2PGmWZ4)_wb58-R5_W}n}x6r$Sw&3ftzgui8#O8i5P^ieIRd9pbjEGQ5^$-wPP62 zLcmVJGHC_3$_3M4=^{IUZ?z6~f9G)M01JnA3CM=!%1cN(x&{D770@k=6o4_Z4M#`7 z9$_(o5#z@|fkka)1|e8N31&Bd3+ttU+Avt(LuvCwWL2?fbPpHM z5NR7Bpn`5*#(V)4B#}@TNF;$_ygiSU$|GQ-0yQB@ZKIS>6}*;tI(tBvhB+8%@TkMLySNtxP|>cL7ItRiy&Bw0Z^Ps zBp6ScQ|N2nL=po0(lY+(0*0tC=&L{>gH-XN%4IW2Md5iy2k7REG6#aZ6^9oT#fTNf z5V??0{bWDE^NGKhA-uSe`UswYcM!p^tu!goIFl4w4lXvyf-=KxC$d6G6b% z5-K63ZKRqIu<%ZUH{(mBh+xjYTVWyndw7Qqe37avq}mZDSY^Bh164*`kUMlPxt4&$ z@nBqN*&&f(Y~zJY2xA)uDq%5IO_vx3g;=(dSR{DKt1no&ftnLCMH(d~Ad1LO(*vkL z5k-Rpx_JTD6j~cWNQlNr3oS1foA92WYuL6Txhy{ID7B!Pr)?i#Czsg{Qc*deW8k|e zd8Ysl9>FRR1OP{ho%4S z%hD*Bk&H!_qtF2Y7|8qY&fz&~aLI<$8W)Vn5N*S$?-m9WXuC_rM2DJj5LoB?@^{`+YUYMU8Z8qAY6E?@Qm!^0)$D=_$Y~u>zTsix9w$QZQ)IT;!nlzSJ>5t_)NbMMbdYx zi)DtP2NKwGCXkS-N3r#BX~6Q>IUO?`yvM*czk$$odY$1fLlW6bGf^-Klp(j@RUk3~ zRQ{p^Iu^AUe`by|vFIdS)P>*c**l$#{QW2neVVV;vFI3`zUoN}i~4q76tmutz@lSy zQAf`uFn^B}dS_8}K>5}3WS;7>h6Hvi{v%aX#%?2)EIg!k5T!a0#bWF5YHO%-*{V;&TxK16mzcthws+u3~xOc&sLV8N^l2+ z;k!S@v(d3B%y_3sXK**fv5%)FGvgHoo#Fk5;@Kt?%{Ur?J3dNae;*Lbj1M6&cr6C( zNAZOMf5%ph$2%vgfrJ}PZ205RTHr4+Y)1tGgnABkh&}X#MMeEomlW3L?pDmW2nc5O zi(;8;@#R?%`salv_Qz4kN5Pk;Z!j}UH_(=bFLhWN`rQ)>GyV>N^5l3mO+5lDUyEmj z{XqdmTmD+K8tniAk9IUN>)j~NP6QeTC9<2ABU2)$|Kl-iC+dWk^m*(qi-vS_a;9Ay z$Cguo$Vu3r#1@Q;Q_1NL@m)O4tmZT5DGPh7Ym!RN?4`+S8Y1V0K~e0sZummvEL)bW zMk8_>pSG~!sA^75kE>(V#xM@G@Zg~&)~yk!sj@~k=-99caZLXnDy!W+$!zd>h#ytf z1(0u>j%ZYbV~Fx+tS|B+oQCl7CS*XgZsusU-4N0)9&mw>c7nZ4CcNn=xU=|_ENmDD&sKK3-ZN6;P)ySj(v zp7%mwneQ8E5!$p0E2CLN;yy!?WqyuGrfwlOzF|l=-z@=Yz0%{ zwE-B+^CSec{%hQ57!Ws1LO?)5ppWk^VIU}BK+TzMt<$pwRQR_IT}=P1)3LP(Brnm$ zL|+H0YY;HCQxXb3NB$%6uIOpm*5m<0vJf`@!_ZDS0Y*%x02rWGu0_-}2vNxm=EwX& z!eJLO(+j%z7?~d&Sj-o%O-;G*xlf4RGQ?Y~bP!v6Xbs$WWpoTP|4FI|TF^FD8rsD* zN;ScO--D328;NG^At(`KihENch@eD}KJjni(Bd@Sy_zj~0)@IG!MGWu^^!;f=DVa8 zL%CZ{>swiF4FhH;>H>QyLg=Nc;f0XtB_PjGrZ)hT=?ws7dILb2UIG%mmMf$}5dSTw z^xZ=WL7U1hDg*&T3ei`Rb=uBgJY+DMGrq%{_7IR4LS_&FQ`eY68AL#V+mN1>#CpCE z6RQ7cKd)}$bJ05XMF$htf4y>%2zQ=x{r5Jq&7uJGUxh@%Z>axrC_n8H`Y)HZwaYN* zzY{I#KQ!s-L?Y?Gr=>%TiC^%c;6S4-+E zp#O5E8kO{)j3A)@WCTI|Cu5NH-(u*$wN!Z0f4iaoY7pT1ZzgGNTTuUH(YvPq-UdUa zBh2+*Dj2bb0$l&y2DMX(kgEUwB^8~-oa;ZC9~>y@zf**$W&O8Ps)>O9BLc(|)PF>X zc!K&*CMc-?WQsUc=s!});^C@}^q;JnIgqPnS=CXKyhwEr@FLX_0LrQ(0F+fn04S>t z0{$}9@k{jI{|)u$lo|`^FRuRjOS*@Eze4>zy4b}2bTBGZ{k29ft($n^g#^|7J8dw3 zE{P~H-FU{3ZaE+Usb4py>8#B3a4wXi9RlBAutq-(3a3+`sJ;1561Bgfrc6hE;^CUo z9Ut30f~H*Cf~G9PI_erC@tmQxqM5+l6m zcLd%-!0Obo*`FI?5F>X-sO+X|`j zrJhYj5a`)t1i_w7#vu1>k3%(BN2Bo6v;6?oFctx>8oW>qB?yR~t%BY))ldkA)KV&% z1DOFvB*G<++Oxe3-H?lr+OzeNiXKo7GC#t5wgrT!<({obstGP})Uy!*;^9Evvk@WU zA*kB3$pjHp?b&3CI8^j({|}D=xc;Mg9C-?afd7j+wihA26(lj#vFYk{tQG+-y$?fr z6UVC3yNN`S-ZkkhfeMpcWecbWH%=qsC8`J^1zvEfQCA@ zQ4u?~vjY)Dd%ED4cWhsW1JSX491as5TP|fFI<^G}1Uk006!?jb?G}=1?Fn>jrz3T2 zN2MMp(6RkEFW8m>9ozO6I=1x^`GJnjDCxS;j_r4nZVPm5W2CO)S9WZ3n-bW$J1{Lp z%Qz?2GuGizJu@yx;DvrktZXJ0D(K6V-ek7*Ev!V*7xsd}=8eGu&&LSlCPcG&Utr3A zCKeFv6&AK~je)Nw(7>BNT`+s3n>c(z47>ln6t=Q$>|C1s)Se3buI!X*de-;`J}|g)+#X5{K)OWm;~fz zN7SxRplWu6VCB75$LJ202PJt$XUL2lX}(#e>Pmus7Dg56?u)3xN+tnAsUqM-R1q)& zRUB(LRa}mUDi)m#epZ5?E4!teizQK`!+XZdjEW@#7chv2GtRC{FehCS1oC;Ct8@vL zaw?Yg5HRX`1F$44p;|0NjrB72F<;b3vW)5G|G1G@R!Ne=`~JShfgySEMl#UYJtQv< zBui6nkObt+l^Y}hHA^$zy(QStdG+QPJLy?$-L;6LJp^8v(ZgZ|bH&3mn_#?z#r`10 z%%Yf?mst3st`?OW@0G^3EJl$ene@!c%QB*S0cRH2xiUXJp%bd1gjh>;a+y>obhOV% zb@HH8Cj?aMBzhc>R1%Vc)aX%oPrOCP%7!IJ561g+dT*6xNtzzia$4g`Vo8}GX)VQI zruKL}g;(QK#+YPz{+n}!g)9#ch!3JHU9bc!p6+-t-fiq-S&Mwd!|QLEvAy|a3COkV za$~!=zCQ#dj{{+ynBs1nKq%~rc)T# z6Dzr>ur(BbMPN|usHjSWsDe`BoKjVYDdfb&yl`l78Zn8Py5)gzLgh8K3b6{fUZRSz zY?ow)x48R^R&PLE(+arJjmCLTcy5c)IR7XCxt*~jtZ{N6NC<751SJwoA&rxu)Hn?x zjgv!*(?~Ev8z&!}6^AuW4&;qf?rBFNt?@2n$B>?yb0@t2r~dOl>S?(F5#G~sm2px3 zPio!h3Zp8bRdPurst9;d|4+aO{eMKOgqM|5b(>U;WQZAO8+%$hN}8Vo)A%j}ZYw0t zhwe{J4zU$zPUV-`3YnVk_Q8!M#DjFeTpNsitTc=v zAXgZP(lCaAn!>mUE2*)kBqK!{Fq{AjE5J`0Fw7+Z)1JV9;rlj0t1B>I$dQawZt;*3 zc#4XpJp|O0z~4}dr-Tx?Xu6mN4FB1BS&CR16r*Lt)`9PzMYnQ4I_5 z&Ib(Rq&ngK6xGQqQk@V`8!+?+k_tkC0YhiJvxVw_ArVVV3_~U9?v9-KfZ;BpL3;uNhH?oQ7%u_v1^9qr0V=8jA$7p;pi~vX0fQ$TDh3R+K2}Sp zXuu$^j|B$|Pf0SvTO17-WX6UJ7!r$tOfYsV0>90Gff&4oPzwfEQa~`+x)=e$;1UD^ z46a2$3>b*Pxl0g}Mr6d`wG_|>4CAFza_g4{3{EgwJRHae4F8BYV7Ojlu{>bNk{YKK z$oPQartsWoz;L?+zr6(^4HzDm zIu&9&4H&3H7LPPwkfSD3R16s8sGMEefWaMMz#tndlobsaWMd^bVCX5yf;3=|BWsoo z4H#t8MhqAtn>H^>g$)cCHYQovE4W{QpJbR&Vq%sjF-D-144)enHo7|&BIu06BO{|& z@oWqw=*x@y6}Imv_TJ)4)RprR*`Vuh$ko+0H%+TRBE&Fs#xsuna=DocHNi>(4=#$AFVQ`*1YJuwtfx?R*DoCaH+5 zi%w#b!FuB`1P*pcWXcLe-i6Z?OJKk7HV1A@m+i+PE}eyagILS9>Y`qJ%)%0r@Sd$REYw@r(Vi>Mze{NfoToUzFeEgiu+?{A5r`Pj{P{ULG2L5dl9|c0PV}$IO)@^6v$o* z|I&UyBFnd9&8Qo&J)RQJ-Xzrh5m?&U$XcI4U^EC=iIYB?reM+OQ=Q@D>+vk-52$xa zvUN%V8~qpYSN@$9*)H0}**6VLud>4_DKpHx`dgJ2R^(d|{n zw(Um>VnxQ_ME3GQO~&p+U=|Ldaj|NRb4H1DRFA|e3deoMt;WU{D!}irNMuE?fdTg+ z5E3l}K}aAZ+MAyyvah-$AL4-juQAN~G){YgorcRZlbB}%4jxjbclR)|M>gVo7G>J+ zUISCE1lK6jkZ2(YLINSt)?H>~gqWfRUqa*bvXw013x7byfm0i0WN{#x_D+iO}EoF|uc~@r6)V0QG_UQEWmTgVo{gf7cq!cbnqbeb1v72*IO= zqu85$kcJSPpM)crZ)rui_j(W28(kzb~1cAp}(H5cam5&y2fFtnFk_Ks*S^biv;gc9>X2nTAjhf;uGA z_z{WBiU~GexDXMGn`LI(`l8sE8pCSgkC=9Q+7GI!Ey(o~wFx{p-VD5B5i0Q_(^={qjpO z><5SiFPi)%>N&;2c0pLEXqS8(#jfgycN8t8A%z4&q~o`(wPIro`+5!poI0oNgOk|v z1yQ_nip@!3&G<;2Qv!^geco2QbNa_}6D#hbc20(4Z!Jz3I_Rp@2r`~z1na!As>_{z!7z`nz9TJ$g$-rKlg@ehZNE5=Bkz?YSZ4Fw$ zM2JsFy&SzafgQ$0xBQFDeS`89W8cHrGTsDin_+0J(qY%hFd|3pv_qPANZ`ED#2$VU zM{0?j5DnG)h{EE@5F>IzTENB!a7G-)82=*6xncjcIDxeV8kfj<7zkpgLydqOrtiE7 zCgEK;Ty5xwBj%~F$gt$DGrWq^?l&KX$Wh?wBS~!OUZkMFjLVbQl3r+M6u1-3G4Vwx zI10om(Jb@#(1R36xdFCkKP}pgxHfhEmnt?`jo*wgGyT|iknw#JOw3SJZeefgLHA!^ zK(4|u?YH23p9f}aOJo%%!Fu|lpKfAh1~nQiNc}b#W>FtMuCNQ(0AsvH7iEBv6^(P& z#*v}#-Ejmuj?Nt;&R!gpo<{G8BfT@jbl7}P;lFV?Y~_F0Vp%oLz8j;Xu>pt-IkLYf z5EAWCoR_~Eb{l=sC*z!a)NMGS&B98o_K?6vm|gX2!Du3)|KDO*E1W(t4nbhUL>+qu9Tg9ZLT7Vn9P|Nw z*&H9uZd?!K6qtVAt;e#4k3x4M3OmCCW%9f(`Y;#y6DVD$UlaW#(|u)BNAyG z8fEGdcQ0{AdpM9!Z{04z*($pYk7R~v@eeJmwzeb~}qj{hNXls5*BA5f0;LQ4661@Z@dM$ILY9yc_ zw+S8*#M28e#ubKG%kvUpBy#<4iE3?mQv%ZZNB`MT*d`~ZrxQ>}Z;hAJ(<}j{*T>5U zsCf|r6xZ^W#4)~bWj6H-0rExl7y#>}N~3mcj5GDJ{2&2258_OD2^4cJ31^&XtVMqX z;%X0{I8{vD%va_Kkb29VQ8A@jR!D7?%O*9eo20hNw@Oj7GArRolT97to{{Q<=Y%*-l7wheM0gXuX7)X)}#@_ySTA=#9A5)$}lmV0`f-TlbB6F(I~1ViKJ#{>~9(pcc0XT38=Q=EmEr> zsA$8}q~^-o@Bp;oYa}2SRcgcUNaS)Lwc!UPatX-EeMBOcfd3zR?*gY|)%B0B`+S%}@?RlT~_rAaXdw)K|wbtHy?Y-A`uf6xR_Tf^+4Pj_iKih`C&X2Ta~>1`YSNsAh@;a@dwCFCh>xGWH@ypoTyp@ z?&sEP>4o84gY?g9>ACHR^ux9EB7aUFx8jQ>b~XrlxeH@!Wu@uWD)%!wIW-;aKY~GM&8_YC$rW3Ay6S#VcmImn>ccFFkhg zazK3$ziXqwiV#BA>#PaT6P+TB1;E#oY}bqwx#?FCHXn5EAG zFq73E(oZNb)2fZJ?@<)0^bW;zmMRt;U)0Jk#yMUjKA~BI8vL9I^R?kbjegG19(q~XLa|8vhL)Q!SzaXmKx2wo8ZQ$6sTDym#Vi`f9hFS+6*M+TZ^99+2ppFU z(jCzYCb;KXBoa$o93$o%e}8j~XkKMD$E-zh?cMYRY|W}8ECInijX2Mo zft5tLg`4}4Y+hJYJ2LW^Q2j^=6RID{f-BAL01H6q{Yd0?#8e$%4imBi+zmL2nC2}n z6&Qv)K!`0bjiLSwP^|XUgesca*-lvPkw|iBuD<0Zn?;r0@*;LgvARQtwU!{dgwk7H zusjsoBcIR0l)8#RljUE6CsSx6`{Z5(VMr_YPKbW`2GPDjNEi5#8$FF^oX^j2HIHS{oKJV` zSN)DRuyQ`LF<>o$k6h%l4G#C7*$Cl$ros33ATC1_`54mnL~u$Dd2v4EzI=s`eq=XP zUAUooU|qqD6Lo?JqX@Oxf6pN&(ut;Qw6le3AEZ{9nY+Y0g04P<=ef z9}gkEiWPmo;(xfv$XBVde@`r!c&DPXoU@#F8<^RM;2i6y7J3u8s-GBe#ZK;J8n-s5 z8}Fzex)vo;KYOQYZ;dIYW4!z125na)Gp*exGm6O}ZMuZ%`b|+mkaNx05V;?n$yST}rXbvbh$2HK z(q{Xt96>ny?t{Nxxa!~Dh#ec8`BPq$+g%aOUXX}|b!Y6xaF516d$Szm2;eNUs_A7= zilgTXEt16@sE&Ou?{mFidN5kYkGSFDcdcEsULEB;jrpI#8~X*_N!qrOcIF6@b>B!6ruqjpsey3WSnU|w$H8T!ksuc6#s)4|Qv$2TWx*jg(mWN-kXDonteln^}M(7evA!5$L79G@gda>e1UEa{x zD$YC}>;6Nxn2>R8SS^Tf)bV(XD+73fQ|8J5o2lQ0V>9);aBQZ27Y;Me@9MKOj#>JG z9A@ele2zWc7K@>4D!*QW6kO?_{Oi*@I5jWIk@biD$8)_-^gVx^)jn8n@_IJ~o zI2+yQ*^ac(&DcY%erzS4=bW`d12m>^^gQpZMc&EKc{VCO`UOW7??@2&tc7y!`r&68 zjR1%xuA2Ur1T>b+_gUg9SIy9^THeBFX1J<*Z_9*0PWG%TG40Q0G1SC6FokrMNR;Sn z9y;uc6`0$kC()M}8ln}Lt=yC3t47{|ke|=;XSotX37Gt-pJ;E1zUl^3q~jd^spTNL z0?y%aEr)c-5jjw}dnQ^5XYrn^kx}y%9OoTZO;O48;J;8w@p4(Zl0rjvC9_!mc~w%R zD_u!3D~ex9zkXA#@SCo6d5k`cRVTVD{n`_oso(r+Gxa{qX6k*I&D8raW|q0nOE61! zSIjiJEB(4j?g~9z3B9~_r>U3MX6og&nR`Vw7-v%pTf>3YBSs=>1A#)d1=F|;$ zR%MRq3#PSX#x96_7Oh+mMNFu7>5MQ4^)8(U!gfKFfY9Hivyu=~xgZLdkgiNW z@XWY}7>SoJ8a0 zQ8tHTltxwP$VAm19`sSRAy@ma2cSZhUmD$Wja#)EDCaW~L%E0}DwL@l2!(Ps6AI-* z5H`x`n5F49oD14UxtIxM!}J-Z z8G!|}^a#vMeFP>i9}ddA0M)AMt`z1&K{-s|RvYqO$y0Bp>fyd52OiXqrHr2EsO?>b z#3cwAJ>OBzizQl0uYl;?odI7b5LqC6K~G@%rdU#bp=8g}U0~&Mc%{m|k22x85^*bd z*F$2lC8V)$76Kv_A@Td#;%4DYe*UkySy)WF|06dG2b*0StEHH{b*`28mR57-@lB1~ z^9Nqn`ZX~u?yD3$jH;_2YuK|tYFrm8c%`lj6+GOkW?c9wm}vIK&76XXvBGtV z=mD3ND!pKqF1^sQD7`TouEe_g$Z6UlcPnLV(PrwlXft(Nw3)gs+DzRRnOVjb1+%m* zGSjfdP*}4u9)@9Kjf@_J->pV3z{WX!j?Bz5ehHhY*TQD%wXm6bEtpwmj?68$%p93V zr!syCW@=S4;HiNyQ3t)N|0KW@>c+WmJPV z(u`i@Fk6|OrH+ry{BKbWqdl>yic09^WoDW7WHWWO+e}^UHd9wSGtaL*ou8?Y`wJX9 z3uAAw;j)duY8*YU!zN(%9IV3+MhnV2(xV3#d_R41RG;j;bj z`B5DTRni7zp>cNE-mEq8=8O%yY!7ME8t&|b%T{N`T(%Wl@M5q=*kzjlB2pPzV3%zj z5IIb+%U0XDL+`UhcG(Wl@)qw@%4J)`$^K0)TYg!MRDpcV9eQZY|ztxsrwFT}hFyw5P>( z+3GpODrt9IYp z*@HI|c2>ezv&Z&v&7{O@277F;LyYXIh`}D)JS~QJWnqu)O^8v*G1y}}2Qf;RP#(MV zY9LDcc0^j!woJ$%Ta5VY|2@Wra>H9;tE596(VxChYk z*fQ?wC%R*We=a92jlbv_P5jFt^#W*CE@x}E2N1R|k80b#JVrMIq>XMi z6AIlzCKS5qbu@HyLFnifgSOGltP4V-8{P*E27`!o@tcjB+;TP#R_1W2>Vqu;ZRdN0|o`Q3oAm?sG*8 zHBes2T!nHTXRA;y0%4;Zsc)d13DQP6hY5vp5fcjKj0PIYc_4I@OF-KwXEg+&Y*_a= z2%}+-t^VrE%rXP8&C~~Ao2d`LHd7yfnR$K#FuUl=48Y9P24M2?Rq+K}D|XoO74gMP z2#0M~o_JpfiXFDiwYe(`5f0n6NSuur!eRRaUI+3xIy-E0K@@^uhwW+fjOwQxwhw_- z!r^e(ews;?ei6s5;N1d=S$Kw!#=e&jkjn%dw&H_1{QO_@!5lH^hQs!}KbRA|OB?8v z!#3@+Sj`QGZB(0-ict{`+f!Qa&l+Zj?ZMK#QlG&P@z`O@eVY0SCOd3-2vR@6WS6J@ z#R<`Y%jV1x12sw&_%9r`u1he=0}$b`t)|sSsE!@BI@5O8UZ}+sHD`ydUV701vcpy{ zymhO;O~}4qM$6nOVjZZKiIDHd8l6o2i>3GtbWy&ubnTx>7SSHuL{y{Ixnd z<+);|ea_4*gO1JA(Xp92IyO^BhnZ#2Ip-|@{QR}Xy9y7`csn^10>b0<$ zdM%h)rWWkDDdRampIR7o;O1MV4t7J=y~{RJuY=9h>tHkWIxzG6>Tq6m0wq7V%18Of zBII}h_eVq*1!(yb$re#zae!8o50PVVz~OFnHLmAs9w5g+MCpSt%d8iCex+ zG;V8@Mkhd4t)IhUv+roW^rSzo78{H!#ze?kTs+1;Wf3wASE!7|m35jNSOgmZnGuNy{>0)EEvf?M%i!q2?LJUm!UK}|sL{{Je7mjS}s|Gxx58)SYwdW!x3AHr#>GcmDj;xG4|$rStl zYrto!$5i|O8z7Tx&XM>3a~=gu@cw_!zL*KI|KHmlWTYv`uN<}fEkWe{X{ky~%%66o zgl@(t@~mWv5t2VCGXTtd$rNKLpM|&`XCZW^br!Znc7VSOp94b98AC%L zsIkNH9P=0jy=G9LFHpFGEG}ESnl^NoF}d3n>%4)-k^XYYa7#zQ_balGbD z^gRTkm}~fTRbN-cPH%?i4=Z}N!>OEwXV-_`K&TBetRNc+*GD*$JAzqXGI?qt?xCR6 zJ$Oya6+)7HL!q$(e*UO=_+Hj5KSQ%#)_DeIaIAB0E6h={L5LTG;C=Y)2?(*JBL`U& zf{-r=*l4~Q2|LJ4A3>(h?TLN{$>8~LwuQkeVW9vi%pj#V2cf`uNNe%9JIDe@XKLVN zaY6-7E(m)<@5xaL7nXQ;N|?46K(DaGXHm8S#1)n}1q8J~ZDEP)QLapWh9z#rb1pv% zOMD5H-Q%=SwJq@r)VGMEz!G0V(@SrOXST$Vi2b(AURff%$drQ!Y>7W{tLDgTi8!7` zB}}j-jzg{)m!M9<5`RTdHYj09bXY<`9%?t>*3<5^hZWMo)hHWJ$sp9Qm(WNMap6qXpd zl!YYujzD9X{0vJhX3g?5TO#YckO{WLt6+&GAcQ5Bhb5-Bk(Rg;S!98TSz;9=>>)E% zmdGF(JhnszD;G(HB{E0_Ot2*~IFD;BURWZ7qcb&diaDXO#K>hfICyzu0Qkqv+0nD@ zH_3GG{dj^UegbYL;tEUr2t*zTw!}+Y!L;}pmUs=GBbQq$p}+}LR{c;*YfNl_r)-V_ zON5bA0Y9@PZqi~aON6_FsI6s*?U67O&%zRM%N6A^!Itki`5;>0| zCfE`=d%6OIWr>YIW-!T?Se?V8|*v~ zYE1l16BHX0|I|>>Em292S)!*xtaP>|?nb;qWFjnaD<`@VHH0N@L2jA+3`;x?OU%Ku zu*7e)3~fu?uQ4@CJPk|C7ebPJcR*uB{0vL%!P;wwXSPJvc@`6FiPystb3q78tOZLf z03pW2gwNqL0ui&sp<08u3j%peWRTQP@YoU=tVnwZ#%4C8qQ3r>m2}{($VWtL7 z4kuKWm=D4p6LCTFUR;By^8OJIj-EeE$7R3)Xtzlql=ip^BjUc>(KJviM7+sf{$^TC zG#uyC-#{JD9ZMwl*|)v)(vO(s*2CMt_;M*U|9T_^fmrQuA)ouV`~>UV;ddUS8H{%f z_bOaJctf^_9BXl)FmNDD?u~e-;JLM9z1M03&W@bJnmss0IPdmkYVvr9LT4~LuiPw1 zk+yycodOX*WX8cD_4P+7m#`{E(wlQ>Zt3 z-B3#uVCIWXn*Rf8Faku{ZWs9npfrO)7}5Th_|I0zohyCx2L42IJ5qz_%@$}N+}t+5 zj|;zdqk(WkyzOw5KAM_rg*^4Wi&B=VCK?FPJq5Uy;IEtLiD@bHXsXO-)3jvz_G2`v zzs_gS-3~g{7RBKbOlaew8YO5UoaX+A{ZyqJ+Bk=_$xNjQpC(!%pCH7Dfuz-bmV zN~Fmwn$tA+6W4C5knAA|)F4fkAbx#}9^jMI0F7UPG%PyxrU;$>r^^y;^cqX}TRP<#(4 ze&9|YP0UT85WBmKKJh$@V?_IxiTKryAM$U^G`{GIzX(vR$AcCMJ61XAgIlHj7`70< z)Nw=pjiX`QJl#e`-#L^>9j--R*Y&R~^Z!aY&$9;qaakVbtcRki(lCr$5esfwI8 zVAk*6KQ4*7;ngBk9Wo7KCf*Qs;I$#t1(W<~Ya%qJJg_KqxO#a#+Mw+z;}`CF zM;#IJze8}!$REEHhw^agNYSa-8y_=kZ}s>?iNBX(e#2Kv7y{B*z%*w{f-ZoWEWl|< z5L`>bnJ*DT{`iDZXu7kae^J+1xdbx<=hx?JOs+zQ5sqs9PY=b)C79bBbweMOV%EFM zRgJUoUJ5-Gv7Tl+8;0K2VzGB9lzEL~(e1D5WRX~NQ1at&B?rVWe1jKOk`6kx!jGh?tA z+!!pQr33>OgQ;LqOam5!sbJBW1}u4&&MjCL$ec}B3Uyd^>-v$fr1NFj`0W(1%&F?7 zKL5Z=J775rSW0wQ(jU`cX(ZDbur!rS6P9+8Yrvv2ZCDIu43ziAtskOHIi&V9}X2ECw?MO9Lsuuoj&e zgT>&+U}-BQ7}jDi6)cKrSc}0_u;@$!mdF?lmcBA)(^@jEC>AVpb^Rz<00;lR#h;_+ z9f0M!dob1lmhyllhm$K<@|jSbm`H?w3|JJ?ghg=;SahZhi@}V+qSyv3Ix_}~!HvP9 z*aj>HQ^BH`1}p|s!J;z_Sc-I5R4mh4=y8Eu{INwPE5-vpzOmX%hxfrN16XPSmJCj= zV993Ue_{DQ!jfm{{I7=m!v7O2#nOT-Yq@ZZm+HAOR|G6g085DuOZr$1mZLJAVJ#;l z)3g>>$m%BzYtfmuwHVBpwFIRA!&-D^%vua?%v!2R35K;8Ol2*KX;_QFRIunw!&C6}`1~&%FK`9{}wX|nq22;VJn8r-ZU@BO2 zrU6Tl4oix-Y7{%yIAApHWLaK zNnK4)lZVZ+$q=arGi_K5W(=0+qyS@V(U~z=3~mgTMN)z>wirwWi(+yW?AJ+ysbJBW1}u?@8Z2A& z%G;e-rWM74C7e_imMqEphkzxrB1jXS#EK}aWi(*P;p7UId?r*U)>o!8V7W^&O<0EN z*(z9crVWe1jKMNm3NT>NnK4)lZVZ+gQi1`C!Bns)rU8q=RIunw1C}BkmJejk=IbO) z63AJw{H*IoT1!U6g39W|E|{8156cPi6M!XylPg%VnNYB_lj#gtu9i#_mfn(Uj4e9T zhQ(mUV7W~SFgh`v8H2^(#$dT$N=QfJvpX?^sbEn|qZ2cj3KpGdz>;U_+!|YE$(+qj ztWbyLb6r2BhWxLDwWPm;y-FGIj>B4J1C|mUmh{OQEQl_C1}utc!lJkaEIQMM#bCx@ zQEUSiof(70;KpE4Y{MsJFcmC{X~1GI6)ZZ_fF+Cdq{bFKR%|AgYeliFMMcqv{7AB8 zE!Nm_5JP_YNi2Z?mRA5v0Vh}1Qmn&LRi-mwsUevrEX^d>fJJB8uo%o3EUl#gqZ8Aa zF<1<443@4^g3*Z?Oa+T#8l9NIRIunw1D41X4VH)W%E!hQD~bin+j#2v{;Wxq>B|2?fh8na+S^uVk9AoYb>bL%zJeMgC&?^ zwHE^xgQ;LqOam5!sbJBW1}u4&&aJVfnatUQrBH|EZW%@I#0n(O@`>Gwapig0iG2=O zN_1G#pVVMkDbpFStd>j@maTfW3KpGd!(uRFu?)+Q^BG$4Op^RPikyQNwpe;2}`aO#j=)bWfUD2HQrb=u{~G@%YnO+$CjOdrGS$w zYbn-YQRxg=6w`!7ag9z)XWFnB%or?+ZCH!WjKN}XW3VW8Ivzr58O&fRSQOK+7K5o^ z(U}G;k*OLidaT%xpJ_#jKji00s9r;QN6*8Fe(HzW7{l@dV9DX+3YL5(R42ATrsE?4 zA?2!ED4E&zG|1~&%FdMSaoF4(XbOa+T# z@>0M3I%zN&mM?uS(wX({c5$1buvp8Nuvn}1PYH}H07CNnK)PLIN?tLNJ9=h>{nX-m z>wW%b0Fc4S6#&^xC;+<1bcS7YmrT3JF~jbu6lmZp+v!qQH1jqXZk+OQbR7%ZKn00S1C8H2^(#$dTk zN-$tCm>v!QlrS@GG`N(Tq}xYEg$RpDfQxL!BV@Lm+E|Py*P#e zO93ZW)>5p)0u;s1fJHG)SQOWQMQ7Tu7|a+fifzE6Gh?tA+!!p1ZNOqM6)cKrz+x~J zEIQMGB{EHeMa42<$+V)xA4RCVWi8eomz&{cStC2KN`NJYlPg&AnNXcrSf(>ziAtsk zOHIi&V9}X2ECw?MO9Lsu7~FMc3>JeMgQc~UV7$*8Oa+T#8iTvRRIunw1C}BkmVPp4 zbIwJ)nRKSpf@QX@A89Scl2;5^9X*dc>7qu{v3(SsSUtcZ_M$3SvRRgb<)}<&z;Z$| zO;}tPSjZc&=u8_HgBgP*CE3~SMuF<1<443^)egmg4Md(LGr6)cKrSc}0_u;@$!mMqqj8e3}e zm3{b`){<*Qv8<)Hj3Sz?ge70{ELbYnSBHk41krMio91o81d)lGD~ITjhp@ANqusL{r&XEY5JTGh-y$>z+lNI+ z$7m8&y$uE6G%K%)(#bdQ7Qkty-0Pr?_!A*%XCm|xA5G(EMxCE&pGv16!B%e$`Q`Z( znvJvVLcn^Qdix&7(**GqqPf~*9hal&1$A|StEl*GWC|4=TpOa!FT%%&UFYr{S9$2g zMF>C=V~2RP8X>yv6f}D?V(B}?^;r6|5$Sx1wllr7D@WGfAa;J4NK?_AMP2m#-Fk>o zfYz0qba5-Gi|s>k0Z>=0(lshoe)qc5QEG#mAw`vsE=ZxIZm1?U$UARw(NsPX1|{7; zFi5`Dvi%u?!)uZ#`(?~a`K}+MV1~+!{QqUb$j2c5j_CLWjW0TW8a>2Su|pzVv&quo zC;k-rd4g=U>*ji?=|m9R>Wpl3!c}8pkovy|lPq=eA$}4wr0Yda>b4d6KU6v!JtY1C zi}N}pVP>h9-)+F5YsN@pG+QHyA2 z60j5{J6?F_cQX|#)G@$n{3vUP`(CJjfw!Nlcfh}yf+BbVt! znmv|EO;^Cj$^;Dv$FVlChiT0m7is4mYkc$;~s=3GyRm+2qV@EqDY z`wu(lvbs{*Ee|Er?R-FsLry-MOrzfiN=&%AyQoh)4Ae|)#DV3}4*_u|rq)lQwvA-9 zYa9;H@Df?mN6z}_(*sfm18z;E>Caec$esLzla{`WA~be6JcXDn@oxzJ96e9sqt{Vh ze*dS_JM$M@`N3zA{P=F2<5$dZKs2f1hz7zS4#;$Te@T;lIK31)h8B@3554dqq)^zE zU}omJW*Jd>A$0Vz!&weDY&pkV5+zTroar4EMX1v>~E<~9GD*QOU*1qnTmxlO2 zTmT||$T#x1WB6Cx+w#usDbyDIPuLxFxD#9+I`*`W!bKs6yV7(Y{fUE<;fE12AtOPY ziVW9qq1Ok&$0EafVJSwmn}dmPc_dM|A<{gEhX-at!0ouoZIb_nE1al8`!t_;hZDqw*Sg5{GU~$uHsVe3+1YMOz{2O;^bh=rD(u6Bq%S{(Xk4Gj zjX~P~i>!8?Ux6GLqM+~I?V#idfSzmmJ09{>NaLIY@fH{!g>OUb!pq{D8=;+*AUZAy zh*v@p@*XZix%ED@5DpmtlU{JS$I7(aWG{XBJenn!VB9_EZ7~9fOw-zWsKqH1=Mq$* z$*WHB8Y!eDg_G!+%`zXOpj-O{=@i~YMVfVx#xIy6&5#pO8lDKzT!I^MD@v2sWwjUL zwR3h3%Ekas#CzzvETrL@u1!gzgghB-WpSt<+qTR0%zP=)AA@q#%Uo9~3^#AN}h ze-iDQ1vJKM=LSy0qI-jTKNupUWK$yDhwe~>{D#-tu0^O1*K|9gbxD=^Oy&{rXGmih zKRz3w?HCqCI~e#!gc`nyOgSINOK$3WJwiC2CRKdm{U@7&!#DBiL~XLn@}7d@6P&CIZRqf7g7 z6Nz{3aBILA-+tl?FuH*F(K>pP>5b0lxNd|(j1DD!rhg}-39gAb)dc`^^MCqtoZiO$ zFG9V~;_ZAk-tdLu2X#rM<(Gh9d`7_|a0%{>5sl*P$OJmj5d;q`1G`3P{XH;Rj`lF3 ze7XiLegcRK9&pgFEPxx*1~?5I_afR~4@T2*ea#VMEQ<5+H$HmycNCP{L43U#!^Z^V z!QKYZ-a5n6z}|-NE(~pkMwdf$<4&jo>tO0=Ki$k}IG;h_=D`mkN-$@MQ}`i76T1bM z)TFn7{csZ-4etbdB}7R2SBZ2R{zS-&S*bL(B6Pq_IlEdCJzQ5cF}-XbAb0 z@CGin`RxG^T%4^-ox+t7?vD^-JT*piquTMK#cv@-yEfXWAaUs5d+0rW(PWwv%=NT=22Wj9Fzc`=wOT~9)fC5hm z;zv7AY4HWbw}tp^G`_U>)sElD4f`=hjQIJa9U}VXb4-4CoO=$pC*3$h&aZb|9-zB% zSCTbizy&xPJ6*+C5{1Wa+kV;m|AJeWN|vOiGR!uE>r z4&f3^VGF$%Bna=I2-!I;Ot0d?Oc7!Bhzu!-1Ownn6j~Unr?N{gZLBLdA&*s-Tn!xy$T^y)}>H| z6VND^;J%v@X=kQX{Jc3qYOzhGF#yiFiKst3nWAi4Yq+UW5>&+_?c^f?>d;YkHD_-o zdTE(_;Rp^(r6XI=)o`@#bN$pQf)FNtJV8_)-b^u(shaGi{GaI;gNH}USwq77mZT&L_l6%&~oJNxKD+zKTo3m2d9(U%=i z0?ssRe-c&y1q3&wm*8?`$Erv(7iroI!W4%m7>}Y{>}3@p9j^*eCJJj!JvOD#b=N`% zJTYs%z%Tr-qP@N63{%>52;uq8i!TSM1AJYgpetVq(wIjvuVNH_>53UXhp>R;AChSI zACfrzSqja27MY&F%)7lmT~%OwiEU-r`*Z$Ue(s#7RV;(WY;aTQwBPN6;hFtg(- z#J7_8`NR)-4mVt}M_Fj}!0!PXb_5NUHJaEhKwBoDiSf{O(*P3AW-*#Q1LB(gXjNR$ zDYzbMQwRlRy*Z~w=y(&fgTF3l&BQR3`xxrw{$OXMOj2;e#SGh32r-K%~J#zBjN z!d)%O*6MW!{m~ir!)2S1;iihkAhw}wW8uXficrzsM*SJ0#Z%;*Jbtx1;O4DWD$UG= zVQS__rd%I=aJ4?Y;r`*9Fnu@+^<9$SFo{9^9F#K)+T)PftvqxJ3&w(IghkZ|mRrlF zi7(9v*)l(wzVShoEc#`<5?znimA@^`5dA-sIQ(ZKRqq7*Vuci-|GVvKSRNCv;o+Y! zc|qL%b^>*Qm6ui3%MW^J-VIVfd>yn!8}86lDqfF9PS- za+|NkVUK(80TTrIzx+YCMa4fA@Nf9Ta7F*M+e_C zd!zof*mR;z7Ixu$>I=~BFp92En*8kAxVY;L70XZ=Ss z7!Qt~>wiMQ)}2c?^}kXviG;#fH_#A4dI@#UG!5bNgmr%Ewx-CU)q;Tl8| zx*4Z2ak0Lon?q1RHq;?>v-Cn-!!C8xSJMqU+*voZHQfjv>!!Y@8^Kh%A?F7@z19+& z>sNTTw_&ZV;iZoMDbM75qKB7U#r=Ym1z%UgsKd1b??adF42kDfU*h{jYMGn`V*WC01 zu1)6Wci~W)T!i>VkoNEiFS(o4^HFpQIK01N6J|}5@huD{&zCB1 zSa0tA9%8t>slXen&%GCM{AUo=J!}9favKK3WJ~~h&r6|2ec%;m;)^aGda40>c_!LF zjqN-`Wyl4X!<}h}jvXQ7oQbCEZoke)cRmf)Mhqj{7dWW{E<6&%LWJDc2`M=w_=t;& z_|*u6^`R~ISS-wrXHWbJgwJY#Zx^v6or$++CsP``ikbMOQZhwa%8)023eY20N+RpU zAno`C<>Y9^8}QnIZkq{m*5Dd8gO7Y%J2dk9P>*^APVzjAa3(&34|2@~5W~caSOOjp zKn!1c8$a(1@kF?P0_c>_tumoC^;&8n>C4rU=cZla<{SxWDKZu{Dg^s!o z(KX1g$k<;QCX}Q(AyP*i2 zEPOpm7lj9f(+T49vmudC5Lrj9luVFwAl3xks}K9=KpI|FsvzaDl_}JdUs{=1h_|Xn z^-yCbJ{c3Gi5;M95aiqleLCCYy9wpzKaxsa5Hae&w-U(xGhWG(u_YvYXM)4}*u&D- z9MltY#qhmsr{XIS>A1Ajz4g5yU2z>^?twsj7y_5FIzOoBrShGdB~!nNsZ`5>?hGL{ zap|ga*;s6j_!*ylc<{CqN}G%sa3ZSR9(gi>&q6#4B?J;vsRZ9)NSlL;pBLVrN=wix z(~6u3=P$dtKU#}Te^@?En~3S>>ToLEveIP{IC@2Q9q?PkPf4lNTpL5?l5lPbOM?5~V-eCRoI)cc-8~lcL{qB~qn25i8`!2i){qXDQ&H=oYU3&1;3! zN=v18??W4AY2~Je=+UVGi|Dn$M-O}^1^ih*LdlyYF?c;%>=%;wxUZK+ww1+c_o<8W zFAZ7(UQLP8Q*a{-(NkgLJKL**p7zpJ<7MT3?T1YqXJy%@eUM0Rg+f-EE1RU!9lfRK zoTuD0VPDh=nTRIxb(XAYyPa~nCi{mn<$>?NFohD_aNddcZ&rsexC5Op9Z(F;-^0u zrekxUBk();y!68ww|E}*MgmQ^5`_W(s?UhcI(g$CK^Vkb3O zfn*@aId2ZG7QO*r4;X{Br8IuKU3bg}(?D`2+UyU|M}whK5aeuoI3hodvgQsK)tcs} z%?r8JhCTw?uk?&stiH@*qjNR9J3{Th4bkQ-hpXz{QF`c44?oKZPNnQrdJrFW*?h0V zHKlP9T|3al&unD;^_9lkLY5Uh&RL62z5+1iZa3|S7c9}C{Ic3je_#h&T1AeP*(ONt zgO@sKNM*$O5G-<@ddf$xovS1CC=9g85Qms~xNpE$QhYOf)Fc78F2sja4vz~_69Vy2 z^HiF13)Wc6l@4jz#YOk6#= zTyz{CYiY95;o8tXLL1&pq9&gs=4Dtwe-htLX)+lfi@`3MK^-I1MOMl?6T_;Akbpq916Sau?=p_zJ30Oor_Ag~$>$ivjYtemr*JHgJU^b3Pd6!Gv^eQ@=c0GLltsgpQnhecBXuE7*)c?qw81pVL#Ya;o9YJH3 zG21KVSj5zs;f3Ku?^9ReHF=mrB=e2|k*|pNK@=(CH4yZujCK?ghzv#W$4Rq6@JC6- z<;ZzVlsM~%%aOm3h2R$yan9AxUqsw0x#BqL31@PMzl^9eV;>wsI{!2je4k8$`G!@+ zmoR53!{ox~OfHn4PkAaPZ$PpOci^0bJ1Dv0{HiLP&Wsh#Uu82sd*rq7Y6Q{kZufco z{EZ@=DG(WNX%frE2hRF?ns*D*z%(OhO)!=oeT^BU>ZYbGo znV=352t*E|{pd_lh)EjLMx+ZGm5LcdC6}+ugIwUwr@8oooOSY zGwoVQ2R$w0}P{oWX(AC~W zK`GQ$;6^A=XT}tmETi%^OIv|D(^jC)R0tD}Kx@ zQw3(KDxlkx0Cxe`(Q|QkC$+*wA8e%K08p_q(xD(CBcze?r_3`I!JjbCQ3QXwJYNw! z5Ep^4KUJP9^Ww46{@nU_$>eS^q=s6ZX_pmN{WOX(O(v*=1VZDrBJ)k>_el`nXyLmqKs;Ei#pTRxX!d|VVlG(q4D=IuvEpBkgV}x zAEQl=w7SL6cqZhJD8b{urlVE;$F&`zn|jki{{)3|O`z7_dA=Fkpp>V8BX1 z*np|548RoA08D4vRRz=kA1iVCD6Pa-|}Z3H{a2-4NG{pX`MaaJ7vPgJ_u(rBCsCD54$4_JjfWWK>zA z=FN%p13p02t`ejbz%6&*2oS;28Z`tMO4LKh*?*9m+`srdGzzb|?TWFIzSogRO#&z` z6S;V^o%9_#FeX||MxpTTD~KmjQ|XDlVTa^3v_i-^5ii;9rgy^sJ~^4%m0*9` z=8HYF{YmJZi9~$N^tY^_MLdbO^KC6r0}k2uaU!MSWQrgXmSH`pIm*Ey*^XrDfitj7 zkaGw=+v?s&*h%RC2|kS-UVPVd6NV+=sFV;_G)q^zIIb;gEJH zUFushO+jxs1Gv@*kzSj%z5u!IK;3WgV<-8sC|z)uBx<37_2M?gAq6)^XvMWCG!qFs zlIUO`8DgZ-39=k1YmVdM;1g)46Ohs%=6@8TR}%n8nUM30W(cSXuX4*dfP$qRM)SY6 zD%AFGCVp&*{VtcmRym*fwViZ#6Igy3!iZ)N@oTDA&hlP69~p|JEk8`X29|N#9e`uV z@)bKjSqcAK9+=lPMgaSW5z_FY1akh+4h>ZJi*LjMDqb#XztRcp3vuj$M`H17kAEFK z2jfPlyWu2nKhAP)Iv<{c6((MbbDzX!@}74FsXbfZ(zbBx!M(=>5<1(aA@f^1!84BK ziS};9NEs5QQTSSD`waLodrkGz%zNR&t6Z8GI19&Vb_J|7|5e0$-zL#7``}IIf*P47 z!xPFL(y~?1>qEjR>7HCYME7IKzWqkjDlS3Jf_rcZenIy{T7C^wFc6xja^Kt`fi~i=-yJBUyEaw?KF6vZ6HC^3=*`Q67V+nn2o=o0 zf*L}|`O`D-!QObrO9|a@wOT{4++7AHP#@ek(C;{sRyi7_cglqajd@7+c?X)Rr2+uTFjoq|9!;bpv;TO;CxSih%n60Q105pgI?5S_1fh;v|q z=>9;8IQk`s*Ksf#R-mtS=4JMau9 zA1vfM@YIi=)E#*KiEvM;A3Ik=-#P00e<{Um;&224`${v{bhHu%Hw!p5!(FXqxvF~7j zp2oh~ek0K!-4!lGCwUXPwuun;A^I8rQnY_2*5ZzlJ@XL{gthLn9w$g%9)!4s=zXuA z<)t2%qAPlX2R5Doq|oIiz{Oj&ekZ6yb~ctw4uO`2g#8u(Fx{+l4uiN z?nkB|+Omx}-8{liBkO|Le8fY0u~IwoCqy%dPM?HmEbcZLc_-%ZhUm|(OQnI>{4g>T zH8k?sjq5&Iy#{HOk>>9Zp+&gJ0Jn>bY|O6|aVuvO#~_U27$F8>M2lb3^HhkTUPH8= zshre4igT$vI*-i2=Fk5dgf%a-eJ1R4ar9jJwl%>Txgp?BNse_pe5u#Sje&~(tCC7F zn*_uD+tC-RpNQGUeX;)rjmaJ%vAJ)Rwt-DBd2`=m$Oc_0e zr>&wi#($2UL*W3=#zzZBrX+Z;MwVNix|B z7xo3M*}kVlaxKqxCoIqI#rO3_CMI~Z0c<`BHZq(L@Xkb)i($m>?%j_Qes!xan?e?sIuQ=#;TmE1=v+CFPTP_yGf=|WosvZCl~MQ z{IhKFPu$eaFFPYw1^nr-#R)Q0G~(50goB_BgUPno1RE_3Cfi~yjcMEBhz+rrwk^Jn zJ+&&iZHseCGj&_MJ{dcGt~=}zdm=`<`K`SX4x75G^>$H?8@SEFW$@ya!hNaSIWe*= zI}gMz$UFMu7M0Q1HWLnl^=J;ZHGJ_zm}=l`&dA|lk@FXLDBLyRMfkH_gvRZH590Se z4q5_lf*>w|C*g+{QHxkxo#+ch6(Mi2vjOMz1+nV`qAy2y%SI#TSN)JPZ;E5Ji=Ue}Q@qz6!1gC`ON?tN-c#J1pfuX@x;59DFv1xM?6aghFryK6+W1IX&NzRBeJ02`Y& z>~zraUP!~y&R~DWE7-UpLbf1H`H4wZNXfl!y0J-u6*6vwlYVUhg45K;8+vazszjQa zEgh6v5!VZF$WlyIR{jiWS0f*zpr=|y=+$jea(#nR-(D+9gGZq_oaP?vA$n|_+e*`U zI<8$qs3`TcA`e~eLA5!}^cxcB>+J~PG;O~0(7^d{3UPfdpO``)E=9FjA$QbIr9nQV zVTEM3iO`D+rQYt@?xMTuN&#crxaiPUS%v43W;_0bfG)Vm<@>q_VF9na8lVTi$0jMx zw80cNWi~(v6K^5f@0Am+5*Vfav2m1YH-a=4@Wo7A7W52Wra4XHH$zlop;YgO6rjH7 z3PdzRKvTHq`mca!7EsbPNQc`(y-XMyeKiuIPo9Tp4!NmTA{|*Fp*INMv=mzX9(2Ik znUoTuJ_n%#K6QO$hMUGNks*_#J}QTS#C02@HOC&V%Bcup;!@mR;oFUBPXSTmen0KR zy%tucZKL!I{)Fg}*u!%TuBLF!!*p~ajOD5j$~F|!w?`|4$PX8q$aKypI9=Bo(zrNP zuZ+?Nyz&cT%AGK3L=~b5PQJacC)Z2>+&&>do&(T9ztV(JpR~(7^m_s_Y!2{hR zv=aM}g$_z8`Y7{7G+4&8#}_`@irXkesb4xBp*pzAK@d}Lg~PBOXggd}Lz+PtqHoeQ zI^ZoQO@AJ`K8bwd6a6=!wS$2i|)|VMHgHxVVv>1i(36Ep^=I(i2^21y;iWrk zNontWjh$w=R8^$uiK`N(o`p2dH0fq+HN(DW5mL0+NfUmPWgCvm5MIJdi->0AlYxs3 zj^geFk&dZ9@mnvl9ry)9usIFsh_P1OYpmDhJN(k71XeV1kfE#Vp zS=mYV4nud#dNYVRxar_T1?Y|2PUXRvG~u=b5zYUGn}&{-(hMC`e=UXHeMQ>#us^Xy z^;Xn}(KZ_2Yj35{(M5>HjUs-?70HNF7n!pC?D!ZX(<#}96hG>q=8Ggg32iWEtOMUKFCa#X!4E$RqWVXkG{gSSF+gE(2@2N4Ai$32sXKCo+vfJ9V%3;7$|}Tp6U)WJb zGeV3s=PAvIW=K2SEI@BZP*8?GcUl5H^sX$<+GZhI0fuP3mp`3Ax7;NgY|EBDdS)`( zHS2BAvSfPleF)$xyn-m5*2^~Pn1VaqE=IMFBHG?!+;RN}U}*}C#6q7C;L!;qpM8km z5&MuuriG22^l%tT`qd1IDx28$dU@~l*4c(YMW#8nX9<5;8&7p&( z1JOmlCHs)R8=W*4;)Sl0F89&2)`-SR+%nEVV|Rn#-oFHCJeQzs+;(0Ax7QTp!;`Fa z7bnpOoR<^Cch4ozZ8>uC(q#08V{lCU0(W@Ls;5T zq*;M2-NFFB_$Y;p&;i zo;?|&jrw$5lS1DjFHxK+Alm&P!Ad)XC6k^|2$yXch~BecGF%_SO1_*PrZ*l1SPZby zi$$37 z99`)T+hzg3kBHC&Fhu2^7?Misa5sT#d1(QLG-H})%((XBTz;1YvV%0zRKVdWe+@JW zZseW^JT&`uSP2)W=SN=pYCIG#nwUNtOu`z(pO0Y(<$_km3HMP*Cjjn$gO8@-{JS82 zBtK305j`eLGcx_|WPt7)D?4vv5`5+hH?4NUvN+TJ<-D{9H>(O5Tb;qRn?)!nhwT0q zv!}5r0YiT~j=TT%g|sqXuyJ)d{Hu8HxXLlkON%< zG;tmj&V(VY%YraXyGYhFzO-*2chTU*K>4o)d{+>pr~9IN<7l5Q+(H0?7J|C<=s6r3CD#+ zNPObb3zBIPCU9j17}E4;$QpZI+_kDE(^ow5u7FlgUgD&}sTjkUNZXS{g(c{_n7BGW zNDmA|r^G~q$FWlX4OGa)&@rjBB@3D^L(~9Z&!ArsAz!UT*Ms)J1ggD+omE|b!^Jq2 zBIIs~{%m6?mA-3=^{o{2f&2TpslnxbD`fqc5bc2Xig(I6$HQ~w+yfEr%dm3X7@I<( z4KdtZd>n2u91Lf|H8neh<AWBW`-R(oYqz_dUvoYI}X)p^^c(wU>!voEiMM56q8= zN*(>Q;2J+gd!a9DgoAy_IO!*d8Lfhpj|0*o+Ko69{nd{SE2K$hKjwF-R>+R&Nz}1h zn4-HO?Z9{^y*R{8(P1cBN1UPi?F2%&oDX2jLbdfca>;~Ig7{@KLTbO5Lfx>7P84Sw zPL95UQ?JnxD0Lp*U)x>du|#L#=bKP%;A;po2tx(m zV)C-Q5Qvn~`(0xr6wF0q;gGqw_2wp=ycUF^_v#oE^U&#tkn3^a_0&C9Y2-1y+Bgfm z7Pt3CvA@%O{|*Oz&@5;XMo9Z+5!#EjSrN_KH-R3&pCF!ZnMy%7+8GPD`OXB|52u?T zJi#Q|A3)X|k~KJimc#obh{-8%GB-gvIOJHxB>G}iz#>w-$+Q9v5D^lAhhpc)QuIEw zimu!kIE_&pgJ|h-(`SqeM>|jA&c;4^5TCLVX$<06&`oRbnlC~Og%|}j%9b@GN@s8w zT%`H^3Mbu&ifuHt2Bh&l>?zb4( zgn+~}FSW(>LW0Pi?Vu}h1&SbUeAz*@2gv$NYvQI0F|XkedAjqd(+T3RX0#`CRI$KI zExN(7L7;cKwpxT%;UK5zwC3NDBDbDx0Gm6l`ukvT!TCP=YynYy2bx|cE+yy>M*T24 z!_xy&=-HJXs$T=d+?p;beg)CGVxndUFo@G_gLJZ7)DmqFLvR7}cASzDneKa)Xl*w? z)yEQ^+Xyj;KM>_O_F#!jufqPEOK?52NYnJSM7p&-q;YY&KkBAEn_O1N$PQT0JB$z( zefP^g`a}`0%?eS*LR4-Rs-5{DHY0};t>Q$c!ZCFm#bIeih(Q?9MjUZa--G-O5~Nw( zI6}K$hcp&#RNIJVgc!t4CvoTU2)89*bVC&jH0MbeqK)Qa5JuZELgEv18oB5}+%PAaa{Oq9Xafa;`r(i9mj%_P+~4tiN;{rNDw7Bw6Wo3 zpuk{Vja8qwvGybgBh9_oG1lQ@+-S~an~LS17Feedq94W0(mazBA>ZPKmFKL2c(0OE z%vsA4Vcg&H4Q5RuAA^{L3!8azEz<13>c!} z2r)+I1tY?ASr`ggjUmSfi9c=|qTjpAMa>J)lvDA3FdbiUx+);swLusKz3B5K+BgY~ zf*~=8B_kbl0?QI2#K^}88MHW=zT2E+MZ4w80DTb#ay;8O@UELyT!;`Zj*;d(2}AUG zrZJ*DeL23Ba63@o${AI7b4iMLM-nL9)FMO=>_c2y&#)*$aX?!oJmrHGg z3~HN1`In=)FbW2-ZGAG;IgWWE8`JV(QOd?GLPCI{9fPRgS?vri(v=sZ@1Th<%UIN(bB8ZJ=5~vdHND;&=mxn5klWCUVyDBpw zM1*|2+(nl@$9Eb*+L*_&JamQi9^k$bduhfgY40NOVF(f4k5RY)>_gn%CA=SB^-OJtfZ*sEKwxlB`QhL47PFFhvv2jco+LJ2s{7~Gun z9lRidh~ntjKJ38}Wm~Wm-s!`#a?kuDOlProheOJVtxfnRO}IxVVDG7a=%skAkw4z8 z$MO94o{M?wIhdiU_>PVGspL$TOV76CT3LC~)BEeeGgeEov0>55s?)DzGkK$3yM2M= zP*+?UsA39cmah`|A8Y5Lx-va)OheT4(EX*D;wUj>&kRIq7&Iv~a_>!E>f?ug8M<44 z_R{@))DDEb_Z6>ea9OXpK0rlXg|hsqST#{Ub`1-~_|$D42tIWi=9^WDn80-};@S~aBHjULAL!PZ z+WBCA+_TGks7jQU%aoxAE>pH5xJ-G9;4&40IKPv?!E=?3nOfOE`6p}2tOJJ7@F&Pu z{cI-ZuYSzra`;&{>L;>PSK=t<|3}_?fLB#){ljaYmVM4iPEHD;V<>{s40Z)E0@6!B zjlflj6e9>45fA}2ASehzEC>o}P!v%V>;+2{6&u&s(W}=eAT~61QPlr$&0e!Jlk#4? z_r2f$d%kZ!PvETIteIJ}X3d(qXDc0L2aX_1b1e{DM{^AN(uHQ@c-uKR)y4vaoDUMz z35Sgpk-0dXPFjRk%OSVHqM9Bl?W{Ab{|8tWhxk@C7Rfq=E3d+rRrr3jXdv=JPu!5A z)%qBST$7kJH!wGX5`8LmeFQ>&}=gd)@d{Bxc!@&@LN4>7&X^O2}o>Mb=nMrew&FD zL$D-Fl?9EA29d9ck0D)&CRnO+5G;+l%&L-!+AX(!DWJ%@QZVRCf$SHeK`w&fs7|)u z2M)c9KV?A)+#uFxq4eyj_$K4I+P2<>!3_D)YrCP*xS92Oe7;e|*$2C7h4-$R$jLAA zYzK#?VNQE+k%9YeA-;Ag@Z*4)FZ=9X;KSF~ohKV-r=5yJ_3C#b7CS0PtA$y4h9{%$ zbnu$k5%&h0xcv~x1UXf=4GxCCC9ylQ1gj%CZqIKWA7rl+UKeVex(OxLoD90p23iHu zuH9{;kyHm?IHt&INKga`!*_?Gk!{Dr>x1ANBhI1t{vLB!kNfPp6ONRLPT>44}sF$u4wZI3w$(S=5x>CMNtD( zZGI-ed=!8=RG(j}3GVYNG{OBVwGuY&U-LD={cEWvST_|QSU0NACmb&J`}|WSb4v>* zXlub;0NIKqP8(f{-;iG&kn=S`-$!WB@(~jyO}mb!2#Tt$X`LqMOBebC!?4}b==?r% zh*JN;xJx5WRt?P>wqWez=~!L40<9>8t1DMD!D=nj1go_|6I{G%5L~RdIb49<*Qgi2 z)w4fWu0%q89m>u1#IOX#6~Uglu%P3?VuIRwi%WE8`C;%+aI<)lE1Bxkj~=YJy9*NfTVEDot={ zlCAf*TKLu0I(-j=R?#T50|SH^*UK=V02{zhrFde6%AN|+O?o)Dd{2y4z$b7y!{uVT z-5l1(gKy&0?-Uiu<*U*jlu%Z#QVU<1RtG%wC-On=snrDLG)!PLrvlXkhHqJWL=xpj zq$V(Y%bE$wuq<*eB*=%Bl)<0z7gkgX zDJj}P3KLXPxSZ9E!pi2V^v>}$XvH@{j;~a+Mxyf+(-+DF#c-5{bKxL;4HpQZk~v9| zu{3OgH5wi!tX!wQhE34ZFok}`Sa)I{8PPtDE^5k$I7S3Z4Bd&lT%t$INTuy=m)^yn z3hCKB6=$7gNIVU5ntR7(c_Do+3DDE{uC!u%4{VWCVVgNAgVI+>TUd>&VkSquVunUv ziWj=adkKWAL~iID=Kn4}O44<)8i+?S2ca9+stJSGq={i@165j2<6-+>NFrP@%JwJ1 z_AOA^{++P>Zw);u+rJpLZ-V}md$fA~OMi#MBGqPyZ&PxJ}EK;735f-ILhy;sJR>R0y zS7=7gnhx|5QCa5;!J4U(5)K666vj@4Kj)hJLg0MB%DA}(OC?@}YjBeguBt&{w`-#GmST=J8ZAkg>K3$su4_CZjD*y)7ymki9hPR& z>u0OMx4WZIg7Dv`_~W?Q-wuKKL3kcpH^VSFiRA$2$waIhyorA1^&jBX4`XU< zeKI2Hhe1x&#ldg?>4jfvY&{5LYyEI}!*_&QyH8@6s2>J-Y#qM^Lu>so$U|%Vo51)v zAM%CQhceU{u>^z~Kl2!&9E7SI9vf6@LX8PJNC@|ud79u}vk1ig4QBRdeTdxn&>F$H zneiOJegAk}7NhMoM_KfvI58)%#y<@DWh>J{bJ;31!DXw~1eY!MASo!9tpLRSmCYIl zYoQnv$F3puKg*?__4wB*WSekJ8<+?9zib1gD4A~qn?U$_s?rKzJtYqoZLps5HNko+ z(FE(M9K`+XB8zsX&?XT53IY-LA!7lKrRw*nb3pt`V*!rAUYAFCG)1wu z@kMa`MDU~U5l!P;YGJ*WVeyM1W#5OWie>2#Xc=2?B*-4D|H+NxD{5iAoSNwHCR9uGCuO4*Euk zkb(&Q5X%Dn4th;(h4T>01hv9LJD0@i6=@bZRTAw5CDMoQL!|C|@Ea3F)`Xf4?zBA9S*%V$c@?rxpAw7dkwN){N=wk5}nIgvj};xpwQ^NTy;Q}%LIM7G-$~+uU@$p3Cfcn-_4q!mWx8o9}ClyAIa$czO+ngRUr%B zr+yuyt@xZ1YdO40QsjkVr|_h=Fdbc{{8pqtDx*{?Bl3G8Je5>Nga>`p)vE(FY|qz( z8uV#G4f=#ogT7xRFK$e}OVPbl3Howr(2{Fzy>cxSGyyI6wqb%= zE($G#DKsyUUEw)%12nj=%>33|6{qK5Im$MaLh+9S)ncRa@C-V>z}u+&rcj3weT|>Y zp51hmLsh769w&F;aq=PjI}saXILalQ9LCA*!K)v})HwM}W1P$&r|R}F#>vWi@f!5V z`o_sG*EdeSyZ&+VK|D@|eEt}z1cX0EDhI)tt9zC!HKE4Ic@m<=$(rEmD+0mQ_OBQH z_HT@In4uvo(~=q|?>5HC3@QyBVT_X%C$F9JqG1_C;xbu-W*!BoXy&4!52}F^IQa2F zRd5fh0a*e1@i|!$`e9JnvAJldz}kz34En~Yqx1hco5ZG{0)gE$^!ut?s6fF~8F=aD z3*o`I)&n`ep9JJa>UWGLsPc1pmFF8_crsEk*HzbzzJHS{Yqq(NUpBjFKD(AUr#65Xmc6ZABs zvO4DMT9v_BY0%2b1pTb?CAw7^CMcB=x-=f934^>fvv85b@`k31J7!Viot{hNVd^9a z9WJF;!`3`ez4{bJktTT9TBa+77inimTwl|?NNa*Mnhq_m!Y5Hb_WE{zdhw_-miDvo z#=%|6n@8S*NEJGdk>4R)o<{gz)lLMTn$Ztutn7b+;jbC=Ri-)Ff%*1pf>JwXR{p^D z-^+^oy*gPjD78bOqvzpn;Z`!V$-*bs+GTn}o6zyc;S+|bUP(juqPs(&Dt742=Q8P# zWwI^1;)WFZClXBi(!Ka&B3vO=0u`bee)cCWW%M-bemBOUS0vOQaqOxGj2u=3 zD?QB1H_{$No+g@tDAGg^^rB^&NJU5mh{3-(;Yb7_)jH%)WRZI~LaLpUB5hvB3I+(4 zHNu{^6a;%*waLAS3BAc(Wf)h@D0ioz&{55Z!34FE5$-)XG|_8x-9hv21qSV%E=!>* z5yKq>B2{>}nue@)TF1V^O}iF&ev|n7wXj}mcw!p46O+c|5r}sa;ysKO&`1(vJLS3N zdARe+#A@c6ZH1E$9_YEIg?V$$Q1y~@dPlcs@T%v0{Oc5cjm8sPubO)N6n4Jyu)(YL zqW2jX_d9_@P!Ia?L9-`h&>zuhPM&o8^`k*NwD;ohySW_+^ zH05IOKanfJ@oUS)pq7h5ui}Wq8#l_Xz$vRz=>( zc}P)7@d$__O$>k(Wtw0qDmY`^(5soyQp}e8)ELu0hjv+gQkYL0<~CnarNJi5;Kq~=}|OwXY%JjS6X z5l_V_OJq{NV%a?_L)Ub|Co(5Lc`4oiTrEu_eqfTW#8*UBoSXW&_ou^_TV}d-8K_Bxx1gOx3n2L<6bs;#zVo8N3CH~06 z1icJfA;WRP>W`c*MTREmWr&3MaW6$y=S!5v0937XL^>K&Wn{sZARQC*M_?C8^mIh` zg)>1h-pCs$WA3q1g-eiefe>n+`6fxGshNxkdSyHkvMm=@U$z?{n+fVN26}#>zqozV z)=c#V{IH+UXl}>*r~C%IB5qq2RWH3O;*nhm^#bd#_v;DqwZ~hqDzzRbyXp;CrNk58@!nZg#4UI)mft^B#H_|)^)9I*#x)76S3wnFsmda( zI9ABNL*(3$PN(E0y~16!fvCesQI!?4bpYP=#e$A1oTY24a8}5E5>{S0 zn-$V7FGwwCWq7h#ZNV}mD`Y>3aX(|foik+#E+kw4x;ovHzzTV6b(}V{pmkbFC8S>Q z5md}R~0A27KkXu0MD%6C=W#<1}m++Rx&RIM6x<_Qph)2Z#)s>rKmeBRLCc|OXswHF^|m(v55be%}T(M&62wL$6>ng1Zb3X zFbp@(tim@;6fp~zI#k4Ai5y}%$cBlIt3MqIgPVeGX$YHqV z+fMD6zG;-43ym(vyKok<@Z-3;Y(rI+MKoL`mJ$cf%%r<|z(VTy_<~0wwCoMIb-p|7 z1+dIK6|()$Yz_AqR%(YYPpCT+l#NdLK1IEisVs3?nM0?{hPnLD`K*I%!*7HkG23sr zVr+sYEXD6dkxRd;qBI7V4RLm% zi?`sk(+-(h99kWt3-Ril3K^3dq-*oNsYOnu4CmS*F{iK@Z@TWCiUB@kQ&N8gqDT`T zfhf}izfM=734X1vS_t)y+$WMQ>s)QR^E+}TShIRbp|lh5^`$az`OP<1UL_)=6cp`{or`LVIpNHM8CDNL|N3SJUSo*+`N zF7h?Ox+u{EOHmHOm!gshEycWgb#ZxpQkY2R^b^Jb|33_kWJ+j+I_1ksh zW}$ONsny$cKfoY!dyCq7;iNzT2=#VdA=pYms8bKTVZ2GR@rH4g5bEGgBaxB?@(=D< zpub_<)Mm|%^T8bxGzJ1lEhk_2XR-nc=gviu&g}2dK!LeRl(Klgv<}Gc!Duk3W#ji? zEKteDTdYHB%f?%*CMdG01MPnk=6sProtI1Y5lym+@`X?;((F6{_EltozKX`y7K2q} zg1(A!DufktS!jn>a9!@)o)egr#@bOUwk29N?%c{X!JS*BCb)B>6Gfvu_@Hw=^TSZi zQ!{sNQ30{(=z%==NE6WN-0Fbb*EADOt8+6!)tc0bZKlbpJ2w+FI=4KLJHnk?kuC&h zc&Maeb#5l;Wyph%uEH8Z(fq-O30j?-TCwdRQQB#3@QSSlRT=e)tqF2EYGl+$qH~Ak zkBm%Ed`oB_T*@_RvN<;Ai7*x6>&jfYq3aJy(#u!Z8ZKi&0~T=|A6b3;60Z`0&`tPL z?d6{Oz(Ql1r8y(>0G2_YJP%B1f;nFW6PW+?GUk8Wx_JKgsF8xgF#o&EnEx@x^S=eg z{Esnz{uklvEULZi(jw{_i@u)7-Zd7Q;L}NEn&7d2r6zdHpTxje8NM3xYeM;c5bXQC zYb=<6?^iVeDb%C-LG9&D(D3rsi7B3n9WvT$dGX3j$ zh#CRamW@F}Hgp%N-ygELZ^uzoRT=LU)vi zuO1iw)(jd1q%1~ji^-rRCWTUWIrQSKUWTD>FezPCF8$`8A$-a`A^m2Fw2|A9f>ZeB zVIdmYN$q~QtI!{mN$3KED$`zC4;bN|W0RCk^&mQ$)q~Ulxd+i8+o^Kh+=E!4--BE$ zvatV9(_HRBOi*06Iu%>3Rn47i?m*Ey_Z$U6sGehuq?w|#=a<rxpHn3i%CRt6}-m zcy3swT0z{fHfe$zR+T2WVI>C{_L~o4{~Ff*Oz`myI4n$@_?_IYGW3EF-G7;!3%VBQ zX}G?b4KQ@=!AZ(UimM**sYAz}Dd!j-N1UH@oN2AGix-hw9bQ|TM)}Xlc5$ou0jh+H zSE=Q`nxrFNl2;!@VT2+>W7T|pNYD8-?w#ihstt6j4;*BG5zT4dtK@^`y-FIi?p4yD zlE)osB%II*Pc=Zz?oOx={NE7aQX^qsge3;}-xuKqBR5`I;fjdd0kA~dB$vKi6I|*_ zO(=yA_TnV?0;@bBl!7U=7FLx0q*z2Z{HV~q|4I;FBb0N?$vw}rgQ|HsRkY8kVSz`p-e%a}vNqSTN^ z6WmLeg7CfEK#7aFW6jW}K)_T6b-!$aS|Vhz2_7jG7esTxLshpC&A?63iul_#*gDg0 zZ45lpJ-9Yng^WyQ(%)|P;^Y)bW^0j|Q+U|(sLV!-;Ig&IBVn*rLd5!kI9DQYvn}|p zksCh5p_zhl9Tv23I=H`dwZVhihMUK~tPN&{Igyk@kY92rr`A8x2EX(1n+1&w08yfe z9w5qva36q)T_c%ly}LtUVj2u1VKpUq048RFzKN}o=vKX(pqLnE^?H3-Y0%2b1pTb4 z>dVRmb%nYW$m}lRwz_E(^c#c;inN@-=k+CEf_?%fsAYiSLdyra6g$rIQlZ88l0iS1 zhq9f;=k@~RnKYo*D35@mZT8@wKL(Kv$&?0I}xEA*FA5K$Ik!i!o_DAoD6#J zhb=Hro@=T2C0H5Kj}LN_(hq~&w5*HWxF@MI5N1QII}m0M;x{<_Ru6+Uy5Y)JPhb4& z6fRnZud!aKPAI!C$9Q<{Jy^O`GAGlX<)-aD?eX96cHIH^F4S`+JVsKRAC=nJ*=u0W zR;8g11LuM8y@sTR58`@7vnE8A*U+2{`h^HR2Dgw|rY|v)9lY^iaSGRA$0joHD)cux z_j~82P?;w9Mb-)s{)?>DAoPo@xdq0HtOX$a7g<|K9x>$MzsPEW){Cs?3OCoBev#G0 zb+OZ4x|8%C#IURHY_V%N=0| zr8V$xnstp#-f9Xjq_}@=;Uo{@_zNdRO#D|DPRhLOyoHlW5UNhqElDQ{!E>oRO>k|O zXo72dlO|ZP)tX?%=AG;*RxO;AF!8^;a8iyWeG9DA1j|IH7#5hP36`k{gl~cWV`a0S zsN;wkG%WBhFPxMidw=1i!W67p1XFKX1nZ_i6D&nSnA6LPaPBULDR&1&@2vvbxcfwwPj?m zMn+{~RazirVhHD_5B_{pOX2{DBG}aOHNmD=~rTf5&8nay}1#-uIjbHL;FtQY28Ooyi@^-ul!UX#A zq4jKnJZGf9${vbMkelk+1i5BnP4>)Jvk6iG!K%IN($v03-rq#S+O>jk2 zX@V;v_cV#4Dgp#ogzCP_nW)`;?^hS;ZZlNY0Wzztg)T;c8B}KaJ~%6pk?J8=urD~> zkS7m>Z>B{|)Hc)l+k6(%sbi)L`eusXHO)Q^gj2{%ZLYbd$$pK6wAM5=h@f#9ne>rN zO4+HZX9E6p3d6jm*6hZbn#%ypX}J@zbfzC4yyPbh;q!+0sWuSqs$~ql)e_okSVGfJ z$YafoUymt=ei)P`G?!-%`Z)kURB1Z6H6TY*Vwp1u-*1^S2_H1O#&krlGm~IY>)Dc^ z`F=}~)MA+u_@F5PuVvSffI%$*h4x}>vJFk0%jq}syTRfVZpS>jMXDP6M4nlN1x_(O zciVRem!}E-S2`MPtR-?nYN4mXSW9HkUwx6-WG(cVpeNz~gIS?d>xp5CZeV;Xd$lI` zg7n-oq@aK4Vsw>gfkcgPqNSSPL^u6giNc3tn`1i~7;8Q>yd;CpyxJRLhR*7kq|LHQ zlv6H~$E%@P?D{>9W_RID4&5j4S%6jDEy6(aF#&al>COkI395nSvR?3zx&-q;B*%DZ zMEJhwd`<9u(IuMT`=ZM=!H%>Ngzvbh$Z%ZWh!EUNYld>)3u?Jn6ZFj)(QuCu1P`9? zHDkYFu7&rk1F|qC$U>=gDh)QRab)(Gdj!9wslh5Ts%>z4jz zfK`3`f8vt>O;H;4aJAuXo7rI+hk*kM7@9OTLVJ1g#g|BakQv6;ZRJ(W?L!l^5CbDt zLpWbl`=Lr;E#AERUGC`UU55u5AdZ@J%>;UQB~r_x^b?6RbHeW}@bKu~KB>pBLLC zIY#)rSQUrxjWT>*EIHOVFP0C21yi?smI$G?w0DV=ERcT~$^!i@?aysi@4T1^*6b-E zG4+Hd@4*XjIdaRxwrk_GNQj)=sg7b=BkJx7d)WKocxesU}#aO`2etszCTMCC@fwI;UQlE~rl?6ReSm z+*grxZ;23rPFZ2`eOI`3K#z4veXO-XW0G=#s-}HBv1qfL&BlAC;y=zQcGNN(JgIS7 ztha&j==-FfT4TGOP2YQx`0u2o(-@Fpo`FAz@Qj)!9OMMN!0Mh4s-rF>KY3m&hmE)Z}1#_}c z?`xuz(@AbENPO+mE4mXs;Oi-DIdlu#l{e;zJRzBzX zK6+{sTpSs zCirkknGou5$*qR)Y9PReODxboTylra>K!gIL1Q4`k5w0|V(_<=T=UyW-L?GYx04uD zrovO}3N13vo~t#%bJpBR+RT1L1bHk|F+ovty?cD%v%a0=TZQ@UBp+m}&<}&YRcO$% z3Juy;p;5~!OwhNAutvR+(u^bU8A;id-h?)%AAi8a3s(AJP$`nT`T|jx>f%c^!CicX zCe-NZ9I+QQdeQ`!xfBGKRV`dqFrmA4ogXXT@7hh!FAak(uSe;pJ$@(yR_juN`k<+5 z2J5I=<*55SohJK$n*Ls+|60|dJ1~`6y3P|Q^Z{DpJD6dxboc^8jQVEDz$$UPL+8OC zs*oS{M(DT-IeruD9-~<@5d;uS+QA$DV4gs1JM+mCv8}y-D6GT!KybB(-4#=6BpkKinv?{o%q-j@hYeB84vkBIS z=DrBY4iSDVA9#{&t`B?}`aMcGyK2t2!D)i5Uo|EfC7j$Xb7|F>q&A2!_Yte1hpld1({$6Nw!vj*MaQWM?`YRu- z8N0***Kr2Atk!3eeb5v}gO)HF#G{?@AXZB^`&c-s7H^MgFeHp26RB2Do8piBts2qn7_ zzggqAdKi>8QLkS`ur)vMw*$=ife&)K)DMGx$E`uGV}I7DLA&GDXo6XF6E;D=39E0b zR_Jo`w^ge(!QWQRJ>S!+I%!$}f~8SQWu;8i9y-@A1+HA}tJH*=L1Gn+ixJ^oD^C;LDvCg`{r&6L zE7`Tyu{Z{6EY6m#6~a`ed@Q3(XR2nmnqb+gHNmpwPLnt+TLFmulP#k@*%&lrqfnbW z(&$y`NWz<>2Ce~@Q`mDv9QVhnnsa$K^%)7BD`il-s~RlUAn&feB%FOT$h)g1s3v^8 zyIQKt#=EPVG{L*8Rhr=4)#P+h0q?HnYl8Jr0>bwd1P$RrKVcc}z~yr1_%FRv z=|}WfY+IqT`=rtjGNTU{NSb>gy;C>~YcfORl*3gR9#@JkT^=i+FRa)jR0*lEvj+18 zRAXnFA@#wQo2Lo3+#*e|<(6xLl~V;Vaxe61N_BecBwwpeOwcH{8av-75p+ve zV`mLoV`mfe$Ig#Q^mG)-?_^C-@{6p4QVJlcYO%aZT&4+L9j?#>uMX2pVdK@|d?8fn z(q`6JoS&Nss@&A-a9CLVBJk?43F_5hH}O4Dd*Nn3%M!X*Vg{i>HY_!-b&j?{Uke>2 z`T?dEOwiYQ4mi})68}1dDHtVL9g{zYG&?3AG&?3AGzXX(v<8?ORQZN}#8cj6R2`W8M4!vn)I(F=uc9_rHdF*z#w3PaG3#lGw5v4s*W|lb1g9!%{1d8;*W_P&FVyeUO{J zeteJ{lztd&uwi*jzN}q9JB9pJbF0N?0#;&~K1zeC#aBojs5Px>O|ZbZbG*1}v|FGF z7O)gVgMwL;Qr3JOALX|>uMEiLee56Xz;-Q*8an&(0KJ9n1}4IlQeEgGQN9%zhaBEQ z&ATG)pU3b|OZEH?yzr|DZi&f@VP^LRq7i;MI3EP3rd|>*(FDIFTrPxqNqDd1#kQ?q z61Fh?lCTN-F9}>4Z^qgJ`z{8 zPQ8{pP{5{0(6@IJ^kq=_-zMzbeJI0J?d?(_IR64osP+cJ&wqV=`EL}^>S0aL&mVbQ zw>L)jG?6X8%O^zWx#3u_;G>3DUY|~T`pFAi8xV5zuV{xHQn)xkLtl}d!PdV==wl{0 zqzJdg_XEJ?2<;q@N*lgHPsbsbDf0uk7@9WT39r7IRk$hhKlCv{EI^`FThrPB3j)a@!s;8PI2n#sYu^X^EY@t+IZ zrC>R3y{F@l`$dADc~y$=MDuL=o{1^AZ~Bnw_=xet)z#~~}ks#D8c8W!jMp$>I< zqdswZ+?z%(cS8mLfNQobv$TlMaS8kOzEUM?+h(fk)|H^$+hwZT(iL%4yKK7r2WW?D z?w_lp^zEC-l!>ZH3QdRaRBTqr?pxC7t0N%+vyJ$Bm;w*KOyNc7MD50)s zSH$kOGigx)nhdiYcx`}YwUangPEMtT02G@QV&${+lO**=iYkHJUmW`Cb{HQkKIe@v zwLL`|)3uMJ(3b~F(x*L?M$I08DKp#n+tO+HZRk8%f>{gkIXK)huR^{Y9HSXXL=p24 z=i5hNNF1l_ybQXv87i3LT!H!A+Pfsv;NlQ<#y5>r$lx8g7YNtXt2kR?ajJY!GX44? zxTGcW`Oe{8vgw%*MZNp(NT#X%M7_f9bai2>izk1{7 zkQHJj(BiBFKE5ao!(v;P7N=={6aQv~ScFxlR?_>)W*MIq$4c$@^c4EwK3R|H@?Mxu z9xJl-+>lO}U*jFB2tCp(NK2A(R4vAdrOZB)636_pv4>0>8&jwIDy`qqIAnwVj=Oz<23sR@#KGYz|!p~;+ zm()E6pKBP7IGoQxYeIDI3|XZgd_tHOb&)s?JFdbrWAx0ANT7}*{$zKUvipdtuKqrg z9>t%^=hx;bbn-qa>3Ji9^we~z;6ENor~5Ay33fgcr_M7$uxy+AWzy|`NSxzVWzYkM zNIPBiS(vWQ^N2v;b9^VR^R_g)6GQ*C7dyfCU&D6Z+AQ_k#LeIH`lZmt9Wt1QLg9M? zl$wEdc0ANG9vL0P1dH%JWclf5(bcG&bov&dD&*l4v#G=F(w@&hF-#|Hf%$Tr%r{c# zf}7+m1uKEc2gE7+DJ0#*bwXtz=FJp$Ic}CqFX`0UA3}65L{h0Woau@|nbhPCaXiO3 z8B~x5m&6kM@De`U-B-L_qwz6XjZjth4?U4ir#>fwF2;|vTOcU=!CU^GM!SEJl3utm zK=E8*vxtV{eA_yO?${(we$U})^kbGZh9QG9sT_Ywg5Q3{g+2qN1s?n=(RKF;+s?`~ z+E*;S>&DrsbR$AloZfR%sr}!?5XQfoLj6w@VttEr`r~PDD>u|@K$vd1RZ6;OWRPCG zSk#-=GM$>fDTX}_-);D9IR-DRs>j!dXhQ`OV50M%K}vs4{Oz10h?WczC0bqWuB~x8 z=PgMs9iQvyLZ}6{ogEJasQ+MTXNk!%8uhIZRsxn+9o8YPzW1SO!Saw6k%u!2+fGOQ za1;IqGF&mFzNDQNQQEsf+@+Q2Z3hHs@5xdN?T#U8d6~4pIi2u5qZEmgpPoSv-!0Z# z_+)_I+a?P6@#Y9^I8zj#(KSlHZbTf`n?=m&j!R(23R`4*oPKL775oN<=0j(RkGA5J zBr|C0)53PqB{4c^r>OVq)3Rx!4!QDuq5(Jvu5@sDhjdzTmMA2rB0xopP#!kre*&$_ z6Mx%q$lZUB(u>{1kv7cMsWe7qnPOGPy%(oHcZqC+KfrAnp9*p08JYBE7wN%<_erA{ z5vl~OIz5|~B2=l$BF?-tLDLpWc`80mp_DVEVOTYHL5BdX*ZDMkHJutABKiE$ElO?1 zAkKX#_R9-mbirpL&Rh7=2cL&g5;U6>q?bMtaXLMmL08X{kY9_k>03?2mb!FYU$C(f zo$L_JS}a}QvVPd*ncqEI?#-EodGCXQ01Z4@jEK1P%OgxNP z%Bk0HWT0@S)% z>U1^OdLmTSX~S_I=pLn0R!Q5odM1k)&@@DUY((KWQ>)+o`r9-bd9D=hL!2*v=Lqqz zZy@(edPx1;yd*)>H%paR2HP<4;?yLyd_ug-84De1eSvt2he5QTF3s6Wp!G8u)cGqh zqzk4eDg3Oo#zsnas);kJ_W8CG*=(1JfUH&mGn?C6c zt73)hXB?~h82@}0y}1I~;Ub*=Wt5usl_I3%;zQFb5yBE&yE;aL?v#dc%f(6h1oEj& zt-;*b8QF9nvvH4}bs?PhccO!L@D-}aK2cR}d5k`qBR+BRJ2+r>nzYljeJOO$WH=!f zXYT1lJqAG>CO#h+r4ufa@$u*(QCe`1h|_dcfQxmJeWR>-+?gEW7GRDH#;C{^KmSSrrg_i>%zBD7#m;F76fI%+=L2AA~flW|&Q zqr~~gDJk^(XHuU2^Mlml3h^#!O(S&RZ{qAM;>*GKOkJ8-{K$fI%6ULi+wfqFen}BQ zH|+>e_zy|o82s2h(^EVJew!Poz=QAN4eyQH6SQT1Iz>)(0$Wz3QSkR=DfDM7n%rEKK_z0UpK&)~-4)gl`jM)I$uL8lu)~(^N<>{7RTo zMqy0^>0X7`b)T4>MUhXO(1!05v?z?v+0{-f_{*9o4Ve~EF*1h4sCmz%`rZ8DG+Kr~ zmZag#|F496dQO54I}1umI!^G+DG56FfhdPLjY6o<$2Y}j<9bL4w%}dK2+f?UBnizd4bsx~A&=|M-RU%Mp_g*7G0byV zSL6>_Zv7&iihqkMd1rSGQAQKg4`ergn>F3`sZ@Gz6l(Vq*xHziBu!!yI@JlT!0&74 zqJXfw&X2=YgujT<(+42SL(rDjRb#9o8v!!wPvWmO*20KmshNMObmZ8kr42W1gT_MncqQffUUej(0asE?+0!vPbP;l!ioSGdAC8s-o`S-PL zY7231J~~XxOHk}uzjvRQNt>s^E^DQKQxmLxY(sU_!gq}h(gw_wYvT>c*$}^p@6Yd# z$0g}*%$PV|liw`YUzNe+H`6q6^S8;<&~KA}e}3;zIt`VvA>7ROw%byv?C$}kH&cfu z&sk&ewN7;LtlN*!pG51$#CQ(r#?^v140&yi2PJ5n+N8 zc;#|*?9aWI@O;?HR0 zb_E(>odha-2I-7$XkN_r%?>!+wEFUCIK;}d;e7U!?cd2Kvw}R2HJOVLi+a7#Mi5rW z?lCdXx!0*it4>c?li|7W|C!B-;||3Ku-S#PdKZle(xIDSteil@Ayxvzx8sUF_UD{{ z6=J1km8bh?tRS;5ior)uXV5G%TByz^5msQ>$NL=v)hf#^G)V zv_eH#viG->`OUn3J1;^z+n`56n!jKduWzoG zenY<(K9)wY$Kh3K@uwdero&RD$gQ*jm5e zy3(Ob%00aui-nE>ShT1e*G%Vk%v8Hxi(xj>d1)-sO3c{sn}W-~b?Go3Gop4HWB9iw z2SSuM!D}#D?7a=$J@Buw)jyAa13wggId7(C7E_yNQs!$OK6*$h{r(Ly0RKVN4mG(1 z<0@C_;wy~Ox7SQ5q8#+m1YdvKx|H1oW1UmBh9wwIS_cI(?`Qu{N}!V&j} zUla5>wsZOSu&&t6o&mGNZ-YND{X5KK=~2w*xJO7}EY>iw=B}vc>g%vQvpeZ|cMiFD zs^huFD2Q$UO!1uN_h_LOVX^(cnV7eaJSW5DX?{|Q=VWRZj)LcGh*S3qq2gNAb2xg( zzoGkM+)%y6-wCV*F$;upgxVSJP>TfACR63)Z2(hE0w*BS^pZK>8(4=!;eXdgM>!%RS^N&!zZWhD(gSNe-2B~8UJc=9muUR<=KZ0^K8w-$ zt&(_K3d)&|waBFl(mmq+&Z)E)t4AtiX)Kd2!-}N48Em`oqs{Y(Q-^pDYn0#MEA%QP zfTP^k;$087Iab^);@;PjblJh$F1Qdoc0(5hXd!;Mf5fq|(Da}n^}@)&tqMAU zsaS6c-HzjeJO7A~`!kNDIW4m3B>XAj$8{<6;op%Khs^oWrRQ)GPZ9T42IF8M$y1VpuxvG0hng(5oQEME@{E);P!)}sb)Nb`s-i8LC!0q0iF z!s&_AZ~{N)q6~6xOu@CLcc;)XOau@zWLbcgv_xvmb|6mdJ%Xc!itTEg{riDKm~HG& zEA@$LvWUyQ_FcHNT1+9pkh1jeJu20Sg6>7 zDA|!Hp<>&Eka8UEQ*1L@hUvnQNSZUf5&VDNBjq^@sqra4cO`W21`=3+bvAbkhT#=B<%oY|Ql~{(UZ(Rg9q;o9q-F^$tL%d5_`bbJnoV>V#%G^g1>>q? zuNK>WCeZ7EG@6xPpY>a*O*|n+vb44xJaQO>qv=s{k$|fwLqDh=S7%$dx1HQFgF$K-^_ZYU0 zwx-Z|JQ9DN^Fii(cI=cvv@#A5I|$A)Rt1SHAC z$&{dHe@*d-=2)8A-5(J-$ zBps~kO!PhWD%=~L& ztL-Y~9vFJO)DGEj%9hZ#^h%@VScg|SY&fLh)T~ll2{cStaSr$=QR*cy#P6fE+Cyg? zr0HLb`rVm^17ap&^{5*k4$)nYp>drF|7|J63V9EwW3IyK71bqMKE+DSl6p&K7VX;( zy>ZepoMm{aC#oj{rejHMrDo;RaMD%+4Xd}|kjDl@DX<1zJU5uKf!NP$3ln8G(B|C$ z9euI1s~5hDV)+8Y0%qH}(xGLWF_d7o8$$^i`gg?P_B#TjuS){lu^8J zY6``_gbuisSzf8jwhS6DNJ1(wWc%@FXop8UH|Ax~)(BeJUgTq?X2r3L&tkKPbMC-Q z^$zhZDMQm~4E|IRtZw+ID>G@pN2p*H)Jni2%qpS4NfSa8n7$p$Go8j{(fcdYD0`d} z9Q!$T=drlXzmLV8AHSTRL8C_7zfWwOO<%>pKLcB;=&${_ZoMrZ8d#WT%7Y9B0%TT-5zMZAgoOg#q&8`U6 zmVp8eHd8~}vEMoiYRrC=msGDwA?LSLkNEOOht9ye2`c2yl_82>g9B;IwimO*&24cm zmx(*!5})`1XPB8-bbcnS{{gyX;%f+3g>w^%_!EaU-on8PMV$Xjl#X5C5fr!>bD-dR zA7j~*YjHJJEvq9m7uzNLd+yC~YKfZR-~TuZS4-U-;NPLcCMIajf=MnpYZO!PmPg|B%7CPb5XCXsPR&qth!C1_WE$3rXeFnW)5~J+5oZxcc&(DY4zc|4m zSgGvM2{i+}>5pOh@D=qtbnshI8dxb}G`Sr&wReK7XF{geABC-c1g$c0&cHOhW&$~w zSn_9>9*3h;nU7qUplcsS=65^6yxa^r@&r%X(Oa`LBN!A!}Mkw zC2Z)51xYHzA(`yPP+HHQ;`D4MPib^H=5yHSM}*MsZ=-bBdq{{iTRJD3-hMTtQhEmq z?qhIZg_$~yO@pOCSk~t6T|(5q9E#!?&)ts0Z`l23uJ;G0Q*1D}jzPfNIGHlxeFy@L zeDWa=){oXkYr&L0fN!m6AtP7EP>8>!PVFz6iJ6c9*&fBO5 zgixRl#@?Z)zfCC188sjbXfkRx^uTY}JijJFqh4{GK=f0bhzUM}{hLMs8dZrD|2Ws7 zCpnmj!egKz()j_&Uja)Rbt=52MRfTx zjlMvwaR>$8;S<{NJzdvn>_JTOXIe^9?EP}&#Lt{Iz68C_87YUtrU zena`63lenGgK!K#qO=rvbP5g#4M@$R+>hfl>UB&r1NoD|wrYv1AeJ1H?ys<3>@H8G z6r2pr#+Nb!nJZE$IPp=u)`UZ#?DSUS&|K@5u#<5JJ@q^!@ldyPD!{2w)!?&mKJJA= zR2%#PdD|K}&9Rl)JB3Cy1;Qsium+Pw_dkeg!6G~bzJ^;4?3n>C-}{OH1s}uIdjNin z8{lN*V${LU{rGbVpL!Q>nr;u#xNgy^iFi9x0{LaeamTe$*Z{%!Mf7pUd3;5JAu^5Y z>G6%XFpqDBVEiioxZ^#(i!7{L37H@~Eu1#$G zSf>ps&O1!bAs(lRDNbw#oje?;qOOf9HB?EQjYu8e3b@CmL*LF|HSB>J{*XYe2F9Y7 zdV14pU@TWKtp>*0S(umJk%DP8FyAp2)-9G92++xb;p~!9!$(nvMhj-D!Nfc@Fy}av zQ`BH$S`8Om7o`#F(v%v?Bo1cvP{WWTL-e(04ZlLfdnHh-fw9LdtXq_^ZGvevF!s8I zd3-wr(`sP8Pc5ultZ6VnPN}DAt%k3n4y6btYH&OL8L%)eocq+mm<1kqbT~6Q9Cl;I zo-hONJyDDkO`3@gNmGfMn4hQ#`iYvLmndv(VB<_0ve0X4`I01=Gr9Y@vmD>D?%pRxb11WMSQ6GeQA+R4}dFo3XI< zlwhWfnHU!7@+iifTTM=}F%wgqP{Zf=z`;MT6v!Tj=6coXsbM>AC2o|FU^Qez#8wih z)xcO6!L%9}>m!&}17rOy%u8>yU|J2#ce;gji(QPj=4J|})vy=laEV~18cfVRlHrO>!k9LIbwN&A}O(>wTGwJJ_$ zw8~V!Z^G-(i@%120H1}e-G`<`)bBetrcm=yF8`*$+HL6Ju0Uf8T{ty^CiYFG;_EO2 zy65;9ZND?kBW?oP2Cu5CkiA&iorVQjMI5&wg^oqCiZ}~b2lU3uBoh>_l#*cVifZ}_ z7vk;2*ENdA2O?a~N|d^IY9Lc7hn9$PR8StM;tM3GNC(BcLi4{#no(${ct)U!0{dL% zRV7fyWUeGqp%YO-)f_ZWf^x5ttP`K51gHR1@nwN5MU*nJAkacZs$gP~ zmUpQ{igToIC4atUuK3D8W_&d6Z3*CRPJY({zyR8%-EtC+$EsWDqA#zdrXimn!z6hR2i{F_r(QE`xexA z;o>qW{R_gW^u!j;B0XY)XrW3a8%+?6U8%$beU+G?uM!jVRH9NXlvGuFhKo|EnxLPm z3Hqs;pqDCMJ%Qnu!9zt1hfpl zk|orJ&)<*n4L=VAOQa0H2n0)_48IJ7VNPdCx|ZQj5zsRH=_aTRe}N5phQCBW%kWLm z*OdwSx-vmS(q)pWW%$>d`D??!+2quQf4d24!`~pFY7N@(A2d0&;S*lY<437P8~$A3 zv<&}z6V!%(wt##QAop_0L`~3Fi3$2DF+ooy%J4&yDvv$5Z&sEWz!8LnAq{09CMg-Hpqwq9EvM5Jv^uD34pt#Pfkh%Ht-lF$}L1gl~A&AiP`> z)8Jl;u0^b^foP&X+QB9!UJM+dh-xNY3be#~3&^VEI#5RkyQ-{mmxK6JvZ@B*+jzzG zMpk7j{H*43Rx1(fGl)Kxvtr_NWOWLN+#867ZN-c%Kz+o359SrnF;KHHnFgz>%0QdSd$)*;&)ga0Vb&RLc%z2^+B)N6)Qb2p?}VPGwBhP7lmjN?m3IzN6tNit z$;WV3fC&oCMhX`%M+V%(FTg!Uug(mq9zHYxuep55BSj1ZGAg7blVFUvm3~Bk4toYc z+fpvcfYU>AqfGsRKwAaIZSZiHCraryn5mX8Oi;~~ zRQxPq)%|{gbIQf*8O7}Om^eTPgl5CO-^Ji;iQM8(WdlvPcgsaNe7WJ_WdKUG$fXaDd(5Z4YL6xgA zo+8eGhsPsnSg0SBYqgYG)>*Eh^6hwMBKe zLC>Q2dOm(Ei!#BQ?1u@fWl^V_pth*-0yg1F;I5GEWR8H18PpbatqF2h$eecx*oHZ^ zWgR7;-|Mku9b|&qvRas+wk#7=MN*cvRjNgIWvY%%P_a__PAsffbHyZ`oIs@8=pYr` zM0ED>U?On_8vZ6G_Tlqx6j=cemb@99nNCLJx)&WPWgCJ_9dZ{kiAvx-9w zbg}ll|xnmJl4 zCmO#VcK(b+Q!VMxV6FnUnQ0w{{%Q&`*e;-QFoy>Zh=el(RLyCjhmAiAd9s&yxuru4 z?lav@$e^u&Dg*SL@!M*Fst;AHolI8rrD@D+g3O95Z?1qehnc)z2C|e=^VT3^bn!~5 zMIgM2k7Pp9G7iJABR&hUlM-8*;mdGvuR;7X1ytf=bfIjkpMa{=7^o=QGC?nk)Nf&1 z-Gx{Anj?dm0kDR0Mb4#tjb09 z3Z|)wds#rW6wo`^RDo}riS`LLCzmZchD{ZIa`9K(&I!A0*(S&q9%lWaowQ8q;%0r^{s%1G7RLgRa>kvQpRwTwvbu&aO0HK}(^`W()CPpUcPmD~^pBR~-G2QxDveJrEshXglstNk3nxLe5FLeB=sR7pU z+fa)MY8?;8$bT8n7Ffr*Qo{R{j*niPO`EZ9r*!;o%K%kr9e;wvP7>a1HW=1%C3I|p zO2;jsOcN9xcLcmb63FEQSjW8S_Kbj9$I6UMkhMXI^%7y#ic_p6=&^1-1Ye61RwXNI z;~Nyf1hqEG8incA6Ga3=ZSbRjn|Dszv8X7-FG1l zW|hH4I6S@j985(&aDta(Ph%_8!&Bg&aALg24N)(xE1HMtXB<0c6At}|GvUv@C<*Vt zQShZx;UzfXgK&5|{cTKzIpNraS+r{qq(oxl=7wnZVEpFQ?P6?WeAN}Q@N_qJZwk#! z!}bTq|KyM$t!aS?Gsho~_+4+rtQhg9;dJ*?pjDI?KS<)UNl1*Ne2EQ`9e7Qeqo^0H zgG2Ft-O>*s#2jq8^x1(^7TxiBqC(Du1qENg9lxi)5TF%;OYQXjk{@rQe zZXAX)#loq;ykOY9)c|?gdg2`C0Qbc&13sq$-*P&{H`f9WDh?ii2;?sOk*L3<%Plef zp>weNV=b_o<3yu7YlB+`a0>jy+M?;smQ>mRm^jOEb82DidfY!>CyP;md?mLTo3G|p zx87Tz{m}!fx0ww&HOwborgO;!s=nET@+|ilT2y24Au+%D7c)h;l_-9io_Z^%RKwok# zjJ&sm>PB`yjNHWhMrMItBP&PzlO(=wWKSc$iTRDp0=+iE@kdL1_N3g%IKGM1G%^eI z`jP}1SspqD?n@%?5EbFK>Pz;bQI&yEeaY2mOchM%zN8w2ZalY0{#IY2L8~vZK;3vW zX!Ru)s2h(7T8(GBp#i@yF+soaSfJ5(PK7Trm$$q5jOWZD5v<#>C*v#*N znO!EK+RR^tnVFbx<`(Fg`QwOxt;E-6{vP6+m~ZA5=$Sdkzft0AGw1jwR%7NC>X~_S zn0fB)o|)&u%nR^anRyn7QV`0_Z-SX`VnUmF6$owSA4&cvv%}CsCJlCFQ1=lQsLfo1 zmYG|iHgglS%sh9wXQ0-Q$pn2fw?MqcpiJQyJM-RPqi9)kgLyD%r$*BeOuy$lgNy??Cr0_{s#0u%Ekr~|SuH9=nj3)B*rpf3Rh4qJ~I z?cL3?>Fy3enuNCkUb-NIV$(8c(kD*fi50l@a}u_hd*={MYJ$D$k8#!57nrtAY6;@= zJMd08;!o-TqG7g%L;io000m$CEk@IEZPTQ6PB6b2z9X|TPLrN?LSJEfzsFe-niO%I zRK8wJ;1Xn zwzlDUN}ifLc~a;tl+Y9i9mNvtp4SpvKnM~WAR{Xq^9b+Dd*1VX|Ns5h|6EsKuY1;Bvu0+^S~Ig}&rYaKJ{I^P zm$BUVp}ck2_$v2vMSe#%;peCVu!l2fQa#kX)Aw z&g3&me4uYPlu6yme2Y@wqAZ!KP3buaoAP_7L;=d;VnJCvP?sfr2xJX+?^mH@d}7zI zs$d3R^@?)~^L$(%+pW8Pz|@Fqz1)^!%6ZqDtRu+!*d9IfGNp^Pa4r(gJaYCf*PJe< zIaMk3SI>S!Lg^oPzQ#@511r&z(*h}@Ht}s zI+7z2ElQk=)khZ``e8Veco?3-1^e!k$s}&i0i&a$T{Bk$Y(NIl+0pXMGa#Bt%!w9g zB8x5@Jr@MoDoLCZE!X+01lwhn)N35rlyIm=J{!gb*)UV{ZEoh49F6A1#$jxiF^3-($!)k$GW#k*xDY?scVRgG;+E(rvpyGFev5vmzu#WMm zWALnj*Ka3N7okiUoIJuGcf@)84(?qYPYsg+oDwIKDJx}Yrm4j$mSSf3jrd$&?0#l&|9uG8TBPPIGOwyGG7%;%N#l?bp|qT7HmBEwl7G22R@5MiOnq6 z*r&orW1Bjwr#97Z1!L%(da5y17t;oqJQmtSt~1&&LQXxSDES+5DH1G6?5wUDYcCj| zOHHlE3r2IH;*J8IL~ulb&iW|9Sm{&88rydMv}JWcTUOKCC%TnAu9xoZQ$1{i#y%I5(2a6JXRTnjPqxV{ToqjA<^BKKIZ5LKwNUDwAc&wm$-)MTMHcCYAUa)Ex3#{4$wNK@I?+t13E7kw9$KCl&P6c7SX#E%5t;lVx#vE zl*Pq@vUs405m%x!E|>cm6{j$IpNQz4#X}}WZ$8?s!!@F}-fX%M*Yq}emva+{V6&;Z z*X{t-ue-f?lc`~PUj%mj;MT<`M88Alg297Z7c>uUwa}kLsEh%$P!|h?x?mvG1&vTu z$_l7}<{T~*Y(QCgjp0If_|5T>8y&tLF1&)_!a^``xRB|M;X)G$3={A#TcVfT5X5UX zg$uUCYY#PTaVu2m@6?)!*9}0kH=DX->|nem)=scAF~sXbVHG_DDk3qj1$Asiy#5sN+Qm$~UVwnK zP(*S>W#aWsK#OiQC8A4ayxtKqhX|%+B3@rX zCsYxm{BH>8qXi2B%6B=S4k))Hpu3zp%3qxW+JKVk11EjCQz%AxI%yZPPTIq)llDOC zq&?6&X%Dnfo@KpJ^0!f*WxaiKWp%-ztRBeV$+EhjEvwT0;9F?`UD=58^btRJ*a(en zcbjQx&4(yYMGq5fI2#2~o{AnVnAa#S7%1w2R#6uW6!oI~VK`c^{VcuQ;YIn6aeCfk z*tgFpe>5KK|A+&9b(C)qjoyRmq3XM^uxbx9QGO^4s6pG3j5MHo5YWB5X+SsTf;P$zMw#m2 zuNdWbKv`ZFU9=y^9DN+h;$lHrJkUgzcVG*f-1`~j&qS1OUsQ z&c*b`JN;&EGwwo2*RQ2!AAqwB-r21Lg}J#-sk136$^6T3xD9{Wo_;J%wMVdhSF)_3 z-EAm}z03HD+w^pNDB`QS*W46L$A5wIb3r{FSIfcWaO&y!MuamL)YI{`0Gp5j=h+z& z>Ol~kn-@Sv1qsg0Nz{_S+*~WI5^RF)r3gWIXB)U+OL+HC(+HoU5=MyxhBy=6zX!UT zpt@-h-iaL`m<{hc!yIY^>(09o-p3-mA1|05ym31IA7Gph-5K7)hlW)XuMyr?p|ooq z0SxbZB4)Xm4(}%*L|Bk|aytI~6dyC;{Y5m!7b3EZoO(L`HqayQGVR92U558FA@f|p zv`mEe`;qxV!KRUK`vPrUssY!h8tbaS^-;90WHY3$5bg}Q&nPOr8d7V?jhM{qb&_tU z*cSo2T`(O1XZ1`HyWi!TS*}uxp-Sd%qw-Z0KEkLnpTfr)b8ZY&`39;SE8Kc500H=R zh&^2}ojn3Dv2z6r0x)X=z6+UPD$1-7fcJ)N?d)O*z>{HGE*5le50n7>I}9d?hcx^Z z;%^G3*=bCv#|dTw@Mze^T)}JrZv8dvMXz_gVaXEDWemDoTzCJZ-9fltw zmjz`2rvG#?>pwlr`cDtE{?h}k|MWl`fLYd!lK&1m|AGX|`pf3Z>ViR8J&c7m10WlAyW->opzDj#acLr38zeu^&+{8X--v2eVUmyX1%=-h|3G%zM@%5jkgb9Qf;V)ddTf{Y{YKv)Dzjl+uq7&csA-vU)I>%kuzF2Y z9t5;VP#cwrbr#G<@AHm9aH=^=HMCBdadl{8q1!FCAXH?E0Dlg+l#R;IK<4g(X_<)1 z%aD1kV0MxGRq$C%Cf!M5M+u+Ifwiel6Re1ZkwtPB(*~IA3TT34VflDnA6x<9i1RXDYhh~8_FO@4!^9J*yLk`pTy zEQsE$vDU6Wh~9Ou!9TF0l0Q3ro(B_jvA{QYphWMTVOTFqgW2f453mj*R0j%7pWlTI z?Jby%-W3QGRe}Y9qI(Xg1H~!?FPBqC?^km`8z@qT!uj6q6pGQC&ez4P^Yt+6d_B-Q zUk|j-*8^?zW?3JR{B87RS(j|CtS%Uo)dLw6SymUcWmQS`>|dn;bY)}uOe`ds8Ek~c zrZ{FY1=D9Lx?cR@U|0aB&s21iU|yrRV4$c6T18zjP}Gaw!?E-J`1OB|-dEyy`4#vE zBBS>toKe3Tw2t1D4;vdb(fhbKUZB7$V~pMttHSCSNwv}Y3|RGDg4yVOJ*?Wr0;~2w z6TOdy0aZL=ax7-OV3B+w49LZ3K$qoWG@xw|y*)-6&}sx~52OLTo(tOOeIm-#L??^r zeId$nfaqeQ_uVLqiv?xzKocVlg)N-w-p}ZLC8D=_6d53T^A(d?T-)e9AJ--(GiA}^ zrW)vCZS;1r7S6T8=|*oC)10c5`ZO|YMDHPp-s&-2BYKY-h?Cw#L=e3>MkV9?Qf ze?;%vCyY8l^gbOP(FJw%J_mux1$FeEkpt@JJsDs<(fbRic$|PUSwO6lGwZ7aV+6F1 zxLwR-eLS+hUpQ^_9)fJ17R*L(VlN05L~qvEi&A4+A4Kn~V1p0380OxKV1h0d_y!M@ z=v@!PIz<}HM(<02y&{;6-dDng{vnu+-hV-$P?C8ND0a*Nb)eXY;N^1a=)E=vw1FaZ z0-W!mPN5jR>3m(xI$sa7&esF2^YuXMd_B-cZ|;6JeKkB7)iy(kpfh%W>3+!bzbI zZV>!Zs5;UqrrKYcRnsz&c(e@5^oTdp+7-k%c7Ydo94~q9n2e7CUd8L*&AY)zFE(zU z&X>mo>Z!jAY6qHbi>Om4th8=@atpzeU63cY5UdxFqb8munIYKBTzO&(CtcYmK-d#o zDnXcR3KMu5DmOE<>jVA>J|G~SG7pYS6MWhQd14E}*L<*(eyw?hfDCv%;7^y*1zWOz zM_6_CJhhKPKX8TO#Forl1e7|K0VlO+Vj&5f(4vWE5TGmdSK`LNMEb~my3E!@1`5c5Kwu(uyv>@( zLK4Q| zNjxW`mFr2ElX&!j1R(WEJUoz~YAFc3dLQFK1oa>|F3s=&f(E9TlX!UWKr>0aVsCo) z(;)0gJe44{B08y#N%kb3g+USz6lh`+UY*bIAOZD^vM2G-Y%4(OlX#Y*N7WjlD9w}y z8jV%zX6H#f1n(43w-8U_*$-}SK5yemJQLxKPJPz7jVJLCJXgSc8YNHSxgN4E6;L}f zp2RZ_vKlFiC-E$YJ}(Q0?if6Y=Mu|y4=3TG*Aw`caapiw5jye6W)6JAapCh0SKPJ}hOs6Mmj zCRn8f>9Xa_o;y*3eMAMV7tiduHU~6k_IwI$j}=z!7I|h5oA?X?Ih32kGkXZmc0qk+ z4{bm7yeVy4vhvIx_5l}UUr4hrxS$+AK|6i;86!X|z%zSjnlA{b?Sg0akn4x0oXmRWlSV)t;A!RUlI76#T*25{M|N(jv3V}mrL8`v|0cmI$k(kvud?1L81uHD zD{wL0QkwH2;bb-8G;JMGT+Fm-t3gocQ#W($tG*ty+iwNygxja}AF4%`K4l8SmYX)R zw-)JQCi87EPwp(7^Kip7ECB5Ytgm1lc=w6zlH*X79=3dpO70AGb{EE0WW2C@d~e)5 zzY*6L7bPd-rXyW7)(lL}05(Z5*2}by%aT{3Nlp=rjW_L+g5*AsJGmnoT=KZ7YnBO)^^uLdCbju%|MmB6?!)b*o!yc zmF$v6w`**~^}WU6*ckLS^{nyz>2uM`HVHR-G<#X1Zaj`nS=!Q4lm7^JPmadi#sgpL z2>w!LR|#p;?kgx|d(`v#{?58>u5e^bd!Vg~?}rtq1~Tl^B{2%uOND_sC$5W^CdL6= zE+9L7VoIVz`W%S$z>-97ywo=2xv;ulI&FXQ-Vkr4QX5dm>S?3<6#O@B_x7nnfF%Xf zCIQ=-2caHD+c^~N+gTXt97LV!$ zWO=7uT(0|xhwXld?k6s0x?YL~b*$W8&f8&7v~P>KIvy{4u8uPWb9J2S@I7c8!}&Pf z|AIN)7<~5&Gqsa3r^R*W3W*b|^(3tBz_5B7pV7c1EOj${_+KUU99AEE_@l71D+J@< zmp+`>t%9+Qj)V{AM@AkMYydI%aBd8J(&gL7d=JFMXdZflvI1wvgg5bAq%i6Z zbN2Sh*HOahg6WQRcAxlh5Lio_oZTwf1VNWcy6uc>fZgHV^Kn_}_b~cK-h*#K>P^Y( zwSYc)Q*zl0W-zDs%~ye75%uZd^&m{qbgm5`r_E`VWDbwHxk?V}nT{|{(=ZXLdjbY8w5KYT0s)9EcaWQ@lw!1CZXF)u%8^pca__aJ zILrkvHrvcyEGUHw2BmO8Q;HNdzF35Ekif9SmbRFy^$o6)9OwLw zhI&N6Hp~QJX%NCvJ*$dg=`4h$Mi4qI-N&#b-0ZwTSZe!Xi%kS!$pcMTVs`2!h(=hV zd#L0!!V<3!bY$qTGy}t!Ix=9KGa1)Ygn`pXJAS9Sti+1tXXeI8udIvDwS!8oy; zCa!ED%OS3;^re={vK^?cU~%4K9S!e+D@zq(eA7i3P=65AM|T_#+x-yjXk08XITs8} z&IOIhDcwuT{)QaH|MlODTJ=m9|F?r*6r<`;7o1~M^)OM@#R64bFi_P6T~!;X3Y;Rl z#Q~d9b-kl%t*aGXHEVT@3!ZCK^)OM@#R64bFi_P6T~*6ohN|L0&vbJY-*b+yzV@J( z3#NUT_?}zbd+B>vjJYm&o+*ZhNike3D259L#c)9>hPLeoB`59Fty^W$#I3&IY9dAZ zn_yzwx@fBelhCAt!&>)VTeLR>)OL??Jp+b^Nzq&^D4GifMRP$Zn)bCnNKT#E!{BS_ zFD>TAx}Sy5EzTc;xy4Cy?F~Q8hvFpDv4|=Yu$-B|*X~ST%lf0Qy_mihg!Z+I;cIsn zZW=(~Yv&3`odRF$fyUP|JGC65;cMx?DtQfG%j;#14DD;@u7j^7!yawod`o8`t~mwZ zE0iAzb1((qE0i9{DF9!g^gvDl_zI;5+T9^ptfw_GKRi^Kf$QumSgzSInT!q!sl8t| z6~~9UlQ!Z~yyA;O>L+tj&mAJlIZW$OjoYgoacSizYW zQNb0jnukb1$Er}SoD1HlDbp3YkdLND0zRNgwKm<3y&#=DRt7i?*pO(d{j ztH+$`b!U840fI(oKE(vW7@xjtK1ivKPnU|kG$u@!DGVhOwYBOJTZsRg9 z!LtRVY3OC%BFMT#K#mY5ahbO}WK~iYmwEYdl2?R--9;a`&X1I=5KybYWnO-f#0AYV zFInGnS-H$hRu`0I-ff`G$HJRnUR>s7E7emQ`%RSw5Of)O6x<9VXr=6%w!W4A1WYAp zy#mbdw>%_*b=kQBOmL}yDdxr%;LcFtB>~xECvgRs--0QW!AOiCSAeP4Pr_+efOSZB z!N9e-VBp$ZP+VL7q38i$ir75nr5B6uKu>T{?Q-5mkFX#+6c-__F~O;B73jrc_PZYiWtHZ(q* zBe+VyLKen;yRDfD^5Gmc%)SKz59f5(uLKd8VjYOU6c>UJ4fv(8-(3y(F%E*sdFNjO$Uio?UC)b+jeyG=OaFTe65K! z!AE=~)Y~BVh>t`C2|nT@QA>i4_*jrK5u_{Keuj;2kMXBLKH_6N=eb$p5uff_E*O-~ z1%uMLpedb}+92(aW&7H%QMq6s)dd5oE@-4G9mcqIpFdq`c($xR&Bk)$*)j{GR+#Lx z(Nus4jHVVuU^MeVILb~HsoG=N&ftQ9vMv}X>w-qA{t{s$b+Mh`bhqklCzvCk*9q41 zHrolxR)VmdpbA7#o_Y{Lc^W{NoOR>hCvtT+w4LBd0kx;Ho#1&Fw4LAs0kxT&hh49% z*{=okI)MuYb>xCU9l4;R=?0PNbprK@(_L*RXl6~=PLTaO2-^uNN!U(MN5Xc3)o$r* zCwRsMZ6|od1#KsA!Ju?57?jQhP3csc3BZux=ebo+D?ifUS{a z9?z-BRb6l<7>;h|YVf1jWpoif*UHu4?CVCr=ZGYs>W}fd@to!oy(On3MvMzl0~|e` zjqCNS4Q$D|1lN`C;2IzB3QxuGL?mci;OCYIp6i1{5QTqN%gjE+7 zcAufp2Ifk8CvlB%=#ujTUIcG*bD-Tb+h*QocV=YYHFmGk9kG?=F;@tUn_#0WgvL$q zRTrdj6MV-9JLyt>AfPpF{Y1nCO(}W*N5UFdEWxi`p|IHWAT;UuZ80&iBEhR4;E-k5n8sfuUY`xx69zCeBmNZa6T}Svlt{AcE$MU@w3hUw z4;o8aE}&;gF4&TNld$SCZ~(xzeNRALT5Cz42*`!Vz>3L=AQl zkZW;)Wj!Ld>&mj0b+QZ6H`21Ex}dcz7t}@4tQleD@?cu=? zWl-;fu-k=HgRBDt)MG2o zBOhg_q%6)OFM&Qc2#5AE+%7Z)vhH(baUMB72Q>3YvOemvavn)m7nFJA{m|wqmzVQM z*7tg9W48;HeIWI%V$VX;Dv)}zxDa<=BX{e{;uP>&sQ-n4T76CdDY8jG?TPFrAQv>Y zm469r>jmL$nb)m`jk&0v*TsK@GZj{LSee(&L1DYR>W1UIj^G#<)bl!8^lCvnvD0u95G~sU^}LQ2?t;eB)3m;8Rv2A%b#atIgS$&W zZEzfAkn>Rixs)fHfbPd+VVXFIlL7Mqav^k`AsBr)A0QK}7mSleK0rPr4;xWmb|0%nZ`-%D|G zJuI6Gz6au_Dp!p)150;C^*1mb>(#?>|7mVIoHT>aYkmx;gWq*gh{xJo#$jX8Q&UwFBO2X`x`D)&tE#EwihIG%nP#9TxH$3$?sH!jYjD zYOmh_7eNL*6q|?Zxx&Cg>W5-?16&{=d!>FTHg!-AXda5~hlgVI(k*+FS3eYc2{zLt z63(K{;Gx(JsQ1-^wF4&~ik$+X9!8tl6>YxJWfYrH&A3TyrpMbY6~hN$Y`{S-CJi`D zFnS!@fPZoM_>iE(SS)7Og3B{R<50ZsDd23JmIZ0jX19 zP#$OuirF<#Gz^N3w4T>6C|(Z~*Qm?I-DFp+Ly-Rn412VR^9bZBTyy20M<0(7=2pm1 zZ~o!Y#~#R){~tcj0lD(OE*F%Qe--I|eOk@=Bc-Q%eefbkGHj-M>Rn?M!%*f>^&WTw z>T!x4TDzcDS+gD~tR<`*J85%4 z({GbYV9P%XuWoNl+O$1>A{ShrMaMH&9JSrpFxT> zkxIEwm)V-gUIOZgCKq{mTP1I^CQ?Vjn#e*BTD-2XI=R_1kvRf-CUUV0S`&HD2aSn5 zEuhxYnurUwWdE|TdM2{Mz2BNh6U)GrDH?)W3&NU61qo{+wIr;G+~I0xP2>U>v?el3 zz&y6QH4zuoDyzb4;WpDE&aM6vN!A&yBx?zv4#_8$jwQ)o*yPP__;P zr&Rp-VHF5HrQ$~q>zQJvRQ%Xs14&M)bnhl%r&QT5r0H~0C8%IZRTm`jBZdo^#3>a& zUf2Xerc^Xr^(E3crCNuItT04Tnkj#W&*e`yJEv3x-w;r@5T{h1!|m1bHcqKNgsGj= z?A*pF6~Rjc)B|HqsS<-R4G~Z~Gft^~fUNnH#VOT~&}Wr!=#IfDRqQw%86}`rfm5n~ zAOjaPQ!28qcUd{5BC89^l&TxF*(AIPwmGL%tnVgjW2aQ=E2(c43w6cgT9A55^)-Y( zBX{cp^7$LVR|HH^B%i;vLOv@6)YZz#S2!L~JwI|h04HC}JYPTtyxhPtYi+_YYte3j&YX7W`CZO;-`y~xJN7n}G} z0b|sblP`i-xuBkW(e^ukY)Z>ng`Rw|54fP7e6cUMpiI7Kr|Um30<;30e9<(+u4!`e zMb4yvU6_@517k5JUw>U~1k3`=$=8k0^$Nk*TAX|lyUE2c`AUcIF1TQW$%n}oo9YR{ zXp?sG&JZ2NSbpko};0?^+C`S+02k(oivw){CnyX39l1mI`Ng za$?NPtS#nd{etk>Nf@(UC79;JB#cE_DVVNNPQqTN(FsUX;+XkPI)9d*W9A>=`~?Nq}*W4?15&?%z5lW6aF!#~c}Y688KCEE13b zldwg&UL_24ntBq}1aPf@tV=x!`xc@+&`iR{VG{PNblPpmt0!TLU^``NOo3+8b}$Kh z7WKZZU_HP|+xZnjJ&d;V7Am<)7}I1F+i9TAVmn7lx>UGsz)6C+4S0%R+6KjT=DGLM zc6wnFHq8Yw38OuEm`uW4%yhjJ4eAEDy`1{OplB2pb9KB~_*@yLfDg^gk_Kg@+e;Cv{;r0w_S8;@%L3yAtC}vj+X*4J{(n4Ot zpm=?eBSRb1&6tEWkpYu1o)e+IHIpzN&eI^w1<+Yf!gx532io%?JkXvG;eo*IVpeFY>&)kM!q)-91I0?%j7T4n%ldx6; z5MVEoyL50+>0J@9icuo|^q83Of?%0|TtQ%HC|rm7Z=xVQnj6Xn_|7yy<_I)E9SO5Q zKB+yPeu31ZIezWFVm%11XTNw`TGfL%ipP}39zd{bViE^>ixA}0_cGA?B7)Ht2ouyY zKY^?ziGg0`W(?UHNQ?}(i&1(r36AjinT}G)sf)nZ5jgpfG2U-{Zv;mQNQ>4RtImMH{}7Otpf^_a zf~#d2}aP-D{Q$I+(sr(<&(6`AAEd!=q(BLkrUHS27cneYwV*rUEDC^xKVHC5( zo4C5EDv%4uYC6kWn`L@Ds$;eA>srJZPbF?adCI;r6|NQMu;p*u#1-Xp`dy^$u)0Uqzmd{7cJ8TjfLVcyJZ+ReJOoQL1~Vg z`XRIL1+(KOV!sN;4u?hS_?#F<_NWbvm-MN=jlAB+beHwEmUK$lk9u5W>JQhtBk2>V zpZ~-nhL1Khp+J7VZ?EpLUFh;*Up-z=B<}({aKW4oUWy7FGm$S*1GrkI9 z)lW<*D%~66DtL{tR5h;85-B#;bc9KqCs;8hBOV@%+-?#~$Emf5hZMR}Ks!RBK#REo z-xt0jN8tB@X+DgQsMt4dCLAI4fi~(hQ=J2OGXmP{=x4Po0RvhGbgzXVbhp|I-D;q4 zv+{!x(rf{}faZZFpfS5Kn7+JFogA+5pn7s9}fq(?}b z0RAK(d$}GV9SKn$XhukrF+w_1dQyM#>JidN*hs}%Q+z$T#t7*%)cbaVSsST?P!FSx z9FA5yKo~nfByD6c1~K*2`QmbIFAcoj{Sa+0&A2w!t_>#pGue#6RPtI3W}b+2+xJSr zT!VQ~FyCMVv?Cxk`bw8kGFc^fC_Eg3KZ z;wjbham{6Dp6>s)Ftao35fD%J_dt$-c)Gs_as+f^E@($UDsmL6;4c@()G?hxkz+Dp z_5C*yeZBi3S#`s;CHnfC-bJd@KMVBrWk00V>qVMhg}=%c;G@`Io4Q;Jy+YM%7N=C} zB`H<6LnM9+f>k3*P&cZ3{KoIG0D^0KHeuN>u;Aa*6)MG)VIqTlz@AO$VlA8#g_Gg) zSo!>(i)l`kif+Uy48pnxSnKvGi2Z?#s+cW4o0Dk3d!h@4fu1?Ruk6i2Te+Y?CuB3>)L-%Lz6+k%tt7EOI){r*eg!WPoQ_UXi4slj8Ocwa zj=S1@V{C%$Ik|VFYw~Io#slAGrQ<7TXr~^+JdF9479_So{qz=W5U|887;?-((^#+& zVDyhjGJPq);ljy2AH`y(=G;?2hU{o4ieY@}Hk`0GR$zwb6FQb9p2rD$E*6}y=Yjf! zy;SLKVRe+;KVRQpkh}_gc&=dd11D5&qp?dotWul!6&}`JFDkg0He7x8LYH&5ZW_DI z!-i>z4T71Oc%VQ8aT5)V1t}A%G zN2nl1|5Qh!O{j}L#cCl4UAO7mpvOUy5!-)y+fbMEjWEj50y5f7Z;yH3y#S99kYm&7 z9YO^v!F+1hn_|%VnO}nWS&&W3e0AHpU`zf-%KcvclLWN+XPAEz3xRyK+6&y<%0j)2 zGD^@2<~uS}r0-Mzl>1n+v~aLz>5{Py;;t~%fi6Q-K(7ogsLP?@T2ywoM-z z>Y5$_V{8(T6TRuZLjzQ*^G19{QfhGrqH~hzhj6>axP+c~Gtx`Dka@y5#DKq2gFS}SlN54oUmAiRcwQwM^1hG?s8b5O6ur&tVhvBcHk_UW}4oVZ|2p=+37!5QBD#>2Uo@o>+f z7dQ!hm(D9x;nqVi z=s971M)m#??(RT5HN5zcn2M|ha?YTLnvn_pf9YC_9q~LKp8QV8cy)Zr$IcY}>^m+roh^_Pf znYif^^zcZBgY(pJZxpKci`f~%3m(Zcg4(i8`Qz|8RDI$FrRu=_uw(0@wiTmIw=oHA zu~F-@w~Clh#k=$M8qo<#BLhRne!QvzBl&M%kMtXU%OORCrs|YV`6cIH>vij7m-nhdcs> zoQ!7DZN+i2{;^wOYB&kcJdl<;IjO=Y?VL~?_v>GG{2Qu%)7H*&TM_CRy1z)lM+a$VI^V6JT!aY+@d~P9*iIgf>*ey}G(#JB3 z@-vBWF4!~HFVXM%9M1D%#ffj``Cz(Rs5IT23;rD9@Lc~APdEi5iZUb<&8SWL(_lK5 zO#b>BCJ*xCAfTZ0U{XP83t%Uq>ca;`)gM)9R$8X2U!KBeF?hX`il&c_s@K2+Diqvw z4J3rBYd$DZv&O}BO)vYrC7TnGs%!d*M|`kkpHMQf$5J2EoaZ`VEpI$BzV238M7&?y>S;v6{i_CqwN^`}D;N5+tS$#f|zG=t;j9s^0cqJo-LX>y&VqzfsI{;%q@}N~YpK&7mOrpa)^e!&33R&ye#nwPkkm`3oP?Z* z!qAbDc;M-la+isuWT^u(qc)GB!v;bIX(9cmDm6moYjw&l4-yr#@YO$9^KV2)FPLo9 zf2Z8I0VF6cHu?NU$;03=9=|)Gm0aiOQzrb$t`4{*B}ZOdtXAHc(Ms;IIVFQSqtAk? z`aP*8^eG{K2LSqKQu@O$Mu+#ySHE1X%g|zVCVdI+oQ>RYXPUhB$F|sP@!N zoRX9Yf3m*=wiK_<^OK`d|I-gj>P-7IhSe-dB!Ay z3TgVc6#s^*??$I=eSqndLuNxYw7s91vA^pF7pZzvm+40yYcY^N+xJOY?u5dOdhmck zt=x;)`euIz;DYiK%RaY|Lb>sbcuA&xqL1UwG)N!U(E-s1Rfaxp`_1{d`1}@`%WnqH#x@oljp0-|)=(iA<0{jpu)ITG|7_NOs;kR&~b z{b?}pBtczHKzgY915}!tTgpmGZ@_A_{q2Pd-7tZXn})d)6}{1Pia^rtTGIDu+L3P; z@vc}utdTB6Iwd4e;1?_8$7WS?S}2E9fpc7{srTW!70jU=`Y=o z9;)7Ma8%u7+(+WD#Vyh~aAuZ&iX|HSZ^e@N(i@CF*@Q90uL#1Blh^~QUnQw!l3{W$ z*uDi>iN4c=w}aL@rxNP0XN=R^A05vA_QeGiY;lrfH2;<8;WKe7($Xuw<3?jFKc^`VM`QIoP#0?RA<=ZL)8HfSHtm{tWl4+L*7tgL9e}P~a~>Ml zbr}j0*mW(4f45yvL2lSa(mtl{Konr*9f9a?e^u1Qt8CN4(@}AUexa=`QNKCwcF2F~ z-Dc`cuR?2GXS`P8Qzt6h&XhRF850m}bx}N-Sm1yos2&Fjo6yte+p2m2E}%)Os?Ko% z>`in5105HjF}i?ZjtkJ>pIyK{TI(lK^f$!U?($iS3()S!t11(`Z^IbrITKvdQ#ThE zJ!|s%adbpCY}$%N*#sCczwuE*MIU*l*bFERN`<1mYfDTskceOaq6Z-)R(zT^V_*=t zvoWi}@4&}JAG|cKuEpe`C=&@qL;3jp#x(_o_z(`}{9ZylvLC|hnF*6}=o3Zi#@k|s zxB|pS^YaZceM5mdX;`5l-Y6|m%U;DtAt`#@jrr=7RVGD+e;!$?qCMND)x%GuRnY-a zXc8WSVP*6h4C4>_7$cAQ@zDRA_yS{w;fG^LadzxKllInYN*%F33Rs6s8*jjr?gorA z+H+2F0fuVf2jNO14dFaJ$!POvs5RPM|9arxP&J2fn;*7?J62=b+!OzBdV)JuxM@O( zij13`Zb4QeDU!E7;K`9rSMT}wz(0l;a(Z?Is!gQl+(}QXJ*#MoXG-E(!+$>~sUize zw$0zk9-Q24j}1Qz55_p5f2RCx@5+drAxOpgFp=h67KYz8UVwD~|`|fl)+Y zjnUPpGd;f>mkI?#Lo<{=lvZNk~RQkdEmCv?-bQ4`J47UxJ zy_|!VotO-l-P<4U*~$H6Et}jnT(B$Lj0+ZzjwKl+wBTPIZVHZS!7d8HQ7za5C%27i z!7fO_%(XyaYev^GW_&Y1G>)Z@KwDG^3RlT;;6Y?G{83U}7tvGakVmL+Gi)e)*bzl4 zvL9-F5-!S)3`M?#HQ$T^l${WYY(G7s-d`Hk_=S^8RsFa;;%KlQiDDJK4Q)HH4W>dh zSPB?3r9_=^8Ai4wG7FOGiX)Kg!T)KB$F`M(m(Ty0@G|wJc_|*zyJMmH_Gj4XR21&v zZ}U`MIVQ|3_8&k$1@LEL%WQYePN-)#$~|5_9&yc)5q094&E?~<{VRm0fk$jvnpYmL z-nLu^o-~imE1ai+mrwoEMe5;;;00LMUW%uIM|hcfgeT2Qxu7nq;@4wl_!RQ-bo1Ce z4Lqap3b*ByEwgPoA5R@mfTxaE2OgUzdMi^rXSRg0)ydPvf;{V5 z^1KguHkdqP7rv6GnsMFz;CP$ZEr&%_77K#iSH()=&tjFU5=5^(i(?ld0V~+5^}tX` z;$18!R32(n<#V&1+v5q_rF%v_u>I_CH#}Zezl7Dn!po-}t%rt+5=Z^ygTX!)m$Te_ zDN@C{d=yd(snnWSk9ZVMZ<;{FvdKgdu1^=)3|O%t;dY5N*uLt4<#>|wYA$#+p5!#< zg2!?wfL}(p17e@lzZz@Gny2gkMa+o?ay;-rY6sMRktDip?qWgxS3sb&`C`<69Z0l! ztYAf+TFAUu|2#yk3BsltnFwNN$>nig} zY>F1g`eQw%2}FATP-(0yh%A=J(*wdq=~566imDt0rt88T(l=v~VUZ7V`lQkyz!0C4 z1lWekBvMuB$_PI7Bp`GoSezaYUH%Y|ZIFqlq!x>^<4m=gt}+8d#PczKN44#ZYU?41 zZne2sP;HecfmGXzsJ42LwyV4=GMugg4fM}+l|IKQ^(ofDkY_b}o&4Oc;$lIb4J~=T zjXc+zJY!d(tCZzSQ_ZZ6swxt;tJH(&wTC~(zBdXIJjOIQF zMcS>#K}~YK5~IY@=ddmg{1?n##;is-#`P|+Wph?gfn2X`Au47e*i?%_j<)GI46 zw_cvy2=3vz+*Ka;6lij`(c}+skIv<`6=pQ)k0rvhvFZldY0QZ2FVLjUll>7^2bOYu zZh5i|xM$_aR^eT5EL71A-HKJsgP5rP!L@(|?}k)##Sb9^y+f#KyL^>5Umjtb<;OFh z%Qp-iQ;D7N80d0IrNyN>rIP6b0bV5_`#ze1y*+$TQGsf=P!dd;#+{X?P8o*&H6HVT z=kO6v>H7B3<97!q&8%%A?q7R2KI7UR3q;{#@O&;(hN~`|uPs4)g~!f}s>lmR#njNt zl4@)^6glp=5_MlyMvW~BwQf4aH0k9~BUJtE8(5R#Qy>eM0v_8lljJh5#i+Pl7F#2? zYfP4VJm)x>|%CV*~4r;7IgAy zk9=aMnqsoH#||pi`IHK#^BK`W=i_2F9}lznSTHA_GLZ?drp9hpqVuV6vC1ww9~ZOv zc$m${f;st&5}CBDv7^dW$agS*?)!a^~a)*?P zo`hUA)J*7NK4tz3@W;*ztD1)(Hwcc-fS4aCW@bDTuKX>g^0H?bo7sRm z4prZQr&?bYB~?wQcx=F%VO4g4QZ?JgOVckN6H=AJO5am+ZyYc20IU~~LxP%H<9*U^ z1H3>$wr9;<@m3nV*ahzv@Mr-sAX7Cr$Ga7-JOnQ$FxRu=9m1v8focF%TMe5|T#Rih zhr3d?iT6l!#u&~8xy3HQSCCvV#=!JG-Y4)t2BxN5&;+LR-`9uLcsH+}@vbU*40aX# z73&T)ajf#i-;StdLsF`y7{pK5({gopqzsLtp2u{?02kF;vmq7=&wdpP6-y#mr zLV1ni1UI1Aq3W`O((2veFogFa=_YI}=ZiD^=_+lGw2xi&7FyzW)XBQYHi`2mMAXQi z3QLuy*mTDUN?#(2j#W%#MRS&<1x8w87m2CAcT% zLh&V{z;NoiZ@g{#@7O_P!43pR#P>+J4DghZ7YDUHnP+Dluf0zo; z_m6>nQm6$vJkdf4ZY!Mhy}V!NG*CdBQ{r=EKU6?^%9_e}yTpnd@btc+Wb$u0;Hke* z2d&hVBA_P)92L)|KSBN$)CN8xK3Hpdqi`~y1e)INf>zV}1oSj*5YW@q1p`f8P&D24 z0DLPP+co(+i1`=Cha|e>fV1Ah#NekYbVZomtX-0=VyB}i8%VsKDvhOn!{NI$$l~}8 zv84}U@8usjuDN}@p!6mXbs%OGG6<=3`5z(04Ws;Z$KR|`$xf&)8gWl)S#89v;+>N; zVi$xFtMu)7kD{*#;P?YQuS4uiXx4ySKN>oO!M(ivaojian@))u zyusmOc!MLEo{NrVK@R`V&?Ttq;;&{YP{SDjX)H& z+80C^gEjuNd8innW~Sd7Z56u=cb6d!)I629ZD#%Z==C5Hqr-)&FpOHNXVQwi*5TMO zsGkN<`t`3Xp?RH1rOyc77d*$wDmYQW1NG})`2+A`O{4H?18qhgsk@M)i}KBynaJ10 z_-0L-`CCxuZ{M(a*;UHEVdH`34I8NimhJ|rg$e}7pcZOD=vv5UEzJMLR3NQY*G7W1 z;i5sUSdg98yqv7d`iw}>t|%z0i`uffSWwm`xt%R&Y!LIU?b*&$dO@^J;wnr$f5aY2 z{`%vuW@>a`dTkEaZ6=o5V~@fXn|R;R(H`*wK_~?M@jDbIcE|N_kwHbrw+R;}X5eio z3$kmC|0z_Qob`QJjS^1kH16#l_*cc&e1={QX%Iam&JlDyhzWhoAoD=EK@U7-AZ;-= zA_me*kA!CkqaHc-&n7u)t#@+6s8wT^xqRD|XzW43>}Zf`MNfOCP<^nlNY(JIr-$;2 z%up@~qT8Wy)%t0S>sCV1@b+h7`%n8&TJ<>xfp#9!hu|W)Hlu3B;mKk6faa`wq@J2J!ir~Lc^-kMGjev$w>`thYt-%|s~sH^FT)49AU%_IOfIM$ zQ{w4$IMQdKQA|7T*FwV+lRgT0AkH&NCNG4xE+@trY%#qnHrNaBBq}FV-S|*QT|FA3 z&W)kiqbPYJ>tqwY%yJcEWDk>SU4?3`1;J{CL6WfnWKAMGxR8v^!WiyI&g=xk8O~qE z7LXr3si~mFxu{f74^)u-X}_BccTB8A1=%0Lpn_b`RM0D^Ap7I<%9><&cw#y#$o>ch z736|aK`K1+c|0%XM%Ku^t%}uG7(I?(8v1u#%j97NWtn#eW%cIT@z{s_-@KO1z=@v|s(m!B#*Yj|oNL$ycZf&-F*2n_ zVU99xZ79^bPNslew4vMwCzKf46jm1r{3>I01?K{+8IFy%Ts?QemgTv# z?2@2LujmPd`Q* zA_cM2Kva=PhDu^3YY_uTEDCptzlj!Z1To>sb~?(avvJ+GIL_soN?c=^M(@U}$8``@ zl>9i{!1{`g78Z*Vlc-`b9YJK>!eTmf$-0G$*>wvKv+EWfsQ31GdDC-q-2y)6J(Rc+ zI@c@?XJc=m#@CZLE1Zm-0V6Ft2eouVyjQ00VK{9aM7O#~nGqiAifMQ~(sY09FAJd&IYj@wO9_K3dDr>O5(pDR?p}4?Be*(zhi+5*JBSZEqxP< zU22ZhVhp0}FM^A)wTYyQ=~_HGKScrdr)z9-m&DT+nu|vU5>P z+qvpM*v{3+Yw29s^H87Cxhiqp(z#AIC2~7gzF<+5&33N#g1L)=eFbwnmy6lXu4kfRH&bo8m_c3}J2{!D7=v>+JQEM;6`{~YA3!tLzXT^L#_v58qjmak^QjFGr9`zK|LLco;u>5sa zMveOmhMulpkB;q7sD6Jqtj7HRI`ZQPm3P_(h6NS*RV(hzHVhSj9q3k)%! zBB?$&3Q>e?qXvdmb(^RfcNX&Tf{iEby@Qovz!`Tvmaev(;uUVjnb?vr7MZTaM!5bz z#?|wq(k9cUXJYDf7VdUrI_Q)^ ztAVV;a&VsQw134#sJiLzQT2VB5;b8-I58R1B>Q8Rp72(@7$)-&O9473Kc#vZBTF{3&c#IQDDb^1$bHQ^4-<-(nM#8q_AZxO>B zM*7wfDm)wWq3BI zrTFldc%~CwdRU1%c8`oI`44BD^Er4z)otI2s*QMpgrr2fr7d;dh}1v5_d}2y>bxEO z4-mBP{j9$L%R=_OpSrnlbMoHLdS1ix==Xl=E(8&5)itl`MSG^x>VE8EE}4Zv@|KDF z(sA|9+>*_(y;WAAn)1^+MTM{Bro?vJ<*Bdt&Z-h_j}q*GLQ75GeFS%*H-<*Nd$&puhOdelt}Ki_<%p&OBx-Lp~#l555|@k ztq*wKTozU5_b5{9{A-!8JcsC@Q`@3ecKZZR4j(u~8DtL_qM2#EvqM^4cPd)qn^5G~ zCt~V_7mIj}WW9TLS4_&o=VA|Tv<9z3yn?;X9haa+U%o1-2DL9%9k)T>nAM?F-E=qJ zr+6A2?f?0d{dy|36W$l4qAGmCDjbZn0($fHp^m47f@k8D=pLc!w=(ACijJow+ke&4 z%jntost9)hH;oJHS4H@mh5f~GVO|w6#Yfe9<%KVnEUdQ9w-b)by zmVcd6opDp|+cEpO?7)n=Ucolv5>&L~p7N1!IR`97hm zwfEoQpZ-s!w7XBKXU>YM-dH+}w*4ug;&0(Jo(?F2M{HT0r-`mCs#n)uibr^b^D^~PJi=r12(LUp zzo*n;y`j#^bSV0-qsM91ZLdo;n_}dM&kLES*tMX7{R|%@$u-J&qP$bop7!lh| zMJJ8Rs=d!hsD5kn;HdSwUk2l`4>64GeKU3z;O&Hm`=wRyLGTx;{HW@3P@d|2B#5m{ z={_i~Ze3fTdf$i07XxRHN<%+qPi4@!X7Ba4~9a2c(?UHX68V8F8{6gUv)k(So7s zgXfj%%|v*ts2BHxWG?B3s$ZKBR}UQ=R@b&c?7HcVxC-~V1XG2Xu+@(c({5cAa<5f* zmuJ%|au@i{IV+}a{Uo%dYZdWKk#V*2y0}{OIPN+3muR=t4{}we8J9_}Dta z>bva`R!++gMR$Jz@290=s`n!xyn7yNDr)H+WA-gnr~L*8@K!!bdukmw@t_yC^fbLa zW(g*>wiuXY!R$xf02751RpC!Kb2;hzn2e0y#ydZJgQ)9EY^=QJ^Hkd`j?&9;W!>BI08Y8+<*frVh zBedapcundVOs2bqu)#+!r+V?Y0Ca@UIY?5LwQ|9?Nd$!PGnfqp{U!7Peh= zI}RPvBf5@F7@cMyQ;+ZjgoYNXi;gQ+-IhaiyPe}|=C%1y9rql9l-VR6!P7gxh;DgR zc;~M%GS~CaW8P4z$E8vAJf0@W;B&7h%`?7V_Gh2_^&RZWx*pl>eivTVszjDoBZoPd zsQ$9M?tnbECVCcLM7j`@(ehgnNSC3Oqfg*XyQi+hQ=czT%*A*&zv73KDqjKO|79tj zI{$YPUiF^1cd1$oNB3V;{J*!Po(5YfdMoeQN;WUkf8`!e!2iZd{8x1QAFI=ApSY^R zA3LCm;ypyuH!ndLy7cn2TGKbH%GaUmCVqqWE;znKMQ^G~sPUW7WuJh9^oYOgfP;~+ zIkNmwEK7#*EKEgf!DylAHdwk0?)?7=OveAM6|(G{tlH_6QdRymtH0F^X%#JApHXzf z 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

T1BG(mMP(g7+ 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

F}#a}V{nazOB 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

f{hC$Zh8gNYyHRLG8yUJ(9{kZhYra7Rd^ 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
    6=i1h=x5Q>^9!Azy5uw`@a--aS&JUG@fqJ( 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

    ^D*H-B9xgC(r8v;zKDawGdlrIn*5h$x0uB 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%0DO5o=R)azv;=`R#$;&)x;|C-VM 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νGGJiYH<@uicE4&V}ZgrVB z!}q*~J!15nqi*@PnT`D_>?vnlTC3 zSDIo^2X-lUe7SkCKEI9eTFVYb{@~a%$UqD5$rVkmlC&UDvf8{qi?6RfL<^k*{jICj z1}#Ux=r;cDy1EoOo*dKf#b9=83Z;r3^iWD2llv(9hZUBFYAN%B*_2 zbn>yjpuxoe5#}6KT#k}feUZO4uxNK>&0TIfSvm#QANa+}GJ-t_jVW(hDm1{KQA@XU z5Sp(Q@3$vO0V@P!U#{Wv0V1X5rNiR3x4Gr_Zt@?5mAHvAG6%FlyS=*D$iMft4{Ms+ zr(BsW$z9!lJypqEzs1XbKUgj}pW~bu+0Wy13;xK-YIfs8Ra8vIYOYZ8n>SB|oKRx`GNJfjDSgk21ugA>1<~l*;8*omR^f z)?RC7ZIftpUEwS>nD+$R9nw7vxYK?18J~Vsy@g040hj$|_9{C^00G!dd%m(q4eQ9l zLz1;Q=TzQC3xjh1bO$+2Oq;vQ4V_vQ6>C4fr4~X31`kdUC2I}Lo!OcmG1M{7e8Z81$g*_2Br+jccw$40f1rgIEX8o1+MUpD6;v))^{+aOxHN8Kud_N0HR`M}~XSX z6%RtkA?RJ`!&J@`?EC;lz3Mc$ukQ7Y9bqKp=$p1osAr6!dL3)WgN=+bDqC-4Mhg$Wa#8Q6FMmC{p_C{e{8UKFamsZQPJOYLG{L=&9aBEA+Sa zd`dIHwdOucd*AISC*=XZ$M${ql%sCAbL0gD;TI1PwkPsPd?tJrzThL|^ZflfJyEPz z?}QSr9`nW@G!yb@DK>Iisb?ZCA&-U?5aWovSgYDPWRf>S7y?b$Gjo~2No3apnuDH~ zwwxikH}D6$mDf@5Ib~~=q!CRTq6lk+3PSh3LhA}?mt?DoovV0{0mDvRB7@8Dru zwF$K2B}YYxtzo#7&Oai>eN40NzG=j2ffok~jINe6j!=4fl#qY18HJ@1tU8hBMsdi3 z{aCLy9}9jfS{RO;gcNAh7LX1vngmMdZ=bz1yZv>P57QZLqMjIY-gb;{&1xD558>MY z-Oz|u73;Wga7OP~Xe4`Y;)J^0O_(Ww{@~5(R;XFV6b#!6f&l!EKvM0i!`MI+xnnE{ z?(T{VpBT@98A7Yg8wb`b0oCPAu}GH?RW}$NgL`v#Q886Szu!=~bB7c$YY`-Q)GjAW z=odlHds4p~n`hb!69yP6h)I_5@6>6Vv_3j0JM?WvV&Hcv>t#fe;=!O{Ae^D_3h*=h zDSdR#DRkH}mJA8M_C$f(kY@M~YG$s^CO7_lpRvY`?V27~h_}<$J9qB>U>E44qo*pG z2r8`IV~gy@{$BTivt!P3jiYpSM=<}&q0c9Ac(OUoNygy1HDQ5$+w3gzmm1gKk9;SpBHb(BBje*3 znK8HP7vriKcZ37+-w;Vm1;eE;*eKX!(OR&p&;t|YAlzxnG0wm9Z-6d>cXS2)3Z6m* zP?L$o_Ll&5H zIDB&^7CrcQY1SSpOCB_*s)aR3rt*9Z$A(}@qpM%UJT!@_uP48Z{^?hv0Hn@n1!QD` zh3+S@2b1{2(&%CrWee*l)EN|S(5&3yoL$2N+AG-+?58tj&nGAFVeu>G33$%Qi8nJM zVhXGDzF$-OcHj)Rqe+V*tA;r)){B^~Z|g-3P;Wh^86Jh;_J>kYw*y8%F`84V5|th7 zf~Y=LLn`kL7M2Fg;5LkdU`@p`=k1cH7>yGK>tVpi#{?x=U8MpIW6w7|`k!0Cz?gyt z#a*XW4!q6;%M>dY0+;siL~A%16~u?C#-eb50bdYK8)QdQ;&Iz(;X!AqeeRsn<)dlW z>l#k>mJUX;uf^2H(C@&4TO=^%i$Z+8)icg!CXvMp)IETz0gLCHb)kzhA^v$ti51-z zQIt1nOshHoI(`jnx$lZ+un#%#inyAJ5|@`icsEidX-@cU}@>j9gx=MA#-&D|Obhn%`cG4Ejg?36F7`ik(>$`Att(i=?oRFpe z8&;y(kizR}GkH^qUE6VV?SxLrey`^b{UrEKNie|!^Ud}kW z$ZNd3X(selPtUv6AMlfMjzx$bg@D+aA|1oVlaD7+JyfWZK${NYQR-2=W0@b{(nyR6uM<&X+-ljW#sHcEJ9f3gP0hP|mFX3j`N9E+E>!Hfi z9{4!bgl1NSmJaqNS}`nF^*Wii(X+CEU1e@TL%jxtmHewWwJIWBca_k`2HIUJ4yiwv zO8>oX+{N&=095IDq~NDwT^>}j@tvIT`o{oj?|Jxw%H|bqV(CXnhn{qtw&w7s#o=V? zwUpt}VfK{;)a;M`VwEG)J}iTvs=kt2mQ z-hXP3`yf9d$WV|Yc#N_r%j+zrpWZ@UaP=}%sum~0(dM?2&gmby<>!)%Ia$R4dFr>F zc2HC%J9F&Tu6xx+Jqae!W|&NWtRVwu1QDa)oq~w|ojx$(SQ!tWl(4ZFPx@z! zmVZpU)X(Ir=`D8(%ITp@88js?^jfE}jVXuHvDjmy;Xz!s)ia$5(y1aj+?i9peH~(Y z8co;!8hk}nP<~uDMOi`+3OSEb5#I3*W$7$^J|}xk{NpCvjsAUp z!w%i*<{C@kB@WCFd>0lSn#mX+xK~Lhf*AT0(U%aGIJL^zap@_6gn3ekUr7{GK-U)!MywWO#fk;B z+EJobhyG5X_Ye#q^X?+tTfI0*YTTd;e~+TvSU~zudLjfI^nSPUce){vf-3Q^>D!!+ zIq0Q?k1Fv?Xpsn9o8rY~w1UM2LZJan+2ImFseKYON+FSR=bk&xGMUo3i0=;U91$NP zDxY(MPS66lWAI2|x=}ku!Z(!jDVp)F-K`<|yeDF$Jcdfi$JC?KW==rz7dGs2Ll0Z$ zw`0p)v^NmhO_lZmJ8wFh|8Go2pM#Xu5HEI40=F7$!6C|KnfaG^S}WRYH3IctQ8fDL z`^(?T2$eOr&!TvJDH~(e85ROW!Xu##)tx8><;!A!f&02KVt>Xq(phn^2+bJY?K)mT zwhYxW)Y&W1;?HPk%3|lu?y))djsNh#%Y>LDq$7l9V|r}iT6B{dc=$C(@Lp(d&_a8& zzKz09XU0FFKcjaWI(38AY+;6~*I7NHhccf?XB}(wU?=GU4@)29jv#3vf6r-xO*pn5 z17i0K%=ST4{a)L_oJFmq&-KFocDB0uAZqIh0=Z>P%?b`2ozus8Y(2KxejsZ&RaQDx z=#znp6UzXle34bZ-F%=;_<+Lhr%mtsIHmzm3xPVcubrmD--_;jMM)ozl*n;VtU7}6 z{@WM72`9A&%mV8oHOW`sTTM++y*+p0*=yTNaxk{PE}j9vj7-jrjj}m z^A7C%#A0bILY&(=?n+F~j9mb&Wx=IwLkUy!_C>$nh;jzIUFFsL_FHca?N{Nd4Vi@+ z9(ng}>x_qTzfLALG%=dS9>$~CmkH)-34*7vr)k(jS`4vgi=Jw>PnqnWK3%u3p?EO; zv=|nFHCip9+$u`wt}rKxn%Fw^1do}irxKPmaZc)$X@Xg;$)_po*zE-Lz~e@Qsj9vE zIcMP`Ux&g4DT%)Rf*D;m>zdAlFigSlVb!tY?eP?2O0|K?&Pb_x)k~6w>J{mQ|I6OH z@YZo<+5P$`PNvatl8JEZU8N`n)UrJ7wB0r&KY(cjMBREwj3|=kB_%mPfA{}y?S1NX zU!-Kp(;fUV(-tM(TXpKxIs5F#+G{ZkiY5iB0SQ9#wByxS4OZ0eOC$k<$V}Q=#({Cs zAc%tV3Z6m{B8yDIH&q-NT4_+L^V3@YCG35}8BH>WR1f6<{w9MCiQUs6jJM&sNa=D*^IE&3Xsx3$1{ z!7J`5QJEijAdb}h?C2RB{(@U0$E9(gjleppJ6*emCZ&qvl&YziSQ+urTOYp5XwXBh zVyLrtf0MG%#HK@b^EVdP4v&JobGZN3FwEpK0)-vFNB!@}5dD1|Tu8Pu(Rfga5fN@J zAbXaPhC;DB9db~XkxtSwo?r&wy~DF*WBF2kdiO7aku%vmcY&?kuNMav(Egd#N-nI0 z9uML53imRn$82F9!km&w_#Fzb7K-^U*aGK-w>~DymM8k&G{}J!Gdf%n|D8Wrs7X&3< zMWqY3W#2=h?u0ELJF|cPmv#FHgVS_yTa@SZ+tZg&Cl=W^h`q>gJ1F@>_J>W{xIZ{Q zqSbZ%+Q>HyAS}u@a1RjKmL)A~xV+ZzQ$?VAsL(rGmeIW&_0R{h@1T>tB5fAhU~ z%Mo{Y;9o!nh!cO%!r8%Jq#twce@hGZbm}W!w1YfWDu0+#=6v1a^R2UF1^a5=E<~sI zc(m>!uSz!{ck)Ai``B%Z-Nn_>Zq`Hc+;{%YUyS?^Qfn>V$tu|#a0ej5X!KE|>BgyK!rn!-j-2QL`Nk-e5uixHUyQqN^B`9AM z9gC$5m9{ag0Cu>ycsJl8ruwA&n6ENxhRWb}1*v2}vvG46U?VDi?&{ZCc4M)QzF9ae zd2tj_(3M$rB|N$KrRrq9y1-oxJeW49K|oy?-`sJF`n?rdw3D^S&Z%RNNERkmH-e?g zmed>@i-V5{Z|Hcx(3dIu;t-u#0l*R0>#PQFSvAn6dY*kYTjkaH%d=Bpz$GXY^L3*PqTF>Y+6J#$Fe4GU zS!M$;2q2JH)T84z3dwbj+SfVQYEm$KzAPKun{|s~d)(T&`}E@7R(P;@7`-#<%)_(( zRG;14m!#5wP@R0Sfh?eMsINAqgN@mOxpj=Gb-bqOJ4th@D|iv8S=ciN2$OH^U37_z z$N{oPtN4@opj8LHM+l`!+vtAYj>-Lixud_CqHY{vZItxdCv0I8Z&PR9uP#qe2110CDsBO9Yp`?5y@1 z1BB%S8{D-mDDHy(#n67CQTn#Hr%@6Osr}R_67T7f`yV{Qux`MJ8yxAm)&NjwngC9Q zYKEkm&rlwf#X5do9{(+q2QeBreMCFj9L|fi@7w7e><-1)joA9CrpOe+69ZEu8Fz@R zp^B%Fr5K+9hAg69QV8_7lO)57mKq%w+iSfhk5~^oKvISJUEF53Oygei$J~-YVsY)? zFnSf&ml`$m5`>=m`Ncb;g=r>2ZAh3~j+Cv(f_P_P6F>ey`9j?bgKHUlKTnk|Ml&q9 zL*=tsB;i(`#wo`{cE?unl*A-6P}qUobP zSy~L#EH(tbgWqf&jrTcQGRxxMI5KU2+&jdrvg7@|Kbgvp!KtdXZfe5{p|#rUk5RP> ziU2bVz_zZ*YK#PHbN=?iN>zCL)s4#l~T4mhiIv7J^lB`a&B3}*5;^ws3M3Fa!nYM$>ZI%^L-{Vu`{N$;F1$I;! zs0Uu-EsZT-2@yk_a>Z-r0%;J?buVv(6*!Zi2bW!`QK@gUs_iL0iBgH>5n4Rl6LBct zTZs^bh=3YIBm9*3I=yQ@dBf{$ZH$x}~!w zh4wQeci+rl?i7B`&Z1;-&Z8KiQXd*EX+r;1im*zvPTb4Vrw&XPZI9n{~ObMazU0 zh65_B=_gv@=6H`uAg=<1`lRW_>NBK})k|@LPymfDTc(S!-_NhRWO?>LZ};9iO8rn7 zd(jrwa%f4}do@_??d3uR_1S;_;xqd>Jn&fKa4_(18n%+}3g3r=$*-;W+pB@Y*fy8- zyYp8U7q8J;*N=bZ$MKQFxI*DiG{5RGBoHQ<@_@!pD!{j24QGTELwCBhQ_z9pI`288HE0S_~gR8{LWFZ6`#|1FsEypPG)a9Kmq+zsY2ePfSkNYXkf!Y8`s(I`|Jl^y$?m?PqsFlBd5^fshv&^>lEc40v@7K5xS8O)0CdjZLVs}e@*^qF zZOU#9n~Ms>%Bt^4!nPTHra4@bRd&aGvdYeaC9zB6jwE=0*IhMa&{$#Mgi@rsQV5tR z00;@n19?h)Sl@darT1$U)pdiX9>pk@A#m1{tqIKP^wmS~is@uGb0$1!-lCTD*f_py z%D1hF`Z0sgVwxDii&?gPj;>yOu>n<^fruq1w)&IhX8d1YNk(D37(eK4 zFRt6rw@$si~Nj73S1KfGK{4ifK2ER+uBwo>W(*vf2bs^;(xApT$ z?_4VUktCIjU?~oFBrz|V*JQDkW{MJT z;v5fiHa@*RgwkHh;T=#(G$%n+=42JfFt6*c&cX_MZQzo_lff)|GbAAw}v{Ky{RKg z-FOnvkJdfC)mgnN=N(4mT_PfY^Bb1suP3^19DN)9`XzsJ3&9C&$v)!IfC$Ja33p(& zayaTc`17YzSoqAl5ROI>!p@wqT++>rdS20qrBxH2hJ1FeD_wf$H?y6HWcBBeX(IYe zW*6axXAiIrA*z`ccd!hjwD54m9oxzryiB~G#htX#18Nm24*PfeE{esE9(~khr?2~= zU2$mFq-8F5b7-U4k5T1S zovA)=nJt>WmIFHT%BA7Y9t6q_Ecw$?1Ytr&x-k z!TS2>ik->0HA~a4QSi*tK3}Cxo=GFZ{3j;owB=;?Xe&smLtSEQI0sKJ+YCDlQ z`981>0iBCEwO3IOI1D~gg$VVaO6iq2Zf6?hTVr_o3Ne@$*MRG;Jkjai57(accC>j- zgkRKoLT?~p&txT!1xvY?wpc-&OH#)MGgGchaF5gXmbU5Dtu>gngY8Zsd{qhQmlh zy9XF*6bBrtwV-iZijVNFLXpux4#}Brb8zrR-ZPbE9|u+TteK&vClGa*x)}uiK+n|@ zmuoZk^bZ3BJ7ZrO+#S~h;cS%1$fRXii`y5-{zIT3o_~7PMZRfNl>g2Tu9`Z&`~!@+ z*-QEpUUfLGt`wc0SvbiYs@Pj(9hs?;l6g#G4W~k!yN{#Q7Y}A!OPj*>&P?iNv1!p2HW0!GduT5os*)@pg$Z65#eW9u1Y-v0Kn-}Od>dzF|% zHUN#b&?Fq=erI&F#+=+0k^y*!Hyh{y9E4)E8#6d8gcp_+Kag;ljLVRak5?piNz#mA z{}XMvdBKS#N}3urXyEEC`V+QHm0+01B1JfRq7{x5(I(({z$PTM)Cn%Ep-`sXs?Jvh zDA^iDjG}QfeB1=3t62xcUb8Y7hDwTj)>6iu5PKHw7aZDadJ#g;;PE?AXqesV&c^Da z8$@@l98+=zKN9edD~z@fF-izRLCnlIH~<8u$Yo?qe zSFNhcrsWVvPcMNn+TlJvHwh~#vxQWIbrjMWh^awXQP&*PRauG2X*fU+6&(xJQ!gx^ zAES!VRULgvh>~@ItVB;Rz*r2DkVc$-_1RxK>+lW^8&>V%$O`E&A692jUnA2BIf5vy zGKfHwz66K#V1p3{xA01%s#&+Zbza>YlF-k14_ z{=5w7RznS6Ti9eN@KI-G5nJI*3V!Ks(YE2dK7B*g;RpV!7&e&d;~$zFeI;OW9c;F% z8WcTpxauLTr-G+x7~YM1a~CWNVeOdt3)4GO{G|JT-lUOO$wF(H;d5J zy|g=70FF#@tib}XunpxL*Aey%s&i6RtG1dh2Vp!1R20`|?`pD=HQ;E2O`)&T;^vWt zgFz=FZ?tgNLd><#8Qq@H(Lo+Ii6y%@05vgyY92j;TD*I2ETM!Q*Ep^$r}O$uQ+jyM zC5y{Z_k4eP{o)!#3ZOa7^hta3=F;9(1@y3P;YE$44Bb0yY`8FZWMl;{xE;mntc5}c zF!PuC<2l=vHXU3#DO;X(pkJgTvuf!)C~(YM>R#C#xOYn^I4f5OZI_5JAuIC)jToRb zmjD=aCo6pqXepe6y<15@Ij~fRurC13n_o41AlVkWfT}Ef1cpzIMbAUfqs*l*WPkVb z%Y_9#^dr$1gGE1u17>i<^=FhUf+%LR2R_Hb?9*0Yx-}8$u$NLvhnH`lSwBIAhmYca zWC{F*m8@Hx`A3IWIcA14D^BzA1}TY_bSfSH$qLsWG!-MV&diXK8A%z9qip;e4%Suu zrelJSK$NJvJihB?0*XmaBI|pZXLq9_pv1wNjb>!lQxn!{YU^~&C8x*_SYJt+!KBl+ zO-GX(9W~D$=obTaRf~+~(9o0EI{u=pQ+A>2c)b#sHq zmvewlZYsj=L%vHs$CHgyZ_Ca!TG2ei%f41?LJTsafHgA55XVL0`TeQ4;ZT1`IK5%E zggCU`>g(ZXig?S-Yx0#%$EvJ0hDf7g?AOhnQk_N`rhfaT zHs}n0GGFTkl^H6(=-1YL)DuLLQPP$75#AnH?BARccwhZ`Ys9ht1(s5=4jt@kf_b`E zyOP5!TCYh_aO!pa7}wru`l$+YfW16;Abq#~Kg_OX?bC&85z4a#{w`gF_&QQex$oOW zhJKmTY$a;}KAR3aehoSu7o8~V1P;k$6O3ebsym6Oc;T1>wwnY+UMcU_h=i3EX|>X&cGJW?v}<=vG=<2hiI&(@t?4J z1=UMoKsd!;!~3wLgfK=z>YM^8U#sDq%r9)uS`%o((xlF5WajZ; zD1Q*UpU#D6XZ;_ZI^e8u3%I#8wN6$TCywK_Y+@KRtOFWN=sOvk{k*Z;RW7O?hCCxv zCM21BQ>NCVz!$4`FCzAiKa#N2&a zj$bSiy5_zv7E|P0IIMl}AqVJB)4+QOs_A&hP4_OR*=Mov~j6 zx`+FyWnlEwHH^g&*7P(%lvvbR(SQzfl*XrQ1y4Z2HYmca(w-`!r!PL?{Sw>@pyQBE zL}^JK)I&V4eR^m7PS*h9XyC4-d#2e6@^LG=2Qx996cDOY`J^KE=GtKiL(G@}+bV}n zlK89hR3RU4841BPO*L5$Pft|le0A?Pa&J9JfinhOn@KeAt@Wlt*nIkCAso2MGTL^? z2NA@sS8}0-OD~9ljpsSLJbg$ftS#%(|n~ z7!2LyB+Qy?cU^>gXZRh@N?;U7&=hri1~bEeqw!c>kG$_$7z(BgZ3%?C|d@$v4_F*@XtO}D<& zvEwiG1Eqg7+xeoG8P^++hcm$b+_lv{>pK#Eke#CnS*=>|a!n~1FjrP~X@G21l66oP zS?PhKT&;l`(&0m65R`lKPX~R6G4;ze&?5)9ujYhB&Nmz|iz1zUx(9r!D&KHqr5p7% zh}%v4C`CtAE`}`DO?OsVo^OO!=vG|C?x;S3`4o&}QG!!fFD=6fx}B>dmbj*;0x57+ z9a7JghO3WXoL^bh^P^Xf%!8adN4N>aSE?aJvWk%8$m8$`jvm=_6Tl36@9^^#XRaO~ z>(406ap9C4M9zVxymbbdhrNhm z90=--bDWelT8^4-uELSXff2#c--7uRcP6W?$ZfDT3n9TxEyk;RJCkt162Slh72f{n zv-j7UnA}_WxLJ)1Cg7NI1z}E0lE!Yf3qCSu>260cg#@ZVak_@1fuyZ3|9n1t3J<;o zFCEil!O;96JYRfZGjgc52}&kN76GyiEmGQyW&%?w%%xJMq81en>RW>jN>^={Hq=4e zqHQyl$0RE^RE*R&2qi7u7qt8e<4=?D^WpDW>>-kH1iVMs9uem!vDG^3 zXyGec4IqPW?s2ppFx-DSpvNfw7D>SW;3v?7h3DfB8eDcxXrA>ynYTY*@NNVzFHWh) z0EDwYebEqQ?l}MR)wAU$HZ)JuZHd>}R51iqw%V&%AAoGQ`hTsldv{41^1sHsuz;Vm z?URiPQu5yYp8oAGtv&j}I$5>Z$ch4*#W&!yvPG48Ci4mjj;2F}f-#&(FqVu9<)l|e zV>09peeumeBkPWOs#6l2ct!{q^p=w|&fx61sJ(?6^uvemuKV)g!=L#t9bX5Y(NcYK zv&s0GCAEKG^kA0YCaY5D2`kX}?$U;K9$u++FbJ_orPwWyjw>A~U!E?EwNKbGHqze? zcTle@%I+ylRb`DLK)CZxiAN{0WPBJZ=scJ(dL6M20<~{r{zT@F!VEGlHipuC#MIUudkFhWE6p0YBl4}yovfyta6Z$O5 zQ`-%c^1ELcPE63)P>QF&wklUO_1bA1slJQI0IdL&(N}amzwX-0nq`uGB{Y#m{l?e{ z5t`Z&FWGCBlcM5BmHx&7C*a!zO{D!jD+*B_+Gnrocm9L>4?NvCU579rIgJ?bk1*;s z651FvPDBa6P&qi|`UlVkGKTc%r z?d|o=h^;R+Tx?zu~G4<6D+L>}r}0 z5Pb}KBR-kollCN*L*Dt+gB#9R-^m+Ci0c~TLJ}zY&V5z{?b>q{ta{jkm^Ib(ooFN2 zu*;Mr!#En_Y7Bdbx`veKkdM^cu~owES)?SPcquqLXur!)6I^Y-RGW(JdeQ7n>$)I& zIstW++0marUiVRM4jt~FFAFieOz)Bh8eXT71}K}$J@jECCz*-mydpYfEUh^MgyrSIxArF~T(F(h{c~r?q@wHV)J!w!Xf7 zb$l48kXfbnr?a~IjTW_wC*sq6suN~o(2`iqD?st6^Zbv`;{WYfx+vGb?tSh%z5}+2 zx$l!_Q2@IS6_2L{vziCuk5HOQu19lM8iHH&! z09T5?woj&Ukn?prDK?gp{}~D2t@aF4)`E4;(p6HS%1W>tMBtc3d(uO|&8V7=mhnX4 zQ5m09vRBE9R1&Zf8>U|b={oJ>{Du7y!P15iO~~6&Hv#QCkfOyHta=}00IYEq*2Q1&&byE z!zp9GAK@XB6oSkKGQG?vENiYxKCW!~5!So!Y$xrDmu!CAPys%3bn@g7E zF&AU==)aS>AMu~57qYhA3BLw2M<3VR73B(=iqO{uvq=hIxQ=L1;9+qCc2A*glQ1^* zxgFU4wNa?ZVw{l%9$Ja^Kab48{)^n_J*Ekp^NR$<C-j^8JucY0XoaTC$s5H1*96;olfSD(nJJXvoND1lRS(5u(y!aB9f%kMFT37J zU@gGqW4Vih?D7eJ?(VY#IkgU&7AUj3s&65Ku5c@CUs#9Ew1DZ>%`Fjsm47c@)GOHa zfxzkvV~9nPuIa7=P)W6_SW(Ke-*U*lIaMm|*RWZv=U21^fsSD4`qhAc%7-OppYof{ zPky`P?8_%_^PLlWT0sgumm`iMy8=dIZ6)4}4sVE-vK(_pebwuaA+4>wx0CYZii*JX z^q$xFt6l2P-5GFUZB;2#GEL4nPWF~x8+3BQdVJYC^{g4Bb@msJ`;^-oz`+(_kb`7BQ0<33Mq6os2d zU)K1@QUNP>g0Er@M>?r#fSQ>bM)*l}>c|fgFx%d<7|7*ATSyUE)FOcxYpS zl}3LVt)l1*@=G(ZCm9Qbgk6_YILkU1|I&1T0DUeHG~o8xO66TIdiP%n3J#u|BR(cT zkr|3+uAfO|tO@*X-ejPht~dFgPG6SqlLRl0FUDoh`I-RktXBz%BVW}XWB2=PfxW7b z4gT`p6x+<1|2;pMP#DH4DFCea10xoQ4l;hk%gJluhCT0UuO@7*p7;YmaMY)~zJ^kcrrjQZ`JJsUU%F2TcG=THX6p6rE?;eeDMlnw zuQ=JVet2m1w`Z)cR$sPwQFafhhp?Y;jM!961D+NQQ!(Pm8LvX<65%|b+)u&pXquE@X%3W!i3btH}Iv+hS53`wQ?wOj;rg2g3#)L?O93jksEQ-!+gv z^A-s6gq7L*nIA7X)c)MP=VK$?Rq({z61piEY@wFJ(iH5jEb}+1T*}?l3mKb9LAhWs zI2EAQBk3;RRulIxP|N;(&*7$pOzT0g!4@+J$v-TqtpvpM3!8v3)nGBWRsbm?iDPg~ z>Tg=p^Av#xr%oz%JWb%I`iI<|LvgwEfhcoE+c>w@KC9lQ?{2w)*@bnQ!947PvwzpW zEGBOjsRsietzOab>Tj66jAG!rC5K4|39qDfYhF6Mz!w7-<_u!`hV=l9LhR7&G_|4Iykhx@mM$*da(8|t?ySlQS`==pW;C( zS)Q&6KN#svNK$&uV%JV($-jPvcunRLd#@PZUAQ@foC$i46!0qqcURt#lDQwH6#8CQ z){d{W6k%SxGE*1Y4DB4-ypr?UryaOBYDR^UC?cG2U(IV3?>TqgJgCnu$zycar_K0Q z4z%(|meutMyEWI+v}^Rs+Vz_H2VFLI4f$7RU4Km(l~M)c?;_blJguUQfCc!X&F71D zP7k3j+ug-Fw^%=1u%`MMEci#=FNOrTq|q74a-^L&_r1%%K2zB7>j^!S z2+VY?W-2TR-#Zpo%;Fl}iA6{r6zvWQ^T0{G15~0oCKlp#M~4@1ASTW44>9LCj)L8H zJf=X$T-4V|Zhz=8ATh@(pUZO&g+#AM<0@$_pu$1{Dqq2BM(Yx5td;L8ul~kd{O+tx z@bu45H?PK(u)sMQN)mPty_;zB3rIP9kgE#`4Iq*Tr%4e5;Dj2Za>v+4>Q{*UosCE7 zmRHNWpnB^$Hgkrf;;cJAd2>p6?7Denh&=AXkr>m!O-~{84Y1>y9myPDO#*clZ?u_TSWbe!zW^s3XU3mnHqN<=Avcz#8(a*wMb%S+?K0|@Xt7UbRUeQS zlWi5DXBRjB!4@V7bo=v^^62d9CGEt0+wnG;7hq9-bx%hgh4${O>K3sz*uU4}@9L8h z95%!A+=RB((AF^HG9m802I?Ztkx!~y`t=*qGXXhoybl-jPw7DaZi6ksy&ewTef`jT zzc8iT4?oU8b1%|@5BYphGabANRjxvM|Mq+R$3N+$W@-VFXUWylZGd`JP&0e!MwU~} z^~LuxRoIh{czk{R&IC9k>rF+2;~IWEloE>`3NI%>858`$PrD_@qdg@y16IwD=P-&K zl{RjFKUxD~%5bF6-X-XEA(}XcNGo@n4~* zZhxv(9mDI^Lkk;2LDmtJFXryZdlLsZFpBQg2`Mxd==2Kk+{R9Z(3dcw9XaQsB%zrB zfh_-EjGkn9tbot=M7Ps|&h5^wVQ$i?GdHDv;A3#CQg zs~v1YJsEH+cbH=O)mi;AZSkk%chCz8w|qgGIYGUJZ|E1k5F`r?3gpN-`0)KZmThOo zaqCE&pCNP0syH9b4Gl@v#>e*}#j;f2nRkdDVNno<_qPbWjFS+~xX=o^*ac93?5r&J zaSoAK>{>V#T&xKNB05aJQ)zq^ewr;Z-&enNIr@@ZtZ>U_*jm*ueT~w?1^-M^AiubZ zi+avx#^y&|bmy^u|Htr=svJ-Xjfjj22~*s}#n6TmaJFdvHV&0ENtowDLV~ndhu6Pc z1z|=0ZRlOn%X#!j2E@gAJxM9&YIwVF=^_{kWIM=)hQoa;)ie9}G_+wc+*kL}*dOJi z_H5P{|K-rLN<2@%0bEr#gL~%mUbgvxxjyjE+K519Ejg`i5*#wncdBF%j(V1etoX&( zB$f1$AF#&8h_)LLTQWl{hp<>Y+AOX)N4u%~eE1~>;!Si5swf7jft*TDfI3A=^CERL z6l^IQ->j_+i17#9QRWB)Q4&};s|9s8TQQDy&$i!hHsqa|S7T`q4_*Kvgy4nQKJrVo ztvwyyT6lSGV+UKr!$TooRjTDcD@zOQ45VV{w`8%`_1uT7uMK2`I}dcGG%!sz4^)5D z!8C$YS_+AhgK-Nl+=cNiaiSl#oQAc)sSkLRm^1}0Al%yGL@D=JR_CnM7PQ6v+$jF^ zunRLjdR#M2$obP{_{R8Mkn{IZS#w*V6sTRAdt&gdKZYOuPeXBea6z4nko1Z=Fy7X- zF4o+fenS@GMfb~1$JrZL6c_z-HvXTwCF{$bHsdgRVE1d1Fgb+iX8@rUZml!>dLKq=Q^$IaT3A3+sw*BwJVWR!*H~Rzp5uf@guW+p%gZ&E~r? zl$X^6tnNX9W=&LRW>mEc=ZU7dF(225jEHQwBppV`6YDKl=C&&GG4$W7^ zu459WOgb-QQHl6fTR!sw@g2Xpc_*0%dk89IxAblA``F@HgZnkF^)uaf220O?pp>3T z9&+^Nuqt(HKNMz(LsTcsV+?4f`BP2{XiJ59Tt~y`?v%WTf!z8W^rw~)V~UCninLrXBWPnqoM7t< zC*bzf!jc8XUc{nIX`bR7V541Yrg--ta~E{}VY#9z4}UFq0J{-MWyxNQh)}JV7O-AT z-6>~xlK7ck)}5wfx4OsLDomG^3K#~pMXD?bF@H=o;lo^JBX}XgYju!+l z)CQ&700A}N%ZZ0tBop-PgP$a$7{Tg6T&ZJ;ExSbQ9&814nnu|wnvr85e?W`#0?8(` zRlWwjVK2)6bYa~AKkzUXd%HfU-uaD{y>Xkl&`QXIxChUfLVn!LI~fkuXh5<52hDFP zzIHwR8VQfKArxt8+Z7dO=s;E3@E+H*om&TLGr^0WEs#59YL9K8yR7YhWHE^d`irus z+Do~2m30BlViUDzEvbbk6EDNBarqMs$)G6p7oFL!k`f z>y^Woj~m{*Gv6op-db8sMdc^1OV(H22ZZ49d;C5%%eJE!K^CFRTgavZC(#0nvYYxo z;2oJKC4`lEAP*n@z^r4va>u$d2~iA12ap&jbJ`ZeFtaXuUZks>d>rxrm%rkWe~j5x z{dB5-m_vkrZEH<2fLJ?`RwirDPb% zYf=Dc^b=d<| z+zz-xC*)ogGP7ZZGYFlKa^E;QoDp)K(%OQYEn3K8D&cEx53K?v-i|DT2zkckW&MSo zP5dVXgZSW?tYu$h$kR;kf(yJ%Au1RLXEwx7xMQFJ5gBIzs`!%*-*-K6m}_DrNeTE5p&Iij_6 zjpzD4hU)$070gXS^xO!Hgnj{SMG!W@c87)~u8@JT?rlj-twOW$!Njm8y&J`I7YAar z5naZ>kmy{~nwg<=-Jpbpdu?<)OpdE+F6LFw>wt|vvvlaVU;OqrtY{zp{b`9K2xbJMeb{)f@C}Ar*8_Pl`aG7s~GK zdfj`fs5Gpeh|=<6f*T$Rj^-N<^5!f?G(3-Ml%*=_Y}oEKZHm^>^YvPD02jrLOxFy*aLGeZCZ zB)!gPO-dU|w&9H}r*q2)E`NCst2FrC;g130=3Qco)%u(7wY3?;9VsGkxK2_6i+cv! zxBG9?k$N|OF^4e@QInI9owMFj7)UsO$suNtH?$?E{q~3EB`YkeYIFBA|KP%WjoCsO zTIAW%!ugq{z4Y+mt+`lgtc7au6I8_&i2+h=s z^(O22&kK#64xD2V0D&guVbwTE-Dl}K&5Ee6QN$p4UgUG;27C^go888f=u!5asj<6D zkNY4YR_0xPcvGdkdw5Wa5~2*Ta1L?i@uud|thk2-WS!Eoqr8wsIFM*vE;{A^INN@D ze*p^i`TXDS{b2m#V%bb`f_8KI^G&yJHn7m;ua(mt&VyU!MbYx;*QyJ1v9nuPzWPH?o%J#BTw%#amBl`c=_3CiUONMX|0r zDAWdVBa#WYQS{Jq7~a<-2J(csi2qI(5#$}_9h=)bGgx|vLL+~E@h;V07$dzZt2za$ zTO{j_#BUDfW`Nfn;6)hoa3o-K?QVaRvQq)I*Srvw8DG8lK{qNIQ^7QW$uu26nYELBMR1 z!gs6g9JmpVmqe;b@``-uv;Y3ZXZG{H zNHn?^HD?V12dM-rg})7x;&KI(R>3gSo6Gv$`KyZyh<0D-$3OGqhPhY_e)b{2k|*}p z6Mcy?!B&8A_?xrKYt`ot0JHfOoBTQLAglvlVh108PST*wJkiP&E9%b;dME%mfl$s; zsYO6e$16upkJL3b#R68cBcQhCc$P#49R(&V#TcsvD1O;g@YOBvXgFyQaXD9un;z`R z)ys{UAV$7uXULHd4om!N5(x$d8WuOrB^FM~X$lzcd%1DJ7Lfsc4 ziVBHjta`rNqu{&T-Sbfsb1(>72@!jk?))vlbr^Sy-s_78-7hXp#u7W^eB1X9K!y(g zZU&gXjwCxTGkg4VOS23BpO*8Lqmv;s(rR^zX zUsvsk|1(2E$O3FQ{A=q1TuqGE8HU95GNuB}rPwu6PC!k!itCcRN!E17Ly<;dw4FJ( zQfP_?dLG>)N}V>MYoFd+(Ik+A$;Xq_MaWQtA6v(?VbzgXcwGpJ%&?DbD*U_mGE=>I zVX8O0lgVfvkM`gue8W9^j%V1cQ+Bvox>#9hsw+O&i!9}XNTe6i>eI%pv_EWmj- zQe#@kP%&WNbJIxu8N?#aPyQ;f!8iSLbAzYP*$gZ5i;S2aXxxeBibkYF1j-x4l9C@z z+mhC&>zZhXaq%=YOtwfQ_iJdwT z#Wpr4NA;CJeWDfV40p>>xTSX=$(O_PuBQMGHG`DJH1$DXj`6yX8$SefH4aJUWoLit zw>Bp8Q*5NnM_pBrR<2d=tq`GPKB(J)01n5orxUhQr7}D-FWLXfv~=$wQ_vs7=|aWA zJEz2+7*49?*@$a*=-=&C41OWUYJJ8%%`*6Trdja%IF2t(999_Tk&-k`>FA2_I`fY6 zVZJ~2s-fLl;g^CNbY5JxETdI`h}f+?HvNQ@=b%&SqJZV41W&Q9-Trwo{w{rF4H_{x z6_8Ki$3Y)qbK#Q)^%rbd6CZN4ny9}@HFI6kp~Q6NJ%J|u!*#ZfWBP%Hx~;EKt^y(5 zbd@=)^0+gHv)zt6BS-dIi9YN6TzGTwUqMF2?N(7B>yy9>==#1O`a`j_-=`&Yd zBED$6V|;%N*(<7IUA;yviazmi;D^5-M|#6BMMIxg!v%JB0l4IC%EdAeH5qH2g+oe4 z^{sHaEoNbGLQ1nE^la&yXeXvIjH{5~#^?r5Z!TJqaiCzgIc;#3{3|B-&9`#iaxEY{ zeqqhjJ$vx<+ZX?K^5Xj^PyM_$9v=I*Z=U^CgNZW7rfLBy*CL7d?QHc|7S_x%EB@i_ zY_)uMGLcs2*ZMhhN&j~iD-C1Ziv~)J)+w!f1YHJ~7^0{sSzrfvKFDG@u|WqmEqcGo zx6?L^bU7q(&DF)m9w<=dnjxf3LrV4sMTKV1wEX-yIvOYRTqD_xqo@@Nt!!{sJk zc7sS!b8{sJZ&;V9obqV(l!Pb=?(^$SjOGLZLd^d8RwK{mX%IPruqlaS(>l_3 zLAF^^%`ZLNQ%--5To`ln`b45_a$A`aX(h*Mlw7r7Ld5~S{h`Bw#A1J?m#3Fq`Gl1H z_xxaG9xhKRfaaU3LFcn4st6(UaMZ2~1CT^w0op~9B|r6LY7qhnD(_;JeG8G_?K zS<=msQYfpKrP}Wa+03}(BYqYPsA)q969>N?MFqi=cd}9b24*>ir^vzFT!HMe>&<@g z%831){6+kX7iVvGFBf!fv}euvtwxQ`s8EhaZtLt=oQZX6t%4lR3oubjWvXAicR zy@$oVT$noZim$00;9-*!4w?hlw39aIPjYQ`E+k!ac2XZ&gUlQg^V?xG{(X4%t-vG|u5nJhhdRbs?Luuhj2L!Yt?_Nt9wCRP_l*K|aiAyyZ-q5JZH; z&fsj`sx~lk4dZ{I;)`NHjQ2vS$DHhwA=<@DII-6`^fZr~HNSc%qY-D%-)W!ztTxIe zvjv{A;BAN5>kT6mjn zL*OpQR{aOxPWb1Ei=Q!@gQ9=6yu0_KqjCqE3j}7QciKckO`rINh+b4VGE;GbftGJN!H1Ud#`Pm+*4Aomj-#oF?CjV(5)5%+mhqMfQ0 zyttH~iaSro!-lcj!~Ju){cAWy=|~{`pr2~yS)F71iyQ$u=eyZN5=h}l3E+GAu{3CV zzGIJJej&yTQ=s&6A?xJIycfTg$3|nR;Ewm1nGNElk?_-ZTj?bz?YxV)AsUo~qvqly(5xP#?LKN5F96&QI#N6{Vz<<0$fw*<2^o%X${+oDomaGJ2_dEWjXW%icj-vL7vyQWez0A8 z79spxZ%NB|sp8Orzq(M(j!ob{kbFgedq-Azih=w2Q7x*Ft$scZt zHI|3}fXCTj#ravLi2um@Okn4TOES}OO{r_9;$v8wWY<{;7Lw}K!-qe0h5<5@28-h0 zy4;k1fT8<*gV>6hJgG5XdCrr+$NDAzwO{q;d%i4Ey(O_8nub-uP~!w#b|oFlFby$f zm^8eO1~R1c8+GPYq?D5cTJNT%f>+HGVNA<58is!|BOF~h$(j;HJ~b&Nu>!&j62JjH z;cgUuXecpm`FdPxl4!F;b5O4tJUpbmbT5zN_%!!fLtH^Am`Z-zHw>EN)(bzwGpZ=G ztVShU9*G%KVuaC0!!N!Vp;Ls}yeox84omNqDVAtCm2vww>O zj!d=67w`hhqVX_Iv4-puQog!|;4fl5y`Y2@i1KH>hei13^vpHV%7*@6W&oa|h(O+t zzuD(AYe3%$aN!f7>heoatDaaI=VWu9@Z<8AnBkF_ z{)4)12{9HJ>yN%r0Auq;srAot3Y-x`QUTL=N_KrXKO)W#k|8?>hXc??Qp+v0{Lo3@ zUVWI5iTrW|ZG~GcK6Zc>au&pe9xTsaea-Iw1T>WRecPQZQYiHL2CH4daf97AO4$1Z ztB+^$m}&_Pr&|VLo@&|Akrui^)*ybV5@FR8UQ0Pjw3J7y6Q!3Il;kMAIdq)ML}gb4MS^w&X2?DZ?{J|d zYg=Q`C_ciLK(|IzHbLiidGnKqXs50nE`X`$YQ+u5dPYf&vAy!loiLDxpS?~4d zYA)6J@#C6CGap2PBhHQ2Bnop7ZBSeZZ}B_ac#yi~1vDW3P!`U560Nh6yG0P?kXAQ< zDbR^aY6H0c7iaCQUQ?06Y5~n6ElD|Rp9B_P->P375LtQZotVLeoiFr#7XBHaaE#}j zP6LXVV!*xQmBTnZHFl@#hi_O4?M`3#^n(X>Mu^b7`k)C4UFnvj`aGol?({rif*sEb zm?bpxMtPVS83yNfSWRtHY=NZci7;VcX$Tc!DgO+o#~dN$6tg2aG~a8$VOP*Xv{V;j z=w@BK{qek0Y)C8av`F2TTLUruyGw8VT3&MCWpPK!h$NOD_-GI4-dw4JV<&DqJ4I?b zcs-PazR_R*@y6dcs0N-|65+wc>gw05P$w zyVWvvh|Ei!9WjFIB~H?F?Y6w-AYu5f$^?g(wWwf8W92e>gt zMKe9hzR8l^%6+JYx=DE8B1~13Eatr+w&gGqs(6h+%bJ#2JP^tk0ZKJPY39N6`+>ZG zRU1o{V9!o12+!jZCBF(ys9JRfx1Gzh=-XK)V!Xz#FJ&&VW%I=JPf|~w5-=D?RN?%A zs?6c;U1O+Kh1>J2kYU39nEaLhj-C!S|Jj*e%OVdR7|{zU8COM>07nm4Nzb}@8ub{d zkV>8jjXCrNuIMnDc`amp4yGtPqDmOApjvNB`>K!+<6V@d9M_ zph2@WiB3`#2Em`lD0g!x!1-)wd3m8frtvIVash{+b9j0B_JR}+GO}bB5+F-zO+k7G z+(Or71)2C-8UJ5yPMg=#KA88iYc8Lw^?IC$VE-oh6MY5D)~&oIvr8HG)#$vGGFRqg@VAwrSN8v2 z=>fFx9KDT8_3$CZRx7q|zT51cW_u?B4S+n3I>aKRYTC@QL21C1wN~&}Qt+FNY zv!=AN9vbVlqBsCXbWM*~S2M$X=uyucTPSRh4O1mRehB?Fh=0vM*y9JZTg~#Wpo~rdq?fDYgdcZqgmQ@LjT+&uJu1N8CJ~6bI?_ZhU2v5Ad z_Bp;DJ_MCElwZKNoOfrGX)Xc%KjpvE(p~WmFF6vSDPq!Kg-&~VR{;6f2^6CC-iErL zT7hl#umDIKsJ_FJzY;7>UxibGL>tOUj6Keo5f=3g^r)s6y>pFW?L^6~*+!H^KMxcKfJa*Q^)gJlV4Lx0KqreGWwEa^Wf>Ck=`X9ktr1fPnGh^{qE6dhJcZJ#LPNScrV)tj_ z+{OuBR_R=g$!gVVypBJl;X=E1o}}a)KUGscCpmxaOHV!#v-i_iH|MW61}ck{?IRIm z$fWpxdp8wv@030mz(LhiRE0~J99?t&gm1l%Py9R~S+QJ* zcYBg)U))m1pUI2XU7jGyN$Pc7l%}5sez|T=uYWzkH@WIbE}0+WXniv%Al7cO0MK0k zDJVT4S>EA7s*ier!2jvj>&|SQY+9i9Afv{<>|wU58k*?|ZNYGm)N?!v{}lt;3D;Y9 zS2LJAOfK==V!bO__RJ7zCJ{&eS6J`sZBia7cSu)*jG0*-*0H45i znD9FVnF@2SRIiskY`RqsN&6bwx;1L!q`Y;@v81mT{)yoZ*7wc1PXLo)qiKlfgD5O% z_}Luo9JBX)#O@Vxsp-2;0DEQ$*@(4xc@&**&d6LpcIx#YGwmzI1Sv+4iok@tSdCNp z&l9csT~}cF3iY?c4lan+C}S`j(Rsd7rxi~3Dda6C-0Ddj!u?>qNVq(D1l15ECcg$c z9}XS=J1H!fh#n`^>c(B|9cZ*UuAt!Fc_bL8mjvo~^dv58=ou1zMM$yru$_6qSUJzQvXQ;756OdiJCU?v;6mhpI zsROOZt>VUUP=ty|5V{YQ5fir7nh#rnO(6~_GA!hKhL>z-`DLEZy#Pd zh~|dvy;v^)Q2mK}t~R`(V}#9f1qo3NAvB2SQ4TGE2nnppJZDDVJBE@m*e8#SA;FGL z{dZrT(_;>$Bt(oXedaf9(M@K%&{|TH1L15MTLb@riLmJ{{u!_mm>d zzn@-eI-X$vr$*r;NBD93Ul)>~gkwdJDB1_H|8IQcEfkJ?=e-(t;hV|e;Zq^S%EfdL0@E0DcA_Xqi3|JN zSNtX1d3(+dzZZW$v)v%`7h$$fA^cH?ywj2rsFng3g@46XwNM{ZBkmEsB_FOH5l-UA zf3xfTkIzyGmo0GBi(i>rZ@YdtjONbICy9Gt>dw*v9zfXbnn6a}Z7Zv9Mjavj?YGFm zze0|d)E^4o8Je_>3a8?=QgSRnDR1bCX8h$mc4Fp55IUvb+}}RpYtKJCEW)qVe9m{^ zh~?C9o~KZVTR}C^iCUC$TnlmD+-;(vX?^+cW& zv!vkh=Fgn31BBrU9Zhq2M^9T}&gH__zIj7?oJI7*pL~J94Pt)4Qsnw;o>rU$FCUn< z7IuamM>wzI#KT@)oQq{$LapNlvrkw*>oz^X%(sP&d5b3Cv~NTZK+Ay*z2Tik@`O^t=yWO{U8d$7jS#v?(PwKU5 zrxf~EE4udT2xSL2L=HO_-!<1Y6xv}oj$2wc%lvTO3LoqVeuQ*ZE{Q$hP=+w;rH2Wi z6mFhoWhD&|JpIVA7p6{sn)5MrX4H=$UW0hy>1}}jgwl8*0^&M&= zKQ(r~IUEa^Z4LrL=5NnDX<#Oi^8fZkuzRa{fTY=;C-eF<#F9D~ zK)&)H1RAM>F!R$t{HVphyXWn^4hcZp>-G<}*AsfA)-Ac11oRw-N_ely>hH@~_5N1O z$iuahFxO%1Ia9r35|`X`@Wz3?$?)zzn@`Y?wA9}YXT0c*0}Kq&Kw6>kIad}M$+BX= z4rbwvFflTDDp%KIy867M6S-~6HcfKaw5G%Rj^79U6v6lhkrLPnaVdE*WXWZ8EU*tm z{1B?Q?TTPNOUOVA&P`Svnu|^@Wqtj)4=Sp~d?{INoQXQ$;B?pPQ{aaJzPbPTM3G zb4Jx;`Jdr1ivsP93YH_PY0t; zOM3WFQ=bDv53m&|ubFez?D1$$5d{bx;DJB9pBEQ&FlF}nglfkAuWb~7;l44|00^PZ z1&Z3ylnN|#T5!6M9g$mzAm2HQsg(;bo{->2W|NT9KL@J;CmlH=m^+u(&n(}uU`+?X z)~6X%Lx_KIEHZ2EQJceM>9Uin2?PT~=pb4?4%~LF-V2YKp|4X`ah%}g;}W`KoX=Mk z2yawJ-*G@ceE5x6AAaV?yF%2cOf)gzy^7v}73BE7s^-0yRv-gORsRaakvrI*cK#h& zQJ$unO=k>&ZBrq1-mIyB1gvI2+4+mXshNEA!OK5%{jC+dYN6N1f|NuL04RLljsB9a zs(@YH=P_9l=h^#9yW6lHSe&!*qe4){YL83sd)sKwax1|yoZPU8cw-G_AV(*oMLj8R zEBQ$E+tZh{3yq%kJS^PPTbI`{GzCZ+CzOq<+3Gv~J=*vhY0x#ai-0#|5e~^%^Tz)H zI(_M9!1H7(>6U3ziR&zIJx2iKwh9XZ3lr1b2YM%uXn=IR0jLLQnrSQecB7{E2|NZ- zntiwA&<6+#psl1`JEs`6RrUeiM}mbY%dCKs+Z?VZSQfaYJe%#f{{316vy=oU$(SR~ zUE60tsa7Q^Z9hptQ3RC`@x0;)xR>tE8HY)0%4>e+yJab0F8{! z5{43M?C)js;hJEiWL9^unWG=I{rANscxIW29wGi&Wbxl^vieo2u z9w8U0nYw>WXiX(_)vd{hBZq?6#Fnn5^(lMcffpr~youwVKFo>Z|46F~5s_!>wh*wh z7ldCnDpVNL>d=3qx3{Jqe5yq7pZo_pp2(IT=m`r31ZG9+nwj@9J-=_oXIr-9rx%h^ z_JZ-^tkz?{5^@7^8zZ72Gqt`3=PAX!mj8YnS>LUf9XQ;-{FTH6MU$bi<*(e-IQ|qZ zJ^fHNW1tagQ$xU7DOJi<{EcM9kxZfa()yBrSSPOa%CX{UEpOmbsF>e6Yd<_3%O6nwwAWG}o2E8$G0^5-B*^F!r>c0AnY+{6OKd9J~0Ox0@)a_=Yo zhZ!czGzzJ1?Xn~Lo+_kZRTEZb*zyN@+4k&A-`>7cN4o0|zs#_~ktl>aF++19S?68j zy)o{!YtzN$;vMMmJW_DiXD%BO9@{&0g7V{H3pyPHA-yp{oO%JsHrCTWEI#N_P1toT zW3la&L`OYtJlHv}EsSF%6p+0;JwGu4BMp(QvE6L);+ino;TvinNYqkG0V9EQW`$ML zB_@B-!bK9EHye)k1FLgkoXU7-3}HIL-V$1RKYbBJkb%PMg^?J|OihcBjCj(bhW@%@ z?Jp-nm=)xN_OHTB={?a%+q7oYvNaO;7BSjsD0KU_Hc5qgXF ze|q;4bhRD2gg^59eEkMdGz6dFtlWFg#e&?^>^`1LBoDaK3)+H|GSYJ6^-=`^I)>H` z2z&Y;Jip<4>{ymWIZ(Dx7r%hOMVc1{+2)_v*L zB`DHTIV0eZNal!3vs~VH!-|f85j_Zej?TWo z>rjv$tAHt!h(ZV#&PtCV-3ENMdpjEzId|rVH2k+xsM7GB{h}9L1mqY`h^`s%;FLC? zB$a)&%Z@L+2v?v)Y%-!DjrI#)?5hgS@PcxqC=^2nv3=3gA|Kq1v7(Q1MQ})$CWMfx z#c`m9AldGF+Z9n^8_5lB#p97v73>;im7MHH&_|n?n#NQ>RD2c8iM_n2Bq{OC~^$7|}?7S3sxIfG|S*?G>*Z~+oM+LWDa{x8y!WM}q z+vaa2fPu#=xnB@Ash&tZ-!kZCH-w#kmYz2l{~IYFjHINiq3v0FEY?voc}9u|(d znUu9!u2xyuffXc=Htjk^j}?_H8c4MPwki_Z0QO5;leX|?eIoe^br&$Wh{t3U=4My@ z=+{f$HHs_pegK6!I1Q$O`X#-WA});+yYIy|aE8K&_V1keO_b!wfvgfJ6BD=-?K06K zxojTR902qQn)UW}5;W-A_4ujiQ`5|x@`%<^Vri<;4Vn9I`z_c|*EeU+oXB=oj?3t0rled;$E>JD2Sgw;5F3{Xr3P%^|~$6wJtIK4kD zv^(3`Kq{&ekE5@p-nK&KSDpCe5@(Y{W!brXfVD1vGxy@Qr{PX#Okb82ZwTg#ZoTg3 z@cPB#wu3706UEJ|iwm>?ovjEjf^Jj9&uEG6X=e&Ovx_#7<$++=;$VABcxg&kb)sb zyEO@o__HgAIX2T?jl4{8^1X0sic6LzKD6jVKU2_s-SoAJ?Ym5mw>dkD@iNL1@EY{x zt%MV)n2?k9Qx`(OFpT+Xn(X!QEf>xXy&^bA?GYb68lQ3TlA^; zZniUSf0n%;4iFN6LHiCWZn4NK&GUvI#`djt(BY)o-A@M{zlfIb71#+#94H0_CYK71 z{xS990mX#9zv>_XdfvTVnzE0^-IHjoiUMSu)G}*%o*@KaEqID#tU(>%uQiTCb^!|X zq%;OAzW*H~0br}^AUB!SA3pSs=BC{Jo5z<#@^{|ku*%gsefJChKQ;**KyslzW&-x^ zg>rcNlle@LqYZY8S|BDFB|VP*=G7S?%}MhstgOwg5g4Mkm{{QBbTu^8x}QDx;oZg0 z^{+2Faf8rXI|i7bM5d}wW?2NMp2dMQD7uIVC@3g4 zt%$*`w+2dGSQgC2EzYWeZ+V_zpZ1+bKL+<1&0W}cgu^A+$c2L>=I7x+p3UagqVQVi z?TaV8q1!(=@J`Gr<{oI$Ww-G z_5o9Z4jw>|tJ9aSuF=Q+;8$wrH|Lz7vrFN2ebub`3G?%LgiEa8z zAbF&wVB@#vAWyBzt#U6$#vtcUkLxMMp(_1H}JHy_2vBT2k+AFbw2 zt3`10T*MC-It|B`h~1bk1dbtIe{maa&>}_`gBpCRbxw+2hs z>=*wKD`~mg?(yL|Ebq9Hjx76OB0prG3_FXm;XIS{1KnAwaYs&!;=PUq}CnyowNZRIY6d8_U!a1em<}| z@=kDy0P<&16end|HObnk2pVGJ+aGzbKX_jOd3eC~-P^`PZqYRnAPjj=&Xj&Qkt3_~ zy}1TA&l~_>zqr~QeG7LOPB@IO zEV45X+x%vu%#K%tPA{)to!p#tYwqhu>ZMK$?5*>Q3a@}&ruXA3Ct~rcp~_8U?=@VuR8ZAC|=FPbhP=c zFpXx{98<+=OiH8;OSUy^>lHm^w%dw%EBP*fOLpX$7RjzJX5O1xH?5Hkl1&#@%RM!t z^8u(KW+df&11(yI_U{EyX#oto)n-X^gJl1X2nYPoQ5^SxGU_s|I;t<${)Z&_g6!J*;)3@1MV`v=oiKRZKrFYnL~{tyusB0z zVSe%!maH9(Ab7JjR@B2=XOqFrQ6xzQ?uUkds;`p+a;&3OtjR9_13O-eWDZ*t+T>J# zDOKpllKlKhb}F-h+R3Bcoi+S{k*@f0c^=RqF#RT30WK3FD-w|5aqV*R;oPB6=FJgX z^J|t>Gk6~tn`f}2;-F^q9=z@jIo<#Ng1?EXs)z%pFC?G5D4eu|bA_EPDT#XC` zf{uAfG0N7Chg(OR;i4q4TvNvAjVFaBFj^^~9xamePQE2PaLwU^c`YW z+NJ~A{w!5N&=TF-gKR;XNU^fVXu~nG8M|h7kre;HU ze&6jte_WWNt8=6gprQ%Dl7YlwHh`%%c*`8zvvly?Ac?p_B*;ME+HM%NXIxXQUP(U+ z!5ggBoFM0eibw&cQb069Lw^bf4iu4r-^aiZhqy`-)-hWr&sHe~5|9okytN_DoCyb| z8hIg$3ATCW6SY|d0cTl2g|LRHWnN!7y5;n6+&1M>IeZGZDQoa_xKzu7eX$BO1cf*@ zhWqjYw+=nO$Jg-l0LSaDJKgR3tBaRx{Cjdc2j^k<(_Gu-wS5q3m$dkB`OA-X)`lAn zf13MiXUYD9c`n|Emsa-$Mzs|4yfU?)*!4v^uc+vzXyC~(?I6Lt~g4&%Qsd$S7<`RI@p9f-)TV0u95G_i@4H7-dcvR`$O|f5Y zVN$mi)F0e;1!Ea~*{gWikw@OwaQ6U zoA)PYr?1&j_A^rS=Qk7)^YqapSLFbC6U178sb8IJu_fLaK^H~d^SxHnvbKB~(Q=<5 zNYN)~#BfL>kER~#$A3K5>oM>1IE4&jZYD{rv@hfzr5J)ecyMz>C>7* z;d|@zYXdqDV4a{@fJ-r?|Gix(6xL=f@>`_@|9I0Wx&M^^-u_Sp~+*%%Ia-yB>K)&Hj;4lI2fan#i#=Db?%>!ia2RD3TUVCu~!_i|kP~mi2wP9Pxa#%kNVmmi#c>Cq% z;<}#f#lOfiAJ+QfFJa-|dah*68IUN}R-F`3Ttr!qUOm}sh8{8^+257wxOhFJcWj{I z)CfJ2A(q!6>SQ=B`nQMohLcb_XQ46ad;h`WtBhZrUP7WkYUVu&6~+^<5xb;>yI#jJ zR8Ap(IWH*V=BYj3OK=Y#h7z3CvNwsrN$-Y=JM}Y>vV_dB!Y`;m^2DBeo56g8 zwt=bAjL|;dTa!e~id7HyQBTXktaEmO<4?D6{PRoTpu*LKhE)mZvj{bjC5C^<4RBTv z^zz>$Pw2qVfop7pGMmVUvyS};kPhO`zuGZGj26;`;hQA!eHB)CV3@6>RKWz@ZA#T(v?RilOkmj$) z-l)_|pYyuSWF?F1Xn9m+vqpcbNXdlKT4)Pwxs`VyFk|&p?w&3?zo%RfmXTmD>hHdz zcGli@94P$&!>%fl{%9$*_;6P@=SHx9(qMZ1)o&j@1Fz1siLePEnKxdH zA9T$Z*R)X6hV<_4RN>P+*b2&>YKQBwniq1we&PAjA3yZ7IK6DY?TYr&utdlDI_fK$ zk1`2rhecs>7*6#IWq9E2m3fIzFN*M)2tD1m!htxJK+$7YLB2=Uh{S9g)4DdE5Ede( zBBx443lPQFu_1{g5@s5D=nhI-`gwZDN@*2`X_#D!7#HQ(oWGo=6U_*jkf4*I_p>$k zLwCXQMe<5zZ;V~ZuQ1;XJX&~1r|15PWY^3>8s_%^KgRMcoSws3_}b`of9ZZ5 z9Z=VhcDbD#MbWATagg*C`a!Ii?w9c9ZhP^j5|)#b@Ebc(5=1O1cqhg%FVL-WiYU;_NMEb3U9Q1RbKz$z@;}9b#A=kw}nird5&t zf9$;pj~&OA<(dAiYt#oAtOkr6lUa_%`v0*gJGz6*W}0K%}tE?U_}>>2*$bG%ngN9UDh z#o3gUPs^NGY@Dm>OPbren^A}Rh?2b!g4V98eR#dnPmls{e%q)r3?aJ;F_qI6ClEGKkM)c!$&P0@lpejE>bPL5G4 zZ_;{V^@R>+(iv#B5czM46oip4XmdyIk08=a5rFswB@O`T>e<=RC<5dnyvZzLEWWyE*tMMGTdf%K1)z2(P zf{yNb_EjP;0S2!JqbUoveJk(0FOFWcrb3_heUU0`D zI*>ISV9;(>tEMHK-4M_+^zqr2)v2G1DG&9M={d%NBa*5vXm{c@ylqd^!~qcW1wmA>vFua8q|iUi>SHYJ|cX%u)YDklg7Oc9&a}ZzTtPu zt$vHR!h8d^4=Y2i50J1AucUkXoo8E9A5vK7HyWR0gGqs;VnB@xrCK-epH;cpDkNN) zl4l1c8);s+%xM7#x=Z4o#0KbJ5^}zuTIP0uwEpx{n+Kb zwLqvjdU*)4Nti^lDyN>^L8xT=w3jsYH2&jkog>YTR;y8=jD_v6SIm5ot@i)VOx~@{ zW?~gMdN=MFLBUDcacagk1MHBF4Gc2AaYcNg+y;I%5{4{zY))HZ{E$jq^&q+G0picpg)RJ8fPTCq2*d~6B( zKSb=P0ab8H+Dbv*+E#*{0NbGAI{8VVux8}P3+MLnW4o?mH@OiHJCa;CDIylI&k@}c z=fAw6RBz}Wf+qc7@E+m0b}fKAXnWba(1%)MN81V-uWXZ2XtuK76UHXk#BHlL`mu{A zi(Z8h! z;75>yZrCqvgWE61+n-cM5R4s9+D24RP;yVsj=AI7-7|0v72#sD?(#IR8Mi5Gt1JSM zv^jOkr<1y+bAg@dPBqUP;I=on*o;?vF@P7@mV|Ty^wLB)a1#PZS2~7W*i$lw|DXFA z_Ur-RC!F*t&Y0D^9xbRk&7q^)_H-ngS*~L|f5&db_+#1yLvog_z!!U715ob`^}^58osiSf(Dq0%oUW zDDcWR;Dt8BX1z&Bbv=7zeSJTYo9m!;4GJQ@if+PBp9pAeBkj-!-)7SChb!5S zF$I!3ZKyc8fnMCk65N`$OtPYR0)n{)3^1ld?nl!|k4fqNqk+LD!E&sUq9MR0<3f7G z^hnuYs7KG>I*TAWK=8jm1xRuYH`l9kTnResgmpL)e=iR`vY6F4K6)+>x+O{^Dj?(F zkdZlHpQ0=DfhUZ6lAM*x)xR@8$P1lqT*K&JSfj&rRZM>|)sn65YXXhG+%-@>P|i`x z`icGM5QTV3?L}kSdHKt!p+z6k36!CZ_Z4b5eojyFgrtnSF}v=~0l3|EkWJQ0uEW$a zOg(gkC|0)4>n;c$EHgWE6P=^Ese%}a})fC1yVuKGPPbOW9q{TY1jUpEXXm@UYKi z6z6j?#MTFD79fzziY!UpHEGxO9$EuSvw$I9fWdSh6e}-@*EpcsOrDwHu`p!jmBu6W zf(Tf2ypS;A_&q1n32NFP1aRZAi;_ODHCZHDvmrZX8^U=+D0ooi%3t_{%&AQSN;Q#S zGa4eF1^&gT9NAlUX9HTp?R`%>vrb3Tc=EKsEs^+ z9Ck}G!#C1q)|YT0kVcm7Bg6(Sw;|MAoO)hzx_-;nMbprWx8L(sd##1Y{*hUELj6R% z_~m(m9oQ;p1)ov23z(?!rJ!pz=S|^6Oq?fEn#wLje6O0rkKKEPf9@#Q74{@4RrSrv z`Kwzfb5-t@Gv?(QO${}QtlE+?zAvj~B$B2is7`NQpV0jw2z#|g+n{QbI;lG(M!fxJ zdB}bQcvMx*QZgghYC*D%5z9RdojOMhI9PyF`*uh;5yB zUrrU&DWQL$dOe&Wb(m&n-G6{3en{|g)VJ!I67pYA7TpFUWX7Hqlb-8SYYQ@L3VHGx zLXd0l7YslHzk5YHBK5Zn55mFVm9yd8vn*#jt#9u(4kPd{C|#4v;SvZE7b)G{oeX`~ zP7xi|p2p4dm?F1JD#hrh(q&?oSFl2!oC;YBzrzTF54K|Dy{*vv?ny?J!{!i1_;X+cG4smxH6PindpNqnp_WCD=WwJByp2goeH?XTJqE!AEPsG2Laq`B0o zgrDFa(g4wfbjf(!-TJEi8FG@~^B7sDjzs7za>)GGms?j0oZD6}vTEl9XD>WR`4{h5K9cT8R(v z`PB_#Z7+uYjSbEG60;W`E4_?-;Iko30!tg)Z{M|9Q~CM~)NFQde)=H6Dn&WdVm);J zt*seK3UqYR1Qn=iKp=d2HSD+3;zC+v6dXRfYE~QK5fqOp7Lr}eLy2x?0!AB-ql?TQ zxkig{!Rg;v|{gV@If*O@G{-bvjs`jk1pe9X&AUu@=-$S{?@3D%JGcj9 zpI4!?b5fBYGuOI`<~5uF?;&VC#0|R+Y5JMs*Fk)bLl?b&W^|Y-l)YnWt>uz<91=FF z%2CvMtiDQdY-#$dH>mmf9X!NgN)x$U6p^}KL`%>KK-rV`wbD6RfE$dy{j@PQtG;B{ zg7FzLs^Fja<#K%Y(u(f2nu$p*Vn8il#1Qx*g-CWvQE^d0p$F1qNCIUmz)QAR{i4{S z_M7WhbXZ*6-c)Kaev@jzxonRfPn+V)({Fj`2;{78=y$ffP#=`q^_1&1+%Cu866UQos6@=P-&DdB2sTBPA6a;j!ix<>+_Nbi2$)P;ZT2zJ>`vdKFwV!~jIs5?d~ z76#S)wfo#Vc~3%s$b|1#u&FBEhWG4CBx3DrNH~vJkG&tVEna!DcXWB%-EKe3Hbv9a z8!pAhn+a&iGsWj9c@9i5IH}fwuqe4pgtT*MB|LS|B!A8h22|Z#Pbo604k2cH^S26&N zZX_j1xFF2tY#{){%(es&!_jHO=5u$uAxB0hAiO-R53LHig;Byux{icF7n;1&+#MOe zFTxC5&Us<~PhTD+(mY_xz7rmlsje<=Z#Ah)S<*qZyc zm_7LY!0R!8^f1hI2LsxgP9x$_vX|=h3E-Op^J{C(D&r$uVQ(5E-`dwdYTzGs`1T?q z(|xMB{?xucnQ?k7=G`~f*WLT4ukS8?zA;Qk_BAtbbMad$DgXRM_HY0A#sBxUO~}Qf zGoYf^O9U+N48Lx5HLwD2Zr<-KvE9Sn-p|qok-chvunrxC+F*S{m2t$V6Kv7W&<=F3 z<48O0*|>T>>HFOfTSAq+f@)}3;s0Zgtrh`6@Z<#SZfQ8fs&mhGH0~dEW_Dq6 ze{`M$nhTN9!VSQ9Fwlqkj`!dV+^6h&V`W;DW$%+uBOZt-^JJj-@^#WE-_7O>$!U9QWo{4d99HNW7rTD{f^? ztdP-knb9ytv*0XiZ$X*e_;qE~itE(KsQ#XU9!Wx5R}1kP-9Eq=NFOQI zdS~DycJK(gC5^w-cNoG15a(XHP!)60ac)h0D*I-3) zFhq>OV(U`+A)bJ7!gpVBP6Co(5|% z-s4Hr1UKN$TkMaX967m^EGmg?DhL~y>-Z*ga>+cT$(^(e$eq4El}W3R{szmlVgk{@ zha>5;27{-`pu>Na$Pn&Pj2Uh`-B%E6VXDXOIZUYCNBXOGImRs+qV}$Dl~YbKQXGd~ zS?Y}aKivWKth}Pb2shP0Xt9E@kfIp6wX;`3y>Mb{tp4EAGTL_xXcOpI)AfcX$$DTP zOtLO_x60E4yrjyLCDCAyg#ZsL%%UCOl;L3QZj1QJk1{;ZT);`U6K=l={ejGgu`x-~tjnmdJ+kNv#cZj0~$BzABI`G)1=F3VGTyq|t)JaoGb z#3C}}X2wX6wo7_92?Sf*g-zJTY?O{T%(4+m77P!E6ydGvKvWRDwlpW>~nOrSeQZRa;g;B$wp!HiN!0t-yZU=rl|0Ki-FOa&&1img}M||SXsdz zkp_U!mEM`#)0-QZ6JM9Ts%SZlGbKK_#Q)ScV|LPB|7TS7KmnY}O3ywC=9{A4Y)|3t zGmlrtz2LO5z^bHo=$hw;&i0ieI36Ke_4Mzf?!nf(YBwGrEi~OJFLv+QK?qsJ#D9DF zobP;#dg|fPu95Z+$1J{nIuPw1UBm@cGtA?RHtzx7dY0&(cOp06SR?ZDCZhJsb-p29 z#mulN(8f3$p6CT-^PQ^Zx7bKU->H#xpso&9kuZE7GKND-FD{Ow>w6o2q|-~O+J6b? zy)kF$;#jf1OXe=e@~zes6!VRTkO26Qx7|e=pRt9vYibz)s`769>=zi6UDSc}In$Bq?FJEf!*=H@1yh zTA;j*fBqu>xA-JIAhSfZ`R5 zNVX@GbJx}IsQt;C%hUCteP|141iTau1VOm~1$F7x4m>86#v})L5l27@DKfl!-2oIj zeWS8mg7#5CyHN_QuiQ1eyJ}vQW9p49wI5zoK&-M{bt|g=^gdGtk;a+uNxUbpN*BYc zljt_dBM#LDpUMu!!nZj;1>N9I$RCa1btm!doAve}L6y=ZMY{rL*BDMD##9F;&qYNb z1aF)C6k)jJ0KN1=|H%SfaWW2FD~Qrv_Z8~ zZ3_Ale<%M3Yy*(41W?Di3;co)K~hYK4EA=oY^b1SOve`TVKz|SQJ@)5GfPbemnW2M ztfvn!8~88FejEgd>>bA%B6pf%3ebw>(1>}-&13twM-e<>>^F4meElerQq1yP0Jw}I zPfR6a4>`XKfb-#+{L|6sPj%hk{JZx*airt$*s}TafyHB3&Bu?&bS+S7-k1IMyL02W zNsDDdmkGeC1%ys-3E>A~Wvq+7qs#UZ7Ng+iOSW^eN6P(e2iSaIH!>hI$m!RZPSRC9 z!g|Asb-Zkm7FCeY@`3^b-Ja^EEMkRd#+L)`qz{d(%>IxVQrq6~{VsaN4UjYMwx6 z?X*fig5f;SFG1ygAzj14@1kFB5I z>!&~356cG6eLWfT>I%84a+h^u(VXe0VB4Lwb(k?D!jMUNcUH>S&tHyhpzu-I7rZ6fI19%y&{Jf@l>!Tk5T zpWo}@eEI#4u`A4-$k30mnBn&Ppv3k3nj4Eh&WAv#4?Ug@!R(XcD3F<&je=gy_}|mz zX~Q*Hv&LKVNiX?yRzrI6^<~PF`r|hVbof_X(UC*Ytp?eb=yv9#W zK%=1U;gYf+VMlFmHGA!RTu{*lJ}&0=qWj$t6A!Y@_ntGxB=d}G8-g7W3pZ~~`%$_b zPH%$E6Mn)3M=Clpgg?1oW)5gFA%z8!p{G#Y zi{df_Nc_XyE%EpNMmA!Unu{c=FIlp?zr^9>Fq^<+?3~;!Dzhx?)|0;+ev^<$EFSGa zPY{W;ynAoD_iz&ywjt_s`R?Ac$=94q?;U#bLl5~O<1`C+c>mR|6JdM(!mjQ0Bn-di zdl=~vqAcj95n^nr+KUhY?iQ?y?c%>^3#W=hUlt|1t^t4?XaX8{7kH`Lp2_H^Jbnye zlS>aOem-CAnyY&phcd6I9<4#2wa`$iRY&vb$zL91HK6k+X|{h_`ovLq*quG<&{QX? zq6;0%h;t}CMGwe57+DLOvMIt6XCOD9fL5UYBqC_0)|lJ4b=^qKspz#l}EpTjhlZ9 zi8uncuWp7jI9xaz2`%8VpgGoPDbzAcHfn55*BO*q0QJA;-f9{!F$#qf@|O;n<|0bvr1I| zVH+nc$)D%EEwR!BZ4SIHVnF(aafZfXeCFT=PDu!3;vlmH8fzz3df=(ajBx(xg-&-d zUB+U8tqXiYb!hL+Ylm^Ozd>yrW~ zvl}cwiXbiS*e!Iw2?ca8hg3RqGCV%doqk?p_!;NvhrP4UuwHBjP*z`zhXff)&1!#k zmY)$zI-3Ii;?-Q_K_Ee{#KgB^@fd-~B^8eF7X&KD*28mG0{_ruv3tw2hn(j5!LuJ; z6q1|Tw(ua%O#OrhJ{%wRzFW)kALBi}gzMSraSlYJ@sPX38;7SJxX5aNs(y~nx$msgqaRHw zBJGnEv?MZ`z%6^Q5o!t_^}S~AdHE){M|3_0517zFz1#Z>C-WY5k^kh&#X*8Bn2%vc zqAD!rd@C)%382)1r#ZHZxSz2Bh57>u$fz{Y<|mZ>vq#V$kI%C=5RR2xPsR`+8*!o! zz}^E$pawT~mL7o4@Rm9Sf=SlB7DKcpn={10O8h<2Zzb5Fq4KzL(K=n)sS2H`NP@73 zM$?5ce|mp40C|mB2m6uGgT9lV4Mg^VW+1w-vaV_h7#6nT;0GJ82q-Q=+#r#fX&u9G zK1J1Y#bYel)q6P;MaHL~j%{&`$ui=niDdCX5rTgR`>H{73fQl{3NYuG0X#h7aZK-d zaUcGsEd?0*eyxG<=!*}p>-hb~8S?*@4vV6G!tbMx8Sno0cTo~-?^3yszWxJN(X+Mo z=%b4zEy|DMblS*nZTX45#RaO>}$g`=|5aY}yA*^?&`- z{S$qh7-`_zd-%jSwv&9&o7|EpQ0@!ruWLXsXT0Z=ffvW5Z&76c4&RXnqZc#vt?0ie zeIS26U{4m4zFJIr-{6Z3&MXLH6WUG^BMBvUaY8n#`+K`O(++#6-ST0{!oy4HYckW; zQ@PAzJj}zm=d@oxdhi$?KFbHJb6LY*XS6=D%JcuKHx^@4Yt$;O?<}^vkEU=QcErM) zf)Lf(W^MFyzB@m}lHc=Qw&xf98PLx+7T!8$9a9%O{fdsx+f4;XzRuxhrCMZ}Dgoxm zv4uJL@VG*BDibojIGb%_`0A@zM6w&)x`Y}0d#~g3 z>EVNM=;|hyu*?wc!-tUY{Y|*^58*z7rOAvVn8s-%h}U5-zU2Dx zqQc)EdsQE9BN(fb29v;tXtgNm*Q)0k1i2Sgsv&k5_{3R3EQ|Al8zAN$` zQ5d0Bu%$E(6IldWe8%e))c@Opjy1ZoR;8Ry2o^4Xwwf}?`9+ zsH?IN#Z#VU1Byg}HT%%f5bCn-PC=j3DW3x<%TiDTJqCdTNo>Tpdg~o5rmqSG&=1Ge z@h5fjFXzH9o{22J8_SC8mVWJvAF}J}wOHKCFL=zwdA!CdAh)6JKG{XQb#rU6`Ncdf zoT@46vsO5wY1y9BXgOUBd8xejk1&>9cjwMUuO#9NR`MiH;bQAYbL~*+)JRBlFxUkY zr~#u%pK@IT(P0O(djCwk;)3oq%ql!(2qLPiG4E#CooW#cJCb~l_~-O6cb+p1;M zsjko&1?xx9-xxRUPqdQIM^g>%(+QA}*)gGT$YMFK27k;4Wx&q1p_^ummzu%?T-w`@ zVjC)?g+)X5D%LbX(?BOq0+4?tZL3i{w1LhJibW>%u{lOT2QIERw|yUr*WAKtE`gFW zM5VoH$cpO>KGRj-peQ!sZsViUHyG}9LRNgTH@0O%-C=PxM-3b3jZZe!jD0tpbOaaQ z_mH3J%KM)&&dvLXk7{;Ci81k>z!bvii_&b05^x&i-hv8~ZAZIsE(=HxaJm?{4XzfE zuVFs)pG(D!R+VcGbwkD!^WTH1Y{c3kZ_(S8_ADJaic@d*qAkNXpT6UVC%^s8XeF#?TUO`O&A;C)_OrNQ zb0Jwtz?8Vgwo{JA@&eJg@O%G^L=-*bhBo7tmX&fzTy>11+-J;D)oC!SfnRB=GZfD4fJ!heK(5 z0`;W)BnR*9p#u#mF`!wp#4{)XFp6{Sn(?NaD(v+2&x6x{sg14jk5xaJnn)u;?DOta z5SkW|aG23Sd2Wg#Eob=iLQ3^%9=CHtv=G)o{Mf6YQEkxXLhS<=bOo!*oOTbe-0Xuu zM>|rykhZB$cmYPo4vubIkQ8c1MIo+1b2as>jH-K1wQzpu1GkBE-K^W5j3gy5Tu49= zB!%drvAkh?2RCGZM34JYU%#bk{g5-OVWWeoJ0AqYg|ph>>f?E?y0;gv@n|`fz7=$R z>vi8u9|5lE;=rclfHhnI;?xm8js)g#dBf9L#tUJ#4t?hSD`i{>$3o=vF)06);OU2k z8C$tKXA8}6rbGv=6kN7sB9N^}F%YZKu-;`wki80AID3@AoaO*d z9Fj+Bjg~|F$LNzdM+3j*#v9y%0*E~-$1o5FO0e0um6km%G+X&}UTp~O2DGL4C>%XD zY-R!vv3fORMr^TY&`I13^!n4Lf|N&#k>HO~Mz|T7`HkLoYaT6+_X7F>_JMJK6JN9+&6^=wmKPen- zEw6-0&wEXiIUj;~Wfm#XpC(s8WAFQ?e8Qb{-!FD3i}g^gYbY(*c95=d&Lq9U96^vA zsU(ITMgaN~izcbaHY7o;&R*QSuP87%{jn);DD3Ekv)gr4`qz+UO4r!!dPp^L1u42* zK)yicSTfuApTj#>*yfqd)bBp8d#wbGy9zAmDx_Tl2U)#dkwK81od=h*U2FCNe;0d3 z)lY5jV_A(LC-D&NiydcLtEG%n7ZwaujryU^NJ#d{Y~oM!+(1jOUCNIt7KHeSH(?UW zrkj6y50P4z3~+YiGjmv0wEk&(f7qft>dv6@l0Un6({d441Lf^BO}#?lx@kd^uUM*KzmrS4}fg~5WdfU;#VbUh%j-yp{u4OQ~ zLamc`;O*pFSeq|@_agy4%pNu^Y=T(+gewdgdSh8$fr*FrLWyDP-?L35C|2Gz_t<&| zLAXDcZ!xf0Tozfe6_knk1$f`-DJ?QV-a)ret>KkMIwyfOB^TYka;Rn(_SKb?0aaT0 zfFTOMRt4(!!!6`F@(AF;KYBi6$hS|;kF|H>4{7p}*`J2cvdjaGEP`aYdMq;_=Dx|; z)l^0Z=G0YI;^w?%RO9Q*PA?IvzQmrsg{uT&?zC_$*Rb}w4kB~wHxdh)Fwcw}T|o8F zHaN3gTgD!(-6_1eDKu#86|iP1Q@HLo$Qrd-($Sp^Bc-=x8uFegdvY#FXB<2ka|yxe zop|k&2ZM!cWaBzGu+;r5Q+?n?QOY@dKD~nD$B%Ez6V*^{(s60+4poA#KRSB86Z+zZKbxk@Vv7Ze`fvFj7az z0ca(gmj2NxfY6cX`bc;JjYTo5LJe771S~=LJ>01601HM6cRaOKKfin_r1zXb8q0fM z5Fa*sMk>B1ArBydy6&t4B;pV_cR(bNTLX7ZXaZM*jl#}r7)8o=ZVU%_+q>{LAlF_| zsl`v%k|pJ=0!aLW`YxP2hOI{XCZF8$!rh3>xFlX0YY2&AwZyadeif2uTJ@0UOWSqY z(mWymYeuT)gUW2WVib8HHhRAw*V^`SX`8e#$H5zuJ|G`>r(3O}AJ6PU1SCbK`EDlSRX%MBHg>CejKtKXiKA6Or;) zUr9{Eh?Ea}_P=MwjDGR|k(m+9NacxE{0qb&+&azn>srE|bXJl}sac3D}9G@0&PQazKBaH>%_SzRO0iSnJjcc2jvFtm&yWSK$I zS|?FvZiqeo(x5G{EAfZkNXZ#ww1%+Z>0O*E_aOs$xAeQ96v9#0Tk*2f}J140G zm5vBO==#CMpfsJ`G0%vU5*+{(EX8mI z0lLj@>Jiq}V$=JQ#u~k*$B!9n$X+k{)3Y;3`(f*f-zq;XcUifq19=*G7mpvicj1iK zTWDXVf5h!J4SwZ-r3cRfU#J)U8mF({cS{O}g`#=0<0*~eBO1NO{ z5p0XSyb-kIofb`bM_kNOQp`bilN_hZciV3%a*)=8>uX5Ro}p2AI>%z&)acvx)c?~W zd=uo;=1+wl>)n-fzgkGjQM!dfbe*rNpj1Dmc+#X^q~@l9aX|9p$KLg+-`lHX z@jiY`E-TK=aCv^`Hx%yU@#DaM_lufgxE8g#Q^mJg-iIEcX*?n6U| z3y>aucY3SN>O1Lua#KzcIA5U$er*f)Ki7=P*9ChZGQ(93qkd4*t+#B1me%Fli-9jO z$;0}ZC8!_12(x696dRP(ARb1l(hY#m7C2)^!r|6{T;Bt1s|UwQ@oIZ$c&RFsn*!ZM zY7jR2A9yT0x0@zKih@KdRR!lk`K-Zodrb}|G6y7-Jaf{aHH5u28zx2E^N=yzZQq>i z|Dj?@9d=U<3c}wN%!P0RZF&+yRx2^|c@Win6mP?Rw(0D=lg?d0d_J(-ovbhSC847K zm5Y!>3t20yK)Z(=bV-L4ns%93)L{A6sj(8Hr@<{N+VhFlAK59We%CuZ*9dU z@?xBdmUFk{tEidFn?s&F;OBI1t3H&31;e|v#i!aXAB4na4p~Z9b;y#CW8|ON6cMlP zR+f1zwxrpd!GQay$+W|^f(4!`Adn(QHq(ZWL1zjg>58h-0$dt{` zhh%pS6L3TqbDyo!dhyGdG^@ z4?Nh5Itm$XYf7htHXCp{74q@Z44Qe@#am=u>p%0)@9s9Ly;}Id>t^#znEDN{+%-gj zjyg*d@7tN*YRm~y)Dtfw89?pf&ky@c4}L=K0$Py_#rBT!SW_=lp(LNOPir0I1~@rl zk_@JG(h{Oc!l#QNY+Qe#1(um_a}1TOvoozLu34umtWO3SGZ|JJsdP?j-Y5bc@gkT7 zbiEiFY6=FXu;#HqmlhW5!k5Z6H{}`RC&y)9*2StqMU_=nk=hSCT)g$sba1}342zIL z$B7)hELW`rJAQFVu9jkzN+6dPXNHagbF%{5LYwxc>Kiuzm5XlM&b`6qQjj#CmG%b( z2%}$Z{%!QEseYMn8lCG6!lVU)fUuBnvbx4>EqqsBpR9^S)0GKbz9fVi0CaP~4{)@Y zb5DNbC9=JS;Xb1w$em|j^e;ad!Gv9Z`wlO;;ZUj}`NP!P%A%;SPhd*@d`wj+W=p|0 z%?r|#*Nd%Y+RO=QZJ@n6e*KnR^Jo6}_ItkmSpclDNG@dbmk~VtH2TV_sYAMVbBQ|N zkM{MMAPzHcTAz6Ed4n4rTI8-{__ZVV6HJ&bdp^_8ifk_jptT=j z)F6+7S{A$3krzXId$tk#9+{R?Fl51Y$h2f&b2n8+rUP>3ULjk|rkqMD0T=E}CD<^M zOj#}FDdnPBZa!rI54#ojOU~o31M&TKocq&un;C5(lw|u=x`J~GY~HhgOnk!K9az__ z8Z5`f-Px9z*kAPCnN!w^3hK~9!f=i4wYzgvB$0cmbmxz!SHsPr49vm19{u5cDh+vN z3nwMz3c0!^j^sZL)e1Z{uMR3oU>M_eyx1d-#oNZa`|4EwT+Oz)Mm!Lnp>#l9WST~y z$wqTBt)BC*l8-TQLnMC*NyO=e_~RiE<4jcIGn!JN0#4hqFL-eatF_-~?+j~r8Ez(3 z&_=X!cqiui7vTJEZRW*2EKQNo!CE0bar?eB7VB(yoh6o5hlP_m{@PhYc?42eNwZp~ z=!L90oKWE@^}$iDS!Y!hx{157pXOcX^q;G2Rnztalk+OWfH}xP+mb~>b57F_NwWoZ zrkr{OYq9Rjdesj>+HZW!MHD2tVav|Iqry_W)Sg^5T><>JC`GMFq(PS=gs#8+CnB6L z1Yg06Cu#i!&;U&37yt9={}du5{PiE1w)>4=@IDYiL>fo#N{)-p)yjnWe*Ae_eut7vm2cMw*j!vV%PPS0qHi~)p!{{8;CO|**h%L8 z)L(J>p*#0{ltJ!E{oU0o&~E$_q_Oy3n)LjmDT>M^;LDt*(gBqs*Wq&~?*8tzEO&TQ zch&XGwG+=xGyOR!Y+B?YJ1A+^Df*J!@)>#MC9pj9{aPa88*Bbueqi1y^kL-oTOBDM zeWJPJGLH=+H|s&rdz-bY`RYuIk=Nd~hgxa)8@&t8f;KrNG70JKxpJb0-$WHQZgsI-bRL#Gx_b- zg=r9Ziid6+hu5v`5+eX@uPw8vA2t$+a)KB#C?uv}@R3Ui@foOW>Z1%3}mrjh+uHRmH35hZ8kZPjy6xC61yiHixvx9afh`rY4 zTvE&Hx0hOHDNajH4-+i6JzcCmL(FuQhSy6oILXHyD&%m;D*>(}yv))Tonv>Cj*m?~ zoNcNfR{t)m)V#X5bMPbi@1H?t-@ZONMg=LK8bXoH8lN}5lIqewMM z4Rz3nNNh`bb15w#IgYMJJ!?()kggGA(^&vTfR=eKNa6*Q*AS%i6? z?qu{@e7cj-PBA(IOb=HJvZ(1nk4={Xn#&C4c#_~)1j-p`Z4_vaDpHz8 zsDRKMf!_}Vd}dD%LVc661nb|Dudnbo)o^0QL5}4`;3qmZ*x#R0*}i`Na(E>n@|f1$ zUd2ol0L&u}a2Mits4Q+JN<1jccX9IL>-F_Rmj@>V>3e3d`F>uP3K#!{+$x@x14kFTSJtJu|i*LX!_tL#OB>YcWY8K#4>0v?j zW=w@VupO1$+FUHj-D6MhkDVqGgg0kw2jcZ1T1n&kT<%*3emyOz!UEg%G=OegX-q2 zJWnQ@c3SQ@wZSvhPGSe$t*>Sf+X_kPTWBK540G_wn?e_5k^&vsl>9Gmk^nDS zF-#=cPt@(LSE{?9V;h%oQEjjEHBL?Fzak)2yPwT2?2ISL9ooAa3+>lm|h_>lv8xn`-SxdSd zq?;rV5sTxh2wCyKWYUJySJJfa2a}QqLkZrnm` z`DnA&WICsvbGs-fQirRK_QWu3i}N3<0u`4xun_PzGswK@IL(><_@us!Z3|1add`{D%?hCFy4cKNZfu7W zJf_ubvl2MBAzHhPe?$_$oy6qKp0`Fg9duhPB+nsMeYqlzh=t49>5w)fr4~gzW9sJNU5i zMUIN0!ZcudkY36AnvELc)V+CUdlxuJuyqxlHRz)HT~qOgtl66J{vnH8`IMz>`D#Oe zow2Vz2KpDO;QsaF$DHc%vnSaAOX5|RXe{)d$}ANBQP@$&{>@;_ zx);N+J{#uu=XX%^g_B<&&3#t`2m`Q=5XG)H>&oX-eHMP7|8M~f z)aBg;Jt(HYn&QPkep8iH>*}O&<1{}>jsq||*m%Sl>=r3tUK?v0){smrkWNdCduH4L zw{I^`-gfVuuHcINyQPcuwBtI%Bpyf}2>s8?62nF;%h2CH#rKp$TOtYCKmZoAO)eJ& zcXQ~(79|Kna)G8FX&}w?(d5Oq8~!HSp}(7tEVo3pR{16RYBwXdCr*vi_w)1Oz-uUR?y11!$5AJ(0D!dL{o)Z0_3@`_iF4;*k zR(~3{s#^*0LF(2)$d{%XL|7}jPDnZqN;n!n124hK?)G#$^0@J3KB!<4Ck{3@ZSdI9 z{9RFA^4f5ynD~IWjfvF?^>^Uqz8K!<4RzS7~BRv%YSfimh;ZR1bv>k~_u>ru%Wxh|S+SXe8X zBA&j!yZHGgpuowg0w5qQ_|IQt|7OGyu#A5_)ed}4l5Nr){s$$YY?HgwtpX4~yS%yC z73rKe=lg}d3&_hv8n;ESy@<-FUwVpmH?gIm8e`h!{TQLIr>yrJXV34~kFR>CF!f*h zJD;e_}sSSEk*3P6OqzjjVd=vX*IomfB8rEkS@hDFF@+Rdxl$vd*E}a z%Ks)tB}jXTo(W83xc6SNjF)Wuin2xRrs!$%%bU6yAl412Qf6iN47SDcO$N3yysjaH zPDqDN8w6QekT-p{IlI-@)AJ6VId=xbk4GPFpo+3a^@R|qPrHWH%Sj7%ZfBEOpT062fK>DHRnr$hvDR$}2B(tMfz#a3o1`{Qr6tT?!Bc6d2%&Ga zT9MU~k3f3k-4jYz(GVGVhCwg_@#Iew9&Tt6fLB6m$09V8Y!28ZET^(sZw~y~!ZX>W zGh)AW_|U>6J?9#_ALeSjrR^pA`L1!FS;EhvyeDFjbKdE0<<|#sHj;kZM^5=rGxhnN zc`}8c@*30IW89#Mx+Xwp9?oh_{C-#1dks@So@G=no6WE)C{vxqn%LqzacV4nNmlvn zY(AH*?6M+UpLi_9_|EF`!rFH2ez7){5i5QK0GT@nS4K!%5X`6Smfq`zmecEqVcWA~KsfwFUJru6S z>CJ12N0XbdoFHER&g`1AH?q(F26r)B&RoTCLEHEJE}oy^~*y00HaCbA}!%Egt81`0I5klyCEA!E4Q^?=%v;k{p*o% z#ql3z4mq#*W_Zf)+_~Lx^lV^a+EK1Alk=v(KDF!*m*2nux>~JDYL&{@vGJySY@+(4D7Qaq$o4Nq$r7}RTHgRhwa z>>F$z-9`X|sl&`-Umo+=36A93L$k&AK*Z?TiiNhsx3@J+j_29 zDU^S>{)HpvB(%S^pPuQ5=NMiy)67dUuJ7O}@fyd9jC)hlUBBMIR4Qr&b{KXr z=IpqI`8ea9TbaYW%B=bWjZxPxUteC|K0Uqe?@ni39Em!WE!_er_Xv2NcTUqe9FJ(L zl++GF2gD`9bZ%4kc<9aOo`*k1V`GVdLLSMUF1RhiF$*?Swz22IQjJ-K>F#&zS7hrA zw0gf$8-(Ac-oyPoel{<6&p1Ckt~gF4gz{VT`S7E*Im|xUh|J=g?a|nIyJH|`S078w zL~usZC@_UA*sqe>3Z?_x)6me>1(`Z2f2sZmKQZ$jrkJ|&t+e`s?Wk$4_r6gP(F%fi z#i+s~oPkDPPQ|~Ur&u{M^FGwkDLPFnv+v~=FE)0D0wgTl;?_r~qEI8dR2xA|p2W{S zIjssw;=MgMzs-G%^J?d13)A6qhTOMuNbhOnf>#B|mavWd1bRzt1$G)|WGwvw#2UL@ zK;p$y`8s8{_}%I4Hy7(~Zf*!#?D2Abt>6H>48M{QZJW(%fExp)Waw(hFz8KK_KruA zuj|!%-5xulwjf52BFPms$A1~#?OuKQ%>R+SKJ8z0>(h6-dKuFX@Fpb{8J4o3x28(G z2x}H;&h`u#-`p$GGM&<%AR1brq-rqlh~>Nx?RIS63k_{?87)mbD*atlCpilprFAaV z4j>TZROWa;Qdqc2(gqq3%(3 zMk{~ryXZC`YYGIM@{VR38#|mT@Hk19;@0-Y3*Vg_HekR$m9McWVZYEk?D}N229uHt zVIgr3AKNtf+DL*e!#zc_$4#@Dg9oL4eVFz@sQeGS{}9JcThuhvzQv?jbzp}Yk9o-X zzupt@EMK4P-}3!XcgR3PHeYQBu5)V4H?M6|HoI4|M_3esk+W}3L|m4pH$M|0do}Z@v({HwV3nO4 z>ev*spFLWgUI4of$CIO+hqhtsnjEX`4@((o*CDbr<}8;PZr9lQ^Z<6>6qBa=-aSW- zkSh4ez$9wV|Da46bbDJ5gt=J{Iz zS@ZcXYWhBcwkbl~H<_>OqD(vj9DQJzvd*7=0&Objh?#hRp9Nw!M zT_SqX6ZD3q4|@skek#QDs!z;AN3bBBX#!1j?|iUIii%&-nRsTU;Ho zLgcVQR_KAlI&ey~ca-y^1F)IlIHrc?l(dAV#3{V+XG3>kov3J?;6kK;4w@2y66&yP z6BWL_yCPuQoDOH}lrKu8+N=rV$&P#I&UOHlw0oyb-Vx2M5^zZV=(D+BTEQg?m@{jz z=N{)CJmZJr3v_s0pM$>X``)`gt2wn!sQrH@ZNxKTLZkTYM`~VWDYY; z?o^JC9oP;>Z`Jre0YltW-jSV zz^^RIfkfkUuZIk&XP9pwF1?W?1EGlJIsxBi8Ba^Y=8#q;o@m@7m8b-G#_qYH`}xum zPh`7qnB9~s;zk^Oz#lB>d(Q#E)wkEP2fn;PC+{cviAXO*IJ^DG zaKe7vlSW`hB(R;4>=;&A4iBH8OT3FvI8Et(j>Jq4fKKQgwclBxRf%8}Nu;Z7BX#l` z)->g5(y|~umH?kmR?>g*?W3vx7B87pvyN*{2>!W=X`wU~nk*#EINb&^ft2=Z@`JMo0e(_@Zy2s9DJwztg;+rA79wF)8{x~NzW`A9dZ6l zTOb`&2ybs=psY+F;vmjIoUl2C#?e*+tS@0DFgx%0qxgoRNF`6*LmP^30(~g5J6Z1t zFAw~<0i*)9Zy=a6yRvOBL>#^XWmPyMJs2p#5!b^P4WiL^Qa>YaX=EHsAyA<@#D8d( z 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Ξ@_P`Z!2|=bf3?WF%_4q}kt&i&+NhdD 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 geXXgVx{m{}s2IjT@H!2Qs%$IRF3v literal 0 HcmV?d00001 diff --git a/kmir/src/tests/integration/data/exec-smir/call-with-args/main-a-b-with-int.state b/kmir/src/tests/integration/data/exec-smir/call-with-args/main-a-b-with-int.state index cab66e3dc..056091d15 100644 --- a/kmir/src/tests/integration/data/exec-smir/call-with-args/main-a-b-with-int.state +++ b/kmir/src/tests/integration/data/exec-smir/call-with-args/main-a-b-with-int.state @@ -36,35 +36,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( 0 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionContinue , ListItem ( newLocal ( ty ( 1 ) , mutabilityMut ) ) ) ) ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 25 ) |-> monoItemFn (... name: symbol ( "a" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 56 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 11 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand (... span: span ( 57 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x0b\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 12 ) ) ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 58 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 59 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 60 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 61 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "s" ) , sourceInfo: sourceInfo (... span: span ( 61 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 62 ) ) ) ) - ty ( 27 ) |-> monoItemFn (... name: symbol ( "b" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 63 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 64 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 65 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 66 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "_s" ) , sourceInfo: sourceInfo (... span: span ( 65 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "_t" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 67 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\n\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 10 ) ) ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 52 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 53 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 54 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 55 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 29 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 30 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 20 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 31 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 11 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 9 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 28 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI16 ) ) - ty ( 30 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 31 ) |-> typeInfoVoidType - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/enum/enum.state b/kmir/src/tests/integration/data/exec-smir/enum/enum.state index df56b2700..65f7723a8 100644 --- a/kmir/src/tests/integration/data/exec-smir/enum/enum.state +++ b/kmir/src/tests/integration/data/exec-smir/enum/enum.state @@ -55,37 +55,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 7 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 51 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 8 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 8 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 9 ) ) ) ) .Operands ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 8 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand (... span: span ( 55 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 10 ) ) ) ) operandConstant ( constOperand (... span: span ( 56 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 11 ) ) ) ) .Operands ) ) , span: span ( 57 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 8 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand (... span: span ( 58 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 12 ) ) ) ) operandConstant ( constOperand (... span: span ( 59 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"+" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 13 ) ) ) ) operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 14 ) ) ) ) .Operands ) ) , span: span ( 61 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 62 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 89 , basicBlockIdx ( 1 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 50 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 16 ) ) .ProjectionElems ) ) ) ) , span: span ( 64 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 8 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 65 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 2 ) ) , span: span ( 63 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 67 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 65 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 66 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 4 ) ) , span: span ( 68 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 70 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 89 , basicBlockIdx ( 7 ) ) branch ( 90 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 69 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 72 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 8 ) ) , span: span ( 71 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 2 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 26 ) ) .ProjectionElems ) ) ) ) , span: span ( 74 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 8 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand (... span: span ( 75 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 15 ) ) ) ) operandConstant ( constOperand (... span: span ( 76 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 15 ) ) ) ) operandCopy ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 77 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 78 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 8 ) ) , span: span ( 73 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 80 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 8 ) ) , span: span ( 79 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 81 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 82 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 84 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 85 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 86 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 87 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 88 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 50 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 64 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 89 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 6 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 90 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 74 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 77 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 83 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 84 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "y" ) , sourceInfo: sourceInfo (... span: span ( 85 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "z" ) , sourceInfo: sourceInfo (... span: span ( 86 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "zz" ) , sourceInfo: sourceInfo (... span: span ( 87 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "zzz" ) , sourceInfo: sourceInfo (... span: span ( 88 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "y" ) , sourceInfo: sourceInfo (... span: span ( 64 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "zzz" ) , sourceInfo: sourceInfo (... span: span ( 89 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "zzz" ) , sourceInfo: sourceInfo (... span: span ( 91 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "z" ) , sourceInfo: sourceInfo (... span: span ( 74 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 92 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 31 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 32 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 19 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 33 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 12 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 10 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 25 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI16 ) ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 27 ) |-> typeInfoEnumType (... name: "Letter" , adtDef: adtDef ( 7 ) , discriminants: discriminant ( 65 ) discriminant ( 66 ) discriminant ( 77 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 65 , end: 77 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 65 , end: 77 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 28 ) |-> typeInfoEnumType (... name: "WithData" , adtDef: adtDef ( 8 ) , discriminants: discriminant ( 88 ) discriminant ( 89 ) discriminant ( 90 ) discriminant ( 9090 ) .Discriminants , fields: .Tys : ty ( 16 ) .Tys : ty ( 25 ) ty ( 26 ) .Tys : ty ( 2 ) ty ( 2 ) ty ( 26 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI16 , signed: false ) ) , validRange: wrappingRange (... start: 88 , end: 9090 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 2 ) , size: machineSize (... numBits: 16 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 32 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 4 ) , size: machineSize (... numBits: 64 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 16 ) machineSize (... numBits: 32 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 2 ) , size: machineSize (... numBits: 48 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 16 ) machineSize (... numBits: 24 ) machineSize (... numBits: 32 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 3 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 2 ) , size: machineSize (... numBits: 48 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 4 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 29 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU16 ) ) - ty ( 32 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 33 ) |-> typeInfoVoidType - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/intrinsic/blackbox.state b/kmir/src/tests/integration/data/exec-smir/intrinsic/blackbox.state index df75041f2..42d20c987 100644 --- a/kmir/src/tests/integration/data/exec-smir/intrinsic/blackbox.state +++ b/kmir/src/tests/integration/data/exec-smir/intrinsic/blackbox.state @@ -50,74 +50,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 0 ) |-> Integer ( 11 , 32 , false ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 35 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 43 ) |-> monoItemFn (... name: symbol ( "add_one" ) , id: defId ( 10 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 93 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 17 ) ) ) ) ) ) , span: span ( 94 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 41 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 93 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 17 ) ) ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 94 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 26 ) ) .ProjectionElems ) ) ) ) , span: span ( 94 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 95 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 26 ) , span: span ( 96 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 97 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 42 ) , span: span ( 94 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 97 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 98 ) ) ) ) - ty ( 44 ) |-> monoItemFn (... name: symbol ( "std::hint::black_box::" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 34 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 35 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 35 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 75 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 26 ) , span: span ( 76 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 41 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "dummy" ) , sourceInfo: sourceInfo (... span: span ( 41 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 77 ) ) ) ) - ty ( 45 ) |-> monoItemFn (... name: symbol ( "core::panicking::assert_failed::" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 80 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 80 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 37 ) ) ) , span: span ( 80 ) ) statement (... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 81 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 81 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 37 ) ) ) , span: span ( 81 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 78 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 36 ) , id: mirConstId ( 15 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 79 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 38 ) , span: span ( 82 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 84 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 85 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 40 ) , span: span ( 86 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 37 ) , span: span ( 80 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 80 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 37 ) , span: span ( 81 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 81 ) , mut: mutabilityNot ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 83 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "left" ) , sourceInfo: sourceInfo (... span: span ( 84 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "right" ) , sourceInfo: sourceInfo (... span: span ( 85 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo (... name: symbol ( "args" ) , sourceInfo: sourceInfo (... span: span ( 86 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 87 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 11 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 101 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\n\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 19 ) ) ) ) ) ) , span: span ( 102 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 99 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 43 ) , id: mirConstId ( 18 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 100 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 103 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 44 ) , id: mirConstId ( 20 ) ) ) ) , args: operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 1 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 104 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 106 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 107 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 107 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 108 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 4 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 109 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 4 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 110 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 7 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 111 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 112 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 105 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 105 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 113 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 12 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 116 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 13 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 46 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 117 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 114 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 45 ) , id: mirConstId ( 22 ) ) ) ) , args: operandMove ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 13 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 115 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 118 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 119 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 100 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 102 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 47 ) , span: span ( 108 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 107 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 109 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 110 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 41 ) , span: span ( 105 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 111 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 112 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 120 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 38 ) , span: span ( 115 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 40 ) , span: span ( 117 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "input" ) , sourceInfo: sourceInfo (... span: span ( 121 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand (... span: span ( 101 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\n\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 19 ) ) ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "result" ) , sourceInfo: sourceInfo (... span: span ( 119 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 109 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 110 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 120 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 122 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 79 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 80 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 25 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 38 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 64 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 62 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoEnumType (... name: "std::result::Result<(), std::fmt::Error>" , adtDef: adtDef ( 25 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 1 ) .Tys : ty ( 55 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 23 ) |-> typeInfoRefType ( ty ( 25 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 48 ) ) - ty ( 25 ) |-> typeInfoRefType ( ty ( 26 ) ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 31 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 33 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 34 ) |-> typeInfoPtrType ( ty ( 25 ) ) - ty ( 37 ) |-> typeInfoRefType ( ty ( 78 ) ) - ty ( 38 ) |-> typeInfoVoidType - ty ( 39 ) |-> typeInfoEnumType (... name: "core::panicking::AssertKind" , adtDef: adtDef ( 12 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 40 ) |-> typeInfoEnumType (... name: "std::option::Option>" , adtDef: adtDef ( 13 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 46 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) ) ) - ty ( 41 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 42 ) |-> typeInfoTupleType ( ty ( 26 ) ty ( 41 ) .Tys ) - ty ( 46 ) |-> typeInfoStructType ( "std::fmt::Arguments<'_>" , adtDef ( 32 ) , ty ( 57 ) ty ( 58 ) ty ( 59 ) .Tys ) - ty ( 47 ) |-> typeInfoTupleType ( ty ( 25 ) ty ( 25 ) .Tys ) - ty ( 48 ) |-> typeInfoStructType ( "std::fmt::Formatter<'_>" , adtDef ( 15 ) , ty ( 26 ) ty ( 49 ) ty ( 50 ) ty ( 51 ) ty ( 51 ) ty ( 52 ) .Tys ) - ty ( 49 ) |-> typeInfoPrimitiveType ( primTypeChar ) - ty ( 50 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Alignment" , adtDef: adtDef ( 22 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) discriminant ( 3 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 3 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 51 ) |-> typeInfoEnumType (... name: "std::option::Option" , adtDef: adtDef ( 13 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 53 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 52 ) |-> typeInfoRefType ( ty ( 54 ) ) - ty ( 53 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 55 ) |-> typeInfoStructType ( "std::fmt::Error" , adtDef ( 28 ) , .Tys ) - ty ( 56 ) |-> typeInfoRefType ( ty ( 76 ) ) - ty ( 57 ) |-> typeInfoRefType ( ty ( 60 ) ) - ty ( 58 ) |-> typeInfoEnumType (... name: "std::option::Option<&[core::fmt::rt::Placeholder]>" , adtDef: adtDef ( 13 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 63 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 59 ) |-> typeInfoRefType ( ty ( 67 ) ) - ty ( 60 ) |-> typeInfoArrayType ( ty ( 61 ) , noTyConst ) - ty ( 61 ) |-> typeInfoRefType ( ty ( 62 ) ) - ty ( 62 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 63 ) |-> typeInfoRefType ( ty ( 64 ) ) - ty ( 64 ) |-> typeInfoArrayType ( ty ( 65 ) , noTyConst ) - ty ( 65 ) |-> typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 36 ) , ty ( 53 ) ty ( 49 ) ty ( 50 ) ty ( 26 ) ty ( 66 ) ty ( 66 ) .Tys ) - ty ( 66 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Count" , adtDef: adtDef ( 43 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: ty ( 53 ) .Tys : ty ( 53 ) .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 67 ) |-> typeInfoArrayType ( ty ( 68 ) , noTyConst ) - ty ( 68 ) |-> typeInfoStructType ( "core::fmt::rt::Argument<'_>" , adtDef ( 46 ) , ty ( 69 ) .Tys ) - ty ( 69 ) |-> typeInfoEnumType (... name: "core::fmt::rt::ArgumentType<'_>" , adtDef: adtDef ( 48 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 70 ) ty ( 71 ) ty ( 72 ) .Tys : ty ( 53 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) machineSize (... numBits: 64 ) machineSize (... numBits: 128 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 70 ) |-> typeInfoStructType ( "std::ptr::NonNull<()>" , adtDef ( 53 ) , ty ( 73 ) .Tys ) - ty ( 72 ) |-> typeInfoStructType ( "std::marker::PhantomData<&()>" , adtDef ( 55 ) , .Tys ) - ty ( 73 ) |-> typeInfoPtrType ( ty ( 1 ) ) - ty ( 75 ) |-> typeInfoRefType ( ty ( 1 ) ) - ty ( 76 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 56 ) , ty ( 61 ) ty ( 26 ) ty ( 26 ) .Tys ) - ty ( 80 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/intrinsic/raw_eq_simple.state b/kmir/src/tests/integration/data/exec-smir/intrinsic/raw_eq_simple.state index f881481ee..95201e717 100644 --- a/kmir/src/tests/integration/data/exec-smir/intrinsic/raw_eq_simple.state +++ b/kmir/src/tests/integration/data/exec-smir/intrinsic/raw_eq_simple.state @@ -40,39 +40,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 1 ) |-> StringVal ( "assertion failed: result" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 25 ) |-> IntrinsicFunction ( symbol ( "raw_eq" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 51 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 56 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 57 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 26 ) , id: mirConstId ( 11 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 27 ) , id: mirConstId ( 12 ) ) ) ) .Operands , destination: place (... local: local ( 6 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 57 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 58 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 59 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 60 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 16 ) , span: span ( 61 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 62 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 29 ) , span: span ( 54 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 29 ) , span: span ( 55 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 30 ) , span: span ( 57 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 60 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 61 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "result" ) , sourceInfo: sourceInfo (... span: span ( 62 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 63 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 32 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 33 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 13 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 30 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 24 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 22 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 35 ) ) - ty ( 28 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 29 ) |-> typeInfoRefType ( ty ( 16 ) ) - ty ( 30 ) |-> typeInfoVoidType - ty ( 33 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 34 ) |-> typeInfoRefType ( ty ( 36 ) ) - ty ( 35 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 36 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 18 ) , ty ( 27 ) ty ( 37 ) ty ( 37 ) .Tys ) - ty ( 37 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/niche-enum/niche-enum.state b/kmir/src/tests/integration/data/exec-smir/niche-enum/niche-enum.state index 22ce9e213..df69429dc 100644 --- a/kmir/src/tests/integration/data/exec-smir/niche-enum/niche-enum.state +++ b/kmir/src/tests/integration/data/exec-smir/niche-enum/niche-enum.state @@ -76,84 +76,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 2 ) |-> Aggregate ( variantIdx ( 0 ) , .List ) - allocId ( 3 ) |-> Aggregate ( variantIdx ( 1 ) , ListItem ( Aggregate ( variantIdx ( 0 ) , .List ) ) ) - allocId ( 4 ) |-> Aggregate ( variantIdx ( 1 ) , ListItem ( Aggregate ( variantIdx ( 1 ) , .List ) ) ) - allocId ( 7 ) |-> StringVal ( "Two" ) - allocId ( 8 ) |-> StringVal ( "One" ) - allocId ( 9 ) |-> StringVal ( "Some" ) - allocId ( 10 ) |-> StringVal ( "None" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 45 ) |-> monoItemFn (... name: symbol ( "::eq" ) , id: defId ( 16 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 149 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 149 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 149 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 148 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 44 ) , span: span ( 149 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 6 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 6 ) , span: span ( 149 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 149 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 149 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "__self_discr" ) , sourceInfo: sourceInfo (... span: span ( 149 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "__arg1_discr" ) , sourceInfo: sourceInfo (... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 149 ) ) ) ) - ty ( 47 ) |-> monoItemFn (... name: symbol ( "foo" ) , id: defId ( 10 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 1 , basicBlockIdx ( 3 ) ) branch ( 2 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 88 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 11 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 42 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 89 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 4 ) ) , span: span ( 89 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 12 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 91 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 11 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 42 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 92 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 4 ) ) , span: span ( 90 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 12 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 94 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 11 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 42 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 95 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 4 ) ) , span: span ( 93 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 96 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 46 ) , span: span ( 97 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 9 ) , span: span ( 98 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 42 ) , span: span ( 94 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 42 ) , span: span ( 91 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 98 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 99 ) ) ) ) - ty ( 48 ) |-> monoItemFn (... name: symbol ( " as std::cmp::PartialEq>::eq" ) , id: defId ( 9 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 73 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 72 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindUnreachable , span: span ( 73 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 73 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 6 ) ) branch ( 1 , basicBlockIdx ( 7 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 72 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 73 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 4 ) ) branch ( 1 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 72 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 74 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 44 ) , id: mirConstId ( 16 ) ) ) ) ) ) , span: span ( 74 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 8 ) ) , span: span ( 74 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 75 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 44 ) , id: mirConstId ( 17 ) ) ) ) ) ) , span: span ( 75 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 8 ) ) , span: span ( 75 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 76 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 44 ) , id: mirConstId ( 17 ) ) ) ) ) ) , span: span ( 76 ) ) .Statements , terminator: terminator (... kind: terminatorKindGoto (... target: basicBlockIdx ( 8 ) ) , span: span ( 76 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 42 ) ) .ProjectionElems ) ) ) , span: span ( 78 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 42 ) ) .ProjectionElems ) ) ) , span: span ( 79 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 77 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 45 ) , id: mirConstId ( 18 ) ) ) ) , args: operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 77 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 80 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 44 ) , span: span ( 81 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 82 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 6 ) , span: span ( 84 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 6 ) , span: span ( 85 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 6 ) , span: span ( 86 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 78 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 79 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 82 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 83 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "l" ) , sourceInfo: sourceInfo (... span: span ( 78 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "r" ) , sourceInfo: sourceInfo (... span: span ( 79 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 87 ) ) ) ) - ty ( 49 ) |-> monoItemFn (... name: symbol ( "core::panicking::assert_failed::, std::option::Option>" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 55 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 55 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 36 ) ) ) , span: span ( 55 ) ) statement (... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 36 ) ) ) , span: span ( 56 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 35 ) , id: mirConstId ( 10 ) ) ) ) , args: operandMove ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 54 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 37 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 38 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 59 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 60 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 39 ) , span: span ( 61 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 36 ) , span: span ( 55 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 55 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 36 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 56 ) , mut: mutabilityNot ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "left" ) , sourceInfo: sourceInfo (... span: span ( 59 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "right" ) , sourceInfo: sourceInfo (... span: span ( 60 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo (... name: symbol ( "args" ) , sourceInfo: sourceInfo (... span: span ( 61 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 62 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 13 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 100 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 47 ) , id: mirConstId ( 19 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 101 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 20 ) ) ) ) .Operands , destination: place (... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 102 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 104 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 105 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 22 ) ) ) ) ) ) , span: span ( 105 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 106 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 107 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 108 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 103 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 48 ) , id: mirConstId ( 21 ) ) ) ) , args: operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 103 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 103 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 109 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 47 ) , id: mirConstId ( 19 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 110 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 23 ) ) ) ) .Operands , destination: place (... local: local ( 13 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 5 ) ) , unwind: unwindActionContinue ) , span: span ( 111 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 14 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 114 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 11 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 115 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 112 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 49 ) , id: mirConstId ( 24 ) ) ) ) , args: operandMove ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 9 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 113 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 13 ) , projection: .ProjectionElems ) ) ) , span: span ( 117 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 118 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 25 ) ) ) ) ) ) , span: span ( 118 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 119 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 11 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 120 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 11 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 121 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 116 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 48 ) , id: mirConstId ( 21 ) ) ) ) , args: operandCopy ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 17 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 6 ) ) , unwind: unwindActionContinue ) , span: span ( 116 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 17 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 116 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 122 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 47 ) , id: mirConstId ( 19 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 123 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x02" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 26 ) ) ) ) .Operands , destination: place (... local: local ( 23 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 124 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 14 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 127 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 11 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 128 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 125 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 49 ) , id: mirConstId ( 24 ) ) ) ) , args: operandMove ( place (... local: local ( 18 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 20 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 19 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 126 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 23 ) , projection: .ProjectionElems ) ) ) , span: span ( 130 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 4 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 27 ) ) ) ) ) ) , span: span ( 131 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandMove ( place (... local: local ( 22 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 24 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 21 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 21 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 134 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 129 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 48 ) , id: mirConstId ( 21 ) ) ) ) , args: operandCopy ( place (... local: local ( 25 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 26 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 27 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionContinue ) , span: span ( 129 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 27 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 12 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 129 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 135 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 14 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 138 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 11 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 139 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 136 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 49 ) , id: mirConstId ( 24 ) ) ) ) , args: operandMove ( place (... local: local ( 28 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 25 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 26 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 30 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 29 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 137 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 140 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 51 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 104 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 46 ) , span: span ( 102 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 105 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 107 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 108 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 44 ) , span: span ( 103 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 38 ) , span: span ( 141 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 37 ) , span: span ( 113 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 39 ) , span: span ( 115 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 51 ) , span: span ( 119 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 117 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 46 ) , span: span ( 111 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 118 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 120 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 121 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 44 ) , span: span ( 116 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 38 ) , span: span ( 142 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 37 ) , span: span ( 126 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 39 ) , span: span ( 128 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 51 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 130 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 46 ) , span: span ( 124 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 134 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 44 ) , span: span ( 129 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 38 ) , span: span ( 143 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 37 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 39 ) , span: span ( 139 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 107 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 108 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 141 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 120 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 121 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 142 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "left_val" ) , sourceInfo: sourceInfo (... span: span ( 133 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 25 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "right_val" ) , sourceInfo: sourceInfo (... span: span ( 134 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "kind" ) , sourceInfo: sourceInfo (... span: span ( 143 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 28 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 144 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 82 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 83 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 28 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 37 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709552000 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 73 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 71 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoEnumType (... name: "std::result::Result<(), std::fmt::Error>" , adtDef: adtDef ( 28 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 1 ) .Tys : ty ( 61 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 8 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 23 ) |-> typeInfoRefType ( ty ( 25 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 53 ) ) - ty ( 25 ) |-> typeInfoRefType ( ty ( 46 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 28 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 42 ) ) - ty ( 30 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 32 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 33 ) |-> typeInfoPtrType ( ty ( 28 ) ) - ty ( 34 ) |-> typeInfoPtrType ( ty ( 25 ) ) - ty ( 36 ) |-> typeInfoRefType ( ty ( 62 ) ) - ty ( 37 ) |-> typeInfoVoidType - ty ( 38 ) |-> typeInfoEnumType (... name: "core::panicking::AssertKind" , adtDef: adtDef ( 14 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 39 ) |-> typeInfoEnumType (... name: "std::option::Option>" , adtDef: adtDef ( 11 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 50 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 384 ) ) ) ) - ty ( 41 ) |-> typeInfoRefType ( ty ( 52 ) ) - ty ( 42 ) |-> typeInfoEnumType (... name: "SmallInt" , adtDef: adtDef ( 12 ) , discriminants: discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 1 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 1 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 44 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 46 ) |-> typeInfoEnumType (... name: "std::option::Option" , adtDef: adtDef ( 11 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 42 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 1 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 50 ) |-> typeInfoStructType ( "std::fmt::Arguments<'_>" , adtDef ( 35 ) , ty ( 64 ) ty ( 65 ) ty ( 66 ) .Tys ) - ty ( 51 ) |-> typeInfoTupleType ( ty ( 25 ) ty ( 25 ) .Tys ) - ty ( 52 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 53 ) |-> typeInfoStructType ( "std::fmt::Formatter<'_>" , adtDef ( 18 ) , ty ( 54 ) ty ( 55 ) ty ( 56 ) ty ( 57 ) ty ( 57 ) ty ( 58 ) .Tys ) - ty ( 54 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 55 ) |-> typeInfoPrimitiveType ( primTypeChar ) - ty ( 56 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Alignment" , adtDef: adtDef ( 25 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) discriminant ( 3 ) .Discriminants , fields: .Tys : .Tys : .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 3 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) .LayoutShapes ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI8 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 3 ) ) ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 8 ) ) ) ) - ty ( 57 ) |-> typeInfoEnumType (... name: "std::option::Option" , adtDef: adtDef ( 11 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 59 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 1 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 58 ) |-> typeInfoRefType ( ty ( 60 ) ) - ty ( 59 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 61 ) |-> typeInfoStructType ( "std::fmt::Error" , adtDef ( 31 ) , .Tys ) - ty ( 63 ) |-> typeInfoRefType ( ty ( 81 ) ) - ty ( 64 ) |-> typeInfoRefType ( ty ( 67 ) ) - ty ( 65 ) |-> typeInfoEnumType (... name: "std::option::Option<&[core::fmt::rt::Placeholder]>" , adtDef: adtDef ( 11 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: .Tys : ty ( 68 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 0 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 66 ) |-> typeInfoRefType ( ty ( 72 ) ) - ty ( 67 ) |-> typeInfoArrayType ( ty ( 41 ) , noTyConst ) - ty ( 68 ) |-> typeInfoRefType ( ty ( 69 ) ) - ty ( 69 ) |-> typeInfoArrayType ( ty ( 70 ) , noTyConst ) - ty ( 70 ) |-> typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 39 ) , ty ( 59 ) ty ( 55 ) ty ( 56 ) ty ( 54 ) ty ( 71 ) ty ( 71 ) .Tys ) - ty ( 71 ) |-> typeInfoEnumType (... name: "core::fmt::rt::Count" , adtDef: adtDef ( 46 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) discriminant ( 2 ) .Discriminants , fields: ty ( 59 ) .Tys : ty ( 59 ) .Tys : .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: false ) ) , validRange: wrappingRange (... start: 0 , end: 2 ) ) ) , tagEncoding: tagEncodingDirect , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 2 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 1 ) , size: machineSize (... numBits: 64 ) ) .LayoutShapes ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 72 ) |-> typeInfoArrayType ( ty ( 73 ) , noTyConst ) - ty ( 73 ) |-> typeInfoStructType ( "core::fmt::rt::Argument<'_>" , adtDef ( 49 ) , ty ( 74 ) .Tys ) - ty ( 74 ) |-> typeInfoEnumType (... name: "core::fmt::rt::ArgumentType<'_>" , adtDef: adtDef ( 51 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 75 ) ty ( 76 ) ty ( 77 ) .Tys : ty ( 59 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeMultiple ( mk (... tag: scalarInitialized ( mk (... value: primitivePointer ( addressSpace ( 0 ) ) , validRange: wrappingRange (... start: 1 , end: 0 ) ) ) , tagEncoding: tagEncodingNiche ( ) , tagField: 0 , variants: layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) machineSize (... numBits: 64 ) machineSize (... numBits: 128 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalarPair ( ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 64 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 1 ) ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) .LayoutShapes ) ) , abi: valueAbiAggregate ( mk (... sized: true ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 128 ) ) ) ) - ty ( 75 ) |-> typeInfoStructType ( "std::ptr::NonNull<()>" , adtDef ( 56 ) , ty ( 78 ) .Tys ) - ty ( 77 ) |-> typeInfoStructType ( "std::marker::PhantomData<&()>" , adtDef ( 58 ) , .Tys ) - ty ( 78 ) |-> typeInfoPtrType ( ty ( 1 ) ) - ty ( 80 ) |-> typeInfoRefType ( ty ( 1 ) ) - ty ( 81 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 59 ) , ty ( 41 ) ty ( 54 ) ty ( 54 ) .Tys ) - ty ( 83 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/pointers/pointer-cast-length-test-fail.state b/kmir/src/tests/integration/data/exec-smir/pointers/pointer-cast-length-test-fail.state index 844e01129..70178511b 100644 --- a/kmir/src/tests/integration/data/exec-smir/pointers/pointer-cast-length-test-fail.state +++ b/kmir/src/tests/integration/data/exec-smir/pointers/pointer-cast-length-test-fail.state @@ -86,55 +86,4 @@ ListItem ( typedValue ( Reference ( 0 , place (... local: local ( 1 ) , projection: .ProjectionElems ) , mutabilityNot , staticSize ( 8 ) ) , ty ( 31 ) , mutabilityNot ) ) ) ) ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 4 ) |-> StringVal ( "assertion failed: arr.len() >= 4" ) - allocId ( 5 ) |-> StringVal ( "assertion failed: arr4.len() == 4" ) - allocId ( 6 ) |-> StringVal ( "assertion failed: l4 == 4" ) - allocId ( 7 ) |-> StringVal ( "assertion failed: arr9.len() == 9" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 28 ) |-> monoItemFn (... name: symbol ( "array_cast_test" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 68 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand (... span: span ( 69 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 29 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 67 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 67 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 70 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 32 ) , id: mirConstId ( 12 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 71 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 72 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 33 ) , id: mirConstId ( 13 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00 \x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 34 ) , id: mirConstId ( 14 ) ) ) ) .Operands , destination: place (... local: local ( 4 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 72 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 35 ) ) ) , span: span ( 74 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 75 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 76 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 76 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 77 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 4 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 73 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 78 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 32 ) , id: mirConstId ( 12 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 13 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 6 ) ) , unwind: unwindActionContinue ) , span: span ( 79 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 80 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 33 ) , id: mirConstId ( 13 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00!\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 34 ) , id: mirConstId ( 15 ) ) ) ) .Operands , destination: place (... local: local ( 11 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 80 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) , ty ( 36 ) ) ) , span: span ( 82 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 83 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 29 ) , id: mirConstId ( 16 ) ) ) ) ) ) , span: span ( 83 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 29 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 81 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 81 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 7 ) , unwind: unwindActionContinue ) , span: span ( 81 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: projectionElemDeref projectionElemIndex ( local ( 14 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 85 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b")" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 17 ) ) ) ) ) ) , span: span ( 86 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 12 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 87 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandMove ( place (... local: local ( 19 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 87 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandMove ( place (... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 88 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandCopy ( place (... local: local ( 17 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 4 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 84 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 91 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 22 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 92 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 89 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 32 ) , id: mirConstId ( 12 ) ) ) ) , args: operandCopy ( place (... local: local ( 21 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 25 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionContinue ) , span: span ( 90 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 93 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 33 ) , id: mirConstId ( 13 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 34 ) , id: mirConstId ( 18 ) ) ) ) .Operands , destination: place (... local: local ( 20 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 93 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place (... local: local ( 25 ) , projection: .ProjectionElems ) ) , ty ( 37 ) ) ) , span: span ( 95 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 24 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 96 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 23 ) , projection: .ProjectionElems ) ) ) , span: span ( 97 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandMove ( place (... local: local ( 28 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 97 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandMove ( place (... local: local ( 27 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 98 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 26 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 9 , basicBlockIdx ( 11 ) ) .Branches , otherwise: basicBlockIdx ( 12 ) ) ) , span: span ( 94 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 99 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 100 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 33 ) , id: mirConstId ( 13 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00!\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 34 ) , id: mirConstId ( 19 ) ) ) ) .Operands , destination: place (... local: local ( 29 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 100 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 101 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 102 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 38 ) , span: span ( 67 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 68 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 72 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 40 ) , span: span ( 103 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 35 ) , span: span ( 74 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 71 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 77 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 76 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 41 ) , span: span ( 76 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 80 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 104 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 79 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 29 ) , span: span ( 81 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 38 ) , span: span ( 81 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 105 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 87 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 41 ) , span: span ( 87 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 93 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 92 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 41 ) , span: span ( 91 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 42 ) , span: span ( 106 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 37 ) , span: span ( 95 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 90 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 98 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 97 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 43 ) , span: span ( 97 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 39 ) , span: span ( 100 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "arr" ) , sourceInfo: sourceInfo (... span: span ( 102 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "arr4" ) , sourceInfo: sourceInfo (... span: span ( 103 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "arr4_mut" ) , sourceInfo: sourceInfo (... span: span ( 104 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "l4" ) , sourceInfo: sourceInfo (... span: span ( 105 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "s4" ) , sourceInfo: sourceInfo (... span: span ( 107 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "arr9" ) , sourceInfo: sourceInfo (... span: span ( 106 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 108 ) ) ) ) - ty ( 32 ) |-> monoItemFn (... name: symbol ( "core::slice::::as_ptr" ) , id: defId ( 5 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 46 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 47 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 25 ) ) ) , span: span ( 48 ) ) statement (... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 49 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 45 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 25 ) , span: span ( 50 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 51 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 46 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 51 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 52 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueRepeat ( operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 9 ) , id: mirConstId ( 10 ) ) ) ) , tyConst (... kind: tyConstKindValue ( ty ( 29 ) , allocation (... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) , span: span ( 61 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 62 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 58 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 28 ) , id: mirConstId ( 9 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 59 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 63 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 64 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 65 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 1 ) , span: span ( 59 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 62 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 31 ) , span: span ( 62 ) , mut: mutabilityNot ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 65 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 66 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 45 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 25 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 14 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 39 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 20 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 18 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 25 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 26 ) |-> typeInfoRefType ( ty ( 44 ) ) - ty ( 27 ) |-> typeInfoPtrType ( ty ( 44 ) ) - ty ( 29 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 30 ) |-> typeInfoArrayType ( ty ( 9 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 29 ) , allocation (... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 31 ) |-> typeInfoRefType ( ty ( 30 ) ) - ty ( 34 ) |-> typeInfoRefType ( ty ( 47 ) ) - ty ( 35 ) |-> typeInfoPtrType ( ty ( 40 ) ) - ty ( 36 ) |-> typeInfoPtrType ( ty ( 40 ) ) - ty ( 37 ) |-> typeInfoPtrType ( ty ( 42 ) ) - ty ( 38 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 39 ) |-> typeInfoVoidType - ty ( 40 ) |-> typeInfoArrayType ( ty ( 9 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 29 ) , allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 1 ) ) ) ) - ty ( 41 ) |-> typeInfoRefType ( ty ( 40 ) ) - ty ( 42 ) |-> typeInfoArrayType ( ty ( 9 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 29 ) , allocation (... bytes: b"\t\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 2 ) ) ) ) - ty ( 43 ) |-> typeInfoRefType ( ty ( 42 ) ) - ty ( 44 ) |-> typeInfoArrayType ( ty ( 9 ) , noTyConst ) - ty ( 46 ) |-> typeInfoRefType ( ty ( 48 ) ) - ty ( 47 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 48 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 24 ) , ty ( 34 ) ty ( 49 ) ty ( 49 ) .Tys ) - ty ( 49 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/pointers/pointer-cast-length-test.smir.dot b/kmir/src/tests/integration/data/exec-smir/pointers/pointer-cast-length-test.smir.dot new file mode 100644 index 000000000..7483702a1 --- /dev/null +++ b/kmir/src/tests/integration/data/exec-smir/pointers/pointer-cast-length-test.smir.dot @@ -0,0 +1,149 @@ +digraph { + label="pointer_cast_length_test"; + node [shape=rectangle]; + Xac08878333d72e42_0 [label="_ZN4core9panicking5panic1\n7h941160ead03e2d54E", color=red]; + Xc987e5ecea6cc82b_0 [label="_ZN3std2rt19lang_start_in\nternal17h018b8394ba015d86\nE", color=red]; + X3c6542d96320ad67_0 [label="Intr: \nblack_box", color=red]; + X8b0ac2e54b9a91_0 [label="NoOp: ", color=red]; + subgraph cluster_0 { + label="array_cast_test"; + style="filled"; + color=palegreen; + node_1 [label="LOCALS\l0 = ()\l1 = &[u8]\l2 = bool\l3 = usize\l4 = !\l5 = [u8; 4]\l6 = *const [u8; 4]\l7 = *const u8\l8 = usize\l9 = &[u8]\l10 = &[u8; 4]\l11 = !\l12 = *mut [u8; 4]\l13 = *const u8\l14 = usize\l15 = usize\l16 = bool\l17 = usize\l18 = &[u8]\l19 = &[u8; 4]\l20 = !\l21 = &[u8]\l22 = &[u8; 4]\l23 = [u8; 9]\l24 = *const [u8; 9]\l25 = *const u8\l26 = usize\l27 = &[u8]\l28 = &[u8; 9]\l29 = !\l", style="filled", color=palegreen3]; + X6f0ac4e7275d1318_0 -> X6f0ac4e7275d1318_2 [label="0"]; + X6f0ac4e7275d1318_0 -> X6f0ac4e7275d1318_1 [label="other"]; + X6f0ac4e7275d1318_0 [label="3 <- PtrMetadata(cp(1))\l2 <- Ge(mv(3), const ?_usize)\lSwitchInt mv(2)\l"]; + X6f0ac4e7275d1318_1 -> X6f0ac4e7275d1318_3 [label="7"]; + X6f0ac4e7275d1318_1 [label="Call\l"]; + X6f0ac4e7275d1318_2 [label="Call\l"]; + X6f0ac4e7275d1318_3 -> X6f0ac4e7275d1318_4 [label="4"]; + X6f0ac4e7275d1318_3 -> X6f0ac4e7275d1318_5 [label="other"]; + X6f0ac4e7275d1318_3 [label="6 <- Cast-PtrToPtr mv(7)\l5 <- Use(cp((*6)))\l10 <- & 5\l9 <- Cast-PointerCoercion(Unsize) mv(10)\l8 <- PtrMetadata(mv(9))\lSwitchInt mv(8)\l"]; + X6f0ac4e7275d1318_4 -> X6f0ac4e7275d1318_6 [label="13"]; + X6f0ac4e7275d1318_4 [label="Call\l"]; + X6f0ac4e7275d1318_5 [label="Call\l"]; + X6f0ac4e7275d1318_6 -> X6f0ac4e7275d1318_7; + X6f0ac4e7275d1318_6 [label="12 <- Cast-PtrToPtr mv(13)\l14 <- Use(const ?_usize)\l15 <- Use(const ?_usize)\l16 <- Lt(cp(14), cp(15))\lAssert mv(16) == true\l"]; + X6f0ac4e7275d1318_7 -> X6f0ac4e7275d1318_8 [label="4"]; + X6f0ac4e7275d1318_7 -> X6f0ac4e7275d1318_9 [label="other"]; + X6f0ac4e7275d1318_7 [label="(*12)[_14] <- Use(const ?_u8)\l19 <- & (*12)\l18 <- Cast-PointerCoercion(Unsize) mv(19)\l17 <- PtrMetadata(mv(18))\lSwitchInt cp(17)\l"]; + X6f0ac4e7275d1318_8 -> X6f0ac4e7275d1318_10 [label="25"]; + X6f0ac4e7275d1318_8 [label="22 <- & 5\l21 <- Cast-PointerCoercion(Unsize) cp(22)\lCall\l"]; + X6f0ac4e7275d1318_9 [label="Call\l"]; + X6f0ac4e7275d1318_10 -> X6f0ac4e7275d1318_11 [label="9"]; + X6f0ac4e7275d1318_10 -> X6f0ac4e7275d1318_12 [label="other"]; + X6f0ac4e7275d1318_10 [label="24 <- Cast-PtrToPtr mv(25)\l23 <- Use(cp((*24)))\l28 <- & 23\l27 <- Cast-PointerCoercion(Unsize) mv(28)\l26 <- PtrMetadata(mv(27))\lSwitchInt mv(26)\l"]; + X6f0ac4e7275d1318_11 [label="Return\l"]; + X6f0ac4e7275d1318_12 [label="Call\l"]; + } + X6f0ac4e7275d1318_1 -> X6d807aad28e61610_0 [label="cp(1)"]; + X6f0ac4e7275d1318_2 -> Xac08878333d72e42_0 [label="const &str"]; + X6f0ac4e7275d1318_4 -> X6d807aad28e61610_0 [label="cp(1)"]; + X6f0ac4e7275d1318_5 -> Xac08878333d72e42_0 [label="const &str"]; + X6f0ac4e7275d1318_8 -> X6d807aad28e61610_0 [label="cp(21)"]; + X6f0ac4e7275d1318_9 -> Xac08878333d72e42_0 [label="const &str"]; + X6f0ac4e7275d1318_12 -> Xac08878333d72e42_0 [label="const &str"]; + subgraph cluster_2 { + label="main"; + style="filled"; + color=palegreen; + node_3 [label="LOCALS\l0 = ()\l1 = [u8; 8]\l2 = ()\l3 = &[u8]\l4 = &[u8; 8]\l", style="filled", color=palegreen3]; + Xd4948713ce89e77b_0 -> Xd4948713ce89e77b_1 [label="2"]; + Xd4948713ce89e77b_0 [label="1 <- Repeat const ?_u8\l4 <- & 1\l3 <- Cast-PointerCoercion(Unsize) cp(4)\lCall\l"]; + Xd4948713ce89e77b_1 [label="Return\l"]; + } + Xd4948713ce89e77b_0 -> X6f0ac4e7275d1318_0 [label="mv(3)"]; + subgraph cluster_4 { + label="std::rt::lang_start::<()>"; + style="filled"; + color=lightgray; + node_5 [label="LOCALS\l0 = isize\l1 = fn()\l2 = isize\l3 = *const *const u8\l4 = u8\l5 = std::result::Result\l6 = &dyn std::ops::Fn() -> i32 + std::marker::Sync + std::panic::RefUnwindSafe\l7 = &{closure@std::rt::lang_start<()>::{closure#0}}\l8 = {closure@std::rt::lang_start<()>::{closure#0}}\l", style="filled", color=palegreen3]; + X5af0172d73504fdf_0 -> X5af0172d73504fdf_1 [label="5"]; + X5af0172d73504fdf_0 [label="Storage Live _5\lStorage Live _6\lStorage Live _8\l8 <- Closure (cp(1))\l7 <- & 8\l6 <- Cast-PointerCoercion(Unsize) cp(7)\lCall\l"]; + X5af0172d73504fdf_1 [label="Storage Dead _6\l0 <- Use(cp((5 as variant 0).0))\lStorage Dead _8\lStorage Dead _5\lReturn\l"]; + } + X5af0172d73504fdf_0 -> Xc987e5ecea6cc82b_0 [label="mv(6),mv(2),mv(3),mv(4)"]; + subgraph cluster_6 { + label="std::rt::lang_start::<()>\n::{closure#0}"; + style="filled"; + color=lightgray; + node_7 [label="LOCALS\l0 = i32\l1 = &{closure@std::rt::lang_start<()>::{closure#0}}\l2 = std::process::ExitCode\l3 = ()\l4 = fn()\l5 = &std::sys::pal::unix::process::process_common::ExitCode\l6 = u8\l", style="filled", color=palegreen3]; + Xa9f4d9a3cbdeae96_0 -> Xa9f4d9a3cbdeae96_1 [label="3"]; + Xa9f4d9a3cbdeae96_0 [label="Storage Live _2\lStorage Live _3\lStorage Live _4\l4 <- Use(cp((*1).0))\lCall\l"]; + Xa9f4d9a3cbdeae96_1 -> Xa9f4d9a3cbdeae96_2 [label="2"]; + Xa9f4d9a3cbdeae96_1 [label="Storage Dead _4\lCall\l"]; + Xa9f4d9a3cbdeae96_2 [label="Storage Dead _3\lStorage Live _5\l5 <- & 2.0\lStorage Live _6\l6 <- Use(cp(2.0.0))\l0 <- Cast-IntToInt mv(6)\lStorage Dead _6\lStorage Dead _5\lStorage Dead _2\lReturn\l"]; + } + Xa9f4d9a3cbdeae96_0 -> X4444e554f994172e_0 [label="mv(4)"]; + Xa9f4d9a3cbdeae96_1 -> Xe45df593c5cbfb8f_0 [label="mv(3)"]; + subgraph cluster_8 { + label="std::sys::backtrace::__ru\nst_begin_short_backtrace:\n:"; + style="filled"; + color=lightgray; + node_9 [label="LOCALS\l0 = ()\l1 = fn()\l2 = ()\l", style="filled", color=palegreen3]; + X4444e554f994172e_0 -> X4444e554f994172e_1 [label="0"]; + X4444e554f994172e_0 [label="Call\l"]; + X4444e554f994172e_1 -> X4444e554f994172e_2 [label="2"]; + X4444e554f994172e_1 [label="Call\l"]; + X4444e554f994172e_2 [label="Return\l"]; + } + X4444e554f994172e_0 -> Xf701bffc7f99646f_0 [label="mv(1),const ()"]; + X4444e554f994172e_1 -> X3c6542d96320ad67_0 [label="const ()"]; + subgraph cluster_10 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + node_11 [label="LOCALS\l0 = i32\l1 = *mut {closure@std::rt::lang_start<()>::{closure#0}}\l2 = ()\l", style="filled", color=palegreen3]; + X9b2936d3ff0691ed_0 -> X9b2936d3ff0691ed_1 [label="0"]; + X9b2936d3ff0691ed_0 [label="Call\l"]; + X9b2936d3ff0691ed_1 [label="Return\l"]; + } + X9b2936d3ff0691ed_0 -> Xbc7ae6075430b623_0 [label="mv((*1)),mv(2)"]; + subgraph cluster_12 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + node_13 [label="LOCALS\l0 = i32\l1 = {closure@std::rt::lang_start<()>::{closure#0}}\l2 = ()\l3 = &mut {closure@std::rt::lang_start<()>::{closure#0}}\l", style="filled", color=palegreen3]; + Xbc7ae6075430b623_0 -> Xbc7ae6075430b623_3 [label="Cleanup"]; + Xbc7ae6075430b623_0 -> Xbc7ae6075430b623_1 [label="0"]; + Xbc7ae6075430b623_0 [label="3 <- &mut 1\lCall\l"]; + Xbc7ae6075430b623_1 -> Xbc7ae6075430b623_2; + Xbc7ae6075430b623_1 [label="Drop 1\l"]; + Xbc7ae6075430b623_2 [label="Return\l"]; + Xbc7ae6075430b623_3 -> Xbc7ae6075430b623_4; + Xbc7ae6075430b623_3 [label="Drop 1\l"]; + Xbc7ae6075430b623_4 [label="Resume\l"]; + } + Xbc7ae6075430b623_0 -> Xa9f4d9a3cbdeae96_0 [label="mv(3),mv(2)"]; + subgraph cluster_14 { + label=">::ca\nll_once"; + style="filled"; + color=lightgray; + node_15 [label="LOCALS\l0 = ()\l1 = fn()\l2 = ()\l", style="filled", color=palegreen3]; + Xf701bffc7f99646f_0 -> Xf701bffc7f99646f_1 [label="0"]; + Xf701bffc7f99646f_0 [label="Call\l"]; + Xf701bffc7f99646f_1 [label="Return\l"]; + } + Xf701bffc7f99646f_0 -> Xf701bffc7f99646f_0: 1 [label=""]; + subgraph cluster_16 { + label="std::ptr::drop_in_place::\n<{closure@std::rt::lang_s\ntart<()>::{closure#0}}>"; + style="filled"; + color=lightgray; + node_17 [label="LOCALS\l0 = ()\l1 = *mut {closure@std::rt::lang_start<()>::{closure#0}}\l", style="filled", color=palegreen3]; + X4a3a9878cdeeab7a_0 [label="Return\l"]; + } + subgraph cluster_18 { + label="core::slice::::as_ptr"; + style="filled"; + color=lightgray; + node_19 [label="LOCALS\l0 = *const u8\l1 = &[u8]\l2 = *const [u8]\l", style="filled", color=palegreen3]; + X6d807aad28e61610_0 [label="Storage Live _2\l2 <- &raw (*1)\l0 <- Cast-PtrToPtr mv(2)\lStorage Dead _2\lReturn\l"]; + } + subgraph cluster_20 { + label="<() \nas \nstd::process::Termination\n>::report"; + style="filled"; + color=lightgray; + node_21 [label="LOCALS\l0 = std::process::ExitCode\l1 = ()\l", style="filled", color=palegreen3]; + Xe45df593c5cbfb8f_0 [label="0 <- Use(const std::process::ExitCode)\lReturn\l"]; + } +} diff --git a/kmir/src/tests/integration/data/exec-smir/references/array_elem_ref.state b/kmir/src/tests/integration/data/exec-smir/references/array_elem_ref.state index 0daa7fe69..84d76d60d 100644 --- a/kmir/src/tests/integration/data/exec-smir/references/array_elem_ref.state +++ b/kmir/src/tests/integration/data/exec-smir/references/array_elem_ref.state @@ -45,43 +45,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 1 ) |-> StringVal ( "assertion failed: *x == 0" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 32 ) |-> monoItemFn (... name: symbol ( "f" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 51 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 1 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 50 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 52 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 10 ) ) ) ) .Operands , destination: place (... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 53 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 54 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 55 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 51 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 53 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 55 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 56 ) ) ) ) - ty ( 33 ) |-> monoItemFn (... name: symbol ( "g" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 57 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 58 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 59 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 59 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 60 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueRepeat ( operandConstant ( constOperand (... span: span ( 62 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 11 ) ) ) ) , tyConst (... kind: tyConstKindValue ( ty ( 31 ) , allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) , span: span ( 63 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 64 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 31 ) , id: mirConstId ( 12 ) ) ) ) ) ) , span: span ( 65 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 31 ) , id: mirConstId ( 13 ) ) ) ) ) ) , span: span ( 61 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 61 ) ) .Statements , terminator: terminator (... kind: assert (... cond: operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck (... len: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) , span: span ( 68 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 69 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 66 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 32 ) , id: mirConstId ( 14 ) ) ) ) , args: operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 67 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 70 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 33 ) , id: mirConstId ( 15 ) ) ) ) , args: operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 71 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 72 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 73 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 34 ) , span: span ( 74 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 75 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 31 ) , span: span ( 65 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 31 ) , span: span ( 61 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 61 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 76 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 1 ) , span: span ( 67 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 1 ) , span: span ( 71 ) , mut: mutabilityNot ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 74 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "i" ) , sourceInfo: sourceInfo (... span: span ( 77 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand (... span: span ( 64 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 31 ) , id: mirConstId ( 12 ) ) ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 75 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "xx" ) , sourceInfo: sourceInfo (... span: span ( 76 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 78 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 40 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 41 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 25 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 29 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 12 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 10 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 26 ) |-> typeInfoRefType ( ty ( 38 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 28 ) ) - ty ( 28 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 29 ) |-> typeInfoVoidType - ty ( 30 ) |-> typeInfoPtrType ( ty ( 28 ) ) - ty ( 31 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 34 ) |-> typeInfoArrayType ( ty ( 28 ) , someTyConst ( tyConst (... kind: tyConstKindValue ( ty ( 31 ) , allocation (... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) - ty ( 35 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 37 ) |-> typeInfoRefType ( ty ( 39 ) ) - ty ( 38 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 39 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 16 ) , ty ( 26 ) ty ( 28 ) ty ( 28 ) .Tys ) - ty ( 41 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/references/doubleRef.smir.dot b/kmir/src/tests/integration/data/exec-smir/references/doubleRef.smir.dot new file mode 100644 index 000000000..3f81e56f8 --- /dev/null +++ b/kmir/src/tests/integration/data/exec-smir/references/doubleRef.smir.dot @@ -0,0 +1,129 @@ +digraph { + label="doubleRef"; + node [shape=rectangle]; + X3c6542d96320ad67_0 [label="Intr: \nblack_box", color=red]; + X8b0ac2e54b9a91_0 [label="NoOp: ", color=red]; + Xc987e5ecea6cc82b_0 [label="_ZN3std2rt19lang_start_in\nternal17h018b8394ba015d86\nE", color=red]; + Xac08878333d72e42_0 [label="_ZN4core9panicking5panic1\n7h941160ead03e2d54E", color=red]; + subgraph cluster_0 { + label="std::rt::lang_start::<()>"; + style="filled"; + color=lightgray; + Xbd299000b2add6c9_0 -> Xbd299000b2add6c9_1 [label="5"]; + Xbd299000b2add6c9_0 [label="Storage Live _5\lStorage Live _6\lStorage Live _8\l8 <- Closure (cp(1))\l7 <- & 8\l6 <- Cast-PointerCoercion(Unsize) cp(7)\lCall\l"]; + Xbd299000b2add6c9_1 [label="Storage Dead _6\l0 <- Use(cp(5 as VariantIdx(0).0))\lStorage Dead _8\lStorage Dead _5\lReturn\l"]; + } + Xbd299000b2add6c9_0 -> Xc987e5ecea6cc82b_0 [label="mv(6),mv(2),mv(3),mv(4)"]; + subgraph cluster_1 { + label="std::sys::backtrace::__ru\nst_begin_short_backtrace:\n:"; + style="filled"; + color=lightgray; + X3ba7b18402fcf308_0 -> X3ba7b18402fcf308_1 [label="0"]; + X3ba7b18402fcf308_0 [label="Call\l"]; + X3ba7b18402fcf308_1 -> X3ba7b18402fcf308_2 [label="2"]; + X3ba7b18402fcf308_1 [label="Call\l"]; + X3ba7b18402fcf308_2 [label="Return\l"]; + } + X3ba7b18402fcf308_0 -> X6791ad66ae25c2c6_0 [label="mv(1),const :: ()"]; + X3ba7b18402fcf308_1 -> X3c6542d96320ad67_0 [label="const :: ()"]; + subgraph cluster_2 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + X6caab78df6a04d46_0 -> X6caab78df6a04d46_3 [label="Cleanup"]; + X6caab78df6a04d46_0 -> X6caab78df6a04d46_1 [label="0"]; + X6caab78df6a04d46_0 [label="3 <- &mut 1\lCall\l"]; + X6caab78df6a04d46_1 -> X6caab78df6a04d46_2; + X6caab78df6a04d46_1 [label="Drop 1\l"]; + X6caab78df6a04d46_2 [label="Return\l"]; + X6caab78df6a04d46_3 -> X6caab78df6a04d46_4; + X6caab78df6a04d46_3 [label="Drop 1\l"]; + X6caab78df6a04d46_4 [label="Resume\l"]; + } + X6caab78df6a04d46_0 -> X3b93ed1388248238_0 [label="mv(3),mv(2)"]; + subgraph cluster_3 { + label="std::cmp::impls::::eq"; + style="filled"; + color=lightgray; + X306f7be73fcb3e03_0 [label="Storage Live _3\l3 <- Use(cp(*1))\lStorage Live _4\l4 <- Use(cp(*2))\l0 <- Eq(mv(3), mv(4))\lStorage Dead _4\lStorage Dead _3\lReturn\l"]; + } + subgraph cluster_4 { + label="<() \nas \nstd::process::Termination\n>::report"; + style="filled"; + color=lightgray; + X24ab9dbad4d15cdb_0 [label="0 <- Use(const :: std::process::ExitCode)\lReturn\l"]; + } + subgraph cluster_5 { + label="main"; + style="filled"; + color=palegreen; + X27bbcab3f64c86d7_0 -> X27bbcab3f64c86d7_2 [label="0"]; + X27bbcab3f64c86d7_0 -> X27bbcab3f64c86d7_1 [label="other"]; + X27bbcab3f64c86d7_0 [label="1 <- Use(const :: i8)\l2 <- & 1\l3 <- & 2\l13 <- CopyForDeref(*3)\l5 <- Use(cp(*13))\l4 <- Eq(mv(5), cp(1))\lSwitchInt mv(4)\l"]; + X27bbcab3f64c86d7_1 -> X27bbcab3f64c86d7_3 [label="7"]; + X27bbcab3f64c86d7_1 [label="8 <- & 3\l11 <- & 1\l10 <- & 11\l9 <- & 10\lCall\l"]; + X27bbcab3f64c86d7_2 [label="Call\l"]; + X27bbcab3f64c86d7_3 -> X27bbcab3f64c86d7_5 [label="0"]; + X27bbcab3f64c86d7_3 -> X27bbcab3f64c86d7_4 [label="other"]; + X27bbcab3f64c86d7_3 [label="SwitchInt mv(7)\l"]; + X27bbcab3f64c86d7_4 [label="Return\l"]; + X27bbcab3f64c86d7_5 [label="Call\l"]; + } + X27bbcab3f64c86d7_1 -> Xbfcd765f3e7d7ff4_0 [label="mv(8),mv(9)"]; + X27bbcab3f64c86d7_2 -> Xac08878333d72e42_0 [label="const :: &str"]; + X27bbcab3f64c86d7_5 -> Xac08878333d72e42_0 [label="const :: &str"]; + subgraph cluster_6 { + label=">::ca\nll_once"; + style="filled"; + color=lightgray; + X6791ad66ae25c2c6_0 -> X6791ad66ae25c2c6_1 [label="0"]; + X6791ad66ae25c2c6_0 [label="Call\l"]; + X6791ad66ae25c2c6_1 [label="Return\l"]; + } + X6791ad66ae25c2c6_0 -> X6791ad66ae25c2c6_0: 1 [label=""]; + subgraph cluster_7 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + X5f947730f4358238_0 -> X5f947730f4358238_1 [label="0"]; + X5f947730f4358238_0 [label="Call\l"]; + X5f947730f4358238_1 [label="Return\l"]; + } + X5f947730f4358238_0 -> X6caab78df6a04d46_0 [label="mv(*1),mv(2)"]; + subgraph cluster_8 { + label="std::cmp::impls::::eq"; + style="filled"; + color=lightgray; + Xf61d9d7989260c39_0 -> Xf61d9d7989260c39_1 [label="0"]; + Xf61d9d7989260c39_0 [label="3 <- Use(cp(*1))\l4 <- Use(cp(*2))\lCall\l"]; + Xf61d9d7989260c39_1 [label="Return\l"]; + } + Xf61d9d7989260c39_0 -> X306f7be73fcb3e03_0 [label="mv(3),mv(4)"]; + subgraph cluster_9 { + label="std::ptr::drop_in_place::\n<{closure@std::rt::lang_s\ntart<()>::{closure#0}}>"; + style="filled"; + color=lightgray; + X753c42307ad207a_0 [label="Return\l"]; + } + subgraph cluster_10 { + label="std::rt::lang_start::<()>\n::{closure#0}"; + style="filled"; + color=lightgray; + X3b93ed1388248238_0 -> X3b93ed1388248238_1 [label="3"]; + X3b93ed1388248238_0 [label="Storage Live _2\lStorage Live _3\lStorage Live _4\l4 <- Use(cp(*1.0))\lCall\l"]; + X3b93ed1388248238_1 -> X3b93ed1388248238_2 [label="2"]; + X3b93ed1388248238_1 [label="Storage Dead _4\lCall\l"]; + X3b93ed1388248238_2 [label="Storage Dead _3\lStorage Live _5\l5 <- & 2.0\lStorage Live _6\l6 <- Use(cp(2.0.0))\l0 <- Cast-IntToInt mv(6)\lStorage Dead _6\lStorage Dead _5\lStorage Dead _2\lReturn\l"]; + } + X3b93ed1388248238_0 -> X3ba7b18402fcf308_0 [label="mv(4)"]; + X3b93ed1388248238_1 -> X24ab9dbad4d15cdb_0 [label="mv(3)"]; + subgraph cluster_11 { + label="std::cmp::impls::::eq"; + style="filled"; + color=lightgray; + Xbfcd765f3e7d7ff4_0 -> Xbfcd765f3e7d7ff4_1 [label="0"]; + Xbfcd765f3e7d7ff4_0 [label="3 <- Use(cp(*1))\l4 <- Use(cp(*2))\lCall\l"]; + Xbfcd765f3e7d7ff4_1 [label="Return\l"]; + } + Xbfcd765f3e7d7ff4_0 -> Xf61d9d7989260c39_0 [label="mv(3),mv(4)"]; +} diff --git a/kmir/src/tests/integration/data/exec-smir/references/doubleRef.state b/kmir/src/tests/integration/data/exec-smir/references/doubleRef.state index 4efae3a3e..b0b2b9148 100644 --- a/kmir/src/tests/integration/data/exec-smir/references/doubleRef.state +++ b/kmir/src/tests/integration/data/exec-smir/references/doubleRef.state @@ -49,45 +49,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 2 ) |-> StringVal ( "assertion failed: **z == x" ) - allocId ( 3 ) |-> StringVal ( "assertion failed: z == &&x" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 23 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 4 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 26 ) , id: mirConstId ( 7 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 53 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 56 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 21 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 59 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 22 ) , span: span ( 58 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 22 ) , span: span ( 59 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 59 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 60 ) ) ) ) - ty ( 26 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 3 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 44 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 44 ) ) statement (... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 45 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 45 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 46 ) ) statement (... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 47 ) ) statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 47 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 43 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 21 ) , span: span ( 48 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 22 ) , span: span ( 49 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 22 ) , span: span ( 50 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 44 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 45 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 49 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 50 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 51 ) ) ) ) - ty ( 31 ) |-> monoItemFn (... name: symbol ( "std::cmp::impls::::eq" ) , id: defId ( 4 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 23 ) , id: mirConstId ( 6 ) ) ) ) , args: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 53 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 56 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 21 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 24 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 24 ) , span: span ( 59 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 58 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 59 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "other" ) , sourceInfo: sourceInfo (... span: span ( 59 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 60 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 69 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 69 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 70 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 71 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 72 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 13 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 72 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 68 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 68 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 74 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 75 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 11 ) , projection: .ProjectionElems ) ) ) , span: span ( 76 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 10 ) , projection: .ProjectionElems ) ) ) , span: span ( 76 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 73 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 31 ) , id: mirConstId ( 12 ) ) ) ) , args: operandMove ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 73 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 77 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 32 ) , id: mirConstId ( 13 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 33 ) , id: mirConstId ( 14 ) ) ) ) .Operands , destination: place (... local: local ( 6 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 77 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 73 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 78 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 79 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 32 ) , id: mirConstId ( 13 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 33 ) , id: mirConstId ( 15 ) ) ) ) .Operands , destination: place (... local: local ( 12 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 79 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 80 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 81 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 22 ) , span: span ( 82 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 21 ) , span: span ( 68 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 72 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 34 ) , span: span ( 77 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 21 ) , span: span ( 73 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 24 ) , span: span ( 74 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 24 ) , span: span ( 76 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 76 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 22 ) , span: span ( 75 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 34 ) , span: span ( 79 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 22 ) , span: span ( 83 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 81 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "y" ) , sourceInfo: sourceInfo (... span: span ( 82 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "z" ) , sourceInfo: sourceInfo (... span: span ( 83 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 84 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 40 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 41 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 26 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 34 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 18 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 16 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 21 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 22 ) |-> typeInfoRefType ( ty ( 2 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 25 ) ) - ty ( 25 ) |-> typeInfoRefType ( ty ( 22 ) ) - ty ( 28 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 30 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 33 ) |-> typeInfoRefType ( ty ( 36 ) ) - ty ( 34 ) |-> typeInfoVoidType - ty ( 35 ) |-> typeInfoRefType ( ty ( 37 ) ) - ty ( 36 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 37 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 11 ) , ty ( 33 ) ty ( 38 ) ty ( 38 ) .Tys ) - ty ( 38 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 41 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/references/mutableRef.state b/kmir/src/tests/integration/data/exec-smir/references/mutableRef.state index 16016bc20..bfef72bc6 100644 --- a/kmir/src/tests/integration/data/exec-smir/references/mutableRef.state +++ b/kmir/src/tests/integration/data/exec-smir/references/mutableRef.state @@ -44,40 +44,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 2 ) |-> StringVal ( "assertion failed: x == 32" ) - allocId ( 3 ) |-> StringVal ( "assertion failed: x == 22" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 25 ) |-> monoItemFn (... name: symbol ( "f" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 69 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b" " , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 15 ) ) ) ) ) ) , span: span ( 70 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 68 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 71 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 72 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "y" ) , sourceInfo: sourceInfo (... span: span ( 72 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 73 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 53 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 51 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 32 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 54 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 57 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 58 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x16" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 11 ) ) ) ) ) ) , span: span ( 59 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 60 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 22 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 56 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 61 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 26 ) , id: mirConstId ( 12 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 27 ) , id: mirConstId ( 13 ) ) ) ) .Operands , destination: place (... local: local ( 5 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 61 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 62 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 63 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 26 ) , id: mirConstId ( 12 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 27 ) , id: mirConstId ( 14 ) ) ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 63 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 64 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 1 ) , span: span ( 51 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 53 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 55 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 61 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 66 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 60 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 63 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 65 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "xref" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 67 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 31 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 32 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 15 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 29 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 21 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 19 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 34 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 2 ) ) - ty ( 29 ) |-> typeInfoVoidType - ty ( 32 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 33 ) |-> typeInfoRefType ( ty ( 35 ) ) - ty ( 34 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 35 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 24 ) , ty ( 27 ) ty ( 36 ) ty ( 36 ) .Tys ) - ty ( 36 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/references/refAsArg.smir.dot b/kmir/src/tests/integration/data/exec-smir/references/refAsArg.smir.dot new file mode 100644 index 000000000..a368bcb0f --- /dev/null +++ b/kmir/src/tests/integration/data/exec-smir/references/refAsArg.smir.dot @@ -0,0 +1,106 @@ +digraph { + label="refAsArg"; + node [shape=rectangle]; + Xac08878333d72e42_0 [label="_ZN4core9panicking5panic1\n7h941160ead03e2d54E", color=red]; + X8b0ac2e54b9a91_0 [label="NoOp: ", color=red]; + X3c6542d96320ad67_0 [label="Intr: \nblack_box", color=red]; + Xc987e5ecea6cc82b_0 [label="_ZN3std2rt19lang_start_in\nternal17h018b8394ba015d86\nE", color=red]; + subgraph cluster_0 { + label="<() \nas \nstd::process::Termination\n>::report"; + style="filled"; + color=lightgray; + X685d8b03f4714f81_0 [label="0 <- Use(const :: std::process::ExitCode)\lReturn\l"]; + } + subgraph cluster_1 { + label="std::rt::lang_start::<()>\n::{closure#0}"; + style="filled"; + color=lightgray; + X2ca4e3bc62b23458_0 -> X2ca4e3bc62b23458_1 [label="3"]; + X2ca4e3bc62b23458_0 [label="Storage Live _2\lStorage Live _3\lStorage Live _4\l4 <- Use(cp(*1.0))\lCall\l"]; + X2ca4e3bc62b23458_1 -> X2ca4e3bc62b23458_2 [label="2"]; + X2ca4e3bc62b23458_1 [label="Storage Dead _4\lCall\l"]; + X2ca4e3bc62b23458_2 [label="Storage Dead _3\lStorage Live _5\l5 <- & 2.0\lStorage Live _6\l6 <- Use(cp(2.0.0))\l0 <- Cast-IntToInt mv(6)\lStorage Dead _6\lStorage Dead _5\lStorage Dead _2\lReturn\l"]; + } + X2ca4e3bc62b23458_0 -> X8cd01eaf0ee453a_0 [label="mv(4)"]; + X2ca4e3bc62b23458_1 -> X685d8b03f4714f81_0 [label="mv(3)"]; + subgraph cluster_2 { + label="f"; + style="filled"; + color=palegreen; + Xe9d79bc649d28e38_0 [label="0 <- Use(cp(*1))\lReturn\l"]; + } + subgraph cluster_3 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + X1e39d93dda67c327_0 -> X1e39d93dda67c327_1 [label="0"]; + X1e39d93dda67c327_0 [label="Call\l"]; + X1e39d93dda67c327_1 [label="Return\l"]; + } + X1e39d93dda67c327_0 -> Xdfd1c8e91c9bd929_0 [label="mv(*1),mv(2)"]; + subgraph cluster_4 { + label=">::ca\nll_once"; + style="filled"; + color=lightgray; + Xb2cc101365e47af5_0 -> Xb2cc101365e47af5_1 [label="0"]; + Xb2cc101365e47af5_0 [label="Call\l"]; + Xb2cc101365e47af5_1 [label="Return\l"]; + } + Xb2cc101365e47af5_0 -> Xb2cc101365e47af5_0: 1 [label=""]; + subgraph cluster_5 { + label="main"; + style="filled"; + color=palegreen; + Xc5e028c99b7e0e30_0 -> Xc5e028c99b7e0e30_1 [label="2"]; + Xc5e028c99b7e0e30_0 [label="1 <- Use(const :: i8)\l3 <- & 1\lCall\l"]; + Xc5e028c99b7e0e30_1 -> Xc5e028c99b7e0e30_3 [label="0"]; + Xc5e028c99b7e0e30_1 -> Xc5e028c99b7e0e30_2 [label="other"]; + Xc5e028c99b7e0e30_1 [label="4 <- Eq(cp(2), cp(1))\lSwitchInt mv(4)\l"]; + Xc5e028c99b7e0e30_2 [label="Return\l"]; + Xc5e028c99b7e0e30_3 [label="Call\l"]; + } + Xc5e028c99b7e0e30_0 -> Xe9d79bc649d28e38_0 [label="cp(3)"]; + Xc5e028c99b7e0e30_3 -> Xac08878333d72e42_0 [label="const :: &str"]; + subgraph cluster_6 { + label="std::rt::lang_start::<()>"; + style="filled"; + color=lightgray; + X20f97efbd17a14b2_0 -> X20f97efbd17a14b2_1 [label="5"]; + X20f97efbd17a14b2_0 [label="Storage Live _5\lStorage Live _6\lStorage Live _8\l8 <- Closure (cp(1))\l7 <- & 8\l6 <- Cast-PointerCoercion(Unsize) cp(7)\lCall\l"]; + X20f97efbd17a14b2_1 [label="Storage Dead _6\l0 <- Use(cp(5 as VariantIdx(0).0))\lStorage Dead _8\lStorage Dead _5\lReturn\l"]; + } + X20f97efbd17a14b2_0 -> Xc987e5ecea6cc82b_0 [label="mv(6),mv(2),mv(3),mv(4)"]; + subgraph cluster_7 { + label="std::sys::backtrace::__ru\nst_begin_short_backtrace:\n:"; + style="filled"; + color=lightgray; + X8cd01eaf0ee453a_0 -> X8cd01eaf0ee453a_1 [label="0"]; + X8cd01eaf0ee453a_0 [label="Call\l"]; + X8cd01eaf0ee453a_1 -> X8cd01eaf0ee453a_2 [label="2"]; + X8cd01eaf0ee453a_1 [label="Call\l"]; + X8cd01eaf0ee453a_2 [label="Return\l"]; + } + X8cd01eaf0ee453a_0 -> Xb2cc101365e47af5_0 [label="mv(1),const :: ()"]; + X8cd01eaf0ee453a_1 -> X3c6542d96320ad67_0 [label="const :: ()"]; + subgraph cluster_8 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + Xdfd1c8e91c9bd929_0 -> Xdfd1c8e91c9bd929_3 [label="Cleanup"]; + Xdfd1c8e91c9bd929_0 -> Xdfd1c8e91c9bd929_1 [label="0"]; + Xdfd1c8e91c9bd929_0 [label="3 <- &mut 1\lCall\l"]; + Xdfd1c8e91c9bd929_1 -> Xdfd1c8e91c9bd929_2; + Xdfd1c8e91c9bd929_1 [label="Drop 1\l"]; + Xdfd1c8e91c9bd929_2 [label="Return\l"]; + Xdfd1c8e91c9bd929_3 -> Xdfd1c8e91c9bd929_4; + Xdfd1c8e91c9bd929_3 [label="Drop 1\l"]; + Xdfd1c8e91c9bd929_4 [label="Resume\l"]; + } + Xdfd1c8e91c9bd929_0 -> X2ca4e3bc62b23458_0 [label="mv(3),mv(2)"]; + subgraph cluster_9 { + label="std::ptr::drop_in_place::\n<{closure@std::rt::lang_s\ntart<()>::{closure#0}}>"; + style="filled"; + color=lightgray; + X2fd66bdb8e82d232_0 [label="Return\l"]; + } +} diff --git a/kmir/src/tests/integration/data/exec-smir/references/refAsArg.state b/kmir/src/tests/integration/data/exec-smir/references/refAsArg.state index 6ee544fa1..db3bb356c 100644 --- a/kmir/src/tests/integration/data/exec-smir/references/refAsArg.state +++ b/kmir/src/tests/integration/data/exec-smir/references/refAsArg.state @@ -39,40 +39,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 1 ) |-> StringVal ( "assertion failed: z == x" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 25 ) |-> monoItemFn (... name: symbol ( "f" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 62 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 61 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 2 ) , span: span ( 63 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 64 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "y" ) , sourceInfo: sourceInfo (... span: span ( 64 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 65 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 53 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 51 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 54 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 55 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 56 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 26 ) , id: mirConstId ( 11 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 27 ) , id: mirConstId ( 12 ) ) ) ) .Operands , destination: place (... local: local ( 5 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 56 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 59 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 53 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 29 ) , span: span ( 54 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 56 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "z" ) , sourceInfo: sourceInfo (... span: span ( 59 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 60 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 36 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 37 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 25 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 30 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 17 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 15 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 32 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 2 ) ) - ty ( 29 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 30 ) |-> typeInfoVoidType - ty ( 31 ) |-> typeInfoRefType ( ty ( 33 ) ) - ty ( 32 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 33 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 10 ) , ty ( 27 ) ty ( 34 ) ty ( 34 ) .Tys ) - ty ( 34 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 37 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/references/refAsArg2.smir.dot b/kmir/src/tests/integration/data/exec-smir/references/refAsArg2.smir.dot new file mode 100644 index 000000000..3e9c097af --- /dev/null +++ b/kmir/src/tests/integration/data/exec-smir/references/refAsArg2.smir.dot @@ -0,0 +1,115 @@ +digraph { + label="refAsArg2"; + node [shape=rectangle]; + X8b0ac2e54b9a91_0 [label="NoOp: ", color=red]; + X3c6542d96320ad67_0 [label="Intr: \nblack_box", color=red]; + Xc987e5ecea6cc82b_0 [label="_ZN3std2rt19lang_start_in\nternal17h018b8394ba015d86\nE", color=red]; + Xac08878333d72e42_0 [label="_ZN4core9panicking5panic1\n7h941160ead03e2d54E", color=red]; + subgraph cluster_0 { + label="std::rt::lang_start::<()>\n::{closure#0}"; + style="filled"; + color=lightgray; + Xc5a815e73373717f_0 -> Xc5a815e73373717f_1 [label="3"]; + Xc5a815e73373717f_0 [label="Storage Live _2\lStorage Live _3\lStorage Live _4\l4 <- Use(cp(*1.0))\lCall\l"]; + Xc5a815e73373717f_1 -> Xc5a815e73373717f_2 [label="2"]; + Xc5a815e73373717f_1 [label="Storage Dead _4\lCall\l"]; + Xc5a815e73373717f_2 [label="Storage Dead _3\lStorage Live _5\l5 <- & 2.0\lStorage Live _6\l6 <- Use(cp(2.0.0))\l0 <- Cast-IntToInt mv(6)\lStorage Dead _6\lStorage Dead _5\lStorage Dead _2\lReturn\l"]; + } + Xc5a815e73373717f_0 -> X2bd403d7859f7ae5_0 [label="mv(4)"]; + Xc5a815e73373717f_1 -> X17331deae89f58e7_0 [label="mv(3)"]; + subgraph cluster_1 { + label="std::sys::backtrace::__ru\nst_begin_short_backtrace:\n:"; + style="filled"; + color=lightgray; + X2bd403d7859f7ae5_0 -> X2bd403d7859f7ae5_1 [label="0"]; + X2bd403d7859f7ae5_0 [label="Call\l"]; + X2bd403d7859f7ae5_1 -> X2bd403d7859f7ae5_2 [label="2"]; + X2bd403d7859f7ae5_1 [label="Call\l"]; + X2bd403d7859f7ae5_2 [label="Return\l"]; + } + X2bd403d7859f7ae5_0 -> X45b785352b7c912f_0 [label="mv(1),const :: ()"]; + X2bd403d7859f7ae5_1 -> X3c6542d96320ad67_0 [label="const :: ()"]; + subgraph cluster_2 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + Xcf138c5a7b34606d_0 -> Xcf138c5a7b34606d_3 [label="Cleanup"]; + Xcf138c5a7b34606d_0 -> Xcf138c5a7b34606d_1 [label="0"]; + Xcf138c5a7b34606d_0 [label="3 <- &mut 1\lCall\l"]; + Xcf138c5a7b34606d_1 -> Xcf138c5a7b34606d_2; + Xcf138c5a7b34606d_1 [label="Drop 1\l"]; + Xcf138c5a7b34606d_2 [label="Return\l"]; + Xcf138c5a7b34606d_3 -> Xcf138c5a7b34606d_4; + Xcf138c5a7b34606d_3 [label="Drop 1\l"]; + Xcf138c5a7b34606d_4 [label="Resume\l"]; + } + Xcf138c5a7b34606d_0 -> Xc5a815e73373717f_0 [label="mv(3),mv(2)"]; + subgraph cluster_3 { + label="f"; + style="filled"; + color=palegreen; + Xa6a0d5dd60844a45_0 -> Xa6a0d5dd60844a45_1 [label="0"]; + Xa6a0d5dd60844a45_0 [label="Call\l"]; + Xa6a0d5dd60844a45_1 [label="Return\l"]; + } + Xa6a0d5dd60844a45_0 -> Xb7ca137976fc59f4_0 [label="cp(1)"]; + subgraph cluster_4 { + label="std::ptr::drop_in_place::\n<{closure@std::rt::lang_s\ntart<()>::{closure#0}}>"; + style="filled"; + color=lightgray; + Xbb24543691d1d5b6_0 [label="Return\l"]; + } + subgraph cluster_5 { + label="main"; + style="filled"; + color=palegreen; + X184612654b61cb15_0 -> X184612654b61cb15_1 [label="2"]; + X184612654b61cb15_0 [label="1 <- Use(const :: i8)\l3 <- & 1\lCall\l"]; + X184612654b61cb15_1 -> X184612654b61cb15_3 [label="0"]; + X184612654b61cb15_1 -> X184612654b61cb15_2 [label="other"]; + X184612654b61cb15_1 [label="4 <- Eq(cp(2), cp(1))\lSwitchInt mv(4)\l"]; + X184612654b61cb15_2 [label="Return\l"]; + X184612654b61cb15_3 [label="Call\l"]; + } + X184612654b61cb15_0 -> Xa6a0d5dd60844a45_0 [label="cp(3)"]; + X184612654b61cb15_3 -> Xac08878333d72e42_0 [label="const :: &str"]; + subgraph cluster_6 { + label="<() \nas \nstd::process::Termination\n>::report"; + style="filled"; + color=lightgray; + X17331deae89f58e7_0 [label="0 <- Use(const :: std::process::ExitCode)\lReturn\l"]; + } + subgraph cluster_7 { + label="g"; + style="filled"; + color=palegreen; + Xb7ca137976fc59f4_0 [label="0 <- Use(cp(*1))\lReturn\l"]; + } + subgraph cluster_8 { + label="std::rt::lang_start::<()>"; + style="filled"; + color=lightgray; + X37bbccad8e2a42c_0 -> X37bbccad8e2a42c_1 [label="5"]; + X37bbccad8e2a42c_0 [label="Storage Live _5\lStorage Live _6\lStorage Live _8\l8 <- Closure (cp(1))\l7 <- & 8\l6 <- Cast-PointerCoercion(Unsize) cp(7)\lCall\l"]; + X37bbccad8e2a42c_1 [label="Storage Dead _6\l0 <- Use(cp(5 as VariantIdx(0).0))\lStorage Dead _8\lStorage Dead _5\lReturn\l"]; + } + X37bbccad8e2a42c_0 -> Xc987e5ecea6cc82b_0 [label="mv(6),mv(2),mv(3),mv(4)"]; + subgraph cluster_9 { + label=">::ca\nll_once"; + style="filled"; + color=lightgray; + X45b785352b7c912f_0 -> X45b785352b7c912f_1 [label="0"]; + X45b785352b7c912f_0 [label="Call\l"]; + X45b785352b7c912f_1 [label="Return\l"]; + } + X45b785352b7c912f_0 -> X45b785352b7c912f_0: 1 [label=""]; + subgraph cluster_10 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + X14bc3a5ec9b4e773_0 -> X14bc3a5ec9b4e773_1 [label="0"]; + X14bc3a5ec9b4e773_0 [label="Call\l"]; + X14bc3a5ec9b4e773_1 [label="Return\l"]; + } + X14bc3a5ec9b4e773_0 -> Xcf138c5a7b34606d_0 [label="mv(*1),mv(2)"]; +} diff --git a/kmir/src/tests/integration/data/exec-smir/references/refAsArg2.state b/kmir/src/tests/integration/data/exec-smir/references/refAsArg2.state index 6ac139b9b..db3bb356c 100644 --- a/kmir/src/tests/integration/data/exec-smir/references/refAsArg2.state +++ b/kmir/src/tests/integration/data/exec-smir/references/refAsArg2.state @@ -39,41 +39,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 1 ) |-> StringVal ( "assertion failed: z == x" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 25 ) |-> monoItemFn (... name: symbol ( "f" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 61 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 31 ) , id: mirConstId ( 13 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 62 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 63 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 2 ) , span: span ( 64 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 65 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 65 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 66 ) ) ) ) - ty ( 31 ) |-> monoItemFn (... name: symbol ( "g" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 68 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 67 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 2 ) , span: span ( 69 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 70 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 70 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 71 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 53 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 51 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 54 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 55 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 56 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 26 ) , id: mirConstId ( 11 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 27 ) , id: mirConstId ( 12 ) ) ) ) .Operands , destination: place (... local: local ( 5 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 56 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 59 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 53 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 29 ) , span: span ( 54 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 56 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "z" ) , sourceInfo: sourceInfo (... span: span ( 59 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 60 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 32 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 33 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 14 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 30 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 19 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 17 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 36 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 2 ) ) - ty ( 29 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 30 ) |-> typeInfoVoidType - ty ( 33 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 35 ) |-> typeInfoRefType ( ty ( 37 ) ) - ty ( 36 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 37 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 24 ) , ty ( 27 ) ty ( 38 ) ty ( 38 ) .Tys ) - ty ( 38 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/references/refReturned.smir.dot b/kmir/src/tests/integration/data/exec-smir/references/refReturned.smir.dot new file mode 100644 index 000000000..4817f2f13 --- /dev/null +++ b/kmir/src/tests/integration/data/exec-smir/references/refReturned.smir.dot @@ -0,0 +1,115 @@ +digraph { + label="refReturned"; + node [shape=rectangle]; + X3c6542d96320ad67_0 [label="Intr: \nblack_box", color=red]; + X8b0ac2e54b9a91_0 [label="NoOp: ", color=red]; + Xac08878333d72e42_0 [label="_ZN4core9panicking5panic1\n7h941160ead03e2d54E", color=red]; + Xc987e5ecea6cc82b_0 [label="_ZN3std2rt19lang_start_in\nternal17h018b8394ba015d86\nE", color=red]; + subgraph cluster_0 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + X2b67616b31e45b20_0 -> X2b67616b31e45b20_3 [label="Cleanup"]; + X2b67616b31e45b20_0 -> X2b67616b31e45b20_1 [label="0"]; + X2b67616b31e45b20_0 [label="3 <- &mut 1\lCall\l"]; + X2b67616b31e45b20_1 -> X2b67616b31e45b20_2; + X2b67616b31e45b20_1 [label="Drop 1\l"]; + X2b67616b31e45b20_2 [label="Return\l"]; + X2b67616b31e45b20_3 -> X2b67616b31e45b20_4; + X2b67616b31e45b20_3 [label="Drop 1\l"]; + X2b67616b31e45b20_4 [label="Resume\l"]; + } + X2b67616b31e45b20_0 -> X3099dc956b67cfb9_0 [label="mv(3),mv(2)"]; + subgraph cluster_1 { + label="main"; + style="filled"; + color=palegreen; + X431952ad442c1d4f_0 -> X431952ad442c1d4f_1 [label="2"]; + X431952ad442c1d4f_0 [label="1 <- Use(const :: i8)\l3 <- & 1\lCall\l"]; + X431952ad442c1d4f_1 -> X431952ad442c1d4f_3 [label="0"]; + X431952ad442c1d4f_1 -> X431952ad442c1d4f_2 [label="other"]; + X431952ad442c1d4f_1 [label="4 <- Use(cp(*2))\l5 <- Eq(cp(4), cp(1))\lSwitchInt mv(5)\l"]; + X431952ad442c1d4f_2 [label="Return\l"]; + X431952ad442c1d4f_3 [label="Call\l"]; + } + X431952ad442c1d4f_0 -> Xb77a4ea00bddb5ee_0 [label="cp(3)"]; + X431952ad442c1d4f_3 -> Xac08878333d72e42_0 [label="const :: &str"]; + subgraph cluster_2 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + Xa0a612dbef71f102_0 -> Xa0a612dbef71f102_1 [label="0"]; + Xa0a612dbef71f102_0 [label="Call\l"]; + Xa0a612dbef71f102_1 [label="Return\l"]; + } + Xa0a612dbef71f102_0 -> X2b67616b31e45b20_0 [label="mv(*1),mv(2)"]; + subgraph cluster_3 { + label="g"; + style="filled"; + color=palegreen; + Xfe22f42cfe47a1ac_0 [label="0 <- Use(cp(1))\lReturn\l"]; + } + subgraph cluster_4 { + label="<() \nas \nstd::process::Termination\n>::report"; + style="filled"; + color=lightgray; + Xb5a1cedf0f02c033_0 [label="0 <- Use(const :: std::process::ExitCode)\lReturn\l"]; + } + subgraph cluster_5 { + label="std::ptr::drop_in_place::\n<{closure@std::rt::lang_s\ntart<()>::{closure#0}}>"; + style="filled"; + color=lightgray; + X477ce20d50401084_0 [label="Return\l"]; + } + subgraph cluster_6 { + label="std::rt::lang_start::<()>"; + style="filled"; + color=lightgray; + X8b185d64c9b90db6_0 -> X8b185d64c9b90db6_1 [label="5"]; + X8b185d64c9b90db6_0 [label="Storage Live _5\lStorage Live _6\lStorage Live _8\l8 <- Closure (cp(1))\l7 <- & 8\l6 <- Cast-PointerCoercion(Unsize) cp(7)\lCall\l"]; + X8b185d64c9b90db6_1 [label="Storage Dead _6\l0 <- Use(cp(5 as VariantIdx(0).0))\lStorage Dead _8\lStorage Dead _5\lReturn\l"]; + } + X8b185d64c9b90db6_0 -> Xc987e5ecea6cc82b_0 [label="mv(6),mv(2),mv(3),mv(4)"]; + subgraph cluster_7 { + label=">::ca\nll_once"; + style="filled"; + color=lightgray; + X8ba77942ecdf0df8_0 -> X8ba77942ecdf0df8_1 [label="0"]; + X8ba77942ecdf0df8_0 [label="Call\l"]; + X8ba77942ecdf0df8_1 [label="Return\l"]; + } + X8ba77942ecdf0df8_0 -> X8ba77942ecdf0df8_0: 1 [label=""]; + subgraph cluster_8 { + label="std::rt::lang_start::<()>\n::{closure#0}"; + style="filled"; + color=lightgray; + X3099dc956b67cfb9_0 -> X3099dc956b67cfb9_1 [label="3"]; + X3099dc956b67cfb9_0 [label="Storage Live _2\lStorage Live _3\lStorage Live _4\l4 <- Use(cp(*1.0))\lCall\l"]; + X3099dc956b67cfb9_1 -> X3099dc956b67cfb9_2 [label="2"]; + X3099dc956b67cfb9_1 [label="Storage Dead _4\lCall\l"]; + X3099dc956b67cfb9_2 [label="Storage Dead _3\lStorage Live _5\l5 <- & 2.0\lStorage Live _6\l6 <- Use(cp(2.0.0))\l0 <- Cast-IntToInt mv(6)\lStorage Dead _6\lStorage Dead _5\lStorage Dead _2\lReturn\l"]; + } + X3099dc956b67cfb9_0 -> X933d4e5c628373c7_0 [label="mv(4)"]; + X3099dc956b67cfb9_1 -> Xb5a1cedf0f02c033_0 [label="mv(3)"]; + subgraph cluster_9 { + label="f"; + style="filled"; + color=palegreen; + Xb77a4ea00bddb5ee_0 -> Xb77a4ea00bddb5ee_1 [label="0"]; + Xb77a4ea00bddb5ee_0 [label="Call\l"]; + Xb77a4ea00bddb5ee_1 [label="Return\l"]; + } + Xb77a4ea00bddb5ee_0 -> Xfe22f42cfe47a1ac_0 [label="cp(1)"]; + subgraph cluster_10 { + label="std::sys::backtrace::__ru\nst_begin_short_backtrace:\n:"; + style="filled"; + color=lightgray; + X933d4e5c628373c7_0 -> X933d4e5c628373c7_1 [label="0"]; + X933d4e5c628373c7_0 [label="Call\l"]; + X933d4e5c628373c7_1 -> X933d4e5c628373c7_2 [label="2"]; + X933d4e5c628373c7_1 [label="Call\l"]; + X933d4e5c628373c7_2 [label="Return\l"]; + } + X933d4e5c628373c7_0 -> X8ba77942ecdf0df8_0 [label="mv(1),const :: ()"]; + X933d4e5c628373c7_1 -> X3c6542d96320ad67_0 [label="const :: ()"]; +} diff --git a/kmir/src/tests/integration/data/exec-smir/references/refReturned.state b/kmir/src/tests/integration/data/exec-smir/references/refReturned.state index a5c093996..080d3afa0 100644 --- a/kmir/src/tests/integration/data/exec-smir/references/refReturned.state +++ b/kmir/src/tests/integration/data/exec-smir/references/refReturned.state @@ -40,41 +40,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 1 ) |-> StringVal ( "assertion failed: z == x" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 25 ) |-> monoItemFn (... name: symbol ( "f" ) , id: defId ( 7 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 63 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 31 ) , id: mirConstId ( 13 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 64 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 65 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 28 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 67 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - ty ( 31 ) |-> monoItemFn (... name: symbol ( "g" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 70 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 69 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 28 ) , span: span ( 71 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 72 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 72 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 73 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 10 ) ) ) ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 53 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 51 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 55 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 54 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 54 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 56 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 57 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 26 ) , id: mirConstId ( 11 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 27 ) , id: mirConstId ( 12 ) ) ) ) .Operands , destination: place (... local: local ( 6 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 57 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 58 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 59 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 60 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 53 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 61 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 29 ) , span: span ( 54 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 57 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 59 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "y" ) , sourceInfo: sourceInfo (... span: span ( 60 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "z" ) , sourceInfo: sourceInfo (... span: span ( 61 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 62 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 37 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 38 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 26 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 30 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 11 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 9 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 33 ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 2 ) ) - ty ( 29 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 30 ) |-> typeInfoVoidType - ty ( 32 ) |-> typeInfoRefType ( ty ( 34 ) ) - ty ( 33 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 34 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 15 ) , ty ( 27 ) ty ( 35 ) ty ( 35 ) .Tys ) - ty ( 35 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 38 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/references/simple.smir.dot b/kmir/src/tests/integration/data/exec-smir/references/simple.smir.dot new file mode 100644 index 000000000..70c4062f4 --- /dev/null +++ b/kmir/src/tests/integration/data/exec-smir/references/simple.smir.dot @@ -0,0 +1,97 @@ +digraph { + label="simple"; + node [shape=rectangle]; + Xc987e5ecea6cc82b_0 [label="_ZN3std2rt19lang_start_in\nternal17h018b8394ba015d86\nE", color=red]; + X3c6542d96320ad67_0 [label="Intr: \nblack_box", color=red]; + Xac08878333d72e42_0 [label="_ZN4core9panicking5panic1\n7h941160ead03e2d54E", color=red]; + X8b0ac2e54b9a91_0 [label="NoOp: ", color=red]; + subgraph cluster_0 { + label="<() \nas \nstd::process::Termination\n>::report"; + style="filled"; + color=lightgray; + X4af6e702c49b2819_0 [label="0 <- Use(const :: std::process::ExitCode)\lReturn\l"]; + } + subgraph cluster_1 { + label="std::rt::lang_start::<()>"; + style="filled"; + color=lightgray; + Xd4751a0bfa93e011_0 -> Xd4751a0bfa93e011_1 [label="5"]; + Xd4751a0bfa93e011_0 [label="Storage Live _5\lStorage Live _6\lStorage Live _8\l8 <- Closure (cp(1))\l7 <- & 8\l6 <- Cast-PointerCoercion(Unsize) cp(7)\lCall\l"]; + Xd4751a0bfa93e011_1 [label="Storage Dead _6\l0 <- Use(cp(5 as VariantIdx(0).0))\lStorage Dead _8\lStorage Dead _5\lReturn\l"]; + } + Xd4751a0bfa93e011_0 -> Xc987e5ecea6cc82b_0 [label="mv(6),mv(2),mv(3),mv(4)"]; + subgraph cluster_2 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + Xa9b61f901a7d3753_0 -> Xa9b61f901a7d3753_3 [label="Cleanup"]; + Xa9b61f901a7d3753_0 -> Xa9b61f901a7d3753_1 [label="0"]; + Xa9b61f901a7d3753_0 [label="3 <- &mut 1\lCall\l"]; + Xa9b61f901a7d3753_1 -> Xa9b61f901a7d3753_2; + Xa9b61f901a7d3753_1 [label="Drop 1\l"]; + Xa9b61f901a7d3753_2 [label="Return\l"]; + Xa9b61f901a7d3753_3 -> Xa9b61f901a7d3753_4; + Xa9b61f901a7d3753_3 [label="Drop 1\l"]; + Xa9b61f901a7d3753_4 [label="Resume\l"]; + } + Xa9b61f901a7d3753_0 -> X6478806ef92408be_0 [label="mv(3),mv(2)"]; + subgraph cluster_3 { + label="<{closure@std::rt::lang_s\ntart<()>::{closure#0}} \nas \nstd::ops::FnOnce<()>>::ca\nll_once"; + style="filled"; + color=lightgray; + Xdbf5b6a01188feab_0 -> Xdbf5b6a01188feab_1 [label="0"]; + Xdbf5b6a01188feab_0 [label="Call\l"]; + Xdbf5b6a01188feab_1 [label="Return\l"]; + } + Xdbf5b6a01188feab_0 -> Xa9b61f901a7d3753_0 [label="mv(*1),mv(2)"]; + subgraph cluster_4 { + label="std::sys::backtrace::__ru\nst_begin_short_backtrace:\n:"; + style="filled"; + color=lightgray; + Xdfbfd33c57cd4b42_0 -> Xdfbfd33c57cd4b42_1 [label="0"]; + Xdfbfd33c57cd4b42_0 [label="Call\l"]; + Xdfbfd33c57cd4b42_1 -> Xdfbfd33c57cd4b42_2 [label="2"]; + Xdfbfd33c57cd4b42_1 [label="Call\l"]; + Xdfbfd33c57cd4b42_2 [label="Return\l"]; + } + Xdfbfd33c57cd4b42_0 -> Xa4d0dcc36c9c8ee4_0 [label="mv(1),const :: ()"]; + Xdfbfd33c57cd4b42_1 -> X3c6542d96320ad67_0 [label="const :: ()"]; + subgraph cluster_5 { + label=">::ca\nll_once"; + style="filled"; + color=lightgray; + Xa4d0dcc36c9c8ee4_0 -> Xa4d0dcc36c9c8ee4_1 [label="0"]; + Xa4d0dcc36c9c8ee4_0 [label="Call\l"]; + Xa4d0dcc36c9c8ee4_1 [label="Return\l"]; + } + Xa4d0dcc36c9c8ee4_0 -> Xa4d0dcc36c9c8ee4_0: 1 [label=""]; + subgraph cluster_6 { + label="std::rt::lang_start::<()>\n::{closure#0}"; + style="filled"; + color=lightgray; + X6478806ef92408be_0 -> X6478806ef92408be_1 [label="3"]; + X6478806ef92408be_0 [label="Storage Live _2\lStorage Live _3\lStorage Live _4\l4 <- Use(cp(*1.0))\lCall\l"]; + X6478806ef92408be_1 -> X6478806ef92408be_2 [label="2"]; + X6478806ef92408be_1 [label="Storage Dead _4\lCall\l"]; + X6478806ef92408be_2 [label="Storage Dead _3\lStorage Live _5\l5 <- & 2.0\lStorage Live _6\l6 <- Use(cp(2.0.0))\l0 <- Cast-IntToInt mv(6)\lStorage Dead _6\lStorage Dead _5\lStorage Dead _2\lReturn\l"]; + } + X6478806ef92408be_0 -> Xdfbfd33c57cd4b42_0 [label="mv(4)"]; + X6478806ef92408be_1 -> X4af6e702c49b2819_0 [label="mv(3)"]; + subgraph cluster_7 { + label="std::ptr::drop_in_place::\n<{closure@std::rt::lang_s\ntart<()>::{closure#0}}>"; + style="filled"; + color=lightgray; + Xac9ab9d11a60e24b_0 [label="Return\l"]; + } + subgraph cluster_8 { + label="main"; + style="filled"; + color=palegreen; + Xed5b6cb48ca16c6d_0 -> Xed5b6cb48ca16c6d_2 [label="0"]; + Xed5b6cb48ca16c6d_0 -> Xed5b6cb48ca16c6d_1 [label="other"]; + Xed5b6cb48ca16c6d_0 [label="1 <- Use(const :: i8)\l2 <- & 1\l3 <- Use(cp(*2))\l4 <- Eq(cp(3), cp(1))\lSwitchInt mv(4)\l"]; + Xed5b6cb48ca16c6d_1 [label="Return\l"]; + Xed5b6cb48ca16c6d_2 [label="Call\l"]; + } + Xed5b6cb48ca16c6d_2 -> Xac08878333d72e42_0 [label="const :: &str"]; +} diff --git a/kmir/src/tests/integration/data/exec-smir/references/simple.state b/kmir/src/tests/integration/data/exec-smir/references/simple.state index 5676a9648..d3c43f58c 100644 --- a/kmir/src/tests/integration/data/exec-smir/references/simple.state +++ b/kmir/src/tests/integration/data/exec-smir/references/simple.state @@ -38,39 +38,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 1 ) |-> StringVal ( "assertion failed: z == x" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 9 ) ) ) ) ) ) , span: span ( 51 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 50 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 50 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 54 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 55 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 10 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 11 ) ) ) ) .Operands , destination: place (... local: local ( 5 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 55 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 2 ) , span: span ( 57 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 59 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 50 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 55 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "x" ) , sourceInfo: sourceInfo (... span: span ( 57 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "y" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "z" ) , sourceInfo: sourceInfo (... span: span ( 59 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 60 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 35 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 36 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 24 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 29 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 15 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 13 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 26 ) |-> typeInfoRefType ( ty ( 31 ) ) - ty ( 27 ) |-> typeInfoRefType ( ty ( 2 ) ) - ty ( 28 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 29 ) |-> typeInfoVoidType - ty ( 30 ) |-> typeInfoRefType ( ty ( 32 ) ) - ty ( 31 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 32 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 8 ) , ty ( 26 ) ty ( 33 ) ty ( 33 ) .Tys ) - ty ( 33 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 36 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/references/weirdRefs.state b/kmir/src/tests/integration/data/exec-smir/references/weirdRefs.state index b4eee7173..f0da321f4 100644 --- a/kmir/src/tests/integration/data/exec-smir/references/weirdRefs.state +++ b/kmir/src/tests/integration/data/exec-smir/references/weirdRefs.state @@ -67,50 +67,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - allocId ( 5 ) |-> StringVal ( "assertion failed: a.a_value == 42" ) - allocId ( 6 ) |-> StringVal ( "assertion failed: a.a_value == 43" ) - allocId ( 7 ) |-> StringVal ( "assertion failed: vv == 43" ) - allocId ( 8 ) |-> StringVal ( "assertion failed: a.another" ) - allocId ( 9 ) |-> StringVal ( "assertion failed: a.a_third == 43" ) - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 7 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b" " , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 9 ) ) ) ) operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 10 ) ) ) ) operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b" \x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 11 ) ) ) ) .Operands ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) , span: span ( 55 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 56 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"*" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 12 ) ) ) ) ) ) , span: span ( 57 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) ) , span: span ( 58 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 42 , basicBlockIdx ( 1 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 50 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) , span: span ( 60 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 61 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 20 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 63 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"+" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 2 ) , id: mirConstId ( 13 ) ) ) ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) ) , span: span ( 64 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 43 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 59 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 65 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 14 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00!\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 15 ) ) ) ) .Operands , destination: place (... local: local ( 4 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 65 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 67 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 8 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region (... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 68 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 9 ) , projection: .ProjectionElems ) ) ) , span: span ( 69 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 11 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) , span: span ( 70 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) ) , span: span ( 70 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandCopy ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 43 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 6 ) ) ) , span: span ( 66 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 71 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 14 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00!\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 16 ) ) ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 71 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 11 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) , span: span ( 73 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 22 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 74 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 17 ) ) ) ) ) ) , span: span ( 73 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 11 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) , span: span ( 75 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindMut (... kind: mutBorrowKindDefault ) , place (... local: local ( 23 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 26 ) ) .ProjectionElems ) ) ) , span: span ( 75 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 11 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) , span: span ( 76 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 24 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 2 ) ) .ProjectionElems ) ) ) ) , span: span ( 76 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 77 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) ) , span: span ( 72 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 16 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 72 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 78 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 14 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 18 ) ) ) ) .Operands , destination: place (... local: local ( 13 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 78 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 2 ) , ty ( 26 ) ) .ProjectionElems ) ) ) ) , span: span ( 80 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 18 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 43 , basicBlockIdx ( 9 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 79 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 81 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 14 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 19 ) ) ) ) .Operands , destination: place (... local: local ( 17 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 81 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 82 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 83 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 14 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00!\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 4 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 28 ) , id: mirConstId ( 20 ) ) ) ) .Operands , destination: place (... local: local ( 19 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 83 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 84 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 30 ) , span: span ( 85 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 31 ) , span: span ( 86 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 58 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 32 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 31 ) , span: span ( 87 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 33 ) , span: span ( 88 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 64 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 32 ) , span: span ( 71 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 34 ) , span: span ( 89 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 67 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 35 ) , span: span ( 90 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 91 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 32 ) , span: span ( 78 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 36 ) , span: span ( 92 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 76 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 72 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 32 ) , span: span ( 81 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 80 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 32 ) , span: span ( 83 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 31 ) , span: span ( 88 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 90 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 90 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 90 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 29 ) , span: span ( 90 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 85 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "r1" ) , sourceInfo: sourceInfo (... span: span ( 86 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "r1" ) , sourceInfo: sourceInfo (... span: span ( 87 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "r2" ) , sourceInfo: sourceInfo (... span: span ( 88 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "e" ) , sourceInfo: sourceInfo (... span: span ( 89 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "ee" ) , sourceInfo: sourceInfo (... span: span ( 90 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "vv" ) , sourceInfo: sourceInfo (... span: span ( 91 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "r3" ) , sourceInfo: sourceInfo (... span: span ( 92 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 93 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 42 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 43 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 30 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 32 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 12 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 10 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 25 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) - ty ( 28 ) |-> typeInfoRefType ( ty ( 39 ) ) - ty ( 29 ) |-> typeInfoRefType ( ty ( 30 ) ) - ty ( 30 ) |-> typeInfoStructType ( "MyStruct" , adtDef ( 7 ) , ty ( 2 ) ty ( 25 ) ty ( 26 ) .Tys ) - ty ( 31 ) |-> typeInfoRefType ( ty ( 2 ) ) - ty ( 32 ) |-> typeInfoVoidType - ty ( 33 ) |-> typeInfoRefType ( ty ( 31 ) ) - ty ( 34 ) |-> typeInfoStructType ( "Enclosing<'_>" , adtDef ( 8 ) , ty ( 29 ) .Tys ) - ty ( 35 ) |-> typeInfoRefType ( ty ( 34 ) ) - ty ( 36 ) |-> typeInfoRefType ( ty ( 26 ) ) - ty ( 38 ) |-> typeInfoRefType ( ty ( 40 ) ) - ty ( 39 ) |-> typeInfoPrimitiveType ( primTypeStr ) - ty ( 40 ) |-> typeInfoStructType ( "std::panic::Location<'_>" , adtDef ( 17 ) , ty ( 28 ) ty ( 41 ) ty ( 41 ) .Tys ) - ty ( 41 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 43 ) |-> typeInfoPtrType ( ty ( 9 ) ) - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/structs-tuples/struct_field_update.state b/kmir/src/tests/integration/data/exec-smir/structs-tuples/struct_field_update.state index 4dd00c908..57665d4db 100644 --- a/kmir/src/tests/integration/data/exec-smir/structs-tuples/struct_field_update.state +++ b/kmir/src/tests/integration/data/exec-smir/structs-tuples/struct_field_update.state @@ -39,35 +39,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 9 ) ) ) ) operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x02\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 10 ) ) ) ) .Operands ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 7 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand (... span: span ( 54 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\n\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 11 ) ) ) ) operandConstant ( constOperand (... span: span ( 55 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 12 ) ) ) ) operandConstant ( constOperand (... span: span ( 56 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00$@" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 13 ) ) ) ) operandMove ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 57 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 58 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 14 ) ) ) ) ) ) , span: span ( 59 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 16 ) ) .ProjectionElems ) ) ) ) , span: span ( 60 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 3 ) , ty ( 27 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 16 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 61 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 3 ) , ty ( 27 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 16 ) ) .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 16 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 63 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 2 ) , ty ( 26 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 64 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"33333sE@" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 15 ) ) ) ) ) ) , span: span ( 65 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 50 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 67 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 53 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 60 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 62 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "s" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 30 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 31 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 24 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 32 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 10 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 8 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 25 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeFloat ( floatTyF64 ) ) - ty ( 27 ) |-> typeInfoTupleType ( ty ( 16 ) ty ( 16 ) .Tys ) - ty ( 28 ) |-> typeInfoStructType ( "MyStruct" , adtDef ( 7 ) , ty ( 16 ) ty ( 25 ) ty ( 26 ) ty ( 27 ) .Tys ) - ty ( 31 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 32 ) |-> typeInfoVoidType - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/structs-tuples/structs-tuples.state b/kmir/src/tests/integration/data/exec-smir/structs-tuples/structs-tuples.state index ddfc6ca7a..47b68a635 100644 --- a/kmir/src/tests/integration/data/exec-smir/structs-tuples/structs-tuples.state +++ b/kmir/src/tests/integration/data/exec-smir/structs-tuples/structs-tuples.state @@ -50,36 +50,4 @@ ListItem ( newLocal ( ty ( 27 ) , mutabilityMut ) ) ) ) ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( 25 ) |-> monoItemFn (... name: symbol ( "foo" ) , id: defId ( 8 ) , body: someBody ( body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 73 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 74 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 16 ) , span: span ( 75 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 76 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 77 ) , mut: mutabilityNot ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo (... name: symbol ( "_i" ) , sourceInfo: sourceInfo (... span: span ( 75 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "_b" ) , sourceInfo: sourceInfo (... span: span ( 76 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "_f" ) , sourceInfo: sourceInfo (... span: span ( 77 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 78 ) ) ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 7 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand (... span: span ( 52 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\n\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 10 ) ) ) ) operandConstant ( constOperand (... span: span ( 53 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 11 ) ) ) ) operandConstant ( constOperand (... span: span ( 54 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00$@" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 27 ) , id: mirConstId ( 12 ) ) ) ) .Operands ) ) , span: span ( 55 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 2 ) , ty ( 27 ) ) .ProjectionElems ) ) ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandConstant ( constOperand (... span: span ( 57 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x0b\x00\x00\x00" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 16 ) , id: mirConstId ( 13 ) ) ) ) operandConstant ( constOperand (... span: span ( 58 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x01" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 26 ) , id: mirConstId ( 14 ) ) ) ) operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 59 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 16 ) ) .ProjectionElems ) ) ) ) , span: span ( 60 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 26 ) ) .ProjectionElems ) ) ) ) , span: span ( 61 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 2 ) , ty ( 27 ) ) .ProjectionElems ) ) ) ) , span: span ( 62 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 50 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: operandMove ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 51 ) ) ) basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 16 ) ) .ProjectionElems ) ) ) ) , span: span ( 65 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 26 ) ) .ProjectionElems ) ) ) ) , span: span ( 66 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 2 ) , ty ( 27 ) ) .ProjectionElems ) ) ) ) , span: span ( 67 ) ) .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 63 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) , args: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 64 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 68 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 69 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 28 ) , span: span ( 70 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 29 ) , span: span ( 71 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 1 ) , span: span ( 51 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 16 ) , span: span ( 60 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 61 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 62 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 1 ) , span: span ( 64 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 16 ) , span: span ( 65 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 26 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 27 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "s" ) , sourceInfo: sourceInfo (... span: span ( 70 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "t" ) , sourceInfo: sourceInfo (... span: span ( 71 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 72 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 31 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 32 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 19 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 33 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 25 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 23 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeBool ) - ty ( 27 ) |-> typeInfoPrimitiveType ( primTypeFloat ( floatTyF64 ) ) - ty ( 28 ) |-> typeInfoStructType ( "S" , adtDef ( 7 ) , ty ( 16 ) ty ( 26 ) ty ( 27 ) .Tys ) - ty ( 29 ) |-> typeInfoTupleType ( ty ( 16 ) ty ( 26 ) ty ( 27 ) .Tys ) - ty ( 32 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 33 ) |-> typeInfoVoidType - \ No newline at end of file From 43d8dd3e93d34134c682afc028fa7198d7054e85 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 10:21:30 +1100 Subject: [PATCH 34/47] remove outdated test_prove test (was based on K spec files) --- .../data/proving/unchecked-add-spec.k | 75 ------------------- .../src/tests/integration/test_integration.py | 20 ----- 2 files changed, 95 deletions(-) delete mode 100644 kmir/src/tests/integration/data/proving/unchecked-add-spec.k diff --git a/kmir/src/tests/integration/data/proving/unchecked-add-spec.k b/kmir/src/tests/integration/data/proving/unchecked-add-spec.k deleted file mode 100644 index d3819bb5e..000000000 --- a/kmir/src/tests/integration/data/proving/unchecked-add-spec.k +++ /dev/null @@ -1,75 +0,0 @@ -module UNCHECKED-ADD-SPEC - imports KMIR - - claim [unchecked-ADD-spec]: - - ( // LHS, start state - #execTerminator ( - terminator (... - kind: terminatorKindCall (... - func: operandConstant ( - constOperand (... - span: span ( 76 ) , - userTy: noUserTypeAnnotationIndex , - const: mirConst (... - kind: constantKindZeroSized , - ty: ty ( 32 ) , // <- this is the reference to `unchecked_op` - id: mirConstId ( 12 ) - ) - ) - ) , - args: - operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) - operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ), - destination: DEST, - target: noBasicBlockIdx, - // forcing the proof to stop because there is no caller to return to - unwind: _ - ), - span: _ - ) - ) - => - // RHS: target - // #execTerminator ( terminator (... kind: terminatorKindReturn , span: ?_ ) ) - #EndProgram - ) - ~> .K - - _ - _ => ty ( 32 ) - - _ => ?_ - _ => ?_ - _ => DEST - _ => noBasicBlockIdx - _ => ?_ - - ListItem ( _ ) - ListItem ( typedValue ( Integer ( A , 16 , true ) , ty ( 23 ) , _ ) ) - ListItem ( typedValue ( Integer ( B , 16 , true ) , ty ( 23 ) , _ ) ) - // _ // if we keep this we need a lemma for list size predicate simplification - => - ListItem ( typedValue ( Integer ( ?RESULT, 16, true), ty ( 23 ) , ?_ )) - ?_ - - - _ => ?_ - - ( - ty ( 32 ) |-> monoItemFn (... name: symbol ( "unchecked_op" ) , id: defId ( 9 ) , body: someBody (body (... blocks: basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 93 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 34 ) , id: mirConstId ( 19 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 94 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 95 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 23 ) , span: span ( 96 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 97 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 23 ) , span: span ( 98 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 97 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 98 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "unchecked_sum" ) , sourceInfo: sourceInfo (... span: span ( 99 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 0 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 100 ) ) ) ) - ty ( 34 ) |-> monoItemFn (... name: symbol ( "core::num::::unchecked_add" ) , id: defId ( 3 ) , body: someBody (body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 43 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 21 ) ) ) , span: span ( 44 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandMove ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 43 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 45 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 22 ) , id: mirConstId ( 6 ) ) ) ) , args: operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 46 ) ) ) basicBlock (... statements: statement (... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 48 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAddUnchecked , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 49 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 47 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 23 ) , span: span ( 50 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 51 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 23 ) , span: span ( 52 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 21 ) , span: span ( 43 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 1 ) , span: span ( 46 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 51 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "rhs" ) , sourceInfo: sourceInfo (... span: span ( 52 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 53 ) ) ) ) - ty ( 22 ) |-> monoItemFn (... name: symbol ( "core::num::::unchecked_add::precondition_check" ) , id: defId ( 4 ) , body: someBody (body (... blocks: basicBlock (... statements: statement (... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 55 ) ) statement (... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 23 ) ) .ProjectionElems ) ) ) ) , span: span ( 57 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place (... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 21 ) ) .ProjectionElems ) ) ) ) , span: span ( 58 ) ) statement (... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 59 ) ) statement (... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 55 ) ) .Statements , terminator: terminator (... kind: terminatorKindSwitchInt (... discr: operandCopy ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets (... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 54 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 60 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 24 ) , id: mirConstId ( 7 ) ) ) ) , args: operandConstant ( constOperand (... span: span ( 61 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00C\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 8 ) ) ) ) .Operands , destination: place (... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 62 ) ) ) basicBlock (... statements: .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 63 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 64 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 23 ) , span: span ( 65 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 23 ) , span: span ( 65 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 62 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 23 ) , span: span ( 57 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 21 ) , span: span ( 58 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 56 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo (... name: symbol ( "lhs" ) , sourceInfo: sourceInfo (... span: span ( 65 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "rhs" ) , sourceInfo: sourceInfo (... span: span ( 65 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "self" ) , sourceInfo: sourceInfo (... span: span ( 66 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo (... name: symbol ( "rhs" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 57 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 58 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 68 ) ) ) ) - ) - - - requires // i16 invariants - 0 -Int (1 < None: - proof_dir = tmp_path / (spec.stem + 'proofs') - prove_opts = ProveRawOpts(spec, proof_dir=proof_dir) - _kmir_prove_raw(prove_opts) - - claim_labels = kmir.get_claim_index(spec).labels() - for label in claim_labels: - proof = Proof.read_proof_data(proof_dir, label) - assert proof.passed - - SCHEMA_PARSE_DATA = (Path(__file__).parent / 'data' / 'schema-parse').resolve(strict=True) SCHEMA_PARSE_INPUT_DIRS = [ SCHEMA_PARSE_DATA / 'local', From f0c68e63acfb1ceac6b89d98b1c0e181c8ee808f Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 10:39:36 +1100 Subject: [PATCH 35/47] Fix prove_rs routine (scope of tmp_dir was too short) --- kmir/src/kmir/kmir.py | 57 +++++++++++++++++++++++-------------------- 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 92c6fadcc..0175c2ea1 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -408,31 +408,33 @@ def prove_rs(opts: ProveRSOpts) -> APRProof: raise ValueError(f'Input file does not exist: {opts.rs_file}') label = str(opts.rs_file.stem) + '.' + opts.start_symbol - if not opts.reload and opts.proof_dir is not None and APRProof.proof_data_exists(label, opts.proof_dir): - _LOGGER.info(f'Reading proof from disc: {opts.proof_dir}, {label}') - apr_proof = APRProof.read_proof_data(opts.proof_dir, label) - # TODO avoid compilation, use compilation output from the proof directory - # kmir = KMIR(opts.proof_dir / label / haskell, opts.proof_dir / label / llvm-library) if they exist - # or else implement this in the `from_kompiled_kore` constructor - target_path = opts.proof_dir / label - smir_info = SMIRInfo.from_file(target_path / 'smir.json') - kmir = KMIR.from_kompiled_kore( - smir_info, symbolic=True, bug_report=opts.bug_report, target_dir=str(target_path) - ) - else: - _LOGGER.info(f'Constructing initial proof: {label}') - if opts.smir: - smir_info = SMIRInfo.from_file(opts.rs_file) + + with tempfile.TemporaryDirectory() as tmp_dir: + target_path = opts.proof_dir / label if opts.proof_dir is not None else Path(tmp_dir) + + if not opts.reload and opts.proof_dir is not None and APRProof.proof_data_exists(label, opts.proof_dir): + _LOGGER.info(f'Reading proof from disc: {opts.proof_dir}, {label}') + apr_proof = APRProof.read_proof_data(opts.proof_dir, label) + + # TODO avoid compilation, use compilation output from the proof directory + # kmir = KMIR(opts.proof_dir / label / haskell, opts.proof_dir / label / llvm-library) if they exist + # or else implement this in the `from_kompiled_kore` constructor + smir_info = SMIRInfo.from_file(target_path / 'smir.json') + kmir = KMIR.from_kompiled_kore( + smir_info, symbolic=True, bug_report=opts.bug_report, target_dir=str(target_path) + ) else: - smir_info = SMIRInfo(cargo_get_smir_json(opts.rs_file, save_smir=opts.save_smir)) + _LOGGER.info(f'Constructing initial proof: {label}') + if opts.smir: + smir_info = SMIRInfo.from_file(opts.rs_file) + else: + smir_info = SMIRInfo(cargo_get_smir_json(opts.rs_file, save_smir=opts.save_smir)) - smir_info = smir_info.reduce_to(opts.start_symbol) - _LOGGER.info(f'Reduced items table size {len(smir_info.items)}') + smir_info = smir_info.reduce_to(opts.start_symbol) + _LOGGER.info(f'Reduced items table size {len(smir_info.items)}') - with tempfile.TemporaryDirectory() as tmp_dir: - target_dir = str(opts.proof_dir / label) if opts.proof_dir is not None else tmp_dir kmir = KMIR.from_kompiled_kore( - smir_info, symbolic=True, bug_report=opts.bug_report, target_dir=target_dir + smir_info, symbolic=True, bug_report=opts.bug_report, target_dir=str(target_path) ) apr_proof = kmir.apr_proof_from_smir( @@ -440,13 +442,14 @@ def prove_rs(opts: ProveRSOpts) -> APRProof: ) if apr_proof.proof_dir is not None and (apr_proof.proof_dir / label).is_dir(): smir_info.dump(apr_proof.proof_dir / apr_proof.id / 'smir.json') - if apr_proof.passed: - return apr_proof - with kmir.kcfg_explore(label) as kcfg_explore: - prover = APRProver(kcfg_explore, execute_depth=opts.max_depth) - prover.advance_proof(apr_proof, max_iterations=opts.max_iterations) - return apr_proof + if apr_proof.passed: + return apr_proof + + with kmir.kcfg_explore(label) as kcfg_explore: + prover = APRProver(kcfg_explore, execute_depth=opts.max_depth) + prover.advance_proof(apr_proof, max_iterations=opts.max_iterations) + return apr_proof class KMIRSemantics(DefaultSemantics): From 074ef3c9642b12a1f4a251902367b5ad59a00e1d Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 10:44:56 +1100 Subject: [PATCH 36/47] Change `test_prove_termination` to use `prove_rs` instead of `gen-spec` and `prove-raw` --- kmir/src/tests/integration/test_integration.py | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/kmir/src/tests/integration/test_integration.py b/kmir/src/tests/integration/test_integration.py index e06a42fde..179c997ed 100644 --- a/kmir/src/tests/integration/test_integration.py +++ b/kmir/src/tests/integration/test_integration.py @@ -10,13 +10,11 @@ from pyk.cterm.show import CTermShow from pyk.kast.inner import KApply, KSort, KToken from pyk.kast.pretty import PrettyPrinter -from pyk.proof import Proof from pyk.proof.show import APRProofShow -from kmir.__main__ import _kmir_gen_spec, _kmir_prove_raw from kmir.cargo import CargoProject from kmir.kmir import KMIR, KMIRAPRNodePrinter -from kmir.options import GenSpecOpts, ProveRawOpts, ProveRSOpts, ShowOpts +from kmir.options import ProveRSOpts, ShowOpts from kmir.parse.parser import Parser from kmir.smir import SMIRInfo from kmir.testing.fixtures import assert_or_update_show_output @@ -335,19 +333,11 @@ def test_exec_smir( ) def test_prove_termination(test_data: tuple[str, Path], tmp_path: Path, kmir: KMIR) -> None: testname, smir_json = test_data - spec_file = tmp_path / f'{testname}.k' - gen_opts = GenSpecOpts(smir_json, spec_file, 'main') - proof_dir = tmp_path / 'proof' - prove_opts = ProveRawOpts(spec_file, proof_dir=proof_dir) + prove_rs_opts = ProveRSOpts(rs_file=smir_json, smir=True) - _kmir_gen_spec(gen_opts) - _kmir_prove_raw(prove_opts) - - claim_labels = kmir.get_claim_index(spec_file).labels() - for label in claim_labels: - proof = Proof.read_proof_data(proof_dir, label) - assert proof.passed + proof = KMIR.prove_rs(prove_rs_opts) + assert proof.passed SCHEMA_PARSE_DATA = (Path(__file__).parent / 'data' / 'schema-parse').resolve(strict=True) From 03547fa75a0a28be46968374dbfa012896cef31d Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 11:09:52 +1100 Subject: [PATCH 37/47] adjust expectations for 3 prove-rs tests which call panic (unknown function) --- .../pointer-cast-length-test-fail.array_cast_test.expected | 6 +++--- .../data/prove-rs/show/symbolic-args-fail.main.expected | 7 +++---- .../show/symbolic-structs-fail.eats_struct_args.expected | 6 +++--- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/kmir/src/tests/integration/data/prove-rs/show/pointer-cast-length-test-fail.array_cast_test.expected b/kmir/src/tests/integration/data/prove-rs/show/pointer-cast-length-test-fail.array_cast_test.expected index e8790c95d..ff6808691 100644 --- a/kmir/src/tests/integration/data/prove-rs/show/pointer-cast-length-test-fail.array_cast_test.expected +++ b/kmir/src/tests/integration/data/prove-rs/show/pointer-cast-length-test-fail.array_cast_test.expected @@ -15,10 +15,10 @@ ┃ ├─ 4 ┃ │ #selectBlock ( switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) ┃ │ -┃ │ (4 steps) +┃ │ (5 steps) ┃ └─ 6 (stuck, leaf) -┃ #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandC -┃ span: 72 +┃ #setUpCalleeData ( monoItemFn ( ... name: symbol ( "** UNKNOWN FUNCTION **" ) , +┃ span: 32 ┃ ┗━━┓ subst: .Subst ┃ constraint: diff --git a/kmir/src/tests/integration/data/prove-rs/show/symbolic-args-fail.main.expected b/kmir/src/tests/integration/data/prove-rs/show/symbolic-args-fail.main.expected index 9e40f97cb..47fb9f7be 100644 --- a/kmir/src/tests/integration/data/prove-rs/show/symbolic-args-fail.main.expected +++ b/kmir/src/tests/integration/data/prove-rs/show/symbolic-args-fail.main.expected @@ -3,11 +3,10 @@ │ #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandC │ span: 0 │ -│ (562 steps) +│ (563 steps) └─ 3 (stuck, leaf) - #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandC - function: main - span: 117 + #setUpCalleeData ( monoItemFn ( ... name: symbol ( "** UNKNOWN FUNCTION **" ) , + span: 32 ┌─ 2 (root, leaf, target, terminal) diff --git a/kmir/src/tests/integration/data/prove-rs/show/symbolic-structs-fail.eats_struct_args.expected b/kmir/src/tests/integration/data/prove-rs/show/symbolic-structs-fail.eats_struct_args.expected index ef708c9c0..c1d466815 100644 --- a/kmir/src/tests/integration/data/prove-rs/show/symbolic-structs-fail.eats_struct_args.expected +++ b/kmir/src/tests/integration/data/prove-rs/show/symbolic-structs-fail.eats_struct_args.expected @@ -27,10 +27,10 @@ ┃ ┃ ├─ 8 ┃ ┃ │ #selectBlock ( switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) ┃ ┃ │ -┃ ┃ │ (4 steps) +┃ ┃ │ (5 steps) ┃ ┃ └─ 10 (stuck, leaf) -┃ ┃ #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandC -┃ ┃ span: 65 +┃ ┃ #setUpCalleeData ( monoItemFn ( ... name: symbol ( "** UNKNOWN FUNCTION **" ) , +┃ ┃ span: 32 ┃ ┃ ┃ ┗━━┓ subst: .Subst ┃ ┃ constraint: From 56ddf5120f25e19fecb11886ae57febaad3b06d3 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 11:10:05 +1100 Subject: [PATCH 38/47] notes file update --- docs/notes-compile-to-k.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/docs/notes-compile-to-k.md b/docs/notes-compile-to-k.md index 186fddc15..36fab864f 100644 --- a/docs/notes-compile-to-k.md +++ b/docs/notes-compile-to-k.md @@ -132,7 +132,12 @@ The configuration is executed with the compiled module. 1. use temp directory or proof directory for prove-rs DONE 2. do not copy the bin file for HS backend DONE 3. implement LLVM backend compilation for concrete execution DONE -4. implement KMIR.run_rs static (with the above) - - or rather factor out the compilation method and revert prove_rs change -5. delete `test_prove` test -6. re-test (without `test_decode_value`) +4. delete `test_prove` test DONE +5. re-test (without `test_decode_value`) DONE + +1. factor out the compilation method and revert prove_rs change (remove `KMIR.from_compiled_kore`) +2. use `run_process2` +3. implement KMIR.run_rs (with the above) +4. implement fixed type lookup table for `test_decode_value` (per session recompiled fixture) +5. remove helper constructs and commands +6. re-test From 30aa4f3d49c412aa0a680be6ca3f8c4394db2058 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 11:37:45 +1100 Subject: [PATCH 39/47] notes update --- docs/notes-compile-to-k.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/notes-compile-to-k.md b/docs/notes-compile-to-k.md index 36fab864f..300b1aeed 100644 --- a/docs/notes-compile-to-k.md +++ b/docs/notes-compile-to-k.md @@ -136,6 +136,9 @@ The configuration is executed with the compiled module. 5. re-test (without `test_decode_value`) DONE 1. factor out the compilation method and revert prove_rs change (remove `KMIR.from_compiled_kore`) + Unfortunately this does not work. It would mean to move logic from `prove_rs` out of `KMIR` + to the call sites because we need the SMIRInfo to produce the modified KMIR object. + Instead, `KMIR.run_smir` becomes a static method with the same techniques. 2. use `run_process2` 3. implement KMIR.run_rs (with the above) 4. implement fixed type lookup table for `test_decode_value` (per session recompiled fixture) From 312eb7f8f5dbea26c798269c6aaf09b5e742a365 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 11:43:15 +1100 Subject: [PATCH 40/47] restore (unused) gen-spec, remove prove-x helper, remove stale code --- kmir/src/kmir/__main__.py | 52 ++------------------------------------- kmir/src/kmir/kmir.py | 30 ---------------------- 2 files changed, 2 insertions(+), 80 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 824935afc..888744462 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -64,30 +64,7 @@ def _kmir_run(opts: RunOpts) -> None: print(kmir.kore_to_pretty(result)) -def _kmir_gen_mod(opts: GenSpecOpts) -> None: - - if opts.output_file is None: - with tempfile.TemporaryDirectory() as target_dir: - _ = KMIR.from_kompiled_kore( - SMIRInfo.from_file(opts.input_file), bug_report=None, symbolic=True, target_dir=target_dir - ) - print((Path(target_dir) / 'haskell' / 'definition.kore').read_text()) - else: - _ = KMIR.from_kompiled_kore( - SMIRInfo.from_file(opts.input_file), bug_report=None, symbolic=True, target_dir=str(opts.output_file) - ) - _LOGGER.info(f'Created program-specific artefacts in {opts.output_file}.') - - def _kmir_prove_rs(opts: ProveRSOpts) -> None: - kmir = KMIR(HASKELL_DEF_DIR, LLVM_LIB_DIR, bug_report=opts.bug_report) - proof = kmir.prove_rss(opts) - print(str(proof.summary)) - if not proof.passed: - sys.exit(1) - - -def _kmir_prove_x(opts: ProveRSOpts) -> None: proof = KMIR.prove_rs(opts) print(str(proof.summary)) if not proof.passed: @@ -236,7 +213,7 @@ def kmir(args: Sequence[str]) -> None: case RunOpts(): _kmir_run(opts) case GenSpecOpts(): - _kmir_gen_mod(opts) + _kmir_gen_spec(opts) case InfoOpts(): _kmir_info(opts) case ProveRawOpts(): @@ -248,10 +225,7 @@ def kmir(args: Sequence[str]) -> None: case PruneOpts(): _kmir_prune(opts) case ProveRSOpts(): - if ns.command == 'prove-x': - _kmir_prove_x(opts) - else: - _kmir_prove_rs(opts) + _kmir_prove_rs(opts) case LinkOpts(): _kmir_link(opts) case _: @@ -399,16 +373,6 @@ def _arg_parser() -> ArgumentParser: '--start-symbol', type=str, metavar='SYMBOL', default='main', help='Symbol name to begin execution from' ) - prove_x_parser = command_parser.add_parser( - 'prove-x', - help='prove a smir file using a compiled module for static data', - parents=[kcli_args.logging_args, prove_args], - ) - prove_x_parser.add_argument('smir_file', type=Path, metavar='SMIR', help='SMIR JSON file to work with') - prove_x_parser.add_argument( - '--start-symbol', type=str, metavar='SYMBOL', default='main', help='Symbol name to begin execution from' - ) - link_parser = command_parser.add_parser( 'link', help='Link together 2 or more SMIR JSON files', parents=[kcli_args.logging_args] ) @@ -487,18 +451,6 @@ def _parse_args(ns: Namespace) -> KMirOpts: smir=ns.smir, start_symbol=ns.start_symbol, ) - case 'prove-x': - return ProveRSOpts( - rs_file=Path(ns.smir_file), - proof_dir=ns.proof_dir, - bug_report=ns.bug_report, - max_depth=ns.max_depth, - max_iterations=ns.max_iterations, - reload=ns.reload, - save_smir=False, - smir=True, - start_symbol=ns.start_symbol, - ) case 'link': return LinkOpts( smir_files=ns.smir_files, diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 0175c2ea1..ae72c46ac 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -372,36 +372,6 @@ def apr_proof_from_smir( target_node = kcfg.create_node(rhs) return APRProof(id, kcfg, [], init_node.id, target_node.id, {}, proof_dir=proof_dir) - def prove_rss(self, opts: ProveRSOpts) -> APRProof: - if not opts.rs_file.is_file(): - raise ValueError(f'Rust spec file does not exist: {opts.rs_file}') - - label = str(opts.rs_file.stem) + '.' + opts.start_symbol - if not opts.reload and opts.proof_dir is not None and APRProof.proof_data_exists(label, opts.proof_dir): - _LOGGER.info(f'Reading proof from disc: {opts.proof_dir}, {label}') - apr_proof = APRProof.read_proof_data(opts.proof_dir, label) - else: - _LOGGER.info(f'Constructing initial proof: {label}') - if opts.smir: - smir_info = SMIRInfo.from_file(opts.rs_file) - else: - smir_info = SMIRInfo(cargo_get_smir_json(opts.rs_file, save_smir=opts.save_smir)) - - smir_info = smir_info.reduce_to(opts.start_symbol) - - _LOGGER.info(f'Reduced items table size {len(smir_info.items)}') - apr_proof = self.apr_proof_from_smir( - label, smir_info, start_symbol=opts.start_symbol, proof_dir=opts.proof_dir - ) - if apr_proof.proof_dir is not None and (apr_proof.proof_dir / apr_proof.id).is_dir(): - smir_info.dump(apr_proof.proof_dir / apr_proof.id / 'smir.json') - if apr_proof.passed: - return apr_proof - with self.kcfg_explore(label) as kcfg_explore: - prover = APRProver(kcfg_explore, execute_depth=opts.max_depth) - prover.advance_proof(apr_proof, max_iterations=opts.max_iterations) - return apr_proof - @staticmethod def prove_rs(opts: ProveRSOpts) -> APRProof: if not opts.rs_file.is_file(): From 41090719f8ab2d3f9872b94e8569c2b271d40e7c Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 12:17:02 +1100 Subject: [PATCH 41/47] Adjust expectations for panic calls in single-lib and cli_statistics test --- ...ll_test_lib::testing::test_add_in_range.expected | 4 ++-- ...ymbolic-args-fail.main.cli-stats-leaves.expected | 13 ++++++------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/kmir/src/tests/integration/data/crate-tests/single-lib/small_test_lib::testing::test_add_in_range.expected b/kmir/src/tests/integration/data/crate-tests/single-lib/small_test_lib::testing::test_add_in_range.expected index 28b21032a..b46c39ba9 100644 --- a/kmir/src/tests/integration/data/crate-tests/single-lib/small_test_lib::testing::test_add_in_range.expected +++ b/kmir/src/tests/integration/data/crate-tests/single-lib/small_test_lib::testing::test_add_in_range.expected @@ -14,9 +14,9 @@ ┃ ├─ 4 ┃ │ #selectBlock ( switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 1 ) ) ┃ │ -┃ │ (4 steps) +┃ │ (5 steps) ┃ └─ 6 (stuck, leaf) -┃ #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandC +┃ #setUpCalleeData ( monoItemFn ( ... name: symbol ( "** UNKNOWN FUNCTION **" ) , ┃ ┗━━┓ subst: .Subst ┃ constraint: diff --git a/kmir/src/tests/integration/data/prove-rs/show/symbolic-args-fail.main.cli-stats-leaves.expected b/kmir/src/tests/integration/data/prove-rs/show/symbolic-args-fail.main.cli-stats-leaves.expected index 8c8453582..8dd5ab168 100644 --- a/kmir/src/tests/integration/data/prove-rs/show/symbolic-args-fail.main.cli-stats-leaves.expected +++ b/kmir/src/tests/integration/data/prove-rs/show/symbolic-args-fail.main.cli-stats-leaves.expected @@ -3,11 +3,10 @@ │ #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandC │ span: src/rust/library/std/src/rt.rs:194 │ -│ (562 steps) +│ (563 steps) └─ 3 (stuck, leaf) - #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandC - function: main - span: prove-rs/symbolic-args-fail.rs:53 + #setUpCalleeData ( monoItemFn ( ... name: symbol ( "** UNKNOWN FUNCTION **" ) , + span: no-location:0 ┌─ 2 (root, leaf, target, terminal) @@ -26,11 +25,11 @@ Node roles (exclusive): Leaf paths from init: total leaves (non-root): 1 reachable leaves : 1 - total steps : 562 + total steps : 563 - leaf 3: steps 562, path 1 -> 3 + leaf 3: steps 563, path 1 -> 3 LEAF CELLS --------------- Node 3: - #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 117 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 38 ) , id: mirConstId ( 24 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 39 ) , id: mirConstId ( 25 ) ) ) ) .Operands , destination: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 117 ) ) ) ~> .K \ No newline at end of file + #setUpCalleeData ( monoItemFn ( ... name: symbol ( "** UNKNOWN FUNCTION **" ) , id: defId ( 38 ) , body: noBody ) , operandConstant ( constOperand ( ... span: span ( 32 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 39 ) , id: mirConstId ( 25 ) ) ) ) .Operands ) ~> .K \ No newline at end of file From 148a88bd456c4952c9b8c0626daed9f84f5a735e Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 13:47:29 +1100 Subject: [PATCH 42/47] WIP attempt to create type lookups fixture for test_decode_value --- .../decode-value/enum-1-variant-1-field.json | 4 +- .../decode-value/enum-1-variant-2-fields.json | 4 +- .../decode-value/enum-2-variants-1-field.json | 8 +-- .../integration/data/decode-value/type-table | 6 ++ .../tests/integration/test_decode_value.py | 55 ++++++++++++++----- 5 files changed, 54 insertions(+), 23 deletions(-) create mode 100644 kmir/src/tests/integration/data/decode-value/type-table diff --git a/kmir/src/tests/integration/data/decode-value/enum-1-variant-1-field.json b/kmir/src/tests/integration/data/decode-value/enum-1-variant-1-field.json index 2c710fb10..52b87eed3 100644 --- a/kmir/src/tests/integration/data/decode-value/enum-1-variant-1-field.json +++ b/kmir/src/tests/integration/data/decode-value/enum-1-variant-1-field.json @@ -7,7 +7,7 @@ ], "types": [ [ - 0, + 3, { "PrimitiveType": { "Int": "I32" @@ -24,7 +24,7 @@ ], "fields": [ [ - 0 + 3 ] ], "layout": { diff --git a/kmir/src/tests/integration/data/decode-value/enum-1-variant-2-fields.json b/kmir/src/tests/integration/data/decode-value/enum-1-variant-2-fields.json index be39ea9aa..d40735c7e 100644 --- a/kmir/src/tests/integration/data/decode-value/enum-1-variant-2-fields.json +++ b/kmir/src/tests/integration/data/decode-value/enum-1-variant-2-fields.json @@ -7,7 +7,7 @@ ], "types": [ [ - 0, + 2, { "PrimitiveType": { "Int": "I16" @@ -30,7 +30,7 @@ ], "fields": [ [ - 0, + 2, 1 ] ], diff --git a/kmir/src/tests/integration/data/decode-value/enum-2-variants-1-field.json b/kmir/src/tests/integration/data/decode-value/enum-2-variants-1-field.json index b26877b9e..5c2fc8d2f 100644 --- a/kmir/src/tests/integration/data/decode-value/enum-2-variants-1-field.json +++ b/kmir/src/tests/integration/data/decode-value/enum-2-variants-1-field.json @@ -5,7 +5,7 @@ ], "types": [ [ - 1, + 0, { "PrimitiveType": { "Uint": "U8" @@ -13,7 +13,7 @@ } ], [ - 2, + 1, { "PrimitiveType": "Bool" } @@ -29,10 +29,10 @@ ], "fields": [ [ - 1 + 0 ], [ - 2 + 1 ] ], "layout": { diff --git a/kmir/src/tests/integration/data/decode-value/type-table b/kmir/src/tests/integration/data/decode-value/type-table new file mode 100644 index 000000000..40db1261c --- /dev/null +++ b/kmir/src/tests/integration/data/decode-value/type-table @@ -0,0 +1,6 @@ +[ + [0, { "PrimitiveType": { "Uint": "U8"}}], + [1, { "PrimitiveType": "Bool"}], + [2, { "PrimitiveType": { "Int": "I16"}}], + [3, { "PrimitiveType": { "Int": "I32"}}] +] diff --git a/kmir/src/tests/integration/test_decode_value.py b/kmir/src/tests/integration/test_decode_value.py index ca7f117b6..5f0a3d3ad 100644 --- a/kmir/src/tests/integration/test_decode_value.py +++ b/kmir/src/tests/integration/test_decode_value.py @@ -3,6 +3,9 @@ from string import Template from typing import TYPE_CHECKING, NamedTuple +from kmir.build import LLVM_DEF_DIR +from kmir.smir import SMIRInfo + import pytest if TYPE_CHECKING: @@ -13,14 +16,23 @@ from pyk.kore.syntax import Pattern -@pytest.fixture(scope='module') +@pytest.fixture(scope='session') def definition_dir() -> Path: - from kmir.build import LLVM_DEF_DIR + import shutil + from .utils import TEST_DATA_DIR + from kmir.kmir import KMIR + + target_dir = TEST_DATA_DIR / 'decode-value' / '.tmp' - return LLVM_DEF_DIR + # generate and compile an LLVM interpreter with the type-table + _ = KMIR.from_kompiled_kore(TEST_SMIR, target_dir=str(target_dir), symbolic=False) + yield target_dir / 'llvm' + print (f'Should now remove {target_dir}') + # shutil.rmtree(target_dir, ignore_errors=True) -@pytest.fixture(scope='module') + +@pytest.fixture(scope='session') def definition(definition_dir: Path) -> KDefinition: from pyk.kast.outer import read_kast_definition @@ -78,8 +90,8 @@ class _TestData(NamedTuple): expected: str def to_pattern(self, definition: KDefinition) -> Pattern: - from pyk.kore.prelude import SORT_K_ITEM, bytes_dv, inj, int_dv, map_pattern - from pyk.kore.syntax import App, SortApp + from pyk.kore.prelude import bytes_dv + from pyk.kore.syntax import App return App( 'LbldecodeValue', @@ -87,15 +99,6 @@ def to_pattern(self, definition: KDefinition) -> Pattern: ( bytes_dv(self.bytez), self._json_type_info_to_kore(self.type_info, definition), - map_pattern( - *( - ( - inj(SortApp('SortTy'), SORT_K_ITEM, App('Lblty', (), (int_dv(key),))), - inj(SortApp('SortTypeInfo'), SORT_K_ITEM, self._json_type_info_to_kore(value, definition)), - ) - for key, value in self.types.items() - ) - ), ), ) @@ -134,8 +137,30 @@ def parse_test_data(test_file: Path, expected_file: Path) -> _TestData: expected=expected, ) +def load_test_types(): + import json + from .utils import TEST_DATA_DIR + + types = json.loads( (TEST_DATA_DIR / 'decode-value' / 'type-table').read_text()) + assert isinstance(types, list) + + smir = { + 'name': 'decode_value', + 'crate-id': 0, + 'allocs': [], + 'debug': None, + 'functions': [], + 'items': [], + 'machine': None, + 'spans': [], + 'uneval_consts': [], + 'types': types, + } + return SMIRInfo(smir) + TEST_DATA: Final = load_test_data() +TEST_SMIR: Final = load_test_types() SKIP: Final = ( 'enum-1-variant-1-field', 'enum-1-variant-2-fields', From 0b036d7f59d3b8a34a886c7c875440d5c84b67bf Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 13:47:49 +1100 Subject: [PATCH 43/47] adjust dir name for LLVM compilation --- kmir/src/kmir/kmir.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index ae72c46ac..4c2b8e3d8 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -90,12 +90,12 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat rules = kmir.make_kore_rules(smir_info) _LOGGER.info(f'Generated {len(rules)} function equations to add to `definition.kore') - # Create output directories - target_llvm_path = target_path / 'llvm-library' - target_llvmdt_path = target_llvm_path / 'dt' - target_hs_path = target_path / 'haskell' - if symbolic: + # Create output directories + target_llvm_path = target_path / 'llvm-library' + target_llvmdt_path = target_llvm_path / 'dt' + target_hs_path = target_path / 'haskell' + _LOGGER.info(f'Creating directories {target_llvmdt_path} and {target_hs_path}') target_llvmdt_path.mkdir(parents=True, exist_ok=True) target_hs_path.mkdir(parents=True, exist_ok=True) @@ -145,8 +145,9 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat shutil.copytree(file_path, target_hs_path / file_path.name, dirs_exist_ok=True) return KMIR(target_hs_path, target_llvm_path, bug_report=bug_report) else: - import subprocess + target_llvm_path = target_path / 'llvm' + target_llvmdt_path = target_llvm_path / 'dt' _LOGGER.info(f'Creating directory {target_llvmdt_path}') target_llvmdt_path.mkdir(parents=True, exist_ok=True) @@ -156,6 +157,7 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat llvm_def_output = target_llvm_path / 'definition.kore' _insert_rules_and_write(llvm_def_file, rules, llvm_def_output) + import subprocess _LOGGER.info('Running llvm-kompile-matching') subprocess.run( ['llvm-kompile-matching', str(llvm_def_output), 'qbaL', str(target_llvmdt_path), '1/2'], check=True @@ -174,7 +176,6 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat ], check=True, ) - # for file in ['mainModule.txt', 'mainSyntaxModule.txt', 'backend.txt', 'compiled.json', 'scanner']: blacklist = ['definition.kore', 'interpreter', 'dt'] to_copy = [file.name for file in LLVM_DEF_DIR.iterdir() if file.name not in blacklist] for file in to_copy: From 9e925baa912ee107d466df0608f227a435b4cb66 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 14:28:06 +1100 Subject: [PATCH 44/47] Synchronise llvm-kompile call with file lock before test_decode_value --- .../tests/integration/test_decode_value.py | 45 ++++++++++++------- 1 file changed, 29 insertions(+), 16 deletions(-) diff --git a/kmir/src/tests/integration/test_decode_value.py b/kmir/src/tests/integration/test_decode_value.py index 5f0a3d3ad..5f30fa2d2 100644 --- a/kmir/src/tests/integration/test_decode_value.py +++ b/kmir/src/tests/integration/test_decode_value.py @@ -3,11 +3,10 @@ from string import Template from typing import TYPE_CHECKING, NamedTuple -from kmir.build import LLVM_DEF_DIR -from kmir.smir import SMIRInfo - import pytest +from kmir.smir import SMIRInfo + if TYPE_CHECKING: from pathlib import Path from typing import Any, Final @@ -17,19 +16,35 @@ @pytest.fixture(scope='session') -def definition_dir() -> Path: - import shutil - from .utils import TEST_DATA_DIR +def definition_dir(): # -> Path: + import time + from kmir.kmir import KMIR - target_dir = TEST_DATA_DIR / 'decode-value' / '.tmp' + from .utils import TEST_DATA_DIR - # generate and compile an LLVM interpreter with the type-table - _ = KMIR.from_kompiled_kore(TEST_SMIR, target_dir=str(target_dir), symbolic=False) + target_dir = TEST_DATA_DIR / 'decode-value' / 'tmp' + + # prevent other processes from concurrently trying to compile + # (the scope='session' above does not actually work in pytest-xdist) + lock_file = TEST_DATA_DIR / 'decode-value' / 'tmp.lock' + try: + with open(lock_file, 'x') as _: + # generate and compile an LLVM interpreter with the type-table + _ = KMIR.from_kompiled_kore(TEST_SMIR, target_dir=str(target_dir), symbolic=False) + lock_file.unlink() + except FileExistsError: + # wait loop until interpreter exists, max 1min + secs = 0 + while lock_file.exists() and secs < 60: + time.sleep(1) + if not (target_dir / 'llvm' / 'interpreter').exists(): + raise Exception('Waited in vain for interpreter to arise. Exiting') from None yield target_dir / 'llvm' - print (f'Should now remove {target_dir}') - # shutil.rmtree(target_dir, ignore_errors=True) + + # should remove the target_dir but other processes are probably still using it + print(f'Remove {target_dir} if you want to clean up') @pytest.fixture(scope='session') @@ -70,10 +85,6 @@ def dedent(s: str) -> str: Lbl'-LT-'locals'-GT-'{}(Lbl'Stop'List{}()) ), Lbl'-LT-'stack'-GT-'{}(Lbl'Stop'List{}()), - Lbl'-LT-'memory'-GT-'{}(Lbl'Stop'Map{}()), - Lbl'-LT-'functions'-GT-'{}(Lbl'Stop'Map{}()), - Lbl'-LT-'start-symbol'-GT-'{}(Lblsymbol'LParUndsRParUnds'LIB'Unds'Symbol'Unds'String{}(\dv{SortString{}}(""))), - Lbl'-LT-'types'-GT-'{}(Lbl'Stop'Map{}()) ), Lbl'-LT-'generatedCounter'-GT-'{}(\dv{SortInt{}}("0")) ) @@ -137,11 +148,13 @@ def parse_test_data(test_file: Path, expected_file: Path) -> _TestData: expected=expected, ) + def load_test_types(): import json + from .utils import TEST_DATA_DIR - types = json.loads( (TEST_DATA_DIR / 'decode-value' / 'type-table').read_text()) + types = json.loads((TEST_DATA_DIR / 'decode-value' / 'type-table').read_text()) assert isinstance(types, list) smir = { From 6ae2a0ace30326ee8db9c8c87482848284ce743f Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 14:28:23 +1100 Subject: [PATCH 45/47] fml --- kmir/src/kmir/kmir.py | 1 + 1 file changed, 1 insertion(+) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 4c2b8e3d8..99529189d 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -158,6 +158,7 @@ def _insert_rules_and_write(input_file: Path, rules: list[str], output_file: Pat _insert_rules_and_write(llvm_def_file, rules, llvm_def_output) import subprocess + _LOGGER.info('Running llvm-kompile-matching') subprocess.run( ['llvm-kompile-matching', str(llvm_def_output), 'qbaL', str(target_llvmdt_path), '1/2'], check=True From 6414c85f1747efa7b890a1b4cfb0a4776150bfa1 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 16:49:10 +1100 Subject: [PATCH 46/47] Adjust expectation for enum-two-refs-fail (K decoding checks isValue before creating refs) --- .../exec-smir/allocs/enum-two-refs-fail.state | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/kmir/src/tests/integration/data/exec-smir/allocs/enum-two-refs-fail.state b/kmir/src/tests/integration/data/exec-smir/allocs/enum-two-refs-fail.state index fadc379df..aa870846e 100644 --- a/kmir/src/tests/integration/data/exec-smir/allocs/enum-two-refs-fail.state +++ b/kmir/src/tests/integration/data/exec-smir/allocs/enum-two-refs-fail.state @@ -1,6 +1,6 @@ - #traverseProjection ( toLocal ( 13 ) , AllocRef ( allocId ( 1 ) , .ProjectionElems , noMetadata ) , projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 37 ) ) .ProjectionElems , .Contexts ) ~> #forRef ( mutabilityNot , noMetadata ) ~> #freezer#setLocalValue(_,_)_RT-DATA_KItem_Place_Evaluation1_ ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ~> .K ) ~> #execStmts ( statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 14 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 45 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 15 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 37 ) ) .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 16 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 45 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , span: span ( 145 ) ) .Statements ) ~> #execTerminator ( terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 145 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 93 ) , id: mirConstId ( 47 ) ) ) ) , args: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 145 ) ) ) ~> .K + #traverseProjection ( toLocal ( 13 ) , thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) , projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 37 ) ) .ProjectionElems , .Contexts ) ~> #forRef ( mutabilityNot , noMetadata ) ~> #freezer#setLocalValue(_,_)_RT-DATA_KItem_Place_Evaluation1_ ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ~> .K ) ~> #execStmts ( statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 14 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 45 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 15 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 37 ) ) .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place (... local: local ( 3 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 25 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 16 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 45 ) ) .ProjectionElems ) ) ) , span: span ( 147 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 145 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region (... kind: regionKindReErased ) , borrowKindShared , place (... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , span: span ( 145 ) ) .Statements ) ~> #execTerminator ( terminator (... kind: terminatorKindCall (... func: operandConstant ( constOperand (... span: span ( 145 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindZeroSized , ty: ty ( 93 ) , id: mirConstId ( 47 ) ) ) ) , args: operandMove ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) operandMove ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands , destination: place (... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 145 ) ) ) ~> .K noReturn @@ -30,10 +30,10 @@ ListItem ( newLocal ( ty ( 43 ) , mutabilityMut ) ) - ListItem ( typedValue ( AllocRef ( allocId ( 1 ) , .ProjectionElems , noMetadata ) , ty ( 25 ) , mutabilityNot ) ) - ListItem ( typedValue ( AllocRef ( allocId ( 2 ) , .ProjectionElems , noMetadata ) , ty ( 25 ) , mutabilityNot ) ) - ListItem ( typedValue ( Aggregate ( variantIdx ( 0 ) , ListItem ( AllocRef ( allocId ( 1 ) , .ProjectionElems , noMetadata ) ) - ListItem ( AllocRef ( allocId ( 2 ) , .ProjectionElems , noMetadata ) ) ) , ty ( 91 ) , mutabilityMut ) ) + ListItem ( typedValue ( thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) , ty ( 25 ) , mutabilityNot ) ) + ListItem ( typedValue ( thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) , ty ( 25 ) , mutabilityNot ) ) + ListItem ( typedValue ( Aggregate ( variantIdx ( 0 ) , ListItem ( thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) ) + ListItem ( thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) ) ) , ty ( 91 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 36 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 31 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 36 ) , mutabilityNot ) ) @@ -43,7 +43,7 @@ ListItem ( newLocal ( ty ( 54 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 30 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 30 ) , mutabilityMut ) ) - ListItem ( typedValue ( AllocRef ( allocId ( 1 ) , .ProjectionElems , noMetadata ) , ty ( 25 ) , mutabilityMut ) ) + ListItem ( typedValue ( thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) , ty ( 25 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 25 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 25 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 25 ) , mutabilityMut ) ) @@ -51,12 +51,12 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( 0 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionContinue , ListItem ( newLocal ( ty ( 1 ) , mutabilityMut ) ) - ListItem ( typedValue ( Aggregate ( variantIdx ( 0 ) , ListItem ( AllocRef ( allocId ( 1 ) , .ProjectionElems , noMetadata ) ) - ListItem ( AllocRef ( allocId ( 2 ) , .ProjectionElems , noMetadata ) ) ) , ty ( 91 ) , mutabilityMut ) ) + ListItem ( typedValue ( Aggregate ( variantIdx ( 0 ) , ListItem ( thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) ) + ListItem ( thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) ) ) , ty ( 91 ) , mutabilityMut ) ) ListItem ( typedValue ( Moved , ty ( 25 ) , mutabilityMut ) ) ListItem ( typedValue ( Moved , ty ( 25 ) , mutabilityMut ) ) - ListItem ( typedValue ( AllocRef ( allocId ( 1 ) , .ProjectionElems , noMetadata ) , ty ( 25 ) , mutabilityNot ) ) - ListItem ( typedValue ( AllocRef ( allocId ( 2 ) , .ProjectionElems , noMetadata ) , ty ( 25 ) , mutabilityNot ) ) + ListItem ( typedValue ( thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) , ty ( 25 ) , mutabilityNot ) ) + ListItem ( typedValue ( thunk ( #decodeConstant ( constantKindAllocated ( allocation (... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap (... ptrs: provenanceMapEntry (... offset: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty ( 25 ) , typeInfoRefType ( ty ( 99 ) ) ) ) , ty ( 25 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 43 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 83 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 82 ) , mutabilityNot ) ) From f20af1e77c0669a529c2a11e32497c77af2f3bfb Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Fri, 17 Oct 2025 16:52:54 +1100 Subject: [PATCH 47/47] remove notes file --- docs/notes-compile-to-k.md | 146 ------------------------------------- 1 file changed, 146 deletions(-) delete mode 100644 docs/notes-compile-to-k.md diff --git a/docs/notes-compile-to-k.md b/docs/notes-compile-to-k.md deleted file mode 100644 index 300b1aeed..000000000 --- a/docs/notes-compile-to-k.md +++ /dev/null @@ -1,146 +0,0 @@ -Compiling a Rust program via SMIR JSON to a K module -============================ - -To avoid fattening the configuration beyond the size manageable for the symbolic backend, -static elements of the configuration (function table, types table, allocs table, adt table) -are translated to K functions in a dedicated module. -This module is then imported into the KMIR semantics to extend the function equations provided in the semantics. - -Note: no need to _extend_, instead we can just provide that module for import. -Requires standard name and location, complicates debugging as we don't know which program we were dealing with. - -# Adapting the semantics - -* Declare functions to look up static data. - - Functions declared total, return dummy values in `[owise]` rules for now (HACK). - - Functions are currently declared in `value.md` module, could have their own module. - - TODO inconsistent naming -* All uses of static data cells in the semantics replaced by function calls - -# Generating a module with the declared functions for a particular program - -* Python code `SMIR -> K Module (as Text)` -* imports `VALUE-SYNTAX` (`value.md`) to bring function declaration into scope -* imports `KMIR` to have semantics in scope - -* Four groups of equations - 1. `lookupFunction : Ty -> MonoItemKind` - - depends on `MONO` (`mono.md`), already present via `RT-VALUE-SYNTAX` - - contains equations `lookupFunction(ty(N)) => Item` - - item with symbol_name from `functions[N]` - - add negative `N` for all items not present in `functions` - - most Python code exists in `kmir.py::_make_function_map` - but needs to be copied and modified to make function equations instead of a K `Map` - 2. `lookupAlloc : AllocId -> Value` - - depends on `RT-DECODING` (`decoding.md`) - - contains equations `lookupAlloc(ID) => decodeAlloc(ID, TY, ALLOC)[ID]` - - TODO remove the `Map` return - - using data from `allocs` (each `AllocInfo(ID, TY, ALLOC)`) - - we should probably decode in python later? - 3. `lookupTy : Ty -> TypeInfo` - - depends on `TYPES` (`ty.md`), already present via `RT-VALUE-SYNTAX` - - contains equations `lookupTy(T) => typeInfo` - - using data from `types` (each `[T, TypeInfo]`) - - most python code exists in `kmir.py::_make_type_and_adt_maps` - 4. `lookupAdtTy : AdtDef -> Ty` - - depends on `TYPES` (`ty.md`), already present - - most python code exists in `kmir.py::_make_type_and_adt_maps` - -# Compiling the module together with the semantics - -The generated module becomes the main module to run `kompile` calls on -- three compilations: llvm, llvm-library, haskell - -The compiled artefacts should be what the `KMIR` class uses (`definition_dir`). - -That means, the module generation and compilation happens when creating the `KMIR` object. -Module and compilation results should be cached (can be omitted in a prototype, recompiling every time using temp files). - -# Changes to running and proving - -To run a program/function or prove a property, we still generate a call configuration -but the configuration does not have any static fields any more. -The configuration is executed with the compiled module. - -# Obstacles - -1. LLVM backend is confused about symbol versions when an `@` char is in a string or binary data (`\x40h`). - This was caused by the LLVM backend using the literal kore string as a symbol name. Fixed in llvm backend, open PR. -2. Compilation fails because of "long" lists (>100 elements) causing problems in the rule parser. - Work-arounds considered: - - generate kore instead , and insert it into the `definition.kore` - - need to do this manually as there are no helper functions to make `kore` rules directly. - - generate `kast` syntax and splice into the K code. - - need to extend `pyk` with a `kast` pretty-printer. The `kast` format specification is somewhat tricky and incomplete, as I was told. - Work-around 1 appears to work, code developed on new branch extending the other. - - -# Technical work to prepare the change - -## Integration tests -- [ ] `test_decode_value`: need to replace type map by definition contents (non-python tests only) - - pre-compile an LLVM interpreter with the types fixed to a standard table (covering all test cases) - - alternative is compiling once per test, bad. -- [ ] `exec_smir`: needs an implementation of `kmir run` for concrete execution, LLVM and Haskell - - KMIR.run_smir should just be a static method, preparing the definition beforehand - - BTW the _binary_ format is the problem for `kmir run` with `--backend haskell` -- [ ] `prove_rs`: - - [X] turned `KMIR.prove_rs` into a static method, preparing the definition beforehand - - [ ] proof failures: - ``` - FAILED test_prove_termination[Ref-weirdRefs] - assert False - FAILED test_prove_termination[Array-indexing] - assert False - FAILED test_prove_termination[Array-index-writes] - assert False - FAILED test_prove_termination[Array-inlined] - assert False - FAILED test_prove_termination[Alloc-array-const-compare] - assert False - FAILED test_prove_termination[niche-enum] - assert False - FAILED test_prove_termination[main-a-b-c] - assert False - FAILED test_prove_termination[assign-cast] - assert False - FAILED test_prove_termination[struct-field-update] - assert False - FAILED test_prove_termination[arithmetic] - assert False - FAILED test_prove_termination[arithmetic-unchecked] - assert False - FAILED test_prove_termination[unary] - assert False - FAILED test_prove_termination[Ref-simple] - assert False - FAILED test_prove_termination[Ref-refAsArg] - assert False - FAILED test_prove_termination[Ref-doubleRef] - assert False - ``` - - `test_prove_termination` for all failing tests. - - uses `gen-spec` and `prove-raw` - - should instead use `prove-rs --smir` - - - [ ] compilation failures (non-deterministic): - ``` - FAILED test_prove_rs[double-ref-deref] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... - FAILED test_prove_rs[array_nest_compare] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... - FAILED test_prove_rs[branch-negative] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... - FAILED test_prove_rs[bitwise-not-shift] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... - FAILED test_prove_rs[pointer-cast] - subprocess.CalledProcessError: Command '['llvm-kompile', 'out-kore/llvm-library/definition.kore', 'out-kore/llvm-library/dt', 'c', '-O2', '--', '-o', PosixPath('out-kore/llvm-library/interpreter')]'... - ``` - - caused by concurrent access to the same files. Need to compile into temp directory or proof-dir - - [ ] Unexpected output: Probably always an additional step to an unknown function - ``` - FAILED kmir/src/tests/integration/test_cli.py::test_cli_show_statistics_and_leaves - AssertionError: The actual output does not match the expected output: - FAILED test_prove_rs[symbolic-structs-fail] - AssertionError: The actual output does not match the expected output: - FAILED test_crate_examples[single-lib] - AssertionError: The actual output does not match the expected output: - FAILED test_prove_rs[symbolic-args-fail] - AssertionError: The actual output does not match the expected output: - FAILED test_prove_rs[pointer-cast-length-test-fail] - AssertionError: The actual output does not match the expected output: - ``` - - could extend the function lookup and provide the symbol name for functions not present in the items table. - - or just leave things as they are, not much difference to before (getting stuck one step later now) -- [ ] `test_prove`: single test with a checked-in spec file. Delete this test! - -1. use temp directory or proof directory for prove-rs DONE -2. do not copy the bin file for HS backend DONE -3. implement LLVM backend compilation for concrete execution DONE -4. delete `test_prove` test DONE -5. re-test (without `test_decode_value`) DONE - -1. factor out the compilation method and revert prove_rs change (remove `KMIR.from_compiled_kore`) - Unfortunately this does not work. It would mean to move logic from `prove_rs` out of `KMIR` - to the call sites because we need the SMIRInfo to produce the modified KMIR object. - Instead, `KMIR.run_smir` becomes a static method with the same techniques. -2. use `run_process2` -3. implement KMIR.run_rs (with the above) -4. implement fixed type lookup table for `test_decode_value` (per session recompiled fixture) -5. remove helper constructs and commands -6. re-test

    Jg^FIy?XZx3=_0UfFM$3PSVo}pK|Teww|W1)3aaFBUqc5L`ZLG8 zH>;C-F&deR)R|J`-A<)KU6c$(UP{NK!>WyCfkx zh5cFWaBy;V2y^T7nt#R!mOh=#w6|f?Qs~i5FN0hO(kXe3Vt2=u4-rl4#e2*S{lL+> zh*Bivc3Nt3c?2AB3J7R7LEAm$AfUUZIRtcXISA;^X(0sUcs*4HEkX|UV&jA~##cL( zFvikOn+v$?vP{Y;<71j~M$M0FbTs$CAoL)b%ws2WY`H}>%%sxq+b7gNZPjlxrj04& zn4h);zd%LEf)O-7VPv$MkkP%=Cl)e#Yo<-1`V5p7E$HQ#@3{Tc{gnkhSFW4kl>rXJsg3odG|2R<8KT8v}mw&=5bVGZ8}LO zC0U4c2R|&21-Au5mk@Qq`80!}>uo_<$Vm>@B;xxr-?bd8(*86+r#>}_y-ce6+u6x+_ zJ|_T%6|eP1@2p$!YBOJL=2aFp@r_JMZD-(k5&Nfj5y7bCMVh;#BMt-2hy~^K07Rxa zakE4^MQ^gQ<88g3PKfugySL>PS$4P^ca>UEFWeQ7wHe-HUoz)g8K#?LA=25NDd{D* zl5}oqLY8!fS&=X;-kviHudoLxwv#>yK{!qC|M_EBelx_PN+jEYtX2$De-8EwUCE^; zyan5H$lbs;prHcWZ=0ou=Al!m7GAy__Si5G3NJhZP_ctfZYL24$FS1q7K{X!} zXxfeQai~UMYyB4x3c7=>Y&~V>q*)qpG?@}r^*MuivRwodkntdxKoMWT7MWFuqk5V? zMawtoaIKR=G3?z%GZSQ*94TYTTPUMBZ0if*ebRcvUxJq=mUNRV^ zZijC*SG}t7boePRyE_6?%w3DnF9fETV)Qem|(AAbV)Z9Xm3SVza(LBrPVudqXVvqu5uVr&=LHhmC8m`2cxCa{D*U&SJ_x zw6+4DD;|s9(jC6e=E%GQy?x9VITo{i-#kigwtYFfB_Xnt zu&zP4u+x;XG^Hc*K`Pk#^rdrK?=D@>txxz{uc)xpmFvH)yWY%Vm-tsFcDVUzyMNEv z6X*P(ozz`jM$rHrTF;HcTZ52e(c(T?i&ZV-6VbHM=CP!JeX#iyyT8ctgR=kAGYU;}I;psX zywZ9M_yf&}!2pI=<(^AfyW*yEzE?;A>2z$;rlj7B| z{Q<5KpsRoND?k^@zYTG|NK^(N8rQ8b&wbOlL7Lw?1vr&te(x+bnxAOVDaz*sPO_$# z98lqYmQ2WLB_GR)kBSSl zLqipLJ<<$Z6wlRmv1*!z7^YVYn=cz-0pKtLIwu*f$QlKE zqjQc`OtTmPoofm1P_x^1?P;lbc2y&F@x6*Nu&_5~)cV)I}DI^%WI+ks9CoNyzm zGHo?!3R{wIrTIK+-B07P^5VeieM;Ixa&&Av>08l9UO_nUTgQ)pv>dM6Xu6RW2+;rT z2#{scKW98&5AQPj>+*4--XYQ~6RmeAJ1yPFLwBkp8o3=*r+c@(QJs`P(zcdIW4{2>8B#B5ui+ zcUA4wv#*k{RcCeB_ejMp4?pV! zsZ#6|yGNj=7j&&%5Z=~&f4@?rT|U3kJfByoe+9eO2FsE2^=6mj4(SOm;o>ec7I0UQ zzkqvZqi+x+^hv2(L5B^*w2U${khZsuEPT9yGDKMVjoDq!g)?Ic7nF7jN62`4bE({u!I}3cqnqI546>24 zcR}#3m1X3ss%VU~qgRGqj+=s24hKJQ-QzeTew!6_MYt!Apf^tm9DyD~0?^ti8*wGM zDb_CU`XV$#mhoH*Q=64|sS~rFtbsuv+R4?F8I@-6ZYpu{xw(xhp4q<6dcP&>keUh? z5o6wL#5j{ynP@AqtlHDErq*Kf?EHl1p~?^)xuY>tzxHg2mDO&*^yhCtBG>@0Xf5K@ z0$3{FyH5wktqALdrCIb@MZyqm$V)UO;@JVuQUDAhq;(h$#bDBxXPzywwqQ3cJ-DyX z%9`e?ne2Zm<|^aNmzL#vLkLjGj}mik{p>SdpUUg7Yi-8MOL;jUzTQI0%YbkQQc_;c zTT%xyg=WPL231x}27z<;b7Gs^1`7z<(0Xrd8<@H1$NQ!+IkHBtHtTZzcH(R?& zv3AW{BgF>&t6%9zMfh*CqFA`wloTtp{boFdTh!~xYI8nLNtS15w0=g`hzswZk}>5P z=w!@FpKpS-@RhHUh~1Jxg0D6EN%|CHQ-L%64ojb#aglP;XB+GtzKZg7#La9!oadzX z)jBsXZ>NP4gq%?pTFxh;M)*e71BtLis1#r*FdY_JofHY)n~#am>1rH-*RRw??(Hge zl`9f$S>B=a|8`QwYc#bswjs;K{6~MA)#9Bw1ZRSX&UG;zI~eh!5l`vwqC~!#V&hJ1 zM30M~(7l)mv!MT&v&kG`W4o_88muj~RsZNniwW+Ldw1ARLCsdS!>+jDd_q>yrSHme|%fhh17Cptvv zjKjTXYTzwHeWPd(S$;VKbGcBqHHkyf?INxK)zf&3o=%$u^2k&;iD^D}j#CvQRkKtm z!UYXd=fHNHR9tOYW+>@zJKekUgLkL-??PIe{OIkj(MPkaW(Vi$o{d87Wq43@u9Xyp z1f}KKmW`6_L!{SYRC9W0qt2TeAl1$+`_wj2L}fh)a8Gmn6smgdVt!oZSRI(wVk&E0 zP%iQbzs>Dh>oR*}VC7rsp)`J}Hw*;?)~_6M?__%~QAG4r4||yocofaWq2J~O7T*Dbrx>!Ne-I@#LdZ5 zs=F@$@^W9fpL#lD-W!6CnzMfNP}Yy$w;%0-33zfcwM%=Gv~B%7yGxoSBc3#{%f(Fi zkpRQv{#D)9NPxo>2{6h<0=(q;kpM+uyX5gD!c?(kL^TlJ2xSlzzM`IYn+(Z#B4C zom1py^%fUNU7b^uZB~Em7h2$IT=>=W@p9MI>S?a4$ID$;tEaiH9xu<<)fqecmQ$Na zGaF(=4he;(XK{6dp-!<$$`M#(9<7x<1Y7-179oD{yKV^a;veLayzO*ScWowl8wuD( zlG|xaVrn{xTW0dI^sjEo(Ud=GWbLHdnfx0{c%}?+sqAI;lWu9!Y8x7A=cb$VmI5x- zM@D`*mxU|i>ygZT3~R{xa3m?gYLj)7Lj&4*cTdx%G;665Gt$1(sNK~1iFG60D<)MpDg7#0+jw;Pm&?$ngkSa3YNsmI7Rk~4>~KnARy%#N%>zaP zu2l9i5`-mdkG7A&H{lFx$}v|vv0;WyQPwAwehi?jTQ}jX4pM9oAS&B`PJA~ zz$)1=W2y$U$?!-$CpZlTp|w9*hD)cj(}(KB=3--z$qn_5O&Xec_?hc8@pLXdrJSQ% zHDRMu`PXQqjhZ@R^5{|i%=No*mdlRE>lw4_8Z@^F78w0DslS;A7ixMVBh?;NKeaw- zQ^+Y#UN{9Fg994#>KbPF-*X?P*V|(w`j>vo~z%SJ*k^hJCVJvpJyk+Ne3t7 zk}fu;5+T~VH20{w3F&=fi&NPO2Zq+h;ifYn>W7;gO^%wOe2aCHCLGn2(BuXQ&>Lrx zCsI!m4mJieiJ22>Crz@O#xHwof**coY;NO>iAUEZGaG`dj`kBmvZ)qCCe%+)*fSr( zdD-*k9H-8hXj2?&5rTo} znJbexV1NI)4;i$bIHSp>W~7g985h-S{Z#*=aIaG79(500=1HFVQ{W67HPHxsS=&&b zoT9&h$VmKrst~Z=?W}n#$)Uw_be3pxXo)|$dgMN=of<-1>|{n7MYqkAOel4;_&b%~k-tG=0qoBtho>bNnj7$XjE~KS>srj6(PZbmOKQpd z#XcV8fCZ%4=wmJZoLYaB`e4FGxvR}oxqU8wBeTp%+V~7P3k&1uf3IGQ--8&~52(v! zmJtDl=(B-pKM~@>UoNx)G^yR-l9tX(!cn3?euaXD#EMCQgG>5Xo>b5CFn7bWp+Uwk zzqHBgKOV0E+zq4OwZE3xU+5+YOtXy;9F}42b-o-p-YXsN4TZPW@Q*V* z(=<0V^3|zc;m^FHkx2aCvy66_BmT&)<~sc27q`n>|0yc*mK@@hZ@|~1&}^Vg2ucA> z5FOF86gM6-g;rH0>t+5AFN};Lu$hF-t@6`G0=$&?+zRuet=vU}4yrOn;k3UbKEF>Y z+PTo&i^m_WFDD-~TlQk4Cf3*MdpfQpt&51vj6KF*_-zzT_9_mSp>ViN`$MCLcolWt z&~e@_;}EwMi!#|8u-q#f@0F~KnlD^U_vIuSEVRJ~?=9LWP43w|C?Uu%No`5Zp@|a32)_j zq|7Oa|II5UE6wonIH9zA!-;%Nkn8DRz0&Kve&g|u(SztXujD7*fJaskfkCME6`CT( zV}RjRl11UXa%FCHlQ-bIUj9v9A)ypS%bQkd$^+2Ht)V;tX6sw11YR zo;lp1egLE?-hdTe8Oqfae)~P}bYSzAX!C}n9%ocD0LPsD%pVrx60%3MD$);@J-i){ z*epcmu|<*Hb7ekJewkLbu*48JUcm3?m8L_2*gzb4)Sx-Hl^6ZY>p0jJvgIpE61L&{ zGu5up^y2`RdHGBEb46}T>;wx#99tm~mNpo(ti~G>8(|^$eiF9`{HPjyMiIi+VnYoo!xZfz<{)SBAiqYE{H^FLC^MJa(j8Y?oV zAElg8I02G|hsXC3Ij+q*0mZ6DOt6l2+=lH!{+vVdn9MCxwQFse1}in)w=8OIUyM`I z+r&@D9*W|5+M>_#Bw;dc1GtF^F7+X{+n==aw6CeMK2-mpX7~`(O!mXR(J5dp^w0jc zDCgTrjKi5l&E6cYn}KSPYX+KsU-L2tp_#5-EH}e;Dji#7*CMmqhxA;ACo;u^Mi_!i z6q^F}A|M_R0Yxe?Ce8EBxm>y^)lzLCkhAgPh^$A|u6qg2iEK1~U&MX1i9a$@0xq#P z@~0fVO&Yh>sTnewD9=?%{Ab;ol#=fx49mmuGM|8R2l|DNg~CrKIGyVbUVH>?q5Ha$nDkVJrcytv)m zrz`@|{U$H*%Ex&T^X*Q?O@Mw(oGLraizvkCp(Y;}g5`^w{WSolv#L!#W2?})x4?`1 z+!-{pZ%9?v4QcT^(_WZQIlx2X%N&u*T6NF)Q3!1GsesP?!h8SuC!&66` zut$v5+CO72@-vQZdQGHU>e%uyw5_Gff;iBjDg91*axltXBp$r9Ym09xfDS~|=1@l|oPMMKTW zDjy4#6D{~J4hdbMaz5?QlLvB}EjDsjzx&O1J>6-C+}GR#CJ<(Lo1TRUZfMYmF)$KG z`j15|;C*~UqNa(9buuY*xp}Mzt`+)SKuKY;6YYo&I1o>7cMK7#yIP)SOhPWY_V#&Fv&ka8=jd9);1X4 zw0od_ZC|1J0W@n9#r00gO?VX~E#RQ_{*ZQcquIe)Jqn>NTuzV&1*K)vrU7glDQYV) z-EHvX%rwwENwxs}zTN|Coi?}K$LF2?GScWgSVlR+EXUR#H}B&IYG=)G+_J|soGF6+ zFr(#?FdC-AjBCRbv&e>Qt`zvZ3#sI^?<6L*ujM`Nfl~vq-iLc4I9*eGlkQ5)FIoCT zyQWIF;$KyJ{lD=Fud@?7mJ~?k%=)-SVGavfQM0G^mM^=&u9aSiP~7i?Ok1?>@7Vkg zKWUR~_CN=sCvr$y&EKKTTHWdR2bXg#KY<5TLh`sf=*9}j~*u;maV*3W!eRugS6 zs7mtx&KB1{+;SbvfB*OraeCB=902R}I~+XvgQRz<@uG()V`P5xC|>;1Ovc*L4?hPN zVxv5i5{vYoK`gm%9MtV&`hnW(q8hIc`v={{1BKHq@bgq=q*vN07c%=WDIbTy@oGa0 z%_iK1Br&{fecyf+ctM&$Z8X~zSDai-QH4zK4X@gqYSWtzGp7>;GMLFPL9o)tO0D9= zjU>-0ECc`6Z~Qv1>`;<8Ma)~U&@uCSIPGP2?2B{TH$Qe|Fm~6D4ILxg51%9(2k^Ih|obk^x{jzX)vcYz)6F75GY`9BjnsLxd^IsG< zrE)nqWibefWMAuGlgPGMDDmZeataLK;HGKOrARXg`?G^{RkqKINV)yp%X!uJ|2Sr1 zAi!mcIuO3)(W1l0ME+b3+(qpB-hfC=5r6E?AHQ{f3^xst-@XrBPEBHwc+!Pq#)-I__w$D z!`|P!3HKRdK3xPde0X7-xh2BIw(trK7rYKOAC@*_q8r`LpFfim+L(mhu$QMRVQCQn zp`+N9w0@$Mna!KKH!ma+wY?8wApPb^_1>o5Gn;#TkN5hmikiPJYNg0Q6)q}P$OIBD z2AvE;BJkJpDGo?>EjJUL^v9BG5h zGlQ$`?`!Myez5rj+p{+N{YLQri{O9Y=yGHk_4NtUR+|folnl86?UyhYT33A8V*i#s~^L$+M2ANQK+sU06?%rJB zzv)8S&v?=5zu2G*xE8`cB^!(n74Tt?;OOs<8u_8(bGQT7E$R$f1aL#ve;eTzY(;jk z+1LYY2AK0Agu#IqpHp(9hZlBfHwj7O4hcQntCUZdFQ_rklaPsKQlHc?p|R$~#pojT zC)qQ12RF^q%G7NL-L>W!?yh|W;0#7bw#15SgK1usx|*TO z<~QD;3k7lv?F=|Hv@@0Aok_4WT4UzU zB$@WcjGgI@h0;4CEVLav)3Vh&vkVZ-Cu=Iq!qu>l0c>ULQ0M==4cZ3Ku^V)rHt6#7 z1`&JAwgo6zwQMYJl$QxX0Y=`TtJM>Ln*Uo}ExSLh+MkOTqjb3!GByJ3Bq6Yay*;C5 z9U3hkb)^UzXhW!rEsT;WuGyleZQn!f`Lhy7CkqQ&d@FPdW4x6-fp{c%SaJi#(@P(ilrR=o^8&Pw}xyNSI6TAK71nj4aiLA?oa)RB8-h;`3J&~A%c1TQ9E zJ0q@Fcxt=IZh6EW zo5|5iJ^Gm;^=QjrL>yW6k216AIQWn|- zDd(X$AGnW}@;B^sD6d*kyzji;8y4GD4_}7gvcR*_BtUQCCAE#@y=_|v20e@bMi!6d z!7KPz8V)w6VCU10e&%!HA)%f3yPBIxD~DC2YhlvcYc@xIegs)f7v~9(wWDC#=zeDJ zYT6GnOL3_lJf*iTb;Zme$yNQMW-zl;hv4#V{kefF{c-#EI__Y+HNTeO_H96S3>QW) zm%}fg;k_F%C_|*P0-D9%;_3hMuy;TkHY?GM&%oZP+Zb@*zT_6{a#b&ULN6Dbtmu!S zLg@b^6o|G4i+J$n;66h=|BUr3;6QxDEg0S|9BYNAK`6&w&H>;q!>m&6k=YLC*b>xT z(H8)@g)JPqlW(}z@E5nR_TBacwYFJ0%_YM0<|)P1%HV^c8E5vg3~#qzCi>cRr4YwPEaU12V^0u?&>KEZE>5*yKNKV zPDm88LShT*ma5Q3wT2}k$%;K0+Tr1iO3R9Nqa;vj$cqtfA?)_+4443XWu5f?k#PT-PN?588o+N5fZ68 zvu{(z5LMowW4y9;?9zqkkL>NcB)wCXtxritup_~>{eNSpvM3+4Qy1e9QFIu78Mtl8 ztw0(9;xL8Vx>M;Jb18!9WAALLFGpf~(Xv_WEne+)n*&86F9Qu;ow z2+!3EQ}gwOM>J}|RqRGnd((ynn4LwLm*Ti*NOS$f>?-fu4|%&m)9~`J$M9$l82oO^ zVlYGT#3>XA1N=DZFUJt89kV@xK$?&l%KRN8LkR|_U8Av& zF;!K1I6D<}d8H~raHJQ(|7x-IQOX+;{^~M}WpL?-5#!pq2Yc2LuT=w|c*POSw)4k?E{#~yQg}tKk1@Zt6g(cD9srBe}Uz zaZ9Y?(1X45Bi7@GFwQ!eRaAL2;eX3;ZJ3>C^2$fAZyJ~7t(i-jsl%E$d@=%iyn@dJDaZpF+uY$s2(SnW`GX;P;28 zYo|)!2*l74l1U$gcVfceY829=sNyg}VRH}W%30z{9P|p;%F9ZbMGB*Ld8KRl6Wd{F zbdmd`B6^~S=cE5{sr|#ehS-ZE&PTbiPTMyrliTUHoJtX`RL=JLU(bL=iP!(l%Rh#h zv|{@m&9$dALv*4y@HZq#7KD9(V-Xng5?q|}FXMxwHj+v^Ki1}zz32@w&l7t&h&7u^ zO+Fmg#Q2=F1V;t61&M3JX|AxSpZ`tAr-FzEPh?85w9gHvVMd@sND zIIrwdZ^ZX_RuvuZ6&~u9ox%WnDNFxITWR(M3XN2l%Sg!FFM2xz{G!6^cd$1Q=d%)f}-H<5re{n9%SrrFz@cr}d2RkXkw zL)$j{*Z29WS|-|O0mNULjc$Q<8@Yv_<o2 zpCbj!2Qc$~-A_fdf_UsDE@2x^7bC^*c#+tySQcGD>5SV*dTrgtpOL6;0ci3?_Mvzk z2Lrm~n&DrOh&>X!#Qt|R$9ypL$hhI=Jp9Pq)sK9O4a1Afw*Fx&ZQ|w-2X+@O?rIuE z!nMPj#-%TUgL2hblb>z1ip`W&d!ux3#?>w1^CGMcc>j%K>qj!uS(Nb{VBSG)j+tVD zj0HG=?RcQES$+kt;R<^Qg8A4a`LY1%s5v)RK%9cx(*j^VEA()=dk7$ZpbSNK@$Y<$ znUDwSm`WfT*6IsHJnP#QTLn1RTW}`pe_`}L1ZoeE0iWUitjecX0K=0(D1RaKDmTqs znAhrk7vL|leqI}LDFK5lb3eYL1HqG3Q7jhB85`=(Dq&j=5-o_vUgxyQsb=QjBKrcc z>y^#%M#wH&1p+Aip0|_r_&sAjkdF7pXI_hp#X!s(3%dj{eElrg-yFd5`M zCwe#^#xd|To6=_dM<{h-9>QyBG{ExH7EewjQPaQ1+ZiXV9CHy#f8}resb`5ZrI@>< z$r+*LKOCr}?pC6K5PeOlFt>`nIwjIy8@nP0k%BKEp2~pZoDm)I1P{El2rs(45vWqU zO0VxBUccDLLm+1qxPpG#89jp53yR0ZRB>7R2+HOj-9pCDVA_$A9+&1zwgm^Ue4R$- zy*XU>#(t1dU}^=|4t^qTPAwoKZomR(tXNqC#ZffF9E4SDfup5VY?h-?UZ!B-HgAUY z!gLEq$!GH0NKuA{&gWmWV-a&&Q$jPdHQO_0b~E&~IR10a33mZgf}^-80Z^@r_GNh4 z6q*;XLKa1rk7H+sVEV_WUe2%Twg~4}?hYQ%5i`Jo7i`Y2RBIj>k4}!^(I@w4Id<<4 zI?X?rF9ubPldm;i;Q+;QH0=V;O*m*Tl}G;qKH$RxXoYnH%ANcH{TX)LI=E`!zlrU_01!+F+)pk-mBo zTQR+xHwrrWJ=82uIwu#(E9pjBo?IMnTA0;WgVEO>5hF`u6nA5Gxsc@9n#E99PUj$f z;m&-2D` z^F1dkbl`gCnkDJ2WFNL&7?Ewq%RapALpcu4AfH40w*7N&2##t={Z^Zgl$CTIvl)l^ z67v}tU(Zog6aG;{97v@t83b;Ajerrkfqyovih=u?(}|GPF5X6-iOhNXzGAn5;fu{x zAXF{;=fra7n}^C<_yLSPHdR3msH@yjtVykkEtLASM!xXcNAnK4&%lNHF%sR_y5@U? zH<7GA{e)AlsUVR+yK^7QXz-OdZhT(FO_66mYHlb;c^-J0eLLLOG7iah_Gdg-z75xK zhw6~I5c@sD4R51Xn{7C>jdClVsY^B6E7WYDYx7t{eE;9`B{yUVgi4{dS$bv?ChF z_IJ78?uB%_jC$oa7x?*-&MU2UXRuFbbInz7VFTl43ep-aye*ykN6U* zR+XD)L4(+H(9H}0?NqgE4rcvAX%z;Tt0O9}*^i6%_dZG&0eZSL>6h2sDcs{~4xW1u zH&^Y{k%FO7;TF%664oy7WHf7|%}WajwipEpJ)gv+I2-YboLtcwGA|5wi^}-=T~d+_ zh_BPlq6Muk$H3U| zfL8>!=FWoDipTQZ8?)0ZzP%u{;*75^BK7$JURm5+M*!DY%pFfFx09)}=X8hm3p-Hc zM>?f*Bas8rr^FDrw9ZMm866m&(fuTAvuCie7^KkVkivo9@C@wx6fqlvqZ>^d$;h70 zOY(0k|0eiXj*M{0&*9K>Ajz&ySg`Tew5*CE>wSVbilk-5B#6q3jIpDbWibp52WmFW zbGqD_9u%I<^EtVB-|=>en?gK;VG4c}z0oT?k|d{uXXKj?QTM>pzJpTbJ0OWQq)s1X z;vK(c3^A%Vdy!RUJ=pi40yDAQ!FWdRSF`)yQQo$`)!xq$V&MP~zEG?={zUtCY9Xmw zyIgJdjBi&5CwFuD`bNB2$LmL(hmCS48_wyG z@Oh{IkG=PRkE=NMzoi|W^=eftTb8@Q224$4V@e>AO$me`1A*k`A_F0ifD9ynu_gBc zGME}H+tdKE=}jio00K-08Pkhs2^bJHRM7*$@Ao$|XZP%CCCen_-uwQ;=iXR*&YUUF zJoC)cAA~Eh7%CrFy$-*I@|`UeRvjNZek%E33e7dBLC29%W=TG$NDtn^TW%br`YcVD z-|x(Ah&O4%T-|3XWa&?{TQvDLOeT8&3MCZB1wXdVshak6WNrSpOgnLITr(B7cR_xe zBSSkxH}j8dw>_E{bJBZoHZwl{7zV$0aw62eGT1&o+9Jb)y*bEj>XRU(qpP~@lk3HZ z>CEW#6bR!^!Pum^3^Ichh}}p!?0YCYv=g8_7T$Pga}hP7b`XmFX-2gpI2nDMt5~<> zcs}TB&f){x^l!%JWOH5(q^yaFZDh;LD1KqEd%Ub~&mS-7a!ZtlrB;)UU? z7uvcKr~*Yu%?7n}P}o$k3k35{6r#3=lViCiLTE6t*Hqf+#?r&5bT@g1b+;(mh$`C~{CPx->>E6z z<;}E2KuVfNF?aqHXe=PRy4agsmWU{Iz5?aA?;G~wk|Y$A_w>1{uEp^q8I!z+Q?R=#v%iRkh3eY}#e~Nq zzZd<00em3*~tG_co5i3coxI22R8;(JWzYz^H!r}K2h>q~zC}^lH4`Jad z6tZY%U&xDXl0P1D-a`2KKthL51~EXnAuCl8W8@lVcd+pd{yzCUT-ask*R(J?BFvYmA`V}~RP9>cFKz0)mKN7Q^UAT74ZB+lvV1v{ zX2KO@3q&2YW_FYG)?Z0`yF}7e!yKw-FzNZ|CD+>?N->9;dG>dMBMBMXb3R%eYKPxO z!C53U0=XiU!>gl+@stn)WHF11A{Y7iXcI!HZHqf)B^kqhd@}`m0#}9EwK*uH9a(g4s^MYy!+ag=66~V+`ttir?bb`^nmPq6S1BFG=u0GL08iI&JJ8 z(Lsmg2j5R#i1Jt_5zHT-6rewlA?;Dr1|{Z;^_mJ$ewfySfWl7d!m5A%f78XDQCOUm zAO!exG%bbkq&Wqh=K4kZ6-{ycZ$`t#YWQ9c8s47}wKt9MKm+hCtD#ch9=ML6>J};Z z2Z_fWDNwX-g*k4XXb%&S;9`Vn=89wrZMaX&;G4&*#`W)M$h zryFRN*Q*@5SUpaS<@FHZLRoZA4$qshW~8u5vEA~`yS=OVtJVM8nDwuH4lB1P7`7r9 z&OZHN5@s$OhRR$V{%yy=J}K;SPkHzrSLW#X$@Oii@f|@&u+bhq7{j`8BWa~MeoM(2 z=M+8C(bS?0S1-`scX~S%xGh#)u%$VDjtqs|5%nSaDyyh23D)HLPFI5nvSDYwrw5OWG6o# z5D4_)avrhDZ~`4p1Dru4 zmyy7{Fd351y`oo3ht(FDeO!F^v#4(OVn$bzD1C&vx2%d^BRGUW??gC>&Em)wvhj=q zBBY$er}MXtho*M4`l6$%uP_maq<1bfj_(>2=)%uAI83U1#PN=5nstw3<-2uI3Xf$P}y)Tv{oM2~iCBhKlV zJ~Ni+e^;8rk)F5Zs(B9?`7`$om58f(`kG224csqC77>HWW&GOQ z=GcxB6EpUD85)fWbPzOS5`zb`56iui(AoMN8Sc zKhA58E{O3qFCRtg1m&J%L9IC$0N`b+@GBQH2s?zsIR-9E&S45Z?gVhHmh zvI@Q1;l_#2JR6y61Zejm4rc?*)02fCTbM7DI9}Lz5++YA^=%j&w^Yo4QFQQ=ccH&8 z!qeDIejm$|N2i?4JFm6Ytu^Oo3daxEYQe=?efzH0Dreh{uGWfF$XXl1wYp<;5}xG-+HYU>$=(4+HkR`w(Z8ICRpnb?>xNz99Fwc=(K#d z2{?IMgySgBr?zR1T~2jO{JxUIR9SDGHMr<|1XlymvW%}?u;_i3j=J-Z`L(5DIv&3J z)bYrT0t``NKA4R>_~&^YT5%kF@Fz=W4V;Gn_EBdgrkR|~0?HL?fqz({#+A;>AOhDp zBJd3!aNMAmk;-fHpZJFbg{WIKClc2z_l0IW)SM1+7?hCpy_iH-P_w&O6T64v9Ko^g zDv5sPQZ#~Ua3PIL&2pU5CH^(juEe}>5X&fBEK%YPD2_yl$MRbf$CznhE`W^1OS2M} z;6tkZzM+NFhEMG!hI$1Vswzweo&o*L=|E=eB0JmjC68YUN4uBo2lpyr661V`&Wi`= z`R9%IDu&ljP@7=iuvHe0b*Ui5C423HaTa2IY}{mqJb=wJkotFU6j@8E4% zYdMFflA)d2n@;OwI%UDod!V!@*?uHE31WYm+wP{`Y^M%5?A*0sN3k3Bjuwu?uTO|> zfbN{JgvYoTUY2OL_;1AKtmUKi%sJfYcJj{K{VIbzaVfGMD?kneNeWrg>)g>KS4bt_ z^YTTtA?LVa? zeS5g138$6$J74aa-7ypX&bMrgPO|nCWuwL6w-f+oUc)%R(Fv)9&JLa^=3yoOdWREf zC+x%0PokuY*2meid=V$k(H2YC*z`VLP=W{d1afErh7wf!ms&E&R#b-DG z>6WG?>9BZKY~GlLbKpjh;t^W#g@pojv3Yqa7xxIZ@1jCsOWZs=9YdqfB9nnFceq)+ z^KY5O%h6fjI~HZ6pNOG)xn@qSc~Xv?C^AvkZDE$<++1wlAp|atey_xw8EfXRaV~KV zEB*FeB(`;oeg-t&chI;M)!-)Za~+KR7vi9%*Dt&3^(1T4GE3*Ej#0ZX2+X*&kM_I5togm8N0BQ>cTfg$hxbd! zJ#&&xp^FrQ2NFgL?a-lqjQTT!UTF+*wvPS(rZ0{0UC~2%ext=nj71CD{4 z;Zi&;*)8bRvZ<(}>~39ZVVi`kT<@)^x=Cn;HFeV&WmwuOb)$a<|@7uF+Yx{N^ zCf-L3!M|g}JUUrEMkEQ(BvXeTD6)&%K+_JGAV_$JLx9YkB3Hmz(gIig#oUU*%A25U zd$S*_rs<+7CWB(7{e6h&_eN%@JVg=IIA*vDdy2JshMWeSyJW`xJYeCtD5{Xpc>f9S zacts%ddH?W6LM^7cS`=fqcrC&XNU`i?iXxKB`R#UQ|uoOD>9mP*ro>3+=IqnV$9v}MAT^AQLgB~A2Ci)!Dv>NAD zh0DAFy5zKl#B7GkBpH*Go^iC{=$o^Y;n9^|K|NBp(v!)6NDVW zO$JCufP&YSdTZIUln)`ds7oZNH;;#JR->5TN0{8KDqsTQ)08XThhx+{Pu>}Y8s_Iw zbZ+DU?ULr{BEHyCCd!V2pPL7dkxqFe?lKPbmLcHk_i8wDp`w2KJp!OsW42wWm1g(M zxy0+)&W0EK9Ie~RW7Hh}y(rPj0~~ehRDRB#)P0!G=-z&9_*nm3(?MOg50b}5p=*~K z?Hx9f8xSRPlIG*V4NUg=Lr5OC4+QeDJZWc6o>!}iR)5L!Rnqk7vhdRr5ydvgf5_?7 z?*Y{WofUHv-s?b(SBH)NO5?3?decfj&vQ*rCataWowV~V^YeZ^()0u0bdj1`cU3jD zx%2oR^FB@4BBUv|K~S;u4%u2wYF;1qyaY}lNG8s-ty}ZjY~x$#+CLDW0)mGc-0o%! zwTy2IlZm_7kyUxI2||tlMHb}4rS((eC&Gblu>n-HPKT4K=B}6Ap9x}A@=Z@9V%p$T6U=%SO z3KYEoeszp6dqix@e1Z(@GOy~*9w*J)1vFUoJL0VSRq}6*;0E9}uXSWiVB4|6@Ano8 zds!Y7TAk<57(Z^lk2TAIt*JK^0r=RwLG??Ug7ftHcu}208+EfR?1uc-nnBXsS%@Gx z#ymQ;mW0cEd62{i^LO+T;Nmxkd==*7;wm}?0~a1straX*#QFOqBn9)EP}u3jJXpj^ zM5n>_G|dL3(?4L&WXBsr^pQCM1yO}5CEn&eRB{&YUoWn;9WWgs)@=j=kD=p}r|Phf zMwMKB4)JRET~2&lOVE!r^Gf&M?=t?KUM&2?U;r%nbF~G&D^UHF)Wm~Ow*OR20*6Ooo}(=`aE!84V?9dt}SA@T}uyiRq|kH?8s`1F#LoBmZ5! z*v+MOsds}vem6z^xk}l~tEcd9C+y3;fkd3@69jU%{f_vK$v85=qlcIDwx#}j@$?bkmH#8T|^m}@FQFKqiN%Q8^ zM6IDxVjLTuRd|$y7mK|Pbt8TnuJn;0byjbrY@pxWcYCGJ>SAuI@T{IZ>z_HROA$^i zcrOk_fwwa+&2)tEzFt7s+&-Of%6QQ@C);Hp<4yQT+b{os-;TX7=W|tT2^0DamH?f? zPiCbi-yG+lCh8jae}|ufc@)HeJR3dTW%2+e!L_MN(bm~fUYWt!upT*@&T2yK^`Chu zoK8E8ixzSLv(bkq;LA0}e8pE?EaWmgAXD1+n;abS7$O61Qs) zgTAEX<-VcdgK+W|Lgk}4`EsuaPJT@Qg~iE@g_A?fv4o!iJ##Gd-rY50xLCfLNj&~C zUS-mp=*`l{{1uOD0dJYt6WoVM+}$kr1a(7mhM0%uc>D}UZNSyjdS%*EXfB!Vgn~C_ zwlGQ6rH3uEUicXxIV<5o(i}ruu6e(T+L07O5ipdQKNDs@j6BMAnK$-=O$vT${))t> zxl_F)!j9=yq}0P$`bgc1mL0S7QY3wtA-|dg@Is@mqPMf1X**P~(A3o#k|@QA_h5G% z4DXn!fw9lzUdlhhrQDCwZ49`32gXt8+_BRLKgRnJhR`3sS55l({Shk2@l)Ybvu0|K zkDvLdUgVkCToum=*lP+sV9&^Jv$J_$vpG~NA&Z32n4;uDkd ztAVE@M6nuz{o+lSEo3k^k5FX;5Zy2@_WgWri=Rh<&F1{M1eGJ7OC7g6^86sj|tzGFob_@u-< zQh;ziNQ68m;IGWbYXtz-;bu0m;8#HY0RtTHD#g7I$e$+2*ILMbLO}vGIL$)-leI#A zvz|e|>i;pwli|#w{6f-dez$=CTTCcFK8^8xh4I@6;m22*AK;-U^jk8=q5GG#cIa-V zfP@~~VUp*FEdq^6J7;(S8Y>=5XiUfq#nz}9KU>)+;JkRxZ!s;P3y@U)Zvx3{D9<>)=m-_rus<-pzMxTvV;-UK z%?NndZYX7=r<4sDl(H_Qly$i&Wq4i}TS|F}2vmen{spUlV8{(%Udo54!a5a$2iuvV zCMXm;3xE7OD9uP$2u*VfF3 zGjODI!nY))U2F}$wDuDF&(?IcHETF8maN{N_g$0Ko27(w7q~kgmaHCU&&L|h$NYRT z5~ImH#2H9z4<+41NyqTvEsSj|4uU(h7{^S+I^@%kuv!$igcU(kmPGFT$8pYsoL&|5 zIZ>x-`D{^QOH9vJ`kLItGzE#?-!U=0+1>^@06}Umo>u-30OG(XZ+SU}y^`efgp$LJ zp~}0y0Kw(aS*n<5ZY1^2fW#{Fi~XrGGJujI{DHp(e=W^;q-+x;GwHuD7{LD$jC=dS zMZ3d^A@la%r(jp;@|OfMD^tWp1M3P7ggbxv5S4Q;H5U%4jyJV8H8(f&m?7UhqzTft zMH8jNOy5RR+Imhn!x!kJ$O_zzB5=sL3?P6MJ0!`tD=x811Np{21|6hhH7i zOoxR8mpl~oPaJL=J|k%-Y}w=nKIKpbJ}T%>5-*mp#$@TdZfD{%DUZ5y&}VWGjN@1x z&b@K@%tp)a2TgG3I#p&TQkm@+Y;QJFdZ+`cU5XWU?LZh9rL4qAW!@Z8&F`dX1*nDQ zziQ0)5cVFiS)R}z{k)maE0|5OInsUKhCq8DZerK_@1Gq~W&69D-B${ihY@@Q*cIe6 z40hnCCdNC3b43(Imt$nwBDoabDP+dtI@)j05R^a9uLCGsYc@hBq_|76=uk@wIIJ}L z>-i?`c{$JfA~R8@IsUVT z|Lj8=>Hc|K8a~)7$X0S5@NgW6g|N=)&oWT$fAaOyD3^ODXLAUlYgVR2=>DY9 zdZCxpQY4RTH1|wJsRFNGh)d`SwGvN}`K7%bX^^J$#}4(Fy&`E-D6YWzUaw6tx0I62 z)0{pVgc$U@f?o%t%oFtv6Xs*A^DD;c_OyyKF2PCWJv${BiRX};C?-n2sX^w2S%}{^ z)z_-Wza;U7IV15gb`mVRzt*D-kvwTEe zgkHMhKbwn%ToH$Fp(oXwi{>F2{RTtp)$`zLU8C_0u0`Yjk`^_&=P{79bq#i%&2tr+ zrB#r=O4%4rwDD&HNu41TEJ3ywq-6l>lKMv3P+w10lL4nXejq70fGz-OE5eOD-eRt* zYYo1Kn<#nW=x1I{Y-G6rcP=rlI}79_8Lq_DyVl%DJ=TYXShTwjgKnYuG*3IB#LLg1 z$#uC4-S}iHw0h&WtV2T|bBVUKv0g{lJLv@nCjK_)=8s{>>BFovw~JW-VlBllLK7M z_bQ8;%oX)b=m3h$^T|qQ(^GfDH}KtEP?V1bo^%iQU>V_K;Jj>>jjV9araGfI6+G0d zkvPjn@m-iw@qH3Zt`EX2iR>yBN^p7D7^Q-$u8~#Kt>+6$wS;gJvA7sJjz4+e4YpRw zqmDPlXfKYkepO$PHsm19;*nXZVX6o-e(YH(O7J80YS&2m#ZLVckXhE8&mletF7!j9 z<@B54p$CwBsnFbj&G=9r+@f5Yj}pjry{Y71Ss);6uk?}u8Q>$#n1-P50!uJnt#j$* zvIzzRY6+>39R(l);a6yovd;f6?78@V=llZ!d;C=rIs5qcqwonN(G1ir+N=Z4VV7~? zsyfo;>!`;@=LZ{(^5+lLD1iu^zY6nPmqxvVxb_f@ba>LI8F2)wImfS(e{~15fe&E+ z*Lhe_&}`poQ$NMnE2OT#_`36 < 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 q=<~oxvwqt{fCQ+e>WL0+0EV>fMc6 literal 0 HcmV?d00001 diff --git a/kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast.state b/kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast.state index 5703265f0..b2f9a3ef5 100644 --- a/kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast.state +++ b/kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast.state @@ -46,37 +46,4 @@ ListItem ( StackFrame ( ty ( -1 ) , place (... local: local ( -1 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionUnreachable , .List ) ) - - .Map - - - ty ( 20 ) |-> IntrinsicFunction ( symbol ( "black_box" ) ) - ty ( -1 ) |-> monoItemFn (... name: symbol ( "main" ) , id: defId ( 6 ) , body: someBody ( body (... blocks: basicBlock (... statements: statement (... kind: statementKindAssign (... place: place (... local: local ( 1 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand (... span: span ( 51 ) , userTy: noUserTypeAnnotationIndex , const: mirConst (... kind: constantKindAllocated ( allocation (... bytes: b"\x80\x80" , provenance: provenanceMap (... ptrs: .ProvenanceMapEntries ) , align: align ( 2 ) , mutability: mutabilityMut ) ) , ty: ty ( 25 ) , id: mirConstId ( 9 ) ) ) ) ) ) , span: span ( 51 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 2 ) ) ) , span: span ( 52 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 53 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 16 ) ) ) , span: span ( 54 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 26 ) ) ) , span: span ( 55 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 27 ) ) ) , span: span ( 56 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 2 ) ) ) , span: span ( 57 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 2 ) ) ) , span: span ( 58 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 25 ) ) ) , span: span ( 59 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 28 ) ) ) , span: span ( 60 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 25 ) ) ) , span: span ( 61 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 29 ) ) ) , span: span ( 62 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 9 ) ) ) , span: span ( 63 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 9 ) ) ) , span: span ( 64 ) ) statement (... kind: statementKindAssign (... place: place (... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 28 ) ) ) , span: span ( 65 ) ) .Statements , terminator: terminator (... kind: terminatorKindReturn , span: span ( 50 ) ) ) .BasicBlocks , locals: localDecl (... ty: ty ( 1 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl (... ty: ty ( 25 ) , span: span ( 67 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 68 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 69 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 16 ) , span: span ( 70 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 26 ) , span: span ( 71 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 27 ) , span: span ( 72 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 73 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 2 ) , span: span ( 74 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 75 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 76 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 25 ) , span: span ( 77 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 29 ) , span: span ( 78 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 9 ) , span: span ( 79 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 9 ) , span: span ( 80 ) , mut: mutabilityNot ) localDecl (... ty: ty ( 28 ) , span: span ( 81 ) , mut: mutabilityNot ) .LocalDecls , argCount: 0 , varDebugInfo: varDebugInfo (... name: symbol ( "a" ) , sourceInfo: sourceInfo (... span: span ( 67 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "b" ) , sourceInfo: sourceInfo (... span: span ( 68 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "c" ) , sourceInfo: sourceInfo (... span: span ( 69 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "d" ) , sourceInfo: sourceInfo (... span: span ( 70 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "e" ) , sourceInfo: sourceInfo (... span: span ( 71 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "f" ) , sourceInfo: sourceInfo (... span: span ( 72 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "g" ) , sourceInfo: sourceInfo (... span: span ( 73 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "h" ) , sourceInfo: sourceInfo (... span: span ( 74 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "i" ) , sourceInfo: sourceInfo (... span: span ( 75 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "j" ) , sourceInfo: sourceInfo (... span: span ( 76 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 10 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "k" ) , sourceInfo: sourceInfo (... span: span ( 77 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "l" ) , sourceInfo: sourceInfo (... span: span ( 78 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "m" ) , sourceInfo: sourceInfo (... span: span ( 79 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "n" ) , sourceInfo: sourceInfo (... span: span ( 80 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo (... name: symbol ( "o" ) , sourceInfo: sourceInfo (... span: span ( 81 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place (... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 82 ) ) ) ) - - - symbol ( "main" ) - - - ty ( 1 ) |-> typeInfoTupleType ( .Tys ) - ty ( 2 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) - ty ( 5 ) |-> typeInfoRefType ( ty ( 30 ) ) - ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) - ty ( 8 ) |-> typeInfoPtrType ( ty ( 31 ) ) - ty ( 9 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) - ty ( 10 ) |-> typeInfoEnumType (... name: "std::result::Result" , adtDef: adtDef ( 12 ) , discriminants: discriminant ( 0 ) discriminant ( 1 ) .Discriminants , fields: ty ( 6 ) .Tys : ty ( 32 ) .Tys : .Tyss , layout: someLayoutShape ( layoutShape (... fields: fieldsShapeArbitrary ( mk (... offsets: machineSize (... numBits: 0 ) .MachineSizes ) ) , variants: variantsShapeSingle ( mk (... index: variantIdx ( 0 ) ) ) , abi: valueAbiScalar ( scalarInitialized ( mk (... value: primitiveInt ( mk (... length: integerLengthI64 , signed: true ) ) , validRange: wrappingRange (... start: 0 , end: 18446744073709551615 ) ) ) ) , abiAlign: align ( 8 ) , size: machineSize (... numBits: 64 ) ) ) ) - ty ( 11 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 15 ) |-> typeInfoStructType ( "std::sys::pal::unix::process::process_common::ExitCode" , adtDef ( 18 ) , ty ( 9 ) .Tys ) - ty ( 16 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) - ty ( 17 ) |-> typeInfoStructType ( "std::process::ExitCode" , adtDef ( 16 ) , ty ( 15 ) .Tys ) - ty ( 18 ) |-> typeInfoRefType ( ty ( 15 ) ) - ty ( 22 ) |-> typeInfoPtrType ( ty ( 12 ) ) - ty ( 24 ) |-> typeInfoRefType ( ty ( 12 ) ) - ty ( 25 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU16 ) ) - ty ( 26 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI16 ) ) - ty ( 27 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI64 ) ) - ty ( 28 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) - ty ( 29 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU64 ) ) - ty ( 31 ) |-> typeInfoPtrType ( ty ( 9 ) ) - ty ( 32 ) |-> typeInfoVoidType - \ No newline at end of file diff --git a/kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast2 b/kmir/src/tests/integration/data/exec-smir/assign-cast/assign-cast2 new file mode 100755 index 0000000000000000000000000000000000000000..71fe3bcd9bf08e22673fd6c2ddb4e2f27e302d7e GIT binary patch literal 3980648 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℘`;rg`*Ng3xOqxJJ>X=Sw5pi(al7XLA) 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 >=&1{*K4$EIE;D-r|k(LL@gdFOu}$*12Xm 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%0D@g0a+;)h*FLRr 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

2}k==7l*1+7PL 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�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�NQZz!J*kY9$-NV=u~k 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Ð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