/* Provide Declarations */ #include #include #ifndef __cplusplus typedef unsigned char bool; #endif typedef uint64_t ConstantDoubleTy; #ifndef _MSC_VER #define __forceinline __attribute__((always_inline)) inline #endif #if defined(__GNUC__) #define __ATTRIBUTELIST__(x) __attribute__(x) #else #define __ATTRIBUTELIST__(x) #endif #ifdef _MSC_VER /* Can only support "linkonce" vars with GCC */ #define __attribute__(X) #endif #ifdef _MSC_VER #define __PREFIXALIGN__(X) __declspec(align(X)) #define __POSTFIXALIGN__(X) #else #define __PREFIXALIGN__(X) #define __POSTFIXALIGN__(X) __attribute__((aligned(X))) #endif static __forceinline int llvm_fcmp_uno(double X, double Y) { return X != X || Y != Y; } static __forceinline int llvm_fcmp_ole(double X, double Y) { return X <= Y; } static __forceinline int llvm_fcmp_ogt(double X, double Y) { return X > Y; } static __forceinline int llvm_fcmp_oeq(double X, double Y) { return X == Y; } /* Global Declarations */ /* Helper union for bitcasts */ typedef union { uint32_t Int32; uint64_t Int64; float Float; double Double; } llvmBitCastUnion; /* Types Declarations */ struct l_array_20_uint8_t; struct l_struct_struct_OC_DynamicArray; struct l_struct_struct_OC_Matrix; struct l_struct_struct_OC_Node; struct l_struct_fused_return_multiplyMatrices_testPoints; struct l_array_256_uint8_t; struct l_struct_struct_OC_Point; struct l_struct_struct_OC_Circle; struct l_struct_fused_return_calculateDistance_memoizedFib; struct l_struct_fused_return_validateMatrix_processMatrix; struct l_array_9_uint8_t; struct l_array_55_uint8_t; struct l_array_33_uint8_t; struct l_array_29_uint8_t; struct l_array_36_uint8_t; struct l_array_31_uint8_t; struct l_array_25_uint8_t; struct l_array_46_uint8_t; struct l_array_49_uint8_t; struct l_array_35_uint8_t; struct l_array_19_uint8_t; struct l_array_27_uint8_t; struct l_array_32_uint8_t; struct l_array_39_uint8_t; struct l_array_28_uint8_t; struct l_array_43_uint8_t; struct l_array_41_uint8_t; struct l_array_44_uint8_t; struct l_array_45_uint8_t; struct l_array_42_uint8_t; struct l_array_38_uint8_t; struct l_array_34_uint8_t; struct l_array_30_uint8_t; struct l_array_11_uint8_t; struct l_array_22_uint8_t; struct l_array_15_uint8_t; struct l_array_24_uint8_t; struct l_array_26_uint8_t; struct l_array_17_uint8_t; struct l_array_14_uint8_t; struct l_array_21_uint8_t; struct l_array_16_uint8_t; struct l_array_100_uint32_t; struct l_array_8_uint32_t; struct l_array_97_uint32_t; struct l_unnamed_2; struct l_array_97_struct_AC_l_unnamed_2; struct l_unnamed_1; struct l_array_100_struct_AC_l_array_100_uint32_t; /* Function definitions */ /* Types Definitions */ struct l_array_20_uint8_t { uint8_t array[20]; }; struct l_struct_struct_OC_DynamicArray { void* field0; uint32_t field1; uint32_t field2; uint32_t field3; uint32_t field4; }; struct l_struct_struct_OC_Matrix { void* field0; uint32_t field1; uint32_t field2; uint32_t field3; double field4; }; struct l_struct_struct_OC_Node { uint32_t field0; void* field1; void* field2; uint32_t field3; uint32_t field4; }; struct l_struct_fused_return_multiplyMatrices_testPoints { uint32_t field0; void* field1; }; struct l_array_256_uint8_t { uint8_t array[256]; }; struct l_struct_struct_OC_Point { uint32_t field0; uint32_t field1; struct l_array_256_uint8_t field2; double field3; }; struct l_struct_struct_OC_Circle { struct l_struct_struct_OC_Point field0; double field1; uint32_t field2; struct l_array_256_uint8_t field3; }; struct l_struct_fused_return_calculateDistance_memoizedFib { uint32_t field0; double field1; }; struct l_struct_fused_return_validateMatrix_processMatrix { uint32_t field0; uint32_t field1; }; struct l_array_9_uint8_t { uint8_t array[9]; }; struct l_array_55_uint8_t { uint8_t array[55]; }; struct l_array_33_uint8_t { uint8_t array[33]; }; struct l_array_29_uint8_t { uint8_t array[29]; }; struct l_array_36_uint8_t { uint8_t array[36]; }; struct l_array_31_uint8_t { uint8_t array[31]; }; struct l_array_25_uint8_t { uint8_t array[25]; }; struct l_array_46_uint8_t { uint8_t array[46]; }; struct l_array_49_uint8_t { uint8_t array[49]; }; struct l_array_35_uint8_t { uint8_t array[35]; }; struct l_array_19_uint8_t { uint8_t array[19]; }; struct l_array_27_uint8_t { uint8_t array[27]; }; struct l_array_32_uint8_t { uint8_t array[32]; }; struct l_array_39_uint8_t { uint8_t array[39]; }; struct l_array_28_uint8_t { uint8_t array[28]; }; struct l_array_43_uint8_t { uint8_t array[43]; }; struct l_array_41_uint8_t { uint8_t array[41]; }; struct l_array_44_uint8_t { uint8_t array[44]; }; struct l_array_45_uint8_t { uint8_t array[45]; }; struct l_array_42_uint8_t { uint8_t array[42]; }; struct l_array_38_uint8_t { uint8_t array[38]; }; struct l_array_34_uint8_t { uint8_t array[34]; }; struct l_array_30_uint8_t { uint8_t array[30]; }; struct l_array_11_uint8_t { uint8_t array[11]; }; struct l_array_22_uint8_t { uint8_t array[22]; }; struct l_array_15_uint8_t { uint8_t array[15]; }; struct l_array_24_uint8_t { uint8_t array[24]; }; struct l_array_26_uint8_t { uint8_t array[26]; }; struct l_array_17_uint8_t { uint8_t array[17]; }; struct l_array_14_uint8_t { uint8_t array[14]; }; struct l_array_21_uint8_t { uint8_t array[21]; }; struct l_array_16_uint8_t { uint8_t array[16]; }; struct l_array_100_uint32_t { uint32_t array[100]; }; struct l_array_8_uint32_t { uint32_t array[8]; }; struct l_array_97_uint32_t { uint32_t array[97]; }; #ifdef _MSC_VER #pragma pack(push, 1) #endif struct l_unnamed_2 { uint32_t field0; uint32_t field1; uint32_t field2; struct l_array_97_uint32_t field3; } __attribute__ ((packed)); #ifdef _MSC_VER #pragma pack(pop) #endif struct l_array_97_struct_AC_l_unnamed_2 { struct l_unnamed_2 array[97]; }; #ifdef _MSC_VER #pragma pack(push, 1) #endif struct l_unnamed_1 { struct l_unnamed_2 field0; struct l_unnamed_2 field1; struct l_unnamed_2 field2; struct l_array_97_struct_AC_l_unnamed_2 field3; } __attribute__ ((packed)); #ifdef _MSC_VER #pragma pack(pop) #endif struct l_array_100_struct_AC_l_array_100_uint32_t { struct l_array_100_uint32_t array[100]; }; /* Global Variable Declarations */ extern uint32_t globalCounter; extern void* globalErrorMessage; extern uint32_t recursionDepth; const static struct l_array_9_uint8_t _OC_str; extern void* stderr; const static struct l_array_55_uint8_t _OC_str_OC_1; const static struct l_array_33_uint8_t _OC_str_OC_2; const static struct l_array_29_uint8_t _OC_str_OC_3; const static struct l_array_36_uint8_t _OC_str_OC_4; const static struct l_array_31_uint8_t _OC_str_OC_5; const static struct l_array_25_uint8_t _OC_str_OC_6; const static struct l_array_46_uint8_t _OC_str_OC_7; const static struct l_array_49_uint8_t _OC_str_OC_8; const static struct l_array_35_uint8_t _OC_str_OC_9; const static struct l_array_19_uint8_t _OC_str_OC_10; const static struct l_array_25_uint8_t _OC_str_OC_11; const static struct l_array_27_uint8_t _OC_str_OC_12; const static struct l_array_46_uint8_t _OC_str_OC_13; const static struct l_array_32_uint8_t _OC_str_OC_14; const static struct l_array_39_uint8_t _OC_str_OC_15; const static struct l_array_28_uint8_t _OC_str_OC_16; const static struct l_array_46_uint8_t _OC_str_OC_17; const static struct l_array_43_uint8_t _OC_str_OC_18; const static struct l_array_41_uint8_t _OC_str_OC_19; const static struct l_array_44_uint8_t _OC_str_OC_20; const static struct l_array_20_uint8_t _OC_str_OC_21; const static struct l_array_20_uint8_t _OC_str_OC_22; const static struct l_array_45_uint8_t _OC_str_OC_23; const static struct l_array_42_uint8_t _OC_str_OC_24; const static struct l_array_38_uint8_t _OC_str_OC_25; static uint32_t insertNode_OC_maxDepth; const static struct l_array_34_uint8_t _OC_str_OC_26; static uint32_t calculationResult; const static struct l_array_30_uint8_t _OC_str_OC_27; const static struct l_array_11_uint8_t _OC_str_OC_28; const static struct l_array_29_uint8_t _OC_str_OC_29; const static struct l_array_33_uint8_t _OC_str_OC_30; const static struct l_array_43_uint8_t _OC_str_OC_31; const static struct l_array_22_uint8_t _OC_str_OC_32; const static struct l_array_31_uint8_t _OC_str_OC_33; const static struct l_array_30_uint8_t _OC_str_OC_34; const static struct l_array_36_uint8_t _OC_str_OC_35; const static struct l_array_15_uint8_t _OC_str_OC_36; const static struct l_array_22_uint8_t _OC_str_OC_37; const static struct l_array_24_uint8_t _OC_str_OC_38; const static struct l_array_45_uint8_t _OC_str_OC_39; const static struct l_array_26_uint8_t _OC_str_OC_40; const static struct l_array_9_uint8_t _OC_str_OC_41; const static struct l_array_9_uint8_t _OC_str_OC_42; const static struct l_array_35_uint8_t _OC_str_OC_43; const static struct l_array_20_uint8_t _OC_str_OC_44; const static struct l_array_17_uint8_t _OC_str_OC_45; const static struct l_array_28_uint8_t _OC_str_OC_46; const static struct l_array_27_uint8_t _OC_str_OC_47; const static struct l_array_32_uint8_t _OC_str_OC_48; const static struct l_array_14_uint8_t _OC_str_OC_49; const static struct l_array_21_uint8_t _OC_str_OC_50; const static struct l_array_16_uint8_t _OC_str_OC_51; const static struct l_array_39_uint8_t _OC_str_OC_52; const static struct l_array_21_uint8_t _OC_str_OC_53; const static struct l_array_30_uint8_t _OC_str_OC_54; const static struct l_array_21_uint8_t _OC_str_OC_55; const static struct l_array_9_uint8_t _OC_str_OC_56; static __PREFIXALIGN__(16) struct l_array_100_uint32_t cache __POSTFIXALIGN__(16); const static struct l_array_14_uint8_t __const_OC_projectB_main_OC_str; const static __PREFIXALIGN__(16) struct l_array_8_uint32_t __const_OC_projectB_main_OC_arr __POSTFIXALIGN__(16); const static __PREFIXALIGN__(16) struct l_unnamed_1 __const_OC_projectB_main_OC_matrix __POSTFIXALIGN__(16); /* Function Declarations */ void setErrorMessage(void* _1) __ATTRIBUTELIST__((noinline, nothrow)); void free(void* _1344) __ATTRIBUTELIST__((nothrow)); void* strdup(void* _1345) __ATTRIBUTELIST__((nothrow)); uint32_t fprintf(void* _1346, void* _1347, ...); uint32_t factorial(uint32_t _18) __ATTRIBUTELIST__((noinline, nothrow)); void* createDynamicArray(uint32_t _57) __ATTRIBUTELIST__((noinline, nothrow)); void* malloc(uint64_t _1348) __ATTRIBUTELIST__((nothrow)); void* realloc(void* _1349, uint64_t _1350) __ATTRIBUTELIST__((nothrow)); void quickSort(void* _87, uint32_t _88, uint32_t _89, void* _90) __ATTRIBUTELIST__((noinline, nothrow)); void* createMatrix(uint32_t _254, uint32_t _255) __ATTRIBUTELIST__((noinline, nothrow)); void* calloc(uint64_t _1351, uint64_t _1352) __ATTRIBUTELIST__((nothrow)); uint32_t abs(uint32_t _1353) __ATTRIBUTELIST__((nothrow)); void* insertNode(void* _327, uint32_t _328) __ATTRIBUTELIST__((noinline, nothrow)); uint32_t printf(void* _1354, ...); uint32_t projectA_main(void) __ATTRIBUTELIST__((noinline, nothrow)); uint64_t time(void* _1355) __ATTRIBUTELIST__((nothrow)); void srand(uint32_t _1356) __ATTRIBUTELIST__((nothrow)); uint32_t rand(void) __ATTRIBUTELIST__((nothrow)); double calculateCircleArea(struct l_struct_struct_OC_Circle _619, void* _620) __ATTRIBUTELIST__((noinline, nothrow)); uint32_t strcmp(void* _1357, void* _1358) __ATTRIBUTELIST__((nothrow)); void removeDuplicates(void* _671) __ATTRIBUTELIST__((noinline, nothrow)); void* findCentroid(void* _723, uint32_t _724, void* _725) __ATTRIBUTELIST__((noinline, nothrow)); void* strcpy(void* _1359, void* _1360) __ATTRIBUTELIST__((nothrow)); uint64_t strlen(void* _1361) __ATTRIBUTELIST__((nothrow)); uint32_t fused_performSimpleCalculations(bool _823, uint32_t _824); struct l_struct_fused_return_calculateDistance_memoizedFib fused_calculateDistance(bool _880, void* _881, void* _882, void* _883, uint32_t _884); struct l_struct_fused_return_validateMatrix_processMatrix fused_validateMatrix(bool _957, void* _958, void* _959, uint32_t _960); uint32_t fused_pushBack(bool _1060, void* _1061, uint32_t _1062); void* fused_getErrorMessage(bool _1151, void* _1152); struct l_struct_fused_return_multiplyMatrices_testPoints fused_multiplyMatrices(bool _1188, void* _1189, void* _1190, uint32_t _1191); void* memset(void* _1362, uint32_t _1363, uint64_t _1364); void* memcpy(void* _1365, void* _1366, uint64_t _1367); /* Global Variable Definitions and Initialization */ uint32_t globalCounter; void* globalErrorMessage; uint32_t recursionDepth; static const struct l_array_9_uint8_t _OC_str = { "No error" }; static const struct l_array_55_uint8_t _OC_str_OC_1 = { "Critical: Failed to allocate memory for error message\n" }; static const struct l_array_33_uint8_t _OC_str_OC_2 = { "Maximum recursion depth exceeded" }; static const struct l_array_29_uint8_t _OC_str_OC_3 = { "Factorial of negative number" }; static const struct l_array_36_uint8_t _OC_str_OC_4 = { "Input too large, potential overflow" }; static const struct l_array_31_uint8_t _OC_str_OC_5 = { "Factorial calculation overflow" }; static const struct l_array_25_uint8_t _OC_str_OC_6 = { "Invalid initial capacity" }; static const struct l_array_46_uint8_t _OC_str_OC_7 = { "Initial capacity exceeds maximum allowed size" }; static const struct l_array_49_uint8_t _OC_str_OC_8 = { "Memory allocation failed for DynamicArray struct" }; static const struct l_array_35_uint8_t _OC_str_OC_9 = { "Memory allocation failed for array" }; static const struct l_array_19_uint8_t _OC_str_OC_10 = { "Null array pointer" }; static const struct l_array_25_uint8_t _OC_str_OC_11 = { "Array size limit reached" }; static const struct l_array_27_uint8_t _OC_str_OC_12 = { "Memory reallocation failed" }; static const struct l_array_46_uint8_t _OC_str_OC_13 = { "Maximum recursion depth exceeded in quickSort" }; static const struct l_array_32_uint8_t _OC_str_OC_14 = { "Null array pointer in quickSort" }; static const struct l_array_39_uint8_t _OC_str_OC_15 = { "Array index out of bounds in quickSort" }; static const struct l_array_28_uint8_t _OC_str_OC_16 = { "Matrix dimensions too small" }; static const struct l_array_46_uint8_t _OC_str_OC_17 = { "Matrix dimensions exceed maximum allowed size" }; static const struct l_array_43_uint8_t _OC_str_OC_18 = { "Memory allocation failed for matrix struct" }; static const struct l_array_41_uint8_t _OC_str_OC_19 = { "Memory allocation failed for matrix rows" }; static const struct l_array_44_uint8_t _OC_str_OC_20 = { "Memory allocation failed for matrix columns" }; static const struct l_array_20_uint8_t _OC_str_OC_21 = { "Null matrix pointer" }; static const struct l_array_20_uint8_t _OC_str_OC_22 = { "Invalid matrix data" }; static const struct l_array_45_uint8_t _OC_str_OC_23 = { "Invalid matrix dimensions for multiplication" }; static const struct l_array_42_uint8_t _OC_str_OC_24 = { "Integer overflow in matrix multiplication" }; static const struct l_array_38_uint8_t _OC_str_OC_25 = { "Memory allocation failed for new node" }; static uint32_t insertNode_OC_maxDepth; static const struct l_array_34_uint8_t _OC_str_OC_26 = { "List exceeds maximum allowed size" }; static uint32_t calculationResult; static const struct l_array_30_uint8_t _OC_str_OC_27 = { "Final calculation result: %d\n" }; static const struct l_array_11_uint8_t _OC_str_OC_28 = { "Error: %s\n" }; static const struct l_array_29_uint8_t _OC_str_OC_29 = { "Error during array push: %s\n" }; static const struct l_array_33_uint8_t _OC_str_OC_30 = { "Error during list insertion: %s\n" }; static const struct l_array_43_uint8_t _OC_str_OC_31 = { "Circular reference detected in linked list" }; static const struct l_array_22_uint8_t _OC_str_OC_32 = { "Invalid point weights" }; static const struct l_array_31_uint8_t _OC_str_OC_33 = { "Coordinates out of valid range" }; static const struct l_array_30_uint8_t _OC_str_OC_34 = { "Distance calculation overflow" }; static const struct l_array_36_uint8_t _OC_str_OC_35 = { "Invalid distance calculation result" }; static const struct l_array_15_uint8_t _OC_str_OC_36 = { "Invalid circle" }; static const struct l_array_22_uint8_t _OC_str_OC_37 = { "Invalid circle radius" }; static const struct l_array_24_uint8_t _OC_str_OC_38 = { "Circle radius too large" }; static const struct l_array_45_uint8_t _OC_str_OC_39 = { "Circle center coordinates out of valid range" }; static const struct l_array_26_uint8_t _OC_str_OC_40 = { "Area calculation overflow" }; static const struct l_array_9_uint8_t _OC_str_OC_41 = { "standard" }; static const struct l_array_9_uint8_t _OC_str_OC_42 = { "weighted" }; static const struct l_array_35_uint8_t _OC_str_OC_43 = { "Invalid weight for weighted circle" }; static const struct l_array_20_uint8_t _OC_str_OC_44 = { "Unknown circle type" }; static const struct l_array_17_uint8_t _OC_str_OC_45 = { "Null matrix data" }; static const struct l_array_28_uint8_t _OC_str_OC_46 = { "Matrix dimensions too large" }; static const struct l_array_27_uint8_t _OC_str_OC_47 = { "Invalid matrix row pointer" }; static const struct l_array_32_uint8_t _OC_str_OC_48 = { "Inconsistent square matrix flag" }; static const struct l_array_14_uint8_t _OC_str_OC_49 = { "Invalid array" }; static const struct l_array_21_uint8_t _OC_str_OC_50 = { "Invalid points array" }; static const struct l_array_16_uint8_t _OC_str_OC_51 = { "Too many points" }; static const struct l_array_39_uint8_t _OC_str_OC_52 = { "Failed to allocate memory for centroid" }; static const struct l_array_21_uint8_t _OC_str_OC_53 = { "Invalid point weight" }; static const struct l_array_30_uint8_t _OC_str_OC_54 = { "Centroid calculation overflow" }; static const struct l_array_21_uint8_t _OC_str_OC_55 = { "Total weight is zero" }; static const struct l_array_9_uint8_t _OC_str_OC_56 = { "Centroid" }; static __PREFIXALIGN__(16) struct l_array_100_uint32_t cache __POSTFIXALIGN__(16); static const struct l_array_14_uint8_t __const_OC_projectB_main_OC_str = { "Hello, World!" }; static const __PREFIXALIGN__(16) struct l_array_8_uint32_t __const_OC_projectB_main_OC_arr __POSTFIXALIGN__(16) = { { 10, 22, 9, 33, 21, 50, 41, 60 } }; static const __PREFIXALIGN__(16) struct l_unnamed_1 __const_OC_projectB_main_OC_matrix __POSTFIXALIGN__(16) = { { 1, 2, 3, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 4, 5, 6, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 7, 8, 9, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { { { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }, { 0, 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } } } }; /* LLVM Intrinsic Builtin Function Bodies */ static __forceinline uint32_t llvm_select_u32(bool condition, uint32_t iftrue, uint32_t ifnot) { uint32_t r; r = condition ? iftrue : ifnot; return r; } static __forceinline uint32_t llvm_add_u32(uint32_t a, uint32_t b) { uint32_t r = a + b; return r; } static __forceinline uint64_t llvm_add_u64(uint64_t a, uint64_t b) { uint64_t r = a + b; return r; } static __forceinline uint32_t llvm_sub_u32(uint32_t a, uint32_t b) { uint32_t r = a - b; return r; } static __forceinline uint32_t llvm_mul_u32(uint32_t a, uint32_t b) { uint32_t r = a * b; return r; } static __forceinline uint64_t llvm_mul_u64(uint64_t a, uint64_t b) { uint64_t r = a * b; return r; } static __forceinline uint32_t llvm_sdiv_u32(int32_t a, int32_t b) { uint32_t r = a / b; return r; } static __forceinline uint32_t llvm_srem_u32(int32_t a, int32_t b) { uint32_t r = a % b; return r; } static __forceinline uint32_t llvm_ashr_u32(int32_t a, int32_t b) { uint32_t r = a >> b; return r; } static __forceinline struct l_struct_fused_return_multiplyMatrices_testPoints llvm_ctor_struct_fused_return_multiplyMatrices_testPoints(uint32_t x0, void* x1) { struct l_struct_fused_return_multiplyMatrices_testPoints r; r.field0 = x0; r.field1 = x1; return r; } static __forceinline struct l_struct_fused_return_calculateDistance_memoizedFib llvm_ctor_struct_fused_return_calculateDistance_memoizedFib(uint32_t x0, double x1) { struct l_struct_fused_return_calculateDistance_memoizedFib r; r.field0 = x0; r.field1 = x1; return r; } static __forceinline struct l_struct_fused_return_validateMatrix_processMatrix llvm_ctor_struct_fused_return_validateMatrix_processMatrix(uint32_t x0, uint32_t x1) { struct l_struct_fused_return_validateMatrix_processMatrix r; r.field0 = x0; r.field1 = x1; return r; } static __forceinline double llvm_OC_fabs_OC_f64(double a) { double r; r = fabs(a); return r; } /* Function Bodies */ void setErrorMessage(void* _1) { void* _2; /* Address-exposed local */ void* _3; void* _4; void* _5; void* _6; void* _7; void* _8; void* _9; uint32_t _10; _2 = _1; _3 = globalErrorMessage; if ((_3 != ((void*)/*NULL*/0))) { goto _11; } else { goto _12; } _11: _4 = globalErrorMessage; free(_4); goto _12; _12: _5 = _2; if ((_5 != ((void*)/*NULL*/0))) { goto _13; } else { goto _14; } _13: _6 = _2; _7 = strdup(_6); globalErrorMessage = _7; _8 = globalErrorMessage; if ((_8 == ((void*)/*NULL*/0))) { goto _15; } else { goto _16; } _15: _9 = stderr; _10 = fprintf(_9, (&_OC_str_OC_1)); goto _16; _16: goto _17; _14: globalErrorMessage = ((void*)/*NULL*/0); goto _17; _17: return; } uint32_t factorial(uint32_t _18) { uint32_t _19; /* Address-exposed local */ uint32_t _20; /* Address-exposed local */ uint32_t _21; /* Address-exposed local */ uint32_t _22; /* Address-exposed local */ uint32_t _23; uint32_t _24; uint32_t _25; uint32_t _26; uint32_t _27; uint32_t _28; uint32_t _29; uint32_t _30; uint32_t _31; uint32_t _32; uint32_t _33; uint32_t _34; uint32_t _35; uint32_t _36; uint32_t _37; uint32_t _38; uint32_t _39; uint32_t _40; uint32_t _41; uint32_t _42; _20 = _18; _23 = recursionDepth; _24 = llvm_add_u32(_23, 1); recursionDepth = _24; if ((((int32_t)_24) > ((int32_t)1000u))) { goto _43; } else { goto _44; } _43: setErrorMessage((&_OC_str_OC_2)); _25 = recursionDepth; recursionDepth = (llvm_add_u32(_25, -1)); _19 = -1; goto _45; _44: _26 = _20; if ((((int32_t)_26) < ((int32_t)0u))) { goto _46; } else { goto _47; } _46: setErrorMessage((&_OC_str_OC_3)); _27 = recursionDepth; recursionDepth = (llvm_add_u32(_27, -1)); _19 = -1; goto _45; _47: _28 = _20; if ((((int32_t)_28) > ((int32_t)20u))) { goto _48; } else { goto _49; } _48: setErrorMessage((&_OC_str_OC_4)); _29 = recursionDepth; recursionDepth = (llvm_add_u32(_29, -1)); _19 = -1; goto _45; _49: _30 = _20; if ((((int32_t)_30) <= ((int32_t)1u))) { goto _50; } else { goto _51; } _50: _21 = 1; goto _52; _51: _31 = _20; _32 = factorial((llvm_sub_u32(_31, 1))); _22 = _32; _33 = _22; if ((_33 == 4294967295u)) { goto _53; } else { goto _54; } _53: _34 = recursionDepth; recursionDepth = (llvm_add_u32(_34, -1)); _19 = -1; goto _45; _54: _35 = _22; _36 = _20; if ((((int32_t)_35) > ((int32_t)(llvm_sdiv_u32(2147483647u, _36))))) { goto _55; } else { goto _56; } _55: setErrorMessage((&_OC_str_OC_5)); _37 = recursionDepth; recursionDepth = (llvm_add_u32(_37, -1)); _19 = -1; goto _45; _56: _38 = _20; _39 = _22; _21 = (llvm_mul_u32(_38, _39)); goto _52; _52: _40 = recursionDepth; recursionDepth = (llvm_add_u32(_40, -1)); _41 = _21; _19 = _41; goto _45; _45: _42 = _19; return _42; } void* createDynamicArray(uint32_t _57) { void* _58; /* Address-exposed local */ uint32_t _59; /* Address-exposed local */ void* _60; /* Address-exposed local */ uint32_t _61; uint32_t _62; void* _63; void* _64; uint32_t _65; void* _66; void* _67; void* _68; void* _69; void* _70; void* _71; uint32_t _72; void* _73; void* _74; void* _75; void* _76; void* _77; _59 = _57; _61 = _59; if ((((int32_t)_61) <= ((int32_t)0u))) { goto _78; } else { goto _79; } _78: setErrorMessage((&_OC_str_OC_6)); _58 = ((void*)/*NULL*/0); goto _80; _79: _62 = _59; if ((((int32_t)_62) > ((int32_t)1000u))) { goto _81; } else { goto _82; } _81: setErrorMessage((&_OC_str_OC_7)); _58 = ((void*)/*NULL*/0); goto _80; _82: _63 = malloc(24); _60 = (((void*)_63)); _64 = _60; if ((_64 != ((void*)/*NULL*/0))) { goto _83; } else { goto _84; } _84: setErrorMessage((&_OC_str_OC_8)); _58 = ((void*)/*NULL*/0); goto _80; _83: _65 = _59; _66 = malloc((llvm_mul_u64(4, (((int64_t)(int32_t)_65))))); _67 = _60; *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_67)->field0)))) = (((void*)_66)); _68 = _60; _69 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_68)->field0)))); if ((_69 != ((void*)/*NULL*/0))) { goto _85; } else { goto _86; } _86: _70 = _60; free((((void*)_70))); setErrorMessage((&_OC_str_OC_9)); _58 = ((void*)/*NULL*/0); goto _80; _85: _71 = _60; *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_71)->field1)))) = 0; _72 = _59; _73 = _60; *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_73)->field2)))) = _72; _74 = _60; *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_74)->field3)))) = 1; _75 = _60; *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_75)->field4)))) = 0; _76 = _60; _58 = _76; goto _80; _80: _77 = _58; return _77; } void quickSort(void* _87, uint32_t _88, uint32_t _89, void* _90) { void* _91; /* Address-exposed local */ uint32_t _92; /* Address-exposed local */ uint32_t _93; /* Address-exposed local */ void* _94; /* Address-exposed local */ uint32_t _95; /* Address-exposed local */ uint32_t _96; /* Address-exposed local */ uint32_t _97; /* Address-exposed local */ uint32_t _98; /* Address-exposed local */ uint32_t _99; /* Address-exposed local */ uint32_t _100; /* Address-exposed local */ uint32_t _101; uint32_t _102; void* _103; uint32_t _104; void* _105; void* _106; uint32_t _107; uint32_t _108; uint32_t _109; uint32_t _110; uint32_t _111; void* _112; uint32_t _113; uint32_t _114; uint32_t _115; uint32_t _116; uint32_t _117; uint32_t _118; void* _119; uint32_t _120; uint32_t _121; void* _122; uint32_t _123; uint32_t _124; void* _125; uint32_t _126; uint32_t _127; void* _128; uint32_t _129; uint32_t _130; uint32_t _131; void* _132; uint32_t _133; uint32_t _134; void* _135; uint32_t _136; uint32_t _137; uint32_t _138; uint32_t _139; void* _140; uint32_t _141; uint32_t _142; void* _143; uint32_t _144; uint32_t _145; uint32_t _146; void* _147; uint32_t _148; uint32_t _149; void* _150; uint32_t _151; uint32_t _152; uint32_t _153; uint32_t _154; void* _155; uint32_t _156; uint32_t _157; void* _158; uint32_t _159; uint32_t _160; void* _161; uint32_t _162; uint32_t _163; void* _164; uint32_t _165; void* _166; uint32_t _167; uint32_t _168; uint32_t _169; uint32_t _170; uint32_t _171; uint32_t _172; void* _173; uint32_t _174; uint32_t _175; uint32_t _176; uint32_t _177; void* _178; uint32_t _179; uint32_t _180; void* _181; uint32_t _182; uint32_t _183; void* _184; uint32_t _185; uint32_t _186; void* _187; uint32_t _188; uint32_t _189; uint32_t _190; void* _191; uint32_t _192; uint32_t _193; void* _194; uint32_t _195; uint32_t _196; void* _197; uint32_t _198; uint32_t _199; void* _200; uint32_t _201; void* _202; uint32_t _203; uint32_t _204; void* _205; void* _206; uint32_t _207; uint32_t _208; void* _209; uint32_t _210; uint32_t _211; void* _212; void* _213; uint32_t _214; uint32_t _215; uint32_t _216; _91 = _87; _92 = _88; _93 = _89; _94 = _90; _101 = recursionDepth; _102 = llvm_add_u32(_101, 1); recursionDepth = _102; if ((((int32_t)_102) > ((int32_t)1000u))) { goto _217; } else { goto _218; } _217: setErrorMessage((&_OC_str_OC_13)); _103 = _94; *(uint32_t*)_103 = 1; _104 = recursionDepth; recursionDepth = (llvm_add_u32(_104, -1)); goto _219; _218: _105 = _91; if ((_105 != ((void*)/*NULL*/0))) { goto _220; } else { goto _221; } _221: setErrorMessage((&_OC_str_OC_14)); _106 = _94; *(uint32_t*)_106 = 1; _107 = recursionDepth; recursionDepth = (llvm_add_u32(_107, -1)); goto _219; _220: _108 = _92; if ((((int32_t)_108) < ((int32_t)0u))) { goto _222; } else { goto _223; } _223: _109 = _93; if ((((int32_t)_109) < ((int32_t)0u))) { goto _222; } else { goto _224; } _224: _110 = _92; if ((((int32_t)_110) >= ((int32_t)1000u))) { goto _222; } else { goto _225; } _225: _111 = _93; if ((((int32_t)_111) >= ((int32_t)1000u))) { goto _222; } else { goto _226; } _222: setErrorMessage((&_OC_str_OC_15)); _112 = _94; *(uint32_t*)_112 = 1; _113 = recursionDepth; recursionDepth = (llvm_add_u32(_113, -1)); goto _219; _226: _114 = _92; _115 = _93; if ((((int32_t)_114) < ((int32_t)_115))) { goto _227; } else { goto _228; } _227: _116 = _92; _117 = _93; _118 = _92; _95 = (llvm_add_u32(_116, (llvm_sdiv_u32((llvm_sub_u32(_117, _118)), 2)))); _119 = _91; _120 = _92; _121 = *(uint32_t*)(((&((uint32_t*)_119)[((int64_t)(((int64_t)(int32_t)_120)))]))); _122 = _91; _123 = _95; _124 = *(uint32_t*)(((&((uint32_t*)_122)[((int64_t)(((int64_t)(int32_t)_123)))]))); if ((((int32_t)_121) <= ((int32_t)_124))) { goto _229; } else { goto _230; } _229: _125 = _91; _126 = _95; _127 = *(uint32_t*)(((&((uint32_t*)_125)[((int64_t)(((int64_t)(int32_t)_126)))]))); _128 = _91; _129 = _93; _130 = *(uint32_t*)(((&((uint32_t*)_128)[((int64_t)(((int64_t)(int32_t)_129)))]))); if ((((int32_t)_127) <= ((int32_t)_130))) { goto _231; } else { goto _232; } _231: _131 = _95; _96 = _131; goto _233; _232: _132 = _91; _133 = _92; _134 = *(uint32_t*)(((&((uint32_t*)_132)[((int64_t)(((int64_t)(int32_t)_133)))]))); _135 = _91; _136 = _93; _137 = *(uint32_t*)(((&((uint32_t*)_135)[((int64_t)(((int64_t)(int32_t)_136)))]))); if ((((int32_t)_134) <= ((int32_t)_137))) { goto _234; } else { goto _235; } _234: _138 = _93; _96 = _138; goto _236; _235: _139 = _92; _96 = _139; goto _236; _236: goto _233; _233: goto _237; _230: _140 = _91; _141 = _92; _142 = *(uint32_t*)(((&((uint32_t*)_140)[((int64_t)(((int64_t)(int32_t)_141)))]))); _143 = _91; _144 = _93; _145 = *(uint32_t*)(((&((uint32_t*)_143)[((int64_t)(((int64_t)(int32_t)_144)))]))); if ((((int32_t)_142) <= ((int32_t)_145))) { goto _238; } else { goto _239; } _238: _146 = _92; _96 = _146; goto _240; _239: _147 = _91; _148 = _95; _149 = *(uint32_t*)(((&((uint32_t*)_147)[((int64_t)(((int64_t)(int32_t)_148)))]))); _150 = _91; _151 = _93; _152 = *(uint32_t*)(((&((uint32_t*)_150)[((int64_t)(((int64_t)(int32_t)_151)))]))); if ((((int32_t)_149) <= ((int32_t)_152))) { goto _241; } else { goto _242; } _241: _153 = _93; _96 = _153; goto _243; _242: _154 = _95; _96 = _154; goto _243; _243: goto _240; _240: goto _237; _237: _155 = _91; _156 = _93; _157 = *(uint32_t*)(((&((uint32_t*)_155)[((int64_t)(((int64_t)(int32_t)_156)))]))); _97 = _157; _158 = _91; _159 = _96; _160 = *(uint32_t*)(((&((uint32_t*)_158)[((int64_t)(((int64_t)(int32_t)_159)))]))); _161 = _91; _162 = _93; *(uint32_t*)(((&((uint32_t*)_161)[((int64_t)(((int64_t)(int32_t)_162)))]))) = _160; _163 = _97; _164 = _91; _165 = _96; *(uint32_t*)(((&((uint32_t*)_164)[((int64_t)(((int64_t)(int32_t)_165)))]))) = _163; _166 = _91; _167 = _93; _168 = *(uint32_t*)(((&((uint32_t*)_166)[((int64_t)(((int64_t)(int32_t)_167)))]))); _98 = _168; _169 = _92; _99 = (llvm_sub_u32(_169, 1)); _170 = _92; _100 = _170; goto _244; do { /* Syntactic loop '' to make GCC happy */ _244: _171 = _100; _172 = _93; if ((((int32_t)_171) < ((int32_t)_172))) { goto _245; } else { goto _246; } _245: _173 = _91; _174 = _100; _175 = *(uint32_t*)(((&((uint32_t*)_173)[((int64_t)(((int64_t)(int32_t)_174)))]))); _176 = _98; if ((((int32_t)_175) <= ((int32_t)_176))) { goto _247; } else { goto _248; } _247: _177 = _99; _99 = (llvm_add_u32(_177, 1)); _178 = _91; _179 = _99; _180 = *(uint32_t*)(((&((uint32_t*)_178)[((int64_t)(((int64_t)(int32_t)_179)))]))); _97 = _180; _181 = _91; _182 = _100; _183 = *(uint32_t*)(((&((uint32_t*)_181)[((int64_t)(((int64_t)(int32_t)_182)))]))); _184 = _91; _185 = _99; *(uint32_t*)(((&((uint32_t*)_184)[((int64_t)(((int64_t)(int32_t)_185)))]))) = _183; _186 = _97; _187 = _91; _188 = _100; *(uint32_t*)(((&((uint32_t*)_187)[((int64_t)(((int64_t)(int32_t)_188)))]))) = _186; _189 = globalCounter; globalCounter = (llvm_add_u32(_189, 1)); goto _248; _248: goto _249; _249: _190 = _100; _100 = (llvm_add_u32(_190, 1)); goto _244; } while (1); /* end of syntactic loop '' */ _246: _191 = _91; _192 = _99; _193 = *(uint32_t*)(((&((uint32_t*)_191)[((int64_t)(((int64_t)(int32_t)(llvm_add_u32(_192, 1)))))]))); _97 = _193; _194 = _91; _195 = _93; _196 = *(uint32_t*)(((&((uint32_t*)_194)[((int64_t)(((int64_t)(int32_t)_195)))]))); _197 = _91; _198 = _99; *(uint32_t*)(((&((uint32_t*)_197)[((int64_t)(((int64_t)(int32_t)(llvm_add_u32(_198, 1)))))]))) = _196; _199 = _97; _200 = _91; _201 = _93; *(uint32_t*)(((&((uint32_t*)_200)[((int64_t)(((int64_t)(int32_t)_201)))]))) = _199; _202 = _91; _203 = _92; _204 = _99; _205 = _94; quickSort(_202, _203, _204, _205); _206 = _94; _207 = *(uint32_t*)_206; if ((_207 != 0u)) { goto _250; } else { goto _251; } _250: _208 = recursionDepth; recursionDepth = (llvm_add_u32(_208, -1)); goto _219; _251: _209 = _91; _210 = _99; _211 = _93; _212 = _94; quickSort(_209, (llvm_add_u32(_210, 2)), _211, _212); _213 = _94; _214 = *(uint32_t*)_213; if ((_214 != 0u)) { goto _252; } else { goto _253; } _252: _215 = recursionDepth; recursionDepth = (llvm_add_u32(_215, -1)); goto _219; _253: goto _228; _228: _216 = recursionDepth; recursionDepth = (llvm_add_u32(_216, -1)); goto _219; _219: return; } void* createMatrix(uint32_t _254, uint32_t _255) { void* _256; /* Address-exposed local */ uint32_t _257; /* Address-exposed local */ uint32_t _258; /* Address-exposed local */ void* _259; /* Address-exposed local */ uint32_t _260; /* Address-exposed local */ uint32_t _261; /* Address-exposed local */ uint32_t _262; uint32_t _263; uint32_t _264; uint32_t _265; void* _266; void* _267; uint32_t _268; void* _269; uint32_t _270; void* _271; uint32_t _272; uint32_t _273; void* _274; void* _275; uint32_t _276; void* _277; void* _278; void* _279; void* _280; void* _281; uint32_t _282; uint32_t _283; uint32_t _284; void* _285; void* _286; void* _287; uint32_t _288; void* _289; void* _290; uint32_t _291; void* _292; uint32_t _293; uint32_t _294; void* _295; void* _296; uint32_t _297; void* _298; uint32_t _299; void* _300; void* _301; void* _302; uint32_t _303; void* _304; void* _305; _257 = _254; _258 = _255; _262 = _257; if ((((int32_t)_262) < ((int32_t)1u))) { goto _306; } else { goto _307; } _307: _263 = _258; if ((((int32_t)_263) < ((int32_t)1u))) { goto _306; } else { goto _308; } _306: setErrorMessage((&_OC_str_OC_16)); _256 = ((void*)/*NULL*/0); goto _309; _308: _264 = _257; if ((((int32_t)_264) > ((int32_t)100u))) { goto _310; } else { goto _311; } _311: _265 = _258; if ((((int32_t)_265) > ((int32_t)100u))) { goto _310; } else { goto _312; } _310: setErrorMessage((&_OC_str_OC_17)); _256 = ((void*)/*NULL*/0); goto _309; _312: _266 = malloc(32); _259 = (((void*)_266)); _267 = _259; if ((_267 != ((void*)/*NULL*/0))) { goto _313; } else { goto _314; } _314: setErrorMessage((&_OC_str_OC_18)); _256 = ((void*)/*NULL*/0); goto _309; _313: _268 = _257; _269 = _259; *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_269)->field1)))) = _268; _270 = _258; _271 = _259; *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_271)->field2)))) = _270; _272 = _257; _273 = _258; _274 = _259; *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_274)->field3)))) = (((uint32_t)(bool)(_272 == _273))); _275 = _259; *(double*)(((&(((struct l_struct_struct_OC_Matrix*)_275)->field4)))) = 0; _276 = _257; _277 = malloc((llvm_mul_u64((((int64_t)(int32_t)_276)), 8))); _278 = _259; *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_278)->field0)))) = (((void*)_277)); _279 = _259; _280 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_279)->field0)))); if ((_280 != ((void*)/*NULL*/0))) { goto _315; } else { goto _316; } _316: _281 = _259; free((((void*)_281))); setErrorMessage((&_OC_str_OC_19)); _256 = ((void*)/*NULL*/0); goto _309; _315: _260 = 0; goto _317; do { /* Syntactic loop '' to make GCC happy */ _317: _282 = _260; _283 = _257; if ((((int32_t)_282) < ((int32_t)_283))) { goto _318; } else { goto _319; } _318: _284 = _258; _285 = calloc((((int64_t)(int32_t)_284)), 4); _286 = _259; _287 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_286)->field0)))); _288 = _260; *(void**)(((&((void**)_287)[((int64_t)(((int64_t)(int32_t)_288)))]))) = (((void*)_285)); _289 = _259; _290 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_289)->field0)))); _291 = _260; _292 = *(void**)(((&((void**)_290)[((int64_t)(((int64_t)(int32_t)_291)))]))); if ((_292 != ((void*)/*NULL*/0))) { goto _320; } else { goto _321; } _320: goto _322; _322: _303 = _260; _260 = (llvm_add_u32(_303, 1)); goto _317; } while (1); /* end of syntactic loop '' */ _321: _261 = 0; goto _323; do { /* Syntactic loop '' to make GCC happy */ _323: _293 = _261; _294 = _260; if ((((int32_t)_293) < ((int32_t)_294))) { goto _324; } else { goto _325; } _324: _295 = _259; _296 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_295)->field0)))); _297 = _261; _298 = *(void**)(((&((void**)_296)[((int64_t)(((int64_t)(int32_t)_297)))]))); free((((void*)_298))); goto _326; _326: _299 = _261; _261 = (llvm_add_u32(_299, 1)); goto _323; } while (1); /* end of syntactic loop '' */ _325: _300 = _259; _301 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_300)->field0)))); free((((void*)_301))); _302 = _259; free((((void*)_302))); setErrorMessage((&_OC_str_OC_20)); _256 = ((void*)/*NULL*/0); goto _309; _319: _304 = _259; _256 = _304; goto _309; _309: _305 = _256; return _305; } void* insertNode(void* _327, uint32_t _328) { void* _329; /* Address-exposed local */ void* _330; /* Address-exposed local */ uint32_t _331; /* Address-exposed local */ void* _332; /* Address-exposed local */ void* _333; /* Address-exposed local */ void* _334; /* Address-exposed local */ uint32_t _335; /* Address-exposed local */ void* _336; void* _337; void* _338; uint32_t _339; void* _340; void* _341; void* _342; void* _343; void* _344; void* _345; void* _346; void* _347; void* _348; void* _349; uint32_t _350; uint32_t _351; bool _352; bool _352__PHI_TEMPORARY; void* _353; void* _354; void* _355; uint32_t _356; uint32_t _357; void* _358; void* _359; uint32_t _360; uint32_t _361; uint32_t _362; uint32_t _363; void* _364; void* _365; void* _366; void* _367; void* _368; void* _369; void* _370; void* _371; void* _372; void* _373; void* _374; void* _375; void* _376; void* _377; _330 = _327; _331 = _328; _336 = malloc(32); _332 = (((void*)_336)); _337 = _332; if ((_337 != ((void*)/*NULL*/0))) { goto _378; } else { goto _379; } _379: setErrorMessage((&_OC_str_OC_25)); _338 = _330; _329 = _338; goto _380; _378: _339 = _331; _340 = _332; *(uint32_t*)(((&(((struct l_struct_struct_OC_Node*)_340)->field0)))) = _339; _341 = _332; *(void**)(((&(((struct l_struct_struct_OC_Node*)_341)->field1)))) = ((void*)/*NULL*/0); _342 = _332; *(void**)(((&(((struct l_struct_struct_OC_Node*)_342)->field2)))) = ((void*)/*NULL*/0); _343 = _332; *(uint32_t*)(((&(((struct l_struct_struct_OC_Node*)_343)->field3)))) = 0; _344 = _330; if ((_344 != ((void*)/*NULL*/0))) { goto _381; } else { goto _382; } _382: _345 = _332; *(uint32_t*)(((&(((struct l_struct_struct_OC_Node*)_345)->field4)))) = 0; insertNode_OC_maxDepth = 0; _346 = _332; _329 = _346; goto _380; _381: _347 = _330; _333 = _347; _334 = ((void*)/*NULL*/0); _335 = 0; goto _383; do { /* Syntactic loop '' to make GCC happy */ _383: _348 = _333; if ((_348 != ((void*)/*NULL*/0))) { goto _384; } else { _352__PHI_TEMPORARY = 0; /* for PHI node */ goto _385; } _384: _349 = _333; _350 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Node*)_349)->field0)))); _351 = _331; _352__PHI_TEMPORARY = (((int32_t)_350) < ((int32_t)_351)); /* for PHI node */ goto _385; _385: _352 = _352__PHI_TEMPORARY; if (_352) { goto _386; } else { goto _387; } _386: _353 = _333; _334 = _353; _354 = _333; _355 = *(void**)(((&(((struct l_struct_struct_OC_Node*)_354)->field1)))); _333 = _355; _356 = _335; _335 = (llvm_add_u32(_356, 1)); _357 = _335; if ((((int32_t)_357) > ((int32_t)1000u))) { goto _388; } else { goto _389; } _389: goto _383; } while (1); /* end of syntactic loop '' */ _388: setErrorMessage((&_OC_str_OC_26)); _358 = _332; free((((void*)_358))); _359 = _330; _329 = _359; goto _380; _387: _360 = _335; _361 = insertNode_OC_maxDepth; if ((((int32_t)_360) > ((int32_t)_361))) { goto _390; } else { goto _391; } _390: _362 = _335; insertNode_OC_maxDepth = _362; goto _391; _391: _363 = _335; _364 = _332; *(uint32_t*)(((&(((struct l_struct_struct_OC_Node*)_364)->field4)))) = _363; _365 = _333; _366 = _332; *(void**)(((&(((struct l_struct_struct_OC_Node*)_366)->field1)))) = _365; _367 = _334; if ((_367 != ((void*)/*NULL*/0))) { goto _392; } else { goto _393; } _392: _368 = _332; _369 = _334; *(void**)(((&(((struct l_struct_struct_OC_Node*)_369)->field1)))) = _368; _370 = _334; _371 = _332; *(void**)(((&(((struct l_struct_struct_OC_Node*)_371)->field2)))) = _370; goto _394; _393: _372 = _332; _329 = _372; goto _380; _394: _373 = _333; if ((_373 != ((void*)/*NULL*/0))) { goto _395; } else { goto _396; } _395: _374 = _332; _375 = _333; *(void**)(((&(((struct l_struct_struct_OC_Node*)_375)->field2)))) = _374; goto _396; _396: _376 = _330; _329 = _376; goto _380; _380: _377 = _329; return _377; } uint32_t projectA_main(void) { uint32_t _397; /* Address-exposed local */ void* _398; /* Address-exposed local */ uint32_t _399; /* Address-exposed local */ void* _400; /* Address-exposed local */ void* _401; /* Address-exposed local */ uint32_t _402; /* Address-exposed local */ uint32_t _403; /* Address-exposed local */ void* _404; /* Address-exposed local */ uint32_t _405; /* Address-exposed local */ void* _406; /* Address-exposed local */ uint32_t _407; /* Address-exposed local */ uint32_t _408; /* Address-exposed local */ void* _409; /* Address-exposed local */ void* _410; /* Address-exposed local */ uint32_t _411; /* Address-exposed local */ void* _412; /* Address-exposed local */ uint32_t _413; /* Address-exposed local */ uint32_t _414; /* Address-exposed local */ void* _415; /* Address-exposed local */ uint64_t _416; void* _417; void* _418; void* _419; uint32_t _420; uint32_t _421; void* _422; uint32_t _423; uint32_t _424; void* _425; void* _426; uint32_t _427; uint32_t _428; void* _429; void* _430; void* _431; void* _432; void* _433; uint32_t _434; void* _435; void* _436; void* _437; void* _438; void* _439; void* _440; void* _441; uint32_t _442; uint32_t _443; uint32_t _444; void* _445; void* _446; uint32_t _447; void* _448; uint32_t _449; uint32_t _450; void* _451; void* _452; uint32_t _453; void* _454; uint32_t _455; uint32_t _456; uint32_t _457; void* _458; void* _459; struct l_struct_fused_return_multiplyMatrices_testPoints _460; void* _461; void* _462; uint32_t _463; uint32_t _464; void* _465; uint32_t _466; void* _467; void* _468; uint32_t _469; void* _470; void* _471; void* _472; uint32_t _473; void* _474; uint32_t _475; void* _476; void* _477; void* _478; void* _479; void* _480; void* _481; void* _482; void* _483; void* _484; uint32_t _485; void* _486; uint32_t _487; void* _488; void* _489; void* _490; uint32_t _491; uint32_t _492; void* _493; void* _494; void* _495; uint32_t _496; void* _497; uint32_t _498; void* _499; void* _500; uint32_t _501; void* _502; void* _503; void* _504; uint32_t _505; void* _506; void* _507; void* _508; uint32_t _509; void* _510; uint32_t _511; void* _512; void* _513; void* _514; void* _515; void* _516; void* _517; void* _518; void* _519; void* _520; void* _521; void* _522; void* _523; void* _524; void* _525; void* _526; bool _527; bool _527__PHI_TEMPORARY; void* _528; void* _529; void* _530; void* _531; void* _532; void* _533; void* _534; uint32_t _535; void* _536; void* _537; uint32_t _538; uint32_t _539; bool _540; bool _540__PHI_TEMPORARY; void* _541; uint32_t _542; void* _543; void* _544; void* _545; uint32_t _546; void* _547; void* _548; void* _549; void* _550; void* _551; void* _552; void* _553; uint32_t _554; uint32_t _555; _416 = time(((void*)/*NULL*/0)); srand((((uint32_t)_416))); _417 = createDynamicArray(10); _398 = _417; _418 = _398; if ((_418 != ((void*)/*NULL*/0))) { goto _556; } else { goto _557; } _557: _419 = fused_getErrorMessage(0, ((void*)/*NULL*/0)); _420 = printf((&_OC_str_OC_28), _419); _397 = -1; goto _558; _556: _399 = 0; goto _559; do { /* Syntactic loop '' to make GCC happy */ _559: _421 = _399; if ((((int32_t)_421) < ((int32_t)15u))) { goto _560; } else { goto _561; } _560: _422 = _398; _423 = rand(); _424 = fused_pushBack(0, _422, (llvm_srem_u32(_423, 100))); _425 = globalErrorMessage; if ((_425 != ((void*)/*NULL*/0))) { goto _562; } else { goto _563; } _563: goto _564; _564: _428 = _399; _399 = (llvm_add_u32(_428, 1)); goto _559; } while (1); /* end of syntactic loop '' */ _562: _426 = fused_getErrorMessage(0, ((void*)/*NULL*/0)); _427 = printf((&_OC_str_OC_29), _426); goto _561; _561: _429 = createMatrix(3, 3); _400 = _429; _430 = createMatrix(3, 3); _401 = _430; _431 = _400; if ((_431 != ((void*)/*NULL*/0))) { goto _565; } else { goto _566; } _565: _432 = _401; if ((_432 != ((void*)/*NULL*/0))) { goto _567; } else { goto _566; } _566: _433 = fused_getErrorMessage(0, ((void*)/*NULL*/0)); _434 = printf((&_OC_str_OC_28), _433); _435 = _400; if ((_435 != ((void*)/*NULL*/0))) { goto _568; } else { goto _569; } _568: _436 = _400; free((((void*)_436))); goto _569; _569: _437 = _401; if ((_437 != ((void*)/*NULL*/0))) { goto _570; } else { goto _571; } _570: _438 = _401; free((((void*)_438))); goto _571; _571: _439 = _398; _440 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_439)->field0)))); free((((void*)_440))); _441 = _398; free((((void*)_441))); _397 = -1; goto _558; _567: _402 = 0; goto _572; do { /* Syntactic loop '' to make GCC happy */ _572: _442 = _402; if ((((int32_t)_442) < ((int32_t)3u))) { goto _573; } else { goto _574; } _573: _403 = 0; goto _575; do { /* Syntactic loop '' to make GCC happy */ _575: _443 = _403; if ((((int32_t)_443) < ((int32_t)3u))) { goto _576; } else { goto _577; } _576: _444 = rand(); _445 = _400; _446 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_445)->field0)))); _447 = _402; _448 = *(void**)(((&((void**)_446)[((int64_t)(((int64_t)(int32_t)_447)))]))); _449 = _403; *(uint32_t*)(((&((uint32_t*)_448)[((int64_t)(((int64_t)(int32_t)_449)))]))) = (llvm_srem_u32(_444, 10)); _450 = rand(); _451 = _401; _452 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_451)->field0)))); _453 = _402; _454 = *(void**)(((&((void**)_452)[((int64_t)(((int64_t)(int32_t)_453)))]))); _455 = _403; *(uint32_t*)(((&((uint32_t*)_454)[((int64_t)(((int64_t)(int32_t)_455)))]))) = (llvm_srem_u32(_450, 10)); goto _578; _578: _456 = _403; _403 = (llvm_add_u32(_456, 1)); goto _575; } while (1); /* end of syntactic loop '' */ _577: goto _579; _579: _457 = _402; _402 = (llvm_add_u32(_457, 1)); goto _572; } while (1); /* end of syntactic loop '' */ _574: _458 = _400; _459 = _401; _460 = fused_multiplyMatrices(0, _458, _459, 0); _404 = ((_460.field1)); _461 = _404; if ((_461 != ((void*)/*NULL*/0))) { goto _580; } else { goto _581; } _581: _462 = fused_getErrorMessage(0, ((void*)/*NULL*/0)); _463 = printf((&_OC_str_OC_28), _462); _405 = 0; goto _582; do { /* Syntactic loop '' to make GCC happy */ _582: _464 = _405; _465 = _400; _466 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_465)->field1)))); if ((((int32_t)_464) < ((int32_t)_466))) { goto _583; } else { goto _584; } _583: _467 = _400; _468 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_467)->field0)))); _469 = _405; _470 = *(void**)(((&((void**)_468)[((int64_t)(((int64_t)(int32_t)_469)))]))); free((((void*)_470))); _471 = _401; _472 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_471)->field0)))); _473 = _405; _474 = *(void**)(((&((void**)_472)[((int64_t)(((int64_t)(int32_t)_473)))]))); free((((void*)_474))); goto _585; _585: _475 = _405; _405 = (llvm_add_u32(_475, 1)); goto _582; } while (1); /* end of syntactic loop '' */ _584: _476 = _400; _477 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_476)->field0)))); free((((void*)_477))); _478 = _401; _479 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_478)->field0)))); free((((void*)_479))); _480 = _400; free((((void*)_480))); _481 = _401; free((((void*)_481))); _482 = _398; _483 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_482)->field0)))); free((((void*)_483))); _484 = _398; free((((void*)_484))); _397 = -1; goto _558; _580: _406 = ((void*)/*NULL*/0); _407 = 0; goto _586; do { /* Syntactic loop '' to make GCC happy */ _586: _485 = _407; if ((((int32_t)_485) < ((int32_t)5u))) { goto _587; } else { goto _588; } _587: _486 = _406; _487 = rand(); _488 = insertNode(_486, (llvm_srem_u32(_487, 50))); _406 = _488; _489 = globalErrorMessage; if ((_489 != ((void*)/*NULL*/0))) { goto _589; } else { goto _590; } _590: goto _591; _591: _492 = _407; _407 = (llvm_add_u32(_492, 1)); goto _586; } while (1); /* end of syntactic loop '' */ _589: _490 = fused_getErrorMessage(0, ((void*)/*NULL*/0)); _491 = printf((&_OC_str_OC_30), _490); goto _588; _588: _493 = _398; _494 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_493)->field0)))); free((((void*)_494))); _495 = _398; free((((void*)_495))); _408 = 0; goto _592; do { /* Syntactic loop '' to make GCC happy */ _592: _496 = _408; _497 = _400; _498 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_497)->field1)))); if ((((int32_t)_496) < ((int32_t)_498))) { goto _593; } else { goto _594; } _593: _499 = _400; _500 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_499)->field0)))); _501 = _408; _502 = *(void**)(((&((void**)_500)[((int64_t)(((int64_t)(int32_t)_501)))]))); free((((void*)_502))); _503 = _401; _504 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_503)->field0)))); _505 = _408; _506 = *(void**)(((&((void**)_504)[((int64_t)(((int64_t)(int32_t)_505)))]))); free((((void*)_506))); _507 = _404; _508 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_507)->field0)))); _509 = _408; _510 = *(void**)(((&((void**)_508)[((int64_t)(((int64_t)(int32_t)_509)))]))); free((((void*)_510))); goto _595; _595: _511 = _408; _408 = (llvm_add_u32(_511, 1)); goto _592; } while (1); /* end of syntactic loop '' */ _594: _512 = _400; _513 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_512)->field0)))); free((((void*)_513))); _514 = _401; _515 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_514)->field0)))); free((((void*)_515))); _516 = _404; _517 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_516)->field0)))); free((((void*)_517))); _518 = _400; free((((void*)_518))); _519 = _401; free((((void*)_519))); _520 = _404; free((((void*)_520))); _521 = _406; if ((_521 != ((void*)/*NULL*/0))) { goto _596; } else { goto _597; } _596: _522 = _406; _409 = _522; _523 = _406; _410 = _523; _411 = 0; goto _598; do { /* Syntactic loop '' to make GCC happy */ _598: _524 = _410; if ((_524 != ((void*)/*NULL*/0))) { goto _599; } else { _527__PHI_TEMPORARY = 0; /* for PHI node */ goto _600; } _599: _525 = _410; _526 = *(void**)(((&(((struct l_struct_struct_OC_Node*)_525)->field1)))); _527__PHI_TEMPORARY = (_526 != ((void*)/*NULL*/0)); /* for PHI node */ goto _600; _600: _527 = _527__PHI_TEMPORARY; if (_527) { goto _601; } else { goto _602; } _601: _528 = _409; _529 = *(void**)(((&(((struct l_struct_struct_OC_Node*)_528)->field1)))); _409 = _529; _530 = _410; _531 = *(void**)(((&(((struct l_struct_struct_OC_Node*)_530)->field1)))); _532 = *(void**)(((&(((struct l_struct_struct_OC_Node*)_531)->field1)))); _410 = _532; _533 = _409; _534 = _410; if ((_533 == _534)) { goto _603; } else { goto _604; } _604: goto _598; } while (1); /* end of syntactic loop '' */ _603: _411 = 1; goto _602; _602: _535 = _411; if ((_535 != 0u)) { goto _605; } else { goto _606; } _605: setErrorMessage((&_OC_str_OC_31)); _536 = _406; _412 = _536; _413 = 1000; _414 = 0; goto _607; do { /* Syntactic loop '' to make GCC happy */ _607: _537 = _412; if ((_537 != ((void*)/*NULL*/0))) { goto _608; } else { _540__PHI_TEMPORARY = 0; /* for PHI node */ goto _609; } _608: _538 = _414; _539 = _413; _540__PHI_TEMPORARY = (((int32_t)_538) < ((int32_t)_539)); /* for PHI node */ goto _609; _609: _540 = _540__PHI_TEMPORARY; if (_540) { goto _610; } else { goto _611; } _610: _541 = _412; _542 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Node*)_541)->field3)))); if ((_542 != 0u)) { goto _612; } else { goto _613; } _613: _543 = _412; *(uint32_t*)(((&(((struct l_struct_struct_OC_Node*)_543)->field3)))) = 1; _544 = _412; _545 = *(void**)(((&(((struct l_struct_struct_OC_Node*)_544)->field1)))); _412 = _545; _546 = _414; _414 = (llvm_add_u32(_546, 1)); goto _607; } while (1); /* end of syntactic loop '' */ _612: goto _611; _611: goto _606; _606: goto _614; do { /* Syntactic loop '' to make GCC happy */ _614: _547 = _406; if ((_547 != ((void*)/*NULL*/0))) { goto _615; } else { goto _616; } _615: _548 = _406; _415 = _548; _549 = _406; _550 = *(void**)(((&(((struct l_struct_struct_OC_Node*)_549)->field1)))); _406 = _550; _551 = _415; free((((void*)_551))); goto _614; } while (1); /* end of syntactic loop '' */ _616: goto _597; _597: _552 = globalErrorMessage; if ((_552 != ((void*)/*NULL*/0))) { goto _617; } else { goto _618; } _617: _553 = globalErrorMessage; free(_553); goto _618; _618: _554 = fused_performSimpleCalculations(0, 0); _397 = 0; goto _558; _558: _555 = _397; return _555; } static const ConstantDoubleTy FPConstant1 = 0x7FF0000000000000ULL; /* INF */ double calculateCircleArea(struct l_struct_struct_OC_Circle _619, void* _620) { double _621; /* Address-exposed local */ void* _622; /* Address-exposed local */ double _623; /* Address-exposed local */ void* _624; uint32_t _625; void* _626; double _627; void* _628; double _629; void* _630; uint32_t _631; uint32_t _632; uint32_t _633; uint32_t _634; void* _635; double _636; double _637; double _638; double _639; double _640; llvmBitCastUnion _641__BITCAST_TEMPORARY; void* _642; uint32_t _643; double _644; uint32_t _645; double _646; void* _647; double _648; double _649; void* _650; double _651; _622 = _620; _624 = _622; *(uint32_t*)_624 = 0; _625 = *(uint32_t*)(((&(&_619)->field2))); if ((_625 != 0u)) { goto _652; } else { goto _653; } _653: _626 = _622; *(uint32_t*)_626 = 1; setErrorMessage((&_OC_str_OC_36)); _621 = -1; goto _654; _652: _627 = *(double*)(((&(&_619)->field1))); if ((llvm_fcmp_ole(_627, 0))) { goto _655; } else { goto _656; } _655: _628 = _622; *(uint32_t*)_628 = 1; setErrorMessage((&_OC_str_OC_37)); _621 = -1; goto _654; _656: _629 = *(double*)(((&(&_619)->field1))); if ((llvm_fcmp_ogt(_629, 1000))) { goto _657; } else { goto _658; } _657: _630 = _622; *(uint32_t*)_630 = 3; setErrorMessage((&_OC_str_OC_38)); _621 = -1; goto _654; _658: _631 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)(((&(&_619)->field0))))->field0)))); _632 = abs(_631); if ((((int32_t)_632) > ((int32_t)1000u))) { goto _659; } else { goto _660; } _660: _633 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)(((&(&_619)->field0))))->field1)))); _634 = abs(_633); if ((((int32_t)_634) > ((int32_t)1000u))) { goto _659; } else { goto _661; } _659: _635 = _622; *(uint32_t*)_635 = 3; setErrorMessage((&_OC_str_OC_39)); _621 = -1; goto _654; _661: _636 = *(double*)(((&(&_619)->field1))); _637 = *(double*)(((&(&_619)->field1))); _623 = ((3.1415899999999999 * _636) * _637); _638 = _623; if ((llvm_fcmp_uno(_638, _638))) { goto _662; } else { goto _663; } _663: _639 = _623; _640 = llvm_OC_fabs_OC_f64(_639); if (((llvm_select_u32((llvm_fcmp_oeq(_640, (*(double*)&FPConstant1))), (llvm_select_u32((((int64_t)((_641__BITCAST_TEMPORARY.Double = _639, _641__BITCAST_TEMPORARY.Int64))) < ((int64_t)UINT64_C(0))), -1, 1)), 0)) != 0u)) { goto _662; } else { goto _664; } _662: _642 = _622; *(uint32_t*)_642 = 5; setErrorMessage((&_OC_str_OC_40)); _621 = -1; goto _654; _664: _643 = strcmp((((&((struct l_array_256_uint8_t*)(((&(&_619)->field3))))->array[((int64_t)0)]))), (&_OC_str_OC_41)); if ((_643 == 0u)) { goto _665; } else { goto _666; } _665: _644 = _623; _621 = _644; goto _654; _666: _645 = strcmp((((&((struct l_array_256_uint8_t*)(((&(&_619)->field3))))->array[((int64_t)0)]))), (&_OC_str_OC_42)); if ((_645 == 0u)) { goto _667; } else { goto _668; } _667: _646 = *(double*)(((&(((struct l_struct_struct_OC_Point*)(((&(&_619)->field0))))->field3)))); if ((llvm_fcmp_ole(_646, 0))) { goto _669; } else { goto _670; } _669: _647 = _622; *(uint32_t*)_647 = 1; setErrorMessage((&_OC_str_OC_43)); _621 = -1; goto _654; _670: _648 = _623; _649 = *(double*)(((&(((struct l_struct_struct_OC_Point*)(((&(&_619)->field0))))->field3)))); _621 = (_648 * _649); goto _654; _668: _650 = _622; *(uint32_t*)_650 = 1; setErrorMessage((&_OC_str_OC_44)); _621 = -1; goto _654; _654: _651 = _621; return _651; } void removeDuplicates(void* _671) { void* _672; /* Address-exposed local */ uint32_t _673; /* Address-exposed local */ uint32_t _674; /* Address-exposed local */ uint32_t _675; /* Address-exposed local */ void* _676; void* _677; void* _678; void* _679; uint32_t _680; void* _681; void* _682; void* _683; uint32_t _684; uint32_t _685; uint32_t _686; void* _687; uint32_t _688; void* _689; void* _690; uint32_t _691; uint32_t _692; void* _693; void* _694; uint32_t _695; uint32_t _696; void* _697; void* _698; uint32_t _699; uint32_t _700; void* _701; void* _702; uint32_t _703; uint32_t _704; uint32_t _705; uint32_t _706; void* _707; void* _708; _672 = _671; _676 = _672; if ((_676 != ((void*)/*NULL*/0))) { goto _709; } else { goto _710; } _709: _677 = _672; _678 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_677)->field0)))); if ((_678 != ((void*)/*NULL*/0))) { goto _711; } else { goto _710; } _710: setErrorMessage((&_OC_str_OC_49)); goto _712; _711: _679 = _672; _680 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_679)->field1)))); if ((((int32_t)_680) <= ((int32_t)1u))) { goto _713; } else { goto _714; } _713: goto _712; _714: _673 = 0; _681 = _672; _682 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_681)->field0)))); _683 = _672; _684 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_683)->field1)))); quickSort(_682, 0, (llvm_sub_u32(_684, 1)), (&_673)); _685 = _673; if ((_685 != 0u)) { goto _715; } else { goto _716; } _715: goto _712; _716: _674 = 1; _675 = 1; goto _717; do { /* Syntactic loop '' to make GCC happy */ _717: _686 = _675; _687 = _672; _688 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_687)->field1)))); if ((((int32_t)_686) < ((int32_t)_688))) { goto _718; } else { goto _719; } _718: _689 = _672; _690 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_689)->field0)))); _691 = _675; _692 = *(uint32_t*)(((&((uint32_t*)_690)[((int64_t)(((int64_t)(int32_t)_691)))]))); _693 = _672; _694 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_693)->field0)))); _695 = _675; _696 = *(uint32_t*)(((&((uint32_t*)_694)[((int64_t)(((int64_t)(int32_t)(llvm_sub_u32(_695, 1)))))]))); if ((_692 != _696)) { goto _720; } else { goto _721; } _720: _697 = _672; _698 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_697)->field0)))); _699 = _675; _700 = *(uint32_t*)(((&((uint32_t*)_698)[((int64_t)(((int64_t)(int32_t)_699)))]))); _701 = _672; _702 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_701)->field0)))); _703 = _674; *(uint32_t*)(((&((uint32_t*)_702)[((int64_t)(((int64_t)(int32_t)_703)))]))) = _700; _704 = _674; _674 = (llvm_add_u32(_704, 1)); goto _721; _721: goto _722; _722: _705 = _675; _675 = (llvm_add_u32(_705, 1)); goto _717; } while (1); /* end of syntactic loop '' */ _719: _706 = _674; _707 = _672; *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_707)->field1)))) = _706; _708 = _672; *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_708)->field3)))) = 1; goto _712; _712: return; } void* findCentroid(void* _723, uint32_t _724, void* _725) { void* _726; /* Address-exposed local */ void* _727; /* Address-exposed local */ uint32_t _728; /* Address-exposed local */ void* _729; /* Address-exposed local */ void* _730; /* Address-exposed local */ double _731; /* Address-exposed local */ double _732; /* Address-exposed local */ double _733; /* Address-exposed local */ uint32_t _734; /* Address-exposed local */ void* _735; void* _736; uint32_t _737; void* _738; uint32_t _739; void* _740; void* _741; void* _742; void* _743; uint32_t _744; uint32_t _745; void* _746; uint32_t _747; double _748; void* _749; void* _750; void* _751; uint32_t _752; double _753; double _754; void* _755; uint32_t _756; uint32_t _757; void* _758; uint32_t _759; double _760; double _761; void* _762; uint32_t _763; uint32_t _764; void* _765; uint32_t _766; double _767; double _768; double _769; double _770; double _771; double _772; double _773; llvmBitCastUnion _774__BITCAST_TEMPORARY; double _775; double _776; llvmBitCastUnion _777__BITCAST_TEMPORARY; double _778; double _779; llvmBitCastUnion _780__BITCAST_TEMPORARY; void* _781; void* _782; uint32_t _783; double _784; void* _785; void* _786; double _787; double _788; void* _789; double _790; double _791; void* _792; double _793; uint32_t _794; void* _795; void* _796; void* _797; void* _798; void* _799; _727 = _723; _728 = _724; _729 = _725; _735 = _729; *(uint32_t*)_735 = 0; _736 = _727; if ((_736 != ((void*)/*NULL*/0))) { goto _800; } else { goto _801; } _800: _737 = _728; if ((((int32_t)_737) <= ((int32_t)0u))) { goto _801; } else { goto _802; } _801: _738 = _729; *(uint32_t*)_738 = 1; setErrorMessage((&_OC_str_OC_50)); _726 = ((void*)/*NULL*/0); goto _803; _802: _739 = _728; if ((((int32_t)_739) > ((int32_t)1000u))) { goto _804; } else { goto _805; } _804: _740 = _729; *(uint32_t*)_740 = 3; setErrorMessage((&_OC_str_OC_51)); _726 = ((void*)/*NULL*/0); goto _803; _805: _741 = malloc(272); _730 = (((void*)_741)); _742 = _730; if ((_742 != ((void*)/*NULL*/0))) { goto _806; } else { goto _807; } _807: _743 = _729; *(uint32_t*)_743 = 2; setErrorMessage((&_OC_str_OC_52)); _726 = ((void*)/*NULL*/0); goto _803; _806: _731 = 0; _732 = 0; _733 = 0; _734 = 0; goto _808; do { /* Syntactic loop '' to make GCC happy */ _808: _744 = _734; _745 = _728; if ((((int32_t)_744) < ((int32_t)_745))) { goto _809; } else { goto _810; } _809: _746 = _727; _747 = _734; _748 = *(double*)(((&(((struct l_struct_struct_OC_Point*)(((&((struct l_struct_struct_OC_Point*)_746)[((int64_t)(((int64_t)(int32_t)_747)))]))))->field3)))); if ((llvm_fcmp_ole(_748, 0))) { goto _811; } else { goto _812; } _812: _751 = _727; _752 = _734; _753 = *(double*)(((&(((struct l_struct_struct_OC_Point*)(((&((struct l_struct_struct_OC_Point*)_751)[((int64_t)(((int64_t)(int32_t)_752)))]))))->field3)))); _754 = _731; _731 = (_754 + _753); _755 = _727; _756 = _734; _757 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)(((&((struct l_struct_struct_OC_Point*)_755)[((int64_t)(((int64_t)(int32_t)_756)))]))))->field0)))); _758 = _727; _759 = _734; _760 = *(double*)(((&(((struct l_struct_struct_OC_Point*)(((&((struct l_struct_struct_OC_Point*)_758)[((int64_t)(((int64_t)(int32_t)_759)))]))))->field3)))); _761 = _732; _732 = (_761 + ((((double)(int32_t)_757)) * _760)); _762 = _727; _763 = _734; _764 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)(((&((struct l_struct_struct_OC_Point*)_762)[((int64_t)(((int64_t)(int32_t)_763)))]))))->field1)))); _765 = _727; _766 = _734; _767 = *(double*)(((&(((struct l_struct_struct_OC_Point*)(((&((struct l_struct_struct_OC_Point*)_765)[((int64_t)(((int64_t)(int32_t)_766)))]))))->field3)))); _768 = _733; _733 = (_768 + ((((double)(int32_t)_764)) * _767)); _769 = _731; if ((llvm_fcmp_uno(_769, _769))) { goto _813; } else { goto _814; } _814: _770 = _732; if ((llvm_fcmp_uno(_770, _770))) { goto _813; } else { goto _815; } _815: _771 = _733; if ((llvm_fcmp_uno(_771, _771))) { goto _813; } else { goto _816; } _816: _772 = _731; _773 = llvm_OC_fabs_OC_f64(_772); if (((llvm_select_u32((llvm_fcmp_oeq(_773, (*(double*)&FPConstant1))), (llvm_select_u32((((int64_t)((_774__BITCAST_TEMPORARY.Double = _772, _774__BITCAST_TEMPORARY.Int64))) < ((int64_t)UINT64_C(0))), -1, 1)), 0)) != 0u)) { goto _813; } else { goto _817; } _817: _775 = _732; _776 = llvm_OC_fabs_OC_f64(_775); if (((llvm_select_u32((llvm_fcmp_oeq(_776, (*(double*)&FPConstant1))), (llvm_select_u32((((int64_t)((_777__BITCAST_TEMPORARY.Double = _775, _777__BITCAST_TEMPORARY.Int64))) < ((int64_t)UINT64_C(0))), -1, 1)), 0)) != 0u)) { goto _813; } else { goto _818; } _818: _778 = _733; _779 = llvm_OC_fabs_OC_f64(_778); if (((llvm_select_u32((llvm_fcmp_oeq(_779, (*(double*)&FPConstant1))), (llvm_select_u32((((int64_t)((_780__BITCAST_TEMPORARY.Double = _778, _780__BITCAST_TEMPORARY.Int64))) < ((int64_t)UINT64_C(0))), -1, 1)), 0)) != 0u)) { goto _813; } else { goto _819; } _819: goto _820; _820: _783 = _734; _734 = (llvm_add_u32(_783, 1)); goto _808; } while (1); /* end of syntactic loop '' */ _811: _749 = _729; *(uint32_t*)_749 = 1; setErrorMessage((&_OC_str_OC_53)); _750 = _730; free((((void*)_750))); _726 = ((void*)/*NULL*/0); goto _803; _813: _781 = _729; *(uint32_t*)_781 = 5; setErrorMessage((&_OC_str_OC_54)); _782 = _730; free((((void*)_782))); _726 = ((void*)/*NULL*/0); goto _803; _810: _784 = _731; if ((llvm_fcmp_oeq(_784, 0))) { goto _821; } else { goto _822; } _821: _785 = _729; *(uint32_t*)_785 = 1; setErrorMessage((&_OC_str_OC_55)); _786 = _730; free((((void*)_786))); _726 = ((void*)/*NULL*/0); goto _803; _822: _787 = _732; _788 = _731; _789 = _730; *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_789)->field0)))) = (((int32_t)(_787 / _788))); _790 = _733; _791 = _731; _792 = _730; *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_792)->field1)))) = (((int32_t)(_790 / _791))); _793 = _731; _794 = _728; _795 = _730; *(double*)(((&(((struct l_struct_struct_OC_Point*)_795)->field3)))) = (_793 / (((double)(int32_t)_794))); _796 = _730; _797 = strcpy((((&((struct l_array_256_uint8_t*)(((&(((struct l_struct_struct_OC_Point*)_796)->field2)))))->array[((int64_t)0)]))), (&_OC_str_OC_56)); _798 = _730; _726 = _798; goto _803; _803: _799 = _726; return _799; } uint32_t fused_performSimpleCalculations(bool _823, uint32_t _824) { uint32_t _825; /* Address-exposed local */ uint32_t _826; /* Address-exposed local */ uint32_t _827; /* Address-exposed local */ bool _828; uint32_t _829; uint32_t _830; uint32_t _831; uint32_t _832; uint32_t _833; uint32_t _834; uint32_t _835; uint32_t _836; uint32_t _837; uint32_t _838; uint32_t _839; uint32_t _840; uint32_t _841; uint32_t _842; uint32_t _843; uint32_t _844; uint32_t _845; uint32_t _846; uint32_t _847; uint32_t _848; uint32_t _849; uint32_t _850; uint32_t _851; uint32_t _852; uint32_t _853; uint32_t _854; uint32_t _855; _828 = _823 ^ 1; goto llvm_cbe_target_cond_0; llvm_cbe_target_cond_0: if (_823) { goto _856; } else { goto llvm_cbe_target_skip_0; } llvm_cbe_target_skip_0: goto llvm_cbe_target_phi_0; llvm_cbe_target_phi_0: goto llvm_cbe_bunker_cond_0; _856: _826 = _824; _827 = 0; goto llvm_cbe_target_phi_0; llvm_cbe_bunker_cond_0: if (_828) { goto _857; } else { goto llvm_cbe_bunker_skip_0; } llvm_cbe_bunker_skip_0: goto llvm_cbe_bunker_phi_0; llvm_cbe_bunker_phi_0: goto llvm_cbe_target_cond_1; _857: _825 = 100; _829 = _825; if ((((int32_t)_829) > ((int32_t)50u))) { goto _858; } else { goto _859; } _858: _830 = _825; _831 = calculationResult; calculationResult = (llvm_add_u32(_831, (llvm_mul_u32(_830, 2)))); goto _860; _859: _832 = _825; _833 = calculationResult; calculationResult = (llvm_add_u32(_833, (llvm_sdiv_u32(_832, 2)))); goto _860; _860: _834 = _825; if (((llvm_srem_u32(_834, 3)) == 0u)) { goto _861; } else { goto _862; } _861: _835 = calculationResult; calculationResult = (llvm_mul_u32(_835, 3)); goto _863; _862: _836 = calculationResult; calculationResult = (llvm_add_u32(_836, 3)); goto _863; _863: _837 = calculationResult; if ((((int32_t)_837) >= ((int32_t)150u))) { goto _864; } else { goto _865; } _864: _838 = calculationResult; if ((((int32_t)_838) <= ((int32_t)300u))) { goto _866; } else { goto _865; } _866: _839 = calculationResult; calculationResult = (llvm_sub_u32(_839, 50)); goto _867; _865: _840 = calculationResult; calculationResult = (llvm_add_u32(_840, 50)); goto _867; _867: _841 = calculationResult; if (((llvm_srem_u32(_841, 2)) == 0u)) { goto _868; } else { goto _869; } _868: _842 = calculationResult; calculationResult = (llvm_sdiv_u32(_842, 2)); goto _870; _869: _843 = calculationResult; calculationResult = (llvm_mul_u32(_843, 2)); goto _870; _870: _844 = calculationResult; if ((((int32_t)(llvm_srem_u32(_844, 10))) < ((int32_t)5u))) { goto _871; } else { goto _872; } _871: _845 = calculationResult; calculationResult = (llvm_add_u32(_845, 5)); goto _873; _872: _846 = calculationResult; calculationResult = (llvm_sub_u32(_846, 5)); goto _873; _873: _847 = calculationResult; if ((((int32_t)_847) > ((int32_t)1000u))) { goto _874; } else { goto _875; } _874: calculationResult = 1000; goto _876; _875: _848 = calculationResult; calculationResult = (llvm_add_u32(_848, 10)); goto _876; _876: _849 = calculationResult; _850 = printf((&_OC_str_OC_27), _849); return 0; llvm_cbe_target_cond_1: if (_823) { goto _877; } else { goto llvm_cbe_target_skip_1; } llvm_cbe_target_skip_1: goto llvm_cbe_target_phi_1; llvm_cbe_target_phi_1: return 0; do { /* Syntactic loop '' to make GCC happy */ _877: _851 = _826; if ((_851 != 0u)) { goto _878; } else { goto _879; } _878: _852 = _826; _853 = _827; _827 = (llvm_add_u32(_853, (_852 & 1))); _854 = _826; _826 = (llvm_ashr_u32(_854, 1)); goto _877; } while (1); /* end of syntactic loop '' */ _879: _855 = _827; return _855; } struct l_struct_fused_return_calculateDistance_memoizedFib fused_calculateDistance(bool _880, void* _881, void* _882, void* _883, uint32_t _884) { double _885; /* Address-exposed local */ void* _886; /* Address-exposed local */ double _887; /* Address-exposed local */ double _888; /* Address-exposed local */ double _889; /* Address-exposed local */ uint32_t _890; /* Address-exposed local */ uint32_t _891; /* Address-exposed local */ bool _892; uint32_t _893; uint32_t _894; void* _895; double _896; double _897; void* _898; uint32_t _899; uint32_t _900; uint32_t _901; uint32_t _902; uint32_t _903; uint32_t _904; uint32_t _905; uint32_t _906; void* _907; uint32_t _908; uint32_t _909; double _910; double _911; double _912; uint32_t _913; uint32_t _914; double _915; double _916; double _917; double _918; double _919; double _920; double _921; void* _922; double _923; double _924; double _925; double _926; double _927; double _928; double _929; double _930; llvmBitCastUnion _931__BITCAST_TEMPORARY; void* _932; double _933; double _934; struct l_struct_fused_return_calculateDistance_memoizedFib _935; uint32_t _936; struct l_struct_fused_return_calculateDistance_memoizedFib _937; struct l_struct_fused_return_calculateDistance_memoizedFib _938; _892 = _880 ^ 1; goto llvm_cbe_target_cond_0; llvm_cbe_target_cond_0: if (_880) { goto _939; } else { goto llvm_cbe_target_skip_0; } llvm_cbe_target_skip_0: goto llvm_cbe_target_phi_0; llvm_cbe_target_phi_0: goto llvm_cbe_bunker_cond_0; _939: _891 = _884; _893 = _891; _894 = *(uint32_t*)(((&(&cache)->array[((int64_t)(((int64_t)(int32_t)_893)))]))); goto llvm_cbe_target_phi_0; llvm_cbe_bunker_cond_0: if (_892) { goto _940; } else { goto llvm_cbe_bunker_skip_0; } llvm_cbe_bunker_skip_0: goto llvm_cbe_bunker_phi_0; llvm_cbe_bunker_phi_0: goto llvm_cbe_target_cond_1; _940: _886 = _883; _895 = _886; *(uint32_t*)_895 = 0; _896 = *(double*)(((&(((struct l_struct_struct_OC_Point*)_881)->field3)))); if ((llvm_fcmp_ole(_896, 0))) { goto _941; } else { goto _942; } _942: _897 = *(double*)(((&(((struct l_struct_struct_OC_Point*)_882)->field3)))); if ((llvm_fcmp_ole(_897, 0))) { goto _941; } else { goto _943; } _941: _898 = _886; *(uint32_t*)_898 = 1; setErrorMessage((&_OC_str_OC_32)); _885 = -1; goto _944; _943: _899 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_881)->field0)))); _900 = abs(_899); if ((((int32_t)_900) > ((int32_t)1000u))) { goto _945; } else { goto _946; } _946: _901 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_881)->field1)))); _902 = abs(_901); if ((((int32_t)_902) > ((int32_t)1000u))) { goto _945; } else { goto _947; } _947: _903 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_882)->field0)))); _904 = abs(_903); if ((((int32_t)_904) > ((int32_t)1000u))) { goto _945; } else { goto _948; } _948: _905 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_882)->field1)))); _906 = abs(_905); if ((((int32_t)_906) > ((int32_t)1000u))) { goto _945; } else { goto _949; } _945: _907 = _886; *(uint32_t*)_907 = 3; setErrorMessage((&_OC_str_OC_33)); _885 = -1; goto _944; _949: _908 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_882)->field0)))); _909 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_881)->field0)))); _910 = *(double*)(((&(((struct l_struct_struct_OC_Point*)_882)->field3)))); _911 = *(double*)(((&(((struct l_struct_struct_OC_Point*)_881)->field3)))); _912 = sqrt((_910 / _911)); _887 = ((((double)(int32_t)(llvm_sub_u32(_908, _909)))) * _912); _913 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_882)->field1)))); _914 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Point*)_881)->field1)))); _915 = *(double*)(((&(((struct l_struct_struct_OC_Point*)_882)->field3)))); _916 = *(double*)(((&(((struct l_struct_struct_OC_Point*)_881)->field3)))); _917 = sqrt((_915 / _916)); _888 = ((((double)(int32_t)(llvm_sub_u32(_913, _914)))) * _917); _918 = _887; _919 = llvm_OC_fabs_OC_f64(_918); if ((llvm_fcmp_ogt(_919, 1000))) { goto _950; } else { goto _951; } _951: _920 = _888; _921 = llvm_OC_fabs_OC_f64(_920); if ((llvm_fcmp_ogt(_921, 1000))) { goto _950; } else { goto _952; } _950: _922 = _886; *(uint32_t*)_922 = 5; setErrorMessage((&_OC_str_OC_34)); _885 = -1; goto _944; _952: _923 = _887; _924 = _887; _925 = _888; _926 = _888; _927 = sqrt(((_923 * _924) + (_925 * _926))); _889 = _927; _928 = _889; if ((llvm_fcmp_uno(_928, _928))) { goto _953; } else { goto _954; } _954: _929 = _889; _930 = llvm_OC_fabs_OC_f64(_929); if (((llvm_select_u32((llvm_fcmp_oeq(_930, (*(double*)&FPConstant1))), (llvm_select_u32((((int64_t)((_931__BITCAST_TEMPORARY.Double = _929, _931__BITCAST_TEMPORARY.Int64))) < ((int64_t)UINT64_C(0))), -1, 1)), 0)) != 0u)) { goto _953; } else { goto _955; } _953: _932 = _886; *(uint32_t*)_932 = 8; setErrorMessage((&_OC_str_OC_35)); _885 = -1; goto _944; _955: _933 = _889; _885 = _933; goto _944; _944: _934 = _885; _935 = llvm_ctor_struct_fused_return_calculateDistance_memoizedFib(0, /*UNDEF*/0); _935.field1 = _934; return _935; llvm_cbe_target_cond_1: if (_880) { goto _956; } else { goto llvm_cbe_target_skip_1; } llvm_cbe_target_skip_1: goto llvm_cbe_target_phi_1; llvm_cbe_target_phi_1: return llvm_ctor_struct_fused_return_calculateDistance_memoizedFib(0, 0); _956: _936 = _890; _937 = llvm_ctor_struct_fused_return_calculateDistance_memoizedFib(0, 0); _937.field0 = _936; _938 = _937; _938.field1 = 0; return _938; } struct l_struct_fused_return_validateMatrix_processMatrix fused_validateMatrix(bool _957, void* _958, void* _959, uint32_t _960) { uint32_t _961; /* Address-exposed local */ void* _962; /* Address-exposed local */ uint32_t _963; /* Address-exposed local */ void* _964; /* Address-exposed local */ uint32_t _965; /* Address-exposed local */ uint32_t _966; /* Address-exposed local */ uint32_t _967; /* Address-exposed local */ uint32_t _968; /* Address-exposed local */ bool _969; void* _970; void* _971; void* _972; void* _973; uint32_t _974; void* _975; uint32_t _976; void* _977; uint32_t _978; void* _979; uint32_t _980; uint32_t _981; void* _982; uint32_t _983; void* _984; void* _985; uint32_t _986; void* _987; uint32_t _988; void* _989; uint32_t _990; void* _991; uint32_t _992; void* _993; uint32_t _994; uint32_t _995; struct l_struct_fused_return_validateMatrix_processMatrix _996; uint32_t _997; uint32_t _998; uint32_t _999; uint32_t _1000; void* _1001; uint32_t _1002; uint32_t _1003; uint32_t _1004; uint32_t _1005; uint32_t _1006; void* _1007; uint32_t _1008; uint32_t _1009; uint32_t _1010; uint32_t _1011; void* _1012; uint32_t _1013; uint32_t _1014; uint32_t _1015; uint32_t _1016; void* _1017; uint32_t _1018; uint32_t _1019; uint32_t _1020; uint32_t _1021; uint32_t _1022; uint32_t _1023; uint32_t _1024; _969 = _957 ^ 1; goto llvm_cbe_target_cond_0; llvm_cbe_target_cond_0: if (_957) { goto _1025; } else { goto llvm_cbe_target_skip_0; } llvm_cbe_target_skip_0: goto llvm_cbe_target_phi_0; llvm_cbe_target_phi_0: goto llvm_cbe_bunker_cond_0; _1025: _964 = _959; _965 = _960; _966 = 0; _967 = 0; goto llvm_cbe_target_phi_0; llvm_cbe_bunker_cond_0: if (_969) { goto _1026; } else { goto llvm_cbe_bunker_skip_0; } llvm_cbe_bunker_skip_0: goto llvm_cbe_bunker_phi_0; llvm_cbe_bunker_phi_0: goto llvm_cbe_target_cond_1; _1026: _962 = _958; _970 = _962; if ((_970 != ((void*)/*NULL*/0))) { goto _1027; } else { goto _1028; } _1028: setErrorMessage((&_OC_str_OC_21)); _961 = 7; goto _1029; _1027: _971 = _962; _972 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_971)->field0)))); if ((_972 != ((void*)/*NULL*/0))) { goto _1030; } else { goto _1031; } _1031: setErrorMessage((&_OC_str_OC_45)); _961 = 7; goto _1029; _1030: _973 = _962; _974 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_973)->field1)))); if ((((int32_t)_974) < ((int32_t)1u))) { goto _1032; } else { goto _1033; } _1033: _975 = _962; _976 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_975)->field2)))); if ((((int32_t)_976) < ((int32_t)1u))) { goto _1032; } else { goto _1034; } _1032: setErrorMessage((&_OC_str_OC_16)); _961 = 1; goto _1029; _1034: _977 = _962; _978 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_977)->field1)))); if ((((int32_t)_978) > ((int32_t)100u))) { goto _1035; } else { goto _1036; } _1036: _979 = _962; _980 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_979)->field2)))); if ((((int32_t)_980) > ((int32_t)100u))) { goto _1035; } else { goto _1037; } _1035: setErrorMessage((&_OC_str_OC_46)); _961 = 3; goto _1029; _1037: _963 = 0; goto _1038; do { /* Syntactic loop '' to make GCC happy */ _1038: _981 = _963; _982 = _962; _983 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_982)->field1)))); if ((((int32_t)_981) < ((int32_t)_983))) { goto _1039; } else { goto _1040; } _1039: _984 = _962; _985 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_984)->field0)))); _986 = _963; _987 = *(void**)(((&((void**)_985)[((int64_t)(((int64_t)(int32_t)_986)))]))); if ((_987 != ((void*)/*NULL*/0))) { goto _1041; } else { goto _1042; } _1041: goto _1043; _1043: _988 = _963; _963 = (llvm_add_u32(_988, 1)); goto _1038; } while (1); /* end of syntactic loop '' */ _1042: setErrorMessage((&_OC_str_OC_47)); _961 = 7; goto _1029; _1040: _989 = _962; _990 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_989)->field1)))); _991 = _962; _992 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_991)->field2)))); _993 = _962; _994 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_993)->field3)))); if (((((uint32_t)(bool)(_990 == _992))) != _994)) { goto _1044; } else { goto _1045; } _1044: setErrorMessage((&_OC_str_OC_48)); _961 = 1; goto _1029; _1045: _961 = 0; goto _1029; _1029: _995 = _961; _996 = llvm_ctor_struct_fused_return_validateMatrix_processMatrix(0, /*UNDEF*/0); _996.field1 = _995; return _996; llvm_cbe_target_cond_1: if (_957) { goto _1046; } else { goto llvm_cbe_target_skip_1; } llvm_cbe_target_skip_1: goto llvm_cbe_target_phi_1; llvm_cbe_target_phi_1: return llvm_ctor_struct_fused_return_validateMatrix_processMatrix(0, 0); _1046: _968 = 0; goto _1047; do { /* Syntactic loop '' to make GCC happy */ _1047: _997 = _968; _998 = _965; if ((((int32_t)_997) < ((int32_t)_998))) { goto _1048; } else { goto _1049; } _1048: _999 = _967; _1000 = _968; if ((_999 == _1000)) { goto _1050; } else { goto _1051; } _1051: _1005 = _967; _1006 = _968; if ((((int32_t)_1005) < ((int32_t)_1006))) { goto _1052; } else { goto _1053; } _1052: _1017 = _964; _1018 = _967; _1019 = _968; _1020 = *(uint32_t*)(((&((struct l_array_100_uint32_t*)(((&((struct l_array_100_uint32_t*)_1017)[((int64_t)(((int64_t)(int32_t)_1018)))]))))->array[((int64_t)(((int64_t)(int32_t)_1019)))]))); _1021 = fused_performSimpleCalculations(1, _1020); _1022 = _966; _966 = (llvm_add_u32(_1022, _1021)); goto _1053; _1053: goto _1054; _1050: _1001 = _964; _1002 = _967; _1003 = _968; _1004 = *(uint32_t*)(((&((struct l_array_100_uint32_t*)(((&((struct l_array_100_uint32_t*)_1001)[((int64_t)(((int64_t)(int32_t)_1002)))]))))->array[((int64_t)(((int64_t)(int32_t)_1003)))]))); if (((llvm_srem_u32(_1004, 2)) == 0u)) { goto _1055; } else { goto _1056; } _1056: _1012 = _964; _1013 = _967; _1014 = _968; _1015 = *(uint32_t*)(((&((struct l_array_100_uint32_t*)(((&((struct l_array_100_uint32_t*)_1012)[((int64_t)(((int64_t)(int32_t)_1013)))]))))->array[((int64_t)(((int64_t)(int32_t)_1014)))]))); _1016 = _966; _966 = (llvm_sub_u32(_1016, _1015)); goto _1057; _1055: _1007 = _964; _1008 = _967; _1009 = _968; _1010 = *(uint32_t*)(((&((struct l_array_100_uint32_t*)(((&((struct l_array_100_uint32_t*)_1007)[((int64_t)(((int64_t)(int32_t)_1008)))]))))->array[((int64_t)(((int64_t)(int32_t)_1009)))]))); _1011 = _966; _966 = (llvm_add_u32(_1011, _1010)); goto _1057; _1057: goto _1054; _1054: goto _1058; _1058: _1023 = _968; _968 = (llvm_add_u32(_1023, 1)); goto _1047; } while (1); /* end of syntactic loop '' */ _1049: goto _1059; _1059: _1024 = _967; _967 = (llvm_add_u32(_1024, 1)); goto llvm_cbe_target_phi_1; } uint32_t fused_pushBack(bool _1060, void* _1061, uint32_t _1062) { void* _1063; /* Address-exposed local */ uint32_t _1064; /* Address-exposed local */ uint32_t _1065; /* Address-exposed local */ void* _1066; /* Address-exposed local */ struct l_array_14_uint8_t _1067; /* Address-exposed local */ struct l_array_8_uint32_t _1068; /* Address-exposed local */ uint32_t _1069; /* Address-exposed local */ struct l_array_100_struct_AC_l_array_100_uint32_t _1070; /* Address-exposed local */ uint32_t _1071; /* Address-exposed local */ uint32_t _1072; /* Address-exposed local */ uint32_t _1073; /* Address-exposed local */ bool _1074; struct l_struct_fused_return_multiplyMatrices_testPoints _1075; uint32_t llvm_cbe_extracted_target_return; void* _1076; void* _1077; void* _1078; void* _1079; void* _1080; struct l_struct_fused_return_validateMatrix_processMatrix _1081; void* _1082; void* _1083; uint32_t _1084; void* _1085; uint32_t _1086; void* _1087; uint32_t _1088; void* _1089; uint32_t _1090; uint32_t _1091; void* _1092; void* _1093; uint32_t _1094; void* _1095; void* _1096; void* _1097; void* _1098; uint32_t _1099; void* _1100; void* _1101; uint32_t _1102; void* _1103; uint32_t _1104; uint32_t _1105; void* _1106; void* _1107; void* _1108; uint32_t _1109; uint32_t _1110; void* _1111; uint32_t _1112; void* _1113; void* _1114; void* _1115; void* _1116; uint32_t _1117; void* _1118; uint32_t _1119; struct l_struct_fused_return_calculateDistance_memoizedFib _1120; uint32_t llvm_cbe_extracted_target_return1target_; uint32_t _1121; uint32_t _1122; uint32_t _1123; struct l_struct_fused_return_calculateDistance_memoizedFib _1124; uint32_t _1125; uint32_t _1126; uint32_t _1127; _1074 = _1060 ^ 1; goto llvm_cbe_target_cond_0; llvm_cbe_target_cond_0: if (_1060) { goto _1128; } else { goto llvm_cbe_target_skip_0; } llvm_cbe_target_skip_0: goto llvm_cbe_target_phi_0; llvm_cbe_target_phi_0: goto llvm_cbe_bunker_cond_0; _1128: _1075 = fused_multiplyMatrices(1, ((void*)/*NULL*/0), ((void*)/*NULL*/0), 5); llvm_cbe_extracted_target_return = (_1075.field0); _1076 = memset((&cache), 255, 400); _1077 = memcpy((((void*)(&_1067))), (&__const_OC_projectB_main_OC_str), 14); _1078 = fused_getErrorMessage(1, (((&(&_1067)->array[((int64_t)0)])))); _1079 = memcpy((((void*)(&_1068))), (&__const_OC_projectB_main_OC_arr), 32); _1069 = 8; _1080 = memcpy((((void*)(&_1070))), (&__const_OC_projectB_main_OC_matrix), 40000); _1081 = fused_validateMatrix(1, ((void*)/*NULL*/0), (((&(&_1070)->array[((int64_t)0)]))), 3); _1071 = ((_1081.field0)); _1072 = 0; goto llvm_cbe_target_phi_0; llvm_cbe_bunker_cond_0: if (_1074) { goto _1129; } else { goto llvm_cbe_bunker_skip_0; } llvm_cbe_bunker_skip_0: goto llvm_cbe_bunker_phi_0; llvm_cbe_bunker_phi_0: goto llvm_cbe_target_cond_1; _1129: _1063 = _1061; _1064 = _1062; _1082 = _1063; if ((_1082 != ((void*)/*NULL*/0))) { goto _1130; } else { goto _1131; } _1131: setErrorMessage((&_OC_str_OC_10)); goto _1132; _1130: _1083 = _1063; _1084 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1083)->field1)))); if ((((int32_t)_1084) >= ((int32_t)1000u))) { goto _1133; } else { goto _1134; } _1133: setErrorMessage((&_OC_str_OC_11)); goto _1132; _1134: _1085 = _1063; _1086 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1085)->field1)))); _1087 = _1063; _1088 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1087)->field2)))); if ((((int32_t)_1086) >= ((int32_t)_1088))) { goto _1135; } else { goto _1136; } _1135: _1089 = _1063; _1090 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1089)->field2)))); _1065 = (llvm_mul_u32(_1090, 2)); _1091 = _1065; if ((((int32_t)_1091) > ((int32_t)1000u))) { goto _1137; } else { goto _1138; } _1137: _1065 = 1000; goto _1138; _1138: _1092 = _1063; _1093 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_1092)->field0)))); _1094 = _1065; _1095 = realloc((((void*)_1093)), (llvm_mul_u64(4, (((int64_t)(int32_t)_1094))))); _1066 = (((void*)_1095)); _1096 = _1066; if ((_1096 != ((void*)/*NULL*/0))) { goto _1139; } else { goto _1140; } _1140: setErrorMessage((&_OC_str_OC_12)); goto _1132; _1139: _1097 = _1066; _1098 = _1063; *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_1098)->field0)))) = _1097; _1099 = _1065; _1100 = _1063; *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1100)->field2)))) = _1099; goto _1136; _1136: _1101 = _1063; _1102 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1101)->field3)))); if ((_1102 != 0u)) { goto _1141; } else { goto _1142; } _1141: _1103 = _1063; _1104 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1103)->field1)))); if ((((int32_t)_1104) > ((int32_t)0u))) { goto _1143; } else { goto _1142; } _1143: _1105 = _1064; _1106 = _1063; _1107 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_1106)->field0)))); _1108 = _1063; _1109 = *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1108)->field1)))); _1110 = *(uint32_t*)(((&((uint32_t*)_1107)[((int64_t)(((int64_t)(int32_t)(llvm_sub_u32(_1109, 1)))))]))); if ((((int32_t)_1105) < ((int32_t)_1110))) { goto _1144; } else { goto _1142; } _1144: _1111 = _1063; *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1111)->field3)))) = 0; goto _1142; _1142: _1112 = _1064; _1113 = _1063; _1114 = *(void**)(((&(((struct l_struct_struct_OC_DynamicArray*)_1113)->field0)))); _1115 = _1063; _1116 = ((&(((struct l_struct_struct_OC_DynamicArray*)_1115)->field1))); _1117 = *(uint32_t*)_1116; *(uint32_t*)_1116 = (llvm_add_u32(_1117, 1)); *(uint32_t*)(((&((uint32_t*)_1114)[((int64_t)(((int64_t)(int32_t)_1117)))]))) = _1112; _1118 = _1063; *(uint32_t*)(((&(((struct l_struct_struct_OC_DynamicArray*)_1118)->field4)))) = 1; goto _1132; _1132: return 0; llvm_cbe_target_cond_1: if (_1060) { goto _1145; } else { goto llvm_cbe_target_skip_1; } llvm_cbe_target_skip_1: goto llvm_cbe_target_phi_1; llvm_cbe_target_phi_1: return 0; do { /* Syntactic loop '' to make GCC happy */ _1145: _1119 = _1072; _1120 = fused_calculateDistance(1, ((void*)/*NULL*/0), ((void*)/*NULL*/0), ((void*)/*NULL*/0), _1119); llvm_cbe_extracted_target_return1target_ = (_1120.field0); _1121 = _1072; _1072 = (llvm_add_u32(_1121, 1)); goto _1146; _1146: _1122 = _1072; if ((((int32_t)_1122) < ((int32_t)10u))) { goto _1145; } else { goto _1147; } } while (1); /* end of syntactic loop '' */ _1147: _1123 = _1071; if ((((int32_t)_1123) > ((int32_t)0u))) { goto _1148; } else { goto _1149; } _1148: _1124 = fused_calculateDistance(1, ((void*)/*NULL*/0), ((void*)/*NULL*/0), ((void*)/*NULL*/0), 7); _1073 = ((_1124.field0)); goto _1150; _1149: _1125 = _1071; _1126 = fused_performSimpleCalculations(1, _1125); _1073 = _1126; goto _1150; _1150: _1127 = _1073; return _1127; } void* fused_getErrorMessage(bool _1151, void* _1152) { void* _1153; /* Address-exposed local */ uint32_t _1154; /* Address-exposed local */ uint32_t _1155; /* Address-exposed local */ uint8_t _1156; /* Address-exposed local */ bool _1157; void* _1158; uint64_t _1159; void* _1160; void* _1161; void* _1162; void* _1162__PHI_TEMPORARY; uint32_t _1163; uint32_t _1164; void* _1165; uint32_t _1166; uint8_t _1167; void* _1168; uint32_t _1169; uint32_t _1170; uint8_t _1171; void* _1172; uint32_t _1173; uint8_t _1174; void* _1175; uint32_t _1176; uint32_t _1177; uint32_t _1178; _1157 = _1151 ^ 1; goto llvm_cbe_target_cond_0; llvm_cbe_target_cond_0: if (_1151) { goto _1179; } else { goto llvm_cbe_target_skip_0; } llvm_cbe_target_skip_0: goto llvm_cbe_target_phi_0; llvm_cbe_target_phi_0: goto llvm_cbe_bunker_cond_0; _1179: _1153 = _1152; _1158 = _1153; _1159 = strlen(_1158); _1154 = (((uint32_t)_1159)); _1155 = 0; goto llvm_cbe_target_phi_0; llvm_cbe_bunker_cond_0: if (_1157) { goto _1180; } else { goto llvm_cbe_bunker_skip_0; } llvm_cbe_bunker_skip_0: goto llvm_cbe_bunker_phi_0; llvm_cbe_bunker_phi_0: goto llvm_cbe_target_cond_1; _1180: _1160 = globalErrorMessage; if ((_1160 != ((void*)/*NULL*/0))) { goto _1181; } else { goto _1182; } _1181: _1161 = globalErrorMessage; _1162__PHI_TEMPORARY = _1161; /* for PHI node */ goto _1183; _1182: _1162__PHI_TEMPORARY = (&_OC_str); /* for PHI node */ goto _1183; _1183: _1162 = _1162__PHI_TEMPORARY; return _1162; llvm_cbe_target_cond_1: if (_1151) { goto _1184; } else { goto llvm_cbe_target_skip_1; } llvm_cbe_target_skip_1: goto llvm_cbe_target_phi_1; llvm_cbe_target_phi_1: return ((void*)/*NULL*/0); _1184: _1163 = _1155; _1164 = _1154; if ((((int32_t)_1163) < ((int32_t)(llvm_sdiv_u32(_1164, 2))))) { goto _1185; } else { goto _1186; } _1185: _1165 = _1153; _1166 = _1155; _1167 = *(uint8_t*)(((&((uint8_t*)_1165)[((int64_t)(((int64_t)(int32_t)_1166)))]))); _1156 = _1167; _1168 = _1153; _1169 = _1154; _1170 = _1155; _1171 = *(uint8_t*)(((&((uint8_t*)_1168)[((int64_t)(((int64_t)(int32_t)(llvm_sub_u32((llvm_sub_u32(_1169, 1)), _1170)))))]))); _1172 = _1153; _1173 = _1155; *(uint8_t*)(((&((uint8_t*)_1172)[((int64_t)(((int64_t)(int32_t)_1173)))]))) = _1171; _1174 = _1156; _1175 = _1153; _1176 = _1154; _1177 = _1155; *(uint8_t*)(((&((uint8_t*)_1175)[((int64_t)(((int64_t)(int32_t)(llvm_sub_u32((llvm_sub_u32(_1176, 1)), _1177)))))]))) = _1174; goto _1187; _1186: return ((void*)/*NULL*/0); _1187: _1178 = _1155; _1155 = (llvm_add_u32(_1178, 1)); goto llvm_cbe_target_phi_1; } struct l_struct_fused_return_multiplyMatrices_testPoints fused_multiplyMatrices(bool _1188, void* _1189, void* _1190, uint32_t _1191) { void* _1192; /* Address-exposed local */ void* _1193; /* Address-exposed local */ void* _1194; /* Address-exposed local */ void* _1195; /* Address-exposed local */ uint64_t _1196; /* Address-exposed local */ uint32_t _1197; /* Address-exposed local */ uint32_t _1198; /* Address-exposed local */ uint64_t _1199; /* Address-exposed local */ uint32_t _1200; /* Address-exposed local */ uint64_t _1201; /* Address-exposed local */ uint32_t _1202; /* Address-exposed local */ uint32_t _1203; /* Address-exposed local */ uint32_t _1204; /* Address-exposed local */ uint32_t _1205; /* Address-exposed local */ uint32_t _1206; /* Address-exposed local */ bool _1207; void* _1208; void* _1209; void* _1210; void* _1211; void* _1212; void* _1213; void* _1214; uint32_t _1215; void* _1216; uint32_t _1217; void* _1218; uint32_t _1219; void* _1220; uint32_t _1221; void* _1222; uint32_t _1223; void* _1224; uint32_t _1225; void* _1226; void* _1227; uint32_t _1228; void* _1229; uint32_t _1230; uint32_t _1231; void* _1232; uint32_t _1233; uint32_t _1234; void* _1235; uint32_t _1236; void* _1237; void* _1238; uint32_t _1239; void* _1240; uint32_t _1241; uint32_t _1242; void* _1243; void* _1244; uint32_t _1245; void* _1246; uint32_t _1247; uint32_t _1248; uint64_t _1249; uint64_t _1250; uint64_t _1251; uint64_t _1252; uint32_t _1253; void* _1254; uint32_t _1255; void* _1256; void* _1257; uint32_t _1258; void* _1259; uint32_t _1260; void* _1261; void* _1262; void* _1263; uint32_t _1264; uint64_t _1265; void* _1266; void* _1267; uint32_t _1268; void* _1269; uint32_t _1270; void* _1271; void* _1272; uint32_t _1273; void* _1274; uint32_t _1275; uint32_t _1276; uint32_t _1277; uint64_t _1278; void* _1279; void* _1280; uint32_t _1281; void* _1282; uint32_t _1283; uint32_t _1284; uint32_t _1285; uint32_t _1286; uint32_t _1287; void* _1288; uint32_t _1289; void* _1290; uint32_t _1291; void* _1292; void* _1293; void* _1294; struct l_struct_fused_return_multiplyMatrices_testPoints _1295; uint32_t _1296; uint32_t _1297; uint32_t _1298; struct l_struct_fused_return_multiplyMatrices_testPoints _1299; struct l_struct_fused_return_multiplyMatrices_testPoints _1300; uint32_t _1301; _1207 = _1188 ^ 1; goto llvm_cbe_target_cond_0; llvm_cbe_target_cond_0: if (_1188) { goto _1302; } else { goto llvm_cbe_target_skip_0; } llvm_cbe_target_skip_0: goto llvm_cbe_target_phi_0; llvm_cbe_target_phi_0: goto llvm_cbe_bunker_cond_0; _1302: _1204 = _1191; _1205 = 0; _1206 = 1; goto llvm_cbe_target_phi_0; llvm_cbe_bunker_cond_0: if (_1207) { goto _1303; } else { goto llvm_cbe_bunker_skip_0; } llvm_cbe_bunker_skip_0: goto llvm_cbe_bunker_phi_0; llvm_cbe_bunker_phi_0: goto llvm_cbe_target_cond_1; _1303: _1193 = _1189; _1194 = _1190; _1208 = _1193; if ((_1208 != ((void*)/*NULL*/0))) { goto _1304; } else { goto _1305; } _1304: _1209 = _1194; if ((_1209 != ((void*)/*NULL*/0))) { goto _1306; } else { goto _1305; } _1305: setErrorMessage((&_OC_str_OC_21)); _1192 = ((void*)/*NULL*/0); goto _1307; _1306: _1210 = _1193; _1211 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_1210)->field0)))); if ((_1211 != ((void*)/*NULL*/0))) { goto _1308; } else { goto _1309; } _1308: _1212 = _1194; _1213 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_1212)->field0)))); if ((_1213 != ((void*)/*NULL*/0))) { goto _1310; } else { goto _1309; } _1309: setErrorMessage((&_OC_str_OC_22)); _1192 = ((void*)/*NULL*/0); goto _1307; _1310: _1214 = _1193; _1215 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1214)->field2)))); _1216 = _1194; _1217 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1216)->field1)))); if ((_1215 != _1217)) { goto _1311; } else { goto _1312; } _1311: setErrorMessage((&_OC_str_OC_23)); _1192 = ((void*)/*NULL*/0); goto _1307; _1312: _1218 = _1193; _1219 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1218)->field2)))); if ((((int32_t)_1219) > ((int32_t)100u))) { goto _1313; } else { goto _1314; } _1314: _1220 = _1194; _1221 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1220)->field1)))); if ((((int32_t)_1221) > ((int32_t)100u))) { goto _1313; } else { goto _1315; } _1313: setErrorMessage((&_OC_str_OC_17)); _1192 = ((void*)/*NULL*/0); goto _1307; _1315: _1222 = _1193; _1223 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1222)->field1)))); _1224 = _1194; _1225 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1224)->field2)))); _1226 = createMatrix(_1223, _1225); _1195 = _1226; _1227 = _1195; if ((_1227 != ((void*)/*NULL*/0))) { goto _1316; } else { goto _1317; } _1317: _1192 = ((void*)/*NULL*/0); goto _1307; _1316: _1196 = 0; _1197 = 0; goto _1318; do { /* Syntactic loop '' to make GCC happy */ _1318: _1228 = _1197; _1229 = _1193; _1230 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1229)->field1)))); if ((((int32_t)_1228) < ((int32_t)_1230))) { goto _1319; } else { goto _1320; } _1319: _1198 = 0; goto _1321; do { /* Syntactic loop '' to make GCC happy */ _1321: _1231 = _1198; _1232 = _1194; _1233 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1232)->field2)))); if ((((int32_t)_1231) < ((int32_t)_1233))) { goto _1322; } else { goto _1323; } _1322: _1199 = 0; _1200 = 0; goto _1324; do { /* Syntactic loop '' to make GCC happy */ _1324: _1234 = _1200; _1235 = _1193; _1236 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1235)->field2)))); if ((((int32_t)_1234) < ((int32_t)_1236))) { goto _1325; } else { goto _1326; } _1325: _1237 = _1193; _1238 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_1237)->field0)))); _1239 = _1197; _1240 = *(void**)(((&((void**)_1238)[((int64_t)(((int64_t)(int32_t)_1239)))]))); _1241 = _1200; _1242 = *(uint32_t*)(((&((uint32_t*)_1240)[((int64_t)(((int64_t)(int32_t)_1241)))]))); _1243 = _1194; _1244 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_1243)->field0)))); _1245 = _1200; _1246 = *(void**)(((&((void**)_1244)[((int64_t)(((int64_t)(int32_t)_1245)))]))); _1247 = _1198; _1248 = *(uint32_t*)(((&((uint32_t*)_1246)[((int64_t)(((int64_t)(int32_t)_1247)))]))); _1201 = (llvm_mul_u64((((int64_t)(int32_t)_1242)), (((int64_t)(int32_t)_1248)))); _1249 = _1201; _1250 = _1199; _1199 = (llvm_add_u64(_1250, _1249)); _1251 = _1199; if ((((int64_t)_1251) > ((int64_t)UINT64_C(2147483647)))) { goto _1327; } else { goto _1328; } _1328: _1252 = _1199; if ((((int64_t)_1252) < ((int64_t)UINT64_C(18446744071562067968)))) { goto _1327; } else { goto _1329; } _1329: goto _1330; _1330: _1264 = _1200; _1200 = (llvm_add_u32(_1264, 1)); goto _1324; } while (1); /* end of syntactic loop '' */ _1326: _1265 = _1199; _1266 = _1195; _1267 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_1266)->field0)))); _1268 = _1197; _1269 = *(void**)(((&((void**)_1267)[((int64_t)(((int64_t)(int32_t)_1268)))]))); _1270 = _1198; *(uint32_t*)(((&((uint32_t*)_1269)[((int64_t)(((int64_t)(int32_t)_1270)))]))) = (((uint32_t)_1265)); _1271 = _1195; _1272 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_1271)->field0)))); _1273 = _1197; _1274 = *(void**)(((&((void**)_1272)[((int64_t)(((int64_t)(int32_t)_1273)))]))); _1275 = _1198; _1276 = *(uint32_t*)(((&((uint32_t*)_1274)[((int64_t)(((int64_t)(int32_t)_1275)))]))); _1277 = abs(_1276); _1278 = _1196; if ((((int64_t)(((int64_t)(int32_t)_1277))) > ((int64_t)_1278))) { goto _1331; } else { goto _1332; } _1331: _1279 = _1195; _1280 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_1279)->field0)))); _1281 = _1197; _1282 = *(void**)(((&((void**)_1280)[((int64_t)(((int64_t)(int32_t)_1281)))]))); _1283 = _1198; _1284 = *(uint32_t*)(((&((uint32_t*)_1282)[((int64_t)(((int64_t)(int32_t)_1283)))]))); _1285 = abs(_1284); _1196 = (((int64_t)(int32_t)_1285)); goto _1332; _1332: goto _1333; _1333: _1286 = _1198; _1198 = (llvm_add_u32(_1286, 1)); goto _1321; } while (1); /* end of syntactic loop '' */ _1323: goto _1334; _1334: _1287 = _1197; _1197 = (llvm_add_u32(_1287, 1)); goto _1318; } while (1); /* end of syntactic loop '' */ _1327: setErrorMessage((&_OC_str_OC_24)); _1202 = 0; goto _1335; do { /* Syntactic loop '' to make GCC happy */ _1335: _1253 = _1202; _1254 = _1195; _1255 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1254)->field1)))); if ((((int32_t)_1253) < ((int32_t)_1255))) { goto _1336; } else { goto _1337; } _1336: _1256 = _1195; _1257 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_1256)->field0)))); _1258 = _1202; _1259 = *(void**)(((&((void**)_1257)[((int64_t)(((int64_t)(int32_t)_1258)))]))); free((((void*)_1259))); goto _1338; _1338: _1260 = _1202; _1202 = (llvm_add_u32(_1260, 1)); goto _1335; } while (1); /* end of syntactic loop '' */ _1337: _1261 = _1195; _1262 = *(void**)(((&(((struct l_struct_struct_OC_Matrix*)_1261)->field0)))); free((((void*)_1262))); _1263 = _1195; free((((void*)_1263))); _1192 = ((void*)/*NULL*/0); goto _1307; _1320: _1288 = _1195; _1289 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1288)->field1)))); _1290 = _1195; _1291 = *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1290)->field2)))); _1292 = _1195; *(uint32_t*)(((&(((struct l_struct_struct_OC_Matrix*)_1292)->field3)))) = (((uint32_t)(bool)(_1289 == _1291))); _1293 = _1195; _1192 = _1293; goto _1307; _1307: _1294 = _1192; _1295 = llvm_ctor_struct_fused_return_multiplyMatrices_testPoints(0, /*UNDEF*/((void*)/*NULL*/0)); _1295.field1 = _1294; return _1295; llvm_cbe_target_cond_1: if (_1188) { goto _1339; } else { goto llvm_cbe_target_skip_1; } llvm_cbe_target_skip_1: goto llvm_cbe_target_phi_1; llvm_cbe_target_phi_1: return llvm_ctor_struct_fused_return_multiplyMatrices_testPoints(0, ((void*)/*NULL*/0)); _1339: _1296 = _1205; _1205 = (llvm_add_u32(_1296, 1)); _1297 = _1204; if ((((int32_t)_1297) > ((int32_t)2u))) { goto _1340; } else { goto _1341; } _1340: _1203 = 23; goto _1342; _1341: goto _1343; _1342: _1298 = _1203; _1299 = llvm_ctor_struct_fused_return_multiplyMatrices_testPoints(0, ((void*)/*NULL*/0)); _1299.field0 = _1298; _1300 = _1299; _1300.field1 = ((void*)/*NULL*/0); return _1300; _1343: _1301 = _1206; _1206 = (llvm_add_u32(_1301, 1)); goto llvm_cbe_target_phi_1; }