text: /*
   * This is a RANDOMLY GENERATED PROGRAM.
   *
   * Generator: csmith 2.3.0
   * Git version: 30dccd7
   * Options:   (none)
   * Seed:      584417247626103700
   */
  
  #include "csmith.h"
  
  
  static long __undefined;
  
  /* --- Struct/Union Declarations --- */
  union U0 {
     int32_t  f0;
     int32_t  f1;
     int64_t  f2;
     uint8_t  f3;
     uint32_t  f4;
  };
  
  union U1 {
     volatile int8_t * f0;
     const volatile int64_t  f1;
     const volatile uint8_t  f2;
     volatile int8_t * f3;
     int64_t  f4;
  };
  
  union U2 {
     int16_t  f0;
     uint32_t  f1;
     uint32_t  f2;
     volatile int32_t  f3;
  };
  
  /* --- GLOBAL VARIABLES --- */
  static union U0 g_4 = {0xB844A754L};
  static int8_t g_32 = 0xC1L;
  static uint32_t g_43[1] = {0x9E6A4137L};
  static uint32_t g_48 = 0x4132D38CL;
  static const union U2 g_53 = {-8L};/* VOLATILE GLOBAL g_53 */
  static union U1 g_64 = {0};/* VOLATILE GLOBAL g_64 */
  static int8_t *g_65 = &g_32;
  static uint64_t g_76 = 0x7F0A061FA46B4C01LL;
  static uint64_t g_79 = 18446744073709551615UL;
  static int32_t * volatile g_80 = (void*)0;/* VOLATILE GLOBAL g_80 */
  static int32_t g_96 = 1L;
  static uint8_t g_100 = 0UL;
  static volatile uint64_t g_109 = 0x73635D5AA0404C69LL;/* VOLATILE GLOBAL g_109 */
  static volatile uint64_t *g_108 = &g_109;
  static volatile uint64_t ** const  volatile g_107 = &g_108;/* VOLATILE GLOBAL g_107 */
  static uint32_t *g_139 = &g_4.f4;
  static uint32_t g_141 = 0x02479DA4L;
  static int8_t ** volatile g_157 = (void*)0;/* VOLATILE GLOBAL g_157 */
  static int8_t ** volatile * volatile g_156 = &g_157;/* VOLATILE GLOBAL g_156 */
  static int8_t ** volatile * volatile * volatile g_158[5][8] = {{&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156},{&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156},{&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156},{&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156},{&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156,&g_156}};
  static uint16_t g_185[10] = {65527UL,0xF6CAL,65527UL,0xF6CAL,65527UL,0xF6CAL,65527UL,0xF6CAL,65527UL,0xF6CAL};
  static uint16_t *g_184 = &g_185[8];
  static uint64_t g_187[3] = {0x07BB088A057ECED5LL,0x07BB088A057ECED5LL,0x07BB088A057ECED5LL};
  static int32_t g_213 = 0x2BFFA37DL;
  static int32_t * volatile g_212 = &g_213;/* VOLATILE GLOBAL g_212 */
  static int32_t *g_215 = &g_213;
  static int32_t ** volatile g_214[3][1] = {{&g_215},{&g_215},{&g_215}};
  static int32_t ** volatile g_216 = &g_215;/* VOLATILE GLOBAL g_216 */
  static int32_t ** volatile g_218 = (void*)0;/* VOLATILE GLOBAL g_218 */
  static int32_t ** volatile g_219 = &g_215;/* VOLATILE GLOBAL g_219 */
  static int32_t * volatile g_241 = &g_96;/* VOLATILE GLOBAL g_241 */
  static volatile union U2 g_256 = {1L};/* VOLATILE GLOBAL g_256 */
  static volatile union U2 g_269[3][8][3] = {{{{-1L},{0x8322L},{0x2FEAL}},{{0xB68BL},{0L},{0x39FBL}},{{1L},{0xD24EL},{0x03EBL}},{{3L},{0xB68BL},{0x39FBL}},{{0x2FEAL},{3L},{0x2FEAL}},{{1L},{0x39FBL},{0xBDEAL}},{{1L},{3L},{1L}},{{0x92AEL},{0xB68BL},{0L}}},{{{-1L},{0xD24EL},{0x2FEAL}},{{0x92AEL},{0L},{0L}},{{1L},{0x8322L},{0x03EBL}},{{1L},{0xB68BL},{0L}},{{0x2FEAL},{0L},{0x2FEAL}},{{3L},{0x39FBL},{0L}},{{1L},{0L},{1L}},{{0xB68BL},{0xB68BL},{0xBDEAL}}},{{{-1L},{0x8322L},{0x2FEAL}},{{0xB68BL},{0L},{0x39FBL}},{{1L},{0xD24EL},{0x03EBL}},{{3L},{0xB68BL},{0x39FBL}},{{0x2FEAL},{3L},{0x2FEAL}},{{1L},{0x39FBL},{0xBDEAL}},{{1L},{3L},{1L}},{{0x92AEL},{0xB68BL},{0L}}}};
  static int16_t g_274[7] = {7L,7L,7L,7L,7L,7L,7L};
  static int16_t g_277 = (-3L);
  static uint32_t g_279 = 0xAB8839ADL;
  static uint32_t g_281 = 4294967291UL;
  static volatile union U2 ** volatile g_282 = (void*)0;/* VOLATILE GLOBAL g_282 */
  static volatile union U2 *g_284 = &g_269[0][6][2];
  static volatile union U2 ** volatile g_283 = &g_284;/* VOLATILE GLOBAL g_283 */
  static uint16_t * const *g_295 = (void*)0;
  static union U2 g_319 = {0xE54CL};/* VOLATILE GLOBAL g_319 */
  static union U2 *g_350 = &g_319;
  static union U2 **g_349 = &g_350;
  static union U1 g_372 = {0};/* VOLATILE GLOBAL g_372 */
  static int64_t g_393 = (-2L);
  static int64_t *g_392 = &g_393;
  static union U1 g_413 = {0};/* VOLATILE GLOBAL g_413 */
  static union U0 *g_455[1][8][10] = {{{&g_4,&g_4,(void*)0,&g_4,&g_4,(void*)0,&g_4,&g_4,(void*)0,&g_4},{&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,(void*)0,&g_4,&g_4,(void*)0,&g_4,&g_4,(void*)0,&g_4},{&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,(void*)0,&g_4,&g_4,(void*)0,&g_4,&g_4,(void*)0,&g_4},{&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4,&g_4}}};
  static union U0 ** volatile g_454 = &g_455[0][6][0];/* VOLATILE GLOBAL g_454 */
  static const int8_t *g_495 = &g_32;
  static const int8_t **g_494 = &g_495;
  static const int8_t ***g_493 = &g_494;
  static const int8_t *** const *g_492 = &g_493;
  static int32_t ** volatile g_505[6][8][2] = {{{(void*)0,(void*)0},{&g_215,&g_215},{&g_215,&g_215},{&g_215,&g_215},{(void*)0,&g_215},{(void*)0,(void*)0},{(void*)0,&g_215},{(void*)0,&g_215}},{{&g_215,&g_215},{&g_215,&g_215},{&g_215,(void*)0},{(void*)0,&g_215},{&g_215,&g_215},{&g_215,&g_215},{&g_215,(void*)0},{&g_215,&g_215}},{{&g_215,&g_215},{(void*)0,&g_215},{&g_215,&g_215},{&g_215,(void*)0},{&g_215,&g_215},{(void*)0,&g_215},{&g_215,(void*)0},{&g_215,(void*)0}},{{(void*)0,&g_215},{(void*)0,&g_215},{&g_215,&g_215},{(void*)0,&g_215},{(void*)0,(void*)0},{(void*)0,(void*)0},{(void*)0,&g_215},{(void*)0,&g_215}},{{&g_215,&g_215},{(void*)0,&g_215},{(void*)0,(void*)0},{&g_215,(void*)0},{&g_215,&g_215},{(void*)0,&g_215},{&g_215,(void*)0},{&g_215,&g_215}},{{&g_215,&g_215},{(void*)0,&g_215},{&g_215,&g_215},{&g_215,(void*)0},{&g_215,&g_215},{&g_215,&g_215},{&g_215,&g_215},{(void*)0,(void*)0}}};
  static int32_t ** volatile g_506 = &g_215;/* VOLATILE GLOBAL g_506 */
  static int8_t *****g_513 = (void*)0;
  static const int8_t * const ****g_519 = (void*)0;
  static int32_t * volatile g_527[1][7] = {{&g_213,&g_213,&g_213,&g_213,&g_213,&g_213,&g_213}};
  static int32_t * volatile g_528 = (void*)0;/* VOLATILE GLOBAL g_528 */
  static int32_t * volatile g_529 = &g_213;/* VOLATILE GLOBAL g_529 */
  static uint32_t * volatile *g_555 = (void*)0;
  static const volatile union U2 g_565 = {0x94ACL};/* VOLATILE GLOBAL g_565 */
  static int64_t g_577 = 0x62D200BDC78A0224LL;
  static int64_t g_590 = 0xC747D737A0F39FC3LL;
  static int32_t ** volatile g_598 = (void*)0;/* VOLATILE GLOBAL g_598 */
  static volatile int16_t * volatile g_613 = &g_269[0][6][2].f0;/* VOLATILE GLOBAL g_613 */
  static volatile int16_t * volatile *g_612 = &g_613;
  static volatile int16_t * volatile ** volatile g_611 = &g_612;/* VOLATILE GLOBAL g_611 */
  static volatile int16_t * volatile ** volatile * volatile g_614 = (void*)0;/* VOLATILE GLOBAL g_614 */
  static volatile int16_t * volatile ** volatile * volatile g_615 = &g_611;/* VOLATILE GLOBAL g_615 */
  static union U1 g_638 = {0};/* VOLATILE GLOBAL g_638 */
  static int32_t g_640 = 0x8D809434L;
  static int32_t ** volatile g_648 = &g_215;/* VOLATILE GLOBAL g_648 */
  static int32_t ** volatile g_650 = (void*)0;/* VOLATILE GLOBAL g_650 */
  static const uint8_t *g_778 = (void*)0;
  static int32_t **g_792 = &g_215;
  static int32_t **g_795[2] = {&g_215,&g_215};
  static int8_t g_805 = 0L;
  static union U1 g_811 = {0};/* VOLATILE GLOBAL g_811 */
  static int16_t g_855 = (-6L);
  static uint8_t g_897 = 0x13L;
  static uint32_t g_913 = 0xFFE9336EL;
  static volatile uint16_t g_914 = 1UL;/* VOLATILE GLOBAL g_914 */
  static const union U1 g_915 = {0};/* VOLATILE GLOBAL g_915 */
  static int32_t * volatile g_949 = &g_213;/* VOLATILE GLOBAL g_949 */
  static union U2 g_1088 = {0x371CL};/* VOLATILE GLOBAL g_1088 */
  static volatile union U1 g_1101 = {0};/* VOLATILE GLOBAL g_1101 */
  static uint8_t g_1112 = 0x42L;
  static union U1 g_1117 = {0};/* VOLATILE GLOBAL g_1117 */
  static volatile union U2 g_1118 = {0x650DL};/* VOLATILE GLOBAL g_1118 */
  static union U1 *g_1133 = &g_638;
  static union U1 **g_1132[7] = {&g_1133,&g_1133,&g_1133,&g_1133,&g_1133,&g_1133,&g_1133};
  static volatile union U2 g_1134 = {0xDFAFL};/* VOLATILE GLOBAL g_1134 */
  static union U1 g_1143 = {0};/* VOLATILE GLOBAL g_1143 */
  static volatile union U2 g_1161[3][9] = {{{0xAA2DL},{0xAA2DL},{1L},{0xAA2DL},{0xAA2DL},{1L},{0xAA2DL},{0xAA2DL},{1L}},{{-1L},{-1L},{-1L},{-1L},{-1L},{-1L},{-1L},{-1L},{-1L}},{{0xAA2DL},{0xAA2DL},{1L},{0xAA2DL},{0xAA2DL},{1L},{0xAA2DL},{0xAA2DL},{1L}}};
  static const int32_t g_1190 = (-2L);
  static int32_t ** volatile g_1210 = (void*)0;/* VOLATILE GLOBAL g_1210 */
  static union U0 g_1225 = {8L};
  static volatile union U2 g_1263 = {0L};/* VOLATILE GLOBAL g_1263 */
  static volatile union U1 g_1279 = {0};/* VOLATILE GLOBAL g_1279 */
  static uint32_t **g_1331 = (void*)0;
  static uint32_t *** volatile g_1330 = &g_1331;/* VOLATILE GLOBAL g_1330 */
  static const int32_t g_1354 = 0L;
  static const int32_t *g_1358 = &g_1354;
  static const int32_t **g_1357 = &g_1358;
  static const int32_t **g_1359 = (void*)0;
  static union U2 g_1461 = {0x9835L};/* VOLATILE GLOBAL g_1461 */
  static union U2 g_1470 = {1L};/* VOLATILE GLOBAL g_1470 */
  static int16_t * const **g_1500 = (void*)0;
  static int8_t ***g_1687 = (void*)0;
  static int8_t ****g_1686[6] = {&g_1687,&g_1687,&g_1687,&g_1687,&g_1687,&g_1687};
  static int8_t ***** const  volatile g_1685 = &g_1686[4];/* VOLATILE GLOBAL g_1685 */
  static volatile union U1 g_1696[3] = {{0},{0},{0}};
  static volatile union U1 g_1721 = {0};/* VOLATILE GLOBAL g_1721 */
  static union U1 g_1789[3] = {{0},{0},{0}};
  static union U1 g_1859[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}}};
  static uint8_t *g_1887 = &g_897;
  static uint8_t **g_1886 = &g_1887;
  static union U1 g_1895 = {0};/* VOLATILE GLOBAL g_1895 */
  static volatile union U1 g_1896 = {0};/* VOLATILE GLOBAL g_1896 */
  static uint16_t g_1922 = 65535UL;
  static union U2 g_1929 = {0L};/* VOLATILE GLOBAL g_1929 */
  static union U1 g_1951 = {0};/* VOLATILE GLOBAL g_1951 */
  static union U1 g_1954 = {0};/* VOLATILE GLOBAL g_1954 */
  static union U1 * const g_1953 = &g_1954;
  static union U1 * const *g_1952 = &g_1953;
  static int8_t **** volatile g_1963 = &g_1687;/* VOLATILE GLOBAL g_1963 */
  static union U1 g_1967 = {0};/* VOLATILE GLOBAL g_1967 */
  static int32_t * const **g_2047[3] = {(void*)0,(void*)0,(void*)0};
  static uint32_t *g_2059[5][2][3] = {{{(void*)0,&g_913,&g_279},{&g_913,&g_281,&g_279}},{{(void*)0,&g_281,&g_913},{(void*)0,&g_913,&g_279}},{{(void*)0,(void*)0,&g_279},{(void*)0,&g_913,&g_279}},{{&g_913,&g_281,&g_279},{(void*)0,&g_281,&g_913}},{{(void*)0,&g_913,&g_279},{(void*)0,(void*)0,&g_279}}};
  static uint32_t **g_2058 = &g_2059[0][1][1];
  static int16_t g_2079[3][2][3] = {{{0L,0L,0L},{(-1L),(-1L),(-1L)}},{{0L,0L,0L},{(-1L),(-1L),(-1L)}},{{0L,0L,0L},{(-1L),(-1L),(-1L)}}};
  static volatile int8_t g_2157 = 0x10L;/* VOLATILE GLOBAL g_2157 */
  static uint64_t *** volatile * volatile g_2248 = (void*)0;/* VOLATILE GLOBAL g_2248 */
  static uint64_t *g_2261 = (void*)0;
  static uint64_t **g_2260 = &g_2261;
  static uint64_t ***g_2259 = &g_2260;
  static uint64_t ****g_2258 = &g_2259;
  static uint64_t *****g_2257 = &g_2258;
  static union U1 g_2267[1] = {{0}};
  static volatile int32_t g_2308 = (-1L);/* VOLATILE GLOBAL g_2308 */
  static uint8_t g_2337[6][8][5] = {{{4UL,6UL,254UL,1UL,2UL},{1UL,247UL,0xE6L,247UL,1UL},{254UL,0xABL,246UL,0x86L,0x45L},{247UL,1UL,0x6FL,0x87L,0xE8L},{0x1AL,0x19L,1UL,0xABL,0x45L},{251UL,0x87L,0x00L,255UL,1UL},{0x45L,0xF8L,255UL,255UL,2UL},{1UL,1UL,255UL,1UL,255UL}},{{4UL,1UL,0x45L,0xE6L,0x2DL},{1UL,0xA7L,255UL,6UL,0x93L},{252UL,255UL,0xD8L,2UL,1UL},{1UL,0x2EL,255UL,0x45L,0x1AL},{1UL,1UL,0xABL,1UL,247UL},{246UL,1UL,1UL,255UL,1UL},{0x6AL,0xB2L,255UL,5UL,0x87L},{0xABL,0x05L,0xB5L,5UL,0xE6L}},{{0x86L,251UL,0x0BL,255UL,0x65L},{0UL,0x11L,1UL,1UL,0x2BL},{0xD4L,253UL,0UL,0x45L,0x93L},{0xB2L,0UL,246UL,2UL,0xC9L},{253UL,1UL,0x82L,6UL,0xFEL},{0x07L,255UL,0xF0L,0xE6L,255UL},{255UL,255UL,0x86L,1UL,254UL},{246UL,0x07L,0x2DL,255UL,255UL}},{{0x9DL,255UL,0x9DL,255UL,5UL},{0x81L,252UL,1UL,0xD4L,0xFEL},{0xFCL,6UL,255UL,1UL,1UL},{0x05L,0x24L,1UL,0xFEL,247UL},{0x6FL,1UL,0UL,0x0AL,1UL},{0x82L,1UL,0x65L,1UL,1UL},{246UL,0x65L,0xFEL,0x1CL,0x52L},{0x0AL,247UL,1UL,0x07L,0xB5L}},{{1UL,0xC9L,0x2BL,1UL,247UL},{255UL,0x9DL,255UL,0x05L,246UL},{0xA7L,252UL,0x22L,255UL,251UL},{0x19L,255UL,255UL,4UL,255UL},{255UL,6UL,0x1CL,0xC9L,0xA7L},{254UL,0xE8L,0x6AL,0x19L,0xF8L},{0x93L,0xE8L,0xCFL,0UL,246UL},{1UL,6UL,0xA7L,0x6AL,0x81L}},{{1UL,255UL,0xD4L,7UL,0x7AL},{0x6AL,252UL,0xD8L,0x7AL,255UL},{0x7EL,0x9DL,255UL,255UL,0x2BL},{246UL,0xC9L,0x24L,0xF0L,1UL},{255UL,247UL,0x86L,0xABL,0xD4L},{0UL,0x65L,0xB2L,0xD8L,1UL},{0xE8L,1UL,1UL,1UL,1UL},{1UL,1UL,0x93L,4UL,0xD8L}}};
  static volatile union U2 g_2352[10] = {{0xE726L},{0xB1F4L},{0xE726L},{0xB1F4L},{0xE726L},{0xB1F4L},{0xE726L},{0xB1F4L},{0xE726L},{0xB1F4L}};
  static union U1 g_2392[6][5] = {{{0},{0},{0},{0},{0}},{{0},{0},{0},{0},{0}},{{0},{0},{0},{0},{0}},{{0},{0},{0},{0},{0}},{{0},{0},{0},{0},{0}},{{0},{0},{0},{0},{0}}};
  static volatile union U1 *** volatile **g_2398 = (void*)0;
  static int8_t *g_2420 = &g_805;
  static const volatile union U1 g_2445 = {0};/* VOLATILE GLOBAL g_2445 */
  static volatile union U2 g_2481[5] = {{-2L},{-2L},{-2L},{-2L},{-2L}};
  static volatile union U1 g_2496 = {0};/* VOLATILE GLOBAL g_2496 */
  static uint32_t g_2509 = 0UL;
  static volatile union U2 ** volatile g_2554 = &g_284;/* VOLATILE GLOBAL g_2554 */
  static int32_t * const  volatile g_2609 = &g_213;/* VOLATILE GLOBAL g_2609 */
  static union U1 g_2648 = {0};/* VOLATILE GLOBAL g_2648 */
  static volatile int64_t ** const g_2660 = (void*)0;
  static uint64_t g_2681 = 8UL;
  static union U1 *g_2707[6] = {(void*)0,&g_811,&g_811,(void*)0,&g_811,&g_811};
  static union U1 ** const g_2706 = &g_2707[0];
  static union U1 ** const *g_2705 = &g_2706;
  static union U1 ** const **g_2704[5] = {(void*)0,(void*)0,(void*)0,(void*)0,(void*)0};
  static const int32_t *g_2712 = &g_1190;
  static const int32_t ** volatile g_2711 = &g_2712;/* VOLATILE GLOBAL g_2711 */
  static union U1 g_2770 = {0};/* VOLATILE GLOBAL g_2770 */
  static const int32_t ** volatile g_2778 = &g_2712;/* VOLATILE GLOBAL g_2778 */
  static volatile uint8_t g_2790 = 0UL;/* VOLATILE GLOBAL g_2790 */
  static union U2 g_2799 = {-4L};/* VOLATILE GLOBAL g_2799 */
  static union U0 g_2800[2] = {{0x28B7BCCEL},{0x28B7BCCEL}};
  static volatile int32_t g_2813 = 0x5AD13715L;/* VOLATILE GLOBAL g_2813 */
  
  
  /* --- FORWARD DECLARATIONS --- */
  uint32_t  func_1(void);
  uint64_t  func_9(int8_t  p_10);
  uint64_t  func_11(int8_t * p_12, uint64_t  p_13, int8_t * p_14);
  int8_t * func_15(int8_t * p_16, int8_t * p_17, int8_t * p_18);
  int8_t * func_19(int8_t * p_20, uint16_t  p_21, const int32_t  p_22, uint32_t  p_23, int8_t * const  p_24);
  int8_t * func_25(int8_t * p_26, int32_t  p_27, int8_t * const  p_28, uint64_t  p_29, int8_t  p_30);
  int32_t  func_33(uint16_t  p_34, uint32_t  p_35, int32_t  p_36, int8_t * p_37);
  uint16_t  func_38(uint64_t  p_39, uint32_t  p_40, uint8_t  p_41);
  uint8_t  func_49(int8_t * p_50, uint16_t  p_51, uint8_t  p_52);
  uint32_t  func_54(uint32_t  p_55, int8_t * p_56);
  
  
  /* --- FUNCTIONS --- */
  /* ------------------------------------------ */
  /* 
   * reads : g_4 g_4.f3 g_4.f0 g_43 g_53 g_4.f4 g_53.f0 g_64 g_32 g_4.f1 g_80 g_96 g_100 g_76 g_107 g_109 g_65 g_139 g_156 g_184 g_187 g_141 g_185 g_648 g_274 g_215 g_213 g_108 g_279 g_1112 g_1225 g_392 g_393 g_855 g_4.f2 g_1263 g_494 g_495 g_792 g_350 g_319 g_1279 g_611 g_612 g_613 g_269.f0 g_615 g_1088.f0 g_1225.f1 g_590 g_493 g_1330 g_1225.f4 g_506 g_79 g_1190 g_277 g_1088.f2 g_529 g_1470 g_1696 g_1721 g_640 g_284 g_269 g_1789 g_492 g_1133 g_638 g_349 g_2079 g_2509 g_48 g_1461.f1 g_283 g_2554 g_281 g_2609 g_1887 g_897 g_1886 g_2770 g_805 g_2778 g_1470.f1 g_2790 g_2799 g_2800
   * writes: g_43 g_48 g_65 g_76 g_79 g_96 g_100 g_32 g_156 g_184 g_187 g_64.f4 g_215 g_319.f1 g_279 g_1112 g_185 g_455 g_213 g_4.f2 g_1225.f3 g_393 g_1225.f1 g_1225.f4 g_1357 g_1359 g_855 g_277 g_1088.f2 g_527 g_4.f0 g_350 g_1088.f0 g_274 g_1470.f2 g_1929.f1 g_1225.f2 g_1461.f1 g_284 g_281 g_4.f1 g_2079 g_2337 g_2712 g_1470.f1 g_2790
   */
  uint32_t  func_1(void)
  { /* block id: 0 */
      int8_t *l_31 = &g_32;
      uint32_t *l_42 = &g_43[0];
      uint32_t *l_46 = (void*)0;
      uint32_t *l_47 = &g_48;
      int32_t l_57[9] = {3L,3L,3L,3L,3L,3L,3L,3L,3L};
      uint32_t l_2775 = 0x1ACF54B0L;
      int32_t *l_2798 = &l_57[8];
      int32_t *l_2810 = (void*)0;
      int32_t *l_2811 = &l_57[0];
      int32_t *l_2812[8] = {(void*)0,&l_57[0],(void*)0,(void*)0,&l_57[0],(void*)0,(void*)0,&l_57[0]};
      int64_t l_2814[5][6] = {{4L,0xBDD0B42871C56A95LL,0xBDD0B42871C56A95LL,0xBDD0B42871C56A95LL,0xA0AB8EF6BC0FE9D4LL,0xA0AB8EF6BC0FE9D4LL},{0xBDD0B42871C56A95LL,0xA0AB8EF6BC0FE9D4LL,0xA0AB8EF6BC0FE9D4LL,0xBDD0B42871C56A95LL,0xA0AB8EF6BC0FE9D4LL,0xA0AB8EF6BC0FE9D4LL},{0xBDD0B42871C56A95LL,0xA0AB8EF6BC0FE9D4LL,0xA0AB8EF6BC0FE9D4LL,0xBDD0B42871C56A95LL,0xA0AB8EF6BC0FE9D4LL,0xA0AB8EF6BC0FE9D4LL},{0xBDD0B42871C56A95LL,0xA0AB8EF6BC0FE9D4LL,0xA0AB8EF6BC0FE9D4LL,0xBDD0B42871C56A95LL,0xA0AB8EF6BC0FE9D4LL,0xA0AB8EF6BC0FE9D4LL},{0xBDD0B42871C56A95LL,0xA0AB8EF6BC0FE9D4LL,0xA0AB8EF6BC0FE9D4LL,0xBDD0B42871C56A95LL,0xA0AB8EF6BC0FE9D4LL,0xA0AB8EF6BC0FE9D4LL}};
      uint32_t l_2815 = 4UL;
      int i, j;
      (*l_2798) = ((safe_mod_func_uint64_t_u_u((g_4 , (safe_lshift_func_uint8_t_u_u((((safe_rshift_func_uint16_t_u_u((func_9((func_11(func_15(func_19(func_25(l_31, func_33((g_4.f3 || func_38(g_4.f0, ((*l_47) = ((*l_42)++)), func_49((g_53 , l_31), (func_54(l_57[0], &g_32) , l_57[4]), g_53.f0))), l_57[2], l_57[5], l_31), l_31, l_57[5], l_57[0]), l_57[1], l_57[1], g_2509, l_31), l_31, l_31), l_2775, l_31) & 0xAD577E734C88D896LL)) , l_57[0]), 15)) && 0xCF201076E64F549ELL) & l_57[7]), 5))), l_57[0])) <= 0x9139L);
      for (g_1112 = 1; (g_1112 <= 6); g_1112 += 1)
      { /* block id: 1183 */
          uint64_t *l_2809 = &g_187[2];
          int i;
          (*l_2798) |= ((g_2799 , g_2800[1]) , (((**g_792) |= ((((*l_2809) = (0UL <= ((!(safe_lshift_func_int8_t_s_s(g_274[g_1112], 5))) == (safe_rshift_func_uint16_t_u_u((!65531UL), 13))))) & ((*g_392) |= 0x1C8AC3A7DBBFAF5CLL)) != (((g_274[g_1112] , (0x30L ^ (255UL != 0xEDL))) <= 0UL) > 0xD262L))) , 0x04490546L));
      }
      --l_2815;
      return (*g_139);
  }
  
  
  /* ------------------------------------------ */
  /* 
   * reads : g_2778 g_1470.f1 g_349 g_2790 g_393 g_1225.f1 g_184 g_185
   * writes: g_2712 g_1470.f1 g_350 g_2790 g_393 g_1225.f1 g_4.f1 g_213
   */
  uint64_t  func_9(int8_t  p_10)
  { /* block id: 1160 */
      const int32_t * const l_2777 = (void*)0;
      union U2 *l_2779 = &g_1470;
      int32_t l_2784 = 0xB775D0AAL;
      int32_t l_2785[7][2][6] = {{{0x9BE29E2CL,1L,(-1L),1L,0x9BE29E2CL,0x9BE29E2CL},{0xE401372DL,1L,1L,0xE401372DL,(-1L),0xE401372DL}},{{0xE401372DL,(-1L),0xE401372DL,1L,1L,0xE401372DL},{0x9BE29E2CL,0x9BE29E2CL,1L,(-1L),1L,0x9BE29E2CL}},{{1L,(-1L),(-1L),(-1L),(-1L),1L},{0x9BE29E2CL,1L,(-1L),1L,0x9BE29E2CL,0x9BE29E2CL}},{{0xE401372DL,1L,1L,0xE401372DL,(-1L),0xE401372DL},{0xE401372DL,(-1L),0xE401372DL,1L,1L,0xE401372DL}},{{0x9BE29E2CL,0x9BE29E2CL,1L,(-1L),1L,0x9BE29E2CL},{1L,(-1L),(-1L),(-1L),(-1L),1L}},{{0x9BE29E2CL,1L,(-1L),1L,0x9BE29E2CL,0x9BE29E2CL},{0xE401372DL,1L,1L,0xE401372DL,(-1L),0xE401372DL}},{{0xE401372DL,(-1L),0xE401372DL,1L,1L,0xE401372DL},{0x9BE29E2CL,0x9BE29E2CL,1L,(-1L),1L,0x9BE29E2CL}}};
      uint32_t l_2793 = 18446744073709551608UL;
      int i, j, k;
      (*g_2778) = l_2777;
      for (g_1470.f1 = 2; (g_1470.f1 <= 6); g_1470.f1 += 1)
      { /* block id: 1164 */
          int32_t *l_2780 = &g_213;
          int32_t *l_2781 = (void*)0;
          int32_t *l_2782 = &g_4.f1;
          int32_t *l_2783 = &g_96;
          int32_t *l_2786 = &l_2785[4][0][5];
          int32_t *l_2787 = &g_4.f1;
          int32_t *l_2788 = &l_2785[4][1][4];
          int32_t *l_2789[9] = {&g_4.f1,&g_4.f1,&g_4.f1,&g_4.f1,&g_4.f1,&g_4.f1,&g_4.f1,&g_4.f1,&g_4.f1};
          int i;
          (*g_349) = l_2779;
          g_2790--;
          for (g_393 = 6; (g_393 >= 0); g_393 -= 1)
          { /* block id: 1169 */
              ++l_2793;
              for (g_1225.f1 = 0; (g_1225.f1 >= 0); g_1225.f1 -= 1)
              { /* block id: 1173 */
                  (*l_2787) = p_10;
                  (*l_2780) = (safe_mul_func_uint16_t_u_u((*g_184), p_10));
              }
          }
      }
      return l_2784;
  }
  
  
  /* ------------------------------------------ */
  /* 
   * reads : g_805 g_32 g_792 g_215 g_279
   * writes: g_32 g_279
   */
  uint64_t  func_11(int8_t * p_12, uint64_t  p_13, int8_t * p_14)
  { /* block id: 1156 */
      uint16_t l_2776 = 5UL;
      (**g_792) |= (((*p_14) &= (*p_12)) , p_13);
      return l_2776;
  }
  
  
  /* ------------------------------------------ */
  /* 
   * reads : g_1886 g_1887 g_897 g_2770 g_4.f1 g_792
   * writes: g_2337 g_4.f1 g_215
   */
  int8_t * func_15(int8_t * p_16, int8_t * p_17, int8_t * p_18)
  { /* block id: 1151 */
      int32_t l_2771 = 0x0D98AD0AL;
      uint32_t *l_2772[2];
      int32_t *l_2773 = &g_4.f1;
      int8_t *l_2774 = &g_805;
      int i;
      for (i = 0; i < 2; i++)
          l_2772[i] = &g_279;
      (*l_2773) |= (+((**g_1886) != (g_2337[1][3][0] = (safe_add_func_uint16_t_u_u((g_2770 , l_2771), (l_2772[0] != (void*)0))))));
      (*g_792) = l_2772[1];
      return l_2774;
  }
  
  
  /* ------------------------------------------ */
  /* 
   * reads : g_792 g_48 g_187 g_1461.f1 g_283 g_284 g_2554 g_184 g_185 g_281 g_269.f0 g_2609 g_213 g_2079 g_1887 g_897 g_613 g_279
   * writes: g_213 g_1225.f2 g_79 g_215 g_48 g_1461.f1 g_284 g_279 g_281 g_185 g_4.f1 g_2079
   */
  int8_t * func_19(int8_t * p_20, uint16_t  p_21, const int32_t  p_22, uint32_t  p_23, int8_t * const  p_24)
  { /* block id: 1015 */
      uint32_t *l_2510 = &g_279;
      int32_t l_2527 = 0L;
      int32_t l_2529 = 1L;
      int8_t l_2532[9][6] = {{0L,0L,0x54L,1L,0x73L,0x54L},{(-4L),0x54L,0x94L,0x54L,0x94L,0x54L},{1L,(-4L),0x94L,0L,0L,0x54L},{8L,0L,0x54L,0x54L,0L,8L},{0x54L,0L,8L,0x49L,0L,0x94L},{0x94L,(-4L),1L,(-4L),0x94L,0L},{0x94L,0x54L,(-4L),0x49L,0x73L,0x73L},{0x54L,0L,0L,0x54L,1L,0x73L},{8L,0x73L,(-4L),0L,0x49L,0L}};
      int32_t l_2597 = 0L;
      int32_t l_2598 = 1L;
      int32_t l_2599 = 1L;
      int32_t l_2600[4] = {6L,6L,6L,6L};
      uint32_t l_2616 = 0UL;
      union U2 **l_2699 = &g_350;
      int8_t l_2713 = 0xB0L;
      int32_t * const l_2724 = &g_1225.f0;
      int32_t * const *l_2723 = &l_2724;
      union U0 **l_2745 = (void*)0;
      const uint8_t **l_2749 = &g_778;
      uint32_t ***l_2751 = &g_1331;
      int16_t *l_2754 = &g_2079[1][0][2];
      int32_t *l_2765 = &l_2599;
      int i, j;
  lbl_2766:
      if ((l_2510 != (void*)0))
      { /* block id: 1016 */
          int32_t *l_2517[1];
          uint64_t l_2548[7];
          int8_t l_2596[3][6] = {{0x3CL,0L,0L,0x3CL,(-1L),0x3CL},{0x3CL,(-1L),0x3CL,0L,0L,0x3CL},{0x4DL,0L,0x3CL,(-1L),0x3CL,0L}};
          int32_t l_2601 = (-10L);
          uint32_t l_2602 = 1UL;
          int i, j;
          for (i = 0; i < 1; i++)
              l_2517[i] = &g_213;
          for (i = 0; i < 7; i++)
              l_2548[i] = 18446744073709551615UL;
          for (g_213 = 7; (g_213 > (-12)); --g_213)
          { /* block id: 1019 */
              int64_t l_2524[10] = {0x4CC67FDB7285802ELL,0xC76C9F35CD65FABBLL,0x4CC67FDB7285802ELL,0x4CC67FDB7285802ELL,0xC76C9F35CD65FABBLL,0x4CC67FDB7285802ELL,0x4CC67FDB7285802ELL,0xC76C9F35CD65FABBLL,0x4CC67FDB7285802ELL,0x4CC67FDB7285802ELL};
              int32_t l_2525 = 0xBD4C26E5L;
              int32_t l_2526 = 0x7F03FA11L;
              int32_t l_2533 = 0xA50E2640L;
              int32_t l_2535 = 5L;
              int32_t l_2536 = 0L;
              int32_t l_2540 = 0xE55FE406L;
              int32_t l_2543 = 0x6927BAF6L;
              int32_t l_2544 = 0x61D41199L;
              int32_t l_2546[2];
              uint64_t l_2574 = 0UL;
              int i;
              for (i = 0; i < 2; i++)
                  l_2546[i] = 0xC4C41C8DL;
              for (g_1225.f2 = 0; (g_1225.f2 >= (-4)); g_1225.f2--)
              { /* block id: 1022 */
                  uint32_t l_2518 = 18446744073709551607UL;
                  int32_t l_2534 = 0x72378B10L;
                  int32_t l_2542 = 0xBCF927AEL;
                  int32_t l_2545[8];
                  int i;
                  for (i = 0; i < 8; i++)
                      l_2545[i] = (-6L);
                  for (g_79 = 0; (g_79 <= 50); g_79 = safe_add_func_uint64_t_u_u(g_79, 7))
                  { /* block id: 1025 */
                      (*g_792) = l_2517[0];
                      l_2518--;
                  }
                  for (g_48 = 0; (g_48 <= 1); g_48 += 1)
                  { /* block id: 1031 */
                      int8_t l_2523[10] = {0xF8L,1L,0xF8L,1L,0xF8L,1L,0xF8L,1L,0xF8L,1L};
                      int32_t l_2537 = 5L;
                      int32_t l_2539 = 0xAF182F57L;
                      int32_t l_2541[5];
                      int i;
                      for (i = 0; i < 5; i++)
                          l_2541[i] = (-1L);
                      for (g_1461.f1 = 0; (g_1461.f1 <= 1); g_1461.f1 += 1)
                      { /* block id: 1034 */
                          int32_t l_2528 = 1L;
                          int32_t l_2530 = 0x0092DB25L;
                          int32_t l_2531 = 0x685FDE15L;
                          int32_t l_2538 = 6L;
                          int32_t l_2547 = 0x93BA38B5L;
                          int i, j, k;
                          l_2523[5] = (safe_rshift_func_uint8_t_u_s(g_187[(g_48 + 1)], 1));
                          --l_2548[4];
                          (*g_792) = l_2517[0];
                          l_2530 = 3L;
                      }
                      for (l_2529 = (-2); (l_2529 == 2); l_2529 = safe_add_func_int64_t_s_s(l_2529, 2))
                      { /* block id: 1042 */
                          int64_t l_2553 = 0xA001620824398079LL;
                          l_2542 ^= (-3L);
                          l_2553 = p_23;
                          return p_20;
                      }
                      (*g_2554) = (*g_283);
                  }
                  (*g_792) = &l_2527;
                  if (l_2536)
                      continue;
              }
              for (g_279 = 0; (g_279 >= 27); g_279 = safe_add_func_uint8_t_u_u(g_279, 4))
              { /* block id: 1054 */
                  int8_t l_2594 = 9L;
                  int32_t l_2595 = 0xE1308BACL;
                  if ((safe_lshift_func_uint16_t_u_u((*g_184), 0)))
                  { /* block id: 1055 */
                      for (l_2536 = (-23); (l_2536 >= (-22)); l_2536 = safe_add_func_uint64_t_u_u(l_2536, 6))
                      { /* block id: 1058 */
                          int8_t *l_2561 = &l_2532[1][3];
                          return p_20;
                      }
                  }
                  else
                  { /* block id: 1061 */
                      int64_t l_2562 = 6L;
                      if (l_2562)
                          break;
                      if (p_23)
                          break;
                  }
                  (*g_792) = &l_2544;
                  for (g_281 = 0; (g_281 < 31); ++g_281)
                  { /* block id: 1068 */
                      union U0 **l_2571 = &g_455[0][6][0];
                      union U0 ***l_2572 = (void*)0;
                      union U0 ***l_2573 = &l_2571;
                      int32_t l_2575[4];
                      int32_t l_2593 = 0x4B1B4561L;
                      int i;
                      for (i = 0; i < 4; i++)
                          l_2575[i] = (-2L);
                      l_2595 ^= (safe_rshift_func_uint16_t_u_u((((safe_rshift_func_uint8_t_u_s(((safe_sub_func_uint16_t_u_u(((l_2575[3] |= ((&g_455[0][3][4] != ((*l_2573) = l_2571)) , l_2574)) ^ 249UL), ((((0x60L ^ (safe_mul_func_uint16_t_u_u(((p_23 <= (p_22 <= ((safe_div_func_int8_t_s_s(l_2544, ((~((p_21 = ((*g_184) = (safe_mul_func_uint16_t_u_u((safe_div_func_int16_t_s_s((safe_add_func_uint32_t_u_u(((safe_add_func_uint64_t_u_u((safe_mod_func_uint8_t_u_u((safe_mod_func_int64_t_s_s(0x18FC34F42926123DLL, p_22)), 0xFEL)), l_2593)) , p_23), p_21)), (*g_184))), l_2544)))) != l_2594)) | l_2532[1][3]))) != 1L))) & l_2594), l_2593))) < p_22) != 4UL) , p_23))) | p_22), 6)) , p_21) >= 0x2A71L), g_269[0][6][2].f0));
                      l_2540 = 0x3293BDCDL;
                  }
              }
          }
          --l_2602;
      }
      else
      { /* block id: 1079 */
          int32_t *l_2605 = &g_4.f1;
          uint8_t l_2628 = 252UL;
          uint64_t l_2638[3][3][3];
          int16_t l_2641 = 0xE060L;
          int32_t *l_2710[9] = {&g_1225.f0,&g_1225.f0,&g_1225.f0,&g_1225.f0,&g_1225.f0,&g_1225.f0,&g_1225.f0,&g_1225.f0,&g_1225.f0};
          int32_t **l_2709[9] = {&l_2710[1],&l_2710[1],&l_2710[1],&l_2710[1],&l_2710[1],&l_2710[1],&l_2710[1],&l_2710[1],&l_2710[1]};
          int i, j, k;
          for (i = 0; i < 3; i++)
          {
              for (j = 0; j < 3; j++)
              {
                  for (k = 0; k < 3; k++)
                      l_2638[i][j][k] = 0xA3FFF8E1A808AF1CLL;
              }
          }
          (*g_792) = l_2605;
          (*g_792) = (void*)0;
          for (l_2598 = (-7); (l_2598 < 12); l_2598 = safe_add_func_int16_t_s_s(l_2598, 3))
          { /* block id: 1084 */
              int16_t l_2608 = 0x28EEL;
              int32_t l_2610 = 0x34931152L;
              int32_t *l_2611 = &g_1225.f1;
              int32_t *l_2612 = &l_2527;
              int32_t *l_2613 = (void*)0;
              int32_t *l_2614 = &l_2600[3];
              int32_t *l_2615[10][6][4] = {{{(void*)0,&l_2527,&l_2600[2],(void*)0},{&l_2600[2],(void*)0,&g_1225.f1,&l_2600[0]},{&g_1225.f1,(void*)0,&l_2600[0],(void*)0},{&l_2598,&l_2527,(void*)0,(void*)0},{&g_1225.f1,(void*)0,&g_1225.f1,&l_2527},{(void*)0,&l_2529,&g_1225.f1,(void*)0}},{{(void*)0,&g_213,&g_1225.f1,&l_2600[0]},{&g_1225.f1,(void*)0,(void*)0,&g_213},{&l_2598,&l_2529,&l_2600[0],(void*)0},{&g_1225.f1,&g_213,&g_1225.f1,(void*)0},{&l_2600[2],&l_2529,&l_2600[2],&g_213},{(void*)0,(void*)0,&l_2600[0],&l_2600[0]}},{{&g_1225.f1,&g_213,(void*)0,(void*)0},{&g_1225.f1,&l_2529,(void*)0,&l_2527},{&g_1225.f1,(void*)0,&l_2600[0],(void*)0},{(void*)0,&l_2527,&l_2600[2],(void*)0},{&l_2600[2],(void*)0,&g_1225.f1,&l_2600[0]},{&g_1225.f1,(void*)0,&l_2600[0],(void*)0}},{{&l_2598,&l_2527,(void*)0,(void*)0},{&g_1225.f1,(void*)0,&g_1225.f1,&l_2527},{(void*)0,&l_2529,&g_1225.f1,(void*)0},{(void*)0,&g_213,&g_1225.f1,&l_2600[0]},{&g_1225.f1,(void*)0,(void*)0,&g_213},{&l_2598,&l_2529,&l_2600[0],(void*)0}},{{&g_1225.f1,&g_213,&g_1225.f1,(void*)0},{&l_2600[2],&l_2529,&l_2600[2],&g_213},{(void*)0,(void*)0,&l_2600[0],&l_2600[0]},{&g_1225.f1,&g_213,(void*)0,(void*)0},{&g_1225.f1,&l_2529,(void*)0,&l_2527},{&g_1225.f1,(void*)0,&l_2600[0],(void*)0}},{{(void*)0,&l_2527,&l_2600[2],(void*)0},{&l_2600[2],(void*)0,&g_1225.f1,&l_2600[0]},{&g_1225.f1,(void*)0,&l_2600[0],(void*)0},{&l_2598,&l_2527,(void*)0,(void*)0},{&g_1225.f1,(void*)0,&g_1225.f1,&l_2527},{(void*)0,&l_2529,&g_1225.f1,(void*)0}},{{(void*)0,&g_213,&g_1225.f1,&l_2527},{&l_2600[0],&l_2600[0],&g_96,&l_2599},{&l_2600[2],&g_213,&l_2600[0],&l_2527},{&g_1225.f1,&l_2597,&g_1225.f1,&l_2527},{&l_2600[0],&g_213,&l_2600[0],&l_2599},{(void*)0,&l_2600[0],(void*)0,&l_2527}},{{&g_1225.f1,&l_2599,&g_96,&l_2600[0]},{&g_1225.f1,&g_213,&g_96,&g_4.f1},{&g_1225.f1,&g_213,(void*)0,&l_2527},{(void*)0,&l_2600[3],&l_2600[0],&l_2600[0]},{&l_2600[0],&l_2600[0],&g_1225.f1,&l_2610},{&g_1225.f1,&l_2600[0],&l_2600[0],&l_2600[0]}},{{&l_2600[2],&l_2600[3],&g_96,&l_2527},{&l_2600[0],&g_213,&g_1225.f1,&g_4.f1},{(void*)0,&g_213,&l_2610,&l_2600[0]},{(void*)0,&l_2599,&g_1225.f1,&l_2527},{&l_2600[0],&l_2600[0],&g_96,&l_2599},{&l_2600[2],&g_213,&l_2600[0],&l_2527}},{{&g_1225.f1,&l_2597,&g_1225.f1,&l_2527},{&l_2600[0],&g_213,&l_2600[0],&l_2599},{(void*)0,&l_2600[0],(void*)0,&l_2527},{&g_1225.f1,&l_2599,&g_96,&l_2600[0]},{&g_1225.f1,&g_213,&g_96,&g_4.f1},{&g_1225.f1,&g_213,(void*)0,&l_2527}}};
              union U2 * const l_2619[9][3] = {{(void*)0,&g_1461,(void*)0},{&g_1929,&g_1929,&g_1929},{(void*)0,&g_1461,(void*)0},{&g_1929,&g_1929,&g_1929},{(void*)0,&g_1461,(void*)0},{&g_1929,&g_1929,&g_1929},{(void*)0,&g_1461,(void*)0},{&g_1929,&g_1929,&g_1929},{(void*)0,&g_1461,(void*)0}};
              uint8_t *l_2639 = (void*)0;
              uint8_t *l_2640[4][6] = {{(void*)0,&g_1225.f3,&g_1225.f3,(void*)0,&g_1225.f3,&g_1225.f3},{(void*)0,&g_1225.f3,&g_1225.f3,(void*)0,&g_1225.f3,&g_1225.f3},{(void*)0,&g_1225.f3,&g_1225.f3,(void*)0,&g_1225.f3,&g_1225.f3},{(void*)0,&g_1225.f3,&g_1225.f3,(void*)0,&g_1225.f3,&g_1225.f3}};
              union U1 *l_2647 = &g_2648;
              union U1 ****l_2703 = (void*)0;
              int i, j, k;
              (*l_2605) = p_21;
              (*g_2609) |= ((*l_2605) = l_2608);
              l_2616--;
          }
      }
      (*l_2765) = (((safe_lshift_func_int16_t_s_s((l_2600[3] , ((*l_2754) &= l_2600[3])), 14)) < (safe_lshift_func_uint8_t_u_s((0xA4L >= l_2713), ((((safe_unary_minus_func_int64_t_s((safe_add_func_uint8_t_u_u((safe_div_func_uint64_t_u_u((((((!p_21) < ((safe_unary_minus_func_int64_t_s(((l_2532[3][2] , 0xFB2059F015E47498LL) ^ 18446744073709551615UL))) && (+p_22))) & l_2527) , (*g_1887)) == l_2527), l_2616)), 1UL)))) & l_2529) >= (*g_613)) <= l_2532[1][3])))) , 0xCA0D7456L);
      if (l_2598)
          goto lbl_2766;
      return p_20;
  }
  
  
  /* ------------------------------------------ */
  /* 
   * reads : g_108 g_109 g_1112 g_1225 g_184 g_392 g_393 g_107 g_855 g_213 g_65 g_32 g_185 g_215 g_1263 g_494 g_495 g_100 g_792 g_350 g_319 g_1279 g_274 g_611 g_612 g_613 g_269.f0 g_615 g_96 g_1088.f0 g_648 g_4.f1 g_590 g_141 g_493 g_1330 g_506 g_79 g_1190 g_277 g_529 g_76 g_1470 g_1696 g_279 g_1721 g_640 g_1225.f1 g_187 g_284 g_269 g_1789 g_492 g_1133 g_638 g_349 g_2079 g_4.f2 g_1225.f4 g_1088.f2
   * writes: g_279 g_1112 g_185 g_455 g_213 g_4.f2 g_100 g_32 g_1225.f3 g_393 g_1225.f1 g_187 g_96 g_1225.f4 g_1357 g_1359 g_215 g_855 g_79 g_277 g_1088.f2 g_76 g_527 g_4.f0 g_350 g_1088.f0 g_274 g_1470.f2 g_1929.f1
   */
  int8_t * func_25(int8_t * p_26, int32_t  p_27, int8_t * const  p_28, uint64_t  p_29, int8_t  p_30)
  { /* block id: 422 */
      uint32_t l_1231 = 0x3174EE8FL;
      uint64_t l_1297[2];
      int32_t l_1299[9];
      int32_t * const *l_1310 = (void*)0;
      uint32_t *** volatile l_1332[9][9] = {{&g_1331,&g_1331,&g_1331,(void*)0,&g_1331,&g_1331,&g_1331,&g_1331,(void*)0},{(void*)0,&g_1331,(void*)0,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331},{&g_1331,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331,(void*)0,&g_1331,&g_1331},{&g_1331,(void*)0,(void*)0,&g_1331,&g_1331,(void*)0,&g_1331,&g_1331,&g_1331},{&g_1331,(void*)0,&g_1331,(void*)0,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331},{&g_1331,&g_1331,(void*)0,(void*)0,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331},{&g_1331,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331,(void*)0,&g_1331,(void*)0},{&g_1331,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331,&g_1331},{(void*)0,&g_1331,&g_1331,&g_1331,(void*)0,&g_1331,&g_1331,(void*)0,(void*)0}};
      int32_t l_1344 = (-5L);
      int8_t *l_1397 = &g_805;
      union U0 l_1398[4] = {{-1L},{-1L},{-1L},{-1L}};
      union U0 *l_1399[6];
      union U0 l_1400 = {1L};
      int16_t l_1401 = 0xEE03L;
      int64_t *l_1404 = &g_393;
      int32_t *l_1428 = &g_1225.f0;
      uint64_t *l_1465 = &g_187[0];
      uint64_t **l_1464 = &l_1465;
      int16_t * const l_1499 = &g_855;
      int16_t * const *l_1498 = &l_1499;
      int16_t * const **l_1497 = &l_1498;
      uint32_t l_1578 = 4294967290UL;
      int64_t l_1659 = 4L;
      uint32_t l_1662 = 0xD69319C3L;
      union U2 **l_1750[8][9];
      uint8_t l_1800 = 0xEFL;
      uint32_t l_1831 = 0xDE3C7F23L;
      uint32_t l_1867 = 0x0E8ABA7BL;
      uint16_t ** const l_1930 = &g_184;
      int8_t **l_1962 = (void*)0;
      int8_t ***l_1961[9] = {(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0};
      uint8_t ***l_1984[10][9][2] = {{{&g_1886,&g_1886},{(void*)0,&g_1886},{&g_1886,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886}},{{&g_1886,&g_1886},{&g_1886,(void*)0},{(void*)0,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0},{(void*)0,&g_1886},{&g_1886,&g_1886}},{{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{(void*)0,&g_1886},{&g_1886,(void*)0},{&g_1886,&g_1886},{(void*)0,&g_1886}},{{&g_1886,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{(void*)0,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0}},{{&g_1886,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0},{(void*)0,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0}},{{&g_1886,&g_1886},{(void*)0,&g_1886},{&g_1886,(void*)0},{&g_1886,&g_1886},{(void*)0,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886}},{{&g_1886,&g_1886},{&g_1886,&g_1886},{(void*)0,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0},{(void*)0,(void*)0},{&g_1886,&g_1886}},{{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0},{&g_1886,&g_1886},{(void*)0,&g_1886}},{{&g_1886,&g_1886},{&g_1886,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886}},{{&g_1886,&g_1886},{(void*)0,&g_1886},{&g_1886,&g_1886},{(void*)0,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,&g_1886},{&g_1886,(void*)0},{&g_1886,&g_1886}}};
      int8_t l_1985 = 0x9EL;
      int64_t l_2019 = 0xED29B5E98B3AD5C5LL;
      uint8_t l_2021[5][3] = {{0xC1L,8UL,0xC1L},{6UL,0x20L,253UL},{6UL,6UL,0x20L},{0xC1L,0x20L,0x20L},{0x20L,8UL,253UL}};
      int64_t * const *l_2067[5];
      uint8_t l_2085 = 253UL;
      int32_t l_2169[1];
      int8_t l_2197 = 0xD9L;
      int16_t l_2198 = 0x4FD9L;
      uint64_t ***l_2256 = (void*)0;
      uint64_t ****l_2255 = &l_2256;
      uint64_t *****l_2254 = &l_2255;
      int32_t l_2387 = 7L;
      int8_t *l_2418 = &l_1985;
      union U1 ***l_2447 = &g_1132[1];
      union U1 ****l_2446 = &l_2447;
      uint16_t **l_2472 = (void*)0;
      uint16_t ***l_2471 = &l_2472;
      int32_t l_2498 = 1L;
      int8_t *l_2506[9][1] = {{&g_805},{&g_805},{&g_805},{&g_805},{&g_805},{&g_805},{&g_805},{&g_805},{&g_805}};
      int8_t *l_2507 = &l_1985;
      int8_t *l_2508 = &g_32;
      int i, j, k;
      for (i = 0; i < 2; i++)
          l_1297[i] = 0UL;
      for (i = 0; i < 9; i++)
          l_1299[i] = 0xB87629D6L;
      for (i = 0; i < 6; i++)
          l_1399[i] = &g_1225;
      for (i = 0; i < 8; i++)
      {
          for (j = 0; j < 9; j++)
              l_1750[i][j] = (void*)0;
      }
      for (i = 0; i < 5; i++)
          l_2067[i] = (void*)0;
      for (i = 0; i < 1; i++)
          l_2169[i] = (-1L);
  lbl_1481:
      if (((-7L) == (*g_108)))
      { /* block id: 423 */
          int64_t l_1218[9] = {7L,7L,7L,7L,7L,7L,7L,7L,7L};
          int8_t **l_1221 = (void*)0;
          int32_t l_1342[3];
          const int32_t **l_1355 = (void*)0;
          int32_t l_1363 = 3L;
          int32_t l_1366 = (-8L);
          union U0 l_1386 = {0x1106C0F3L};
          uint32_t *l_1388 = &l_1386.f4;
          int i;
          for (i = 0; i < 3; i++)
              l_1342[i] = 0xF0CD8AC4L;
          if (p_29)
          { /* block id: 424 */
              int32_t l_1238[3][1];
              uint16_t **l_1248 = &g_184;
              uint16_t ** const *l_1247[7] = {&l_1248,&l_1248,&l_1248,&l_1248,&l_1248,&l_1248,&l_1248};
              int32_t l_1255[4] = {6L,6L,6L,6L};
              int64_t l_1284 = (-2L);
              union U1 *l_1300 = &g_1143;
              union U0 l_1308[3] = {{0xAE939322L},{0xAE939322L},{0xAE939322L}};
              uint32_t l_1346 = 1UL;
              const int32_t * const l_1353 = &g_1354;
              const int32_t * const *l_1352 = &l_1353;
              const int32_t * const **l_1351 = &l_1352;
              const int32_t ***l_1356[2];
              uint32_t l_1364 = 6UL;
              uint8_t *l_1365[7][5][2] = {{{&g_897,&g_897},{&g_1225.f3,&g_897},{&g_4.f3,&l_1308[2].f3},{&l_1308[2].f3,&g_897},{&g_100,&g_897}},{{&l_1308[2].f3,&g_100},{&l_1308[2].f3,(void*)0},{&g_4.f3,&l_1308[2].f3},{&l_1308[2].f3,&l_1308[2].f3},{&l_1308[2].f3,&g_897}},{{&g_897,&g_1225.f3},{&g_4.f3,&g_1225.f3},{&g_897,&g_897},{&l_1308[2].f3,&l_1308[2].f3},{&l_1308[2].f3,&l_1308[2].f3}},{{&g_4.f3,(void*)0},{&l_1308[2].f3,&g_100},{&l_1308[2].f3,&g_897},{&g_100,&g_897},{&l_1308[2].f3,&l_1308[2].f3}},{{&g_4.f3,&g_897},{&g_1225.f3,&g_897},{&g_897,&g_4.f3},{&l_1308[2].f3,&g_897},{&g_897,(void*)0}},{{&g_897,&g_897},{&l_1308[2].f3,&g_4.f3},{&g_897,&g_897},{&g_1225.f3,&g_897},{&g_4.f3,&l_1308[2].f3}},{{&l_1308[2].f3,&g_897},{&g_100,&g_897},{&l_1308[2].f3,&g_100},{&l_1308[2].f3,(void*)0},{&g_4.f3,&l_1308[2].f3}}};
              uint32_t l_1367[4];
              int i, j, k;
              for (i = 0; i < 3; i++)
              {
                  for (j = 0; j < 1; j++)
                      l_1238[i][j] = 0xB6E7B8F7L;
              }
              for (i = 0; i < 2; i++)
                  l_1356[i] = (void*)0;
              for (i = 0; i < 4; i++)
                  l_1367[i] = 0UL;
              for (g_279 = (-28); (g_279 < 55); g_279 = safe_add_func_int16_t_s_s(g_279, 6))
              { /* block id: 427 */
                  uint8_t *l_1222 = &g_1112;
                  int32_t l_1230 = 0x2CE54FE1L;
                  union U0 **l_1294 = &g_455[0][6][0];
                  uint32_t *l_1298 = &l_1231;
                  union U1 **l_1301[8];
                  int16_t ** const *l_1303 = (void*)0;
                  int16_t ** const **l_1302 = &l_1303;
                  int8_t ***l_1307 = &l_1221;
                  int8_t ****l_1306[10] = {&l_1307,&l_1307,&l_1307,&l_1307,&l_1307,&l_1307,&l_1307,&l_1307,&l_1307,&l_1307};
                  int8_t *** const * const l_1309[7] = {(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0};
                  int32_t l_1343 = 1L;
                  int32_t l_1345[5][5] = {{6L,6L,0L,0L,6L},{0L,3L,0L,3L,0L},{6L,0L,0L,6L,6L},{0x51FE5286L,3L,0x51FE5286L,3L,0x51FE5286L},{6L,6L,0L,0L,6L}};
                  int i, j;
                  for (i = 0; i < 8; i++)
                      l_1301[i] = (void*)0;
                  if (((safe_div_func_int64_t_s_s(p_29, (safe_add_func_int32_t_s_s((0xEDCF6159597C2B01LL ^ (l_1218[6] == ((safe_add_func_int32_t_s_s(l_1218[7], (((((p_29 >= ((((l_1221 != ((++(*l_1222)) , (g_1225 , (void*)0))) & (((((*g_184) = (safe_div_func_uint16_t_u_u(((safe_sub_func_int64_t_s_s(1L, l_1230)) <= l_1230), p_30))) >= l_1231) , 0x1C649FF8AE7222FFLL) | (*g_392))) | p_29) <= p_27)) , 1UL) == p_29) == 0xE0A605E710CF04E3LL) < l_1230))) | p_27))), 4L)))) >= l_1218[5]))
                  { /* block id: 430 */
                      union U0 *l_1232 = &g_1225;
                      union U0 **l_1233 = &g_455[0][3][3];
                      int32_t l_1249 = 0x4024CAA0L;
                      union U2 * const *l_1254 = &g_350;
                      (*l_1233) = l_1232;
                      (*g_215) = ((safe_add_func_uint64_t_u_u(((**g_107) < ((safe_div_func_uint32_t_u_u(l_1238[1][0], p_27)) , (safe_div_func_int16_t_s_s(g_855, (l_1238[1][0] = (safe_rshift_func_uint16_t_u_u((safe_mul_func_int16_t_s_s((safe_mul_func_int8_t_s_s(((void*)0 != l_1247[6]), (l_1230 & ((l_1249 <= ((safe_sub_func_uint8_t_u_u(((*l_1222) ^= (safe_lshift_func_uint8_t_u_u((((&g_350 != l_1254) == l_1230) ^ l_1230), g_213))), (*g_65))) ^ (*g_392))) < p_29)))), 0xA9E2L)), (*g_184)))))))), l_1255[3])) == p_27);
                      for (g_4.f2 = 0; (g_4.f2 < (-11)); g_4.f2 = safe_sub_func_uint8_t_u_u(g_4.f2, 1))
                      { /* block id: 437 */
                          union U0 l_1262 = {0x991440C6L};
                          uint8_t *l_1272 = &g_100;
                          uint8_t *l_1273 = &g_1225.f3;
                          uint8_t *l_1274 = &l_1262.f3;
                          int32_t l_1275 = (-8L);
                          int32_t *l_1276 = &l_1255[0];
                          (*l_1276) |= (safe_add_func_uint64_t_u_u(((safe_div_func_int8_t_s_s(((l_1249 >= ((((*l_1274) = ((*l_1273) = (l_1262 , (((g_1263 , (safe_lshift_func_uint16_t_u_u(p_29, (safe_add_func_uint64_t_u_u(((l_1231 >= (l_1218[6] > ((void*)0 != (*g_494)))) && ((*p_28) = (((**g_792) ^= (safe_mod_func_uint8_t_u_u(((*l_1272) |= ((*l_1222)--)), l_1218[0]))) ^ l_1249))), 0xB66FAD41579C32DCLL))))) >= 0xD2914D28L) >= (*g_392))))) <= p_27) && (*p_28))) || (*g_392)), l_1230)) ^ l_1275), (-1L)));
                      }
                      (**g_792) = (((safe_div_func_int8_t_s_s(((((**l_1254) , p_27) , (g_1279 , p_30)) , 0x5DL), (*p_28))) , ((safe_mod_func_uint8_t_u_u(((safe_mul_func_uint8_t_u_u(p_29, (p_27 , l_1284))) | p_30), l_1255[2])) && l_1230)) ^ g_274[3]);
                  }
                  else
                  { /* block id: 447 */
                      uint8_t l_1291 = 8UL;
                      union U0 ***l_1295 = &l_1294;
                      uint32_t *l_1296 = &l_1231;
                      l_1299[4] ^= (safe_add_func_uint8_t_u_u(l_1238[1][0], ((((((((safe_lshift_func_int8_t_s_u((safe_lshift_func_uint16_t_u_u(l_1291, 11)), 3)) & (l_1231 >= 0L)) , (safe_mod_func_uint16_t_u_u(((((*g_392) ^= (((((((*l_1295) = l_1294) == (void*)0) || (((*l_1296) = ((((*l_1222) = ((void*)0 == &g_107)) <= (*p_26)) ^ 255UL)) | 0xCA6956EBL)) && l_1230) && l_1297[1]) && (***g_611))) == 1UL) , (*g_184)), l_1255[1]))) <= l_1218[3]) , (*g_392)) == 0x955C2BB7174D2F94LL) , l_1298) != &g_913)));
                  }
                  l_1300 = l_1300;
                  if ((((*g_495) , (*g_615)) != ((*l_1302) = (void*)0)))
                  { /* block id: 456 */
                      union U0 l_1317[5] = {{0x481AAAE4L},{0x481AAAE4L},{0x481AAAE4L},{0x481AAAE4L},{0x481AAAE4L}};
                      uint64_t *l_1318 = (void*)0;
                      uint64_t *l_1319 = &g_187[2];
                      int32_t l_1326 = 4L;
                      int32_t l_1327 = (-7L);
                      int i;
                      (**g_792) &= (g_96 , ((&g_283 != (void*)0) >= ((safe_mod_func_int32_t_s_s((l_1306[3] != (l_1308[2] , l_1309[2])), (((((1L & g_185[8]) & ((((**g_107) , g_1088.f0) < 0x24B614B0L) ^ 7L)) <= l_1308[2].f3) == l_1218[2]) , 0x164BC162L))) || (*g_392))));
                      (**g_792) = (**g_648);
                      for (g_1225.f1 = 6; (g_1225.f1 >= 0); g_1225.f1 -= 1)
                      { /* block id: 461 */
                          l_1310 = l_1310;
                      }
                      l_1327 |= ((safe_sub_func_int16_t_s_s(0x90B0L, (!0x343B51B5L))) <= (((safe_mul_func_int8_t_s_s((+(p_29 != ((l_1299[1] = (((*l_1319) = ((*g_613) < ((**l_1248) = (l_1317[0] , l_1308[2].f0)))) != (l_1326 ^= ((safe_mul_func_uint16_t_u_u(((safe_sub_func_int64_t_s_s(((0xFEL ^ (((**g_792) ^= (((((*l_1298) = g_4.f1) ^ (((((safe_mod_func_int16_t_s_s(g_590, 0xBBDDL)) >= g_141) & 0L) , l_1297[1]) > 0xA65E01F3L)) <= l_1317[0].f4) , l_1238[1][0])) == l_1299[2])) ^ (*g_392)), p_27)) , l_1308[2].f0), 0UL)) != 7UL)))) | 0x386CL))), (***g_493))) == l_1218[6]) <= l_1297[1]));
                  }
                  else
                  { /* block id: 471 */
                      for (g_96 = 0; (g_96 > (-19)); --g_96)
                      { /* block id: 474 */
                          l_1332[8][2] = g_1330;
                      }
                  }
                  for (g_1225.f4 = 0; (g_1225.f4 < 11); g_1225.f4++)
                  { /* block id: 480 */
                      int32_t *l_1335 = &l_1255[3];
                      int32_t *l_1336 = &l_1238[1][0];
                      int32_t *l_1337 = &l_1299[4];
                      int32_t *l_1338 = &l_1299[4];
                      int32_t *l_1339 = &l_1238[1][0];
                      int32_t *l_1340 = &g_213;
                      int32_t *l_1341[10][9] = {{(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230},{&l_1255[1],&l_1238[1][0],&l_1255[3],&l_1230,&l_1255[3],&l_1238[1][0],&l_1255[1],&l_1238[1][0],&l_1255[3]},{(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230},{&l_1255[1],&l_1238[1][0],&l_1255[3],&l_1230,&l_1255[3],&l_1238[1][0],&l_1255[1],&l_1238[1][0],&l_1255[3]},{(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230},{&l_1255[1],&l_1238[1][0],&l_1255[3],&l_1230,&l_1255[3],&l_1238[1][0],&l_1255[1],&l_1238[1][0],&l_1255[3]},{(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230},{&l_1255[1],&l_1238[1][0],&l_1255[3],&l_1230,&l_1255[3],&l_1238[1][0],&l_1255[1],&l_1238[1][0],&l_1255[3]},{(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230,(void*)0,&l_1230,&l_1230},{&l_1255[1],&l_1238[1][0],&l_1255[3],&l_1230,&l_1255[3],&l_1238[1][0],&l_1255[1],&l_1238[1][0],&l_1255[3]}};
                      int i, j;
                      l_1346++;
                  }
              }
              (*g_215) = (safe_rshift_func_uint16_t_u_u((((*l_1351) = (void*)0) != (g_1359 = (g_1357 = l_1355))), ((0xFBL <= l_1342[2]) ^ ((((((&p_30 == (*g_494)) <= (l_1366 = (safe_unary_minus_func_uint16_t_u(((l_1363 = l_1308[2].f1) && (l_1364 <= (((**l_1248) = p_30) || (*g_184)))))))) != p_30) || 0x74L) , l_1367[1]) >= 0x802400DAL))));
              (*g_792) = (*g_506);
              l_1238[0][0] = p_30;
          }
          else
          { /* block id: 493 */
              for (g_855 = 0; (g_855 <= 8); g_855 += 1)
              { /* block id: 496 */
                  int8_t *l_1368[4];
                  int i;
                  for (i = 0; i < 4; i++)
                      l_1368[i] = &g_805;
                  (*g_792) = &l_1299[g_855];
                  l_1342[0] = 0x4367C78FL;
                  return l_1368[0];
              }
          }
          for (g_1225.f4 = 0; (g_1225.f4 >= 43); g_1225.f4++)
          { /* block id: 504 */
              uint64_t *l_1383 = &g_79;
              uint32_t *l_1387 = &g_4.f4;
              uint32_t *l_1389 = &g_4.f4;
              uint32_t *l_1390 = &g_279;
              int16_t *l_1391 = &g_277;
              uint64_t l_1392 = 0x00472F78FCBA94B6LL;
              uint64_t *l_1393[4];
              int i;
              for (i = 0; i < 4; i++)
                  l_1393[i] = &l_1392;
              (**g_792) = (((p_29 = (safe_sub_func_uint8_t_u_u((((safe_lshift_func_uint8_t_u_u((safe_mul_func_int16_t_s_s(((safe_rshift_func_int16_t_s_u((safe_lshift_func_uint16_t_u_u((((((safe_sub_func_uint64_t_u_u((--(*l_1383)), ((*g_392) |= (l_1386 , ((void*)0 != &g_455[0][6][0]))))) || (*g_392)) >= ((*g_184) = (l_1387 == (l_1389 = l_1388)))) , l_1218[7]) , (((*l_1391) ^= (((((*l_1390) = g_1190) == ((*p_28) && l_1366)) == 1L) < l_1297[0])) & p_29)), l_1386.f3)), l_1392)) != l_1392), l_1386.f1)), 1)) < l_1392) < (*p_26)), (*p_28)))) <= (*g_108)) || (*p_28));
              (**g_792) = 0x7E8ABBEDL;
          }
      }
      else
      { /* block id: 515 */
          uint8_t l_1396[3];
          int i;
          for (i = 0; i < 3; i++)
              l_1396[i] = 0x1AL;
          (*g_792) = &l_1299[2];
          l_1396[2] = ((*g_215) |= (safe_div_func_uint8_t_u_u(l_1297[1], (**g_494))));
          return l_1397;
      }
      if (((((l_1400 = l_1398[2]) , (l_1401 , (safe_lshift_func_uint8_t_u_u(253UL, g_32)))) , &g_577) == l_1404))
      { /* block id: 522 */
          int32_t l_1405[1][3][9] = {{{0L,0xACB8AEF3L,0xACB8AEF3L,0L,0xC30484E7L,0L,0xACB8AEF3L,0xACB8AEF3L,0L},{0x6F68BB25L,0xACB8AEF3L,8L,0xACB8AEF3L,0x6F68BB25L,0x6F68BB25L,0xACB8AEF3L,8L,0xACB8AEF3L},{0xACB8AEF3L,0xC30484E7L,8L,8L,0xC30484E7L,0xACB8AEF3L,0xC30484E7L,8L,8L}}};
          union U0 l_1408 = {5L};
          int64_t l_1427 = 1L;
          uint8_t l_1486 = 0xE6L;
          int8_t *l_1563[6] = {&g_32,&g_32,&g_32,&g_32,&g_32,&g_32};
          uint16_t l_1619[4][3][2] = {{{0xD39CL,5UL},{0xD39CL,0xD39CL},{5UL,0xD39CL}},{{0xD39CL,5UL},{0xD39CL,0xD39CL},{5UL,0xD39CL}},{{0xD39CL,5UL},{0xD39CL,0xD39CL},{5UL,0xD39CL}},{{0xD39CL,5UL},{0xD39CL,0xD39CL},{5UL,0xD39CL}}};
          int16_t ****l_1665 = (void*)0;
          uint8_t l_1699 = 0x57L;
          int64_t l_1700 = 8L;
          uint64_t *l_1736 = (void*)0;
          int64_t l_1795[5];
          union U1 * const *l_1820 = &g_1133;
          union U1 * const **l_1819 = &l_1820;
          union U1 * const ***l_1818[4][1] = {{&l_1819},{&l_1819},{&l_1819},{&l_1819}};
          int i, j, k;
          for (i = 0; i < 5; i++)
              l_1795[i] = (-1L);
          if (((p_29 && (-1L)) >= l_1405[0][0][8]))
          { /* block id: 523 */
              uint64_t *l_1410[8] = {&g_187[0],&g_187[0],&g_187[0],&g_187[0],&g_187[0],&g_187[0],&g_187[0],&g_187[0]};
              int16_t *l_1411 = &l_1401;
              int8_t *l_1414 = &g_32;
              int32_t l_1445 = 6L;
              uint64_t * const *l_1466 = (void*)0;
              int32_t l_1482 = (-1L);
              int i;
              if (((l_1408 , p_27) != ((*l_1411) = (!((l_1405[0][1][2] &= l_1408.f4) & (**g_107))))))
              { /* block id: 526 */
                  (**g_792) = p_29;
                  for (g_1088.f2 = (-23); (g_1088.f2 < 58); g_1088.f2++)
                  { /* block id: 530 */
                      return l_1414;
                  }
              }
              else
              { /* block id: 533 */
                  uint64_t l_1459[8][4] = {{0x24A99525163F1600LL,18446744073709551608UL,0xE2E28A3DD6779360LL,18446744073709551608UL},{0xFA5FF7BA229F96BFLL,9UL,0UL,0xE2E28A3DD6779360LL},{18446744073709551608UL,9UL,9UL,18446744073709551608UL},{9UL,18446744073709551608UL,0xFA5FF7BA229F96BFLL,0x24A99525163F1600LL},{9UL,0xFA5FF7BA229F96BFLL,9UL,0UL},{18446744073709551608UL,0x24A99525163F1600LL,0xE2E28A3DD6779360LL,0xE2E28A3DD6779360LL},{0xA93E7AE1DB698B8FLL,0xA93E7AE1DB698B8FLL,0xFA5FF7BA229F96BFLL,0UL},{0UL,9UL,0xFA5FF7BA229F96BFLL,9UL}};
                  union U2 *l_1460 = &g_1461;
                  uint8_t l_1472 = 0xDEL;
                  uint64_t l_1478 = 0xA68DBD9548A523A0LL;
                  int32_t *l_1483 = &l_1299[3];
                  int32_t *l_1484 = (void*)0;
                  int32_t *l_1485 = &l_1405[0][0][8];
                  int i, j;
                  for (l_1400.f2 = 0; (l_1400.f2 >= 29); ++l_1400.f2)
                  { /* block id: 536 */
                      union U0 l_1417 = {8L};
                      (**g_792) = (l_1417 , ((safe_lshift_func_uint16_t_u_s((!(*g_392)), ((p_30 , p_29) && ((*g_184)--)))) >= 0x4BFD0E19L));
                      for (g_1088.f2 = 29; (g_1088.f2 != 29); g_1088.f2 = safe_add_func_int16_t_s_s(g_1088.f2, 8))
                      { /* block id: 541 */
                          int32_t l_1448[6] = {0xDC9B454BL,0xDC9B454BL,0xDC9B454BL,0xDC9B454BL,0xDC9B454BL,0xDC9B454BL};
                          int i;
                          (*g_215) ^= ((((l_1427 &= (**g_612)) , 0x6F9BL) & ((l_1428 = &g_640) == (void*)0)) , 0x3073E66AL);
                          (*g_215) = (safe_mul_func_int16_t_s_s((((((safe_rshift_func_uint16_t_u_s(4UL, ((safe_rshift_func_uint8_t_u_s(p_30, (safe_add_func_int32_t_s_s((*g_529), 1UL)))) <= ((((safe_div_func_int32_t_s_s((safe_rshift_func_int8_t_s_s(0x1EL, 5)), (safe_mod_func_int64_t_s_s((safe_div_func_uint16_t_u_u(((*g_495) && l_1445), ((safe_mul_func_int16_t_s_s(l_1405[0][0][8], 65528UL)) , p_27))), 0xD5B79A41756E76D5LL)))) ^ l_1448[5]) ^ l_1408.f1) <= p_27)))) , 0L) , p_27) != l_1445) == (*g_215)), 0x242CL));
                          if (p_29)
                              continue;
                      }
                      for (l_1408.f2 = 0; (l_1408.f2 >= 0); l_1408.f2 -= 1)
                      { /* block id: 550 */
                          uint32_t *l_1471[5] = {(void*)0,(void*)0,(void*)0,(void*)0,(void*)0};
                          int32_t *l_1473 = &l_1445;
                          int32_t *l_1474 = (void*)0;
                          int32_t *l_1475 = &g_96;
                          int32_t *l_1476 = &l_1417.f1;
                          int32_t *l_1477[6] = {&l_1398[2].f1,&l_1398[2].f1,&l_1398[2].f1,&l_1398[2].f1,&l_1398[2].f1,&l_1398[2].f1};
                          int i, j;
                          l_1417.f1 |= (((*g_215) |= (l_1405[0][0][1] = ((safe_lshift_func_uint8_t_u_s((0x32L && (safe_lshift_func_int16_t_s_u((safe_mul_func_int8_t_s_s(((void*)0 != &l_1310), (g_109 > (safe_mod_func_int64_t_s_s((*g_392), (++g_76)))))), 7))), 7)) != ((l_1459[3][1] && (((*l_1411) = ((void*)0 != l_1460)) == 65528UL)) , l_1408.f4)))) < 0xD56696E5L);
                          g_527[l_1408.f2][(l_1408.f2 + 6)] = ((*g_792) = (*g_792));
                          (**g_792) = (((l_1445 &= ((*g_184) = (safe_add_func_int32_t_s_s(4L, p_30)))) && (*g_184)) >= (l_1472 = ((l_1464 != l_1466) ^ (safe_div_func_uint64_t_u_u((1L | ((!0x346DC753L) , p_29)), (g_1470 , 0x424A308E35E20846LL))))));
                          l_1478--;
                      }
                      if (g_32)
                          goto lbl_1481;
                  }
                  (**g_792) = p_29;
                  ++l_1486;
              }
          }
          else
          { /* block id: 569 */
              uint32_t l_1509 = 0x5F0E93A8L;
              int32_t l_1514 = 0xDEB7D257L;
              int32_t l_1515 = 0x5E5E4601L;
              int8_t l_1536 = 0x11L;
              int16_t l_1547 = 0x1C08L;
              int32_t l_1577 = 8L;
              int32_t l_1618 = 1L;
              int8_t l_1661 = 0x51L;
              int8_t **l_1684 = &l_1397;
              int8_t ***l_1683 = &l_1684;
              int8_t ****l_1682 = &l_1683;
              for (l_1400.f3 = 0; (l_1400.f3 != 32); l_1400.f3 = safe_add_func_int8_t_s_s(l_1400.f3, 8))
              { /* block id: 572 */
                  int16_t *l_1496 = &g_319.f0;
                  int16_t **l_1495[2];
                  int16_t ***l_1494[3][3][3] = {{{&l_1495[0],&l_1495[0],&l_1495[0]},{(void*)0,&l_1495[0],(void*)0},{&l_1495[0],&l_1495[0],&l_1495[0]}},{{(void*)0,&l_1495[0],(void*)0},{&l_1495[0],&l_1495[0],&l_1495[0]},{(void*)0,&l_1495[0],(void*)0}},{{&l_1495[0],&l_1495[0],&l_1495[0]},{(void*)0,&l_1495[0],(void*)0},{&l_1495[0],&l_1495[0],&l_1495[0]}}};
                  int32_t l_1510[4][10] = {{0L,1L,(-7L),0L,1L,0L,(-7L),1L,0L,0x6992916FL},{0x69364C21L,1L,(-9L),0x69364C21L,1L,0L,1L,1L,0L,1L},{0x69364C21L,(-7L),(-7L),0x69364C21L,0x6992916FL,0L,1L,(-7L),0L,1L},{0L,1L,(-7L),0L,1L,0L,(-7L),1L,0L,0x6992916FL}};
                  union U0 * const l_1585[8][1] = {{&g_4},{&g_4},{&g_4},{&g_4},{&g_4},{&g_4},{&g_4},{&g_4}};
                  uint8_t l_1589[5][8][2] = {{{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL}},{{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL}},{{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL}},{{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL}},{{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL},{0xC6L,255UL},{0x90L,255UL}}};
                  int8_t *l_1594 = &g_805;
                  int32_t *l_1647[10] = {&l_1405[0][2][3],&l_1405[0][0][8],&l_1514,&l_1514,&l_1405[0][0][8],&l_1405[0][2][3],&l_1405[0][0][8],&l_1514,&l_1514,(void*)0};
                  int i, j, k;
                  for (i = 0; i < 2; i++)
                      l_1495[i] = &l_1496;
              }
          }
          for (g_213 = 29; (g_213 > 4); g_213 = safe_sub_func_uint16_t_u_u(g_213, 1))
          { /* block id: 654 */
              return l_1563[3];
          }
          for (l_1578 = 0; (l_1578 < 36); ++l_1578)
          { /* block id: 659 */
              int8_t l_1718[7] = {1L,8L,1L,1L,8L,1L,1L};
              int8_t l_1724 = 0xC8L;
              int32_t l_1725 = (-1L);
              union U2 **l_1751 = &g_350;
              int32_t l_1796 = 0xAC974107L;
              int32_t l_1797 = 0x12368895L;
              int32_t l_1798 = (-9L);
              int32_t l_1799[9] = {0xDECF46DDL,0xDECF46DDL,0x472A6C2BL,0xDECF46DDL,0xDECF46DDL,0x472A6C2BL,0xDECF46DDL,0xDECF46DDL,0x472A6C2BL};
              int i;
              if (l_1619[0][2][1])
                  break;
              for (l_1659 = 0; (l_1659 <= 2); l_1659 += 1)
              { /* block id: 663 */
                  uint32_t *l_1715 = &g_279;
                  uint8_t *l_1722 = (void*)0;
                  uint8_t *l_1723 = &l_1699;
                  int32_t l_1726 = 0x41842B55L;
                  int32_t *l_1727 = &g_1225.f1;
                  int32_t *l_1743[7][8] = {{&l_1398[2].f0,&l_1398[2].f0,&g_640,&l_1344,&l_1408.f0,&g_640,&l_1408.f0,&l_1344},{(void*)0,&l_1344,(void*)0,&l_1398[2].f0,&l_1344,&l_1408.f0,&l_1408.f0,&l_1344},{&l_1344,&l_1408.f0,&l_1408.f0,&l_1344,&l_1398[2].f0,(void*)0,&l_1344,(void*)0},{&l_1344,&l_1408.f0,&g_640,&l_1408.f0,&l_1344,&g_640,&l_1398[2].f0,&l_1398[2].f0},{(void*)0,&l_1408.f0,&l_1398[2].f0,&l_1398[2].f0,&l_1408.f0,(void*)0,&l_1408.f0,&l_1408.f0},{&l_1398[2].f0,&l_1408.f0,&l_1398[2].f0,&l_1398[2].f0,&l_1398[2].f0,&l_1408.f0,&l_1398[2].f0,(void*)0},{&l_1408.f0,&l_1344,&g_640,&l_1398[2].f0,&l_1398[2].f0,&g_640,&l_1344,&l_1408.f0}};
                  const uint8_t l_1790 = 0xB1L;
                  int16_t l_1791 = (-1L);
                  int32_t l_1803 = 1L;
                  int32_t l_1804 = 1L;
                  int32_t l_1805 = 4L;
                  int32_t l_1806 = 0xA0858AA5L;
                  int32_t l_1807 = 0x3F9C62ACL;
                  int32_t l_1808 = 0xB5FBBEB8L;
                  int32_t l_1809 = 0xEADD6426L;
                  int32_t l_1810[4];
                  uint32_t l_1811 = 0x719EEF9EL;
                  int8_t l_1814 = 0x09L;
                  union U1 * const ****l_1821[6][8] = {{&l_1818[1][0],&l_1818[0][0],&l_1818[0][0],&l_1818[0][0],&l_1818[0][0],&l_1818[1][0],&l_1818[1][0],&l_1818[1][0]},{&l_1818[0][0],&l_1818[1][0],&l_1818[1][0],&l_1818[1][0],&l_1818[0][0],&l_1818[0][0],&l_1818[0][0],&l_1818[0][0]},{&l_1818[1][0],&l_1818[1][0],&l_1818[1][0],&l_1818[1][0],(void*)0,&l_1818[0][0],(void*)0,&l_1818[1][0]},{&l_1818[1][0],(void*)0,&l_1818[1][0],&l_1818[0][0],&l_1818[1][0],&l_1818[1][0],&l_1818[0][0],&l_1818[1][0]},{(void*)0,(void*)0,&l_1818[1][0],&l_1818[0][0],&l_1818[0][0],&l_1818[0][0],&l_1818[1][0],(void*)0},{(void*)0,&l_1818[1][0],&l_1818[0][0],&l_1818[1][0],&l_1818[1][0],&l_1818[0][0],&l_1818[1][0],(void*)0}};
                  int i, j;
                  for (i = 0; i < 4; i++)
                      l_1810[i] = (-3L);
                  (*l_1727) |= (safe_rshift_func_uint8_t_u_u((((l_1725 = (safe_add_func_uint64_t_u_u((g_1696[1] , (safe_div_func_uint8_t_u_u(((l_1700 ^= l_1699) && (0xE96C6F7EL < (safe_div_func_uint64_t_u_u((((((*g_392) = p_29) , ((!(((((*l_1723) = (safe_div_func_int64_t_s_s((safe_sub_func_uint64_t_u_u((p_30 , ((!(((safe_lshift_func_int16_t_s_s(p_27, (safe_mul_func_int8_t_s_s((((((safe_mul_func_uint16_t_u_u((*g_184), ((l_1718[1] = (--(*l_1715))) <= (l_1398[2].f0 | (safe_mod_func_uint8_t_u_u(246UL, p_27)))))) , g_1721) , &g_1161[l_1659][(l_1659 + 5)]) == &g_1161[l_1659][(l_1659 + 6)]) && (*g_215)), 0xBCL)))) & 0x1EL) < g_640)) , (**g_107))), (-1L))), (*g_392)))) > p_29) != l_1297[1]) , 0xAFEEL)) != 1L)) != 2L) ^ p_29), 0x8F81F04308D1A861LL)))), l_1724))), g_590))) , p_27) | l_1726), l_1297[1]));
                  if ((((safe_mod_func_uint16_t_u_u(((~(safe_rshift_func_int8_t_s_u((safe_div_func_int8_t_s_s((+(*l_1727)), l_1718[3])), (((*l_1464) = l_1736) == ((safe_sub_func_int8_t_s_s(((((safe_add_func_int8_t_s_s((((g_1112 = 0UL) != ((*p_26) = ((l_1408.f1 |= (safe_div_func_int16_t_s_s(((g_4.f0 = (l_1578 , p_30)) , ((((safe_mod_func_int8_t_s_s(((g_187[l_1659]--) > ((safe_rshift_func_int8_t_s_s((l_1750[6][1] == l_1751), (((***g_611) | l_1398[2].f4) , (*p_28)))) != l_1299[8])), p_29)) >= l_1718[4]) <= 0xAB50L) , (*g_613))), (*g_184)))) <= l_1297[0]))) >= p_29), p_29)) & 1UL) , (**g_493)) != (void*)0), l_1725)) , &p_29))))) & 0x97L), 0x8611L)) || (*p_26)) >= p_27))
                  { /* block id: 677 */
                      int32_t l_1756[1];
                      int i;
                      for (i = 0; i < 1; i++)
                          l_1756[i] = 0x0FB57FD4L;
                      l_1400.f1 = (safe_div_func_uint16_t_u_u((safe_add_func_uint16_t_u_u(((l_1408.f1 = l_1756[0]) > ((((*g_184) < l_1405[0][0][8]) && ((((void*)0 == (*l_1464)) || (p_29 == ((safe_div_func_int32_t_s_s(((**g_792) ^= ((*l_1727) = (safe_div_func_uint32_t_u_u((safe_lshift_func_uint8_t_u_u(((safe_rshift_func_uint8_t_u_s((l_1405[0][0][8] = (((safe_rshift_func_int8_t_s_s(((*g_65) = (safe_add_func_uint64_t_u_u((safe_sub_func_uint8_t_u_u(((((**l_1498) = p_27) >= (safe_rshift_func_uint16_t_u_u(((((safe_add_func_int16_t_s_s(p_29, (safe_lshift_func_int8_t_s_s((*l_1727), 3)))) ^ l_1724) > 0x818299D7A3B82F5DLL) == (*g_392)), 14))) >= (*g_392)), 4UL)), l_1756[0]))), 4)) > p_29) , 0x9DL)), 2)) | l_1724), 7)), 0x89BC73CAL)))), 1L)) && 0xAEL))) <= p_29)) , (*p_26))), 0UL)), (**g_612)));
                      if ((**g_648))
                          break;
                      if (l_1725)
                          break;
                      (**g_792) &= ((((l_1725 = ((safe_add_func_uint8_t_u_u(((((8UL | (safe_rshift_func_int16_t_s_u(((p_27 == ((((*l_1715)++) < 7L) | 0x37L)) && p_30), 7))) != 0x16F355BEL) && (safe_mod_func_uint8_t_u_u((((*g_284) , (safe_sub_func_int64_t_s_s((((((safe_div_func_uint8_t_u_u(0x42L, (g_1789[1] , l_1725))) != 0xE3F03C4EL) > 7UL) == l_1756[0]) && l_1790), 0x81333155AF8C6BA3LL))) , p_27), l_1756[0]))) != l_1791), (****g_492))) == (*l_1727))) > (*p_26)) && l_1725) | l_1405[0][0][8]);
                  }
                  else
                  { /* block id: 690 */
                      int32_t *l_1792 = &l_1405[0][1][2];
                      int32_t *l_1793 = (void*)0;
                      int32_t *l_1794[1][10][8] = {{{&l_1398[2].f1,&l_1398[2].f1,&l_1726,&l_1725,&l_1398[2].f1,&l_1726,(void*)0,(void*)0},{&g_96,&l_1408.f1,&l_1725,&l_1726,&g_213,&g_96,(void*)0,(void*)0},{&l_1408.f1,&g_1225.f1,&l_1398[2].f1,&l_1725,&g_96,&l_1725,&l_1398[2].f1,&g_1225.f1},{&l_1725,&l_1726,&g_96,&l_1726,(void*)0,&l_1725,&g_1225.f1,&g_96},{(void*)0,&l_1725,(void*)0,&l_1398[2].f1,&l_1725,&l_1405[0][0][8],&g_1225.f1,&l_1398[2].f1},{&l_1299[3],&l_1398[2].f1,&g_96,&l_1725,&l_1725,&g_96,&l_1398[2].f1,&l_1299[3]},{&l_1725,&g_96,&l_1398[2].f1,&l_1299[3],&l_1398[2].f1,&l_1726,(void*)0,&g_96},{&l_1398[2].f1,(void*)0,&l_1725,(void*)0,&l_1299[3],&l_1726,(void*)0,&l_1725},{&l_1726,&g_96,&l_1726,&l_1725,&l_1726,(void*)0,&g_96,&g_213},{&l_1398[2].f1,&l_1725,&l_1725,&l_1299[3],&l_1725,&l_1398[2].f1,&l_1726,(void*)0}}};
                      uint8_t l_1815 = 6UL;
                      int i, j, k;
                      l_1800++;
                      --l_1811;
                      l_1815--;
                  }
                  l_1818[1][0] = l_1818[1][0];
              }
              (*g_349) = ((*g_1133) , (void*)0);
              for (g_96 = 0; (g_96 > (-7)); g_96--)
              { /* block id: 700 */
                  int32_t *l_1824[1][9] = {{&l_1799[0],(void*)0,&l_1799[0],(void*)0,&l_1799[0],(void*)0,&l_1799[0],(void*)0,&l_1799[0]}};
                  int16_t l_1825 = 0x333BL;
                  int i, j;
                  l_1825 = ((**g_792) = p_30);
              }
          }
      }
      else
      { /* block id: 705 */
          int64_t l_1828 = 0xE9E0D35A73ECD16CLL;
          int32_t l_1830[9][7][2] = {{{2L,0x36E8DFC8L},{(-4L),0x36E8DFC8L},{2L,2L},{(-4L),0xECBF593AL},{0xFDA99A29L,8L},{(-1L),0L},{0x36E8DFC8L,(-1L)}},{{0x96DEE102L,9L},{0x96DEE102L,(-1L)},{0x36E8DFC8L,0L},{(-1L),8L},{0xFDA99A29L,0xECBF593AL},{(-4L),2L},{2L,0x36E8DFC8L}},{{(-4L),0x36E8DFC8L},{2L,2L},{(-4L),0xECBF593AL},{0xFDA99A29L,8L},{(-1L),0L},{0x36E8DFC8L,(-1L)},{0x96DEE102L,9L}},{{0x96DEE102L,(-1L)},{0x36E8DFC8L,0L},{(-1L),8L},{0xFDA99A29L,0xECBF593AL},{(-4L),2L},{2L,0x36E8DFC8L},{(-4L),0x36E8DFC8L}},{{2L,2L},{(-4L),0xECBF593AL},{0xFDA99A29L,8L},{(-1L),0L},{0x36E8DFC8L,(-1L)},{0x96DEE102L,9L},{0x96DEE102L,(-1L)}},{{0x36E8DFC8L,0L},{(-1L),8L},{0xFDA99A29L,0xECBF593AL},{(-4L),2L},{2L,0x36E8DFC8L},{(-4L),0x36E8DFC8L},{2L,2L}},{{(-4L),0xECBF593AL},{0xFDA99A29L,8L},{(-1L),0L},{0x36E8DFC8L,(-1L)},{0x96DEE102L,9L},{0x96DEE102L,(-1L)},{0x36E8DFC8L,0L}},{{(-1L),8L},{0xFDA99A29L,0xECBF593AL},{(-4L),2L},{2L,0x36E8DFC8L},{(-4L),0x36E8DFC8L},{2L,2L},{(-4L),0xECBF593AL}},{{0xFDA99A29L,8L},{(-1L),0L},{0x36E8DFC8L,(-1L)},{0x96DEE102L,9L},{0x96DEE102L,(-1L)},{0x36E8DFC8L,0L},{(-1L),8L}}};
          uint32_t l_1861[4] = {0x9081DD0CL,0x9081DD0CL,0x9081DD0CL,0x9081DD0CL};
          uint8_t **l_1883 = (void*)0;
          union U1 *l_1919 = &g_64;
          uint16_t l_2003 = 0xFE8DL;
          union U1 ***l_2017 = (void*)0;
          union U1 ****l_2016[3];
          union U1 *****l_2015 = &l_2016[2];
          uint32_t *l_2054 = &g_913;
          uint32_t **l_2053[6] = {&l_2054,&l_2054,&l_2054,&l_2054,&l_2054,&l_2054};
          int8_t *l_2088 = (void*)0;
          int32_t l_2167 = 0x016B2C30L;
          int16_t l_2205 = 0xCEBEL;
          uint16_t l_2393 = 0x9950L;
          uint32_t l_2501 = 0x2B02D377L;
          int i, j, k;
          for (i = 0; i < 3; i++)
              l_2016[i] = &l_2017;
          for (g_1088.f0 = 0; (g_1088.f0 <= (-2)); g_1088.f0--)
          { /* block id: 708 */
              int32_t *l_1829[8] = {(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0};
              union U0 l_1852 = {0x9475A54BL};
              uint64_t ***l_1854[9] = {&l_1464,&l_1464,&l_1464,&l_1464,&l_1464,&l_1464,&l_1464,&l_1464,&l_1464};
              uint64_t ****l_1853 = &l_1854[2];
              int32_t *l_1860 = &l_1830[2][6][1];
              uint32_t *l_1862 = &l_1578;
              int64_t *l_1863 = &l_1400.f2;
              int64_t *l_1864 = (void*)0;
              union U1 * const l_1950 = &g_1951;
              union U1 * const *l_1949 = &l_1950;
              union U1 * const **l_1948[6] = {&l_1949,(void*)0,(void*)0,&l_1949,(void*)0,(void*)0};
              union U1 **l_1955[3];
              uint16_t *l_1960 = &g_1922;
              uint32_t l_1989 = 0UL;
              union U1 ***l_2014 = &l_1955[2];
              union U1 ****l_2013 = &l_2014;
              union U1 ***** const l_2012[5][6] = {{&l_2013,&l_2013,&l_2013,&l_2013,&l_2013,&l_2013},{&l_2013,&l_2013,&l_2013,&l_2013,&l_2013,&l_2013},{&l_2013,&l_2013,&l_2013,&l_2013,&l_2013,&l_2013},{&l_2013,&l_2013,&l_2013,&l_2013,&l_2013,&l_2013},{&l_2013,&l_2013,&l_2013,&l_2013,&l_2013,&l_2013}};
              int16_t l_2018[6];
              int i, j;
              for (i = 0; i < 3; i++)
                  l_1955[i] = &g_1133;
              for (i = 0; i < 6; i++)
                  l_2018[i] = 0x2D41L;
              --l_1831;
          }
  lbl_2238:
          for (l_1662 = 0; (l_1662 >= 44); l_1662 = safe_add_func_int16_t_s_s(l_1662, 3))
          { /* block id: 779 */
              int32_t l_2029 = 0x53AA24B0L;
              int8_t l_2038 = 0xCCL;
              int32_t l_2039 = 3L;
              int32_t l_2040 = (-1L);
              int32_t l_2041 = 3L;
              int16_t ****l_2068 = (void*)0;
              int64_t l_2069 = 0L;
              uint8_t l_2096 = 0x29L;
              int8_t ***l_2132 = &l_1962;
              int32_t l_2152 = 0L;
              int32_t l_2154 = 0L;
              int32_t l_2156[3];
              uint8_t l_2170 = 0x31L;
              uint32_t l_2191[8][8] = {{4294967295UL,1UL,4294967290UL,0x1055D91DL,0x4F4A0B0EL,0UL,0UL,0x4F4A0B0EL},{4294967295UL,4294967295UL,4294967295UL,4294967295UL,0UL,0x1055D91DL,1UL,4294967291UL},{4UL,4294967295UL,0x1055D91DL,0UL,4294967295UL,0x24387E24L,4294967291UL,0x24387E24L},{0x4F067E1BL,4294967295UL,1UL,4294967295UL,0x4F067E1BL,0x1055D91DL,4294967295UL,0x6F9CA9BAL},{0x1055D91DL,4294967295UL,0x4F067E1BL,4294967295UL,1UL,0UL,4294967295UL,4294967295UL},{4294967291UL,1UL,0x4F067E1BL,0x4F067E1BL,1UL,4294967291UL,4294967295UL,1UL},{1UL,0x24387E24L,1UL,0x6F9CA9BAL,4294967295UL,4294967295UL,4294967291UL,0x1055D91DL},{1UL,4UL,0x1055D91DL,0x6F9CA9BAL,0x1055D91DL,4UL,1UL,1UL}};
              int8_t l_2194 = 0L;
              int32_t l_2230 = 0x2E8D01AEL;
              const uint32_t *l_2232[1][3][2];
              const uint32_t **l_2231 = &l_2232[0][0][1];
              int i, j, k;
              for (i = 0; i < 3; i++)
                  l_2156[i] = 0L;
              for (i = 0; i < 1; i++)
              {
                  for (j = 0; j < 3; j++)
                  {
                      for (k = 0; k < 2; k++)
                          l_2232[i][j][k] = &g_43[0];
                  }
              }
              for (g_1112 = 0; (g_1112 >= 29); g_1112 = safe_add_func_int64_t_s_s(g_1112, 9))
              { /* block id: 782 */
                  uint64_t l_2028 = 0x68B675C2D3AEB60CLL;
                  int32_t l_2033[6] = {0L,0L,0L,0L,0L,0L};
                  int i;
                  l_2029 = l_2028;
                  for (l_1344 = (-19); (l_1344 != 23); l_1344 = safe_add_func_int32_t_s_s(l_1344, 1))
                  { /* block id: 786 */
                      union U2 *l_2032 = &g_1088;
                      int32_t *l_2034 = &g_1225.f1;
                      int32_t *l_2035 = &l_1299[4];
                      int32_t *l_2036 = &l_1830[2][4][1];
                      int32_t *l_2037[9][10][2] = {{{&l_1400.f1,&l_1398[2].f1},{&l_2033[0],&l_1830[2][6][1]},{&g_96,(void*)0},{&g_96,&l_1299[4]},{&g_213,&l_2033[3]},{&l_1299[4],&g_96},{&l_2033[0],&l_2033[2]},{&l_2033[0],(void*)0},{&g_1225.f1,&l_2033[0]},{&l_1299[4],(void*)0}},{{&g_213,&l_1299[4]},{&l_1299[4],&l_2033[0]},{&g_213,&l_1299[4]},{&l_1299[4],&g_213},{&l_1830[2][6][1],&g_213},{&g_213,(void*)0},{&l_2033[0],(void*)0},{&l_1299[5],(void*)0},{&g_1225.f1,&l_1830[2][6][1]},{&l_2033[0],&g_213}},{{&l_1398[2].f1,&l_1400.f1},{&l_1398[2].f1,&l_1400.f1},{&l_1398[2].f1,&g_213},{&l_2033[0],&l_1830[2][6][1]},{&g_1225.f1,(void*)0},{&l_1299[5],(void*)0},{&l_2033[0],(void*)0},{&g_213,&g_213},{&l_1830[2][6][1],&g_213},{&l_1299[4],&l_1299[4]}},{{&g_213,&l_2033[0]},{&l_1299[4],&l_1299[4]},{&g_213,(void*)0},{&l_1299[4],&l_2033[0]},{&g_1225.f1,(void*)0},{&l_2033[0],&l_2033[2]},{&l_2033[0],&g_96},{&l_1299[4],&l_2033[3]},{&g_213,&l_1299[4]},{&g_96,(void*)0}},{{&g_96,&l_1830[2][6][1]},{&l_2033[0],&l_1398[2].f1},{&l_1400.f1,&l_2033[5]},{&l_1299[4],&g_1225.f1},{(void*)0,&l_1299[4]},{&l_1299[4],&g_213},{&g_1225.f1,&l_1830[0][0][0]},{&l_2033[1],&l_2033[0]},{(void*)0,&l_1398[2].f1},{&l_1398[2].f1,&l_1398[2].f1}},{{(void*)0,&l_1299[4]},{&l_2033[0],&l_2033[1]},{&l_2033[0],&l_1398[2].f1},{&l_2033[0],&l_2033[0]},{(void*)0,&l_1299[4]},{(void*)0,&l_2033[0]},{&l_2033[0],&l_1398[2].f1},{&l_2033[0],&l_2033[1]},{&l_2033[0],&l_1830[5][5][1]},{&l_2033[0],&g_1225.f1}},{{&g_1225.f1,&l_1299[4]},{&l_1299[4],(void*)0},{&l_2033[2],&l_2033[0]},{&l_1299[4],&g_96},{&l_1299[4],&g_1225.f1},{&g_1225.f1,(void*)0},{&l_1398[2].f1,&g_4.f1},{&g_213,&l_2033[5]},{&l_1299[4],(void*)0},{&l_1398[2].f1,&g_213}},{{&g_96,&g_1225.f1},{&g_1225.f1,&g_96},{&g_1225.f1,(void*)0},{&g_213,&l_1830[6][1][1]},{(void*)0,&l_2033[0]},{&l_1299[4],&g_213},{&g_1225.f1,&l_2033[0]},{&l_2033[0],&l_1398[2].f1},{&l_2033[2],(void*)0},{&g_96,&l_1830[0][0][0]}},{{&l_1400.f1,&l_1398[2].f1},{&l_2033[0],&g_96},{&g_96,&l_1299[4]},{&l_1398[2].f1,&l_1299[4]},{&l_1398[2].f1,&g_96},{(void*)0,(void*)0},{(void*)0,&l_1299[5]},{&l_2033[3],&g_213},{(void*)0,&g_213},{&l_2033[3],&l_1299[5]}}};
                      uint64_t l_2042 = 0UL;
                      int i, j, k;
                      (*g_349) = l_2032;
                      l_2042--;
                      if (p_29)
                          break;
                  }
              }
          }
          for (g_1112 = 0; (g_1112 <= 1); g_1112 += 1)
          { /* block id: 874 */
              uint32_t l_2240 = 1UL;
              int16_t * const ** const *l_2280 = &l_1497;
              int8_t ***l_2288[1][2][1];
              int32_t l_2298 = 0x4B1020F5L;
              int32_t l_2299 = 0x2211F800L;
              int32_t l_2301[9][4] = {{(-5L),0L,(-5L),0xC7DF3B6FL},{(-5L),0xC7DF3B6FL,0xC7DF3B6FL,(-5L)},{0xDF0AA3CEL,0xC7DF3B6FL,(-1L),0xC7DF3B6FL},{0xC7DF3B6FL,0L,(-1L),(-1L)},{0xDF0AA3CEL,0xDF0AA3CEL,0xC7DF3B6FL,(-1L)},{(-5L),0L,(-5L),0xC7DF3B6FL},{(-5L),0xC7DF3B6FL,0xC7DF3B6FL,(-5L)},{0xDF0AA3CEL,0xC7DF3B6FL,(-1L),0xC7DF3B6FL},{0xC7DF3B6FL,0L,(-1L),(-1L)}};
              uint16_t l_2302 = 1UL;
              uint64_t ***l_2354 = &g_2260;
              union U0 l_2388 = {-3L};
              int32_t *l_2421 = &l_1400.f1;
              union U2 **l_2439[1];
              uint16_t ***l_2470 = (void*)0;
              int i, j, k;
              for (i = 0; i < 1; i++)
              {
                  for (j = 0; j < 2; j++)
                  {
                      for (k = 0; k < 1; k++)
                          l_2288[i][j][k] = &l_1962;
                  }
              }
              for (i = 0; i < 1; i++)
                  l_2439[i] = &g_350;
              for (l_1400.f0 = 0; l_1400.f0 < 7; l_1400.f0 += 1)
              {
                  g_274[l_1400.f0] = 7L;
              }
              for (l_1659 = 0; (l_1659 <= 1); l_1659 += 1)
              { /* block id: 878 */
                  if (g_640)
                      goto lbl_2238;
                  for (g_1470.f2 = 0; (g_1470.f2 <= 1); g_1470.f2 += 1)
                  { /* block id: 882 */
                      int i, j, k;
                      if (g_2079[g_1112][g_1112][(l_1659 + 1)])
                          break;
                      for (g_1929.f1 = 0; (g_1929.f1 <= 1); g_1929.f1 += 1)
                      { /* block id: 886 */
                          int32_t *l_2239[1];
                          int i;
                          for (i = 0; i < 1; i++)
                              l_2239[i] = &l_1400.f1;
                          ++l_2240;
                      }
                  }
              }
          }
      }
      return l_2508;
  }
  
  
  /* ------------------------------------------ */
  /* 
   * reads : g_215 g_213
   * writes: g_215
   */
  int32_t  func_33(uint16_t  p_34, uint32_t  p_35, int32_t  p_36, int8_t * p_37)
  { /* block id: 419 */
      int32_t * const l_1209 = &g_213;
      int32_t **l_1211 = &g_215;
      (*l_1211) = l_1209;
      return (**l_1211);
  }
  
  
  /* ------------------------------------------ */
  /* 
   * reads : g_32 g_274
   * writes: g_32 g_215 g_319.f1
   */
  uint16_t  func_38(uint64_t  p_39, uint32_t  p_40, uint8_t  p_41)
  { /* block id: 214 */
      uint32_t l_654 = 0x3245689AL;
      int8_t *l_661 = &g_32;
      int16_t ** const *l_665 = (void*)0;
      uint32_t l_706 = 18446744073709551614UL;
      int32_t l_710 = 1L;
      int32_t **l_794 = &g_215;
      union U0 l_810 = {0x5761F8CDL};
      int8_t *****l_874 = (void*)0;
      int8_t l_970[1][10][2] = {{{6L,1L},{1L,6L},{1L,1L},{6L,1L},{1L,6L},{1L,1L},{6L,1L},{1L,6L},{1L,1L},{6L,1L}}};
      int32_t l_971 = (-1L);
      int32_t l_972 = 0x9C359B96L;
      int32_t l_973 = 0L;
      uint32_t l_1007 = 18446744073709551615UL;
      int64_t l_1008 = (-1L);
      int16_t l_1063 = (-9L);
      int64_t l_1074 = 0xA9EC4E00CFEB6492LL;
      uint32_t l_1089 = 1UL;
      uint8_t *l_1090 = &l_810.f3;
      union U1 *l_1116[5];
      int32_t l_1122 = (-1L);
      uint16_t l_1208 = 0UL;
      int i, j, k;
      for (i = 0; i < 5; i++)
          l_1116[i] = &g_1117;
      for (g_32 = 0; (g_32 <= 1); g_32 += 1)
      { /* block id: 217 */
          int32_t *l_649 = (void*)0;
          int32_t **l_651 = (void*)0;
          int32_t **l_652 = &g_215;
          const union U0 *l_668 = &g_4;
          const union U0 **l_667 = &l_668;
          int16_t *l_764[2];
          int16_t **l_763[8] = {&l_764[0],&l_764[1],&l_764[1],&l_764[0],&l_764[1],&l_764[1],&l_764[0],&l_764[1]};
          union U2 *l_802 = &g_319;
          const int32_t l_836 = 0x7A60C50AL;
          int32_t l_837 = 7L;
          const union U0 l_908 = {6L};
          const int64_t *l_919 = &g_590;
          const int64_t **l_918 = &l_919;
          int i;
          for (i = 0; i < 2; i++)
              l_764[i] = &g_274[3];
          (*l_652) = l_649;
          for (g_319.f1 = 0; (g_319.f1 <= 1); g_319.f1 += 1)
          { /* block id: 221 */
              int32_t l_653 = (-5L);
              int8_t *l_660 = (void*)0;
              int32_t l_669 = 0L;
              int32_t l_709 = 0xE95144E2L;
              const int32_t *l_724 = &g_4.f1;
              const int32_t **l_723 = &l_724;
              union U2 **l_735 = &g_350;
              union U0 l_739 = {0x3E959D9EL};
              union U1 *l_783 = &g_372;
              uint16_t *l_800 = &g_185[7];
              int16_t *l_945 = &g_274[2];
              int i;
              l_653 ^= g_274[(g_32 + 4)];
          }
      }
      return l_1208;
  }
  
  
  /* ------------------------------------------ */
  /* 
   * reads : g_64 g_4.f3 g_32 g_4.f1 g_80 g_53.f0 g_96 g_4.f4 g_100 g_76 g_4.f0 g_107 g_109 g_65 g_139 g_156 g_184 g_187 g_141 g_185 g_648
   * writes: g_65 g_76 g_79 g_96 g_100 g_32 g_156 g_184 g_187 g_64.f4 g_215
   */
  uint8_t  func_49(int8_t * p_50, uint16_t  p_51, uint8_t  p_52)
  { /* block id: 5 */
      int8_t *l_66 = &g_32;
      int8_t l_71 = 0x17L;
      int32_t l_74 = 4L;
      uint64_t *l_75 = &g_76;
      int32_t l_77 = (-1L);
      uint64_t *l_78 = &g_79;
      int64_t l_138 = 0x9369D4055D0160B5LL;
      const union U1 *l_196 = &g_64;
      uint16_t *l_231 = (void*)0;
      int8_t * const *l_240[6][5] = {{&g_65,&l_66,&g_65,&l_66,&g_65},{&l_66,&l_66,&l_66,&l_66,&l_66},{&g_65,&l_66,&g_65,&l_66,&g_65},{&l_66,&l_66,&l_66,&l_66,&l_66},{&g_65,&l_66,&g_65,&l_66,&g_65},{&l_66,&l_66,&l_66,&l_66,&l_66}};
      int8_t * const **l_239 = &l_240[4][4];
      int32_t l_358 = (-1L);
      int32_t l_359 = 0x46EA9A46L;
      int64_t l_363 = 0L;
      uint8_t **l_387 = (void*)0;
      int32_t l_401 = (-1L);
      uint16_t *l_427 = &g_185[3];
      int32_t *l_439 = &g_96;
      const int8_t *** const *l_497 = &g_493;
      int32_t l_542 = 0xAA7425BCL;
      int32_t l_543[8][9] = {{0xA1B5A141L,0x76821305L,2L,(-1L),(-1L),2L,0x76821305L,0xA1B5A141L,0x8266EE76L},{0xDF5A1CEBL,2L,(-1L),0L,(-1L),0x791EFC5FL,(-5L),(-10L),(-10L)},{0x0E5614A7L,0x3973744CL,0x0E5614A7L,0x8266EE76L,0x0E5614A7L,7L,0xA1B5A141L,2L,0L},{0x5A86136CL,0x8E44603CL,9L,1L,2L,0L,(-10L),0xF33F8F73L,(-10L)},{1L,0x3F8FA77AL,0x3973744CL,0x3973744CL,0x3F8FA77AL,1L,0L,2L,0xA1B5A141L},{0xF33F8F73L,0L,0x73082A61L,0L,0x5A86136CL,0xBFEEABC6L,2L,2L,0xBFEEABC6L},{0x3973744CL,0L,0xA1B5A141L,0L,0x3973744CL,0x0E5614A7L,0L,0x8266EE76L,0x6BF4AED4L},{(-5L),2L,0xF33F8F73L,1L,0L,0x8E44603CL,(-10L),0x8E44603CL,0L}};
      union U2 *l_626[1];
      int i, j;
      for (i = 0; i < 1; i++)
          l_626[i] = &g_319;
      if (((safe_rshift_func_int8_t_s_u(((safe_div_func_uint64_t_u_u(p_52, (safe_mul_func_int16_t_s_s(p_52, (g_64 , (((*l_78) = (l_77 = ((*l_75) = (l_74 = (((g_65 = p_50) == l_66) >= ((safe_sub_func_uint64_t_u_u((safe_lshift_func_uint8_t_u_u(l_71, 1)), (((safe_div_func_uint64_t_u_u(g_4.f3, g_32)) <= g_32) && 255UL))) , 1UL)))))) ^ l_71)))))) | 0x72B46FAC5ADF6F6DLL), g_4.f3)) == g_4.f1))
      { /* block id: 11 */
          int32_t * volatile l_81 = &l_77;/* VOLATILE GLOBAL l_81 */
          l_81 = g_80;
      }
      else
      { /* block id: 13 */
          const uint32_t *l_84 = &g_4.f4;
          int32_t *l_94 = &l_77;
          int32_t *l_95 = &g_96;
          uint8_t *l_99 = &g_100;
          uint64_t *l_103 = (void*)0;
          union U0 *l_193 = &g_4;
          union U0 **l_194 = (void*)0;
          union U0 **l_195 = &l_193;
          const union U1 **l_197[5] = {&l_196,&l_196,&l_196,&l_196,&l_196};
          int i;
          if (((safe_mod_func_int64_t_s_s((((l_84 != (void*)0) < ((safe_div_func_uint16_t_u_u((safe_mod_func_uint8_t_u_u(((safe_mul_func_int8_t_s_s((*p_50), ((~((safe_mod_func_int32_t_s_s(((*l_94) &= l_74), ((*l_95) &= g_53.f0))) == p_51)) < (safe_rshift_func_int8_t_s_u(((*p_50) != (((*p_50) , ((((*l_99) ^= (9UL < g_4.f4)) < l_74) , p_52)) , (*p_50))), 0))))) || 0UL), g_76)), 0x0F89L)) < (-4L))) , g_4.f0), l_74)) , (*l_94)))
          { /* block id: 17 */
              int32_t *l_101 = &l_77;
              uint64_t **l_104 = &l_78;
              int8_t **l_112 = &l_66;
              uint8_t *l_130 = &g_4.f3;
              uint8_t l_136 = 0x15L;
              uint16_t *l_137 = (void*)0;
              l_101 = &g_96;
              (*l_101) ^= ((+(((((*l_104) = l_103) != (void*)0) || 1L) < (((0x83L != ((safe_mod_func_uint8_t_u_u(((void*)0 == g_107), g_4.f4)) >= (safe_mod_func_uint8_t_u_u((l_99 != ((*l_112) = &g_32)), l_77)))) || p_52) || 1UL))) , p_51);
              if ((safe_div_func_int8_t_s_s((l_71 , (safe_rshift_func_uint8_t_u_s(((safe_add_func_uint8_t_u_u(((*l_99) = (((2L | (safe_mul_func_uint8_t_u_u((((safe_mod_func_int64_t_s_s((safe_lshift_func_int16_t_s_u(g_109, (safe_lshift_func_uint16_t_u_u(((*l_95) = (safe_sub_func_uint64_t_u_u((g_79 = ((((((+((((l_130 != l_99) , (safe_add_func_int64_t_s_s((+(l_95 == (void*)0)), (((((p_52 , (safe_add_func_int32_t_s_s(0x369F8C36L, p_52))) , g_4.f0) < l_136) , (void*)0) != &g_32)))) , p_51) >= g_4.f4)) || g_4.f1) , p_51) == p_52) == (*p_50)) && (*p_50))), g_76))), p_52)))), g_4.f0)) & g_100) && g_4.f4), l_138))) ^ l_71) , g_4.f1)), 5L)) >= 251UL), 7))), (*g_65))))
              { /* block id: 25 */
                  uint32_t *l_140 = &g_141;
                  int8_t ** volatile * volatile *l_159 = &g_156;
                  (*l_94) = ((*l_95) = (((l_140 = g_139) == (void*)0) == (safe_div_func_int32_t_s_s(((((**l_112) = ((-8L) && (safe_rshift_func_uint8_t_u_u((safe_sub_func_uint16_t_u_u((safe_lshift_func_int8_t_s_u((safe_mul_func_int16_t_s_s((((*l_101) , (g_76 <= ((*l_101) != (*l_101)))) <= p_52), ((safe_sub_func_uint32_t_u_u(((safe_mul_func_uint8_t_u_u(g_96, (*l_94))) >= 0xBF39L), 0x70FE6C1EL)) && g_109))), (*l_95))), p_51)), g_100)))) == (*l_94)) | 0x0D7AL), l_74))));
                  (*l_159) = g_156;
              }
              else
              { /* block id: 31 */
                  uint64_t l_160 = 0x079C9DB8D8D308ECLL;
                  l_160++;
              }
          }
          else
          { /* block id: 34 */
              int8_t l_173 = 0x2EL;
              const int32_t l_188 = (-5L);
              int32_t l_190 = 0x5085CE8AL;
              for (p_51 = 8; (p_51 != 43); p_51 = safe_add_func_int16_t_s_s(p_51, 7))
              { /* block id: 37 */
                  uint16_t **l_186 = &g_184;
                  int64_t *l_189 = &g_64.f4;
                  l_190 = (((++(*l_75)) < ((*l_189) = (safe_sub_func_uint32_t_u_u((safe_sub_func_uint16_t_u_u((l_77 == ((-1L) | (((((&l_74 == l_94) > (safe_rshift_func_int8_t_s_u((l_173 < (safe_mul_func_uint16_t_u_u((safe_lshift_func_uint16_t_u_s((safe_mod_func_uint32_t_u_u(l_74, ((safe_sub_func_uint16_t_u_u(((safe_rshift_func_int8_t_s_u((((&g_108 != &g_108) >= (g_187[2] |= (((*l_186) = g_184) == (void*)0))) || 2L), l_173)) & (*p_50)), 1L)) ^ g_100))), g_141)), g_185[6]))), l_188))) || g_109) & p_51) , g_32))), g_4.f0)), g_185[8])))) >= l_173);
                  if (l_138)
                      continue;
              }
              l_190 |= p_51;
              l_190 |= (safe_rshift_func_int8_t_s_u(0xD6L, 7));
          }
          (*l_195) = l_193;
          l_196 = l_196;
      }
      for (l_74 = 0; (l_74 != 21); l_74 = safe_add_func_uint8_t_u_u(l_74, 3))
      { /* block id: 53 */
          int8_t *l_211 = &l_71;
          int32_t *l_217 = &l_74;
          uint64_t l_224 = 18446744073709551615UL;
          union U1 * const l_275 = (void*)0;
          uint16_t **l_285 = (void*)0;
          int16_t *l_343[6][6] = {{&g_277,&g_319.f0,&g_274[3],&g_277,&g_277,&g_274[3]},{&g_277,&g_277,&g_277,&g_274[2],(void*)0,&g_274[2]},{&g_319.f0,&g_277,&g_319.f0,&g_274[3],&g_277,&g_277},{&g_274[2],&g_319.f0,&g_319.f0,&g_274[2],&g_277,&g_274[2]},{&g_274[2],&g_274[2],&g_277,&g_274[2],&g_274[2],&g_274[3]},{&g_274[2],&g_274[2],&g_274[3],&g_274[3],&g_274[2],&g_274[2]}};
          int32_t l_360 = 0x42D0F614L;
          int32_t l_361 = 0x2868524FL;
          int32_t l_365 = 0x98DA6132L;
          int32_t l_366 = 0x84AD03F4L;
          int32_t l_367 = 0L;
          union U0 *l_453[10][6][4] = {{{&g_4,&g_4,&g_4,(void*)0},{&g_4,&g_4,(void*)0,&g_4},{&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,(void*)0},{&g_4,&g_4,&g_4,(void*)0},{&g_4,(void*)0,&g_4,(void*)0}},{{&g_4,&g_4,&g_4,&g_4},{&g_4,(void*)0,&g_4,&g_4},{&g_4,&g_4,(void*)0,(void*)0},{&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4}},{{&g_4,&g_4,&g_4,&g_4},{&g_4,(void*)0,(void*)0,(void*)0},{(void*)0,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,(void*)0},{&g_4,&g_4,&g_4,&g_4}},{{&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4},{&g_4,(void*)0,&g_4,&g_4},{&g_4,&g_4,&g_4,(void*)0},{(void*)0,&g_4,(void*)0,(void*)0},{&g_4,&g_4,&g_4,(void*)0}},{{&g_4,&g_4,&g_4,&g_4},{&g_4,(void*)0,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4},{&g_4,(void*)0,&g_4,&g_4},{(void*)0,&g_4,&g_4,&g_4}},{{&g_4,&g_4,(void*)0,(void*)0},{&g_4,&g_4,&g_4,&g_4},{&g_4,(void*)0,&g_4,&g_4},{(void*)0,&g_4,&g_4,&g_4},{(void*)0,&g_4,&g_4,&g_4},{&g_4,(void*)0,&g_4,&g_4}},{{&g_4,&g_4,&g_4,(void*)0},{(void*)0,&g_4,(void*)0,&g_4},{(void*)0,&g_4,&g_4,&g_4},{&g_4,(void*)0,&g_4,&g_4},{&g_4,&g_4,(void*)0,&g_4},{&g_4,&g_4,&g_4,&g_4}},{{&g_4,(void*)0,(void*)0,&g_4},{(void*)0,&g_4,&g_4,&g_4},{(void*)0,&g_4,&g_4,&g_4},{(void*)0,&g_4,&g_4,&g_4},{&g_4,(void*)0,&g_4,(void*)0},{(void*)0,&g_4,&g_4,&g_4}},{{&g_4,(void*)0,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,&g_4},{&g_4,&g_4,&g_4,(void*)0},{(void*)0,&g_4,&g_4,&g_4},{&g_4,(void*)0,&g_4,(void*)0}},{{(void*)0,&g_4,&g_4,&g_4},{(void*)0,(void*)0,&g_4,(void*)0},{(void*)0,(void*)0,(void*)0,&g_4},{&g_4,(void*)0,&g_4,(void*)0},{&g_4,&g_4,(void*)0,&g_4},{&g_4,&g_4,&g_4,&g_4}}};
          const int8_t * const *l_518 = &g_495;
          const int8_t * const **l_517 = &l_518;
          const int8_t * const ***l_516[6];
          const int8_t * const ****l_515 = &l_516[4];
          int32_t l_545 = 0x6746A294L;
          int32_t l_547 = (-5L);
          uint32_t l_576 = 0x4302A0E0L;
          int32_t l_602 = 0xAEFA8C9FL;
          int32_t l_603 = 3L;
          int32_t l_604 = (-7L);
          int32_t l_605 = 0x0D62B8F4L;
          int32_t l_606 = 1L;
          int32_t l_618 = (-1L);
          int i, j, k;
          for (i = 0; i < 6; i++)
              l_516[i] = &l_517;
          for (p_52 = 0; (p_52 <= 27); p_52 = safe_add_func_uint64_t_u_u(p_52, 9))
          { /* block id: 56 */
              int32_t *l_202 = &l_77;
              uint16_t **l_272[10][9] = {{&l_231,&g_184,&g_184,&l_231,&g_184,&g_184,(void*)0,(void*)0,&l_231},{&g_184,&g_184,&l_231,&g_184,(void*)0,(void*)0,&g_184,&l_231,&g_184},{&g_184,&l_231,(void*)0,(void*)0,&g_184,&g_184,&l_231,&g_184,&g_184},{&l_231,(void*)0,&g_184,&l_231,&l_231,&g_184,(void*)0,&l_231,&l_231},{&g_184,&l_231,&l_231,&g_184,&g_184,&l_231,&l_231,&g_184,&g_184},{&l_231,&g_184,&l_231,&l_231,&l_231,&g_184,(void*)0,&g_184,(void*)0},{&l_231,(void*)0,&l_231,&g_184,&g_184,&g_184,&l_231,&l_231,&l_231},{&g_184,&g_184,&g_184,&l_231,&g_184,&l_231,&g_184,&g_184,&l_231},{&g_184,&l_231,&l_231,&l_231,&g_184,&g_184,&l_231,&g_184,&l_231},{(void*)0,(void*)0,&g_184,&l_231,&g_184,&l_231,&g_184,&l_231,&l_231}};
              int16_t *l_273 = &g_274[2];
              int16_t *l_276 = &g_277;
              uint32_t *l_278 = &g_279;
              uint32_t *l_280 = &g_281;
              uint64_t l_345 = 0xFE9E5AFB12AC0744LL;
              int32_t l_346 = 0L;
              int32_t l_362[9] = {(-1L),0x9811396CL,(-1L),(-1L),0x9811396CL,(-1L),(-1L),0x9811396CL,(-1L)};
              union U0 l_479 = {0x7E05E394L};
              int32_t l_601 = (-3L);
              int8_t * const *l_639 = &l_211;
              int64_t *l_647 = &l_363;
              int i, j;
          }
          if (p_51)
              break;
          if ((*l_439))
              continue;
          (*g_648) = &l_365;
      }
      return g_187[0];
  }
  
  
  /* ------------------------------------------ */
  /* 
   * reads : g_4.f4
   * writes:
   */
  uint32_t  func_54(uint32_t  p_55, int8_t * p_56)
  { /* block id: 3 */
      return g_4.f4;
  }
  
  
  
  
  /* ---------------------------------------- */
  int main (int argc, char* argv[])
  {
      int i, j, k;
      int print_hash_value = 0;
      if (argc == 2 && strcmp(argv[1], "1") == 0) print_hash_value = 1;
      platform_main_begin();
      crc32_gentab();
      func_1();
      transparent_crc(g_4.f0, "g_4.f0", print_hash_value);
      transparent_crc(g_4.f1, "g_4.f1", print_hash_value);
      transparent_crc(g_4.f3, "g_4.f3", print_hash_value);
      transparent_crc(g_4.f4, "g_4.f4", print_hash_value);
      transparent_crc(g_32, "g_32", print_hash_value);
      for (i = 0; i < 1; i++)
      {
          transparent_crc(g_43[i], "g_43[i]", print_hash_value);
          if (print_hash_value) printf("index = [%d]\n", i);
  
      }
      transparent_crc(g_48, "g_48", print_hash_value);
      transparent_crc(g_53.f0, "g_53.f0", print_hash_value);
      transparent_crc(g_76, "g_76", print_hash_value);
      transparent_crc(g_79, "g_79", print_hash_value);
      transparent_crc(g_96, "g_96", print_hash_value);
      transparent_crc(g_100, "g_100", print_hash_value);
      transparent_crc(g_109, "g_109", print_hash_value);
      transparent_crc(g_141, "g_141", print_hash_value);
      for (i = 0; i < 10; i++)
      {
          transparent_crc(g_185[i], "g_185[i]", print_hash_value);
          if (print_hash_value) printf("index = [%d]\n", i);
  
      }
      for (i = 0; i < 3; i++)
      {
          transparent_crc(g_187[i], "g_187[i]", print_hash_value);
          if (print_hash_value) printf("index = [%d]\n", i);
  
      }
      transparent_crc(g_213, "g_213", print_hash_value);
      transparent_crc(g_256.f0, "g_256.f0", print_hash_value);
      for (i = 0; i < 3; i++)
      {
          for (j = 0; j < 8; j++)
          {
              for (k = 0; k < 3; k++)
              {
                  transparent_crc(g_269[i][j][k].f0, "g_269[i][j][k].f0", print_hash_value);
                  if (print_hash_value) printf("index = [%d][%d][%d]\n", i, j, k);
  
              }
          }
      }
      for (i = 0; i < 7; i++)
      {
          transparent_crc(g_274[i], "g_274[i]", print_hash_value);
          if (print_hash_value) printf("index = [%d]\n", i);
  
      }
      transparent_crc(g_277, "g_277", print_hash_value);
      transparent_crc(g_279, "g_279", print_hash_value);
      transparent_crc(g_281, "g_281", print_hash_value);
      transparent_crc(g_319.f0, "g_319.f0", print_hash_value);
      transparent_crc(g_393, "g_393", print_hash_value);
      transparent_crc(g_565.f0, "g_565.f0", print_hash_value);
      transparent_crc(g_577, "g_577", print_hash_value);
      transparent_crc(g_590, "g_590", print_hash_value);
      transparent_crc(g_640, "g_640", print_hash_value);
      transparent_crc(g_805, "g_805", print_hash_value);
      transparent_crc(g_855, "g_855", print_hash_value);
      transparent_crc(g_897, "g_897", print_hash_value);
      transparent_crc(g_913, "g_913", print_hash_value);
      transparent_crc(g_914, "g_914", print_hash_value);
      transparent_crc(g_1088.f0, "g_1088.f0", print_hash_value);
      transparent_crc(g_1112, "g_1112", print_hash_value);
      transparent_crc(g_1118.f0, "g_1118.f0", print_hash_value);
      transparent_crc(g_1134.f0, "g_1134.f0", print_hash_value);
      for (i = 0; i < 3; i++)
      {
          for (j = 0; j < 9; j++)
          {
              transparent_crc(g_1161[i][j].f0, "g_1161[i][j].f0", print_hash_value);
              if (print_hash_value) printf("index = [%d][%d]\n", i, j);
  
          }
      }
      transparent_crc(g_1190, "g_1190", print_hash_value);
      transparent_crc(g_1225.f0, "g_1225.f0", print_hash_value);
      transparent_crc(g_1225.f1, "g_1225.f1", print_hash_value);
      transparent_crc(g_1225.f3, "g_1225.f3", print_hash_value);
      transparent_crc(g_1225.f4, "g_1225.f4", print_hash_value);
      transparent_crc(g_1263.f0, "g_1263.f0", print_hash_value);
      transparent_crc(g_1354, "g_1354", print_hash_value);
      transparent_crc(g_1461.f0, "g_1461.f0", print_hash_value);
      transparent_crc(g_1470.f0, "g_1470.f0", print_hash_value);
      transparent_crc(g_1470.f1, "g_1470.f1", print_hash_value);
      transparent_crc(g_1470.f2, "g_1470.f2", print_hash_value);
      transparent_crc(g_1470.f3, "g_1470.f3", print_hash_value);
      transparent_crc(g_1922, "g_1922", print_hash_value);
      transparent_crc(g_1929.f0, "g_1929.f0", print_hash_value);
      for (i = 0; i < 3; i++)
      {
          for (j = 0; j < 2; j++)
          {
              for (k = 0; k < 3; k++)
              {
                  transparent_crc(g_2079[i][j][k], "g_2079[i][j][k]", print_hash_value);
                  if (print_hash_value) printf("index = [%d][%d][%d]\n", i, j, k);
  
              }
          }
      }
      transparent_crc(g_2157, "g_2157", print_hash_value);
      transparent_crc(g_2308, "g_2308", print_hash_value);
      for (i = 0; i < 6; i++)
      {
          for (j = 0; j < 8; j++)
          {
              for (k = 0; k < 5; k++)
              {
                  transparent_crc(g_2337[i][j][k], "g_2337[i][j][k]", print_hash_value);
                  if (print_hash_value) printf("index = [%d][%d][%d]\n", i, j, k);
  
              }
          }
      }
      for (i = 0; i < 10; i++)
      {
          transparent_crc(g_2352[i].f0, "g_2352[i].f0", print_hash_value);
          if (print_hash_value) printf("index = [%d]\n", i);
  
      }
      for (i = 0; i < 5; i++)
      {
          transparent_crc(g_2481[i].f0, "g_2481[i].f0", print_hash_value);
          if (print_hash_value) printf("index = [%d]\n", i);
  
      }
      transparent_crc(g_2509, "g_2509", print_hash_value);
      transparent_crc(g_2681, "g_2681", print_hash_value);
      transparent_crc(g_2790, "g_2790", print_hash_value);
      transparent_crc(g_2799.f0, "g_2799.f0", print_hash_value);
      for (i = 0; i < 2; i++)
      {
          transparent_crc(g_2800[i].f0, "g_2800[i].f0", print_hash_value);
          transparent_crc(g_2800[i].f1, "g_2800[i].f1", print_hash_value);
          transparent_crc(g_2800[i].f3, "g_2800[i].f3", print_hash_value);
          transparent_crc(g_2800[i].f4, "g_2800[i].f4", print_hash_value);
          if (print_hash_value) printf("index = [%d]\n", i);
  
      }
      transparent_crc(g_2813, "g_2813", print_hash_value);
      platform_main_end(crc32_context ^ 0xFFFFFFFFUL, print_hash_value);
      return 0;
  }
  
  /************************ statistics *************************
  XXX max struct depth: 0
  breakdown:
     depth: 0, occurrence: 669
  XXX total union variables: 61
  
  XXX non-zero bitfields defined in structs: 0
  XXX zero bitfields defined in structs: 0
  XXX const bitfields defined in structs: 0
  XXX volatile bitfields defined in structs: 0
  XXX structs with bitfields in the program: 0
  breakdown:
  XXX full-bitfields structs in the program: 0
  breakdown:
  XXX times a bitfields struct's address is taken: 0
  XXX times a bitfields struct on LHS: 0
  XXX times a bitfields struct on RHS: 0
  XXX times a single bitfield on LHS: 0
  XXX times a single bitfield on RHS: 0
  
  XXX max expression depth: 44
  breakdown:
     depth: 1, occurrence: 184
     depth: 2, occurrence: 53
     depth: 3, occurrence: 3
     depth: 4, occurrence: 1
     depth: 6, occurrence: 2
     depth: 7, occurrence: 3
     depth: 13, occurrence: 2
     depth: 15, occurrence: 1
     depth: 16, occurrence: 1
     depth: 18, occurrence: 2
     depth: 20, occurrence: 3
     depth: 21, occurrence: 1
     depth: 22, occurrence: 2
     depth: 24, occurrence: 1
     depth: 26, occurrence: 1
     depth: 27, occurrence: 2
     depth: 28, occurrence: 1
     depth: 29, occurrence: 1
     depth: 31, occurrence: 1
     depth: 32, occurrence: 1
     depth: 33, occurrence: 1
     depth: 36, occurrence: 3
     depth: 39, occurrence: 1
     depth: 44, occurrence: 1
  
  XXX total number of pointers: 741
  
  XXX times a variable address is taken: 1576
  XXX times a pointer is dereferenced on RHS: 382
  breakdown:
     depth: 1, occurrence: 299
     depth: 2, occurrence: 66
     depth: 3, occurrence: 10
     depth: 4, occurrence: 7
  XXX times a pointer is dereferenced on LHS: 355
  breakdown:
     depth: 1, occurrence: 310
     depth: 2, occurrence: 41
     depth: 3, occurrence: 3
     depth: 4, occurrence: 1
  XXX times a pointer is compared with null: 50
  XXX times a pointer is compared with address of another variable: 14
  XXX times a pointer is compared with another pointer: 14
  XXX times a pointer is qualified to be dereferenced: 9289
  
  XXX max dereference level: 5
  breakdown:
     level: 0, occurrence: 0
     level: 1, occurrence: 1435
     level: 2, occurrence: 359
     level: 3, occurrence: 38
     level: 4, occurrence: 38
     level: 5, occurrence: 9
  XXX number of pointers point to pointers: 251
  XXX number of pointers point to scalars: 456
  XXX number of pointers point to structs: 0
  XXX percent of pointers has null in alias set: 33.6
  XXX average alias set size: 1.46
  
  XXX times a non-volatile is read: 2166
  XXX times a non-volatile is write: 1065
  XXX times a volatile is read: 171
  XXX    times read thru a pointer: 75
  XXX times a volatile is write: 29
  XXX    times written thru a pointer: 2
  XXX times a volatile is available for access: 7.19e+03
  XXX percentage of non-volatile access: 94.2
  
  XXX forward jumps: 0
  XXX backward jumps: 12
  
  XXX stmts: 180
  XXX max block depth: 5
  breakdown:
     depth: 0, occurrence: 27
     depth: 1, occurrence: 30
     depth: 2, occurrence: 32
     depth: 3, occurrence: 34
     depth: 4, occurrence: 38
     depth: 5, occurrence: 19
  
  XXX percentage a fresh-made variable is used: 16.5
  XXX percentage an existing variable is used: 83.5
  ********************* end of statistics **********************/
  
  