int test_Strtod() {
  int fail = 0;
  char *id = "Strtod";
  double v;
  char *vector;
  char buf[1001];
  vector = "0";
  check_double((0.0),
               ((sprintf(buf, "%se%d", vector, 1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 80, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", vector, 2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 81, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", vector, -2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 82, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", vector, -999),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 83, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", vector, +999),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 84, &fail);
  vector = "1";
  check_double((1.0),
               ((sprintf(buf, "%se%d", vector, 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 87, &fail);
  check_double((10.0),
               ((sprintf(buf, "%se%d", vector, 1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 88, &fail);
  check_double((100.0),
               ((sprintf(buf, "%se%d", vector, 2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 89, &fail);
  check_double((1e20),
               ((sprintf(buf, "%se%d", vector, 20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 90, &fail);
  check_double((1e22),
               ((sprintf(buf, "%se%d", vector, 22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 91, &fail);
  check_double((1e23),
               ((sprintf(buf, "%se%d", vector, 23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 92, &fail);
  check_double((1e35),
               ((sprintf(buf, "%se%d", vector, 35),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 94, &fail);
  check_double((1e36),
               ((sprintf(buf, "%se%d", vector, 36),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 95, &fail);
  check_double((1e37),
               ((sprintf(buf, "%se%d", vector, 37),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 96, &fail);
  check_double((1e-1),
               ((sprintf(buf, "%se%d", vector, -1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 97, &fail);
  check_double((1e-2),
               ((sprintf(buf, "%se%d", vector, -2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 98, &fail);
  check_double((1e-5),
               ((sprintf(buf, "%se%d", vector, -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 99, &fail);
  check_double((1e-20),
               ((sprintf(buf, "%se%d", vector, -20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 100, &fail);
  check_double((1e-22),
               ((sprintf(buf, "%se%d", vector, -22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 101, &fail);
  check_double((1e-23),
               ((sprintf(buf, "%se%d", vector, -23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 102, &fail);
  check_double((1e-25),
               ((sprintf(buf, "%se%d", vector, -25),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 103, &fail);
  check_double((1e-39),
               ((sprintf(buf, "%se%d", vector, -39),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 104, &fail);
  vector = "2";
  check_double((2.0),
               ((sprintf(buf, "%se%d", vector, 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 107, &fail);
  check_double((20.0),
               ((sprintf(buf, "%se%d", vector, 1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 108, &fail);
  check_double((200.0),
               ((sprintf(buf, "%se%d", vector, 2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 109, &fail);
  check_double((2e20),
               ((sprintf(buf, "%se%d", vector, 20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 110, &fail);
  check_double((2e22),
               ((sprintf(buf, "%se%d", vector, 22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 111, &fail);
  check_double((2e23),
               ((sprintf(buf, "%se%d", vector, 23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 112, &fail);
  check_double((2e35),
               ((sprintf(buf, "%se%d", vector, 35),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 113, &fail);
  check_double((2e36),
               ((sprintf(buf, "%se%d", vector, 36),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 114, &fail);
  check_double((2e37),
               ((sprintf(buf, "%se%d", vector, 37),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 115, &fail);
  check_double((2e-1),
               ((sprintf(buf, "%se%d", vector, -1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 116, &fail);
  check_double((2e-2),
               ((sprintf(buf, "%se%d", vector, -2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 117, &fail);
  check_double((2e-5),
               ((sprintf(buf, "%se%d", vector, -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 118, &fail);
  check_double((2e-20),
               ((sprintf(buf, "%se%d", vector, -20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 119, &fail);
  check_double((2e-22),
               ((sprintf(buf, "%se%d", vector, -22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 120, &fail);
  check_double((2e-23),
               ((sprintf(buf, "%se%d", vector, -23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 121, &fail);
  check_double((2e-25),
               ((sprintf(buf, "%se%d", vector, -25),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 122, &fail);
  check_double((2e-39),
               ((sprintf(buf, "%se%d", vector, -39),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 123, &fail);
  vector = "9";
  check_double((9.0),
               ((sprintf(buf, "%se%d", vector, 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 126, &fail);
  check_double((90.0),
               ((sprintf(buf, "%se%d", vector, 1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 127, &fail);
  check_double((900.0),
               ((sprintf(buf, "%se%d", vector, 2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 128, &fail);
  check_double((9e20),
               ((sprintf(buf, "%se%d", vector, 20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 129, &fail);
  check_double((9e22),
               ((sprintf(buf, "%se%d", vector, 22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 130, &fail);
  check_double((9e23),
               ((sprintf(buf, "%se%d", vector, 23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 131, &fail);
  check_double((9e35),
               ((sprintf(buf, "%se%d", vector, 35),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 132, &fail);
  check_double((9e36),
               ((sprintf(buf, "%se%d", vector, 36),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 133, &fail);
  check_double((9e37),
               ((sprintf(buf, "%se%d", vector, 37),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 134, &fail);
  check_double((9e-1),
               ((sprintf(buf, "%se%d", vector, -1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 135, &fail);
  check_double((9e-2),
               ((sprintf(buf, "%se%d", vector, -2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 136, &fail);
  check_double((9e-5),
               ((sprintf(buf, "%se%d", vector, -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 137, &fail);
  check_double((9e-20),
               ((sprintf(buf, "%se%d", vector, -20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 138, &fail);
  check_double((9e-22),
               ((sprintf(buf, "%se%d", vector, -22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 139, &fail);
  check_double((9e-23),
               ((sprintf(buf, "%se%d", vector, -23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 140, &fail);
  check_double((9e-25),
               ((sprintf(buf, "%se%d", vector, -25),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 141, &fail);
  check_double((9e-39),
               ((sprintf(buf, "%se%d", vector, -39),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 142, &fail);
  vector = "12345";
  check_double((12345.0),
               ((sprintf(buf, "%se%d", vector, 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 145, &fail);
  check_double((123450.0),
               ((sprintf(buf, "%se%d", vector, 1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 146, &fail);
  check_double((1234500.0),
               ((sprintf(buf, "%se%d", vector, 2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 147, &fail);
  check_double((12345e20),
               ((sprintf(buf, "%se%d", vector, 20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 148, &fail);
  check_double((12345e22),
               ((sprintf(buf, "%se%d", vector, 22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 149, &fail);
  check_double((12345e23),
               ((sprintf(buf, "%se%d", vector, 23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 150, &fail);
  check_double((12345e30),
               ((sprintf(buf, "%se%d", vector, 30),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 151, &fail);
  check_double((12345e31),
               ((sprintf(buf, "%se%d", vector, 31),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 152, &fail);
  check_double((12345e32),
               ((sprintf(buf, "%se%d", vector, 32),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 153, &fail);
  check_double((12345e35),
               ((sprintf(buf, "%se%d", vector, 35),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 154, &fail);
  check_double((12345e36),
               ((sprintf(buf, "%se%d", vector, 36),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 155, &fail);
  check_double((12345e37),
               ((sprintf(buf, "%se%d", vector, 37),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 156, &fail);
  check_double((12345e-1),
               ((sprintf(buf, "%se%d", vector, -1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 157, &fail);
  check_double((12345e-2),
               ((sprintf(buf, "%se%d", vector, -2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 158, &fail);
  check_double((12345e-5),
               ((sprintf(buf, "%se%d", vector, -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 159, &fail);
  check_double((12345e-20),
               ((sprintf(buf, "%se%d", vector, -20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 160, &fail);
  check_double((12345e-22),
               ((sprintf(buf, "%se%d", vector, -22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 161, &fail);
  check_double((12345e-23),
               ((sprintf(buf, "%se%d", vector, -23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 162, &fail);
  check_double((12345e-25),
               ((sprintf(buf, "%se%d", vector, -25),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 163, &fail);
  check_double((12345e-39),
               ((sprintf(buf, "%se%d", vector, -39),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 164, &fail);
  vector = "12345678901234";
  check_double((12345678901234.0),
               ((sprintf(buf, "%se%d", vector, 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 167, &fail);
  check_double((123456789012340.0),
               ((sprintf(buf, "%se%d", vector, 1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 168, &fail);
  check_double((1234567890123400.0),
               ((sprintf(buf, "%se%d", vector, 2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 169, &fail);
  check_double((12345678901234e20),
               ((sprintf(buf, "%se%d", vector, 20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 170, &fail);
  check_double((12345678901234e22),
               ((sprintf(buf, "%se%d", vector, 22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 171, &fail);
  check_double((12345678901234e23),
               ((sprintf(buf, "%se%d", vector, 23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 172, &fail);
  check_double((12345678901234e30),
               ((sprintf(buf, "%se%d", vector, 30),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 173, &fail);
  check_double((12345678901234e31),
               ((sprintf(buf, "%se%d", vector, 31),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 174, &fail);
  check_double((12345678901234e32),
               ((sprintf(buf, "%se%d", vector, 32),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 175, &fail);
  check_double((12345678901234e35),
               ((sprintf(buf, "%se%d", vector, 35),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 176, &fail);
  check_double((12345678901234e36),
               ((sprintf(buf, "%se%d", vector, 36),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 177, &fail);
  check_double((12345678901234e37),
               ((sprintf(buf, "%se%d", vector, 37),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 178, &fail);
  check_double((12345678901234e-1),
               ((sprintf(buf, "%se%d", vector, -1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 179, &fail);
  check_double((12345678901234e-2),
               ((sprintf(buf, "%se%d", vector, -2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 180, &fail);
  check_double((12345678901234e-5),
               ((sprintf(buf, "%se%d", vector, -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 181, &fail);
  check_double((12345678901234e-20),
               ((sprintf(buf, "%se%d", vector, -20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 182, &fail);
  check_double((12345678901234e-22),
               ((sprintf(buf, "%se%d", vector, -22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 183, &fail);
  check_double((12345678901234e-23),
               ((sprintf(buf, "%se%d", vector, -23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 184, &fail);
  check_double((12345678901234e-25),
               ((sprintf(buf, "%se%d", vector, -25),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 185, &fail);
  check_double((12345678901234e-39),
               ((sprintf(buf, "%se%d", vector, -39),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 186, &fail);
  vector = "123456789012345";
  check_double((123456789012345.0),
               ((sprintf(buf, "%se%d", vector, 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 189, &fail);
  check_double((1234567890123450.0),
               ((sprintf(buf, "%se%d", vector, 1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 190, &fail);
  check_double((12345678901234500.0),
               ((sprintf(buf, "%se%d", vector, 2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 191, &fail);
  check_double((123456789012345e20),
               ((sprintf(buf, "%se%d", vector, 20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 192, &fail);
  check_double((123456789012345e22),
               ((sprintf(buf, "%se%d", vector, 22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 193, &fail);
  check_double((123456789012345e23),
               ((sprintf(buf, "%se%d", vector, 23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 194, &fail);
  check_double((123456789012345e35),
               ((sprintf(buf, "%se%d", vector, 35),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 195, &fail);
  check_double((123456789012345e36),
               ((sprintf(buf, "%se%d", vector, 36),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 196, &fail);
  check_double((123456789012345e37),
               ((sprintf(buf, "%se%d", vector, 37),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 197, &fail);
  check_double((123456789012345e39),
               ((sprintf(buf, "%se%d", vector, 39),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 198, &fail);
  check_double((123456789012345e-1),
               ((sprintf(buf, "%se%d", vector, -1),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 199, &fail);
  check_double((123456789012345e-2),
               ((sprintf(buf, "%se%d", vector, -2),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 200, &fail);
  check_double((123456789012345e-5),
               ((sprintf(buf, "%se%d", vector, -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 201, &fail);
  check_double((123456789012345e-20),
               ((sprintf(buf, "%se%d", vector, -20),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 202, &fail);
  check_double((123456789012345e-22),
               ((sprintf(buf, "%se%d", vector, -22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 203, &fail);
  check_double((123456789012345e-23),
               ((sprintf(buf, "%se%d", vector, -23),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 204, &fail);
  check_double((123456789012345e-25),
               ((sprintf(buf, "%se%d", vector, -25),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 205, &fail);
  check_double((123456789012345e-39),
               ((sprintf(buf, "%se%d", vector, -39),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 206, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "0", 12345),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 207, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "", 1324),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 209, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "000000000", 123),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 210, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "2", -324),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 211, &fail);
  check_double((4e-324),
               ((sprintf(buf, "%se%d", "3", -324),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 212, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "1", -325),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 217, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "1", -325),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 218, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "20000", -328),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 219, &fail);
  check_double((40000e-328),
               ((sprintf(buf, "%se%d", "30000", -328),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 220, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "10000", -329),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 221, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "90000", -329),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 222, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "000000001", -325),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 223, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "000000001", -325),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 224, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "0000000020000", -328),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 225, &fail);
  check_double((40000e-328),
               ((sprintf(buf, "%se%d", "00000030000", -328),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 226, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "0000000010000", -329),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 227, &fail);
  check_double((0.0),
               ((sprintf(buf, "%se%d", "0000000090000", -329),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 228, &fail);
  check_double((grisu3_cast_double_from_uint64(0x7FF0000000000000ULL)),
               ((sprintf(buf, "%se%d", "1", 309),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 235, &fail);
  check_double((1e308),
               ((sprintf(buf, "%se%d", "1", 308),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 237, &fail);
  check_double((1234e305),
               ((sprintf(buf, "%se%d", "1234", 305),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 238, &fail);
  check_double((1234e304),
               ((sprintf(buf, "%se%d", "1234", 304),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 239, &fail);
  check_double((grisu3_cast_double_from_uint64(0x7FF0000000000000ULL)),
               ((sprintf(buf, "%se%d", "18", 307),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 241, &fail);
  check_double((17e307),
               ((sprintf(buf, "%se%d", "17", 307),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 242, &fail);
  check_double((grisu3_cast_double_from_uint64(0x7FF0000000000000ULL)),
               ((sprintf(buf, "%se%d", "0000001", 309),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 244, &fail);
  check_double((1e308),
               ((sprintf(buf, "%se%d", "00000001", 308),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 246, &fail);
  check_double((1234e305),
               ((sprintf(buf, "%se%d", "00000001234", 305),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 248, &fail);
  check_double((1234e304),
               ((sprintf(buf, "%se%d", "000000001234", 304),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 249, &fail);
  check_double((grisu3_cast_double_from_uint64(0x7FF0000000000000ULL)),
               ((sprintf(buf, "%se%d", "0000000018", 307),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 250, &fail);
  check_double((17e307),
               ((sprintf(buf, "%se%d", "0000000017", 307),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 251, &fail);
  check_double((grisu3_cast_double_from_uint64(0x7FF0000000000000ULL)),
               ((sprintf(buf, "%se%d", "1000000", 303),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 252, &fail);
  check_double((1e308),
               ((sprintf(buf, "%se%d", "100000", 303),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 253, &fail);
  check_double((1234e305),
               ((sprintf(buf, "%se%d", "123400000", 300),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 254, &fail);
  check_double((1234e304),
               ((sprintf(buf, "%se%d", "123400000", 299),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 255, &fail);
  check_double((grisu3_cast_double_from_uint64(0x7FF0000000000000ULL)),
               ((sprintf(buf, "%se%d", "180000000", 300),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 256, &fail);
  check_double((17e307),
               ((sprintf(buf, "%se%d", "170000000", 300),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 257, &fail);
  check_double((grisu3_cast_double_from_uint64(0x7FF0000000000000ULL)),
               ((sprintf(buf, "%se%d", "00000001000000", 303),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 258, &fail);
  check_double((1e308),
               ((sprintf(buf, "%se%d", "000000000000100000", 303),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 259, &fail);
  check_double((1234e305),
               ((sprintf(buf, "%se%d", "00000000123400000", 300),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 260, &fail);
  check_double((1234e304),
               ((sprintf(buf, "%se%d", "0000000123400000", 299),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 261, &fail);
  check_double((grisu3_cast_double_from_uint64(0x7FF0000000000000ULL)),
               ((sprintf(buf, "%se%d", "00000000180000000", 300),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 262, &fail);
  check_double((17e307),
               ((sprintf(buf, "%se%d", "00000000170000000", 300),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 263, &fail);
  check_double((1.7976931348623157E+308),
               ((sprintf(buf, "%se%d", "17976931348623157", 292),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 264, &fail);
  check_double((1.7976931348623158E+308),
               ((sprintf(buf, "%se%d", "17976931348623158", 292),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 265, &fail);
  check_double((grisu3_cast_double_from_uint64(0x7FF0000000000000ULL)),
               ((sprintf(buf, "%se%d", "17976931348623159", 292),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 266, &fail);
  check_double((89255e-22),
               ((sprintf(buf, "%se%d", "89255", -22),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 272, &fail);
  check_double((358416272e-33),
               ((sprintf(buf, "%se%d", "358416272", -33),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 275, &fail);
  check_double((104110013277974872254e-225),
               ((sprintf(buf, "%se%d", "104110013277974872254", -225),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 276, &fail);
  check_double((123456789e108),
               ((sprintf(buf, "%se%d", "123456789", 108),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 279, &fail);
  check_double((123456789e109),
               ((sprintf(buf, "%se%d", "123456789", 109),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 280, &fail);
  check_double((123456789e110),
               ((sprintf(buf, "%se%d", "123456789", 110),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 281, &fail);
  check_double((123456789e111),
               ((sprintf(buf, "%se%d", "123456789", 111),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 282, &fail);
  check_double((123456789e112),
               ((sprintf(buf, "%se%d", "123456789", 112),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 283, &fail);
  check_double((123456789e113),
               ((sprintf(buf, "%se%d", "123456789", 113),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 284, &fail);
  check_double((123456789e114),
               ((sprintf(buf, "%se%d", "123456789", 114),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 285, &fail);
  check_double((123456789e115),
               ((sprintf(buf, "%se%d", "123456789", 115),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 286, &fail);
  check_double((1234567890123456789012345e108),
               ((sprintf(buf, "%se%d", "1234567890123456789012345", 108),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 288, &fail);
  check_double((1234567890123456789012345e109),
               ((sprintf(buf, "%se%d", "1234567890123456789012345", 109),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 290, &fail);
  check_double((1234567890123456789012345e110),
               ((sprintf(buf, "%se%d", "1234567890123456789012345", 110),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 292, &fail);
  check_double((1234567890123456789012345e111),
               ((sprintf(buf, "%se%d", "1234567890123456789012345", 111),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 294, &fail);
  check_double((1234567890123456789012345e112),
               ((sprintf(buf, "%se%d", "1234567890123456789012345", 112),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 296, &fail);
  check_double((1234567890123456789012345e113),
               ((sprintf(buf, "%se%d", "1234567890123456789012345", 113),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 298, &fail);
  check_double((1234567890123456789012345e114),
               ((sprintf(buf, "%se%d", "1234567890123456789012345", 114),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 300, &fail);
  check_double((1234567890123456789012345e115),
               ((sprintf(buf, "%se%d", "1234567890123456789012345", 115),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 302, &fail);
  check_double((1234567890123456789052345e108),
               ((sprintf(buf, "%se%d", "1234567890123456789052345", 108),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 304, &fail);
  check_double((1234567890123456789052345e109),
               ((sprintf(buf, "%se%d", "1234567890123456789052345", 109),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 306, &fail);
  check_double((1234567890123456789052345e110),
               ((sprintf(buf, "%se%d", "1234567890123456789052345", 110),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 308, &fail);
  check_double((1234567890123456789052345e111),
               ((sprintf(buf, "%se%d", "1234567890123456789052345", 111),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 310, &fail);
  check_double((1234567890123456789052345e112),
               ((sprintf(buf, "%se%d", "1234567890123456789052345", 112),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 312, &fail);
  check_double((1234567890123456789052345e113),
               ((sprintf(buf, "%se%d", "1234567890123456789052345", 113),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 314, &fail);
  check_double((1234567890123456789052345e114),
               ((sprintf(buf, "%se%d", "1234567890123456789052345", 114),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 316, &fail);
  check_double((1234567890123456789052345e115),
               ((sprintf(buf, "%se%d", "1234567890123456789052345", 115),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 318, &fail);
  check_double(
      (5.445618932859895e-255),
      ((sprintf(buf, "%se%d",
                "5445618932859895362967233318697132813618813095743952975"
                "4392982234069699615600475529427176366709107287468930197"
                "8628345413991790019316974825934906752493984055268219809"
                "5012176093045431437495773903922425632551857520884625114"
                "6241265881735209066709685420744388526014389929047617597"
                "0302268848374508109029268898695825171158085457567481507"
                "4162979705098246243690189880319928315307816832576838178"
                "2563074014542859888710209237525873301724479666744537857"
                "9026553346649664045621387124193095870305991178772256504"
                "4368663670643970181259143319016472430928902201239474588"
                "1392338901353291306607057623202353588698746085415097902"
                "6640064319118728664842287477491068264828851624402189317"
                "2769161449825765517353755844373640588822904791244190695"
                "2998382932630754670573838138825217065450843010498555058"
                "88186560731",
                -1035),
        grisu3_parse_double(buf, strlen(buf), &v), v)),
      id, 320, &fail);
  check_double((72057594037927928.0),
               ((sprintf(buf, "%se%d", "72057594037927928", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 342, &fail);
  check_double((72057594037927936.0),
               ((sprintf(buf, "%se%d", "72057594037927936", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 343, &fail);
  check_double((72057594037927936.0),
               ((sprintf(buf, "%se%d", "72057594037927932", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 344, &fail);
  check_double((72057594037927928.0),
               ((sprintf(buf, "%se%d", "7205759403792793199999", -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 345, &fail);
  check_double((72057594037927936.0),
               ((sprintf(buf, "%se%d", "7205759403792793200001", -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 346, &fail);
  check_double((9223372036854774784.0),
               ((sprintf(buf, "%se%d", "9223372036854774784", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 351, &fail);
  check_double((9223372036854775808.0),
               ((sprintf(buf, "%se%d", "9223372036854775808", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 352, &fail);
  check_double((9223372036854775808.0),
               ((sprintf(buf, "%se%d", "9223372036854775296", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 353, &fail);
  check_double((9223372036854774784.0),
               ((sprintf(buf, "%se%d", "922337203685477529599999", -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 355, &fail);
  check_double((9223372036854775808.0),
               ((sprintf(buf, "%se%d", "922337203685477529600001", -5),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 356, &fail);
  check_double((10141204801825834086073718800384.0),
               ((sprintf(buf, "%se%d", "10141204801825834086073718800384", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 362, &fail);
  check_double((10141204801825835211973625643008.0),
               ((sprintf(buf, "%se%d", "10141204801825835211973625643008", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 364, &fail);
  check_double((10141204801825835211973625643008.0),
               ((sprintf(buf, "%se%d", "10141204801825834649023672221696", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 366, &fail);
  check_double(
      (10141204801825834086073718800384.0),
      ((sprintf(buf, "%se%d", "1014120480182583464902367222169599999", -5),
        grisu3_parse_double(buf, strlen(buf), &v), v)),
      id, 368, &fail);
  check_double(
      (10141204801825835211973625643008.0),
      ((sprintf(buf, "%se%d", "1014120480182583464902367222169600001", -5),
        grisu3_parse_double(buf, strlen(buf), &v), v)),
      id, 370, &fail);
  check_double((5708990770823838890407843763683279797179383808.0),
               ((sprintf(buf, "%se%d",
                         "5708990770823838890407843763683279797179383808", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 376, &fail);
  check_double((5708990770823839524233143877797980545530986496.0),
               ((sprintf(buf, "%se%d",
                         "5708990770823839524233143877797980545530986496", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 378, &fail);
  check_double((5708990770823839524233143877797980545530986496.0),
               ((sprintf(buf, "%se%d",
                         "5708990770823839207320493820740630171355185152", 0),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 380, &fail);
  check_double(
      (5708990770823838890407843763683279797179383808.0),
      ((sprintf(buf, "%se%d",
                "5708990770823839207320493820740630171355185151999", -3),
        grisu3_parse_double(buf, strlen(buf), &v), v)),
      id, 382, &fail);
  check_double(
      (5708990770823839524233143877797980545530986496.0),
      ((sprintf(buf, "%se%d",
                "5708990770823839207320493820740630171355185152001", -3),
        grisu3_parse_double(buf, strlen(buf), &v), v)),
      id, 384, &fail);
  check_double((2.225073858507201e-308),
               ((sprintf(buf, "%se%d", "22250738585072011", -324),
                 grisu3_parse_double(buf, strlen(buf), &v), v)),
               id, 389, &fail);
  check_double(
      (2.22507385850720138309e-308),
      ((sprintf(buf, "%se%d",
                "22250738585072011360574097967091319759348195463516456480"
                "23426109724822222021076945516529523908135087914149158913"
                "03962110687008643869459464552765720740782062174337998814"
                "10632673292535522868813721490129811224514518898490572223"
                "07285255133155755015914397476397983411801999323962548289"
                "01710708185069063066665599493827577257201576306269066333"
                "26475653000092458883164330377797918696120494973903778297"
                "04905051080609940730262937128958950003583799967207254304"
                "36028407889577179615094551674824347103070260914462157228"
                "98802581825451803257070188608721131280795122334262883686"
                "22321503775666622503982534335974568884423900265498198385"
                "48794829220689472168983109969836584681402285424333066033"
                "98508864458040010349339704275671864433837704860378616227"
                "71738545623065874679014086723327636718751",
                -1076),
        grisu3_parse_double(buf, strlen(buf), &v), v)),
      id, 390, &fail);
  return fail;
}


x86 assembly (clang, -O0):
<test_Strtod>:
push   %rbp
mov    %rsp,%rbp
sub    $0xae0,%rsp
movl   $0x0,-0x4(%rbp)
lea    0x631f(%rip),%rax
mov    %rax,-0x10(%rbp)
lea    0x6338(%rip),%rax
mov    %rax,-0x20(%rbp)
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x6305(%rip),%rsi
mov    $0x1,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xad8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xad8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0x50,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x629c(%rip),%rsi
mov    $0x2,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xad0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xad0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0x51,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x6233(%rip),%rsi
mov    $0xfffffffe,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xac8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xac8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0x52,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x61ca(%rip),%rsi
mov    $0xfffffc19,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xac0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xac0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0x53,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x6161(%rip),%rsi
mov    $0x3e7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xab8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xab8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0x54,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x612c(%rip),%rax
mov    %rax,-0x20(%rbp)
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x60ed(%rip),%rsi
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xab0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xab0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x6095(%rip),%xmm0
mov    $0x57,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x6082(%rip),%rsi
mov    $0x1,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xaa8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xaa8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x601f(%rip),%xmm0
mov    $0x58,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x6014(%rip),%rsi
mov    $0x2,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xaa0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xaa0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5fa9(%rip),%xmm0
mov    $0x59,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5fa6(%rip),%rsi
mov    $0x14,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa98(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa98(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5f33(%rip),%xmm0
mov    $0x5a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5f38(%rip),%rsi
mov    $0x16,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa90(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa90(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5ebd(%rip),%xmm0
mov    $0x5b,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5eca(%rip),%rsi
mov    $0x17,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa88(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa88(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5e47(%rip),%xmm0
mov    $0x5c,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5e5c(%rip),%rsi
mov    $0x23,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa80(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa80(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5dd1(%rip),%xmm0
mov    $0x5e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5dee(%rip),%rsi
mov    $0x24,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa78(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa78(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5d5b(%rip),%xmm0
mov    $0x5f,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5d80(%rip),%rsi
mov    $0x25,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa70(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa70(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5ce5(%rip),%xmm0
mov    $0x60,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5d12(%rip),%rsi
mov    $0xffffffff,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa68(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa68(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5c6f(%rip),%xmm0
mov    $0x61,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5ca4(%rip),%rsi
mov    $0xfffffffe,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa60(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa60(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5bf9(%rip),%xmm0
mov    $0x62,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5c36(%rip),%rsi
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa58(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa58(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5b83(%rip),%xmm0
mov    $0x63,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5bc8(%rip),%rsi
mov    $0xffffffec,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa50(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa50(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5b0d(%rip),%xmm0
mov    $0x64,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5b5a(%rip),%rsi
mov    $0xffffffea,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa48(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa48(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5a97(%rip),%xmm0
mov    $0x65,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5aec(%rip),%rsi
mov    $0xffffffe9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa40(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa40(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5a21(%rip),%xmm0
mov    $0x66,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5a7e(%rip),%rsi
mov    $0xffffffe7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa38(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa38(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x59ab(%rip),%xmm0
mov    $0x67,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5a10(%rip),%rsi
mov    $0xffffffd9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa30(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa30(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5935(%rip),%xmm0
mov    $0x68,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x5e65(%rip),%rax
mov    %rax,-0x20(%rbp)
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5997(%rip),%rsi
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa28(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa28(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x58b7(%rip),%xmm0
mov    $0x6b,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x592c(%rip),%rsi
mov    $0x1,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa20(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa20(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5841(%rip),%xmm0
mov    $0x6c,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x58be(%rip),%rsi
mov    $0x2,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa18(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa18(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x57cb(%rip),%xmm0
mov    $0x6d,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5850(%rip),%rsi
mov    $0x14,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa10(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa10(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5755(%rip),%xmm0
mov    $0x6e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x57e2(%rip),%rsi
mov    $0x16,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa08(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa08(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x56df(%rip),%xmm0
mov    $0x6f,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5774(%rip),%rsi
mov    $0x17,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0xa00(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0xa00(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5669(%rip),%xmm0
mov    $0x70,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5706(%rip),%rsi
mov    $0x23,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9f8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9f8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x55f3(%rip),%xmm0
mov    $0x71,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5698(%rip),%rsi
mov    $0x24,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9f0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9f0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x557d(%rip),%xmm0
mov    $0x72,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x562a(%rip),%rsi
mov    $0x25,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9e8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9e8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5507(%rip),%xmm0
mov    $0x73,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x55bc(%rip),%rsi
mov    $0xffffffff,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9e0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9e0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5491(%rip),%xmm0
mov    $0x74,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x554e(%rip),%rsi
mov    $0xfffffffe,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9d8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9d8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x541b(%rip),%xmm0
mov    $0x75,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x54e0(%rip),%rsi
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9d0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9d0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x53a5(%rip),%xmm0
mov    $0x76,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5472(%rip),%rsi
mov    $0xffffffec,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9c8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9c8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x532f(%rip),%xmm0
mov    $0x77,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5404(%rip),%rsi
mov    $0xffffffea,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9c0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9c0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x52b9(%rip),%xmm0
mov    $0x78,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5396(%rip),%rsi
mov    $0xffffffe9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9b8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9b8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5243(%rip),%xmm0
mov    $0x79,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5328(%rip),%rsi
mov    $0xffffffe7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9b0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9b0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x51cd(%rip),%xmm0
mov    $0x7a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x52ba(%rip),%rsi
mov    $0xffffffd9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9a8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9a8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5157(%rip),%xmm0
mov    $0x7b,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x5367(%rip),%rax
mov    %rax,-0x20(%rbp)
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5241(%rip),%rsi
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x9a0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x9a0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x50d9(%rip),%xmm0
mov    $0x7e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x51d6(%rip),%rsi
mov    $0x1,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x998(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x998(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5063(%rip),%xmm0
mov    $0x7f,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x5168(%rip),%rsi
mov    $0x2,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x990(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x990(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4fed(%rip),%xmm0
mov    $0x80,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x50fa(%rip),%rsi
mov    $0x14,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x988(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x988(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4f77(%rip),%xmm0
mov    $0x81,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x508c(%rip),%rsi
mov    $0x16,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x980(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x980(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4f01(%rip),%xmm0
mov    $0x82,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x501e(%rip),%rsi
mov    $0x17,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x978(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x978(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4e8b(%rip),%xmm0
mov    $0x83,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4fb0(%rip),%rsi
mov    $0x23,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x970(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x970(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4e15(%rip),%xmm0
mov    $0x84,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4f42(%rip),%rsi
mov    $0x24,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x968(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x968(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4d9f(%rip),%xmm0
mov    $0x85,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4ed4(%rip),%rsi
mov    $0x25,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x960(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x960(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4d29(%rip),%xmm0
mov    $0x86,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4e66(%rip),%rsi
mov    $0xffffffff,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x958(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x958(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4cb3(%rip),%xmm0
mov    $0x87,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4df8(%rip),%rsi
mov    $0xfffffffe,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x950(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x950(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4c3d(%rip),%xmm0
mov    $0x88,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4d8a(%rip),%rsi
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x948(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x948(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4bc7(%rip),%xmm0
mov    $0x89,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4d1c(%rip),%rsi
mov    $0xffffffec,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x940(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x940(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4b51(%rip),%xmm0
mov    $0x8a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4cae(%rip),%rsi
mov    $0xffffffea,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x938(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x938(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4adb(%rip),%xmm0
mov    $0x8b,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4c40(%rip),%rsi
mov    $0xffffffe9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x930(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x930(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4a65(%rip),%xmm0
mov    $0x8c,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4bd2(%rip),%rsi
mov    $0xffffffe7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x928(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x928(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x49ef(%rip),%xmm0
mov    $0x8d,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4b64(%rip),%rsi
mov    $0xffffffd9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x920(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x920(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4979(%rip),%xmm0
mov    $0x8e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x4c57(%rip),%rax
mov    %rax,-0x20(%rbp)
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4aeb(%rip),%rsi
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x918(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x918(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x48fb(%rip),%xmm0
mov    $0x91,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4a80(%rip),%rsi
mov    $0x1,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x910(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x910(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4885(%rip),%xmm0
mov    $0x92,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4a12(%rip),%rsi
mov    $0x2,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x908(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x908(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x480f(%rip),%xmm0
mov    $0x93,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x49a4(%rip),%rsi
mov    $0x14,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x900(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x900(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4799(%rip),%xmm0
mov    $0x94,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4936(%rip),%rsi
mov    $0x16,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8f8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8f8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4723(%rip),%xmm0
mov    $0x95,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x48c8(%rip),%rsi
mov    $0x17,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8f0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8f0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x46ad(%rip),%xmm0
mov    $0x96,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x485a(%rip),%rsi
mov    $0x1e,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8e8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8e8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4637(%rip),%xmm0
mov    $0x97,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x47ec(%rip),%rsi
mov    $0x1f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8e0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8e0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x45c1(%rip),%xmm0
mov    $0x98,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x477e(%rip),%rsi
mov    $0x20,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8d8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8d8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x454b(%rip),%xmm0
mov    $0x99,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4710(%rip),%rsi
mov    $0x23,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8d0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8d0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x44d5(%rip),%xmm0
mov    $0x9a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x46a2(%rip),%rsi
mov    $0x24,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8c8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8c8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x445f(%rip),%xmm0
mov    $0x9b,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4634(%rip),%rsi
mov    $0x25,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8c0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8c0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x43e9(%rip),%xmm0
mov    $0x9c,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x45c6(%rip),%rsi
mov    $0xffffffff,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8b8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8b8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4373(%rip),%xmm0
mov    $0x9d,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4558(%rip),%rsi
mov    $0xfffffffe,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8b0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8b0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x42fd(%rip),%xmm0
mov    $0x9e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x44ea(%rip),%rsi
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8a8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8a8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4287(%rip),%xmm0
mov    $0x9f,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x447c(%rip),%rsi
mov    $0xffffffec,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x8a0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x8a0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4211(%rip),%xmm0
mov    $0xa0,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x440e(%rip),%rsi
mov    $0xffffffea,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x898(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x898(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x419b(%rip),%xmm0
mov    $0xa1,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x43a0(%rip),%rsi
mov    $0xffffffe9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x890(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x890(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4125(%rip),%xmm0
mov    $0xa2,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4332(%rip),%rsi
mov    $0xffffffe7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x888(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x888(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x40af(%rip),%xmm0
mov    $0xa3,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x42c4(%rip),%rsi
mov    $0xffffffd9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x880(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x880(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4039(%rip),%xmm0
mov    $0xa4,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x4267(%rip),%rax
mov    %rax,-0x20(%rbp)
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x424b(%rip),%rsi
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x878(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x878(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3fbb(%rip),%xmm0
mov    $0xa7,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x41e0(%rip),%rsi
mov    $0x1,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x870(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x870(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3f45(%rip),%xmm0
mov    $0xa8,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4172(%rip),%rsi
mov    $0x2,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x868(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x868(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3ecf(%rip),%xmm0
mov    $0xa9,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4104(%rip),%rsi
mov    $0x14,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x860(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x860(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3e59(%rip),%xmm0
mov    $0xaa,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4096(%rip),%rsi
mov    $0x16,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x858(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x858(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3de3(%rip),%xmm0
mov    $0xab,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x4028(%rip),%rsi
mov    $0x17,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x850(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x850(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3d6d(%rip),%xmm0
mov    $0xac,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3fba(%rip),%rsi
mov    $0x1e,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x848(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x848(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3cf7(%rip),%xmm0
mov    $0xad,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3f4c(%rip),%rsi
mov    $0x1f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x840(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x840(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3c81(%rip),%xmm0
mov    $0xae,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3ede(%rip),%rsi
mov    $0x20,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x838(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x838(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3c0b(%rip),%xmm0
mov    $0xaf,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3e70(%rip),%rsi
mov    $0x23,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x830(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x830(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3b95(%rip),%xmm0
mov    $0xb0,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3e02(%rip),%rsi
mov    $0x24,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x828(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x828(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3b1f(%rip),%xmm0
mov    $0xb1,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3d94(%rip),%rsi
mov    $0x25,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x820(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x820(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3aa9(%rip),%xmm0
mov    $0xb2,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3d26(%rip),%rsi
mov    $0xffffffff,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x818(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x818(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3a33(%rip),%xmm0
mov    $0xb3,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3cb8(%rip),%rsi
mov    $0xfffffffe,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x810(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x810(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x39bd(%rip),%xmm0
mov    $0xb4,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3c4a(%rip),%rsi
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x808(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x808(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3947(%rip),%xmm0
mov    $0xb5,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3bdc(%rip),%rsi
mov    $0xffffffec,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x800(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x800(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x38d1(%rip),%xmm0
mov    $0xb6,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3b6e(%rip),%rsi
mov    $0xffffffea,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7f8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7f8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x385b(%rip),%xmm0
mov    $0xb7,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3b00(%rip),%rsi
mov    $0xffffffe9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7f0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7f0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x37e5(%rip),%xmm0
mov    $0xb8,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3a92(%rip),%rsi
mov    $0xffffffe7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7e8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7e8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x376f(%rip),%xmm0
mov    $0xb9,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3a24(%rip),%rsi
mov    $0xffffffd9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7e0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7e0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x36f9(%rip),%xmm0
mov    $0xba,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x3b0d(%rip),%rax
mov    %rax,-0x20(%rbp)
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x39ab(%rip),%rsi
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7d8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7d8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x367b(%rip),%xmm0
mov    $0xbd,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3940(%rip),%rsi
mov    $0x1,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7d0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7d0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3605(%rip),%xmm0
mov    $0xbe,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x38d2(%rip),%rsi
mov    $0x2,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7c8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7c8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x358f(%rip),%xmm0
mov    $0xbf,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3864(%rip),%rsi
mov    $0x14,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7c0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7c0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3519(%rip),%xmm0
mov    $0xc0,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x37f6(%rip),%rsi
mov    $0x16,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7b8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7b8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x34a3(%rip),%xmm0
mov    $0xc1,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3788(%rip),%rsi
mov    $0x17,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7b0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7b0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x342d(%rip),%xmm0
mov    $0xc2,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x371a(%rip),%rsi
mov    $0x23,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7a8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7a8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x33b7(%rip),%xmm0
mov    $0xc3,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x36ac(%rip),%rsi
mov    $0x24,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x7a0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x7a0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3341(%rip),%xmm0
mov    $0xc4,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x363e(%rip),%rsi
mov    $0x25,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x798(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x798(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x32cb(%rip),%xmm0
mov    $0xc5,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x35d0(%rip),%rsi
mov    $0x27,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x790(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x790(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3255(%rip),%xmm0
mov    $0xc6,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3562(%rip),%rsi
mov    $0xffffffff,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x788(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x788(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x31df(%rip),%xmm0
mov    $0xc7,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x34f4(%rip),%rsi
mov    $0xfffffffe,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x780(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x780(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3169(%rip),%xmm0
mov    $0xc8,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3486(%rip),%rsi
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x778(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x778(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x30f3(%rip),%xmm0
mov    $0xc9,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3418(%rip),%rsi
mov    $0xffffffec,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x770(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x770(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x307d(%rip),%xmm0
mov    $0xca,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x33aa(%rip),%rsi
mov    $0xffffffea,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x768(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x768(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3007(%rip),%xmm0
mov    $0xcb,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x333c(%rip),%rsi
mov    $0xffffffe9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x760(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x760(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x2f91(%rip),%xmm0
mov    $0xcc,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x32ce(%rip),%rsi
mov    $0xffffffe7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x758(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x758(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x2f1b(%rip),%xmm0
mov    $0xcd,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
mov    -0x20(%rbp),%rdx
lea    0x3260(%rip),%rsi
mov    $0xffffffd9,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x750(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x750(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x2ea5(%rip),%xmm0
mov    $0xce,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x31f6(%rip),%rsi
lea    0x320c(%rip),%rdx
mov    $0x3039,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x748(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x748(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xcf,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x318a(%rip),%rsi
lea    0x31a1(%rip),%rdx
mov    $0x52c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x740(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x740(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xd1,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x311e(%rip),%rsi
lea    0x312c(%rip),%rdx
mov    $0x7b,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x738(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x738(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xd2,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x30b2(%rip),%rsi
lea    0x3563(%rip),%rdx
mov    $0xfffffebc,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x730(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x730(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xd3,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x3046(%rip),%rsi
lea    0x305e(%rip),%rdx
mov    $0xfffffebc,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x728(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x728(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x2c7c(%rip),%xmm0
mov    $0xd4,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2fd5(%rip),%rsi
lea    0x2ff7(%rip),%rdx
mov    $0xfffffebb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x720(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x720(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xd9,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2f69(%rip),%rsi
lea    0x2f8b(%rip),%rdx
mov    $0xfffffebb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x718(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x718(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xda,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2efd(%rip),%rsi
lea    0x2f29(%rip),%rdx
mov    $0xfffffeb8,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x710(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x710(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xdb,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2e91(%rip),%rsi
lea    0x2ec9(%rip),%rdx
mov    $0xfffffeb8,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x708(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x708(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x2ac7(%rip),%xmm0
mov    $0xdc,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2e20(%rip),%rsi
lea    0x2e66(%rip),%rdx
mov    $0xfffffeb7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x700(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x700(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xdd,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2db4(%rip),%rsi
lea    0x2e08(%rip),%rdx
mov    $0xfffffeb7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6f8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6f8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xde,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2d48(%rip),%rsi
lea    0x2d62(%rip),%rdx
mov    $0xfffffebb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6f0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6f0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xdf,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2cdc(%rip),%rsi
lea    0x2cf6(%rip),%rdx
mov    $0xfffffebb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6e8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6e8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xe0,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2c70(%rip),%rsi
lea    0x2c94(%rip),%rdx
mov    $0xfffffeb8,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6e0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6e0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xe1,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2c04(%rip),%rsi
lea    0x2c36(%rip),%rdx
mov    $0xfffffeb8,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6d8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6d8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x283a(%rip),%xmm0
mov    $0xe2,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2b93(%rip),%rsi
lea    0x2bd1(%rip),%rdx
mov    $0xfffffeb7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6d0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6d0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xe3,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2b27(%rip),%rsi
lea    0x2b73(%rip),%rdx
mov    $0xfffffeb7,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6c8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6c8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
xorps  %xmm0,%xmm0
mov    $0xe4,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
mov    $0x0,%al
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,-0x6b4(%rbp)
lea    -0x410(%rbp),%rdi
lea    0x2aa4(%rip),%rsi
lea    0x2ac6(%rip),%rdx
mov    $0x135,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6c0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6c0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
mov    -0x6b4(%rbp),%edi
movsd  -0x18(%rbp),%xmm0
mov    -0x10(%rbp),%rsi
mov    $0xeb,%edx
lea    -0x4(%rbp),%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2a35(%rip),%rsi
lea    0x2a57(%rip),%rdx
mov    $0x134,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6b0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6b0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x2663(%rip),%xmm0
mov    $0xed,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x29c4(%rip),%rsi
lea    0x2a26(%rip),%rdx
mov    $0x131,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6a8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6a8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x25ea(%rip),%xmm0
mov    $0xee,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2953(%rip),%rsi
lea    0x29b5(%rip),%rdx
mov    $0x130,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x6a0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x6a0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x2571(%rip),%xmm0
mov    $0xef,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
mov    $0x0,%al
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,-0x68c(%rbp)
lea    -0x410(%rbp),%rdi
lea    0x28cb(%rip),%rsi
lea    0x293a(%rip),%rdx
mov    $0x133,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x698(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x698(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
mov    -0x68c(%rbp),%edi
movsd  -0x18(%rbp),%xmm0
mov    -0x10(%rbp),%rsi
mov    $0xf1,%edx
lea    -0x4(%rbp),%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x285c(%rip),%rsi
lea    0x28d6(%rip),%rdx
mov    $0x133,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x688(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x688(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x2472(%rip),%xmm0
mov    $0xf2,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
mov    $0x0,%al
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,-0x674(%rbp)
lea    -0x410(%rbp),%rdi
lea    0x27d4(%rip),%rsi
lea    0x27f0(%rip),%rdx
mov    $0x135,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x680(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x680(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
mov    -0x674(%rbp),%edi
movsd  -0x18(%rbp),%xmm0
mov    -0x10(%rbp),%rsi
mov    $0xf4,%edx
lea    -0x4(%rbp),%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2765(%rip),%rsi
lea    0x2780(%rip),%rdx
mov    $0x134,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x670(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x670(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x2393(%rip),%xmm0
mov    $0xf6,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x26f4(%rip),%rsi
lea    0x274f(%rip),%rdx
mov    $0x131,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x668(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x668(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x231a(%rip),%xmm0
mov    $0xf8,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2683(%rip),%rsi
lea    0x26dd(%rip),%rdx
mov    $0x130,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x660(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x660(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x22a1(%rip),%xmm0
mov    $0xf9,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
mov    $0x0,%al
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,-0x64c(%rbp)
lea    -0x410(%rbp),%rdi
lea    0x25fb(%rip),%rsi
lea    0x2662(%rip),%rdx
mov    $0x133,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x658(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x658(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
mov    -0x64c(%rbp),%edi
movsd  -0x18(%rbp),%xmm0
mov    -0x10(%rbp),%rsi
mov    $0xfa,%edx
lea    -0x4(%rbp),%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x258c(%rip),%rsi
lea    0x25fe(%rip),%rdx
mov    $0x133,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x648(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x648(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x21a2(%rip),%xmm0
mov    $0xfb,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
mov    $0x0,%al
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,-0x634(%rbp)
lea    -0x410(%rbp),%rdi
lea    0x2504(%rip),%rsi
lea    0x2588(%rip),%rdx
mov    $0x12f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x640(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x640(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
mov    -0x634(%rbp),%edi
movsd  -0x18(%rbp),%xmm0
mov    -0x10(%rbp),%rsi
mov    $0xfc,%edx
lea    -0x4(%rbp),%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2495(%rip),%rsi
lea    0x252d(%rip),%rdx
mov    $0x12f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x630(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x630(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x20c3(%rip),%xmm0
mov    $0xfd,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2424(%rip),%rsi
lea    0x24cb(%rip),%rdx
mov    $0x12c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x628(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x628(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x204a(%rip),%xmm0
mov    $0xfe,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x23b3(%rip),%rsi
lea    0x245a(%rip),%rdx
mov    $0x12b,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x620(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x620(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1fd1(%rip),%xmm0
mov    $0xff,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
mov    $0x0,%al
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,-0x60c(%rbp)
lea    -0x410(%rbp),%rdi
lea    0x232b(%rip),%rsi
lea    0x23e4(%rip),%rdx
mov    $0x12c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x618(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x618(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
mov    -0x60c(%rbp),%edi
movsd  -0x18(%rbp),%xmm0
mov    -0x10(%rbp),%rsi
mov    $0x100,%edx
lea    -0x4(%rbp),%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x22bc(%rip),%rsi
lea    0x2387(%rip),%rdx
mov    $0x12c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x608(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x608(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1ed2(%rip),%xmm0
mov    $0x101,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
mov    $0x0,%al
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,-0x5f4(%rbp)
lea    -0x410(%rbp),%rdi
lea    0x2234(%rip),%rsi
lea    0x22b1(%rip),%rdx
mov    $0x12f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x600(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x600(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
mov    -0x5f4(%rbp),%edi
movsd  -0x18(%rbp),%xmm0
mov    -0x10(%rbp),%rsi
mov    $0x102,%edx
lea    -0x4(%rbp),%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x21c5(%rip),%rsi
lea    0x2251(%rip),%rdx
mov    $0x12f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x5f0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x5f0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1df3(%rip),%xmm0
mov    $0x103,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x2154(%rip),%rsi
lea    0x21f3(%rip),%rdx
mov    $0x12c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x5e8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x5e8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1d7a(%rip),%xmm0
mov    $0x104,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x20e3(%rip),%rsi
lea    0x2183(%rip),%rdx
mov    $0x12b,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x5e0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x5e0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1d01(%rip),%xmm0
mov    $0x105,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
mov    $0x0,%al
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,-0x5cc(%rbp)
lea    -0x410(%rbp),%rdi
lea    0x205b(%rip),%rsi
lea    0x210c(%rip),%rdx
mov    $0x12c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x5d8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x5d8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
mov    -0x5cc(%rbp),%edi
movsd  -0x18(%rbp),%xmm0
mov    -0x10(%rbp),%rsi
mov    $0x106,%edx
lea    -0x4(%rbp),%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1fec(%rip),%rsi
lea    0x20af(%rip),%rdx
mov    $0x12c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x5c8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x5c8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1c02(%rip),%xmm0
mov    $0x107,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1f7b(%rip),%rsi
lea    0x2050(%rip),%rdx
mov    $0x124,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x5c0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x5c0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1b89(%rip),%xmm0
mov    $0x108,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1f0a(%rip),%rsi
lea    0x1ff1(%rip),%rdx
mov    $0x124,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x5b8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x5b8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1b18(%rip),%xmm0
mov    $0x109,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
mov    $0x0,%al
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,-0x5a4(%rbp)
lea    -0x410(%rbp),%rdi
lea    0x1e82(%rip),%rsi
lea    0x1f7b(%rip),%rdx
mov    $0x124,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x5b0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x5b0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
mov    -0x5a4(%rbp),%edi
movsd  -0x18(%rbp),%xmm0
mov    -0x10(%rbp),%rsi
mov    $0x10a,%edx
lea    -0x4(%rbp),%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1e13(%rip),%rsi
lea    0x1f1e(%rip),%rdx
mov    $0xffffffea,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x5a0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x5a0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1a19(%rip),%xmm0
mov    $0x110,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1da2(%rip),%rsi
lea    0x1eb3(%rip),%rdx
mov    $0xffffffdf,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x598(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x598(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x19a0(%rip),%xmm0
mov    $0x113,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1d31(%rip),%rsi
lea    0x1e4c(%rip),%rdx
mov    $0xffffff1f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x590(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x590(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1927(%rip),%xmm0
mov    $0x114,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1cc0(%rip),%rsi
lea    0x1df1(%rip),%rdx
mov    $0x6c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x588(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x588(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x18ae(%rip),%xmm0
mov    $0x117,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1c4f(%rip),%rsi
lea    0x1d80(%rip),%rdx
mov    $0x6d,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x580(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x580(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1835(%rip),%xmm0
mov    $0x118,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1bde(%rip),%rsi
lea    0x1d0f(%rip),%rdx
mov    $0x6e,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x578(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x578(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x17bc(%rip),%xmm0
mov    $0x119,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1b6d(%rip),%rsi
lea    0x1c9e(%rip),%rdx
mov    $0x6f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x570(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x570(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1743(%rip),%xmm0
mov    $0x11a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1afc(%rip),%rsi
lea    0x1c2d(%rip),%rdx
mov    $0x70,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x568(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x568(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x16ca(%rip),%xmm0
mov    $0x11b,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1a8b(%rip),%rsi
lea    0x1bbc(%rip),%rdx
mov    $0x71,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x560(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x560(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1651(%rip),%xmm0
mov    $0x11c,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1a1a(%rip),%rsi
lea    0x1b4b(%rip),%rdx
mov    $0x72,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x558(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x558(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x15d8(%rip),%xmm0
mov    $0x11d,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x19a9(%rip),%rsi
lea    0x1ada(%rip),%rdx
mov    $0x73,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x550(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x550(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x155f(%rip),%xmm0
mov    $0x11e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1938(%rip),%rsi
lea    0x1a73(%rip),%rdx
mov    $0x6c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x548(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x548(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x14e6(%rip),%xmm0
mov    $0x120,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x18c7(%rip),%rsi
lea    0x1a02(%rip),%rdx
mov    $0x6d,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x540(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x540(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x146d(%rip),%xmm0
mov    $0x122,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1856(%rip),%rsi
lea    0x1991(%rip),%rdx
mov    $0x6e,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x538(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x538(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x13f4(%rip),%xmm0
mov    $0x124,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x17e5(%rip),%rsi
lea    0x1920(%rip),%rdx
mov    $0x6f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x530(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x530(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x137b(%rip),%xmm0
mov    $0x126,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1774(%rip),%rsi
lea    0x18af(%rip),%rdx
mov    $0x70,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x528(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x528(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1302(%rip),%xmm0
mov    $0x128,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1703(%rip),%rsi
lea    0x183e(%rip),%rdx
mov    $0x71,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x520(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x520(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1289(%rip),%xmm0
mov    $0x12a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1692(%rip),%rsi
lea    0x17cd(%rip),%rdx
mov    $0x72,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x518(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x518(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1210(%rip),%xmm0
mov    $0x12c,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1621(%rip),%rsi
lea    0x175c(%rip),%rdx
mov    $0x73,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x510(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x510(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x1197(%rip),%xmm0
mov    $0x12e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x15b0(%rip),%rsi
lea    0x1705(%rip),%rdx
mov    $0x6c,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x508(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x508(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x115e(%rip),%xmm0
mov    $0x130,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x153f(%rip),%rsi
lea    0x1694(%rip),%rdx
mov    $0x6d,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x500(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x500(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x10e5(%rip),%xmm0
mov    $0x132,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x14ce(%rip),%rsi
lea    0x1623(%rip),%rdx
mov    $0x6e,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4f8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4f8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x106c(%rip),%xmm0
mov    $0x134,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x145d(%rip),%rsi
lea    0x15b2(%rip),%rdx
mov    $0x6f,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4f0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4f0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xff3(%rip),%xmm0
mov    $0x136,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x13ec(%rip),%rsi
lea    0x1541(%rip),%rdx
mov    $0x70,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4e8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4e8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xf7a(%rip),%xmm0
mov    $0x138,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x137b(%rip),%rsi
lea    0x14d0(%rip),%rdx
mov    $0x71,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4e0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4e0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xf01(%rip),%xmm0
mov    $0x13a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x130a(%rip),%rsi
lea    0x145f(%rip),%rdx
mov    $0x72,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4d8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4d8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xe88(%rip),%xmm0
mov    $0x13c,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1299(%rip),%rsi
lea    0x13ee(%rip),%rdx
mov    $0x73,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4d0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4d0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xe0f(%rip),%xmm0
mov    $0x13e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1228(%rip),%rsi
lea    0x1397(%rip),%rdx
mov    $0xfffffbf5,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4c8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4c8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xd96(%rip),%xmm0
mov    $0x140,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x11b7(%rip),%rsi
lea    0x1634(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4c0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4c0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xd20(%rip),%xmm0
mov    $0x156,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x1149(%rip),%rsi
lea    0x15d8(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4b8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4b8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xcaa(%rip),%xmm0
mov    $0x157,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x10db(%rip),%rsi
lea    0x157c(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4b0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4b0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xc3c(%rip),%xmm0
mov    $0x158,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x106d(%rip),%rsi
lea    0x1520(%rip),%rdx
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4a8(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4a8(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xbd3(%rip),%xmm0
mov    $0x159,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xffc(%rip),%rsi
lea    0x14c6(%rip),%rdx
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x4a0(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x4a0(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xb5a(%rip),%xmm0
mov    $0x15a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xf8b(%rip),%rsi
lea    0x146c(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x498(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x498(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xae4(%rip),%xmm0
mov    $0x15f,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xf1d(%rip),%rsi
lea    0x1412(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x490(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x490(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xa6e(%rip),%xmm0
mov    $0x160,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xeaf(%rip),%rsi
lea    0x13b8(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x488(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x488(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0xa00(%rip),%xmm0
mov    $0x161,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xe41(%rip),%rsi
lea    0x135e(%rip),%rdx
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x480(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x480(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x997(%rip),%xmm0
mov    $0x163,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xdd0(%rip),%rsi
lea    0x1306(%rip),%rdx
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x478(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x478(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x91e(%rip),%xmm0
mov    $0x164,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xd5f(%rip),%rsi
lea    0x12ae(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x470(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x470(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x8a8(%rip),%xmm0
mov    $0x16a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xcf1(%rip),%rsi
lea    0x1261(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x468(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x468(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x832(%rip),%xmm0
mov    $0x16c,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xc83(%rip),%rsi
lea    0x1214(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x460(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x460(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x7c4(%rip),%xmm0
mov    $0x16e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xc15(%rip),%rsi
lea    0x11c7(%rip),%rdx
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x458(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x458(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x75b(%rip),%xmm0
mov    $0x170,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xba4(%rip),%rsi
lea    0x117c(%rip),%rdx
mov    $0xfffffffb,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x450(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x450(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x6e2(%rip),%xmm0
mov    $0x172,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xb33(%rip),%rsi
lea    0x1131(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x448(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x448(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x66c(%rip),%xmm0
mov    $0x178,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xac5(%rip),%rsi
lea    0x10f2(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x440(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x440(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x5f6(%rip),%xmm0
mov    $0x17a,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0xa57(%rip),%rsi
lea    0x10b3(%rip),%rdx
xor    %ecx,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x438(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x438(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x588(%rip),%xmm0
mov    $0x17c,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x9e9(%rip),%rsi
lea    0x1074(%rip),%rdx
mov    $0xfffffffd,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x430(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x430(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x51f(%rip),%xmm0
mov    $0x17e,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x978(%rip),%rsi
lea    0x1035(%rip),%rdx
mov    $0xfffffffd,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x428(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x428(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x4a6(%rip),%xmm0
mov    $0x180,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x907(%rip),%rsi
lea    0xff6(%rip),%rdx
mov    $0xfffffebc,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x420(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x420(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x42d(%rip),%xmm0
mov    $0x185,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    -0x410(%rbp),%rdi
lea    0x896(%rip),%rsi
lea    0xf97(%rip),%rdx
mov    $0xfffffbcc,%ecx
mov    $0x0,%al
call   1060 <sprintf@plt>
lea    -0x410(%rbp),%rax
mov    %rax,-0x418(%rbp)
lea    -0x410(%rbp),%rdi
call   1030 <strlen@plt>
mov    -0x418(%rbp),%rdi
mov    %rax,%rsi
lea    -0x18(%rbp),%rdx
mov    $0x0,%al
call   1050 <grisu3_parse_double@plt>
movsd  -0x18(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
movsd  0x3b4(%rip),%xmm0
mov    $0x186,%esi
lea    -0x4(%rbp),%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    -0x4(%rbp),%eax
add    $0xae0,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<test_Strtod>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x408,%rsp
movl   $0x0,0xc(%rsp)
lea    0x531f(%rip),%r14
lea    0x5335(%rip),%rbp
lea    0x10(%rsp),%rbx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rsp,%r12
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
lea    0x52d0(%rip),%r15
lea    0xc(%rsp),%r13
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0x50,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x2,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0x51,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffe,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0x52,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffc19,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0x53,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x3e7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0x54,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x51c3(%rip),%rbp
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4cd4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x57,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4c90(%rip),%xmm0
mov    %r15,%rdi
mov    $0x58,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x2,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4c4c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x59,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x14,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4c08(%rip),%xmm0
mov    %r15,%rdi
mov    $0x5a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x16,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4bc4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x5b,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x17,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4b80(%rip),%xmm0
mov    %r15,%rdi
mov    $0x5c,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x23,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4b3c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x5e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x24,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4af8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x5f,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x25,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4ab4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x60,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffff,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4a70(%rip),%xmm0
mov    %r15,%rdi
mov    $0x61,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffe,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4a2c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x62,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x49e8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x63,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffec,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x49a4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x64,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffea,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4960(%rip),%xmm0
mov    %r15,%rdi
mov    $0x65,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x491c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x66,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x48d8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x67,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffd9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4894(%rip),%xmm0
mov    %r15,%rdi
mov    $0x68,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x5142(%rip),%rbp
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x484c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x6b,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4808(%rip),%xmm0
mov    %r15,%rdi
mov    $0x6c,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x2,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x47c4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x6d,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x14,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4780(%rip),%xmm0
mov    %r15,%rdi
mov    $0x6e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x16,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x473c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x6f,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x17,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x46f8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x70,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x23,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x46b4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x71,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x24,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4670(%rip),%xmm0
mov    %r15,%rdi
mov    $0x72,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x25,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x462c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x73,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffff,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x45e8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x74,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffe,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x45a4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x75,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4560(%rip),%xmm0
mov    %r15,%rdi
mov    $0x76,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffec,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x451c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x77,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffea,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x44d8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x78,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4494(%rip),%xmm0
mov    %r15,%rdi
mov    $0x79,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4450(%rip),%xmm0
mov    %r15,%rdi
mov    $0x7a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffd9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x440c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x7b,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x488a(%rip),%rbp
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x43c4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x7e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4380(%rip),%xmm0
mov    %r15,%rdi
mov    $0x7f,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x2,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x433c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x80,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x14,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x42f8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x81,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x16,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x42b4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x82,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x17,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4270(%rip),%xmm0
mov    %r15,%rdi
mov    $0x83,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x23,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x422c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x84,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x24,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x41e8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x85,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x25,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x41a4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x86,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffff,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4160(%rip),%xmm0
mov    %r15,%rdi
mov    $0x87,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffe,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x411c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x88,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x40d8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x89,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffec,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4094(%rip),%xmm0
mov    %r15,%rdi
mov    $0x8a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffea,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x4050(%rip),%xmm0
mov    %r15,%rdi
mov    $0x8b,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x400c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x8c,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3fc8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x8d,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffd9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3f84(%rip),%xmm0
mov    %r15,%rdi
mov    $0x8e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x43c0(%rip),%rbp
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3f3c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x91,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3ef8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x92,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x2,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3eb4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x93,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x14,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3e70(%rip),%xmm0
mov    %r15,%rdi
mov    $0x94,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x16,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3e2c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x95,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x17,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3de8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x96,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1e,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3da4(%rip),%xmm0
mov    %r15,%rdi
mov    $0x97,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3d60(%rip),%xmm0
mov    %r15,%rdi
mov    $0x98,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x20,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3d1c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x99,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x23,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3cd8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x9a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x24,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3c94(%rip),%xmm0
mov    %r15,%rdi
mov    $0x9b,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x25,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3c50(%rip),%xmm0
mov    %r15,%rdi
mov    $0x9c,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffff,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3c0c(%rip),%xmm0
mov    %r15,%rdi
mov    $0x9d,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffe,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3bc8(%rip),%xmm0
mov    %r15,%rdi
mov    $0x9e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3b84(%rip),%xmm0
mov    %r15,%rdi
mov    $0x9f,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffec,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3b40(%rip),%xmm0
mov    %r15,%rdi
mov    $0xa0,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffea,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3afc(%rip),%xmm0
mov    %r15,%rdi
mov    $0xa1,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3ab8(%rip),%xmm0
mov    %r15,%rdi
mov    $0xa2,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3a74(%rip),%xmm0
mov    %r15,%rdi
mov    $0xa3,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffd9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3a30(%rip),%xmm0
mov    %r15,%rdi
mov    $0xa4,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x3c7c(%rip),%rbp
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x39e8(%rip),%xmm0
mov    %r15,%rdi
mov    $0xa7,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x39a4(%rip),%xmm0
mov    %r15,%rdi
mov    $0xa8,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x2,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3960(%rip),%xmm0
mov    %r15,%rdi
mov    $0xa9,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x14,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x391c(%rip),%xmm0
mov    %r15,%rdi
mov    $0xaa,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x16,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x38d8(%rip),%xmm0
mov    %r15,%rdi
mov    $0xab,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x17,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3894(%rip),%xmm0
mov    %r15,%rdi
mov    $0xac,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1e,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3850(%rip),%xmm0
mov    %r15,%rdi
mov    $0xad,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x380c(%rip),%xmm0
mov    %r15,%rdi
mov    $0xae,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x20,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x37c8(%rip),%xmm0
mov    %r15,%rdi
mov    $0xaf,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x23,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3784(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb0,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x24,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3740(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb1,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x25,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x36fc(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb2,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffff,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x36b8(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb3,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffe,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3674(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb4,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3630(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb5,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffec,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x35ec(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb6,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffea,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x35a8(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb7,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3564(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb8,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3520(%rip),%xmm0
mov    %r15,%rdi
mov    $0xb9,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffd9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x34dc(%rip),%xmm0
mov    %r15,%rdi
mov    $0xba,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x37ce(%rip),%rbp
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3494(%rip),%xmm0
mov    %r15,%rdi
mov    $0xbd,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x1,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3450(%rip),%xmm0
mov    %r15,%rdi
mov    $0xbe,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x2,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x340c(%rip),%xmm0
mov    %r15,%rdi
mov    $0xbf,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x14,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x33c8(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc0,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x16,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3384(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc1,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x17,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3340(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc2,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x23,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x32fc(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc3,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x24,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x32b8(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc4,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x25,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3274(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc5,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x27,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3230(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc6,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffff,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x31ec(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc7,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffe,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x31a8(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc8,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3164(%rip),%xmm0
mov    %r15,%rdi
mov    $0xc9,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffec,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3120(%rip),%xmm0
mov    %r15,%rdi
mov    $0xca,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffea,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x30dc(%rip),%xmm0
mov    %r15,%rdi
mov    $0xcb,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3098(%rip),%xmm0
mov    %r15,%rdi
mov    $0xcc,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffe7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3054(%rip),%xmm0
mov    %r15,%rdi
mov    $0xcd,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xffffffd9,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x3010(%rip),%xmm0
mov    %r15,%rdi
mov    $0xce,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
lea    0x313d(%rip),%rdx
mov    $0x3039,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xcf,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x30f9(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x52c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xd1,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x30a5(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x7b,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xd2,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
lea    0x34f7(%rip),%rdx
mov    $0xfffffebc,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xd3,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x3019(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xfffffebc,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2e9c(%rip),%xmm0
mov    %r15,%rdi
mov    $0xd4,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
lea    0x2fcd(%rip),%rbp
mov    %rbp,%rdx
mov    $0xfffffebb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xd9,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffebb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xda,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2f48(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xfffffeb8,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xdb,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2f09(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xfffffeb8,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2d6c(%rip),%xmm0
mov    %r15,%rdi
mov    $0xdc,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2ec7(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xfffffeb7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xdd,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2e8a(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xfffffeb7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xde,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2e05(%rip),%rbp
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffebb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xdf,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0xfffffebb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xe0,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2d7a(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xfffffeb8,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xe1,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2d3d(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xfffffeb8,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2ba6(%rip),%xmm0
mov    %r15,%rdi
mov    $0xe2,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2cf9(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xfffffeb7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xe3,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2cbc(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xfffffeb7,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
xorps  %xmm0,%xmm0
mov    %r15,%rdi
mov    $0xe4,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
xor    %eax,%eax
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,%ebp
mov    %rbx,%rdi
mov    %r14,%rsi
lea    0x2c2e(%rip),%rdx
mov    $0x135,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm0
mov    %ebp,%edi
mov    %r15,%rsi
mov    $0xeb,%edx
mov    %r13,%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
lea    0x2be4(%rip),%rdx
mov    $0x134,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2a6b(%rip),%xmm0
mov    %r15,%rdi
mov    $0xed,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2bda(%rip),%rbp
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x131,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2a20(%rip),%xmm0
mov    %r15,%rdi
mov    $0xee,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    %rbp,%rdx
mov    $0x130,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x29dc(%rip),%xmm0
mov    %r15,%rdi
mov    $0xef,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
xor    %eax,%eax
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,%ebp
lea    0x2b35(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x133,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm0
mov    %ebp,%edi
mov    %r15,%rsi
mov    $0xf1,%edx
mov    %r13,%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    0x2af6(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x133,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2937(%rip),%xmm0
mov    %r15,%rdi
mov    $0xf2,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
xor    %eax,%eax
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,%ebp
lea    0x2a35(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x135,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm0
mov    %ebp,%edi
mov    %r15,%rsi
mov    $0xf4,%edx
mov    %r13,%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    0x29ea(%rip),%rdx
mov    %rbx,%rdi
mov    %r14,%rbp
mov    %r14,%rsi
mov    $0x134,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x286f(%rip),%xmm0
mov    %r15,%rdi
mov    %r15,%r14
mov    $0xf6,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x29d4(%rip),%rdx
mov    %rbx,%rdi
mov    %rbp,%rsi
mov    $0x131,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2824(%rip),%xmm0
mov    %r15,%rdi
mov    $0xf8,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2983(%rip),%rdx
mov    %rbx,%rdi
mov    %rbp,%rsi
mov    %rbp,%r15
mov    $0x130,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x27d9(%rip),%xmm0
mov    %r14,%rdi
mov    $0xf9,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
xor    %eax,%eax
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,%ebp
lea    0x292a(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x133,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm0
mov    %ebp,%edi
mov    %r14,%rsi
mov    $0xfa,%edx
mov    %r13,%rcx
mov    %r13,%rbp
mov    $0x1,%al
call   1040 <check_double@plt>
lea    0x28e8(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x133,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2731(%rip),%xmm0
mov    %r14,%rdi
mov    %r14,%r13
mov    $0xfb,%esi
mov    %rbp,%rdx
mov    %rbp,%r14
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
xor    %eax,%eax
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,%ebp
lea    0x2891(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm0
mov    %ebp,%edi
mov    %r13,%rsi
mov    $0xfc,%edx
mov    %r14,%rcx
mov    %r14,%rbp
mov    $0x1,%al
call   1040 <check_double@plt>
lea    0x2858(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2663(%rip),%xmm0
mov    %r13,%rdi
mov    %r13,%r14
mov    $0xfd,%esi
mov    %rbp,%rdx
mov    %rbp,%r13
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2811(%rip),%rbp
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x12c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2612(%rip),%xmm0
mov    %r14,%rdi
mov    $0xfe,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x12b,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x25ce(%rip),%xmm0
mov    %r14,%rdi
mov    $0xff,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
xor    %eax,%eax
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,%ebp
lea    0x2771(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm0
mov    %ebp,%edi
mov    %r14,%rsi
mov    $0x100,%edx
mov    %r13,%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    0x2739(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2529(%rip),%xmm0
mov    %r14,%rdi
mov    $0x101,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
xor    %eax,%eax
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,%ebp
lea    0x2688(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm0
mov    %ebp,%edi
mov    %r14,%rsi
mov    $0x102,%edx
mov    %r13,%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    0x264d(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2464(%rip),%xmm0
mov    %r14,%rdi
mov    $0x103,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2610(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x241c(%rip),%xmm0
mov    %r14,%rdi
mov    $0x104,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x25c1(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12b,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x23d4(%rip),%xmm0
mov    %r14,%rdi
mov    $0x105,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
xor    %eax,%eax
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,%ebp
lea    0x256f(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm0
mov    %ebp,%edi
mov    %r14,%rsi
mov    $0x106,%edx
mov    %r13,%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    0x2537(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x12c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x232f(%rip),%xmm0
mov    %r14,%rdi
mov    $0x107,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x24f9(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x124,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x22e7(%rip),%xmm0
mov    %r14,%rdi
mov    $0x108,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x24bb(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x124,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2297(%rip),%xmm0
mov    %r14,%rdi
mov    $0x109,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
movabs $0x7ff0000000000000,%rdi
xor    %eax,%eax
call   1070 <grisu3_cast_double_from_uint64@plt>
mov    %eax,%ebp
lea    0x246a(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0x124,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm0
mov    %ebp,%edi
mov    %r14,%rsi
mov    $0x10a,%edx
mov    %r13,%rcx
mov    $0x1,%al
call   1040 <check_double@plt>
lea    0x2432(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xffffffea,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x21f2(%rip),%xmm0
mov    %r14,%rdi
mov    $0x110,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x23e8(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xffffffdf,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x21aa(%rip),%xmm0
mov    %r14,%rdi
mov    $0x113,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x23a2(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xffffff1f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2162(%rip),%xmm0
mov    %r14,%rdi
mov    $0x114,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x2368(%rip),%rbp
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2117(%rip),%xmm0
mov    %r14,%rdi
mov    $0x117,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6d,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x20d3(%rip),%xmm0
mov    %r14,%rdi
mov    $0x118,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6e,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x208f(%rip),%xmm0
mov    %r14,%rdi
mov    $0x119,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x204b(%rip),%xmm0
mov    %r14,%rdi
mov    $0x11a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x70,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x2007(%rip),%xmm0
mov    %r14,%rdi
mov    $0x11b,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x71,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1fc3(%rip),%xmm0
mov    %r14,%rdi
mov    $0x11c,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x72,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1f7f(%rip),%xmm0
mov    %r14,%rdi
mov    $0x11d,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x73,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1f3b(%rip),%xmm0
mov    %r14,%rdi
mov    $0x11e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x210b(%rip),%rbp
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1ef0(%rip),%xmm0
mov    %r14,%rdi
mov    $0x120,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6d,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1eac(%rip),%xmm0
mov    %r14,%rdi
mov    $0x122,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6e,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1e68(%rip),%xmm0
mov    %r14,%rdi
mov    $0x124,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1e24(%rip),%xmm0
mov    %r14,%rdi
mov    $0x126,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x70,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1de0(%rip),%xmm0
mov    %r14,%rdi
mov    $0x128,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x71,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1d9c(%rip),%xmm0
mov    %r14,%rdi
mov    $0x12a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x72,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1d58(%rip),%xmm0
mov    %r14,%rdi
mov    $0x12c,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x73,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1d14(%rip),%xmm0
mov    %r14,%rdi
mov    $0x12e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1ebe(%rip),%rbp
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6c,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1c89(%rip),%xmm0
mov    %r14,%rdi
mov    $0x130,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6d,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1c45(%rip),%xmm0
mov    %r14,%rdi
mov    $0x132,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6e,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1c01(%rip),%xmm0
mov    %r14,%rdi
mov    $0x134,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x6f,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1bbd(%rip),%xmm0
mov    %r14,%rdi
mov    $0x136,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x70,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1b79(%rip),%xmm0
mov    %r14,%rdi
mov    $0x138,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x71,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1b35(%rip),%xmm0
mov    %r14,%rdi
mov    $0x13a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x72,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1af1(%rip),%xmm0
mov    %r14,%rdi
mov    $0x13c,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
mov    %rbp,%rdx
mov    $0x73,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1aad(%rip),%xmm0
mov    %r14,%rdi
mov    $0x13e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1c71(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffbf5,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1a65(%rip),%xmm0
mov    %r14,%rdi
mov    $0x140,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1f2f(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1a20(%rip),%xmm0
mov    %r14,%rdi
mov    $0x156,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1ef4(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x19db(%rip),%xmm0
mov    %r14,%rdi
mov    $0x157,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1eb9(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x198e(%rip),%xmm0
mov    %r14,%rdi
mov    $0x158,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1e7e(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1936(%rip),%xmm0
mov    %r14,%rdi
mov    $0x159,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1e45(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x18ee(%rip),%xmm0
mov    %r14,%rdi
mov    $0x15a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1e0c(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x18a9(%rip),%xmm0
mov    %r14,%rdi
mov    $0x15f,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1dd3(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1864(%rip),%xmm0
mov    %r14,%rdi
mov    $0x160,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1d9a(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1817(%rip),%xmm0
mov    %r14,%rdi
mov    $0x161,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1d61(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x17bf(%rip),%xmm0
mov    %r14,%rdi
mov    $0x163,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1d2a(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1777(%rip),%xmm0
mov    %r14,%rdi
mov    $0x164,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1cf3(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1732(%rip),%xmm0
mov    %r14,%rdi
mov    $0x16a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1cc7(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x16ed(%rip),%xmm0
mov    %r14,%rdi
mov    $0x16c,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1c9b(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x16a0(%rip),%xmm0
mov    %r14,%rdi
mov    $0x16e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1c6f(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1648(%rip),%xmm0
mov    %r14,%rdi
mov    $0x170,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1c45(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffffb,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1600(%rip),%xmm0
mov    %r14,%rdi
mov    $0x172,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1c1b(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x15bb(%rip),%xmm0
mov    %r14,%rdi
mov    $0x178,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1bfd(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1576(%rip),%xmm0
mov    %r14,%rdi
mov    $0x17a,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1bdf(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
xor    %ecx,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1529(%rip),%xmm0
mov    %r14,%rdi
mov    $0x17c,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1bc1(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffffd,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x14d1(%rip),%xmm0
mov    %r14,%rdi
mov    $0x17e,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1ba3(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffffd,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1489(%rip),%xmm0
mov    %r14,%rdi
mov    $0x180,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1b85(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffebc,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x1441(%rip),%xmm0
mov    %r14,%rdi
mov    $0x185,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
lea    0x1b47(%rip),%rdx
mov    %rbx,%rdi
mov    %r15,%rsi
mov    $0xfffffbcc,%ecx
xor    %eax,%eax
call   1060 <sprintf@plt>
mov    %rbx,%rdi
call   1030 <strlen@plt>
mov    %rbx,%rdi
mov    %rax,%rsi
mov    %r12,%rdx
xor    %eax,%eax
call   1050 <grisu3_parse_double@plt>
movsd  (%rsp),%xmm1
movsd  0x13f9(%rip),%xmm0
mov    %r14,%rdi
mov    $0x186,%esi
mov    %r13,%rdx
mov    $0x2,%al
call   1040 <check_double@plt>
mov    0xc(%rsp),%eax
add    $0x408,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
@.str = [7 x i8] c"Strtod\00"
@.str.1 = [2 x i8] c"0\00"
@.str.2 = [6 x i8] c"%se%d\00"
@.str.3 = [2 x i8] c"1\00"
@.str.4 = [2 x i8] c"2\00"
@.str.5 = [2 x i8] c"9\00"
@.str.6 = [6 x i8] c"12345\00"
@.str.7 = [15 x i8] c"12345678901234\00"
@.str.8 = [16 x i8] c"123456789012345\00"
@.str.9 = [1 x i8] zeroinitializer
@.str.10 = [10 x i8] c"000000000\00"
@.str.11 = [2 x i8] c"3\00"
@.str.12 = [6 x i8] c"20000\00"
@.str.13 = [6 x i8] c"30000\00"
@.str.14 = [6 x i8] c"10000\00"
@.str.15 = [6 x i8] c"90000\00"
@.str.16 = [10 x i8] c"000000001\00"
@.str.17 = [14 x i8] c"0000000020000\00"
@.str.18 = [12 x i8] c"00000030000\00"
@.str.19 = [14 x i8] c"0000000010000\00"
@.str.20 = [14 x i8] c"0000000090000\00"
@.str.21 = [5 x i8] c"1234\00"
@.str.22 = [3 x i8] c"18\00"
@.str.23 = [3 x i8] c"17\00"
@.str.24 = [8 x i8] c"0000001\00"
@.str.25 = [9 x i8] c"00000001\00"
@.str.26 = [12 x i8] c"00000001234\00"
@.str.27 = [13 x i8] c"000000001234\00"
@.str.28 = [11 x i8] c"0000000018\00"
@.str.29 = [11 x i8] c"0000000017\00"
@.str.30 = [8 x i8] c"1000000\00"
@.str.31 = [7 x i8] c"100000\00"
@.str.32 = [10 x i8] c"123400000\00"
@.str.33 = [10 x i8] c"180000000\00"
@.str.34 = [10 x i8] c"170000000\00"
@.str.35 = [15 x i8] c"00000001000000\00"
@.str.36 = [19 x i8] c"000000000000100000\00"
@.str.37 = [18 x i8] c"00000000123400000\00"
@.str.38 = [17 x i8] c"0000000123400000\00"
@.str.39 = [18 x i8] c"00000000180000000\00"
@.str.40 = [18 x i8] c"00000000170000000\00"
@.str.41 = [18 x i8] c"17976931348623157\00"
@.str.42 = [18 x i8] c"17976931348623158\00"
@.str.43 = [18 x i8] c"17976931348623159\00"
@.str.44 = [6 x i8] c"89255\00"
@.str.45 = [10 x i8] c"358416272\00"
@.str.46 = [22 x i8] c"104110013277974872254\00"
@.str.47 = [10 x i8] c"123456789\00"
@.str.48 = [26 x i8] c"1234567890123456789012345\00"
@.str.49 = [26 x i8] c"1234567890123456789052345\00"
@.str.50 = [782 x i8] c"5445618932859895362967233318697132813618813095743952975439298223406969961560047552942717636670910728746893019786283454139917900193169748259349067524939840552682198095012176093045431437495773903922425632551857520884625114624126588173520906670968542074438852601438992904761759703022688483745081090292688986958251711580854575674815074162979705098246243690189880319928315307816832576838178256307401454285988871020923752587330172447966674453785790265533466496640456213871241930958703059911787722565044368663670643970181259143319016472430928902201239474588139233890135329130660705762320235358869874608541509790266400643191187286648422874774910682648288516244021893172769161449825765517353755844373640588822904791244190695299838293263075467057383813882521706545084301049855505888186560731\00"
@.str.51 = [18 x i8] c"72057594037927928\00"
@.str.52 = [18 x i8] c"72057594037927936\00"
@.str.53 = [18 x i8] c"72057594037927932\00"
@.str.54 = [23 x i8] c"7205759403792793199999\00"
@.str.55 = [23 x i8] c"7205759403792793200001\00"
@.str.56 = [20 x i8] c"9223372036854774784\00"
@.str.57 = [20 x i8] c"9223372036854775808\00"
@.str.58 = [20 x i8] c"9223372036854775296\00"
@.str.59 = [25 x i8] c"922337203685477529599999\00"
@.str.60 = [25 x i8] c"922337203685477529600001\00"
@.str.61 = [33 x i8] c"10141204801825834086073718800384\00"
@.str.62 = [33 x i8] c"10141204801825835211973625643008\00"
@.str.63 = [33 x i8] c"10141204801825834649023672221696\00"
@.str.64 = [38 x i8] c"1014120480182583464902367222169599999\00"
@.str.65 = [38 x i8] c"1014120480182583464902367222169600001\00"
@.str.66 = [47 x i8] c"5708990770823838890407843763683279797179383808\00"
@.str.67 = [47 x i8] c"5708990770823839524233143877797980545530986496\00"
@.str.68 = [47 x i8] c"5708990770823839207320493820740630171355185152\00"
@.str.69 = [50 x i8] c"5708990770823839207320493820740630171355185151999\00"
@.str.70 = [50 x i8] c"5708990770823839207320493820740630171355185152001\00"
@.str.71 = [18 x i8] c"22250738585072011\00"
@.str.72 = [770 x i8] c"2225073858507201136057409796709131975934819546351645648023426109724822222021076945516529523908135087914149158913039621106870086438694594645527657207407820621743379988141063267329253552286881372149012981122451451889849057222307285255133155755015914397476397983411801999323962548289017107081850690630666655994938275772572015763062690663332647565300009245888316433037779791869612049497390377829704905051080609940730262937128958950003583799967207254304360284078895771796150945516748243471030702609144621572289880258182545180325707018860872113128079512233426288368622321503775666622503982534335974568884423900265498198385487948292206894721689831099698365846814022854243330660339850886445804001034933970427567186443383770486037861622771738545623065874679014086723327636718751\00"
define i32 @test_Strtod() {
%1 = alloca i32
%2 = alloca i8*
%3 = alloca double
%4 = alloca i8*
%5 = alloca [1001 x i8]
store i32 0, i32* %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i8** %2
store i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i8** %4
%6 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%7 = load i8*, i8** %4
%8 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %7, i32 1)
%9 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%10 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%11 = call i64 @strlen(i8* %10)
%12 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %9, i64 %11, double* %3)
%13 = load double, double* %3
%14 = load i8*, i8** %2
%15 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %13, i8* %14, i32 80, i32* %1)
%16 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%17 = load i8*, i8** %4
%18 = call i32 (i8*, i8*, ...) @sprintf(i8* %16, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %17, i32 2)
%19 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%20 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%21 = call i64 @strlen(i8* %20)
%22 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %19, i64 %21, double* %3)
%23 = load double, double* %3
%24 = load i8*, i8** %2
%25 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %23, i8* %24, i32 81, i32* %1)
%26 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%27 = load i8*, i8** %4
%28 = call i32 (i8*, i8*, ...) @sprintf(i8* %26, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %27, i32 -2)
%29 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%30 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%31 = call i64 @strlen(i8* %30)
%32 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %29, i64 %31, double* %3)
%33 = load double, double* %3
%34 = load i8*, i8** %2
%35 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %33, i8* %34, i32 82, i32* %1)
%36 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%37 = load i8*, i8** %4
%38 = call i32 (i8*, i8*, ...) @sprintf(i8* %36, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %37, i32 -999)
%39 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%40 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%41 = call i64 @strlen(i8* %40)
%42 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %39, i64 %41, double* %3)
%43 = load double, double* %3
%44 = load i8*, i8** %2
%45 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %43, i8* %44, i32 83, i32* %1)
%46 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%47 = load i8*, i8** %4
%48 = call i32 (i8*, i8*, ...) @sprintf(i8* %46, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %47, i32 999)
%49 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%50 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%51 = call i64 @strlen(i8* %50)
%52 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %49, i64 %51, double* %3)
%53 = load double, double* %3
%54 = load i8*, i8** %2
%55 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %53, i8* %54, i32 84, i32* %1)
store i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i8** %4
%56 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%57 = load i8*, i8** %4
%58 = call i32 (i8*, i8*, ...) @sprintf(i8* %56, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %57, i32 0)
%59 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%60 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%61 = call i64 @strlen(i8* %60)
%62 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %59, i64 %61, double* %3)
%63 = load double, double* %3
%64 = load i8*, i8** %2
%65 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+00, double %63, i8* %64, i32 87, i32* %1)
%66 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%67 = load i8*, i8** %4
%68 = call i32 (i8*, i8*, ...) @sprintf(i8* %66, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %67, i32 1)
%69 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%70 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%71 = call i64 @strlen(i8* %70)
%72 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %69, i64 %71, double* %3)
%73 = load double, double* %3
%74 = load i8*, i8** %2
%75 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+01, double %73, i8* %74, i32 88, i32* %1)
%76 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%77 = load i8*, i8** %4
%78 = call i32 (i8*, i8*, ...) @sprintf(i8* %76, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %77, i32 2)
%79 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%80 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%81 = call i64 @strlen(i8* %80)
%82 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %79, i64 %81, double* %3)
%83 = load double, double* %3
%84 = load i8*, i8** %2
%85 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+02, double %83, i8* %84, i32 89, i32* %1)
%86 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%87 = load i8*, i8** %4
%88 = call i32 (i8*, i8*, ...) @sprintf(i8* %86, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %87, i32 20)
%89 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%90 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%91 = call i64 @strlen(i8* %90)
%92 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %89, i64 %91, double* %3)
%93 = load double, double* %3
%94 = load i8*, i8** %2
%95 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+20, double %93, i8* %94, i32 90, i32* %1)
%96 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%97 = load i8*, i8** %4
%98 = call i32 (i8*, i8*, ...) @sprintf(i8* %96, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %97, i32 22)
%99 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%100 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%101 = call i64 @strlen(i8* %100)
%102 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %99, i64 %101, double* %3)
%103 = load double, double* %3
%104 = load i8*, i8** %2
%105 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+22, double %103, i8* %104, i32 91, i32* %1)
%106 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%107 = load i8*, i8** %4
%108 = call i32 (i8*, i8*, ...) @sprintf(i8* %106, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %107, i32 23)
%109 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%110 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%111 = call i64 @strlen(i8* %110)
%112 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %109, i64 %111, double* %3)
%113 = load double, double* %3
%114 = load i8*, i8** %2
%115 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x44B52D02C7E14AF6, double %113, i8* %114, i32 92, i32* %1)
%116 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%117 = load i8*, i8** %4
%118 = call i32 (i8*, i8*, ...) @sprintf(i8* %116, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %117, i32 35)
%119 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%120 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%121 = call i64 @strlen(i8* %120)
%122 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %119, i64 %121, double* %3)
%123 = load double, double* %3
%124 = load i8*, i8** %2
%125 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4733426172C74D82, double %123, i8* %124, i32 94, i32* %1)
%126 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%127 = load i8*, i8** %4
%128 = call i32 (i8*, i8*, ...) @sprintf(i8* %126, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %127, i32 36)
%129 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%130 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%131 = call i64 @strlen(i8* %130)
%132 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %129, i64 %131, double* %3)
%133 = load double, double* %3
%134 = load i8*, i8** %2
%135 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+36, double %133, i8* %134, i32 95, i32* %1)
%136 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%137 = load i8*, i8** %4
%138 = call i32 (i8*, i8*, ...) @sprintf(i8* %136, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %137, i32 37)
%139 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%140 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%141 = call i64 @strlen(i8* %140)
%142 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %139, i64 %141, double* %3)
%143 = load double, double* %3
%144 = load i8*, i8** %2
%145 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x479E17B84357691B, double %143, i8* %144, i32 96, i32* %1)
%146 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%147 = load i8*, i8** %4
%148 = call i32 (i8*, i8*, ...) @sprintf(i8* %146, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %147, i32 -1)
%149 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%150 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%151 = call i64 @strlen(i8* %150)
%152 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %149, i64 %151, double* %3)
%153 = load double, double* %3
%154 = load i8*, i8** %2
%155 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-01, double %153, i8* %154, i32 97, i32* %1)
%156 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%157 = load i8*, i8** %4
%158 = call i32 (i8*, i8*, ...) @sprintf(i8* %156, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %157, i32 -2)
%159 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%160 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%161 = call i64 @strlen(i8* %160)
%162 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %159, i64 %161, double* %3)
%163 = load double, double* %3
%164 = load i8*, i8** %2
%165 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-02, double %163, i8* %164, i32 98, i32* %1)
%166 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%167 = load i8*, i8** %4
%168 = call i32 (i8*, i8*, ...) @sprintf(i8* %166, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %167, i32 -5)
%169 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%170 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%171 = call i64 @strlen(i8* %170)
%172 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %169, i64 %171, double* %3)
%173 = load double, double* %3
%174 = load i8*, i8** %2
%175 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-05, double %173, i8* %174, i32 99, i32* %1)
%176 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%177 = load i8*, i8** %4
%178 = call i32 (i8*, i8*, ...) @sprintf(i8* %176, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %177, i32 -20)
%179 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%180 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%181 = call i64 @strlen(i8* %180)
%182 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %179, i64 %181, double* %3)
%183 = load double, double* %3
%184 = load i8*, i8** %2
%185 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3BC79CA10C924223, double %183, i8* %184, i32 100, i32* %1)
%186 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%187 = load i8*, i8** %4
%188 = call i32 (i8*, i8*, ...) @sprintf(i8* %186, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %187, i32 -22)
%189 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%190 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%191 = call i64 @strlen(i8* %190)
%192 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %189, i64 %191, double* %3)
%193 = load double, double* %3
%194 = load i8*, i8** %2
%195 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-22, double %193, i8* %194, i32 101, i32* %1)
%196 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%197 = load i8*, i8** %4
%198 = call i32 (i8*, i8*, ...) @sprintf(i8* %196, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %197, i32 -23)
%199 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%200 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%201 = call i64 @strlen(i8* %200)
%202 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %199, i64 %201, double* %3)
%203 = load double, double* %3
%204 = load i8*, i8** %2
%205 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3B282DB34012B251, double %203, i8* %204, i32 102, i32* %1)
%206 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%207 = load i8*, i8** %4
%208 = call i32 (i8*, i8*, ...) @sprintf(i8* %206, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %207, i32 -25)
%209 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%210 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%211 = call i64 @strlen(i8* %210)
%212 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %209, i64 %211, double* %3)
%213 = load double, double* %3
%214 = load i8*, i8** %2
%215 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-25, double %213, i8* %214, i32 103, i32* %1)
%216 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%217 = load i8*, i8** %4
%218 = call i32 (i8*, i8*, ...) @sprintf(i8* %216, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %217, i32 -39)
%219 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%220 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%221 = call i64 @strlen(i8* %220)
%222 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %219, i64 %221, double* %3)
%223 = load double, double* %3
%224 = load i8*, i8** %2
%225 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x37D5C72FB1552D83, double %223, i8* %224, i32 104, i32* %1)
store i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i8** %4
%226 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%227 = load i8*, i8** %4
%228 = call i32 (i8*, i8*, ...) @sprintf(i8* %226, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %227, i32 0)
%229 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%230 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%231 = call i64 @strlen(i8* %230)
%232 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %229, i64 %231, double* %3)
%233 = load double, double* %3
%234 = load i8*, i8** %2
%235 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+00, double %233, i8* %234, i32 107, i32* %1)
%236 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%237 = load i8*, i8** %4
%238 = call i32 (i8*, i8*, ...) @sprintf(i8* %236, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %237, i32 1)
%239 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%240 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%241 = call i64 @strlen(i8* %240)
%242 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %239, i64 %241, double* %3)
%243 = load double, double* %3
%244 = load i8*, i8** %2
%245 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+01, double %243, i8* %244, i32 108, i32* %1)
%246 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%247 = load i8*, i8** %4
%248 = call i32 (i8*, i8*, ...) @sprintf(i8* %246, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %247, i32 2)
%249 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%250 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%251 = call i64 @strlen(i8* %250)
%252 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %249, i64 %251, double* %3)
%253 = load double, double* %3
%254 = load i8*, i8** %2
%255 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+02, double %253, i8* %254, i32 109, i32* %1)
%256 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%257 = load i8*, i8** %4
%258 = call i32 (i8*, i8*, ...) @sprintf(i8* %256, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %257, i32 20)
%259 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%260 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%261 = call i64 @strlen(i8* %260)
%262 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %259, i64 %261, double* %3)
%263 = load double, double* %3
%264 = load i8*, i8** %2
%265 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+20, double %263, i8* %264, i32 110, i32* %1)
%266 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%267 = load i8*, i8** %4
%268 = call i32 (i8*, i8*, ...) @sprintf(i8* %266, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %267, i32 22)
%269 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%270 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%271 = call i64 @strlen(i8* %270)
%272 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %269, i64 %271, double* %3)
%273 = load double, double* %3
%274 = load i8*, i8** %2
%275 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+22, double %273, i8* %274, i32 111, i32* %1)
%276 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%277 = load i8*, i8** %4
%278 = call i32 (i8*, i8*, ...) @sprintf(i8* %276, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %277, i32 23)
%279 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%280 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%281 = call i64 @strlen(i8* %280)
%282 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %279, i64 %281, double* %3)
%283 = load double, double* %3
%284 = load i8*, i8** %2
%285 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+23, double %283, i8* %284, i32 112, i32* %1)
%286 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%287 = load i8*, i8** %4
%288 = call i32 (i8*, i8*, ...) @sprintf(i8* %286, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %287, i32 35)
%289 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%290 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%291 = call i64 @strlen(i8* %290)
%292 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %289, i64 %291, double* %3)
%293 = load double, double* %3
%294 = load i8*, i8** %2
%295 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+35, double %293, i8* %294, i32 113, i32* %1)
%296 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%297 = load i8*, i8** %4
%298 = call i32 (i8*, i8*, ...) @sprintf(i8* %296, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %297, i32 36)
%299 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%300 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%301 = call i64 @strlen(i8* %300)
%302 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %299, i64 %301, double* %3)
%303 = load double, double* %3
%304 = load i8*, i8** %2
%305 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+36, double %303, i8* %304, i32 114, i32* %1)
%306 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%307 = load i8*, i8** %4
%308 = call i32 (i8*, i8*, ...) @sprintf(i8* %306, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %307, i32 37)
%309 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%310 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%311 = call i64 @strlen(i8* %310)
%312 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %309, i64 %311, double* %3)
%313 = load double, double* %3
%314 = load i8*, i8** %2
%315 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+37, double %313, i8* %314, i32 115, i32* %1)
%316 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%317 = load i8*, i8** %4
%318 = call i32 (i8*, i8*, ...) @sprintf(i8* %316, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %317, i32 -1)
%319 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%320 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%321 = call i64 @strlen(i8* %320)
%322 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %319, i64 %321, double* %3)
%323 = load double, double* %3
%324 = load i8*, i8** %2
%325 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-01, double %323, i8* %324, i32 116, i32* %1)
%326 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%327 = load i8*, i8** %4
%328 = call i32 (i8*, i8*, ...) @sprintf(i8* %326, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %327, i32 -2)
%329 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%330 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%331 = call i64 @strlen(i8* %330)
%332 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %329, i64 %331, double* %3)
%333 = load double, double* %3
%334 = load i8*, i8** %2
%335 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-02, double %333, i8* %334, i32 117, i32* %1)
%336 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%337 = load i8*, i8** %4
%338 = call i32 (i8*, i8*, ...) @sprintf(i8* %336, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %337, i32 -5)
%339 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%340 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%341 = call i64 @strlen(i8* %340)
%342 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %339, i64 %341, double* %3)
%343 = load double, double* %3
%344 = load i8*, i8** %2
%345 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-05, double %343, i8* %344, i32 118, i32* %1)
%346 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%347 = load i8*, i8** %4
%348 = call i32 (i8*, i8*, ...) @sprintf(i8* %346, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %347, i32 -20)
%349 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%350 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%351 = call i64 @strlen(i8* %350)
%352 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %349, i64 %351, double* %3)
%353 = load double, double* %3
%354 = load i8*, i8** %2
%355 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-20, double %353, i8* %354, i32 119, i32* %1)
%356 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%357 = load i8*, i8** %4
%358 = call i32 (i8*, i8*, ...) @sprintf(i8* %356, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %357, i32 -22)
%359 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%360 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%361 = call i64 @strlen(i8* %360)
%362 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %359, i64 %361, double* %3)
%363 = load double, double* %3
%364 = load i8*, i8** %2
%365 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-22, double %363, i8* %364, i32 120, i32* %1)
%366 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%367 = load i8*, i8** %4
%368 = call i32 (i8*, i8*, ...) @sprintf(i8* %366, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %367, i32 -23)
%369 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%370 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%371 = call i64 @strlen(i8* %370)
%372 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %369, i64 %371, double* %3)
%373 = load double, double* %3
%374 = load i8*, i8** %2
%375 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-23, double %373, i8* %374, i32 121, i32* %1)
%376 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%377 = load i8*, i8** %4
%378 = call i32 (i8*, i8*, ...) @sprintf(i8* %376, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %377, i32 -25)
%379 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%380 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%381 = call i64 @strlen(i8* %380)
%382 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %379, i64 %381, double* %3)
%383 = load double, double* %3
%384 = load i8*, i8** %2
%385 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-25, double %383, i8* %384, i32 122, i32* %1)
%386 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%387 = load i8*, i8** %4
%388 = call i32 (i8*, i8*, ...) @sprintf(i8* %386, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %387, i32 -39)
%389 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%390 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%391 = call i64 @strlen(i8* %390)
%392 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %389, i64 %391, double* %3)
%393 = load double, double* %3
%394 = load i8*, i8** %2
%395 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-39, double %393, i8* %394, i32 123, i32* %1)
store i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i8** %4
%396 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%397 = load i8*, i8** %4
%398 = call i32 (i8*, i8*, ...) @sprintf(i8* %396, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %397, i32 0)
%399 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%400 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%401 = call i64 @strlen(i8* %400)
%402 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %399, i64 %401, double* %3)
%403 = load double, double* %3
%404 = load i8*, i8** %2
%405 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e+00, double %403, i8* %404, i32 126, i32* %1)
%406 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%407 = load i8*, i8** %4
%408 = call i32 (i8*, i8*, ...) @sprintf(i8* %406, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %407, i32 1)
%409 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%410 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%411 = call i64 @strlen(i8* %410)
%412 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %409, i64 %411, double* %3)
%413 = load double, double* %3
%414 = load i8*, i8** %2
%415 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e+01, double %413, i8* %414, i32 127, i32* %1)
%416 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%417 = load i8*, i8** %4
%418 = call i32 (i8*, i8*, ...) @sprintf(i8* %416, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %417, i32 2)
%419 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%420 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%421 = call i64 @strlen(i8* %420)
%422 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %419, i64 %421, double* %3)
%423 = load double, double* %3
%424 = load i8*, i8** %2
%425 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e+02, double %423, i8* %424, i32 128, i32* %1)
%426 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%427 = load i8*, i8** %4
%428 = call i32 (i8*, i8*, ...) @sprintf(i8* %426, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %427, i32 20)
%429 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%430 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%431 = call i64 @strlen(i8* %430)
%432 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %429, i64 %431, double* %3)
%433 = load double, double* %3
%434 = load i8*, i8** %2
%435 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e+20, double %433, i8* %434, i32 129, i32* %1)
%436 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%437 = load i8*, i8** %4
%438 = call i32 (i8*, i8*, ...) @sprintf(i8* %436, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %437, i32 22)
%439 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%440 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%441 = call i64 @strlen(i8* %440)
%442 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %439, i64 %441, double* %3)
%443 = load double, double* %3
%444 = load i8*, i8** %2
%445 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x44B30EE8E7179044, double %443, i8* %444, i32 130, i32* %1)
%446 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%447 = load i8*, i8** %4
%448 = call i32 (i8*, i8*, ...) @sprintf(i8* %446, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %447, i32 23)
%449 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%450 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%451 = call i64 @strlen(i8* %450)
%452 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %449, i64 %451, double* %3)
%453 = load double, double* %3
%454 = load i8*, i8** %2
%455 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x44E7D2A320DD7455, double %453, i8* %454, i32 131, i32* %1)
%456 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%457 = load i8*, i8** %4
%458 = call i32 (i8*, i8*, ...) @sprintf(i8* %456, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %457, i32 35)
%459 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%460 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%461 = call i64 @strlen(i8* %460)
%462 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %459, i64 %461, double* %3)
%463 = load double, double* %3
%464 = load i8*, i8** %2
%465 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4765AAADA1203732, double %463, i8* %464, i32 132, i32* %1)
%466 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%467 = load i8*, i8** %4
%468 = call i32 (i8*, i8*, ...) @sprintf(i8* %466, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %467, i32 36)
%469 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%470 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%471 = call i64 @strlen(i8* %470)
%472 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %469, i64 %471, double* %3)
%473 = load double, double* %3
%474 = load i8*, i8** %2
%475 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x479B1559096844FF, double %473, i8* %474, i32 133, i32* %1)
%476 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%477 = load i8*, i8** %4
%478 = call i32 (i8*, i8*, ...) @sprintf(i8* %476, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %477, i32 37)
%479 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%480 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%481 = call i64 @strlen(i8* %480)
%482 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %479, i64 %481, double* %3)
%483 = load double, double* %3
%484 = load i8*, i8** %2
%485 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x47D0ED57A5E12B1F, double %483, i8* %484, i32 134, i32* %1)
%486 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%487 = load i8*, i8** %4
%488 = call i32 (i8*, i8*, ...) @sprintf(i8* %486, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %487, i32 -1)
%489 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%490 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%491 = call i64 @strlen(i8* %490)
%492 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %489, i64 %491, double* %3)
%493 = load double, double* %3
%494 = load i8*, i8** %2
%495 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-01, double %493, i8* %494, i32 135, i32* %1)
%496 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%497 = load i8*, i8** %4
%498 = call i32 (i8*, i8*, ...) @sprintf(i8* %496, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %497, i32 -2)
%499 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%500 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%501 = call i64 @strlen(i8* %500)
%502 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %499, i64 %501, double* %3)
%503 = load double, double* %3
%504 = load i8*, i8** %2
%505 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3FB70A3D70A3D70A, double %503, i8* %504, i32 136, i32* %1)
%506 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%507 = load i8*, i8** %4
%508 = call i32 (i8*, i8*, ...) @sprintf(i8* %506, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %507, i32 -5)
%509 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%510 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%511 = call i64 @strlen(i8* %510)
%512 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %509, i64 %511, double* %3)
%513 = load double, double* %3
%514 = load i8*, i8** %2
%515 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-05, double %513, i8* %514, i32 137, i32* %1)
%516 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%517 = load i8*, i8** %4
%518 = call i32 (i8*, i8*, ...) @sprintf(i8* %516, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %517, i32 -20)
%519 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%520 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%521 = call i64 @strlen(i8* %520)
%522 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %519, i64 %521, double* %3)
%523 = load double, double* %3
%524 = load i8*, i8** %2
%525 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-20, double %523, i8* %524, i32 138, i32* %1)
%526 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%527 = load i8*, i8** %4
%528 = call i32 (i8*, i8*, ...) @sprintf(i8* %526, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %527, i32 -22)
%529 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%530 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%531 = call i64 @strlen(i8* %530)
%532 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %529, i64 %531, double* %3)
%533 = load double, double* %3
%534 = load i8*, i8** %2
%535 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3B910022090D2561, double %533, i8* %534, i32 139, i32* %1)
%536 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%537 = load i8*, i8** %4
%538 = call i32 (i8*, i8*, ...) @sprintf(i8* %536, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %537, i32 -23)
%539 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%540 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%541 = call i64 @strlen(i8* %540)
%542 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %539, i64 %541, double* %3)
%543 = load double, double* %3
%544 = load i8*, i8** %2
%545 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3B5B3369A815089B, double %543, i8* %544, i32 140, i32* %1)
%546 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%547 = load i8*, i8** %4
%548 = call i32 (i8*, i8*, ...) @sprintf(i8* %546, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %547, i32 -25)
%549 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%550 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%551 = call i64 @strlen(i8* %550)
%552 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %549, i64 %551, double* %3)
%553 = load double, double* %3
%554 = load i8*, i8** %2
%555 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-25, double %553, i8* %554, i32 141, i32* %1)
%556 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%557 = load i8*, i8** %4
%558 = call i32 (i8*, i8*, ...) @sprintf(i8* %556, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %557, i32 -39)
%559 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%560 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%561 = call i64 @strlen(i8* %560)
%562 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %559, i64 %561, double* %3)
%563 = load double, double* %3
%564 = load i8*, i8** %2
%565 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-39, double %563, i8* %564, i32 142, i32* %1)
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i8** %4
%566 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%567 = load i8*, i8** %4
%568 = call i32 (i8*, i8*, ...) @sprintf(i8* %566, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %567, i32 0)
%569 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%570 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%571 = call i64 @strlen(i8* %570)
%572 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %569, i64 %571, double* %3)
%573 = load double, double* %3
%574 = load i8*, i8** %2
%575 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+04, double %573, i8* %574, i32 145, i32* %1)
%576 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%577 = load i8*, i8** %4
%578 = call i32 (i8*, i8*, ...) @sprintf(i8* %576, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %577, i32 1)
%579 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%580 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%581 = call i64 @strlen(i8* %580)
%582 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %579, i64 %581, double* %3)
%583 = load double, double* %3
%584 = load i8*, i8** %2
%585 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+05, double %583, i8* %584, i32 146, i32* %1)
%586 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%587 = load i8*, i8** %4
%588 = call i32 (i8*, i8*, ...) @sprintf(i8* %586, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %587, i32 2)
%589 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%590 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%591 = call i64 @strlen(i8* %590)
%592 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %589, i64 %591, double* %3)
%593 = load double, double* %3
%594 = load i8*, i8** %2
%595 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+06, double %593, i8* %594, i32 147, i32* %1)
%596 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%597 = load i8*, i8** %4
%598 = call i32 (i8*, i8*, ...) @sprintf(i8* %596, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %597, i32 20)
%599 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%600 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%601 = call i64 @strlen(i8* %600)
%602 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %599, i64 %601, double* %3)
%603 = load double, double* %3
%604 = load i8*, i8** %2
%605 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+24, double %603, i8* %604, i32 148, i32* %1)
%606 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%607 = load i8*, i8** %4
%608 = call i32 (i8*, i8*, ...) @sprintf(i8* %606, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %607, i32 22)
%609 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%610 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%611 = call i64 @strlen(i8* %610)
%612 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %609, i64 %611, double* %3)
%613 = load double, double* %3
%614 = load i8*, i8** %2
%615 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+26, double %613, i8* %614, i32 149, i32* %1)
%616 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%617 = load i8*, i8** %4
%618 = call i32 (i8*, i8*, ...) @sprintf(i8* %616, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %617, i32 23)
%619 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%620 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%621 = call i64 @strlen(i8* %620)
%622 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %619, i64 %621, double* %3)
%623 = load double, double* %3
%624 = load i8*, i8** %2
%625 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+27, double %623, i8* %624, i32 150, i32* %1)
%626 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%627 = load i8*, i8** %4
%628 = call i32 (i8*, i8*, ...) @sprintf(i8* %626, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %627, i32 30)
%629 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%630 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%631 = call i64 @strlen(i8* %630)
%632 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %629, i64 %631, double* %3)
%633 = load double, double* %3
%634 = load i8*, i8** %2
%635 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+34, double %633, i8* %634, i32 151, i32* %1)
%636 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%637 = load i8*, i8** %4
%638 = call i32 (i8*, i8*, ...) @sprintf(i8* %636, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %637, i32 31)
%639 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%640 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%641 = call i64 @strlen(i8* %640)
%642 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %639, i64 %641, double* %3)
%643 = load double, double* %3
%644 = load i8*, i8** %2
%645 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+35, double %643, i8* %644, i32 152, i32* %1)
%646 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%647 = load i8*, i8** %4
%648 = call i32 (i8*, i8*, ...) @sprintf(i8* %646, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %647, i32 32)
%649 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%650 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%651 = call i64 @strlen(i8* %650)
%652 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %649, i64 %651, double* %3)
%653 = load double, double* %3
%654 = load i8*, i8** %2
%655 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+36, double %653, i8* %654, i32 153, i32* %1)
%656 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%657 = load i8*, i8** %4
%658 = call i32 (i8*, i8*, ...) @sprintf(i8* %656, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %657, i32 35)
%659 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%660 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%661 = call i64 @strlen(i8* %660)
%662 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %659, i64 %661, double* %3)
%663 = load double, double* %3
%664 = load i8*, i8** %2
%665 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+39, double %663, i8* %664, i32 154, i32* %1)
%666 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%667 = load i8*, i8** %4
%668 = call i32 (i8*, i8*, ...) @sprintf(i8* %666, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %667, i32 36)
%669 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%670 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%671 = call i64 @strlen(i8* %670)
%672 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %669, i64 %671, double* %3)
%673 = load double, double* %3
%674 = load i8*, i8** %2
%675 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+40, double %673, i8* %674, i32 155, i32* %1)
%676 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%677 = load i8*, i8** %4
%678 = call i32 (i8*, i8*, ...) @sprintf(i8* %676, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %677, i32 37)
%679 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%680 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%681 = call i64 @strlen(i8* %680)
%682 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %679, i64 %681, double* %3)
%683 = load double, double* %3
%684 = load i8*, i8** %2
%685 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+41, double %683, i8* %684, i32 156, i32* %1)
%686 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%687 = load i8*, i8** %4
%688 = call i32 (i8*, i8*, ...) @sprintf(i8* %686, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %687, i32 -1)
%689 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%690 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%691 = call i64 @strlen(i8* %690)
%692 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %689, i64 %691, double* %3)
%693 = load double, double* %3
%694 = load i8*, i8** %2
%695 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+03, double %693, i8* %694, i32 157, i32* %1)
%696 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%697 = load i8*, i8** %4
%698 = call i32 (i8*, i8*, ...) @sprintf(i8* %696, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %697, i32 -2)
%699 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%700 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%701 = call i64 @strlen(i8* %700)
%702 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %699, i64 %701, double* %3)
%703 = load double, double* %3
%704 = load i8*, i8** %2
%705 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+02, double %703, i8* %704, i32 158, i32* %1)
%706 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%707 = load i8*, i8** %4
%708 = call i32 (i8*, i8*, ...) @sprintf(i8* %706, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %707, i32 -5)
%709 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%710 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%711 = call i64 @strlen(i8* %710)
%712 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %709, i64 %711, double* %3)
%713 = load double, double* %3
%714 = load i8*, i8** %2
%715 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-01, double %713, i8* %714, i32 159, i32* %1)
%716 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%717 = load i8*, i8** %4
%718 = call i32 (i8*, i8*, ...) @sprintf(i8* %716, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %717, i32 -20)
%719 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%720 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%721 = call i64 @strlen(i8* %720)
%722 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %719, i64 %721, double* %3)
%723 = load double, double* %3
%724 = load i8*, i8** %2
%725 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-16, double %723, i8* %724, i32 160, i32* %1)
%726 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%727 = load i8*, i8** %4
%728 = call i32 (i8*, i8*, ...) @sprintf(i8* %726, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %727, i32 -22)
%729 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%730 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%731 = call i64 @strlen(i8* %730)
%732 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %729, i64 %731, double* %3)
%733 = load double, double* %3
%734 = load i8*, i8** %2
%735 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-18, double %733, i8* %734, i32 161, i32* %1)
%736 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%737 = load i8*, i8** %4
%738 = call i32 (i8*, i8*, ...) @sprintf(i8* %736, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %737, i32 -23)
%739 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%740 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%741 = call i64 @strlen(i8* %740)
%742 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %739, i64 %741, double* %3)
%743 = load double, double* %3
%744 = load i8*, i8** %2
%745 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-19, double %743, i8* %744, i32 162, i32* %1)
%746 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%747 = load i8*, i8** %4
%748 = call i32 (i8*, i8*, ...) @sprintf(i8* %746, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %747, i32 -25)
%749 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%750 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%751 = call i64 @strlen(i8* %750)
%752 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %749, i64 %751, double* %3)
%753 = load double, double* %3
%754 = load i8*, i8** %2
%755 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-21, double %753, i8* %754, i32 163, i32* %1)
%756 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%757 = load i8*, i8** %4
%758 = call i32 (i8*, i8*, ...) @sprintf(i8* %756, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %757, i32 -39)
%759 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%760 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%761 = call i64 @strlen(i8* %760)
%762 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %759, i64 %761, double* %3)
%763 = load double, double* %3
%764 = load i8*, i8** %2
%765 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-35, double %763, i8* %764, i32 164, i32* %1)
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i8** %4
%766 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%767 = load i8*, i8** %4
%768 = call i32 (i8*, i8*, ...) @sprintf(i8* %766, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %767, i32 0)
%769 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%770 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%771 = call i64 @strlen(i8* %770)
%772 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %769, i64 %771, double* %3)
%773 = load double, double* %3
%774 = load i8*, i8** %2
%775 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x42A674E79C5FE400, double %773, i8* %774, i32 167, i32* %1)
%776 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%777 = load i8*, i8** %4
%778 = call i32 (i8*, i8*, ...) @sprintf(i8* %776, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %777, i32 1)
%779 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%780 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%781 = call i64 @strlen(i8* %780)
%782 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %779, i64 %781, double* %3)
%783 = load double, double* %3
%784 = load i8*, i8** %2
%785 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x42DC12218377DD00, double %783, i8* %784, i32 168, i32* %1)
%786 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%787 = load i8*, i8** %4
%788 = call i32 (i8*, i8*, ...) @sprintf(i8* %786, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %787, i32 2)
%789 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%790 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%791 = call i64 @strlen(i8* %790)
%792 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %789, i64 %791, double* %3)
%793 = load double, double* %3
%794 = load i8*, i8** %2
%795 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43118B54F22AEA20, double %793, i8* %794, i32 169, i32* %1)
%796 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%797 = load i8*, i8** %4
%798 = call i32 (i8*, i8*, ...) @sprintf(i8* %796, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %797, i32 20)
%799 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%800 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%801 = call i64 @strlen(i8* %800)
%802 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %799, i64 %801, double* %3)
%803 = load double, double* %3
%804 = load i8*, i8** %2
%805 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x46CE6F37FFCB97E5, double %803, i8* %804, i32 170, i32* %1)
%806 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%807 = load i8*, i8** %4
%808 = call i32 (i8*, i8*, ...) @sprintf(i8* %806, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %807, i32 22)
%809 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%810 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%811 = call i64 @strlen(i8* %810)
%812 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %809, i64 %811, double* %3)
%813 = load double, double* %3
%814 = load i8*, i8** %2
%815 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4737C6E3BFD70EAB, double %813, i8* %814, i32 171, i32* %1)
%816 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%817 = load i8*, i8** %4
%818 = call i32 (i8*, i8*, ...) @sprintf(i8* %816, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %817, i32 23)
%819 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%820 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%821 = call i64 @strlen(i8* %820)
%822 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %819, i64 %821, double* %3)
%823 = load double, double* %3
%824 = load i8*, i8** %2
%825 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x476DB89CAFCCD256, double %823, i8* %824, i32 172, i32* %1)
%826 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%827 = load i8*, i8** %4
%828 = call i32 (i8*, i8*, ...) @sprintf(i8* %826, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %827, i32 30)
%829 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%830 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%831 = call i64 @strlen(i8* %830)
%832 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %829, i64 %831, double* %3)
%833 = load double, double* %3
%834 = load i8*, i8** %2
%835 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x48E1B716107EF6CD, double %833, i8* %834, i32 173, i32* %1)
%836 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%837 = load i8*, i8** %4
%838 = call i32 (i8*, i8*, ...) @sprintf(i8* %836, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %837, i32 31)
%839 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%840 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%841 = call i64 @strlen(i8* %840)
%842 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %839, i64 %841, double* %3)
%843 = load double, double* %3
%844 = load i8*, i8** %2
%845 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x491624DB949EB480, double %843, i8* %844, i32 174, i32* %1)
%846 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%847 = load i8*, i8** %4
%848 = call i32 (i8*, i8*, ...) @sprintf(i8* %846, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %847, i32 32)
%849 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%850 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%851 = call i64 @strlen(i8* %850)
%852 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %849, i64 %851, double* %3)
%853 = load double, double* %3
%854 = load i8*, i8** %2
%855 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x494BAE1279C661A0, double %853, i8* %854, i32 175, i32* %1)
%856 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%857 = load i8*, i8** %4
%858 = call i32 (i8*, i8*, ...) @sprintf(i8* %856, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %857, i32 35)
%859 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%860 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%861 = call i64 @strlen(i8* %860)
%862 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %859, i64 %861, double* %3)
%863 = load double, double* %3
%864 = load i8*, i8** %2
%865 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x49EB07FE0AEBBB56, double %863, i8* %864, i32 176, i32* %1)
%866 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%867 = load i8*, i8** %4
%868 = call i32 (i8*, i8*, ...) @sprintf(i8* %866, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %867, i32 36)
%869 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%870 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%871 = call i64 @strlen(i8* %870)
%872 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %869, i64 %871, double* %3)
%873 = load double, double* %3
%874 = load i8*, i8** %2
%875 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A20E4FEC6D35516, double %873, i8* %874, i32 177, i32* %1)
%876 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%877 = load i8*, i8** %4
%878 = call i32 (i8*, i8*, ...) @sprintf(i8* %876, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %877, i32 37)
%879 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%880 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%881 = call i64 @strlen(i8* %880)
%882 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %879, i64 %881, double* %3)
%883 = load double, double* %3
%884 = load i8*, i8** %2
%885 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A551E3E78882A5B, double %883, i8* %884, i32 178, i32* %1)
%886 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%887 = load i8*, i8** %4
%888 = call i32 (i8*, i8*, ...) @sprintf(i8* %886, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %887, i32 -1)
%889 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%890 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%891 = call i64 @strlen(i8* %890)
%892 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %889, i64 %891, double* %3)
%893 = load double, double* %3
%894 = load i8*, i8** %2
%895 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4271F71FB04CB666, double %893, i8* %894, i32 179, i32* %1)
%896 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%897 = load i8*, i8** %4
%898 = call i32 (i8*, i8*, ...) @sprintf(i8* %896, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %897, i32 -2)
%899 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%900 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%901 = call i64 @strlen(i8* %900)
%902 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %899, i64 %901, double* %3)
%903 = load double, double* %3
%904 = load i8*, i8** %2
%905 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x423CBE991A14570A, double %903, i8* %904, i32 180, i32* %1)
%906 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%907 = load i8*, i8** %4
%908 = call i32 (i8*, i8*, ...) @sprintf(i8* %906, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %907, i32 -5)
%909 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%910 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%911 = call i64 @strlen(i8* %910)
%912 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %909, i64 %911, double* %3)
%913 = load double, double* %3
%914 = load i8*, i8** %2
%915 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x419D6F34540CA2DB, double %913, i8* %914, i32 181, i32* %1)
%916 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%917 = load i8*, i8** %4
%918 = call i32 (i8*, i8*, ...) @sprintf(i8* %916, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %917, i32 -20)
%919 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%920 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%921 = call i64 @strlen(i8* %920)
%922 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %919, i64 %921, double* %3)
%923 = load double, double* %3
%924 = load i8*, i8** %2
%925 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3E8091F1667F04BF, double %923, i8* %924, i32 182, i32* %1)
%926 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%927 = load i8*, i8** %4
%928 = call i32 (i8*, i8*, ...) @sprintf(i8* %926, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %927, i32 -22)
%929 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%930 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%931 = call i64 @strlen(i8* %930)
%932 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %929, i64 %931, double* %3)
%933 = load double, double* %3
%934 = load i8*, i8** %2
%935 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3E1535AFDF5AE75B, double %933, i8* %934, i32 183, i32* %1)
%936 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%937 = load i8*, i8** %4
%938 = call i32 (i8*, i8*, ...) @sprintf(i8* %936, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %937, i32 -23)
%939 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%940 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%941 = call i64 @strlen(i8* %940)
%942 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %939, i64 %941, double* %3)
%943 = load double, double* %3
%944 = load i8*, i8** %2
%945 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3DE0F7BFE5E252AF, double %943, i8* %944, i32 184, i32* %1)
%946 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%947 = load i8*, i8** %4
%948 = call i32 (i8*, i8*, ...) @sprintf(i8* %946, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %947, i32 -25)
%949 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%950 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%951 = call i64 @strlen(i8* %950)
%952 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %949, i64 %951, double* %3)
%953 = load double, double* %3
%954 = load i8*, i8** %2
%955 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3D75B7FFDE92555B, double %953, i8* %954, i32 185, i32* %1)
%956 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%957 = load i8*, i8** %4
%958 = call i32 (i8*, i8*, ...) @sprintf(i8* %956, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %957, i32 -39)
%959 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%960 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%961 = call i64 @strlen(i8* %960)
%962 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %959, i64 %961, double* %3)
%963 = load double, double* %3
%964 = load i8*, i8** %2
%965 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3A8E9100EE33EE5F, double %963, i8* %964, i32 186, i32* %1)
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i8** %4
%966 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%967 = load i8*, i8** %4
%968 = call i32 (i8*, i8*, ...) @sprintf(i8* %966, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %967, i32 0)
%969 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%970 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%971 = call i64 @strlen(i8* %970)
%972 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %969, i64 %971, double* %3)
%973 = load double, double* %3
%974 = load i8*, i8** %2
%975 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x42DC12218377DE40, double %973, i8* %974, i32 189, i32* %1)
%976 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%977 = load i8*, i8** %4
%978 = call i32 (i8*, i8*, ...) @sprintf(i8* %976, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %977, i32 1)
%979 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%980 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%981 = call i64 @strlen(i8* %980)
%982 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %979, i64 %981, double* %3)
%983 = load double, double* %3
%984 = load i8*, i8** %2
%985 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43118B54F22AEAE8, double %983, i8* %984, i32 190, i32* %1)
%986 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%987 = load i8*, i8** %4
%988 = call i32 (i8*, i8*, ...) @sprintf(i8* %986, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %987, i32 2)
%989 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%990 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%991 = call i64 @strlen(i8* %990)
%992 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %989, i64 %991, double* %3)
%993 = load double, double* %3
%994 = load i8*, i8** %2
%995 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4345EE2A2EB5A5A2, double %993, i8* %994, i32 191, i32* %1)
%996 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%997 = load i8*, i8** %4
%998 = call i32 (i8*, i8*, ...) @sprintf(i8* %996, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %997, i32 20)
%999 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1000 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1001 = call i64 @strlen(i8* %1000)
%1002 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %999, i64 %1001, double* %3)
%1003 = load double, double* %3
%1004 = load i8*, i8** %2
%1005 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x47030582FFDF3FC8, double %1003, i8* %1004, i32 192, i32* %1)
%1006 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1007 = load i8*, i8** %4
%1008 = call i32 (i8*, i8*, ...) @sprintf(i8* %1006, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1007, i32 22)
%1009 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1010 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1011 = call i64 @strlen(i8* %1010)
%1012 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1009, i64 %1011, double* %3)
%1013 = load double, double* %3
%1014 = load i8*, i8** %2
%1015 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x476DB89CAFCCD3A9, double %1013, i8* %1014, i32 193, i32* %1)
%1016 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1017 = load i8*, i8** %4
%1018 = call i32 (i8*, i8*, ...) @sprintf(i8* %1016, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1017, i32 23)
%1019 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1020 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1021 = call i64 @strlen(i8* %1020)
%1022 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1019, i64 %1021, double* %3)
%1023 = load double, double* %3
%1024 = load i8*, i8** %2
%1025 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x47A29361EDE00449, double %1023, i8* %1024, i32 194, i32* %1)
%1026 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1027 = load i8*, i8** %4
%1028 = call i32 (i8*, i8*, ...) @sprintf(i8* %1026, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1027, i32 35)
%1029 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1030 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1031 = call i64 @strlen(i8* %1030)
%1032 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1029, i64 %1031, double* %3)
%1033 = load double, double* %3
%1034 = load i8*, i8** %2
%1035 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A20E4FEC6D355D6, double %1033, i8* %1034, i32 195, i32* %1)
%1036 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1037 = load i8*, i8** %4
%1038 = call i32 (i8*, i8*, ...) @sprintf(i8* %1036, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1037, i32 36)
%1039 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1040 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1041 = call i64 @strlen(i8* %1040)
%1042 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1039, i64 %1041, double* %3)
%1043 = load double, double* %3
%1044 = load i8*, i8** %2
%1045 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A551E3E78882B4C, double %1043, i8* %1044, i32 196, i32* %1)
%1046 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1047 = load i8*, i8** %4
%1048 = call i32 (i8*, i8*, ...) @sprintf(i8* %1046, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1047, i32 37)
%1049 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1050 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1051 = call i64 @strlen(i8* %1050)
%1052 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1049, i64 %1051, double* %3)
%1053 = load double, double* %3
%1054 = load i8*, i8** %2
%1055 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A8A65CE16AA361F, double %1053, i8* %1054, i32 197, i32* %1)
%1056 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1057 = load i8*, i8** %4
%1058 = call i32 (i8*, i8*, ...) @sprintf(i8* %1056, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1057, i32 39)
%1059 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1060 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1061 = call i64 @strlen(i8* %1060)
%1062 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1059, i64 %1061, double* %3)
%1063 = load double, double* %3
%1064 = load i8*, i8** %2
%1065 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4AF49F8901B4FA48, double %1063, i8* %1064, i32 198, i32* %1)
%1066 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1067 = load i8*, i8** %4
%1068 = call i32 (i8*, i8*, ...) @sprintf(i8* %1066, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1067, i32 -1)
%1069 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1070 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1071 = call i64 @strlen(i8* %1070)
%1072 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1069, i64 %1071, double* %3)
%1073 = load double, double* %3
%1074 = load i8*, i8** %2
%1075 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x42A674E79C5FE500, double %1073, i8* %1074, i32 199, i32* %1)
%1076 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1077 = load i8*, i8** %4
%1078 = call i32 (i8*, i8*, ...) @sprintf(i8* %1076, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1077, i32 -2)
%1079 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1080 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1081 = call i64 @strlen(i8* %1080)
%1082 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1079, i64 %1081, double* %3)
%1083 = load double, double* %3
%1084 = load i8*, i8** %2
%1085 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4271F71FB04CB733, double %1083, i8* %1084, i32 200, i32* %1)
%1086 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1087 = load i8*, i8** %4
%1088 = call i32 (i8*, i8*, ...) @sprintf(i8* %1086, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1087, i32 -5)
%1089 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1090 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1091 = call i64 @strlen(i8* %1090)
%1092 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1089, i64 %1091, double* %3)
%1093 = load double, double* %3
%1094 = load i8*, i8** %2
%1095 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x41D26580B487E69B, double %1093, i8* %1094, i32 201, i32* %1)
%1096 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1097 = load i8*, i8** %4
%1098 = call i32 (i8*, i8*, ...) @sprintf(i8* %1096, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1097, i32 -20)
%1099 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1100 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1101 = call i64 @strlen(i8* %1100)
%1102 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1099, i64 %1101, double* %3)
%1103 = load double, double* %3
%1104 = load i8*, i8** %2
%1105 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3EB4B66DC01EC6DB, double %1103, i8* %1104, i32 202, i32* %1)
%1106 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1107 = load i8*, i8** %4
%1108 = call i32 (i8*, i8*, ...) @sprintf(i8* %1106, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1107, i32 -22)
%1109 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1110 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1111 = call i64 @strlen(i8* %1110)
%1112 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1109, i64 %1111, double* %3)
%1113 = load double, double* %3
%1114 = load i8*, i8** %2
%1115 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3E4A831BD731A260, double %1113, i8* %1114, i32 203, i32* %1)
%1116 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1117 = load i8*, i8** %4
%1118 = call i32 (i8*, i8*, ...) @sprintf(i8* %1116, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1117, i32 -23)
%1119 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1120 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1121 = call i64 @strlen(i8* %1120)
%1122 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1119, i64 %1121, double* %3)
%1123 = load double, double* %3
%1124 = load i8*, i8** %2
%1125 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3E1535AFDF5AE84D, double %1123, i8* %1124, i32 204, i32* %1)
%1126 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1127 = load i8*, i8** %4
%1128 = call i32 (i8*, i8*, ...) @sprintf(i8* %1126, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1127, i32 -25)
%1129 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1130 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1131 = call i64 @strlen(i8* %1130)
%1132 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1129, i64 %1131, double* %3)
%1133 = load double, double* %3
%1134 = load i8*, i8** %2
%1135 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3DAB25FFD636EBE8, double %1133, i8* %1134, i32 205, i32* %1)
%1136 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1137 = load i8*, i8** %4
%1138 = call i32 (i8*, i8*, ...) @sprintf(i8* %1136, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* %1137, i32 -39)
%1139 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1140 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1141 = call i64 @strlen(i8* %1140)
%1142 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1139, i64 %1141, double* %3)
%1143 = load double, double* %3
%1144 = load i8*, i8** %2
%1145 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3AC31AA094E075D5, double %1143, i8* %1144, i32 206, i32* %1)
%1146 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1147 = call i32 (i8*, i8*, ...) @sprintf(i8* %1146, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i32 12345)
%1148 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1149 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1150 = call i64 @strlen(i8* %1149)
%1151 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1148, i64 %1150, double* %3)
%1152 = load double, double* %3
%1153 = load i8*, i8** %2
%1154 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1152, i8* %1153, i32 207, i32* %1)
%1155 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1156 = call i32 (i8*, i8*, ...) @sprintf(i8* %1155, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str.9, i64 0, i64 0), i32 1324)
%1157 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1158 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1159 = call i64 @strlen(i8* %1158)
%1160 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1157, i64 %1159, double* %3)
%1161 = load double, double* %3
%1162 = load i8*, i8** %2
%1163 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1161, i8* %1162, i32 209, i32* %1)
%1164 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1165 = call i32 (i8*, i8*, ...) @sprintf(i8* %1164, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.10, i64 0, i64 0), i32 123)
%1166 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1167 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1168 = call i64 @strlen(i8* %1167)
%1169 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1166, i64 %1168, double* %3)
%1170 = load double, double* %3
%1171 = load i8*, i8** %2
%1172 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1170, i8* %1171, i32 210, i32* %1)
%1173 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1174 = call i32 (i8*, i8*, ...) @sprintf(i8* %1173, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -324)
%1175 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1176 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1177 = call i64 @strlen(i8* %1176)
%1178 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1175, i64 %1177, double* %3)
%1179 = load double, double* %3
%1180 = load i8*, i8** %2
%1181 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1179, i8* %1180, i32 211, i32* %1)
%1182 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1183 = call i32 (i8*, i8*, ...) @sprintf(i8* %1182, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.11, i64 0, i64 0), i32 -324)
%1184 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1185 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1186 = call i64 @strlen(i8* %1185)
%1187 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1184, i64 %1186, double* %3)
%1188 = load double, double* %3
%1189 = load i8*, i8** %2
%1190 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 4.940660e-324, double %1188, i8* %1189, i32 212, i32* %1)
%1191 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1192 = call i32 (i8*, i8*, ...) @sprintf(i8* %1191, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -325)
%1193 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1194 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1195 = call i64 @strlen(i8* %1194)
%1196 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1193, i64 %1195, double* %3)
%1197 = load double, double* %3
%1198 = load i8*, i8** %2
%1199 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1197, i8* %1198, i32 217, i32* %1)
%1200 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1201 = call i32 (i8*, i8*, ...) @sprintf(i8* %1200, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -325)
%1202 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1203 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1204 = call i64 @strlen(i8* %1203)
%1205 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1202, i64 %1204, double* %3)
%1206 = load double, double* %3
%1207 = load i8*, i8** %2
%1208 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1206, i8* %1207, i32 218, i32* %1)
%1209 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1210 = call i32 (i8*, i8*, ...) @sprintf(i8* %1209, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.12, i64 0, i64 0), i32 -328)
%1211 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1212 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1213 = call i64 @strlen(i8* %1212)
%1214 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1211, i64 %1213, double* %3)
%1215 = load double, double* %3
%1216 = load i8*, i8** %2
%1217 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1215, i8* %1216, i32 219, i32* %1)
%1218 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1219 = call i32 (i8*, i8*, ...) @sprintf(i8* %1218, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.13, i64 0, i64 0), i32 -328)
%1220 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1221 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1222 = call i64 @strlen(i8* %1221)
%1223 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1220, i64 %1222, double* %3)
%1224 = load double, double* %3
%1225 = load i8*, i8** %2
%1226 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 4.940660e-324, double %1224, i8* %1225, i32 220, i32* %1)
%1227 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1228 = call i32 (i8*, i8*, ...) @sprintf(i8* %1227, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.14, i64 0, i64 0), i32 -329)
%1229 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1230 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1231 = call i64 @strlen(i8* %1230)
%1232 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1229, i64 %1231, double* %3)
%1233 = load double, double* %3
%1234 = load i8*, i8** %2
%1235 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1233, i8* %1234, i32 221, i32* %1)
%1236 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1237 = call i32 (i8*, i8*, ...) @sprintf(i8* %1236, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.15, i64 0, i64 0), i32 -329)
%1238 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1239 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1240 = call i64 @strlen(i8* %1239)
%1241 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1238, i64 %1240, double* %3)
%1242 = load double, double* %3
%1243 = load i8*, i8** %2
%1244 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1242, i8* %1243, i32 222, i32* %1)
%1245 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1246 = call i32 (i8*, i8*, ...) @sprintf(i8* %1245, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.16, i64 0, i64 0), i32 -325)
%1247 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1248 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1249 = call i64 @strlen(i8* %1248)
%1250 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1247, i64 %1249, double* %3)
%1251 = load double, double* %3
%1252 = load i8*, i8** %2
%1253 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1251, i8* %1252, i32 223, i32* %1)
%1254 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1255 = call i32 (i8*, i8*, ...) @sprintf(i8* %1254, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.16, i64 0, i64 0), i32 -325)
%1256 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1257 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1258 = call i64 @strlen(i8* %1257)
%1259 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1256, i64 %1258, double* %3)
%1260 = load double, double* %3
%1261 = load i8*, i8** %2
%1262 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1260, i8* %1261, i32 224, i32* %1)
%1263 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1264 = call i32 (i8*, i8*, ...) @sprintf(i8* %1263, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.17, i64 0, i64 0), i32 -328)
%1265 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1266 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1267 = call i64 @strlen(i8* %1266)
%1268 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1265, i64 %1267, double* %3)
%1269 = load double, double* %3
%1270 = load i8*, i8** %2
%1271 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1269, i8* %1270, i32 225, i32* %1)
%1272 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1273 = call i32 (i8*, i8*, ...) @sprintf(i8* %1272, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.18, i64 0, i64 0), i32 -328)
%1274 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1275 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1276 = call i64 @strlen(i8* %1275)
%1277 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1274, i64 %1276, double* %3)
%1278 = load double, double* %3
%1279 = load i8*, i8** %2
%1280 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 4.940660e-324, double %1278, i8* %1279, i32 226, i32* %1)
%1281 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1282 = call i32 (i8*, i8*, ...) @sprintf(i8* %1281, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.19, i64 0, i64 0), i32 -329)
%1283 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1284 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1285 = call i64 @strlen(i8* %1284)
%1286 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1283, i64 %1285, double* %3)
%1287 = load double, double* %3
%1288 = load i8*, i8** %2
%1289 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1287, i8* %1288, i32 227, i32* %1)
%1290 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1291 = call i32 (i8*, i8*, ...) @sprintf(i8* %1290, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.20, i64 0, i64 0), i32 -329)
%1292 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1293 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1294 = call i64 @strlen(i8* %1293)
%1295 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1292, i64 %1294, double* %3)
%1296 = load double, double* %3
%1297 = load i8*, i8** %2
%1298 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %1296, i8* %1297, i32 228, i32* %1)
%1299 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%1300 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1301 = call i32 (i8*, i8*, ...) @sprintf(i8* %1300, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 309)
%1302 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1303 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1304 = call i64 @strlen(i8* %1303)
%1305 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1302, i64 %1304, double* %3)
%1306 = load double, double* %3
%1307 = load i8*, i8** %2
%1308 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %1299, double %1306, i8* %1307, i32 235, i32* %1)
%1309 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1310 = call i32 (i8*, i8*, ...) @sprintf(i8* %1309, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 308)
%1311 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1312 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1313 = call i64 @strlen(i8* %1312)
%1314 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1311, i64 %1313, double* %3)
%1315 = load double, double* %3
%1316 = load i8*, i8** %2
%1317 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+308, double %1315, i8* %1316, i32 237, i32* %1)
%1318 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1319 = call i32 (i8*, i8*, ...) @sprintf(i8* %1318, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), i32 305)
%1320 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1321 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1322 = call i64 @strlen(i8* %1321)
%1323 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1320, i64 %1322, double* %3)
%1324 = load double, double* %3
%1325 = load i8*, i8** %2
%1326 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+308, double %1324, i8* %1325, i32 238, i32* %1)
%1327 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1328 = call i32 (i8*, i8*, ...) @sprintf(i8* %1327, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), i32 304)
%1329 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1330 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1331 = call i64 @strlen(i8* %1330)
%1332 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1329, i64 %1331, double* %3)
%1333 = load double, double* %3
%1334 = load i8*, i8** %2
%1335 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+307, double %1333, i8* %1334, i32 239, i32* %1)
%1336 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%1337 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1338 = call i32 (i8*, i8*, ...) @sprintf(i8* %1337, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.22, i64 0, i64 0), i32 307)
%1339 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1340 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1341 = call i64 @strlen(i8* %1340)
%1342 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1339, i64 %1341, double* %3)
%1343 = load double, double* %3
%1344 = load i8*, i8** %2
%1345 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %1336, double %1343, i8* %1344, i32 241, i32* %1)
%1346 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1347 = call i32 (i8*, i8*, ...) @sprintf(i8* %1346, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.23, i64 0, i64 0), i32 307)
%1348 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1349 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1350 = call i64 @strlen(i8* %1349)
%1351 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1348, i64 %1350, double* %3)
%1352 = load double, double* %3
%1353 = load i8*, i8** %2
%1354 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.700000e+308, double %1352, i8* %1353, i32 242, i32* %1)
%1355 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%1356 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1357 = call i32 (i8*, i8*, ...) @sprintf(i8* %1356, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.24, i64 0, i64 0), i32 309)
%1358 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1359 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1360 = call i64 @strlen(i8* %1359)
%1361 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1358, i64 %1360, double* %3)
%1362 = load double, double* %3
%1363 = load i8*, i8** %2
%1364 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %1355, double %1362, i8* %1363, i32 244, i32* %1)
%1365 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1366 = call i32 (i8*, i8*, ...) @sprintf(i8* %1365, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.25, i64 0, i64 0), i32 308)
%1367 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1368 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1369 = call i64 @strlen(i8* %1368)
%1370 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1367, i64 %1369, double* %3)
%1371 = load double, double* %3
%1372 = load i8*, i8** %2
%1373 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+308, double %1371, i8* %1372, i32 246, i32* %1)
%1374 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1375 = call i32 (i8*, i8*, ...) @sprintf(i8* %1374, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.26, i64 0, i64 0), i32 305)
%1376 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1377 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1378 = call i64 @strlen(i8* %1377)
%1379 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1376, i64 %1378, double* %3)
%1380 = load double, double* %3
%1381 = load i8*, i8** %2
%1382 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+308, double %1380, i8* %1381, i32 248, i32* %1)
%1383 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1384 = call i32 (i8*, i8*, ...) @sprintf(i8* %1383, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.27, i64 0, i64 0), i32 304)
%1385 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1386 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1387 = call i64 @strlen(i8* %1386)
%1388 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1385, i64 %1387, double* %3)
%1389 = load double, double* %3
%1390 = load i8*, i8** %2
%1391 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+307, double %1389, i8* %1390, i32 249, i32* %1)
%1392 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%1393 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1394 = call i32 (i8*, i8*, ...) @sprintf(i8* %1393, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 307)
%1395 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1396 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1397 = call i64 @strlen(i8* %1396)
%1398 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1395, i64 %1397, double* %3)
%1399 = load double, double* %3
%1400 = load i8*, i8** %2
%1401 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %1392, double %1399, i8* %1400, i32 250, i32* %1)
%1402 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1403 = call i32 (i8*, i8*, ...) @sprintf(i8* %1402, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.29, i64 0, i64 0), i32 307)
%1404 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1405 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1406 = call i64 @strlen(i8* %1405)
%1407 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1404, i64 %1406, double* %3)
%1408 = load double, double* %3
%1409 = load i8*, i8** %2
%1410 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.700000e+308, double %1408, i8* %1409, i32 251, i32* %1)
%1411 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%1412 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1413 = call i32 (i8*, i8*, ...) @sprintf(i8* %1412, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.30, i64 0, i64 0), i32 303)
%1414 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1415 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1416 = call i64 @strlen(i8* %1415)
%1417 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1414, i64 %1416, double* %3)
%1418 = load double, double* %3
%1419 = load i8*, i8** %2
%1420 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %1411, double %1418, i8* %1419, i32 252, i32* %1)
%1421 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1422 = call i32 (i8*, i8*, ...) @sprintf(i8* %1421, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.31, i64 0, i64 0), i32 303)
%1423 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1424 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1425 = call i64 @strlen(i8* %1424)
%1426 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1423, i64 %1425, double* %3)
%1427 = load double, double* %3
%1428 = load i8*, i8** %2
%1429 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+308, double %1427, i8* %1428, i32 253, i32* %1)
%1430 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1431 = call i32 (i8*, i8*, ...) @sprintf(i8* %1430, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.32, i64 0, i64 0), i32 300)
%1432 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1433 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1434 = call i64 @strlen(i8* %1433)
%1435 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1432, i64 %1434, double* %3)
%1436 = load double, double* %3
%1437 = load i8*, i8** %2
%1438 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+308, double %1436, i8* %1437, i32 254, i32* %1)
%1439 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1440 = call i32 (i8*, i8*, ...) @sprintf(i8* %1439, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.32, i64 0, i64 0), i32 299)
%1441 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1442 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1443 = call i64 @strlen(i8* %1442)
%1444 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1441, i64 %1443, double* %3)
%1445 = load double, double* %3
%1446 = load i8*, i8** %2
%1447 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+307, double %1445, i8* %1446, i32 255, i32* %1)
%1448 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%1449 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1450 = call i32 (i8*, i8*, ...) @sprintf(i8* %1449, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.33, i64 0, i64 0), i32 300)
%1451 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1452 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1453 = call i64 @strlen(i8* %1452)
%1454 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1451, i64 %1453, double* %3)
%1455 = load double, double* %3
%1456 = load i8*, i8** %2
%1457 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %1448, double %1455, i8* %1456, i32 256, i32* %1)
%1458 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1459 = call i32 (i8*, i8*, ...) @sprintf(i8* %1458, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.34, i64 0, i64 0), i32 300)
%1460 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1461 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1462 = call i64 @strlen(i8* %1461)
%1463 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1460, i64 %1462, double* %3)
%1464 = load double, double* %3
%1465 = load i8*, i8** %2
%1466 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.700000e+308, double %1464, i8* %1465, i32 257, i32* %1)
%1467 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%1468 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1469 = call i32 (i8*, i8*, ...) @sprintf(i8* %1468, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.35, i64 0, i64 0), i32 303)
%1470 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1471 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1472 = call i64 @strlen(i8* %1471)
%1473 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1470, i64 %1472, double* %3)
%1474 = load double, double* %3
%1475 = load i8*, i8** %2
%1476 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %1467, double %1474, i8* %1475, i32 258, i32* %1)
%1477 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1478 = call i32 (i8*, i8*, ...) @sprintf(i8* %1477, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.36, i64 0, i64 0), i32 303)
%1479 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1480 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1481 = call i64 @strlen(i8* %1480)
%1482 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1479, i64 %1481, double* %3)
%1483 = load double, double* %3
%1484 = load i8*, i8** %2
%1485 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+308, double %1483, i8* %1484, i32 259, i32* %1)
%1486 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1487 = call i32 (i8*, i8*, ...) @sprintf(i8* %1486, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.37, i64 0, i64 0), i32 300)
%1488 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1489 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1490 = call i64 @strlen(i8* %1489)
%1491 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1488, i64 %1490, double* %3)
%1492 = load double, double* %3
%1493 = load i8*, i8** %2
%1494 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+308, double %1492, i8* %1493, i32 260, i32* %1)
%1495 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1496 = call i32 (i8*, i8*, ...) @sprintf(i8* %1495, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.38, i64 0, i64 0), i32 299)
%1497 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1498 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1499 = call i64 @strlen(i8* %1498)
%1500 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1497, i64 %1499, double* %3)
%1501 = load double, double* %3
%1502 = load i8*, i8** %2
%1503 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+307, double %1501, i8* %1502, i32 261, i32* %1)
%1504 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%1505 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1506 = call i32 (i8*, i8*, ...) @sprintf(i8* %1505, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.39, i64 0, i64 0), i32 300)
%1507 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1508 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1509 = call i64 @strlen(i8* %1508)
%1510 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1507, i64 %1509, double* %3)
%1511 = load double, double* %3
%1512 = load i8*, i8** %2
%1513 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %1504, double %1511, i8* %1512, i32 262, i32* %1)
%1514 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1515 = call i32 (i8*, i8*, ...) @sprintf(i8* %1514, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.40, i64 0, i64 0), i32 300)
%1516 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1517 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1518 = call i64 @strlen(i8* %1517)
%1519 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1516, i64 %1518, double* %3)
%1520 = load double, double* %3
%1521 = load i8*, i8** %2
%1522 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.700000e+308, double %1520, i8* %1521, i32 263, i32* %1)
%1523 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1524 = call i32 (i8*, i8*, ...) @sprintf(i8* %1523, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.41, i64 0, i64 0), i32 292)
%1525 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1526 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1527 = call i64 @strlen(i8* %1526)
%1528 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1525, i64 %1527, double* %3)
%1529 = load double, double* %3
%1530 = load i8*, i8** %2
%1531 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x7FEFFFFFFFFFFFFF, double %1529, i8* %1530, i32 264, i32* %1)
%1532 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1533 = call i32 (i8*, i8*, ...) @sprintf(i8* %1532, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.42, i64 0, i64 0), i32 292)
%1534 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1535 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1536 = call i64 @strlen(i8* %1535)
%1537 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1534, i64 %1536, double* %3)
%1538 = load double, double* %3
%1539 = load i8*, i8** %2
%1540 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x7FEFFFFFFFFFFFFF, double %1538, i8* %1539, i32 265, i32* %1)
%1541 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%1542 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1543 = call i32 (i8*, i8*, ...) @sprintf(i8* %1542, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.43, i64 0, i64 0), i32 292)
%1544 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1545 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1546 = call i64 @strlen(i8* %1545)
%1547 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1544, i64 %1546, double* %3)
%1548 = load double, double* %3
%1549 = load i8*, i8** %2
%1550 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %1541, double %1548, i8* %1549, i32 266, i32* %1)
%1551 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1552 = call i32 (i8*, i8*, ...) @sprintf(i8* %1551, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.44, i64 0, i64 0), i32 -22)
%1553 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1554 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1555 = call i64 @strlen(i8* %1554)
%1556 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1553, i64 %1555, double* %3)
%1557 = load double, double* %3
%1558 = load i8*, i8** %2
%1559 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3C6494AF6CE5221F, double %1557, i8* %1558, i32 272, i32* %1)
%1560 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1561 = call i32 (i8*, i8*, ...) @sprintf(i8* %1560, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.45, i64 0, i64 0), i32 -33)
%1562 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1563 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1564 = call i64 @strlen(i8* %1563)
%1565 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1562, i64 %1564, double* %3)
%1566 = load double, double* %3
%1567 = load i8*, i8** %2
%1568 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3ADBBB2A68C9D0B9, double %1566, i8* %1567, i32 275, i32* %1)
%1569 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1570 = call i32 (i8*, i8*, ...) @sprintf(i8* %1569, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.46, i64 0, i64 0), i32 -225)
%1571 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1572 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1573 = call i64 @strlen(i8* %1572)
%1574 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1571, i64 %1573, double* %3)
%1575 = load double, double* %3
%1576 = load i8*, i8** %2
%1577 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x1560B661A31987AE, double %1575, i8* %1576, i32 276, i32* %1)
%1578 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1579 = call i32 (i8*, i8*, ...) @sprintf(i8* %1578, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 108)
%1580 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1581 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1582 = call i64 @strlen(i8* %1581)
%1583 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1580, i64 %1582, double* %3)
%1584 = load double, double* %3
%1585 = load i8*, i8** %2
%1586 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x580910EB67A174C5, double %1584, i8* %1585, i32 279, i32* %1)
%1587 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1588 = call i32 (i8*, i8*, ...) @sprintf(i8* %1587, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 109)
%1589 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1590 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1591 = call i64 @strlen(i8* %1590)
%1592 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1589, i64 %1591, double* %3)
%1593 = load double, double* %3
%1594 = load i8*, i8** %2
%1595 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x583F55264189D1F6, double %1593, i8* %1594, i32 280, i32* %1)
%1596 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1597 = call i32 (i8*, i8*, ...) @sprintf(i8* %1596, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 110)
%1598 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1599 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1600 = call i64 @strlen(i8* %1599)
%1601 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1598, i64 %1600, double* %3)
%1602 = load double, double* %3
%1603 = load i8*, i8** %2
%1604 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x58739537E8F6233A, double %1602, i8* %1603, i32 281, i32* %1)
%1605 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1606 = call i32 (i8*, i8*, ...) @sprintf(i8* %1605, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 111)
%1607 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1608 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1609 = call i64 @strlen(i8* %1608)
%1610 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1607, i64 %1609, double* %3)
%1611 = load double, double* %3
%1612 = load i8*, i8** %2
%1613 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x58A87A85E333AC08, double %1611, i8* %1612, i32 282, i32* %1)
%1614 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1615 = call i32 (i8*, i8*, ...) @sprintf(i8* %1614, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 112)
%1616 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1617 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1618 = call i64 @strlen(i8* %1617)
%1619 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1616, i64 %1618, double* %3)
%1620 = load double, double* %3
%1621 = load i8*, i8** %2
%1622 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x58DE99275C00970B, double %1620, i8* %1621, i32 283, i32* %1)
%1623 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1624 = call i32 (i8*, i8*, ...) @sprintf(i8* %1623, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 113)
%1625 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1626 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1627 = call i64 @strlen(i8* %1626)
%1628 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1625, i64 %1627, double* %3)
%1629 = load double, double* %3
%1630 = load i8*, i8** %2
%1631 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x59131FB899805E67, double %1629, i8* %1630, i32 284, i32* %1)
%1632 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1633 = call i32 (i8*, i8*, ...) @sprintf(i8* %1632, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 114)
%1634 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1635 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1636 = call i64 @strlen(i8* %1635)
%1637 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1634, i64 %1636, double* %3)
%1638 = load double, double* %3
%1639 = load i8*, i8** %2
%1640 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5947E7A6BFE07600, double %1638, i8* %1639, i32 285, i32* %1)
%1641 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1642 = call i32 (i8*, i8*, ...) @sprintf(i8* %1641, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 115)
%1643 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1644 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1645 = call i64 @strlen(i8* %1644)
%1646 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1643, i64 %1645, double* %3)
%1647 = load double, double* %3
%1648 = load i8*, i8** %2
%1649 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x597DE1906FD89380, double %1647, i8* %1648, i32 286, i32* %1)
%1650 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1651 = call i32 (i8*, i8*, ...) @sprintf(i8* %1650, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 108)
%1652 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1653 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1654 = call i64 @strlen(i8* %1653)
%1655 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1652, i64 %1654, double* %3)
%1656 = load double, double* %3
%1657 = load i8*, i8** %2
%1658 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5B5BD4363AA49DF4, double %1656, i8* %1657, i32 288, i32* %1)
%1659 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1660 = call i32 (i8*, i8*, ...) @sprintf(i8* %1659, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 109)
%1661 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1662 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1663 = call i64 @strlen(i8* %1662)
%1664 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1661, i64 %1663, double* %3)
%1665 = load double, double* %3
%1666 = load i8*, i8** %2
%1667 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5B9164A1E4A6E2B9, double %1665, i8* %1666, i32 290, i32* %1)
%1668 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1669 = call i32 (i8*, i8*, ...) @sprintf(i8* %1668, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 110)
%1670 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1671 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1672 = call i64 @strlen(i8* %1671)
%1673 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1670, i64 %1672, double* %3)
%1674 = load double, double* %3
%1675 = load i8*, i8** %2
%1676 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5BC5BDCA5DD09B67, double %1674, i8* %1675, i32 292, i32* %1)
%1677 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1678 = call i32 (i8*, i8*, ...) @sprintf(i8* %1677, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 111)
%1679 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1680 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1681 = call i64 @strlen(i8* %1680)
%1682 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1679, i64 %1681, double* %3)
%1683 = load double, double* %3
%1684 = load i8*, i8** %2
%1685 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5BFB2D3CF544C240, double %1683, i8* %1684, i32 294, i32* %1)
%1686 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1687 = call i32 (i8*, i8*, ...) @sprintf(i8* %1686, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 112)
%1688 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1689 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1690 = call i64 @strlen(i8* %1689)
%1691 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1688, i64 %1690, double* %3)
%1692 = load double, double* %3
%1693 = load i8*, i8** %2
%1694 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C30FC46194AF968, double %1692, i8* %1693, i32 296, i32* %1)
%1695 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1696 = call i32 (i8*, i8*, ...) @sprintf(i8* %1695, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 113)
%1697 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1698 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1699 = call i64 @strlen(i8* %1698)
%1700 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1697, i64 %1699, double* %3)
%1701 = load double, double* %3
%1702 = load i8*, i8** %2
%1703 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C653B579F9DB7C2, double %1701, i8* %1702, i32 298, i32* %1)
%1704 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1705 = call i32 (i8*, i8*, ...) @sprintf(i8* %1704, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 114)
%1706 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1707 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1708 = call i64 @strlen(i8* %1707)
%1709 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1706, i64 %1708, double* %3)
%1710 = load double, double* %3
%1711 = load i8*, i8** %2
%1712 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C9A8A2D878525B3, double %1710, i8* %1711, i32 300, i32* %1)
%1713 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1714 = call i32 (i8*, i8*, ...) @sprintf(i8* %1713, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 115)
%1715 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1716 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1717 = call i64 @strlen(i8* %1716)
%1718 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1715, i64 %1717, double* %3)
%1719 = load double, double* %3
%1720 = load i8*, i8** %2
%1721 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5CD0965C74B33790, double %1719, i8* %1720, i32 302, i32* %1)
%1722 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1723 = call i32 (i8*, i8*, ...) @sprintf(i8* %1722, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 108)
%1724 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1725 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1726 = call i64 @strlen(i8* %1725)
%1727 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1724, i64 %1726, double* %3)
%1728 = load double, double* %3
%1729 = load i8*, i8** %2
%1730 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5B5BD4363AA49DF4, double %1728, i8* %1729, i32 304, i32* %1)
%1731 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1732 = call i32 (i8*, i8*, ...) @sprintf(i8* %1731, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 109)
%1733 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1734 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1735 = call i64 @strlen(i8* %1734)
%1736 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1733, i64 %1735, double* %3)
%1737 = load double, double* %3
%1738 = load i8*, i8** %2
%1739 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5B9164A1E4A6E2B9, double %1737, i8* %1738, i32 306, i32* %1)
%1740 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1741 = call i32 (i8*, i8*, ...) @sprintf(i8* %1740, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 110)
%1742 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1743 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1744 = call i64 @strlen(i8* %1743)
%1745 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1742, i64 %1744, double* %3)
%1746 = load double, double* %3
%1747 = load i8*, i8** %2
%1748 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5BC5BDCA5DD09B67, double %1746, i8* %1747, i32 308, i32* %1)
%1749 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1750 = call i32 (i8*, i8*, ...) @sprintf(i8* %1749, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 111)
%1751 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1752 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1753 = call i64 @strlen(i8* %1752)
%1754 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1751, i64 %1753, double* %3)
%1755 = load double, double* %3
%1756 = load i8*, i8** %2
%1757 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5BFB2D3CF544C240, double %1755, i8* %1756, i32 310, i32* %1)
%1758 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1759 = call i32 (i8*, i8*, ...) @sprintf(i8* %1758, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 112)
%1760 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1761 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1762 = call i64 @strlen(i8* %1761)
%1763 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1760, i64 %1762, double* %3)
%1764 = load double, double* %3
%1765 = load i8*, i8** %2
%1766 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C30FC46194AF968, double %1764, i8* %1765, i32 312, i32* %1)
%1767 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1768 = call i32 (i8*, i8*, ...) @sprintf(i8* %1767, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 113)
%1769 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1770 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1771 = call i64 @strlen(i8* %1770)
%1772 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1769, i64 %1771, double* %3)
%1773 = load double, double* %3
%1774 = load i8*, i8** %2
%1775 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C653B579F9DB7C2, double %1773, i8* %1774, i32 314, i32* %1)
%1776 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1777 = call i32 (i8*, i8*, ...) @sprintf(i8* %1776, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 114)
%1778 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1779 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1780 = call i64 @strlen(i8* %1779)
%1781 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1778, i64 %1780, double* %3)
%1782 = load double, double* %3
%1783 = load i8*, i8** %2
%1784 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C9A8A2D878525B3, double %1782, i8* %1783, i32 316, i32* %1)
%1785 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1786 = call i32 (i8*, i8*, ...) @sprintf(i8* %1785, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 115)
%1787 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1788 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1789 = call i64 @strlen(i8* %1788)
%1790 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1787, i64 %1789, double* %3)
%1791 = load double, double* %3
%1792 = load i8*, i8** %2
%1793 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5CD0965C74B33790, double %1791, i8* %1792, i32 318, i32* %1)
%1794 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1795 = call i32 (i8*, i8*, ...) @sprintf(i8* %1794, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([782 x i8], [782 x i8]* @.str.50, i64 0, i64 0), i32 -1035)
%1796 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1797 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1798 = call i64 @strlen(i8* %1797)
%1799 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1796, i64 %1798, double* %3)
%1800 = load double, double* %3
%1801 = load i8*, i8** %2
%1802 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0xB247108A0912700, double %1800, i8* %1801, i32 320, i32* %1)
%1803 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1804 = call i32 (i8*, i8*, ...) @sprintf(i8* %1803, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.51, i64 0, i64 0), i32 0)
%1805 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1806 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1807 = call i64 @strlen(i8* %1806)
%1808 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1805, i64 %1807, double* %3)
%1809 = load double, double* %3
%1810 = load i8*, i8** %2
%1811 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x436FFFFFFFFFFFFF, double %1809, i8* %1810, i32 342, i32* %1)
%1812 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1813 = call i32 (i8*, i8*, ...) @sprintf(i8* %1812, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.52, i64 0, i64 0), i32 0)
%1814 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1815 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1816 = call i64 @strlen(i8* %1815)
%1817 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1814, i64 %1816, double* %3)
%1818 = load double, double* %3
%1819 = load i8*, i8** %2
%1820 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4370000000000000, double %1818, i8* %1819, i32 343, i32* %1)
%1821 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1822 = call i32 (i8*, i8*, ...) @sprintf(i8* %1821, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.53, i64 0, i64 0), i32 0)
%1823 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1824 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1825 = call i64 @strlen(i8* %1824)
%1826 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1823, i64 %1825, double* %3)
%1827 = load double, double* %3
%1828 = load i8*, i8** %2
%1829 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4370000000000000, double %1827, i8* %1828, i32 344, i32* %1)
%1830 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1831 = call i32 (i8*, i8*, ...) @sprintf(i8* %1830, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.54, i64 0, i64 0), i32 -5)
%1832 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1833 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1834 = call i64 @strlen(i8* %1833)
%1835 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1832, i64 %1834, double* %3)
%1836 = load double, double* %3
%1837 = load i8*, i8** %2
%1838 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x436FFFFFFFFFFFFF, double %1836, i8* %1837, i32 345, i32* %1)
%1839 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1840 = call i32 (i8*, i8*, ...) @sprintf(i8* %1839, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.55, i64 0, i64 0), i32 -5)
%1841 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1842 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1843 = call i64 @strlen(i8* %1842)
%1844 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1841, i64 %1843, double* %3)
%1845 = load double, double* %3
%1846 = load i8*, i8** %2
%1847 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4370000000000000, double %1845, i8* %1846, i32 346, i32* %1)
%1848 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1849 = call i32 (i8*, i8*, ...) @sprintf(i8* %1848, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.56, i64 0, i64 0), i32 0)
%1850 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1851 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1852 = call i64 @strlen(i8* %1851)
%1853 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1850, i64 %1852, double* %3)
%1854 = load double, double* %3
%1855 = load i8*, i8** %2
%1856 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43DFFFFFFFFFFFFF, double %1854, i8* %1855, i32 351, i32* %1)
%1857 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1858 = call i32 (i8*, i8*, ...) @sprintf(i8* %1857, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.57, i64 0, i64 0), i32 0)
%1859 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1860 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1861 = call i64 @strlen(i8* %1860)
%1862 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1859, i64 %1861, double* %3)
%1863 = load double, double* %3
%1864 = load i8*, i8** %2
%1865 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43E0000000000000, double %1863, i8* %1864, i32 352, i32* %1)
%1866 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1867 = call i32 (i8*, i8*, ...) @sprintf(i8* %1866, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.58, i64 0, i64 0), i32 0)
%1868 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1869 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1870 = call i64 @strlen(i8* %1869)
%1871 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1868, i64 %1870, double* %3)
%1872 = load double, double* %3
%1873 = load i8*, i8** %2
%1874 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43E0000000000000, double %1872, i8* %1873, i32 353, i32* %1)
%1875 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1876 = call i32 (i8*, i8*, ...) @sprintf(i8* %1875, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.59, i64 0, i64 0), i32 -5)
%1877 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1878 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1879 = call i64 @strlen(i8* %1878)
%1880 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1877, i64 %1879, double* %3)
%1881 = load double, double* %3
%1882 = load i8*, i8** %2
%1883 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43DFFFFFFFFFFFFF, double %1881, i8* %1882, i32 355, i32* %1)
%1884 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1885 = call i32 (i8*, i8*, ...) @sprintf(i8* %1884, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.60, i64 0, i64 0), i32 -5)
%1886 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1887 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1888 = call i64 @strlen(i8* %1887)
%1889 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1886, i64 %1888, double* %3)
%1890 = load double, double* %3
%1891 = load i8*, i8** %2
%1892 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43E0000000000000, double %1890, i8* %1891, i32 356, i32* %1)
%1893 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1894 = call i32 (i8*, i8*, ...) @sprintf(i8* %1893, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.61, i64 0, i64 0), i32 0)
%1895 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1896 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1897 = call i64 @strlen(i8* %1896)
%1898 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1895, i64 %1897, double* %3)
%1899 = load double, double* %3
%1900 = load i8*, i8** %2
%1901 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x465FFFFFFFFFFFFF, double %1899, i8* %1900, i32 362, i32* %1)
%1902 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1903 = call i32 (i8*, i8*, ...) @sprintf(i8* %1902, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.62, i64 0, i64 0), i32 0)
%1904 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1905 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1906 = call i64 @strlen(i8* %1905)
%1907 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1904, i64 %1906, double* %3)
%1908 = load double, double* %3
%1909 = load i8*, i8** %2
%1910 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4660000000000000, double %1908, i8* %1909, i32 364, i32* %1)
%1911 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1912 = call i32 (i8*, i8*, ...) @sprintf(i8* %1911, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.63, i64 0, i64 0), i32 0)
%1913 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1914 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1915 = call i64 @strlen(i8* %1914)
%1916 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1913, i64 %1915, double* %3)
%1917 = load double, double* %3
%1918 = load i8*, i8** %2
%1919 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4660000000000000, double %1917, i8* %1918, i32 366, i32* %1)
%1920 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1921 = call i32 (i8*, i8*, ...) @sprintf(i8* %1920, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([38 x i8], [38 x i8]* @.str.64, i64 0, i64 0), i32 -5)
%1922 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1923 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1924 = call i64 @strlen(i8* %1923)
%1925 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1922, i64 %1924, double* %3)
%1926 = load double, double* %3
%1927 = load i8*, i8** %2
%1928 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x465FFFFFFFFFFFFF, double %1926, i8* %1927, i32 368, i32* %1)
%1929 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1930 = call i32 (i8*, i8*, ...) @sprintf(i8* %1929, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([38 x i8], [38 x i8]* @.str.65, i64 0, i64 0), i32 -5)
%1931 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1932 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1933 = call i64 @strlen(i8* %1932)
%1934 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1931, i64 %1933, double* %3)
%1935 = load double, double* %3
%1936 = load i8*, i8** %2
%1937 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4660000000000000, double %1935, i8* %1936, i32 370, i32* %1)
%1938 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1939 = call i32 (i8*, i8*, ...) @sprintf(i8* %1938, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.66, i64 0, i64 0), i32 0)
%1940 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1941 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1942 = call i64 @strlen(i8* %1941)
%1943 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1940, i64 %1942, double* %3)
%1944 = load double, double* %3
%1945 = load i8*, i8** %2
%1946 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x496FFFFFFFFFFFFF, double %1944, i8* %1945, i32 376, i32* %1)
%1947 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1948 = call i32 (i8*, i8*, ...) @sprintf(i8* %1947, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.67, i64 0, i64 0), i32 0)
%1949 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1950 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1951 = call i64 @strlen(i8* %1950)
%1952 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1949, i64 %1951, double* %3)
%1953 = load double, double* %3
%1954 = load i8*, i8** %2
%1955 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4970000000000000, double %1953, i8* %1954, i32 378, i32* %1)
%1956 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1957 = call i32 (i8*, i8*, ...) @sprintf(i8* %1956, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.68, i64 0, i64 0), i32 0)
%1958 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1959 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1960 = call i64 @strlen(i8* %1959)
%1961 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1958, i64 %1960, double* %3)
%1962 = load double, double* %3
%1963 = load i8*, i8** %2
%1964 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4970000000000000, double %1962, i8* %1963, i32 380, i32* %1)
%1965 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1966 = call i32 (i8*, i8*, ...) @sprintf(i8* %1965, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([50 x i8], [50 x i8]* @.str.69, i64 0, i64 0), i32 -3)
%1967 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1968 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1969 = call i64 @strlen(i8* %1968)
%1970 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1967, i64 %1969, double* %3)
%1971 = load double, double* %3
%1972 = load i8*, i8** %2
%1973 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x496FFFFFFFFFFFFF, double %1971, i8* %1972, i32 382, i32* %1)
%1974 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1975 = call i32 (i8*, i8*, ...) @sprintf(i8* %1974, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([50 x i8], [50 x i8]* @.str.70, i64 0, i64 0), i32 -3)
%1976 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1977 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1978 = call i64 @strlen(i8* %1977)
%1979 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1976, i64 %1978, double* %3)
%1980 = load double, double* %3
%1981 = load i8*, i8** %2
%1982 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4970000000000000, double %1980, i8* %1981, i32 384, i32* %1)
%1983 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1984 = call i32 (i8*, i8*, ...) @sprintf(i8* %1983, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.71, i64 0, i64 0), i32 -324)
%1985 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1986 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1987 = call i64 @strlen(i8* %1986)
%1988 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1985, i64 %1987, double* %3)
%1989 = load double, double* %3
%1990 = load i8*, i8** %2
%1991 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0xFFFFFFFFFFFFF, double %1989, i8* %1990, i32 389, i32* %1)
%1992 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1993 = call i32 (i8*, i8*, ...) @sprintf(i8* %1992, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([770 x i8], [770 x i8]* @.str.72, i64 0, i64 0), i32 -1076)
%1994 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1995 = getelementptr inbounds [1001 x i8], [1001 x i8]* %5, i64 0, i64 0
%1996 = call i64 @strlen(i8* %1995)
%1997 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %1994, i64 %1996, double* %3)
%1998 = load double, double* %3
%1999 = load i8*, i8** %2
%2000 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x10000000000000, double %1998, i8* %1999, i32 390, i32* %1)
%2001 = load i32, i32* %1
ret i32 %2001
}

LLVM IR (-O2):
@.str = [7 x i8] c"Strtod\00"
@.str.1 = [2 x i8] c"0\00"
@.str.2 = [6 x i8] c"%se%d\00"
@.str.3 = [2 x i8] c"1\00"
@.str.4 = [2 x i8] c"2\00"
@.str.5 = [2 x i8] c"9\00"
@.str.6 = [6 x i8] c"12345\00"
@.str.7 = [15 x i8] c"12345678901234\00"
@.str.8 = [16 x i8] c"123456789012345\00"
@.str.9 = [1 x i8] zeroinitializer
@.str.10 = [10 x i8] c"000000000\00"
@.str.11 = [2 x i8] c"3\00"
@.str.12 = [6 x i8] c"20000\00"
@.str.13 = [6 x i8] c"30000\00"
@.str.14 = [6 x i8] c"10000\00"
@.str.15 = [6 x i8] c"90000\00"
@.str.16 = [10 x i8] c"000000001\00"
@.str.17 = [14 x i8] c"0000000020000\00"
@.str.18 = [12 x i8] c"00000030000\00"
@.str.19 = [14 x i8] c"0000000010000\00"
@.str.20 = [14 x i8] c"0000000090000\00"
@.str.21 = [5 x i8] c"1234\00"
@.str.22 = [3 x i8] c"18\00"
@.str.23 = [3 x i8] c"17\00"
@.str.24 = [8 x i8] c"0000001\00"
@.str.25 = [9 x i8] c"00000001\00"
@.str.26 = [12 x i8] c"00000001234\00"
@.str.27 = [13 x i8] c"000000001234\00"
@.str.28 = [11 x i8] c"0000000018\00"
@.str.29 = [11 x i8] c"0000000017\00"
@.str.30 = [8 x i8] c"1000000\00"
@.str.31 = [7 x i8] c"100000\00"
@.str.32 = [10 x i8] c"123400000\00"
@.str.33 = [10 x i8] c"180000000\00"
@.str.34 = [10 x i8] c"170000000\00"
@.str.35 = [15 x i8] c"00000001000000\00"
@.str.36 = [19 x i8] c"000000000000100000\00"
@.str.37 = [18 x i8] c"00000000123400000\00"
@.str.38 = [17 x i8] c"0000000123400000\00"
@.str.39 = [18 x i8] c"00000000180000000\00"
@.str.40 = [18 x i8] c"00000000170000000\00"
@.str.41 = [18 x i8] c"17976931348623157\00"
@.str.42 = [18 x i8] c"17976931348623158\00"
@.str.43 = [18 x i8] c"17976931348623159\00"
@.str.44 = [6 x i8] c"89255\00"
@.str.45 = [10 x i8] c"358416272\00"
@.str.46 = [22 x i8] c"104110013277974872254\00"
@.str.47 = [10 x i8] c"123456789\00"
@.str.48 = [26 x i8] c"1234567890123456789012345\00"
@.str.49 = [26 x i8] c"1234567890123456789052345\00"
@.str.50 = [782 x i8] c"5445618932859895362967233318697132813618813095743952975439298223406969961560047552942717636670910728746893019786283454139917900193169748259349067524939840552682198095012176093045431437495773903922425632551857520884625114624126588173520906670968542074438852601438992904761759703022688483745081090292688986958251711580854575674815074162979705098246243690189880319928315307816832576838178256307401454285988871020923752587330172447966674453785790265533466496640456213871241930958703059911787722565044368663670643970181259143319016472430928902201239474588139233890135329130660705762320235358869874608541509790266400643191187286648422874774910682648288516244021893172769161449825765517353755844373640588822904791244190695299838293263075467057383813882521706545084301049855505888186560731\00"
@.str.51 = [18 x i8] c"72057594037927928\00"
@.str.52 = [18 x i8] c"72057594037927936\00"
@.str.53 = [18 x i8] c"72057594037927932\00"
@.str.54 = [23 x i8] c"7205759403792793199999\00"
@.str.55 = [23 x i8] c"7205759403792793200001\00"
@.str.56 = [20 x i8] c"9223372036854774784\00"
@.str.57 = [20 x i8] c"9223372036854775808\00"
@.str.58 = [20 x i8] c"9223372036854775296\00"
@.str.59 = [25 x i8] c"922337203685477529599999\00"
@.str.60 = [25 x i8] c"922337203685477529600001\00"
@.str.61 = [33 x i8] c"10141204801825834086073718800384\00"
@.str.62 = [33 x i8] c"10141204801825835211973625643008\00"
@.str.63 = [33 x i8] c"10141204801825834649023672221696\00"
@.str.64 = [38 x i8] c"1014120480182583464902367222169599999\00"
@.str.65 = [38 x i8] c"1014120480182583464902367222169600001\00"
@.str.66 = [47 x i8] c"5708990770823838890407843763683279797179383808\00"
@.str.67 = [47 x i8] c"5708990770823839524233143877797980545530986496\00"
@.str.68 = [47 x i8] c"5708990770823839207320493820740630171355185152\00"
@.str.69 = [50 x i8] c"5708990770823839207320493820740630171355185151999\00"
@.str.70 = [50 x i8] c"5708990770823839207320493820740630171355185152001\00"
@.str.71 = [18 x i8] c"22250738585072011\00"
@.str.72 = [770 x i8] c"2225073858507201136057409796709131975934819546351645648023426109724822222021076945516529523908135087914149158913039621106870086438694594645527657207407820621743379988141063267329253552286881372149012981122451451889849057222307285255133155755015914397476397983411801999323962548289017107081850690630666655994938275772572015763062690663332647565300009245888316433037779791869612049497390377829704905051080609940730262937128958950003583799967207254304360284078895771796150945516748243471030702609144621572289880258182545180325707018860872113128079512233426288368622321503775666622503982534335974568884423900265498198385487948292206894721689831099698365846814022854243330660339850886445804001034933970427567186443383770486037861622771738545623065874679014086723327636718751\00"
define i32 @test_Strtod() {
%1 = alloca i32
%2 = alloca double
%3 = alloca [1001 x i8]
%4 = bitcast i32* %1 to i8*
store i32 0, i32* %1
%5 = bitcast double* %2 to i8*
%6 = getelementptr inbounds [1001 x i8], [1001 x i8]* %3, i64 0, i64 0
%7 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i32 1)
%8 = call i64 @strlen(i8* %6)
%9 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %8, double* %2)
%10 = load double, double* %2
%11 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %10, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 80, i32* %1)
%12 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i32 2)
%13 = call i64 @strlen(i8* %6)
%14 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %13, double* %2)
%15 = load double, double* %2
%16 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %15, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 81, i32* %1)
%17 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i32 -2)
%18 = call i64 @strlen(i8* %6)
%19 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %18, double* %2)
%20 = load double, double* %2
%21 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %20, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 82, i32* %1)
%22 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i32 -999)
%23 = call i64 @strlen(i8* %6)
%24 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %23, double* %2)
%25 = load double, double* %2
%26 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %25, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 83, i32* %1)
%27 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i32 999)
%28 = call i64 @strlen(i8* %6)
%29 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %28, double* %2)
%30 = load double, double* %2
%31 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %30, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 84, i32* %1)
%32 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 0)
%33 = call i64 @strlen(i8* %6)
%34 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %33, double* %2)
%35 = load double, double* %2
%36 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+00, double %35, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 87, i32* %1)
%37 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 1)
%38 = call i64 @strlen(i8* %6)
%39 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %38, double* %2)
%40 = load double, double* %2
%41 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+01, double %40, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 88, i32* %1)
%42 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 2)
%43 = call i64 @strlen(i8* %6)
%44 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %43, double* %2)
%45 = load double, double* %2
%46 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+02, double %45, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 89, i32* %1)
%47 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 20)
%48 = call i64 @strlen(i8* %6)
%49 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %48, double* %2)
%50 = load double, double* %2
%51 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+20, double %50, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 90, i32* %1)
%52 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 22)
%53 = call i64 @strlen(i8* %6)
%54 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %53, double* %2)
%55 = load double, double* %2
%56 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+22, double %55, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 91, i32* %1)
%57 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 23)
%58 = call i64 @strlen(i8* %6)
%59 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %58, double* %2)
%60 = load double, double* %2
%61 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x44B52D02C7E14AF6, double %60, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 92, i32* %1)
%62 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 35)
%63 = call i64 @strlen(i8* %6)
%64 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %63, double* %2)
%65 = load double, double* %2
%66 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4733426172C74D82, double %65, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 94, i32* %1)
%67 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 36)
%68 = call i64 @strlen(i8* %6)
%69 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %68, double* %2)
%70 = load double, double* %2
%71 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+36, double %70, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 95, i32* %1)
%72 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 37)
%73 = call i64 @strlen(i8* %6)
%74 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %73, double* %2)
%75 = load double, double* %2
%76 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x479E17B84357691B, double %75, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 96, i32* %1)
%77 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -1)
%78 = call i64 @strlen(i8* %6)
%79 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %78, double* %2)
%80 = load double, double* %2
%81 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-01, double %80, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 97, i32* %1)
%82 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -2)
%83 = call i64 @strlen(i8* %6)
%84 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %83, double* %2)
%85 = load double, double* %2
%86 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-02, double %85, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 98, i32* %1)
%87 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -5)
%88 = call i64 @strlen(i8* %6)
%89 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %88, double* %2)
%90 = load double, double* %2
%91 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-05, double %90, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 99, i32* %1)
%92 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -20)
%93 = call i64 @strlen(i8* %6)
%94 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %93, double* %2)
%95 = load double, double* %2
%96 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3BC79CA10C924223, double %95, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 100, i32* %1)
%97 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -22)
%98 = call i64 @strlen(i8* %6)
%99 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %98, double* %2)
%100 = load double, double* %2
%101 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-22, double %100, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 101, i32* %1)
%102 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -23)
%103 = call i64 @strlen(i8* %6)
%104 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %103, double* %2)
%105 = load double, double* %2
%106 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3B282DB34012B251, double %105, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 102, i32* %1)
%107 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -25)
%108 = call i64 @strlen(i8* %6)
%109 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %108, double* %2)
%110 = load double, double* %2
%111 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e-25, double %110, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 103, i32* %1)
%112 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -39)
%113 = call i64 @strlen(i8* %6)
%114 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %113, double* %2)
%115 = load double, double* %2
%116 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x37D5C72FB1552D83, double %115, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 104, i32* %1)
%117 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 0)
%118 = call i64 @strlen(i8* %6)
%119 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %118, double* %2)
%120 = load double, double* %2
%121 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+00, double %120, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 107, i32* %1)
%122 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 1)
%123 = call i64 @strlen(i8* %6)
%124 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %123, double* %2)
%125 = load double, double* %2
%126 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+01, double %125, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 108, i32* %1)
%127 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 2)
%128 = call i64 @strlen(i8* %6)
%129 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %128, double* %2)
%130 = load double, double* %2
%131 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+02, double %130, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 109, i32* %1)
%132 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 20)
%133 = call i64 @strlen(i8* %6)
%134 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %133, double* %2)
%135 = load double, double* %2
%136 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+20, double %135, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 110, i32* %1)
%137 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 22)
%138 = call i64 @strlen(i8* %6)
%139 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %138, double* %2)
%140 = load double, double* %2
%141 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+22, double %140, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 111, i32* %1)
%142 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 23)
%143 = call i64 @strlen(i8* %6)
%144 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %143, double* %2)
%145 = load double, double* %2
%146 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+23, double %145, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 112, i32* %1)
%147 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 35)
%148 = call i64 @strlen(i8* %6)
%149 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %148, double* %2)
%150 = load double, double* %2
%151 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+35, double %150, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 113, i32* %1)
%152 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 36)
%153 = call i64 @strlen(i8* %6)
%154 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %153, double* %2)
%155 = load double, double* %2
%156 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+36, double %155, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 114, i32* %1)
%157 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 37)
%158 = call i64 @strlen(i8* %6)
%159 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %158, double* %2)
%160 = load double, double* %2
%161 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e+37, double %160, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 115, i32* %1)
%162 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -1)
%163 = call i64 @strlen(i8* %6)
%164 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %163, double* %2)
%165 = load double, double* %2
%166 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-01, double %165, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 116, i32* %1)
%167 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -2)
%168 = call i64 @strlen(i8* %6)
%169 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %168, double* %2)
%170 = load double, double* %2
%171 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-02, double %170, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 117, i32* %1)
%172 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -5)
%173 = call i64 @strlen(i8* %6)
%174 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %173, double* %2)
%175 = load double, double* %2
%176 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-05, double %175, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 118, i32* %1)
%177 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -20)
%178 = call i64 @strlen(i8* %6)
%179 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %178, double* %2)
%180 = load double, double* %2
%181 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-20, double %180, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 119, i32* %1)
%182 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -22)
%183 = call i64 @strlen(i8* %6)
%184 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %183, double* %2)
%185 = load double, double* %2
%186 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-22, double %185, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 120, i32* %1)
%187 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -23)
%188 = call i64 @strlen(i8* %6)
%189 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %188, double* %2)
%190 = load double, double* %2
%191 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-23, double %190, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 121, i32* %1)
%192 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -25)
%193 = call i64 @strlen(i8* %6)
%194 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %193, double* %2)
%195 = load double, double* %2
%196 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-25, double %195, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 122, i32* %1)
%197 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -39)
%198 = call i64 @strlen(i8* %6)
%199 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %198, double* %2)
%200 = load double, double* %2
%201 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 2.000000e-39, double %200, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 123, i32* %1)
%202 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 0)
%203 = call i64 @strlen(i8* %6)
%204 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %203, double* %2)
%205 = load double, double* %2
%206 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e+00, double %205, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 126, i32* %1)
%207 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 1)
%208 = call i64 @strlen(i8* %6)
%209 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %208, double* %2)
%210 = load double, double* %2
%211 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e+01, double %210, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 127, i32* %1)
%212 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 2)
%213 = call i64 @strlen(i8* %6)
%214 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %213, double* %2)
%215 = load double, double* %2
%216 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e+02, double %215, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 128, i32* %1)
%217 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 20)
%218 = call i64 @strlen(i8* %6)
%219 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %218, double* %2)
%220 = load double, double* %2
%221 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e+20, double %220, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 129, i32* %1)
%222 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 22)
%223 = call i64 @strlen(i8* %6)
%224 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %223, double* %2)
%225 = load double, double* %2
%226 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x44B30EE8E7179044, double %225, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 130, i32* %1)
%227 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 23)
%228 = call i64 @strlen(i8* %6)
%229 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %228, double* %2)
%230 = load double, double* %2
%231 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x44E7D2A320DD7455, double %230, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 131, i32* %1)
%232 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 35)
%233 = call i64 @strlen(i8* %6)
%234 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %233, double* %2)
%235 = load double, double* %2
%236 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4765AAADA1203732, double %235, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 132, i32* %1)
%237 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 36)
%238 = call i64 @strlen(i8* %6)
%239 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %238, double* %2)
%240 = load double, double* %2
%241 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x479B1559096844FF, double %240, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 133, i32* %1)
%242 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 37)
%243 = call i64 @strlen(i8* %6)
%244 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %243, double* %2)
%245 = load double, double* %2
%246 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x47D0ED57A5E12B1F, double %245, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 134, i32* %1)
%247 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 -1)
%248 = call i64 @strlen(i8* %6)
%249 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %248, double* %2)
%250 = load double, double* %2
%251 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-01, double %250, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 135, i32* %1)
%252 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 -2)
%253 = call i64 @strlen(i8* %6)
%254 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %253, double* %2)
%255 = load double, double* %2
%256 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3FB70A3D70A3D70A, double %255, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 136, i32* %1)
%257 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 -5)
%258 = call i64 @strlen(i8* %6)
%259 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %258, double* %2)
%260 = load double, double* %2
%261 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-05, double %260, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 137, i32* %1)
%262 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 -20)
%263 = call i64 @strlen(i8* %6)
%264 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %263, double* %2)
%265 = load double, double* %2
%266 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-20, double %265, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 138, i32* %1)
%267 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 -22)
%268 = call i64 @strlen(i8* %6)
%269 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %268, double* %2)
%270 = load double, double* %2
%271 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3B910022090D2561, double %270, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 139, i32* %1)
%272 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 -23)
%273 = call i64 @strlen(i8* %6)
%274 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %273, double* %2)
%275 = load double, double* %2
%276 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3B5B3369A815089B, double %275, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 140, i32* %1)
%277 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 -25)
%278 = call i64 @strlen(i8* %6)
%279 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %278, double* %2)
%280 = load double, double* %2
%281 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-25, double %280, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 141, i32* %1)
%282 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0), i32 -39)
%283 = call i64 @strlen(i8* %6)
%284 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %283, double* %2)
%285 = load double, double* %2
%286 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 9.000000e-39, double %285, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 142, i32* %1)
%287 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 0)
%288 = call i64 @strlen(i8* %6)
%289 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %288, double* %2)
%290 = load double, double* %2
%291 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+04, double %290, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 145, i32* %1)
%292 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 1)
%293 = call i64 @strlen(i8* %6)
%294 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %293, double* %2)
%295 = load double, double* %2
%296 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+05, double %295, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 146, i32* %1)
%297 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 2)
%298 = call i64 @strlen(i8* %6)
%299 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %298, double* %2)
%300 = load double, double* %2
%301 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+06, double %300, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 147, i32* %1)
%302 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 20)
%303 = call i64 @strlen(i8* %6)
%304 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %303, double* %2)
%305 = load double, double* %2
%306 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+24, double %305, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 148, i32* %1)
%307 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 22)
%308 = call i64 @strlen(i8* %6)
%309 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %308, double* %2)
%310 = load double, double* %2
%311 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+26, double %310, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 149, i32* %1)
%312 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 23)
%313 = call i64 @strlen(i8* %6)
%314 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %313, double* %2)
%315 = load double, double* %2
%316 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+27, double %315, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 150, i32* %1)
%317 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 30)
%318 = call i64 @strlen(i8* %6)
%319 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %318, double* %2)
%320 = load double, double* %2
%321 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+34, double %320, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 151, i32* %1)
%322 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 31)
%323 = call i64 @strlen(i8* %6)
%324 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %323, double* %2)
%325 = load double, double* %2
%326 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+35, double %325, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 152, i32* %1)
%327 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 32)
%328 = call i64 @strlen(i8* %6)
%329 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %328, double* %2)
%330 = load double, double* %2
%331 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+36, double %330, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 153, i32* %1)
%332 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 35)
%333 = call i64 @strlen(i8* %6)
%334 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %333, double* %2)
%335 = load double, double* %2
%336 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+39, double %335, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 154, i32* %1)
%337 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 36)
%338 = call i64 @strlen(i8* %6)
%339 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %338, double* %2)
%340 = load double, double* %2
%341 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+40, double %340, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 155, i32* %1)
%342 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 37)
%343 = call i64 @strlen(i8* %6)
%344 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %343, double* %2)
%345 = load double, double* %2
%346 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+41, double %345, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 156, i32* %1)
%347 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 -1)
%348 = call i64 @strlen(i8* %6)
%349 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %348, double* %2)
%350 = load double, double* %2
%351 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+03, double %350, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 157, i32* %1)
%352 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 -2)
%353 = call i64 @strlen(i8* %6)
%354 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %353, double* %2)
%355 = load double, double* %2
%356 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e+02, double %355, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 158, i32* %1)
%357 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 -5)
%358 = call i64 @strlen(i8* %6)
%359 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %358, double* %2)
%360 = load double, double* %2
%361 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-01, double %360, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 159, i32* %1)
%362 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 -20)
%363 = call i64 @strlen(i8* %6)
%364 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %363, double* %2)
%365 = load double, double* %2
%366 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-16, double %365, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 160, i32* %1)
%367 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 -22)
%368 = call i64 @strlen(i8* %6)
%369 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %368, double* %2)
%370 = load double, double* %2
%371 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-18, double %370, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 161, i32* %1)
%372 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 -23)
%373 = call i64 @strlen(i8* %6)
%374 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %373, double* %2)
%375 = load double, double* %2
%376 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-19, double %375, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 162, i32* %1)
%377 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 -25)
%378 = call i64 @strlen(i8* %6)
%379 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %378, double* %2)
%380 = load double, double* %2
%381 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-21, double %380, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 163, i32* %1)
%382 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i32 -39)
%383 = call i64 @strlen(i8* %6)
%384 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %383, double* %2)
%385 = load double, double* %2
%386 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234500e-35, double %385, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 164, i32* %1)
%387 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 0)
%388 = call i64 @strlen(i8* %6)
%389 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %388, double* %2)
%390 = load double, double* %2
%391 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x42A674E79C5FE400, double %390, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 167, i32* %1)
%392 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 1)
%393 = call i64 @strlen(i8* %6)
%394 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %393, double* %2)
%395 = load double, double* %2
%396 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x42DC12218377DD00, double %395, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 168, i32* %1)
%397 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 2)
%398 = call i64 @strlen(i8* %6)
%399 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %398, double* %2)
%400 = load double, double* %2
%401 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43118B54F22AEA20, double %400, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 169, i32* %1)
%402 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 20)
%403 = call i64 @strlen(i8* %6)
%404 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %403, double* %2)
%405 = load double, double* %2
%406 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x46CE6F37FFCB97E5, double %405, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 170, i32* %1)
%407 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 22)
%408 = call i64 @strlen(i8* %6)
%409 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %408, double* %2)
%410 = load double, double* %2
%411 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4737C6E3BFD70EAB, double %410, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 171, i32* %1)
%412 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 23)
%413 = call i64 @strlen(i8* %6)
%414 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %413, double* %2)
%415 = load double, double* %2
%416 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x476DB89CAFCCD256, double %415, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 172, i32* %1)
%417 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 30)
%418 = call i64 @strlen(i8* %6)
%419 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %418, double* %2)
%420 = load double, double* %2
%421 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x48E1B716107EF6CD, double %420, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 173, i32* %1)
%422 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 31)
%423 = call i64 @strlen(i8* %6)
%424 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %423, double* %2)
%425 = load double, double* %2
%426 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x491624DB949EB480, double %425, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 174, i32* %1)
%427 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 32)
%428 = call i64 @strlen(i8* %6)
%429 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %428, double* %2)
%430 = load double, double* %2
%431 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x494BAE1279C661A0, double %430, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 175, i32* %1)
%432 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 35)
%433 = call i64 @strlen(i8* %6)
%434 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %433, double* %2)
%435 = load double, double* %2
%436 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x49EB07FE0AEBBB56, double %435, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 176, i32* %1)
%437 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 36)
%438 = call i64 @strlen(i8* %6)
%439 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %438, double* %2)
%440 = load double, double* %2
%441 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A20E4FEC6D35516, double %440, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 177, i32* %1)
%442 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 37)
%443 = call i64 @strlen(i8* %6)
%444 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %443, double* %2)
%445 = load double, double* %2
%446 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A551E3E78882A5B, double %445, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 178, i32* %1)
%447 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 -1)
%448 = call i64 @strlen(i8* %6)
%449 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %448, double* %2)
%450 = load double, double* %2
%451 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4271F71FB04CB666, double %450, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 179, i32* %1)
%452 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 -2)
%453 = call i64 @strlen(i8* %6)
%454 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %453, double* %2)
%455 = load double, double* %2
%456 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x423CBE991A14570A, double %455, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 180, i32* %1)
%457 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 -5)
%458 = call i64 @strlen(i8* %6)
%459 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %458, double* %2)
%460 = load double, double* %2
%461 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x419D6F34540CA2DB, double %460, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 181, i32* %1)
%462 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 -20)
%463 = call i64 @strlen(i8* %6)
%464 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %463, double* %2)
%465 = load double, double* %2
%466 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3E8091F1667F04BF, double %465, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 182, i32* %1)
%467 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 -22)
%468 = call i64 @strlen(i8* %6)
%469 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %468, double* %2)
%470 = load double, double* %2
%471 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3E1535AFDF5AE75B, double %470, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 183, i32* %1)
%472 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 -23)
%473 = call i64 @strlen(i8* %6)
%474 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %473, double* %2)
%475 = load double, double* %2
%476 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3DE0F7BFE5E252AF, double %475, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 184, i32* %1)
%477 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 -25)
%478 = call i64 @strlen(i8* %6)
%479 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %478, double* %2)
%480 = load double, double* %2
%481 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3D75B7FFDE92555B, double %480, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 185, i32* %1)
%482 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.7, i64 0, i64 0), i32 -39)
%483 = call i64 @strlen(i8* %6)
%484 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %483, double* %2)
%485 = load double, double* %2
%486 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3A8E9100EE33EE5F, double %485, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 186, i32* %1)
%487 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 0)
%488 = call i64 @strlen(i8* %6)
%489 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %488, double* %2)
%490 = load double, double* %2
%491 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x42DC12218377DE40, double %490, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 189, i32* %1)
%492 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 1)
%493 = call i64 @strlen(i8* %6)
%494 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %493, double* %2)
%495 = load double, double* %2
%496 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43118B54F22AEAE8, double %495, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 190, i32* %1)
%497 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 2)
%498 = call i64 @strlen(i8* %6)
%499 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %498, double* %2)
%500 = load double, double* %2
%501 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4345EE2A2EB5A5A2, double %500, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 191, i32* %1)
%502 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 20)
%503 = call i64 @strlen(i8* %6)
%504 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %503, double* %2)
%505 = load double, double* %2
%506 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x47030582FFDF3FC8, double %505, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 192, i32* %1)
%507 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 22)
%508 = call i64 @strlen(i8* %6)
%509 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %508, double* %2)
%510 = load double, double* %2
%511 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x476DB89CAFCCD3A9, double %510, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 193, i32* %1)
%512 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 23)
%513 = call i64 @strlen(i8* %6)
%514 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %513, double* %2)
%515 = load double, double* %2
%516 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x47A29361EDE00449, double %515, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 194, i32* %1)
%517 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 35)
%518 = call i64 @strlen(i8* %6)
%519 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %518, double* %2)
%520 = load double, double* %2
%521 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A20E4FEC6D355D6, double %520, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 195, i32* %1)
%522 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 36)
%523 = call i64 @strlen(i8* %6)
%524 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %523, double* %2)
%525 = load double, double* %2
%526 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A551E3E78882B4C, double %525, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 196, i32* %1)
%527 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 37)
%528 = call i64 @strlen(i8* %6)
%529 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %528, double* %2)
%530 = load double, double* %2
%531 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4A8A65CE16AA361F, double %530, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 197, i32* %1)
%532 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 39)
%533 = call i64 @strlen(i8* %6)
%534 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %533, double* %2)
%535 = load double, double* %2
%536 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4AF49F8901B4FA48, double %535, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 198, i32* %1)
%537 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 -1)
%538 = call i64 @strlen(i8* %6)
%539 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %538, double* %2)
%540 = load double, double* %2
%541 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x42A674E79C5FE500, double %540, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 199, i32* %1)
%542 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 -2)
%543 = call i64 @strlen(i8* %6)
%544 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %543, double* %2)
%545 = load double, double* %2
%546 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4271F71FB04CB733, double %545, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 200, i32* %1)
%547 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 -5)
%548 = call i64 @strlen(i8* %6)
%549 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %548, double* %2)
%550 = load double, double* %2
%551 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x41D26580B487E69B, double %550, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 201, i32* %1)
%552 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 -20)
%553 = call i64 @strlen(i8* %6)
%554 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %553, double* %2)
%555 = load double, double* %2
%556 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3EB4B66DC01EC6DB, double %555, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 202, i32* %1)
%557 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 -22)
%558 = call i64 @strlen(i8* %6)
%559 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %558, double* %2)
%560 = load double, double* %2
%561 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3E4A831BD731A260, double %560, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 203, i32* %1)
%562 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 -23)
%563 = call i64 @strlen(i8* %6)
%564 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %563, double* %2)
%565 = load double, double* %2
%566 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3E1535AFDF5AE84D, double %565, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 204, i32* %1)
%567 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 -25)
%568 = call i64 @strlen(i8* %6)
%569 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %568, double* %2)
%570 = load double, double* %2
%571 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3DAB25FFD636EBE8, double %570, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 205, i32* %1)
%572 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i32 -39)
%573 = call i64 @strlen(i8* %6)
%574 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %573, double* %2)
%575 = load double, double* %2
%576 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3AC31AA094E075D5, double %575, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 206, i32* %1)
%577 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i32 12345)
%578 = call i64 @strlen(i8* %6)
%579 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %578, double* %2)
%580 = load double, double* %2
%581 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %580, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 207, i32* %1)
%582 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str.9, i64 0, i64 0), i32 1324)
%583 = call i64 @strlen(i8* %6)
%584 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %583, double* %2)
%585 = load double, double* %2
%586 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %585, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 209, i32* %1)
%587 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.10, i64 0, i64 0), i32 123)
%588 = call i64 @strlen(i8* %6)
%589 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %588, double* %2)
%590 = load double, double* %2
%591 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %590, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 210, i32* %1)
%592 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32 -324)
%593 = call i64 @strlen(i8* %6)
%594 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %593, double* %2)
%595 = load double, double* %2
%596 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %595, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 211, i32* %1)
%597 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.11, i64 0, i64 0), i32 -324)
%598 = call i64 @strlen(i8* %6)
%599 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %598, double* %2)
%600 = load double, double* %2
%601 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 4.940660e-324, double %600, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 212, i32* %1)
%602 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -325)
%603 = call i64 @strlen(i8* %6)
%604 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %603, double* %2)
%605 = load double, double* %2
%606 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %605, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 217, i32* %1)
%607 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 -325)
%608 = call i64 @strlen(i8* %6)
%609 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %608, double* %2)
%610 = load double, double* %2
%611 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %610, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 218, i32* %1)
%612 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.12, i64 0, i64 0), i32 -328)
%613 = call i64 @strlen(i8* %6)
%614 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %613, double* %2)
%615 = load double, double* %2
%616 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %615, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 219, i32* %1)
%617 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.13, i64 0, i64 0), i32 -328)
%618 = call i64 @strlen(i8* %6)
%619 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %618, double* %2)
%620 = load double, double* %2
%621 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 4.940660e-324, double %620, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 220, i32* %1)
%622 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.14, i64 0, i64 0), i32 -329)
%623 = call i64 @strlen(i8* %6)
%624 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %623, double* %2)
%625 = load double, double* %2
%626 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %625, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 221, i32* %1)
%627 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.15, i64 0, i64 0), i32 -329)
%628 = call i64 @strlen(i8* %6)
%629 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %628, double* %2)
%630 = load double, double* %2
%631 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %630, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 222, i32* %1)
%632 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.16, i64 0, i64 0), i32 -325)
%633 = call i64 @strlen(i8* %6)
%634 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %633, double* %2)
%635 = load double, double* %2
%636 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %635, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 223, i32* %1)
%637 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.16, i64 0, i64 0), i32 -325)
%638 = call i64 @strlen(i8* %6)
%639 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %638, double* %2)
%640 = load double, double* %2
%641 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %640, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 224, i32* %1)
%642 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.17, i64 0, i64 0), i32 -328)
%643 = call i64 @strlen(i8* %6)
%644 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %643, double* %2)
%645 = load double, double* %2
%646 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %645, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 225, i32* %1)
%647 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.18, i64 0, i64 0), i32 -328)
%648 = call i64 @strlen(i8* %6)
%649 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %648, double* %2)
%650 = load double, double* %2
%651 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 4.940660e-324, double %650, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 226, i32* %1)
%652 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.19, i64 0, i64 0), i32 -329)
%653 = call i64 @strlen(i8* %6)
%654 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %653, double* %2)
%655 = load double, double* %2
%656 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %655, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 227, i32* %1)
%657 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.20, i64 0, i64 0), i32 -329)
%658 = call i64 @strlen(i8* %6)
%659 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %658, double* %2)
%660 = load double, double* %2
%661 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0.000000e+00, double %660, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 228, i32* %1)
%662 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%663 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 309)
%664 = call i64 @strlen(i8* %6)
%665 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %664, double* %2)
%666 = load double, double* %2
%667 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %662, double %666, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 235, i32* %1)
%668 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 308)
%669 = call i64 @strlen(i8* %6)
%670 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %669, double* %2)
%671 = load double, double* %2
%672 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+308, double %671, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 237, i32* %1)
%673 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), i32 305)
%674 = call i64 @strlen(i8* %6)
%675 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %674, double* %2)
%676 = load double, double* %2
%677 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+308, double %676, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 238, i32* %1)
%678 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), i32 304)
%679 = call i64 @strlen(i8* %6)
%680 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %679, double* %2)
%681 = load double, double* %2
%682 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+307, double %681, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 239, i32* %1)
%683 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%684 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.22, i64 0, i64 0), i32 307)
%685 = call i64 @strlen(i8* %6)
%686 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %685, double* %2)
%687 = load double, double* %2
%688 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %683, double %687, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 241, i32* %1)
%689 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.23, i64 0, i64 0), i32 307)
%690 = call i64 @strlen(i8* %6)
%691 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %690, double* %2)
%692 = load double, double* %2
%693 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.700000e+308, double %692, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 242, i32* %1)
%694 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%695 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.24, i64 0, i64 0), i32 309)
%696 = call i64 @strlen(i8* %6)
%697 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %696, double* %2)
%698 = load double, double* %2
%699 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %694, double %698, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 244, i32* %1)
%700 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.25, i64 0, i64 0), i32 308)
%701 = call i64 @strlen(i8* %6)
%702 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %701, double* %2)
%703 = load double, double* %2
%704 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+308, double %703, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 246, i32* %1)
%705 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.26, i64 0, i64 0), i32 305)
%706 = call i64 @strlen(i8* %6)
%707 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %706, double* %2)
%708 = load double, double* %2
%709 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+308, double %708, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 248, i32* %1)
%710 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.27, i64 0, i64 0), i32 304)
%711 = call i64 @strlen(i8* %6)
%712 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %711, double* %2)
%713 = load double, double* %2
%714 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+307, double %713, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 249, i32* %1)
%715 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%716 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 307)
%717 = call i64 @strlen(i8* %6)
%718 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %717, double* %2)
%719 = load double, double* %2
%720 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %715, double %719, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 250, i32* %1)
%721 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.29, i64 0, i64 0), i32 307)
%722 = call i64 @strlen(i8* %6)
%723 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %722, double* %2)
%724 = load double, double* %2
%725 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.700000e+308, double %724, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 251, i32* %1)
%726 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%727 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.30, i64 0, i64 0), i32 303)
%728 = call i64 @strlen(i8* %6)
%729 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %728, double* %2)
%730 = load double, double* %2
%731 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %726, double %730, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 252, i32* %1)
%732 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.31, i64 0, i64 0), i32 303)
%733 = call i64 @strlen(i8* %6)
%734 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %733, double* %2)
%735 = load double, double* %2
%736 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+308, double %735, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 253, i32* %1)
%737 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.32, i64 0, i64 0), i32 300)
%738 = call i64 @strlen(i8* %6)
%739 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %738, double* %2)
%740 = load double, double* %2
%741 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+308, double %740, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 254, i32* %1)
%742 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.32, i64 0, i64 0), i32 299)
%743 = call i64 @strlen(i8* %6)
%744 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %743, double* %2)
%745 = load double, double* %2
%746 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+307, double %745, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 255, i32* %1)
%747 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%748 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.33, i64 0, i64 0), i32 300)
%749 = call i64 @strlen(i8* %6)
%750 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %749, double* %2)
%751 = load double, double* %2
%752 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %747, double %751, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 256, i32* %1)
%753 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.34, i64 0, i64 0), i32 300)
%754 = call i64 @strlen(i8* %6)
%755 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %754, double* %2)
%756 = load double, double* %2
%757 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.700000e+308, double %756, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 257, i32* %1)
%758 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%759 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.35, i64 0, i64 0), i32 303)
%760 = call i64 @strlen(i8* %6)
%761 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %760, double* %2)
%762 = load double, double* %2
%763 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %758, double %762, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 258, i32* %1)
%764 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.36, i64 0, i64 0), i32 303)
%765 = call i64 @strlen(i8* %6)
%766 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %765, double* %2)
%767 = load double, double* %2
%768 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.000000e+308, double %767, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 259, i32* %1)
%769 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.37, i64 0, i64 0), i32 300)
%770 = call i64 @strlen(i8* %6)
%771 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %770, double* %2)
%772 = load double, double* %2
%773 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+308, double %772, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 260, i32* %1)
%774 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.38, i64 0, i64 0), i32 299)
%775 = call i64 @strlen(i8* %6)
%776 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %775, double* %2)
%777 = load double, double* %2
%778 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.234000e+307, double %777, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 261, i32* %1)
%779 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%780 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.39, i64 0, i64 0), i32 300)
%781 = call i64 @strlen(i8* %6)
%782 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %781, double* %2)
%783 = load double, double* %2
%784 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %779, double %783, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 262, i32* %1)
%785 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.40, i64 0, i64 0), i32 300)
%786 = call i64 @strlen(i8* %6)
%787 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %786, double* %2)
%788 = load double, double* %2
%789 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 1.700000e+308, double %788, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 263, i32* %1)
%790 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.41, i64 0, i64 0), i32 292)
%791 = call i64 @strlen(i8* %6)
%792 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %791, double* %2)
%793 = load double, double* %2
%794 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x7FEFFFFFFFFFFFFF, double %793, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 264, i32* %1)
%795 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.42, i64 0, i64 0), i32 292)
%796 = call i64 @strlen(i8* %6)
%797 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %796, double* %2)
%798 = load double, double* %2
%799 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x7FEFFFFFFFFFFFFF, double %798, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 265, i32* %1)
%800 = call i32 (i64, ...) bitcast (i32 (...)* @grisu3_cast_double_from_uint64 to i32 (i64, ...)*)(i64 9218868437227405312)
%801 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.43, i64 0, i64 0), i32 292)
%802 = call i64 @strlen(i8* %6)
%803 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %802, double* %2)
%804 = load double, double* %2
%805 = call i32 (i32, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (i32, double, i8*, i32, i32*, ...)*)(i32 %800, double %804, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 266, i32* %1)
%806 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.44, i64 0, i64 0), i32 -22)
%807 = call i64 @strlen(i8* %6)
%808 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %807, double* %2)
%809 = load double, double* %2
%810 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3C6494AF6CE5221F, double %809, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 272, i32* %1)
%811 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.45, i64 0, i64 0), i32 -33)
%812 = call i64 @strlen(i8* %6)
%813 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %812, double* %2)
%814 = load double, double* %2
%815 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x3ADBBB2A68C9D0B9, double %814, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 275, i32* %1)
%816 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.46, i64 0, i64 0), i32 -225)
%817 = call i64 @strlen(i8* %6)
%818 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %817, double* %2)
%819 = load double, double* %2
%820 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x1560B661A31987AE, double %819, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 276, i32* %1)
%821 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 108)
%822 = call i64 @strlen(i8* %6)
%823 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %822, double* %2)
%824 = load double, double* %2
%825 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x580910EB67A174C5, double %824, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 279, i32* %1)
%826 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 109)
%827 = call i64 @strlen(i8* %6)
%828 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %827, double* %2)
%829 = load double, double* %2
%830 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x583F55264189D1F6, double %829, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 280, i32* %1)
%831 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 110)
%832 = call i64 @strlen(i8* %6)
%833 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %832, double* %2)
%834 = load double, double* %2
%835 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x58739537E8F6233A, double %834, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 281, i32* %1)
%836 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 111)
%837 = call i64 @strlen(i8* %6)
%838 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %837, double* %2)
%839 = load double, double* %2
%840 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x58A87A85E333AC08, double %839, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 282, i32* %1)
%841 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 112)
%842 = call i64 @strlen(i8* %6)
%843 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %842, double* %2)
%844 = load double, double* %2
%845 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x58DE99275C00970B, double %844, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 283, i32* %1)
%846 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 113)
%847 = call i64 @strlen(i8* %6)
%848 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %847, double* %2)
%849 = load double, double* %2
%850 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x59131FB899805E67, double %849, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 284, i32* %1)
%851 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 114)
%852 = call i64 @strlen(i8* %6)
%853 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %852, double* %2)
%854 = load double, double* %2
%855 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5947E7A6BFE07600, double %854, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 285, i32* %1)
%856 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.47, i64 0, i64 0), i32 115)
%857 = call i64 @strlen(i8* %6)
%858 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %857, double* %2)
%859 = load double, double* %2
%860 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x597DE1906FD89380, double %859, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 286, i32* %1)
%861 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 108)
%862 = call i64 @strlen(i8* %6)
%863 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %862, double* %2)
%864 = load double, double* %2
%865 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5B5BD4363AA49DF4, double %864, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 288, i32* %1)
%866 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 109)
%867 = call i64 @strlen(i8* %6)
%868 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %867, double* %2)
%869 = load double, double* %2
%870 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5B9164A1E4A6E2B9, double %869, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 290, i32* %1)
%871 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 110)
%872 = call i64 @strlen(i8* %6)
%873 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %872, double* %2)
%874 = load double, double* %2
%875 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5BC5BDCA5DD09B67, double %874, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 292, i32* %1)
%876 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 111)
%877 = call i64 @strlen(i8* %6)
%878 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %877, double* %2)
%879 = load double, double* %2
%880 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5BFB2D3CF544C240, double %879, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 294, i32* %1)
%881 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 112)
%882 = call i64 @strlen(i8* %6)
%883 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %882, double* %2)
%884 = load double, double* %2
%885 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C30FC46194AF968, double %884, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 296, i32* %1)
%886 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 113)
%887 = call i64 @strlen(i8* %6)
%888 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %887, double* %2)
%889 = load double, double* %2
%890 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C653B579F9DB7C2, double %889, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 298, i32* %1)
%891 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 114)
%892 = call i64 @strlen(i8* %6)
%893 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %892, double* %2)
%894 = load double, double* %2
%895 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C9A8A2D878525B3, double %894, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 300, i32* %1)
%896 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.48, i64 0, i64 0), i32 115)
%897 = call i64 @strlen(i8* %6)
%898 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %897, double* %2)
%899 = load double, double* %2
%900 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5CD0965C74B33790, double %899, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 302, i32* %1)
%901 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 108)
%902 = call i64 @strlen(i8* %6)
%903 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %902, double* %2)
%904 = load double, double* %2
%905 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5B5BD4363AA49DF4, double %904, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 304, i32* %1)
%906 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 109)
%907 = call i64 @strlen(i8* %6)
%908 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %907, double* %2)
%909 = load double, double* %2
%910 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5B9164A1E4A6E2B9, double %909, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 306, i32* %1)
%911 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 110)
%912 = call i64 @strlen(i8* %6)
%913 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %912, double* %2)
%914 = load double, double* %2
%915 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5BC5BDCA5DD09B67, double %914, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 308, i32* %1)
%916 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 111)
%917 = call i64 @strlen(i8* %6)
%918 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %917, double* %2)
%919 = load double, double* %2
%920 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5BFB2D3CF544C240, double %919, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 310, i32* %1)
%921 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 112)
%922 = call i64 @strlen(i8* %6)
%923 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %922, double* %2)
%924 = load double, double* %2
%925 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C30FC46194AF968, double %924, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 312, i32* %1)
%926 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 113)
%927 = call i64 @strlen(i8* %6)
%928 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %927, double* %2)
%929 = load double, double* %2
%930 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C653B579F9DB7C2, double %929, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 314, i32* %1)
%931 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 114)
%932 = call i64 @strlen(i8* %6)
%933 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %932, double* %2)
%934 = load double, double* %2
%935 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5C9A8A2D878525B3, double %934, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 316, i32* %1)
%936 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.49, i64 0, i64 0), i32 115)
%937 = call i64 @strlen(i8* %6)
%938 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %937, double* %2)
%939 = load double, double* %2
%940 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x5CD0965C74B33790, double %939, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 318, i32* %1)
%941 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([782 x i8], [782 x i8]* @.str.50, i64 0, i64 0), i32 -1035)
%942 = call i64 @strlen(i8* %6)
%943 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %942, double* %2)
%944 = load double, double* %2
%945 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0xB247108A0912700, double %944, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 320, i32* %1)
%946 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.51, i64 0, i64 0), i32 0)
%947 = call i64 @strlen(i8* %6)
%948 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %947, double* %2)
%949 = load double, double* %2
%950 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x436FFFFFFFFFFFFF, double %949, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 342, i32* %1)
%951 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.52, i64 0, i64 0), i32 0)
%952 = call i64 @strlen(i8* %6)
%953 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %952, double* %2)
%954 = load double, double* %2
%955 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4370000000000000, double %954, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 343, i32* %1)
%956 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.53, i64 0, i64 0), i32 0)
%957 = call i64 @strlen(i8* %6)
%958 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %957, double* %2)
%959 = load double, double* %2
%960 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4370000000000000, double %959, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 344, i32* %1)
%961 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.54, i64 0, i64 0), i32 -5)
%962 = call i64 @strlen(i8* %6)
%963 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %962, double* %2)
%964 = load double, double* %2
%965 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x436FFFFFFFFFFFFF, double %964, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 345, i32* %1)
%966 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.55, i64 0, i64 0), i32 -5)
%967 = call i64 @strlen(i8* %6)
%968 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %967, double* %2)
%969 = load double, double* %2
%970 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4370000000000000, double %969, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 346, i32* %1)
%971 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.56, i64 0, i64 0), i32 0)
%972 = call i64 @strlen(i8* %6)
%973 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %972, double* %2)
%974 = load double, double* %2
%975 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43DFFFFFFFFFFFFF, double %974, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 351, i32* %1)
%976 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.57, i64 0, i64 0), i32 0)
%977 = call i64 @strlen(i8* %6)
%978 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %977, double* %2)
%979 = load double, double* %2
%980 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43E0000000000000, double %979, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 352, i32* %1)
%981 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.58, i64 0, i64 0), i32 0)
%982 = call i64 @strlen(i8* %6)
%983 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %982, double* %2)
%984 = load double, double* %2
%985 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43E0000000000000, double %984, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 353, i32* %1)
%986 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.59, i64 0, i64 0), i32 -5)
%987 = call i64 @strlen(i8* %6)
%988 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %987, double* %2)
%989 = load double, double* %2
%990 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43DFFFFFFFFFFFFF, double %989, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 355, i32* %1)
%991 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.60, i64 0, i64 0), i32 -5)
%992 = call i64 @strlen(i8* %6)
%993 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %992, double* %2)
%994 = load double, double* %2
%995 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x43E0000000000000, double %994, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 356, i32* %1)
%996 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.61, i64 0, i64 0), i32 0)
%997 = call i64 @strlen(i8* %6)
%998 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %997, double* %2)
%999 = load double, double* %2
%1000 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x465FFFFFFFFFFFFF, double %999, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 362, i32* %1)
%1001 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.62, i64 0, i64 0), i32 0)
%1002 = call i64 @strlen(i8* %6)
%1003 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1002, double* %2)
%1004 = load double, double* %2
%1005 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4660000000000000, double %1004, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 364, i32* %1)
%1006 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.63, i64 0, i64 0), i32 0)
%1007 = call i64 @strlen(i8* %6)
%1008 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1007, double* %2)
%1009 = load double, double* %2
%1010 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4660000000000000, double %1009, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 366, i32* %1)
%1011 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([38 x i8], [38 x i8]* @.str.64, i64 0, i64 0), i32 -5)
%1012 = call i64 @strlen(i8* %6)
%1013 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1012, double* %2)
%1014 = load double, double* %2
%1015 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x465FFFFFFFFFFFFF, double %1014, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 368, i32* %1)
%1016 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([38 x i8], [38 x i8]* @.str.65, i64 0, i64 0), i32 -5)
%1017 = call i64 @strlen(i8* %6)
%1018 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1017, double* %2)
%1019 = load double, double* %2
%1020 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4660000000000000, double %1019, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 370, i32* %1)
%1021 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.66, i64 0, i64 0), i32 0)
%1022 = call i64 @strlen(i8* %6)
%1023 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1022, double* %2)
%1024 = load double, double* %2
%1025 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x496FFFFFFFFFFFFF, double %1024, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 376, i32* %1)
%1026 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.67, i64 0, i64 0), i32 0)
%1027 = call i64 @strlen(i8* %6)
%1028 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1027, double* %2)
%1029 = load double, double* %2
%1030 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4970000000000000, double %1029, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 378, i32* %1)
%1031 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.68, i64 0, i64 0), i32 0)
%1032 = call i64 @strlen(i8* %6)
%1033 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1032, double* %2)
%1034 = load double, double* %2
%1035 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4970000000000000, double %1034, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 380, i32* %1)
%1036 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([50 x i8], [50 x i8]* @.str.69, i64 0, i64 0), i32 -3)
%1037 = call i64 @strlen(i8* %6)
%1038 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1037, double* %2)
%1039 = load double, double* %2
%1040 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x496FFFFFFFFFFFFF, double %1039, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 382, i32* %1)
%1041 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([50 x i8], [50 x i8]* @.str.70, i64 0, i64 0), i32 -3)
%1042 = call i64 @strlen(i8* %6)
%1043 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1042, double* %2)
%1044 = load double, double* %2
%1045 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x4970000000000000, double %1044, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 384, i32* %1)
%1046 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.71, i64 0, i64 0), i32 -324)
%1047 = call i64 @strlen(i8* %6)
%1048 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1047, double* %2)
%1049 = load double, double* %2
%1050 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0xFFFFFFFFFFFFF, double %1049, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 389, i32* %1)
%1051 = call i32 (i8*, i8*, ...) @sprintf(i8* %6, i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([770 x i8], [770 x i8]* @.str.72, i64 0, i64 0), i32 -1076)
%1052 = call i64 @strlen(i8* %6)
%1053 = call i32 (i8*, i64, double*, ...) bitcast (i32 (...)* @grisu3_parse_double to i32 (i8*, i64, double*, ...)*)(i8* %6, i64 %1052, double* %2)
%1054 = load double, double* %2
%1055 = call i32 (double, double, i8*, i32, i32*, ...) bitcast (i32 (...)* @check_double to i32 (double, double, i8*, i32, i32*, ...)*)(double 0x10000000000000, double %1054, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 390, i32* %1)
%1056 = load i32, i32* %1
ret i32 %1056
}