void dct64_1_486(int *out0, int *out1, int *b1, int *b2) {
  b1[0x00] = b2[0x00] + b2[0x1F];
  b1[0x1F] =
      (((!(16403 & 0x3F))
            ? ((((b2[0x00] - b2[0x1F])) * (16403 >> 6)) >> 9)
            : ((!(16403 & 0x1F))
                   ? ((((b2[0x00] - b2[0x1F])) * (16403 >> 5)) >> 10)
                   : ((!(16403 & 0x0F))
                          ? ((((b2[0x00] - b2[0x1F])) * (16403 >> 4)) >> 11)
                          : ((!(16403 & 0x07))
                                 ? ((((b2[0x00] - b2[0x1F])) * (16403 >> 3)) >>
                                    12)
                                 : ((!(16403 & 0x03))
                                        ? ((((b2[0x00] - b2[0x1F])) *
                                            (16403 >> 2)) >>
                                           13)
                                        : ((!(16403 & 0x01))
                                               ? ((((b2[0x00] - b2[0x1F])) *
                                                   (16403 >> 1)) >>
                                                  14)
                                               : ((((b2[0x00] - b2[0x1F])) *
                                                   (16403)) >>
                                                  15))))))));
  b1[0x01] = b2[0x01] + b2[0x1E];
  b1[0x1E] =
      (((!(16563 & 0x3F))
            ? ((((b2[0x01] - b2[0x1E])) * (16563 >> 6)) >> 9)
            : ((!(16563 & 0x1F))
                   ? ((((b2[0x01] - b2[0x1E])) * (16563 >> 5)) >> 10)
                   : ((!(16563 & 0x0F))
                          ? ((((b2[0x01] - b2[0x1E])) * (16563 >> 4)) >> 11)
                          : ((!(16563 & 0x07))
                                 ? ((((b2[0x01] - b2[0x1E])) * (16563 >> 3)) >>
                                    12)
                                 : ((!(16563 & 0x03))
                                        ? ((((b2[0x01] - b2[0x1E])) *
                                            (16563 >> 2)) >>
                                           13)
                                        : ((!(16563 & 0x01))
                                               ? ((((b2[0x01] - b2[0x1E])) *
                                                   (16563 >> 1)) >>
                                                  14)
                                               : ((((b2[0x01] - b2[0x1E])) *
                                                   (16563)) >>
                                                  15))))))));
  b1[0x02] = b2[0x02] + b2[0x1D];
  b1[0x1D] =
      (((!(16890 & 0x3F))
            ? ((((b2[0x02] - b2[0x1D])) * (16890 >> 6)) >> 9)
            : ((!(16890 & 0x1F))
                   ? ((((b2[0x02] - b2[0x1D])) * (16890 >> 5)) >> 10)
                   : ((!(16890 & 0x0F))
                          ? ((((b2[0x02] - b2[0x1D])) * (16890 >> 4)) >> 11)
                          : ((!(16890 & 0x07))
                                 ? ((((b2[0x02] - b2[0x1D])) * (16890 >> 3)) >>
                                    12)
                                 : ((!(16890 & 0x03))
                                        ? ((((b2[0x02] - b2[0x1D])) *
                                            (16890 >> 2)) >>
                                           13)
                                        : ((!(16890 & 0x01))
                                               ? ((((b2[0x02] - b2[0x1D])) *
                                                   (16890 >> 1)) >>
                                                  14)
                                               : ((((b2[0x02] - b2[0x1D])) *
                                                   (16890)) >>
                                                  15))))))));
  b1[0x03] = b2[0x03] + b2[0x1C];
  b1[0x1C] =
      (((!(17401 & 0x3F))
            ? ((((b2[0x03] - b2[0x1C])) * (17401 >> 6)) >> 9)
            : ((!(17401 & 0x1F))
                   ? ((((b2[0x03] - b2[0x1C])) * (17401 >> 5)) >> 10)
                   : ((!(17401 & 0x0F))
                          ? ((((b2[0x03] - b2[0x1C])) * (17401 >> 4)) >> 11)
                          : ((!(17401 & 0x07))
                                 ? ((((b2[0x03] - b2[0x1C])) * (17401 >> 3)) >>
                                    12)
                                 : ((!(17401 & 0x03))
                                        ? ((((b2[0x03] - b2[0x1C])) *
                                            (17401 >> 2)) >>
                                           13)
                                        : ((!(17401 & 0x01))
                                               ? ((((b2[0x03] - b2[0x1C])) *
                                                   (17401 >> 1)) >>
                                                  14)
                                               : ((((b2[0x03] - b2[0x1C])) *
                                                   (17401)) >>
                                                  15))))))));
  b1[0x04] = b2[0x04] + b2[0x1B];
  b1[0x1B] =
      (((!(18124 & 0x3F))
            ? ((((b2[0x04] - b2[0x1B])) * (18124 >> 6)) >> 9)
            : ((!(18124 & 0x1F))
                   ? ((((b2[0x04] - b2[0x1B])) * (18124 >> 5)) >> 10)
                   : ((!(18124 & 0x0F))
                          ? ((((b2[0x04] - b2[0x1B])) * (18124 >> 4)) >> 11)
                          : ((!(18124 & 0x07))
                                 ? ((((b2[0x04] - b2[0x1B])) * (18124 >> 3)) >>
                                    12)
                                 : ((!(18124 & 0x03))
                                        ? ((((b2[0x04] - b2[0x1B])) *
                                            (18124 >> 2)) >>
                                           13)
                                        : ((!(18124 & 0x01))
                                               ? ((((b2[0x04] - b2[0x1B])) *
                                                   (18124 >> 1)) >>
                                                  14)
                                               : ((((b2[0x04] - b2[0x1B])) *
                                                   (18124)) >>
                                                  15))))))));
  b1[0x05] = b2[0x05] + b2[0x1A];
  b1[0x1A] =
      (((!(19101 & 0x3F))
            ? ((((b2[0x05] - b2[0x1A])) * (19101 >> 6)) >> 9)
            : ((!(19101 & 0x1F))
                   ? ((((b2[0x05] - b2[0x1A])) * (19101 >> 5)) >> 10)
                   : ((!(19101 & 0x0F))
                          ? ((((b2[0x05] - b2[0x1A])) * (19101 >> 4)) >> 11)
                          : ((!(19101 & 0x07))
                                 ? ((((b2[0x05] - b2[0x1A])) * (19101 >> 3)) >>
                                    12)
                                 : ((!(19101 & 0x03))
                                        ? ((((b2[0x05] - b2[0x1A])) *
                                            (19101 >> 2)) >>
                                           13)
                                        : ((!(19101 & 0x01))
                                               ? ((((b2[0x05] - b2[0x1A])) *
                                                   (19101 >> 1)) >>
                                                  14)
                                               : ((((b2[0x05] - b2[0x1A])) *
                                                   (19101)) >>
                                                  15))))))));
  b1[0x06] = b2[0x06] + b2[0x19];
  b1[0x19] =
      (((!(20398 & 0x3F))
            ? ((((b2[0x06] - b2[0x19])) * (20398 >> 6)) >> 9)
            : ((!(20398 & 0x1F))
                   ? ((((b2[0x06] - b2[0x19])) * (20398 >> 5)) >> 10)
                   : ((!(20398 & 0x0F))
                          ? ((((b2[0x06] - b2[0x19])) * (20398 >> 4)) >> 11)
                          : ((!(20398 & 0x07))
                                 ? ((((b2[0x06] - b2[0x19])) * (20398 >> 3)) >>
                                    12)
                                 : ((!(20398 & 0x03))
                                        ? ((((b2[0x06] - b2[0x19])) *
                                            (20398 >> 2)) >>
                                           13)
                                        : ((!(20398 & 0x01))
                                               ? ((((b2[0x06] - b2[0x19])) *
                                                   (20398 >> 1)) >>
                                                  14)
                                               : ((((b2[0x06] - b2[0x19])) *
                                                   (20398)) >>
                                                  15))))))));
  b1[0x07] = b2[0x07] + b2[0x18];
  b1[0x18] =
      (((!(22112 & 0x3F))
            ? ((((b2[0x07] - b2[0x18])) * (22112 >> 6)) >> 9)
            : ((!(22112 & 0x1F))
                   ? ((((b2[0x07] - b2[0x18])) * (22112 >> 5)) >> 10)
                   : ((!(22112 & 0x0F))
                          ? ((((b2[0x07] - b2[0x18])) * (22112 >> 4)) >> 11)
                          : ((!(22112 & 0x07))
                                 ? ((((b2[0x07] - b2[0x18])) * (22112 >> 3)) >>
                                    12)
                                 : ((!(22112 & 0x03))
                                        ? ((((b2[0x07] - b2[0x18])) *
                                            (22112 >> 2)) >>
                                           13)
                                        : ((!(22112 & 0x01))
                                               ? ((((b2[0x07] - b2[0x18])) *
                                                   (22112 >> 1)) >>
                                                  14)
                                               : ((((b2[0x07] - b2[0x18])) *
                                                   (22112)) >>
                                                  15))))))));
  b1[0x08] = b2[0x08] + b2[0x17];
  b1[0x17] =
      (((!(24396 & 0x3F))
            ? ((((b2[0x08] - b2[0x17])) * (24396 >> 6)) >> 9)
            : ((!(24396 & 0x1F))
                   ? ((((b2[0x08] - b2[0x17])) * (24396 >> 5)) >> 10)
                   : ((!(24396 & 0x0F))
                          ? ((((b2[0x08] - b2[0x17])) * (24396 >> 4)) >> 11)
                          : ((!(24396 & 0x07))
                                 ? ((((b2[0x08] - b2[0x17])) * (24396 >> 3)) >>
                                    12)
                                 : ((!(24396 & 0x03))
                                        ? ((((b2[0x08] - b2[0x17])) *
                                            (24396 >> 2)) >>
                                           13)
                                        : ((!(24396 & 0x01))
                                               ? ((((b2[0x08] - b2[0x17])) *
                                                   (24396 >> 1)) >>
                                                  14)
                                               : ((((b2[0x08] - b2[0x17])) *
                                                   (24396)) >>
                                                  15))))))));
  b1[0x09] = b2[0x09] + b2[0x16];
  b1[0x16] =
      (((!(27503 & 0x3F))
            ? ((((b2[0x09] - b2[0x16])) * (27503 >> 6)) >> 9)
            : ((!(27503 & 0x1F))
                   ? ((((b2[0x09] - b2[0x16])) * (27503 >> 5)) >> 10)
                   : ((!(27503 & 0x0F))
                          ? ((((b2[0x09] - b2[0x16])) * (27503 >> 4)) >> 11)
                          : ((!(27503 & 0x07))
                                 ? ((((b2[0x09] - b2[0x16])) * (27503 >> 3)) >>
                                    12)
                                 : ((!(27503 & 0x03))
                                        ? ((((b2[0x09] - b2[0x16])) *
                                            (27503 >> 2)) >>
                                           13)
                                        : ((!(27503 & 0x01))
                                               ? ((((b2[0x09] - b2[0x16])) *
                                                   (27503 >> 1)) >>
                                                  14)
                                               : ((((b2[0x09] - b2[0x16])) *
                                                   (27503)) >>
                                                  15))))))));
  b1[0x0A] = b2[0x0A] + b2[0x15];
  b1[0x15] =
      (((!(31869 & 0x3F))
            ? ((((b2[0x0A] - b2[0x15])) * (31869 >> 6)) >> 9)
            : ((!(31869 & 0x1F))
                   ? ((((b2[0x0A] - b2[0x15])) * (31869 >> 5)) >> 10)
                   : ((!(31869 & 0x0F))
                          ? ((((b2[0x0A] - b2[0x15])) * (31869 >> 4)) >> 11)
                          : ((!(31869 & 0x07))
                                 ? ((((b2[0x0A] - b2[0x15])) * (31869 >> 3)) >>
                                    12)
                                 : ((!(31869 & 0x03))
                                        ? ((((b2[0x0A] - b2[0x15])) *
                                            (31869 >> 2)) >>
                                           13)
                                        : ((!(31869 & 0x01))
                                               ? ((((b2[0x0A] - b2[0x15])) *
                                                   (31869 >> 1)) >>
                                                  14)
                                               : ((((b2[0x0A] - b2[0x15])) *
                                                   (31869)) >>
                                                  15))))))));
  b1[0x0B] = b2[0x0B] + b2[0x14];
  b1[0x14] =
      (((!(38320 & 0x3F))
            ? ((((b2[0x0B] - b2[0x14])) * (38320 >> 6)) >> 9)
            : ((!(38320 & 0x1F))
                   ? ((((b2[0x0B] - b2[0x14])) * (38320 >> 5)) >> 10)
                   : ((!(38320 & 0x0F))
                          ? ((((b2[0x0B] - b2[0x14])) * (38320 >> 4)) >> 11)
                          : ((!(38320 & 0x07))
                                 ? ((((b2[0x0B] - b2[0x14])) * (38320 >> 3)) >>
                                    12)
                                 : ((!(38320 & 0x03))
                                        ? ((((b2[0x0B] - b2[0x14])) *
                                            (38320 >> 2)) >>
                                           13)
                                        : ((!(38320 & 0x01))
                                               ? ((((b2[0x0B] - b2[0x14])) *
                                                   (38320 >> 1)) >>
                                                  14)
                                               : ((((b2[0x0B] - b2[0x14])) *
                                                   (38320)) >>
                                                  15))))))));
  b1[0x0C] = b2[0x0C] + b2[0x13];
  b1[0x13] =
      (((!(48633 & 0x3F))
            ? ((((b2[0x0C] - b2[0x13])) * (48633 >> 6)) >> 9)
            : ((!(48633 & 0x1F))
                   ? ((((b2[0x0C] - b2[0x13])) * (48633 >> 5)) >> 10)
                   : ((!(48633 & 0x0F))
                          ? ((((b2[0x0C] - b2[0x13])) * (48633 >> 4)) >> 11)
                          : ((!(48633 & 0x07))
                                 ? ((((b2[0x0C] - b2[0x13])) * (48633 >> 3)) >>
                                    12)
                                 : ((!(48633 & 0x03))
                                        ? ((((b2[0x0C] - b2[0x13])) *
                                            (48633 >> 2)) >>
                                           13)
                                        : ((!(48633 & 0x01))
                                               ? ((((b2[0x0C] - b2[0x13])) *
                                                   (48633 >> 1)) >>
                                                  14)
                                               : ((((b2[0x0C] - b2[0x13])) *
                                                   (48633)) >>
                                                  15))))))));
  b1[0x0D] = b2[0x0D] + b2[0x12];
  b1[0x12] = (((long)((b2[0x0D] - b2[0x12])) * (long)(67429)) >> 15);
  b1[0x0E] = b2[0x0E] + b2[0x11];
  b1[0x11] = (((long)((b2[0x0E] - b2[0x11])) * (long)(111660)) >> 15);
  b1[0x0F] = b2[0x0F] + b2[0x10];
  b1[0x10] = (((long)((b2[0x0F] - b2[0x10])) * (long)(333906)) >> 15);
  b2[0x00] = b1[0x00] + b1[0x0F];
  b2[0x0F] =
      (((!(16463 & 0x3F))
            ? ((((b1[0x00] - b1[0x0F])) * (16463 >> 6)) >> 9)
            : ((!(16463 & 0x1F))
                   ? ((((b1[0x00] - b1[0x0F])) * (16463 >> 5)) >> 10)
                   : ((!(16463 & 0x0F))
                          ? ((((b1[0x00] - b1[0x0F])) * (16463 >> 4)) >> 11)
                          : ((!(16463 & 0x07))
                                 ? ((((b1[0x00] - b1[0x0F])) * (16463 >> 3)) >>
                                    12)
                                 : ((!(16463 & 0x03))
                                        ? ((((b1[0x00] - b1[0x0F])) *
                                            (16463 >> 2)) >>
                                           13)
                                        : ((!(16463 & 0x01))
                                               ? ((((b1[0x00] - b1[0x0F])) *
                                                   (16463 >> 1)) >>
                                                  14)
                                               : ((((b1[0x00] - b1[0x0F])) *
                                                   (16463)) >>
                                                  15))))))));
  b2[0x01] = b1[0x01] + b1[0x0E];
  b2[0x0E] =
      (((!(17121 & 0x3F))
            ? ((((b1[0x01] - b1[0x0E])) * (17121 >> 6)) >> 9)
            : ((!(17121 & 0x1F))
                   ? ((((b1[0x01] - b1[0x0E])) * (17121 >> 5)) >> 10)
                   : ((!(17121 & 0x0F))
                          ? ((((b1[0x01] - b1[0x0E])) * (17121 >> 4)) >> 11)
                          : ((!(17121 & 0x07))
                                 ? ((((b1[0x01] - b1[0x0E])) * (17121 >> 3)) >>
                                    12)
                                 : ((!(17121 & 0x03))
                                        ? ((((b1[0x01] - b1[0x0E])) *
                                            (17121 >> 2)) >>
                                           13)
                                        : ((!(17121 & 0x01))
                                               ? ((((b1[0x01] - b1[0x0E])) *
                                                   (17121 >> 1)) >>
                                                  14)
                                               : ((((b1[0x01] - b1[0x0E])) *
                                                   (17121)) >>
                                                  15))))))));
  b2[0x02] = b1[0x02] + b1[0x0D];
  b2[0x0D] =
      (((!(18577 & 0x3F))
            ? ((((b1[0x02] - b1[0x0D])) * (18577 >> 6)) >> 9)
            : ((!(18577 & 0x1F))
                   ? ((((b1[0x02] - b1[0x0D])) * (18577 >> 5)) >> 10)
                   : ((!(18577 & 0x0F))
                          ? ((((b1[0x02] - b1[0x0D])) * (18577 >> 4)) >> 11)
                          : ((!(18577 & 0x07))
                                 ? ((((b1[0x02] - b1[0x0D])) * (18577 >> 3)) >>
                                    12)
                                 : ((!(18577 & 0x03))
                                        ? ((((b1[0x02] - b1[0x0D])) *
                                            (18577 >> 2)) >>
                                           13)
                                        : ((!(18577 & 0x01))
                                               ? ((((b1[0x02] - b1[0x0D])) *
                                                   (18577 >> 1)) >>
                                                  14)
                                               : ((((b1[0x02] - b1[0x0D])) *
                                                   (18577)) >>
                                                  15))))))));
  b2[0x03] = b1[0x03] + b1[0x0C];
  b2[0x0C] =
      (((!(21195 & 0x3F))
            ? ((((b1[0x03] - b1[0x0C])) * (21195 >> 6)) >> 9)
            : ((!(21195 & 0x1F))
                   ? ((((b1[0x03] - b1[0x0C])) * (21195 >> 5)) >> 10)
                   : ((!(21195 & 0x0F))
                          ? ((((b1[0x03] - b1[0x0C])) * (21195 >> 4)) >> 11)
                          : ((!(21195 & 0x07))
                                 ? ((((b1[0x03] - b1[0x0C])) * (21195 >> 3)) >>
                                    12)
                                 : ((!(21195 & 0x03))
                                        ? ((((b1[0x03] - b1[0x0C])) *
                                            (21195 >> 2)) >>
                                           13)
                                        : ((!(21195 & 0x01))
                                               ? ((((b1[0x03] - b1[0x0C])) *
                                                   (21195 >> 1)) >>
                                                  14)
                                               : ((((b1[0x03] - b1[0x0C])) *
                                                   (21195)) >>
                                                  15))))))));
  b2[0x04] = b1[0x04] + b1[0x0B];
  b2[0x0B] =
      (((!(25826 & 0x3F))
            ? ((((b1[0x04] - b1[0x0B])) * (25826 >> 6)) >> 9)
            : ((!(25826 & 0x1F))
                   ? ((((b1[0x04] - b1[0x0B])) * (25826 >> 5)) >> 10)
                   : ((!(25826 & 0x0F))
                          ? ((((b1[0x04] - b1[0x0B])) * (25826 >> 4)) >> 11)
                          : ((!(25826 & 0x07))
                                 ? ((((b1[0x04] - b1[0x0B])) * (25826 >> 3)) >>
                                    12)
                                 : ((!(25826 & 0x03))
                                        ? ((((b1[0x04] - b1[0x0B])) *
                                            (25826 >> 2)) >>
                                           13)
                                        : ((!(25826 & 0x01))
                                               ? ((((b1[0x04] - b1[0x0B])) *
                                                   (25826 >> 1)) >>
                                                  14)
                                               : ((((b1[0x04] - b1[0x0B])) *
                                                   (25826)) >>
                                                  15))))))));
  b2[0x05] = b1[0x05] + b1[0x0A];
  b2[0x0A] =
      (((!(34756 & 0x3F))
            ? ((((b1[0x05] - b1[0x0A])) * (34756 >> 6)) >> 9)
            : ((!(34756 & 0x1F))
                   ? ((((b1[0x05] - b1[0x0A])) * (34756 >> 5)) >> 10)
                   : ((!(34756 & 0x0F))
                          ? ((((b1[0x05] - b1[0x0A])) * (34756 >> 4)) >> 11)
                          : ((!(34756 & 0x07))
                                 ? ((((b1[0x05] - b1[0x0A])) * (34756 >> 3)) >>
                                    12)
                                 : ((!(34756 & 0x03))
                                        ? ((((b1[0x05] - b1[0x0A])) *
                                            (34756 >> 2)) >>
                                           13)
                                        : ((!(34756 & 0x01))
                                               ? ((((b1[0x05] - b1[0x0A])) *
                                                   (34756 >> 1)) >>
                                                  14)
                                               : ((((b1[0x05] - b1[0x0A])) *
                                                   (34756)) >>
                                                  15))))))));
  b2[0x06] = b1[0x06] + b1[0x09];
  b2[0x09] =
      (((!(56441 & 0x3F))
            ? ((((b1[0x06] - b1[0x09])) * (56441 >> 6)) >> 9)
            : ((!(56441 & 0x1F))
                   ? ((((b1[0x06] - b1[0x09])) * (56441 >> 5)) >> 10)
                   : ((!(56441 & 0x0F))
                          ? ((((b1[0x06] - b1[0x09])) * (56441 >> 4)) >> 11)
                          : ((!(56441 & 0x07))
                                 ? ((((b1[0x06] - b1[0x09])) * (56441 >> 3)) >>
                                    12)
                                 : ((!(56441 & 0x03))
                                        ? ((((b1[0x06] - b1[0x09])) *
                                            (56441 >> 2)) >>
                                           13)
                                        : ((!(56441 & 0x01))
                                               ? ((((b1[0x06] - b1[0x09])) *
                                                   (56441 >> 1)) >>
                                                  14)
                                               : ((((b1[0x06] - b1[0x09])) *
                                                   (56441)) >>
                                                  15))))))));
  b2[0x07] = b1[0x07] + b1[0x08];
  b2[0x08] = (((long)((b1[0x07] - b1[0x08])) * (long)(167154)) >> 15);
  b2[0x10] = b1[0x10] + b1[0x1F];
  b2[0x1F] =
      (((!(16463 & 0x3F))
            ? ((((b1[0x1F] - b1[0x10])) * (16463 >> 6)) >> 9)
            : ((!(16463 & 0x1F))
                   ? ((((b1[0x1F] - b1[0x10])) * (16463 >> 5)) >> 10)
                   : ((!(16463 & 0x0F))
                          ? ((((b1[0x1F] - b1[0x10])) * (16463 >> 4)) >> 11)
                          : ((!(16463 & 0x07))
                                 ? ((((b1[0x1F] - b1[0x10])) * (16463 >> 3)) >>
                                    12)
                                 : ((!(16463 & 0x03))
                                        ? ((((b1[0x1F] - b1[0x10])) *
                                            (16463 >> 2)) >>
                                           13)
                                        : ((!(16463 & 0x01))
                                               ? ((((b1[0x1F] - b1[0x10])) *
                                                   (16463 >> 1)) >>
                                                  14)
                                               : ((((b1[0x1F] - b1[0x10])) *
                                                   (16463)) >>
                                                  15))))))));
  b2[0x11] = b1[0x11] + b1[0x1E];
  b2[0x1E] =
      (((!(17121 & 0x3F))
            ? ((((b1[0x1E] - b1[0x11])) * (17121 >> 6)) >> 9)
            : ((!(17121 & 0x1F))
                   ? ((((b1[0x1E] - b1[0x11])) * (17121 >> 5)) >> 10)
                   : ((!(17121 & 0x0F))
                          ? ((((b1[0x1E] - b1[0x11])) * (17121 >> 4)) >> 11)
                          : ((!(17121 & 0x07))
                                 ? ((((b1[0x1E] - b1[0x11])) * (17121 >> 3)) >>
                                    12)
                                 : ((!(17121 & 0x03))
                                        ? ((((b1[0x1E] - b1[0x11])) *
                                            (17121 >> 2)) >>
                                           13)
                                        : ((!(17121 & 0x01))
                                               ? ((((b1[0x1E] - b1[0x11])) *
                                                   (17121 >> 1)) >>
                                                  14)
                                               : ((((b1[0x1E] - b1[0x11])) *
                                                   (17121)) >>
                                                  15))))))));
  b2[0x12] = b1[0x12] + b1[0x1D];
  b2[0x1D] =
      (((!(18577 & 0x3F))
            ? ((((b1[0x1D] - b1[0x12])) * (18577 >> 6)) >> 9)
            : ((!(18577 & 0x1F))
                   ? ((((b1[0x1D] - b1[0x12])) * (18577 >> 5)) >> 10)
                   : ((!(18577 & 0x0F))
                          ? ((((b1[0x1D] - b1[0x12])) * (18577 >> 4)) >> 11)
                          : ((!(18577 & 0x07))
                                 ? ((((b1[0x1D] - b1[0x12])) * (18577 >> 3)) >>
                                    12)
                                 : ((!(18577 & 0x03))
                                        ? ((((b1[0x1D] - b1[0x12])) *
                                            (18577 >> 2)) >>
                                           13)
                                        : ((!(18577 & 0x01))
                                               ? ((((b1[0x1D] - b1[0x12])) *
                                                   (18577 >> 1)) >>
                                                  14)
                                               : ((((b1[0x1D] - b1[0x12])) *
                                                   (18577)) >>
                                                  15))))))));
  b2[0x13] = b1[0x13] + b1[0x1C];
  b2[0x1C] =
      (((!(21195 & 0x3F))
            ? ((((b1[0x1C] - b1[0x13])) * (21195 >> 6)) >> 9)
            : ((!(21195 & 0x1F))
                   ? ((((b1[0x1C] - b1[0x13])) * (21195 >> 5)) >> 10)
                   : ((!(21195 & 0x0F))
                          ? ((((b1[0x1C] - b1[0x13])) * (21195 >> 4)) >> 11)
                          : ((!(21195 & 0x07))
                                 ? ((((b1[0x1C] - b1[0x13])) * (21195 >> 3)) >>
                                    12)
                                 : ((!(21195 & 0x03))
                                        ? ((((b1[0x1C] - b1[0x13])) *
                                            (21195 >> 2)) >>
                                           13)
                                        : ((!(21195 & 0x01))
                                               ? ((((b1[0x1C] - b1[0x13])) *
                                                   (21195 >> 1)) >>
                                                  14)
                                               : ((((b1[0x1C] - b1[0x13])) *
                                                   (21195)) >>
                                                  15))))))));
  b2[0x14] = b1[0x14] + b1[0x1B];
  b2[0x1B] =
      (((!(25826 & 0x3F))
            ? ((((b1[0x1B] - b1[0x14])) * (25826 >> 6)) >> 9)
            : ((!(25826 & 0x1F))
                   ? ((((b1[0x1B] - b1[0x14])) * (25826 >> 5)) >> 10)
                   : ((!(25826 & 0x0F))
                          ? ((((b1[0x1B] - b1[0x14])) * (25826 >> 4)) >> 11)
                          : ((!(25826 & 0x07))
                                 ? ((((b1[0x1B] - b1[0x14])) * (25826 >> 3)) >>
                                    12)
                                 : ((!(25826 & 0x03))
                                        ? ((((b1[0x1B] - b1[0x14])) *
                                            (25826 >> 2)) >>
                                           13)
                                        : ((!(25826 & 0x01))
                                               ? ((((b1[0x1B] - b1[0x14])) *
                                                   (25826 >> 1)) >>
                                                  14)
                                               : ((((b1[0x1B] - b1[0x14])) *
                                                   (25826)) >>
                                                  15))))))));
  b2[0x15] = b1[0x15] + b1[0x1A];
  b2[0x1A] =
      (((!(34756 & 0x3F))
            ? ((((b1[0x1A] - b1[0x15])) * (34756 >> 6)) >> 9)
            : ((!(34756 & 0x1F))
                   ? ((((b1[0x1A] - b1[0x15])) * (34756 >> 5)) >> 10)
                   : ((!(34756 & 0x0F))
                          ? ((((b1[0x1A] - b1[0x15])) * (34756 >> 4)) >> 11)
                          : ((!(34756 & 0x07))
                                 ? ((((b1[0x1A] - b1[0x15])) * (34756 >> 3)) >>
                                    12)
                                 : ((!(34756 & 0x03))
                                        ? ((((b1[0x1A] - b1[0x15])) *
                                            (34756 >> 2)) >>
                                           13)
                                        : ((!(34756 & 0x01))
                                               ? ((((b1[0x1A] - b1[0x15])) *
                                                   (34756 >> 1)) >>
                                                  14)
                                               : ((((b1[0x1A] - b1[0x15])) *
                                                   (34756)) >>
                                                  15))))))));
  b2[0x16] = b1[0x16] + b1[0x19];
  b2[0x19] =
      (((!(56441 & 0x3F))
            ? ((((b1[0x19] - b1[0x16])) * (56441 >> 6)) >> 9)
            : ((!(56441 & 0x1F))
                   ? ((((b1[0x19] - b1[0x16])) * (56441 >> 5)) >> 10)
                   : ((!(56441 & 0x0F))
                          ? ((((b1[0x19] - b1[0x16])) * (56441 >> 4)) >> 11)
                          : ((!(56441 & 0x07))
                                 ? ((((b1[0x19] - b1[0x16])) * (56441 >> 3)) >>
                                    12)
                                 : ((!(56441 & 0x03))
                                        ? ((((b1[0x19] - b1[0x16])) *
                                            (56441 >> 2)) >>
                                           13)
                                        : ((!(56441 & 0x01))
                                               ? ((((b1[0x19] - b1[0x16])) *
                                                   (56441 >> 1)) >>
                                                  14)
                                               : ((((b1[0x19] - b1[0x16])) *
                                                   (56441)) >>
                                                  15))))))));
  b2[0x17] = b1[0x17] + b1[0x18];
  b2[0x18] = (((long)((b1[0x18] - b1[0x17])) * (long)(167154)) >> 15);
  b1[0x00] = b2[0x00] + b2[0x07];
  b1[0x07] =
      (((!(16704 & 0x3F))
            ? ((((b2[0x00] - b2[0x07])) * (16704 >> 6)) >> 9)
            : ((!(16704 & 0x1F))
                   ? ((((b2[0x00] - b2[0x07])) * (16704 >> 5)) >> 10)
                   : ((!(16704 & 0x0F))
                          ? ((((b2[0x00] - b2[0x07])) * (16704 >> 4)) >> 11)
                          : ((!(16704 & 0x07))
                                 ? ((((b2[0x00] - b2[0x07])) * (16704 >> 3)) >>
                                    12)
                                 : ((!(16704 & 0x03))
                                        ? ((((b2[0x00] - b2[0x07])) *
                                            (16704 >> 2)) >>
                                           13)
                                        : ((!(16704 & 0x01))
                                               ? ((((b2[0x00] - b2[0x07])) *
                                                   (16704 >> 1)) >>
                                                  14)
                                               : ((((b2[0x00] - b2[0x07])) *
                                                   (16704)) >>
                                                  15))))))));
  b1[0x01] = b2[0x01] + b2[0x06];
  b1[0x06] =
      (((!(19704 & 0x3F))
            ? ((((b2[0x01] - b2[0x06])) * (19704 >> 6)) >> 9)
            : ((!(19704 & 0x1F))
                   ? ((((b2[0x01] - b2[0x06])) * (19704 >> 5)) >> 10)
                   : ((!(19704 & 0x0F))
                          ? ((((b2[0x01] - b2[0x06])) * (19704 >> 4)) >> 11)
                          : ((!(19704 & 0x07))
                                 ? ((((b2[0x01] - b2[0x06])) * (19704 >> 3)) >>
                                    12)
                                 : ((!(19704 & 0x03))
                                        ? ((((b2[0x01] - b2[0x06])) *
                                            (19704 >> 2)) >>
                                           13)
                                        : ((!(19704 & 0x01))
                                               ? ((((b2[0x01] - b2[0x06])) *
                                                   (19704 >> 1)) >>
                                                  14)
                                               : ((((b2[0x01] - b2[0x06])) *
                                                   (19704)) >>
                                                  15))))))));
  b1[0x02] = b2[0x02] + b2[0x05];
  b1[0x05] =
      (((!(29490 & 0x3F))
            ? ((((b2[0x02] - b2[0x05])) * (29490 >> 6)) >> 9)
            : ((!(29490 & 0x1F))
                   ? ((((b2[0x02] - b2[0x05])) * (29490 >> 5)) >> 10)
                   : ((!(29490 & 0x0F))
                          ? ((((b2[0x02] - b2[0x05])) * (29490 >> 4)) >> 11)
                          : ((!(29490 & 0x07))
                                 ? ((((b2[0x02] - b2[0x05])) * (29490 >> 3)) >>
                                    12)
                                 : ((!(29490 & 0x03))
                                        ? ((((b2[0x02] - b2[0x05])) *
                                            (29490 >> 2)) >>
                                           13)
                                        : ((!(29490 & 0x01))
                                               ? ((((b2[0x02] - b2[0x05])) *
                                                   (29490 >> 1)) >>
                                                  14)
                                               : ((((b2[0x02] - b2[0x05])) *
                                                   (29490)) >>
                                                  15))))))));
  b1[0x03] = b2[0x03] + b2[0x04];
  b1[0x04] = (((long)((b2[0x03] - b2[0x04])) * (long)(83981)) >> 15);
  b1[0x08] = b2[0x08] + b2[0x0F];
  b1[0x0F] =
      (((!(16704 & 0x3F))
            ? ((((b2[0x0F] - b2[0x08])) * (16704 >> 6)) >> 9)
            : ((!(16704 & 0x1F))
                   ? ((((b2[0x0F] - b2[0x08])) * (16704 >> 5)) >> 10)
                   : ((!(16704 & 0x0F))
                          ? ((((b2[0x0F] - b2[0x08])) * (16704 >> 4)) >> 11)
                          : ((!(16704 & 0x07))
                                 ? ((((b2[0x0F] - b2[0x08])) * (16704 >> 3)) >>
                                    12)
                                 : ((!(16704 & 0x03))
                                        ? ((((b2[0x0F] - b2[0x08])) *
                                            (16704 >> 2)) >>
                                           13)
                                        : ((!(16704 & 0x01))
                                               ? ((((b2[0x0F] - b2[0x08])) *
                                                   (16704 >> 1)) >>
                                                  14)
                                               : ((((b2[0x0F] - b2[0x08])) *
                                                   (16704)) >>
                                                  15))))))));
  b1[0x09] = b2[0x09] + b2[0x0E];
  b1[0x0E] =
      (((!(19704 & 0x3F))
            ? ((((b2[0x0E] - b2[0x09])) * (19704 >> 6)) >> 9)
            : ((!(19704 & 0x1F))
                   ? ((((b2[0x0E] - b2[0x09])) * (19704 >> 5)) >> 10)
                   : ((!(19704 & 0x0F))
                          ? ((((b2[0x0E] - b2[0x09])) * (19704 >> 4)) >> 11)
                          : ((!(19704 & 0x07))
                                 ? ((((b2[0x0E] - b2[0x09])) * (19704 >> 3)) >>
                                    12)
                                 : ((!(19704 & 0x03))
                                        ? ((((b2[0x0E] - b2[0x09])) *
                                            (19704 >> 2)) >>
                                           13)
                                        : ((!(19704 & 0x01))
                                               ? ((((b2[0x0E] - b2[0x09])) *
                                                   (19704 >> 1)) >>
                                                  14)
                                               : ((((b2[0x0E] - b2[0x09])) *
                                                   (19704)) >>
                                                  15))))))));
  b1[0x0A] = b2[0x0A] + b2[0x0D];
  b1[0x0D] =
      (((!(29490 & 0x3F))
            ? ((((b2[0x0D] - b2[0x0A])) * (29490 >> 6)) >> 9)
            : ((!(29490 & 0x1F))
                   ? ((((b2[0x0D] - b2[0x0A])) * (29490 >> 5)) >> 10)
                   : ((!(29490 & 0x0F))
                          ? ((((b2[0x0D] - b2[0x0A])) * (29490 >> 4)) >> 11)
                          : ((!(29490 & 0x07))
                                 ? ((((b2[0x0D] - b2[0x0A])) * (29490 >> 3)) >>
                                    12)
                                 : ((!(29490 & 0x03))
                                        ? ((((b2[0x0D] - b2[0x0A])) *
                                            (29490 >> 2)) >>
                                           13)
                                        : ((!(29490 & 0x01))
                                               ? ((((b2[0x0D] - b2[0x0A])) *
                                                   (29490 >> 1)) >>
                                                  14)
                                               : ((((b2[0x0D] - b2[0x0A])) *
                                                   (29490)) >>
                                                  15))))))));
  b1[0x0B] = b2[0x0B] + b2[0x0C];
  b1[0x0C] = (((long)((b2[0x0C] - b2[0x0B])) * (long)(83981)) >> 15);
  b1[0x10] = b2[0x10] + b2[0x17];
  b1[0x17] =
      (((!(16704 & 0x3F))
            ? ((((b2[0x10] - b2[0x17])) * (16704 >> 6)) >> 9)
            : ((!(16704 & 0x1F))
                   ? ((((b2[0x10] - b2[0x17])) * (16704 >> 5)) >> 10)
                   : ((!(16704 & 0x0F))
                          ? ((((b2[0x10] - b2[0x17])) * (16704 >> 4)) >> 11)
                          : ((!(16704 & 0x07))
                                 ? ((((b2[0x10] - b2[0x17])) * (16704 >> 3)) >>
                                    12)
                                 : ((!(16704 & 0x03))
                                        ? ((((b2[0x10] - b2[0x17])) *
                                            (16704 >> 2)) >>
                                           13)
                                        : ((!(16704 & 0x01))
                                               ? ((((b2[0x10] - b2[0x17])) *
                                                   (16704 >> 1)) >>
                                                  14)
                                               : ((((b2[0x10] - b2[0x17])) *
                                                   (16704)) >>
                                                  15))))))));
  b1[0x11] = b2[0x11] + b2[0x16];
  b1[0x16] =
      (((!(19704 & 0x3F))
            ? ((((b2[0x11] - b2[0x16])) * (19704 >> 6)) >> 9)
            : ((!(19704 & 0x1F))
                   ? ((((b2[0x11] - b2[0x16])) * (19704 >> 5)) >> 10)
                   : ((!(19704 & 0x0F))
                          ? ((((b2[0x11] - b2[0x16])) * (19704 >> 4)) >> 11)
                          : ((!(19704 & 0x07))
                                 ? ((((b2[0x11] - b2[0x16])) * (19704 >> 3)) >>
                                    12)
                                 : ((!(19704 & 0x03))
                                        ? ((((b2[0x11] - b2[0x16])) *
                                            (19704 >> 2)) >>
                                           13)
                                        : ((!(19704 & 0x01))
                                               ? ((((b2[0x11] - b2[0x16])) *
                                                   (19704 >> 1)) >>
                                                  14)
                                               : ((((b2[0x11] - b2[0x16])) *
                                                   (19704)) >>
                                                  15))))))));
  b1[0x12] = b2[0x12] + b2[0x15];
  b1[0x15] =
      (((!(29490 & 0x3F))
            ? ((((b2[0x12] - b2[0x15])) * (29490 >> 6)) >> 9)
            : ((!(29490 & 0x1F))
                   ? ((((b2[0x12] - b2[0x15])) * (29490 >> 5)) >> 10)
                   : ((!(29490 & 0x0F))
                          ? ((((b2[0x12] - b2[0x15])) * (29490 >> 4)) >> 11)
                          : ((!(29490 & 0x07))
                                 ? ((((b2[0x12] - b2[0x15])) * (29490 >> 3)) >>
                                    12)
                                 : ((!(29490 & 0x03))
                                        ? ((((b2[0x12] - b2[0x15])) *
                                            (29490 >> 2)) >>
                                           13)
                                        : ((!(29490 & 0x01))
                                               ? ((((b2[0x12] - b2[0x15])) *
                                                   (29490 >> 1)) >>
                                                  14)
                                               : ((((b2[0x12] - b2[0x15])) *
                                                   (29490)) >>
                                                  15))))))));
  b1[0x13] = b2[0x13] + b2[0x14];
  b1[0x14] = (((long)((b2[0x13] - b2[0x14])) * (long)(83981)) >> 15);
  b1[0x18] = b2[0x18] + b2[0x1F];
  b1[0x1F] =
      (((!(16704 & 0x3F))
            ? ((((b2[0x1F] - b2[0x18])) * (16704 >> 6)) >> 9)
            : ((!(16704 & 0x1F))
                   ? ((((b2[0x1F] - b2[0x18])) * (16704 >> 5)) >> 10)
                   : ((!(16704 & 0x0F))
                          ? ((((b2[0x1F] - b2[0x18])) * (16704 >> 4)) >> 11)
                          : ((!(16704 & 0x07))
                                 ? ((((b2[0x1F] - b2[0x18])) * (16704 >> 3)) >>
                                    12)
                                 : ((!(16704 & 0x03))
                                        ? ((((b2[0x1F] - b2[0x18])) *
                                            (16704 >> 2)) >>
                                           13)
                                        : ((!(16704 & 0x01))
                                               ? ((((b2[0x1F] - b2[0x18])) *
                                                   (16704 >> 1)) >>
                                                  14)
                                               : ((((b2[0x1F] - b2[0x18])) *
                                                   (16704)) >>
                                                  15))))))));
  b1[0x19] = b2[0x19] + b2[0x1E];
  b1[0x1E] =
      (((!(19704 & 0x3F))
            ? ((((b2[0x1E] - b2[0x19])) * (19704 >> 6)) >> 9)
            : ((!(19704 & 0x1F))
                   ? ((((b2[0x1E] - b2[0x19])) * (19704 >> 5)) >> 10)
                   : ((!(19704 & 0x0F))
                          ? ((((b2[0x1E] - b2[0x19])) * (19704 >> 4)) >> 11)
                          : ((!(19704 & 0x07))
                                 ? ((((b2[0x1E] - b2[0x19])) * (19704 >> 3)) >>
                                    12)
                                 : ((!(19704 & 0x03))
                                        ? ((((b2[0x1E] - b2[0x19])) *
                                            (19704 >> 2)) >>
                                           13)
                                        : ((!(19704 & 0x01))
                                               ? ((((b2[0x1E] - b2[0x19])) *
                                                   (19704 >> 1)) >>
                                                  14)
                                               : ((((b2[0x1E] - b2[0x19])) *
                                                   (19704)) >>
                                                  15))))))));
  b1[0x1A] = b2[0x1A] + b2[0x1D];
  b1[0x1D] =
      (((!(29490 & 0x3F))
            ? ((((b2[0x1D] - b2[0x1A])) * (29490 >> 6)) >> 9)
            : ((!(29490 & 0x1F))
                   ? ((((b2[0x1D] - b2[0x1A])) * (29490 >> 5)) >> 10)
                   : ((!(29490 & 0x0F))
                          ? ((((b2[0x1D] - b2[0x1A])) * (29490 >> 4)) >> 11)
                          : ((!(29490 & 0x07))
                                 ? ((((b2[0x1D] - b2[0x1A])) * (29490 >> 3)) >>
                                    12)
                                 : ((!(29490 & 0x03))
                                        ? ((((b2[0x1D] - b2[0x1A])) *
                                            (29490 >> 2)) >>
                                           13)
                                        : ((!(29490 & 0x01))
                                               ? ((((b2[0x1D] - b2[0x1A])) *
                                                   (29490 >> 1)) >>
                                                  14)
                                               : ((((b2[0x1D] - b2[0x1A])) *
                                                   (29490)) >>
                                                  15))))))));
  b1[0x1B] = b2[0x1B] + b2[0x1C];
  b1[0x1C] = (((long)((b2[0x1C] - b2[0x1B])) * (long)(83981)) >> 15);
  b2[0x00] = b1[0x00] + b1[0x03];
  b2[0x03] =
      (((!(17733 & 0x3F))
            ? ((((b1[0x00] - b1[0x03])) * (17733 >> 6)) >> 9)
            : ((!(17733 & 0x1F))
                   ? ((((b1[0x00] - b1[0x03])) * (17733 >> 5)) >> 10)
                   : ((!(17733 & 0x0F))
                          ? ((((b1[0x00] - b1[0x03])) * (17733 >> 4)) >> 11)
                          : ((!(17733 & 0x07))
                                 ? ((((b1[0x00] - b1[0x03])) * (17733 >> 3)) >>
                                    12)
                                 : ((!(17733 & 0x03))
                                        ? ((((b1[0x00] - b1[0x03])) *
                                            (17733 >> 2)) >>
                                           13)
                                        : ((!(17733 & 0x01))
                                               ? ((((b1[0x00] - b1[0x03])) *
                                                   (17733 >> 1)) >>
                                                  14)
                                               : ((((b1[0x00] - b1[0x03])) *
                                                   (17733)) >>
                                                  15))))))));
  b2[0x01] = b1[0x01] + b1[0x02];
  b2[0x02] =
      (((!(42813 & 0x3F))
            ? ((((b1[0x01] - b1[0x02])) * (42813 >> 6)) >> 9)
            : ((!(42813 & 0x1F))
                   ? ((((b1[0x01] - b1[0x02])) * (42813 >> 5)) >> 10)
                   : ((!(42813 & 0x0F))
                          ? ((((b1[0x01] - b1[0x02])) * (42813 >> 4)) >> 11)
                          : ((!(42813 & 0x07))
                                 ? ((((b1[0x01] - b1[0x02])) * (42813 >> 3)) >>
                                    12)
                                 : ((!(42813 & 0x03))
                                        ? ((((b1[0x01] - b1[0x02])) *
                                            (42813 >> 2)) >>
                                           13)
                                        : ((!(42813 & 0x01))
                                               ? ((((b1[0x01] - b1[0x02])) *
                                                   (42813 >> 1)) >>
                                                  14)
                                               : ((((b1[0x01] - b1[0x02])) *
                                                   (42813)) >>
                                                  15))))))));
  b2[0x04] = b1[0x04] + b1[0x07];
  b2[0x07] =
      (((!(17733 & 0x3F))
            ? ((((b1[0x07] - b1[0x04])) * (17733 >> 6)) >> 9)
            : ((!(17733 & 0x1F))
                   ? ((((b1[0x07] - b1[0x04])) * (17733 >> 5)) >> 10)
                   : ((!(17733 & 0x0F))
                          ? ((((b1[0x07] - b1[0x04])) * (17733 >> 4)) >> 11)
                          : ((!(17733 & 0x07))
                                 ? ((((b1[0x07] - b1[0x04])) * (17733 >> 3)) >>
                                    12)
                                 : ((!(17733 & 0x03))
                                        ? ((((b1[0x07] - b1[0x04])) *
                                            (17733 >> 2)) >>
                                           13)
                                        : ((!(17733 & 0x01))
                                               ? ((((b1[0x07] - b1[0x04])) *
                                                   (17733 >> 1)) >>
                                                  14)
                                               : ((((b1[0x07] - b1[0x04])) *
                                                   (17733)) >>
                                                  15))))))));
  b2[0x05] = b1[0x05] + b1[0x06];
  b2[0x06] =
      (((!(42813 & 0x3F))
            ? ((((b1[0x06] - b1[0x05])) * (42813 >> 6)) >> 9)
            : ((!(42813 & 0x1F))
                   ? ((((b1[0x06] - b1[0x05])) * (42813 >> 5)) >> 10)
                   : ((!(42813 & 0x0F))
                          ? ((((b1[0x06] - b1[0x05])) * (42813 >> 4)) >> 11)
                          : ((!(42813 & 0x07))
                                 ? ((((b1[0x06] - b1[0x05])) * (42813 >> 3)) >>
                                    12)
                                 : ((!(42813 & 0x03))
                                        ? ((((b1[0x06] - b1[0x05])) *
                                            (42813 >> 2)) >>
                                           13)
                                        : ((!(42813 & 0x01))
                                               ? ((((b1[0x06] - b1[0x05])) *
                                                   (42813 >> 1)) >>
                                                  14)
                                               : ((((b1[0x06] - b1[0x05])) *
                                                   (42813)) >>
                                                  15))))))));
  b2[0x08] = b1[0x08] + b1[0x0B];
  b2[0x0B] =
      (((!(17733 & 0x3F))
            ? ((((b1[0x08] - b1[0x0B])) * (17733 >> 6)) >> 9)
            : ((!(17733 & 0x1F))
                   ? ((((b1[0x08] - b1[0x0B])) * (17733 >> 5)) >> 10)
                   : ((!(17733 & 0x0F))
                          ? ((((b1[0x08] - b1[0x0B])) * (17733 >> 4)) >> 11)
                          : ((!(17733 & 0x07))
                                 ? ((((b1[0x08] - b1[0x0B])) * (17733 >> 3)) >>
                                    12)
                                 : ((!(17733 & 0x03))
                                        ? ((((b1[0x08] - b1[0x0B])) *
                                            (17733 >> 2)) >>
                                           13)
                                        : ((!(17733 & 0x01))
                                               ? ((((b1[0x08] - b1[0x0B])) *
                                                   (17733 >> 1)) >>
                                                  14)
                                               : ((((b1[0x08] - b1[0x0B])) *
                                                   (17733)) >>
                                                  15))))))));
  b2[0x09] = b1[0x09] + b1[0x0A];
  b2[0x0A] =
      (((!(42813 & 0x3F))
            ? ((((b1[0x09] - b1[0x0A])) * (42813 >> 6)) >> 9)
            : ((!(42813 & 0x1F))
                   ? ((((b1[0x09] - b1[0x0A])) * (42813 >> 5)) >> 10)
                   : ((!(42813 & 0x0F))
                          ? ((((b1[0x09] - b1[0x0A])) * (42813 >> 4)) >> 11)
                          : ((!(42813 & 0x07))
                                 ? ((((b1[0x09] - b1[0x0A])) * (42813 >> 3)) >>
                                    12)
                                 : ((!(42813 & 0x03))
                                        ? ((((b1[0x09] - b1[0x0A])) *
                                            (42813 >> 2)) >>
                                           13)
                                        : ((!(42813 & 0x01))
                                               ? ((((b1[0x09] - b1[0x0A])) *
                                                   (42813 >> 1)) >>
                                                  14)
                                               : ((((b1[0x09] - b1[0x0A])) *
                                                   (42813)) >>
                                                  15))))))));
  b2[0x0C] = b1[0x0C] + b1[0x0F];
  b2[0x0F] =
      (((!(17733 & 0x3F))
            ? ((((b1[0x0F] - b1[0x0C])) * (17733 >> 6)) >> 9)
            : ((!(17733 & 0x1F))
                   ? ((((b1[0x0F] - b1[0x0C])) * (17733 >> 5)) >> 10)
                   : ((!(17733 & 0x0F))
                          ? ((((b1[0x0F] - b1[0x0C])) * (17733 >> 4)) >> 11)
                          : ((!(17733 & 0x07))
                                 ? ((((b1[0x0F] - b1[0x0C])) * (17733 >> 3)) >>
                                    12)
                                 : ((!(17733 & 0x03))
                                        ? ((((b1[0x0F] - b1[0x0C])) *
                                            (17733 >> 2)) >>
                                           13)
                                        : ((!(17733 & 0x01))
                                               ? ((((b1[0x0F] - b1[0x0C])) *
                                                   (17733 >> 1)) >>
                                                  14)
                                               : ((((b1[0x0F] - b1[0x0C])) *
                                                   (17733)) >>
                                                  15))))))));
  b2[0x0D] = b1[0x0D] + b1[0x0E];
  b2[0x0E] =
      (((!(42813 & 0x3F))
            ? ((((b1[0x0E] - b1[0x0D])) * (42813 >> 6)) >> 9)
            : ((!(42813 & 0x1F))
                   ? ((((b1[0x0E] - b1[0x0D])) * (42813 >> 5)) >> 10)
                   : ((!(42813 & 0x0F))
                          ? ((((b1[0x0E] - b1[0x0D])) * (42813 >> 4)) >> 11)
                          : ((!(42813 & 0x07))
                                 ? ((((b1[0x0E] - b1[0x0D])) * (42813 >> 3)) >>
                                    12)
                                 : ((!(42813 & 0x03))
                                        ? ((((b1[0x0E] - b1[0x0D])) *
                                            (42813 >> 2)) >>
                                           13)
                                        : ((!(42813 & 0x01))
                                               ? ((((b1[0x0E] - b1[0x0D])) *
                                                   (42813 >> 1)) >>
                                                  14)
                                               : ((((b1[0x0E] - b1[0x0D])) *
                                                   (42813)) >>
                                                  15))))))));
  b2[0x10] = b1[0x10] + b1[0x13];
  b2[0x13] =
      (((!(17733 & 0x3F))
            ? ((((b1[0x10] - b1[0x13])) * (17733 >> 6)) >> 9)
            : ((!(17733 & 0x1F))
                   ? ((((b1[0x10] - b1[0x13])) * (17733 >> 5)) >> 10)
                   : ((!(17733 & 0x0F))
                          ? ((((b1[0x10] - b1[0x13])) * (17733 >> 4)) >> 11)
                          : ((!(17733 & 0x07))
                                 ? ((((b1[0x10] - b1[0x13])) * (17733 >> 3)) >>
                                    12)
                                 : ((!(17733 & 0x03))
                                        ? ((((b1[0x10] - b1[0x13])) *
                                            (17733 >> 2)) >>
                                           13)
                                        : ((!(17733 & 0x01))
                                               ? ((((b1[0x10] - b1[0x13])) *
                                                   (17733 >> 1)) >>
                                                  14)
                                               : ((((b1[0x10] - b1[0x13])) *
                                                   (17733)) >>
                                                  15))))))));
  b2[0x11] = b1[0x11] + b1[0x12];
  b2[0x12] =
      (((!(42813 & 0x3F))
            ? ((((b1[0x11] - b1[0x12])) * (42813 >> 6)) >> 9)
            : ((!(42813 & 0x1F))
                   ? ((((b1[0x11] - b1[0x12])) * (42813 >> 5)) >> 10)
                   : ((!(42813 & 0x0F))
                          ? ((((b1[0x11] - b1[0x12])) * (42813 >> 4)) >> 11)
                          : ((!(42813 & 0x07))
                                 ? ((((b1[0x11] - b1[0x12])) * (42813 >> 3)) >>
                                    12)
                                 : ((!(42813 & 0x03))
                                        ? ((((b1[0x11] - b1[0x12])) *
                                            (42813 >> 2)) >>
                                           13)
                                        : ((!(42813 & 0x01))
                                               ? ((((b1[0x11] - b1[0x12])) *
                                                   (42813 >> 1)) >>
                                                  14)
                                               : ((((b1[0x11] - b1[0x12])) *
                                                   (42813)) >>
                                                  15))))))));
  b2[0x14] = b1[0x14] + b1[0x17];
  b2[0x17] =
      (((!(17733 & 0x3F))
            ? ((((b1[0x17] - b1[0x14])) * (17733 >> 6)) >> 9)
            : ((!(17733 & 0x1F))
                   ? ((((b1[0x17] - b1[0x14])) * (17733 >> 5)) >> 10)
                   : ((!(17733 & 0x0F))
                          ? ((((b1[0x17] - b1[0x14])) * (17733 >> 4)) >> 11)
                          : ((!(17733 & 0x07))
                                 ? ((((b1[0x17] - b1[0x14])) * (17733 >> 3)) >>
                                    12)
                                 : ((!(17733 & 0x03))
                                        ? ((((b1[0x17] - b1[0x14])) *
                                            (17733 >> 2)) >>
                                           13)
                                        : ((!(17733 & 0x01))
                                               ? ((((b1[0x17] - b1[0x14])) *
                                                   (17733 >> 1)) >>
                                                  14)
                                               : ((((b1[0x17] - b1[0x14])) *
                                                   (17733)) >>
                                                  15))))))));
  b2[0x15] = b1[0x15] + b1[0x16];
  b2[0x16] =
      (((!(42813 & 0x3F))
            ? ((((b1[0x16] - b1[0x15])) * (42813 >> 6)) >> 9)
            : ((!(42813 & 0x1F))
                   ? ((((b1[0x16] - b1[0x15])) * (42813 >> 5)) >> 10)
                   : ((!(42813 & 0x0F))
                          ? ((((b1[0x16] - b1[0x15])) * (42813 >> 4)) >> 11)
                          : ((!(42813 & 0x07))
                                 ? ((((b1[0x16] - b1[0x15])) * (42813 >> 3)) >>
                                    12)
                                 : ((!(42813 & 0x03))
                                        ? ((((b1[0x16] - b1[0x15])) *
                                            (42813 >> 2)) >>
                                           13)
                                        : ((!(42813 & 0x01))
                                               ? ((((b1[0x16] - b1[0x15])) *
                                                   (42813 >> 1)) >>
                                                  14)
                                               : ((((b1[0x16] - b1[0x15])) *
                                                   (42813)) >>
                                                  15))))))));
  b2[0x18] = b1[0x18] + b1[0x1B];
  b2[0x1B] =
      (((!(17733 & 0x3F))
            ? ((((b1[0x18] - b1[0x1B])) * (17733 >> 6)) >> 9)
            : ((!(17733 & 0x1F))
                   ? ((((b1[0x18] - b1[0x1B])) * (17733 >> 5)) >> 10)
                   : ((!(17733 & 0x0F))
                          ? ((((b1[0x18] - b1[0x1B])) * (17733 >> 4)) >> 11)
                          : ((!(17733 & 0x07))
                                 ? ((((b1[0x18] - b1[0x1B])) * (17733 >> 3)) >>
                                    12)
                                 : ((!(17733 & 0x03))
                                        ? ((((b1[0x18] - b1[0x1B])) *
                                            (17733 >> 2)) >>
                                           13)
                                        : ((!(17733 & 0x01))
                                               ? ((((b1[0x18] - b1[0x1B])) *
                                                   (17733 >> 1)) >>
                                                  14)
                                               : ((((b1[0x18] - b1[0x1B])) *
                                                   (17733)) >>
                                                  15))))))));
  b2[0x19] = b1[0x19] + b1[0x1A];
  b2[0x1A] =
      (((!(42813 & 0x3F))
            ? ((((b1[0x19] - b1[0x1A])) * (42813 >> 6)) >> 9)
            : ((!(42813 & 0x1F))
                   ? ((((b1[0x19] - b1[0x1A])) * (42813 >> 5)) >> 10)
                   : ((!(42813 & 0x0F))
                          ? ((((b1[0x19] - b1[0x1A])) * (42813 >> 4)) >> 11)
                          : ((!(42813 & 0x07))
                                 ? ((((b1[0x19] - b1[0x1A])) * (42813 >> 3)) >>
                                    12)
                                 : ((!(42813 & 0x03))
                                        ? ((((b1[0x19] - b1[0x1A])) *
                                            (42813 >> 2)) >>
                                           13)
                                        : ((!(42813 & 0x01))
                                               ? ((((b1[0x19] - b1[0x1A])) *
                                                   (42813 >> 1)) >>
                                                  14)
                                               : ((((b1[0x19] - b1[0x1A])) *
                                                   (42813)) >>
                                                  15))))))));
  b2[0x1C] = b1[0x1C] + b1[0x1F];
  b2[0x1F] =
      (((!(17733 & 0x3F))
            ? ((((b1[0x1F] - b1[0x1C])) * (17733 >> 6)) >> 9)
            : ((!(17733 & 0x1F))
                   ? ((((b1[0x1F] - b1[0x1C])) * (17733 >> 5)) >> 10)
                   : ((!(17733 & 0x0F))
                          ? ((((b1[0x1F] - b1[0x1C])) * (17733 >> 4)) >> 11)
                          : ((!(17733 & 0x07))
                                 ? ((((b1[0x1F] - b1[0x1C])) * (17733 >> 3)) >>
                                    12)
                                 : ((!(17733 & 0x03))
                                        ? ((((b1[0x1F] - b1[0x1C])) *
                                            (17733 >> 2)) >>
                                           13)
                                        : ((!(17733 & 0x01))
                                               ? ((((b1[0x1F] - b1[0x1C])) *
                                                   (17733 >> 1)) >>
                                                  14)
                                               : ((((b1[0x1F] - b1[0x1C])) *
                                                   (17733)) >>
                                                  15))))))));
  b2[0x1D] = b1[0x1D] + b1[0x1E];
  b2[0x1E] =
      (((!(42813 & 0x3F))
            ? ((((b1[0x1E] - b1[0x1D])) * (42813 >> 6)) >> 9)
            : ((!(42813 & 0x1F))
                   ? ((((b1[0x1E] - b1[0x1D])) * (42813 >> 5)) >> 10)
                   : ((!(42813 & 0x0F))
                          ? ((((b1[0x1E] - b1[0x1D])) * (42813 >> 4)) >> 11)
                          : ((!(42813 & 0x07))
                                 ? ((((b1[0x1E] - b1[0x1D])) * (42813 >> 3)) >>
                                    12)
                                 : ((!(42813 & 0x03))
                                        ? ((((b1[0x1E] - b1[0x1D])) *
                                            (42813 >> 2)) >>
                                           13)
                                        : ((!(42813 & 0x01))
                                               ? ((((b1[0x1E] - b1[0x1D])) *
                                                   (42813 >> 1)) >>
                                                  14)
                                               : ((((b1[0x1E] - b1[0x1D])) *
                                                   (42813)) >>
                                                  15))))))));
  {
    int i;
    for (i = 0; i < 32; i += 4) {
      b1[i + 0x00] = b2[i + 0x00] + b2[i + 0x01];
      b1[i + 0x01] = ((
          (!(23170 & 0x3F))
              ? ((((b2[i + 0x00] - b2[i + 0x01])) * (23170 >> 6)) >> 9)
              : ((!(23170 & 0x1F))
                     ? ((((b2[i + 0x00] - b2[i + 0x01])) * (23170 >> 5)) >> 10)
                     : ((!(23170 & 0x0F))
                            ? ((((b2[i + 0x00] - b2[i + 0x01])) *
                                (23170 >> 4)) >>
                               11)
                            : ((!(23170 & 0x07))
                                   ? ((((b2[i + 0x00] - b2[i + 0x01])) *
                                       (23170 >> 3)) >>
                                      12)
                                   : ((!(23170 & 0x03))
                                          ? ((((b2[i + 0x00] - b2[i + 0x01])) *
                                              (23170 >> 2)) >>
                                             13)
                                          : ((!(23170 & 0x01))
                                                 ? ((((b2[i + 0x00] -
                                                       b2[i + 0x01])) *
                                                     (23170 >> 1)) >>
                                                    14)
                                                 : ((((b2[i + 0x00] -
                                                       b2[i + 0x01])) *
                                                     (23170)) >>
                                                    15))))))));
      b1[i + 0x02] = b2[i + 0x02] + b2[i + 0x03];
      b1[i + 0x03] = ((
          (!(23170 & 0x3F))
              ? ((((b2[i + 0x03] - b2[i + 0x02])) * (23170 >> 6)) >> 9)
              : ((!(23170 & 0x1F))
                     ? ((((b2[i + 0x03] - b2[i + 0x02])) * (23170 >> 5)) >> 10)
                     : ((!(23170 & 0x0F))
                            ? ((((b2[i + 0x03] - b2[i + 0x02])) *
                                (23170 >> 4)) >>
                               11)
                            : ((!(23170 & 0x07))
                                   ? ((((b2[i + 0x03] - b2[i + 0x02])) *
                                       (23170 >> 3)) >>
                                      12)
                                   : ((!(23170 & 0x03))
                                          ? ((((b2[i + 0x03] - b2[i + 0x02])) *
                                              (23170 >> 2)) >>
                                             13)
                                          : ((!(23170 & 0x01))
                                                 ? ((((b2[i + 0x03] -
                                                       b2[i + 0x02])) *
                                                     (23170 >> 1)) >>
                                                    14)
                                                 : ((((b2[i + 0x03] -
                                                       b2[i + 0x02])) *
                                                     (23170)) >>
                                                    15))))))));
    }
  }
  b1[0x02] += b1[0x03];
  b1[0x06] += b1[0x07];
  b1[0x04] += b1[0x06];
  b1[0x06] += b1[0x05];
  b1[0x05] += b1[0x07];
  b1[0x0A] += b1[0x0B];
  b1[0x0E] += b1[0x0F];
  b1[0x0C] += b1[0x0E];
  b1[0x0E] += b1[0x0D];
  b1[0x0D] += b1[0x0F];
  b1[0x12] += b1[0x13];
  b1[0x16] += b1[0x17];
  b1[0x14] += b1[0x16];
  b1[0x16] += b1[0x15];
  b1[0x15] += b1[0x17];
  b1[0x1A] += b1[0x1B];
  b1[0x1E] += b1[0x1F];
  b1[0x1C] += b1[0x1E];
  b1[0x1E] += b1[0x1D];
  b1[0x1D] += b1[0x1F];
  out0[128 * (16)] = (b1[0x00]);
  out0[128 * (12)] = (b1[0x04]);
  out0[128 * (8)] = (b1[0x02]);
  out0[128 * (4)] = (b1[0x06]);
  out0[128 * (0)] = (b1[0x01]);
  out1[128 * (0)] = (b1[0x01]);
  out1[128 * (4)] = (b1[0x05]);
  out1[128 * (8)] = (b1[0x03]);
  out1[128 * (12)] = (b1[0x07]);
  b1[0x08] += b1[0x0C];
  out0[128 * (14)] = (b1[0x08]);
  b1[0x0C] += b1[0x0a];
  out0[128 * (10)] = (b1[0x0C]);
  b1[0x0A] += b1[0x0E];
  out0[128 * (6)] = (b1[0x0A]);
  b1[0x0E] += b1[0x09];
  out0[128 * (2)] = (b1[0x0E]);
  b1[0x09] += b1[0x0D];
  out1[128 * (2)] = (b1[0x09]);
  b1[0x0D] += b1[0x0B];
  out1[128 * (6)] = (b1[0x0D]);
  b1[0x0B] += b1[0x0F];
  out1[128 * (10)] = (b1[0x0B]);
  out1[128 * (14)] = (b1[0x0F]);
  b1[0x18] += b1[0x1C];
  out0[128 * (15)] = (b1[0x10] + b1[0x18]);
  out0[128 * (13)] = (b1[0x18] + b1[0x14]);
  b1[0x1C] += b1[0x1a];
  out0[128 * (11)] = (b1[0x14] + b1[0x1C]);
  out0[128 * (9)] = (b1[0x1C] + b1[0x12]);
  b1[0x1A] += b1[0x1E];
  out0[128 * (7)] = (b1[0x12] + b1[0x1A]);
  out0[128 * (5)] = (b1[0x1A] + b1[0x16]);
  b1[0x1E] += b1[0x19];
  out0[128 * (3)] = (b1[0x16] + b1[0x1E]);
  out0[128 * (1)] = (b1[0x1E] + b1[0x11]);
  b1[0x19] += b1[0x1D];
  out1[128 * (1)] = (b1[0x11] + b1[0x19]);
  out1[128 * (3)] = (b1[0x19] + b1[0x15]);
  b1[0x1D] += b1[0x1B];
  out1[128 * (5)] = (b1[0x15] + b1[0x1D]);
  out1[128 * (7)] = (b1[0x1D] + b1[0x13]);
  b1[0x1B] += b1[0x1F];
  out1[128 * (9)] = (b1[0x13] + b1[0x1B]);
  out1[128 * (11)] = (b1[0x1B] + b1[0x17]);
  out1[128 * (13)] = (b1[0x17] + b1[0x1F]);
  out1[128 * (15)] = (b1[0x1F]);
}


x86 assembly (clang, -O0):
<dct64_1_486>:
push   %rbp
mov    %rsp,%rbp
mov    %rdi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    %rdx,-0x18(%rbp)
mov    %rcx,-0x20(%rbp)
mov    -0x20(%rbp),%rax
mov    (%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x7c(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,(%rax)
mov    -0x20(%rbp),%rax
mov    (%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x7c(%rcx),%eax
imul   $0x4013,%eax,%ecx
sar    $0xf,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x7c(%rax)
mov    -0x20(%rbp),%rax
mov    0x4(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x78(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x4(%rax)
mov    -0x20(%rbp),%rax
mov    0x4(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x78(%rcx),%eax
imul   $0x40b3,%eax,%ecx
sar    $0xf,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x78(%rax)
mov    -0x20(%rbp),%rax
mov    0x8(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x74(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x8(%rax)
mov    -0x20(%rbp),%rax
mov    0x8(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x74(%rcx),%eax
imul   $0x20fd,%eax,%ecx
sar    $0xe,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x74(%rax)
mov    -0x20(%rbp),%rax
mov    0xc(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x70(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0xc(%rax)
mov    -0x20(%rbp),%rax
mov    0xc(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x70(%rcx),%eax
imul   $0x43f9,%eax,%ecx
sar    $0xf,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x70(%rax)
mov    -0x20(%rbp),%rax
mov    0x10(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x6c(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x10(%rax)
mov    -0x20(%rbp),%rax
mov    0x10(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x6c(%rcx),%eax
imul   $0x11b3,%eax,%ecx
sar    $0xd,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x6c(%rax)
mov    -0x20(%rbp),%rax
mov    0x14(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x68(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x14(%rax)
mov    -0x20(%rbp),%rax
mov    0x14(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x68(%rcx),%eax
imul   $0x4a9d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x68(%rax)
mov    -0x20(%rbp),%rax
mov    0x18(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x64(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x18(%rax)
mov    -0x20(%rbp),%rax
mov    0x18(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x64(%rcx),%eax
imul   $0x27d7,%eax,%ecx
sar    $0xe,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x64(%rax)
mov    -0x20(%rbp),%rax
mov    0x1c(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x60(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x1c(%rax)
mov    -0x20(%rbp),%rax
mov    0x1c(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x60(%rcx),%eax
imul   $0x2b3,%eax,%ecx
sar    $0xa,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x60(%rax)
mov    -0x20(%rbp),%rax
mov    0x20(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x5c(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x20(%rax)
mov    -0x20(%rbp),%rax
mov    0x20(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x5c(%rcx),%eax
imul   $0x17d3,%eax,%ecx
sar    $0xd,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x5c(%rax)
mov    -0x20(%rbp),%rax
mov    0x24(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x58(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x24(%rax)
mov    -0x20(%rbp),%rax
mov    0x24(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x58(%rcx),%eax
imul   $0x6b6f,%eax,%ecx
sar    $0xf,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x58(%rax)
mov    -0x20(%rbp),%rax
mov    0x28(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x54(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x28(%rax)
mov    -0x20(%rbp),%rax
mov    0x28(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x54(%rcx),%eax
imul   $0x7c7d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x54(%rax)
mov    -0x20(%rbp),%rax
mov    0x2c(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x50(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x2c(%rax)
mov    -0x20(%rbp),%rax
mov    0x2c(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x50(%rcx),%eax
imul   $0x95b,%eax,%ecx
sar    $0xb,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x50(%rax)
mov    -0x20(%rbp),%rax
mov    0x30(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x4c(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x30(%rax)
mov    -0x20(%rbp),%rax
mov    0x30(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x4c(%rcx),%eax
imul   $0xbdf9,%eax,%ecx
sar    $0xf,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x4c(%rax)
mov    -0x20(%rbp),%rax
mov    0x34(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x48(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x34(%rax)
mov    -0x20(%rbp),%rax
mov    0x34(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x48(%rcx),%eax
cltq
imul   $0x10765,%rax,%rax
sar    $0xf,%rax
mov    %eax,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x48(%rax)
mov    -0x20(%rbp),%rax
mov    0x38(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x44(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x38(%rax)
mov    -0x20(%rbp),%rax
mov    0x38(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x44(%rcx),%eax
cltq
imul   $0x1b42c,%rax,%rax
sar    $0xf,%rax
mov    %eax,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x44(%rax)
mov    -0x20(%rbp),%rax
mov    0x3c(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x40(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x3c(%rax)
mov    -0x20(%rbp),%rax
mov    0x3c(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x40(%rcx),%eax
cltq
imul   $0x51852,%rax,%rax
sar    $0xf,%rax
mov    %eax,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x40(%rax)
mov    -0x18(%rbp),%rax
mov    (%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x3c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,(%rax)
mov    -0x18(%rbp),%rax
mov    (%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x3c(%rcx),%eax
imul   $0x404f,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x3c(%rax)
mov    -0x18(%rbp),%rax
mov    0x4(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x38(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x4(%rax)
mov    -0x18(%rbp),%rax
mov    0x4(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x38(%rcx),%eax
imul   $0x42e1,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x38(%rax)
mov    -0x18(%rbp),%rax
mov    0x8(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x34(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x8(%rax)
mov    -0x18(%rbp),%rax
mov    0x8(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x34(%rcx),%eax
imul   $0x4891,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x34(%rax)
mov    -0x18(%rbp),%rax
mov    0xc(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x30(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0xc(%rax)
mov    -0x18(%rbp),%rax
mov    0xc(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x30(%rcx),%eax
imul   $0x52cb,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x30(%rax)
mov    -0x18(%rbp),%rax
mov    0x10(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x2c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x10(%rax)
mov    -0x18(%rbp),%rax
mov    0x10(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x2c(%rcx),%eax
imul   $0x3271,%eax,%ecx
sar    $0xe,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x2c(%rax)
mov    -0x18(%rbp),%rax
mov    0x14(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x28(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x14(%rax)
mov    -0x18(%rbp),%rax
mov    0x14(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x28(%rcx),%eax
imul   $0x21f1,%eax,%ecx
sar    $0xd,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x28(%rax)
mov    -0x18(%rbp),%rax
mov    0x18(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x24(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x18(%rax)
mov    -0x18(%rbp),%rax
mov    0x18(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x24(%rcx),%eax
imul   $0xdc79,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x24(%rax)
mov    -0x18(%rbp),%rax
mov    0x1c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x20(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x1c(%rax)
mov    -0x18(%rbp),%rax
mov    0x1c(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x20(%rcx),%eax
cltq
imul   $0x28cf2,%rax,%rax
sar    $0xf,%rax
mov    %eax,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x20(%rax)
mov    -0x18(%rbp),%rax
mov    0x40(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x7c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x40(%rax)
mov    -0x18(%rbp),%rax
mov    0x7c(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x40(%rcx),%eax
imul   $0x404f,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x7c(%rax)
mov    -0x18(%rbp),%rax
mov    0x44(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x78(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x44(%rax)
mov    -0x18(%rbp),%rax
mov    0x78(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x44(%rcx),%eax
imul   $0x42e1,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x78(%rax)
mov    -0x18(%rbp),%rax
mov    0x48(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x74(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x48(%rax)
mov    -0x18(%rbp),%rax
mov    0x74(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x48(%rcx),%eax
imul   $0x4891,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x74(%rax)
mov    -0x18(%rbp),%rax
mov    0x4c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x70(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x4c(%rax)
mov    -0x18(%rbp),%rax
mov    0x70(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x4c(%rcx),%eax
imul   $0x52cb,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x70(%rax)
mov    -0x18(%rbp),%rax
mov    0x50(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x6c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x50(%rax)
mov    -0x18(%rbp),%rax
mov    0x6c(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x50(%rcx),%eax
imul   $0x3271,%eax,%ecx
sar    $0xe,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x6c(%rax)
mov    -0x18(%rbp),%rax
mov    0x54(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x68(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x54(%rax)
mov    -0x18(%rbp),%rax
mov    0x68(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x54(%rcx),%eax
imul   $0x21f1,%eax,%ecx
sar    $0xd,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x68(%rax)
mov    -0x18(%rbp),%rax
mov    0x58(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x64(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x58(%rax)
mov    -0x18(%rbp),%rax
mov    0x64(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x58(%rcx),%eax
imul   $0xdc79,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x64(%rax)
mov    -0x18(%rbp),%rax
mov    0x5c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x60(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x5c(%rax)
mov    -0x18(%rbp),%rax
mov    0x60(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x5c(%rcx),%eax
cltq
imul   $0x28cf2,%rax,%rax
sar    $0xf,%rax
mov    %eax,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x60(%rax)
mov    -0x20(%rbp),%rax
mov    (%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x1c(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,(%rax)
mov    -0x20(%rbp),%rax
mov    (%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x1c(%rcx),%eax
imul   $0x105,%eax,%ecx
sar    $0x9,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x1c(%rax)
mov    -0x20(%rbp),%rax
mov    0x4(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x18(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x4(%rax)
mov    -0x20(%rbp),%rax
mov    0x4(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x18(%rcx),%eax
imul   $0x99f,%eax,%ecx
sar    $0xc,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x18(%rax)
mov    -0x20(%rbp),%rax
mov    0x8(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x14(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x8(%rax)
mov    -0x20(%rbp),%rax
mov    0x8(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x14(%rcx),%eax
imul   $0x3999,%eax,%ecx
sar    $0xe,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x14(%rax)
mov    -0x20(%rbp),%rax
mov    0xc(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x10(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0xc(%rax)
mov    -0x20(%rbp),%rax
mov    0xc(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x10(%rcx),%eax
cltq
imul   $0x1480d,%rax,%rax
sar    $0xf,%rax
mov    %eax,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x10(%rax)
mov    -0x20(%rbp),%rax
mov    0x20(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x3c(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x20(%rax)
mov    -0x20(%rbp),%rax
mov    0x3c(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x20(%rcx),%eax
imul   $0x105,%eax,%ecx
sar    $0x9,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x3c(%rax)
mov    -0x20(%rbp),%rax
mov    0x24(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x38(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x24(%rax)
mov    -0x20(%rbp),%rax
mov    0x38(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x24(%rcx),%eax
imul   $0x99f,%eax,%ecx
sar    $0xc,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x38(%rax)
mov    -0x20(%rbp),%rax
mov    0x28(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x34(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x28(%rax)
mov    -0x20(%rbp),%rax
mov    0x34(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x28(%rcx),%eax
imul   $0x3999,%eax,%ecx
sar    $0xe,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x34(%rax)
mov    -0x20(%rbp),%rax
mov    0x2c(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x30(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x2c(%rax)
mov    -0x20(%rbp),%rax
mov    0x30(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x2c(%rcx),%eax
cltq
imul   $0x1480d,%rax,%rax
sar    $0xf,%rax
mov    %eax,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x30(%rax)
mov    -0x20(%rbp),%rax
mov    0x40(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x5c(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x40(%rax)
mov    -0x20(%rbp),%rax
mov    0x40(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x5c(%rcx),%eax
imul   $0x105,%eax,%ecx
sar    $0x9,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x5c(%rax)
mov    -0x20(%rbp),%rax
mov    0x44(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x58(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x44(%rax)
mov    -0x20(%rbp),%rax
mov    0x44(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x58(%rcx),%eax
imul   $0x99f,%eax,%ecx
sar    $0xc,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x58(%rax)
mov    -0x20(%rbp),%rax
mov    0x48(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x54(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x48(%rax)
mov    -0x20(%rbp),%rax
mov    0x48(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x54(%rcx),%eax
imul   $0x3999,%eax,%ecx
sar    $0xe,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x54(%rax)
mov    -0x20(%rbp),%rax
mov    0x4c(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x50(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x4c(%rax)
mov    -0x20(%rbp),%rax
mov    0x4c(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x50(%rcx),%eax
cltq
imul   $0x1480d,%rax,%rax
sar    $0xf,%rax
mov    %eax,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x50(%rax)
mov    -0x20(%rbp),%rax
mov    0x60(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x7c(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x60(%rax)
mov    -0x20(%rbp),%rax
mov    0x7c(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x60(%rcx),%eax
imul   $0x105,%eax,%ecx
sar    $0x9,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x7c(%rax)
mov    -0x20(%rbp),%rax
mov    0x64(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x78(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x64(%rax)
mov    -0x20(%rbp),%rax
mov    0x78(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x64(%rcx),%eax
imul   $0x99f,%eax,%ecx
sar    $0xc,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x78(%rax)
mov    -0x20(%rbp),%rax
mov    0x68(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x74(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x68(%rax)
mov    -0x20(%rbp),%rax
mov    0x74(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x68(%rcx),%eax
imul   $0x3999,%eax,%ecx
sar    $0xe,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x74(%rax)
mov    -0x20(%rbp),%rax
mov    0x6c(%rax),%ecx
mov    -0x20(%rbp),%rax
add    0x70(%rax),%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x6c(%rax)
mov    -0x20(%rbp),%rax
mov    0x70(%rax),%eax
mov    -0x20(%rbp),%rcx
sub    0x6c(%rcx),%eax
cltq
imul   $0x1480d,%rax,%rax
sar    $0xf,%rax
mov    %eax,%ecx
mov    -0x18(%rbp),%rax
mov    %ecx,0x70(%rax)
mov    -0x18(%rbp),%rax
mov    (%rax),%ecx
mov    -0x18(%rbp),%rax
add    0xc(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,(%rax)
mov    -0x18(%rbp),%rax
mov    (%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0xc(%rcx),%eax
imul   $0x4545,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0xc(%rax)
mov    -0x18(%rbp),%rax
mov    0x4(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x8(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x4(%rax)
mov    -0x18(%rbp),%rax
mov    0x4(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x8(%rcx),%eax
imul   $0xa73d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x8(%rax)
mov    -0x18(%rbp),%rax
mov    0x10(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x1c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x10(%rax)
mov    -0x18(%rbp),%rax
mov    0x1c(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x10(%rcx),%eax
imul   $0x4545,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x1c(%rax)
mov    -0x18(%rbp),%rax
mov    0x14(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x18(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x14(%rax)
mov    -0x18(%rbp),%rax
mov    0x18(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x14(%rcx),%eax
imul   $0xa73d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x18(%rax)
mov    -0x18(%rbp),%rax
mov    0x20(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x2c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x20(%rax)
mov    -0x18(%rbp),%rax
mov    0x20(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x2c(%rcx),%eax
imul   $0x4545,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x2c(%rax)
mov    -0x18(%rbp),%rax
mov    0x24(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x28(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x24(%rax)
mov    -0x18(%rbp),%rax
mov    0x24(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x28(%rcx),%eax
imul   $0xa73d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x28(%rax)
mov    -0x18(%rbp),%rax
mov    0x30(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x3c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x30(%rax)
mov    -0x18(%rbp),%rax
mov    0x3c(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x30(%rcx),%eax
imul   $0x4545,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x3c(%rax)
mov    -0x18(%rbp),%rax
mov    0x34(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x38(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x34(%rax)
mov    -0x18(%rbp),%rax
mov    0x38(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x34(%rcx),%eax
imul   $0xa73d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x38(%rax)
mov    -0x18(%rbp),%rax
mov    0x40(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x4c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x40(%rax)
mov    -0x18(%rbp),%rax
mov    0x40(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x4c(%rcx),%eax
imul   $0x4545,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x4c(%rax)
mov    -0x18(%rbp),%rax
mov    0x44(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x48(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x44(%rax)
mov    -0x18(%rbp),%rax
mov    0x44(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x48(%rcx),%eax
imul   $0xa73d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x48(%rax)
mov    -0x18(%rbp),%rax
mov    0x50(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x5c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x50(%rax)
mov    -0x18(%rbp),%rax
mov    0x5c(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x50(%rcx),%eax
imul   $0x4545,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x5c(%rax)
mov    -0x18(%rbp),%rax
mov    0x54(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x58(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x54(%rax)
mov    -0x18(%rbp),%rax
mov    0x58(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x54(%rcx),%eax
imul   $0xa73d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x58(%rax)
mov    -0x18(%rbp),%rax
mov    0x60(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x6c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x60(%rax)
mov    -0x18(%rbp),%rax
mov    0x60(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x6c(%rcx),%eax
imul   $0x4545,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x6c(%rax)
mov    -0x18(%rbp),%rax
mov    0x64(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x68(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x64(%rax)
mov    -0x18(%rbp),%rax
mov    0x64(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x68(%rcx),%eax
imul   $0xa73d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x68(%rax)
mov    -0x18(%rbp),%rax
mov    0x70(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x7c(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x70(%rax)
mov    -0x18(%rbp),%rax
mov    0x7c(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x70(%rcx),%eax
imul   $0x4545,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x7c(%rax)
mov    -0x18(%rbp),%rax
mov    0x74(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x78(%rax),%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x74(%rax)
mov    -0x18(%rbp),%rax
mov    0x78(%rax),%eax
mov    -0x18(%rbp),%rcx
sub    0x74(%rcx),%eax
imul   $0xa73d,%eax,%ecx
sar    $0xf,%ecx
mov    -0x20(%rbp),%rax
mov    %ecx,0x78(%rax)
movl   $0x0,-0x24(%rbp)
cmpl   $0x20,-0x24(%rbp)
jge    1eef <dct64_1_486+0xdef>
mov    -0x20(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x0,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%edx
mov    -0x20(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
add    (%rax,%rcx,4),%edx
mov    -0x18(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x0,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x20(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x0,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x20(%rbp),%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
sub    (%rcx,%rdx,4),%eax
imul   $0x2d41,%eax,%edx
sar    $0xe,%edx
mov    -0x18(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x20(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%edx
mov    -0x20(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
add    (%rax,%rcx,4),%edx
mov    -0x18(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x20(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x20(%rbp),%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
sub    (%rcx,%rdx,4),%eax
imul   $0x2d41,%eax,%edx
sar    $0xe,%edx
mov    -0x18(%rbp),%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x24(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x24(%rbp)
jmp    1e05 <dct64_1_486+0xd05>
mov    -0x18(%rbp),%rax
mov    0xc(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x8(%rax),%ecx
mov    %ecx,0x8(%rax)
mov    -0x18(%rbp),%rax
mov    0x1c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x18(%rax),%ecx
mov    %ecx,0x18(%rax)
mov    -0x18(%rbp),%rax
mov    0x18(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x10(%rax),%ecx
mov    %ecx,0x10(%rax)
mov    -0x18(%rbp),%rax
mov    0x14(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x18(%rax),%ecx
mov    %ecx,0x18(%rax)
mov    -0x18(%rbp),%rax
mov    0x1c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x14(%rax),%ecx
mov    %ecx,0x14(%rax)
mov    -0x18(%rbp),%rax
mov    0x2c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x28(%rax),%ecx
mov    %ecx,0x28(%rax)
mov    -0x18(%rbp),%rax
mov    0x3c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x38(%rax),%ecx
mov    %ecx,0x38(%rax)
mov    -0x18(%rbp),%rax
mov    0x38(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x30(%rax),%ecx
mov    %ecx,0x30(%rax)
mov    -0x18(%rbp),%rax
mov    0x34(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x38(%rax),%ecx
mov    %ecx,0x38(%rax)
mov    -0x18(%rbp),%rax
mov    0x3c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x34(%rax),%ecx
mov    %ecx,0x34(%rax)
mov    -0x18(%rbp),%rax
mov    0x4c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x48(%rax),%ecx
mov    %ecx,0x48(%rax)
mov    -0x18(%rbp),%rax
mov    0x5c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x58(%rax),%ecx
mov    %ecx,0x58(%rax)
mov    -0x18(%rbp),%rax
mov    0x58(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x50(%rax),%ecx
mov    %ecx,0x50(%rax)
mov    -0x18(%rbp),%rax
mov    0x54(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x58(%rax),%ecx
mov    %ecx,0x58(%rax)
mov    -0x18(%rbp),%rax
mov    0x5c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x54(%rax),%ecx
mov    %ecx,0x54(%rax)
mov    -0x18(%rbp),%rax
mov    0x6c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x68(%rax),%ecx
mov    %ecx,0x68(%rax)
mov    -0x18(%rbp),%rax
mov    0x7c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x78(%rax),%ecx
mov    %ecx,0x78(%rax)
mov    -0x18(%rbp),%rax
mov    0x78(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x70(%rax),%ecx
mov    %ecx,0x70(%rax)
mov    -0x18(%rbp),%rax
mov    0x74(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x78(%rax),%ecx
mov    %ecx,0x78(%rax)
mov    -0x18(%rbp),%rax
mov    0x7c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x74(%rax),%ecx
mov    %ecx,0x74(%rax)
mov    -0x18(%rbp),%rax
mov    (%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x2000(%rax)
mov    -0x18(%rbp),%rax
mov    0x10(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x1800(%rax)
mov    -0x18(%rbp),%rax
mov    0x8(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x1000(%rax)
mov    -0x18(%rbp),%rax
mov    0x18(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x800(%rax)
mov    -0x18(%rbp),%rax
mov    0x4(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,(%rax)
mov    -0x18(%rbp),%rax
mov    0x4(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,(%rax)
mov    -0x18(%rbp),%rax
mov    0x14(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x800(%rax)
mov    -0x18(%rbp),%rax
mov    0xc(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x1000(%rax)
mov    -0x18(%rbp),%rax
mov    0x1c(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x1800(%rax)
mov    -0x18(%rbp),%rax
mov    0x30(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x20(%rax),%ecx
mov    %ecx,0x20(%rax)
mov    -0x18(%rbp),%rax
mov    0x20(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x1c00(%rax)
mov    -0x18(%rbp),%rax
mov    0x28(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x30(%rax),%ecx
mov    %ecx,0x30(%rax)
mov    -0x18(%rbp),%rax
mov    0x30(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x1400(%rax)
mov    -0x18(%rbp),%rax
mov    0x38(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x28(%rax),%ecx
mov    %ecx,0x28(%rax)
mov    -0x18(%rbp),%rax
mov    0x28(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0xc00(%rax)
mov    -0x18(%rbp),%rax
mov    0x24(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x38(%rax),%ecx
mov    %ecx,0x38(%rax)
mov    -0x18(%rbp),%rax
mov    0x38(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x400(%rax)
mov    -0x18(%rbp),%rax
mov    0x34(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x24(%rax),%ecx
mov    %ecx,0x24(%rax)
mov    -0x18(%rbp),%rax
mov    0x24(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x400(%rax)
mov    -0x18(%rbp),%rax
mov    0x2c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x34(%rax),%ecx
mov    %ecx,0x34(%rax)
mov    -0x18(%rbp),%rax
mov    0x34(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0xc00(%rax)
mov    -0x18(%rbp),%rax
mov    0x3c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x2c(%rax),%ecx
mov    %ecx,0x2c(%rax)
mov    -0x18(%rbp),%rax
mov    0x2c(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x1400(%rax)
mov    -0x18(%rbp),%rax
mov    0x3c(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x1c00(%rax)
mov    -0x18(%rbp),%rax
mov    0x70(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x60(%rax),%ecx
mov    %ecx,0x60(%rax)
mov    -0x18(%rbp),%rax
mov    0x40(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x60(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x1e00(%rax)
mov    -0x18(%rbp),%rax
mov    0x60(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x50(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x1a00(%rax)
mov    -0x18(%rbp),%rax
mov    0x68(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x70(%rax),%ecx
mov    %ecx,0x70(%rax)
mov    -0x18(%rbp),%rax
mov    0x50(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x70(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x1600(%rax)
mov    -0x18(%rbp),%rax
mov    0x70(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x48(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x1200(%rax)
mov    -0x18(%rbp),%rax
mov    0x78(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x68(%rax),%ecx
mov    %ecx,0x68(%rax)
mov    -0x18(%rbp),%rax
mov    0x48(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x68(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0xe00(%rax)
mov    -0x18(%rbp),%rax
mov    0x68(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x58(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0xa00(%rax)
mov    -0x18(%rbp),%rax
mov    0x64(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x78(%rax),%ecx
mov    %ecx,0x78(%rax)
mov    -0x18(%rbp),%rax
mov    0x58(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x78(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x600(%rax)
mov    -0x18(%rbp),%rax
mov    0x78(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x44(%rax),%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,0x200(%rax)
mov    -0x18(%rbp),%rax
mov    0x74(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x64(%rax),%ecx
mov    %ecx,0x64(%rax)
mov    -0x18(%rbp),%rax
mov    0x44(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x64(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x200(%rax)
mov    -0x18(%rbp),%rax
mov    0x64(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x54(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x600(%rax)
mov    -0x18(%rbp),%rax
mov    0x6c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x74(%rax),%ecx
mov    %ecx,0x74(%rax)
mov    -0x18(%rbp),%rax
mov    0x54(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x74(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0xa00(%rax)
mov    -0x18(%rbp),%rax
mov    0x74(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x4c(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0xe00(%rax)
mov    -0x18(%rbp),%rax
mov    0x7c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x6c(%rax),%ecx
mov    %ecx,0x6c(%rax)
mov    -0x18(%rbp),%rax
mov    0x4c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x6c(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x1200(%rax)
mov    -0x18(%rbp),%rax
mov    0x6c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x5c(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x1600(%rax)
mov    -0x18(%rbp),%rax
mov    0x5c(%rax),%ecx
mov    -0x18(%rbp),%rax
add    0x7c(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x1a00(%rax)
mov    -0x18(%rbp),%rax
mov    0x7c(%rax),%ecx
mov    -0x10(%rbp),%rax
mov    %ecx,0x1e00(%rax)
pop    %rbp
ret

x86 assembly (clang, -O2):
<dct64_1_486>:
mov    0x7c(%rcx),%r8d
add    (%rcx),%r8d
mov    %r8d,(%rdx)
mov    (%rcx),%eax
sub    0x7c(%rcx),%eax
imul   $0x4013,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x7c(%rdx)
mov    0x78(%rcx),%eax
add    0x4(%rcx),%eax
mov    %eax,0x4(%rdx)
mov    0x4(%rcx),%eax
sub    0x78(%rcx),%eax
imul   $0x40b3,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x78(%rdx)
mov    0x74(%rcx),%eax
add    0x8(%rcx),%eax
mov    %eax,0x8(%rdx)
mov    0x8(%rcx),%eax
sub    0x74(%rcx),%eax
imul   $0x20fd,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x74(%rdx)
mov    0x70(%rcx),%eax
add    0xc(%rcx),%eax
mov    %eax,0xc(%rdx)
mov    0xc(%rcx),%eax
sub    0x70(%rcx),%eax
imul   $0x43f9,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x70(%rdx)
mov    0x6c(%rcx),%eax
add    0x10(%rcx),%eax
mov    %eax,0x10(%rdx)
mov    0x10(%rcx),%eax
sub    0x6c(%rcx),%eax
imul   $0x11b3,%eax,%eax
sar    $0xd,%eax
mov    %eax,0x6c(%rdx)
mov    0x68(%rcx),%eax
add    0x14(%rcx),%eax
mov    %eax,0x14(%rdx)
mov    0x14(%rcx),%eax
sub    0x68(%rcx),%eax
imul   $0x4a9d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x68(%rdx)
mov    0x64(%rcx),%eax
add    0x18(%rcx),%eax
mov    %eax,0x18(%rdx)
mov    0x18(%rcx),%eax
sub    0x64(%rcx),%eax
imul   $0x27d7,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x64(%rdx)
mov    0x60(%rcx),%eax
add    0x1c(%rcx),%eax
mov    %eax,0x1c(%rdx)
mov    0x1c(%rcx),%eax
sub    0x60(%rcx),%eax
imul   $0x2b3,%eax,%eax
sar    $0xa,%eax
mov    %eax,0x60(%rdx)
mov    0x5c(%rcx),%eax
add    0x20(%rcx),%eax
mov    %eax,0x20(%rdx)
mov    0x20(%rcx),%eax
sub    0x5c(%rcx),%eax
imul   $0x17d3,%eax,%eax
sar    $0xd,%eax
mov    %eax,0x5c(%rdx)
mov    0x58(%rcx),%eax
add    0x24(%rcx),%eax
mov    %eax,0x24(%rdx)
mov    0x24(%rcx),%eax
sub    0x58(%rcx),%eax
imul   $0x6b6f,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x58(%rdx)
mov    0x54(%rcx),%eax
add    0x28(%rcx),%eax
mov    %eax,0x28(%rdx)
mov    0x28(%rcx),%eax
sub    0x54(%rcx),%eax
imul   $0x7c7d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x54(%rdx)
mov    0x50(%rcx),%eax
add    0x2c(%rcx),%eax
mov    %eax,0x2c(%rdx)
mov    0x2c(%rcx),%eax
sub    0x50(%rcx),%eax
imul   $0x95b,%eax,%eax
sar    $0xb,%eax
mov    %eax,0x50(%rdx)
mov    0x4c(%rcx),%eax
add    0x30(%rcx),%eax
mov    %eax,0x30(%rdx)
mov    0x30(%rcx),%eax
sub    0x4c(%rcx),%eax
imul   $0xbdf9,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x4c(%rdx)
mov    0x48(%rcx),%eax
add    0x34(%rcx),%eax
mov    %eax,0x34(%rdx)
movslq 0x34(%rcx),%r9
movslq 0x48(%rcx),%rax
sub    %rax,%r9
imul   $0x10765,%r9,%rax
shr    $0xf,%rax
mov    %eax,0x48(%rdx)
mov    0x44(%rcx),%eax
add    0x38(%rcx),%eax
mov    %eax,0x38(%rdx)
movslq 0x38(%rcx),%r9
movslq 0x44(%rcx),%rax
sub    %rax,%r9
imul   $0x1b42c,%r9,%rax
shr    $0xf,%rax
mov    %eax,0x44(%rdx)
mov    0x40(%rcx),%r9d
add    0x3c(%rcx),%r9d
mov    %r9d,0x3c(%rdx)
movslq 0x3c(%rcx),%r10
movslq 0x40(%rcx),%rax
sub    %rax,%r10
imul   $0x51852,%r10,%rax
shr    $0xf,%rax
mov    %eax,0x40(%rdx)
add    %r8d,%r9d
mov    %r9d,(%rcx)
mov    (%rdx),%eax
sub    0x3c(%rdx),%eax
imul   $0x404f,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x3c(%rcx)
mov    0x38(%rdx),%eax
add    0x4(%rdx),%eax
mov    %eax,0x4(%rcx)
mov    0x4(%rdx),%eax
sub    0x38(%rdx),%eax
imul   $0x42e1,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x38(%rcx)
mov    0x34(%rdx),%eax
add    0x8(%rdx),%eax
mov    %eax,0x8(%rcx)
mov    0x8(%rdx),%eax
sub    0x34(%rdx),%eax
imul   $0x4891,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x34(%rcx)
mov    0x30(%rdx),%eax
add    0xc(%rdx),%eax
mov    %eax,0xc(%rcx)
mov    0xc(%rdx),%eax
sub    0x30(%rdx),%eax
imul   $0x52cb,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x30(%rcx)
mov    0x2c(%rdx),%eax
add    0x10(%rdx),%eax
mov    %eax,0x10(%rcx)
mov    0x10(%rdx),%eax
sub    0x2c(%rdx),%eax
imul   $0x3271,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x2c(%rcx)
mov    0x28(%rdx),%eax
add    0x14(%rdx),%eax
mov    %eax,0x14(%rcx)
mov    0x14(%rdx),%eax
sub    0x28(%rdx),%eax
imul   $0x21f1,%eax,%eax
sar    $0xd,%eax
mov    %eax,0x28(%rcx)
mov    0x24(%rdx),%eax
add    0x18(%rdx),%eax
mov    %eax,0x18(%rcx)
mov    0x18(%rdx),%eax
sub    0x24(%rdx),%eax
imul   $0xdc79,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x24(%rcx)
mov    0x20(%rdx),%r8d
add    0x1c(%rdx),%r8d
mov    %r8d,0x1c(%rcx)
movslq 0x1c(%rdx),%r10
movslq 0x20(%rdx),%rax
sub    %rax,%r10
imul   $0x28cf2,%r10,%rax
shr    $0xf,%rax
mov    %eax,0x20(%rcx)
mov    0x7c(%rdx),%eax
add    0x40(%rdx),%eax
mov    %eax,0x40(%rcx)
mov    0x7c(%rdx),%eax
sub    0x40(%rdx),%eax
imul   $0x404f,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x7c(%rcx)
mov    0x78(%rdx),%eax
add    0x44(%rdx),%eax
mov    %eax,0x44(%rcx)
mov    0x78(%rdx),%eax
sub    0x44(%rdx),%eax
imul   $0x42e1,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x78(%rcx)
mov    0x74(%rdx),%eax
add    0x48(%rdx),%eax
mov    %eax,0x48(%rcx)
mov    0x74(%rdx),%eax
sub    0x48(%rdx),%eax
imul   $0x4891,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x74(%rcx)
mov    0x70(%rdx),%eax
add    0x4c(%rdx),%eax
mov    %eax,0x4c(%rcx)
mov    0x70(%rdx),%eax
sub    0x4c(%rdx),%eax
imul   $0x52cb,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x70(%rcx)
mov    0x6c(%rdx),%eax
add    0x50(%rdx),%eax
mov    %eax,0x50(%rcx)
mov    0x6c(%rdx),%eax
sub    0x50(%rdx),%eax
imul   $0x3271,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x6c(%rcx)
mov    0x68(%rdx),%eax
add    0x54(%rdx),%eax
mov    %eax,0x54(%rcx)
mov    0x68(%rdx),%eax
sub    0x54(%rdx),%eax
imul   $0x21f1,%eax,%eax
sar    $0xd,%eax
mov    %eax,0x68(%rcx)
mov    0x64(%rdx),%eax
add    0x58(%rdx),%eax
mov    %eax,0x58(%rcx)
mov    0x64(%rdx),%eax
sub    0x58(%rdx),%eax
imul   $0xdc79,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x64(%rcx)
mov    0x60(%rdx),%eax
add    0x5c(%rdx),%eax
mov    %eax,0x5c(%rcx)
movslq 0x60(%rdx),%r10
movslq 0x5c(%rdx),%rax
sub    %rax,%r10
imul   $0x28cf2,%r10,%rax
shr    $0xf,%rax
mov    %eax,0x60(%rcx)
add    %r9d,%r8d
mov    %r8d,(%rdx)
mov    (%rcx),%eax
sub    0x1c(%rcx),%eax
imul   $0x105,%eax,%eax
sar    $0x9,%eax
mov    %eax,0x1c(%rdx)
mov    0x18(%rcx),%eax
add    0x4(%rcx),%eax
mov    %eax,0x4(%rdx)
mov    0x4(%rcx),%eax
sub    0x18(%rcx),%eax
imul   $0x99f,%eax,%eax
sar    $0xc,%eax
mov    %eax,0x18(%rdx)
mov    0x14(%rcx),%eax
add    0x8(%rcx),%eax
mov    %eax,0x8(%rdx)
mov    0x8(%rcx),%eax
sub    0x14(%rcx),%eax
imul   $0x3999,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x14(%rdx)
mov    0x10(%rcx),%r9d
add    0xc(%rcx),%r9d
mov    %r9d,0xc(%rdx)
movslq 0xc(%rcx),%r10
movslq 0x10(%rcx),%rax
sub    %rax,%r10
imul   $0x1480d,%r10,%rax
shr    $0xf,%rax
mov    %eax,0x10(%rdx)
mov    0x3c(%rcx),%eax
add    0x20(%rcx),%eax
mov    %eax,0x20(%rdx)
mov    0x3c(%rcx),%eax
sub    0x20(%rcx),%eax
imul   $0x105,%eax,%eax
sar    $0x9,%eax
mov    %eax,0x3c(%rdx)
mov    0x38(%rcx),%eax
add    0x24(%rcx),%eax
mov    %eax,0x24(%rdx)
mov    0x38(%rcx),%eax
sub    0x24(%rcx),%eax
imul   $0x99f,%eax,%eax
sar    $0xc,%eax
mov    %eax,0x38(%rdx)
mov    0x34(%rcx),%eax
add    0x28(%rcx),%eax
mov    %eax,0x28(%rdx)
mov    0x34(%rcx),%eax
sub    0x28(%rcx),%eax
imul   $0x3999,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x34(%rdx)
mov    0x30(%rcx),%eax
add    0x2c(%rcx),%eax
mov    %eax,0x2c(%rdx)
movslq 0x30(%rcx),%r10
movslq 0x2c(%rcx),%rax
sub    %rax,%r10
imul   $0x1480d,%r10,%rax
shr    $0xf,%rax
mov    %eax,0x30(%rdx)
mov    0x5c(%rcx),%eax
add    0x40(%rcx),%eax
mov    %eax,0x40(%rdx)
mov    0x40(%rcx),%eax
sub    0x5c(%rcx),%eax
imul   $0x105,%eax,%eax
sar    $0x9,%eax
mov    %eax,0x5c(%rdx)
mov    0x58(%rcx),%eax
add    0x44(%rcx),%eax
mov    %eax,0x44(%rdx)
mov    0x44(%rcx),%eax
sub    0x58(%rcx),%eax
imul   $0x99f,%eax,%eax
sar    $0xc,%eax
mov    %eax,0x58(%rdx)
mov    0x54(%rcx),%eax
add    0x48(%rcx),%eax
mov    %eax,0x48(%rdx)
mov    0x48(%rcx),%eax
sub    0x54(%rcx),%eax
imul   $0x3999,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x54(%rdx)
mov    0x50(%rcx),%eax
add    0x4c(%rcx),%eax
mov    %eax,0x4c(%rdx)
movslq 0x4c(%rcx),%r10
movslq 0x50(%rcx),%rax
sub    %rax,%r10
imul   $0x1480d,%r10,%rax
shr    $0xf,%rax
mov    %eax,0x50(%rdx)
mov    0x7c(%rcx),%eax
add    0x60(%rcx),%eax
mov    %eax,0x60(%rdx)
mov    0x7c(%rcx),%eax
sub    0x60(%rcx),%eax
imul   $0x105,%eax,%eax
sar    $0x9,%eax
mov    %eax,0x7c(%rdx)
mov    0x78(%rcx),%eax
add    0x64(%rcx),%eax
mov    %eax,0x64(%rdx)
mov    0x78(%rcx),%eax
sub    0x64(%rcx),%eax
imul   $0x99f,%eax,%eax
sar    $0xc,%eax
mov    %eax,0x78(%rdx)
mov    0x74(%rcx),%eax
add    0x68(%rcx),%eax
mov    %eax,0x68(%rdx)
mov    0x74(%rcx),%eax
sub    0x68(%rcx),%eax
imul   $0x3999,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x74(%rdx)
mov    0x70(%rcx),%eax
add    0x6c(%rcx),%eax
mov    %eax,0x6c(%rdx)
movslq 0x70(%rcx),%r10
movslq 0x6c(%rcx),%rax
sub    %rax,%r10
imul   $0x1480d,%r10,%rax
shr    $0xf,%rax
mov    %eax,0x70(%rdx)
add    %r8d,%r9d
mov    %r9d,(%rcx)
mov    (%rdx),%eax
sub    0xc(%rdx),%eax
imul   $0x4545,%eax,%eax
sar    $0xf,%eax
mov    %eax,0xc(%rcx)
mov    0x8(%rdx),%eax
add    0x4(%rdx),%eax
mov    %eax,0x4(%rcx)
mov    0x4(%rdx),%eax
sub    0x8(%rdx),%eax
imul   $0xa73d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x8(%rcx)
mov    0x1c(%rdx),%eax
add    0x10(%rdx),%eax
mov    %eax,0x10(%rcx)
mov    0x1c(%rdx),%eax
sub    0x10(%rdx),%eax
imul   $0x4545,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x1c(%rcx)
mov    0x18(%rdx),%eax
add    0x14(%rdx),%eax
mov    %eax,0x14(%rcx)
mov    0x18(%rdx),%eax
sub    0x14(%rdx),%eax
imul   $0xa73d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x18(%rcx)
mov    0x2c(%rdx),%eax
add    0x20(%rdx),%eax
mov    %eax,0x20(%rcx)
mov    0x20(%rdx),%eax
sub    0x2c(%rdx),%eax
imul   $0x4545,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x2c(%rcx)
mov    0x28(%rdx),%eax
add    0x24(%rdx),%eax
mov    %eax,0x24(%rcx)
mov    0x24(%rdx),%eax
sub    0x28(%rdx),%eax
imul   $0xa73d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x28(%rcx)
mov    0x3c(%rdx),%eax
add    0x30(%rdx),%eax
mov    %eax,0x30(%rcx)
mov    0x3c(%rdx),%eax
sub    0x30(%rdx),%eax
imul   $0x4545,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x3c(%rcx)
mov    0x38(%rdx),%eax
add    0x34(%rdx),%eax
mov    %eax,0x34(%rcx)
mov    0x38(%rdx),%eax
sub    0x34(%rdx),%eax
imul   $0xa73d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x38(%rcx)
mov    0x4c(%rdx),%eax
add    0x40(%rdx),%eax
mov    %eax,0x40(%rcx)
mov    0x40(%rdx),%eax
sub    0x4c(%rdx),%eax
imul   $0x4545,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x4c(%rcx)
mov    0x48(%rdx),%eax
add    0x44(%rdx),%eax
mov    %eax,0x44(%rcx)
mov    0x44(%rdx),%eax
sub    0x48(%rdx),%eax
imul   $0xa73d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x48(%rcx)
mov    0x5c(%rdx),%eax
add    0x50(%rdx),%eax
mov    %eax,0x50(%rcx)
mov    0x5c(%rdx),%eax
sub    0x50(%rdx),%eax
imul   $0x4545,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x5c(%rcx)
mov    0x58(%rdx),%eax
add    0x54(%rdx),%eax
mov    %eax,0x54(%rcx)
mov    0x58(%rdx),%eax
sub    0x54(%rdx),%eax
imul   $0xa73d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x58(%rcx)
mov    0x6c(%rdx),%eax
add    0x60(%rdx),%eax
mov    %eax,0x60(%rcx)
mov    0x60(%rdx),%eax
sub    0x6c(%rdx),%eax
imul   $0x4545,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x6c(%rcx)
mov    0x68(%rdx),%eax
add    0x64(%rdx),%eax
mov    %eax,0x64(%rcx)
mov    0x64(%rdx),%eax
sub    0x68(%rdx),%eax
imul   $0xa73d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x68(%rcx)
mov    0x7c(%rdx),%eax
add    0x70(%rdx),%eax
mov    %eax,0x70(%rcx)
mov    0x7c(%rdx),%eax
sub    0x70(%rdx),%eax
imul   $0x4545,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x7c(%rcx)
mov    0x78(%rdx),%eax
add    0x74(%rdx),%eax
mov    %eax,0x74(%rcx)
mov    0x78(%rdx),%eax
sub    0x74(%rdx),%eax
imul   $0xa73d,%eax,%eax
sar    $0xf,%eax
mov    %eax,0x78(%rcx)
mov    $0xfffffffffffffffc,%r8
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
mov    0x14(%rcx,%r8,4),%eax
add    0x10(%rcx,%r8,4),%eax
mov    %eax,0x10(%rdx,%r8,4)
mov    0x10(%rcx,%r8,4),%eax
sub    0x14(%rcx,%r8,4),%eax
imul   $0x2d41,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x14(%rdx,%r8,4)
mov    0x1c(%rcx,%r8,4),%eax
add    0x18(%rcx,%r8,4),%eax
mov    %eax,0x18(%rdx,%r8,4)
mov    0x1c(%rcx,%r8,4),%eax
sub    0x18(%rcx,%r8,4),%eax
imul   $0x2d41,%eax,%eax
sar    $0xe,%eax
mov    %eax,0x1c(%rdx,%r8,4)
add    $0x4,%r8
cmp    $0x1c,%r8
jb     1810 <dct64_1_486+0x710>
mov    0xc(%rdx),%eax
mov    0x14(%rdx),%ecx
add    %eax,0x8(%rdx)
mov    0x1c(%rdx),%r8d
mov    0x18(%rdx),%eax
add    %r8d,%eax
add    %eax,0x10(%rdx)
add    %ecx,%eax
mov    %eax,0x18(%rdx)
add    %r8d,%ecx
mov    %ecx,0x14(%rdx)
mov    0x2c(%rdx),%eax
add    %eax,0x28(%rdx)
mov    0x3c(%rdx),%r8d
mov    0x38(%rdx),%ecx
add    %r8d,%ecx
add    %ecx,0x30(%rdx)
mov    0x34(%rdx),%eax
add    %eax,%ecx
mov    %ecx,0x38(%rdx)
add    %r8d,%eax
mov    %eax,0x34(%rdx)
mov    0x4c(%rdx),%eax
add    %eax,0x48(%rdx)
mov    0x5c(%rdx),%r8d
mov    0x58(%rdx),%ecx
add    %r8d,%ecx
add    %ecx,0x50(%rdx)
mov    0x54(%rdx),%eax
add    %eax,%ecx
mov    %ecx,0x58(%rdx)
add    %r8d,%eax
mov    %eax,0x54(%rdx)
mov    0x6c(%rdx),%eax
add    %eax,0x68(%rdx)
mov    0x7c(%rdx),%r8d
mov    0x78(%rdx),%ecx
add    %r8d,%ecx
add    %ecx,0x70(%rdx)
mov    0x74(%rdx),%eax
add    %eax,%ecx
mov    %ecx,0x78(%rdx)
add    %r8d,%eax
mov    %eax,0x74(%rdx)
mov    (%rdx),%eax
mov    %eax,0x2000(%rdi)
mov    0x10(%rdx),%eax
mov    %eax,0x1800(%rdi)
mov    0x8(%rdx),%eax
mov    %eax,0x1000(%rdi)
mov    0x18(%rdx),%eax
mov    %eax,0x800(%rdi)
mov    0x4(%rdx),%eax
mov    %eax,(%rdi)
mov    0x4(%rdx),%eax
mov    %eax,(%rsi)
mov    0x14(%rdx),%eax
mov    %eax,0x800(%rsi)
mov    0xc(%rdx),%eax
mov    %eax,0x1000(%rsi)
mov    0x1c(%rdx),%eax
mov    %eax,0x1800(%rsi)
mov    0x20(%rdx),%eax
add    0x30(%rdx),%eax
mov    %eax,0x20(%rdx)
mov    %eax,0x1c00(%rdi)
mov    0x30(%rdx),%eax
add    0x28(%rdx),%eax
mov    %eax,0x30(%rdx)
mov    %eax,0x1400(%rdi)
mov    0x28(%rdx),%eax
add    0x38(%rdx),%eax
mov    %eax,0x28(%rdx)
mov    %eax,0xc00(%rdi)
mov    0x38(%rdx),%eax
add    0x24(%rdx),%eax
mov    %eax,0x38(%rdx)
mov    %eax,0x400(%rdi)
mov    0x24(%rdx),%eax
add    0x34(%rdx),%eax
mov    %eax,0x24(%rdx)
mov    %eax,0x400(%rsi)
mov    0x34(%rdx),%eax
add    0x2c(%rdx),%eax
mov    %eax,0x34(%rdx)
mov    %eax,0xc00(%rsi)
mov    0x2c(%rdx),%eax
add    0x3c(%rdx),%eax
mov    %eax,0x2c(%rdx)
mov    %eax,0x1400(%rsi)
mov    0x3c(%rdx),%eax
mov    %eax,0x1c00(%rsi)
mov    0x60(%rdx),%eax
add    0x70(%rdx),%eax
mov    %eax,0x60(%rdx)
add    0x40(%rdx),%eax
mov    %eax,0x1e00(%rdi)
mov    0x50(%rdx),%eax
add    0x60(%rdx),%eax
mov    %eax,0x1a00(%rdi)
mov    0x70(%rdx),%eax
add    0x68(%rdx),%eax
mov    %eax,0x70(%rdx)
add    0x50(%rdx),%eax
mov    %eax,0x1600(%rdi)
mov    0x48(%rdx),%eax
add    0x70(%rdx),%eax
mov    %eax,0x1200(%rdi)
mov    0x68(%rdx),%eax
add    0x78(%rdx),%eax
mov    %eax,0x68(%rdx)
add    0x48(%rdx),%eax
mov    %eax,0xe00(%rdi)
mov    0x58(%rdx),%eax
add    0x68(%rdx),%eax
mov    %eax,0xa00(%rdi)
mov    0x78(%rdx),%eax
add    0x64(%rdx),%eax
mov    %eax,0x78(%rdx)
add    0x58(%rdx),%eax
mov    %eax,0x600(%rdi)
mov    0x44(%rdx),%eax
add    0x78(%rdx),%eax
mov    %eax,0x200(%rdi)
mov    0x64(%rdx),%eax
add    0x74(%rdx),%eax
mov    %eax,0x64(%rdx)
add    0x44(%rdx),%eax
mov    %eax,0x200(%rsi)
mov    0x54(%rdx),%eax
add    0x64(%rdx),%eax
mov    %eax,0x600(%rsi)
mov    0x74(%rdx),%eax
add    0x6c(%rdx),%eax
mov    %eax,0x74(%rdx)
add    0x54(%rdx),%eax
mov    %eax,0xa00(%rsi)
mov    0x4c(%rdx),%eax
add    0x74(%rdx),%eax
mov    %eax,0xe00(%rsi)
mov    0x6c(%rdx),%eax
add    0x7c(%rdx),%eax
mov    %eax,0x6c(%rdx)
add    0x4c(%rdx),%eax
mov    %eax,0x1200(%rsi)
mov    0x5c(%rdx),%eax
add    0x6c(%rdx),%eax
mov    %eax,0x1600(%rsi)
mov    0x7c(%rdx),%eax
add    0x5c(%rdx),%eax
mov    %eax,0x1a00(%rsi)
mov    0x7c(%rdx),%eax
mov    %eax,0x1e00(%rsi)
ret

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

LLVM IR (-O2):
define void @dct64_1_486(i32* nocapture writeonly %0, i32* nocapture writeonly %1, i32* %2, i32* %3) {
%5 = load i32, i32* %3
%6 = getelementptr inbounds i32, i32* %3, i64 31
%7 = load i32, i32* %6
%8 = add nsw i32 %7, %5
store i32 %8, i32* %2
%9 = load i32, i32* %3
%10 = load i32, i32* %6
%11 = sub nsw i32 %9, %10
%12 = mul nsw i32 %11, 16403
%13 = ashr i32 %12, 15
%14 = getelementptr inbounds i32, i32* %2, i64 31
store i32 %13, i32* %14
%15 = getelementptr inbounds i32, i32* %3, i64 1
%16 = load i32, i32* %15
%17 = getelementptr inbounds i32, i32* %3, i64 30
%18 = load i32, i32* %17
%19 = add nsw i32 %18, %16
%20 = getelementptr inbounds i32, i32* %2, i64 1
store i32 %19, i32* %20
%21 = load i32, i32* %15
%22 = load i32, i32* %17
%23 = sub nsw i32 %21, %22
%24 = mul nsw i32 %23, 16563
%25 = ashr i32 %24, 15
%26 = getelementptr inbounds i32, i32* %2, i64 30
store i32 %25, i32* %26
%27 = getelementptr inbounds i32, i32* %3, i64 2
%28 = load i32, i32* %27
%29 = getelementptr inbounds i32, i32* %3, i64 29
%30 = load i32, i32* %29
%31 = add nsw i32 %30, %28
%32 = getelementptr inbounds i32, i32* %2, i64 2
store i32 %31, i32* %32
%33 = load i32, i32* %27
%34 = load i32, i32* %29
%35 = sub nsw i32 %33, %34
%36 = mul nsw i32 %35, 8445
%37 = ashr i32 %36, 14
%38 = getelementptr inbounds i32, i32* %2, i64 29
store i32 %37, i32* %38
%39 = getelementptr inbounds i32, i32* %3, i64 3
%40 = load i32, i32* %39
%41 = getelementptr inbounds i32, i32* %3, i64 28
%42 = load i32, i32* %41
%43 = add nsw i32 %42, %40
%44 = getelementptr inbounds i32, i32* %2, i64 3
store i32 %43, i32* %44
%45 = load i32, i32* %39
%46 = load i32, i32* %41
%47 = sub nsw i32 %45, %46
%48 = mul nsw i32 %47, 17401
%49 = ashr i32 %48, 15
%50 = getelementptr inbounds i32, i32* %2, i64 28
store i32 %49, i32* %50
%51 = getelementptr inbounds i32, i32* %3, i64 4
%52 = load i32, i32* %51
%53 = getelementptr inbounds i32, i32* %3, i64 27
%54 = load i32, i32* %53
%55 = add nsw i32 %54, %52
%56 = getelementptr inbounds i32, i32* %2, i64 4
store i32 %55, i32* %56
%57 = load i32, i32* %51
%58 = load i32, i32* %53
%59 = sub nsw i32 %57, %58
%60 = mul nsw i32 %59, 4531
%61 = ashr i32 %60, 13
%62 = getelementptr inbounds i32, i32* %2, i64 27
store i32 %61, i32* %62
%63 = getelementptr inbounds i32, i32* %3, i64 5
%64 = load i32, i32* %63
%65 = getelementptr inbounds i32, i32* %3, i64 26
%66 = load i32, i32* %65
%67 = add nsw i32 %66, %64
%68 = getelementptr inbounds i32, i32* %2, i64 5
store i32 %67, i32* %68
%69 = load i32, i32* %63
%70 = load i32, i32* %65
%71 = sub nsw i32 %69, %70
%72 = mul nsw i32 %71, 19101
%73 = ashr i32 %72, 15
%74 = getelementptr inbounds i32, i32* %2, i64 26
store i32 %73, i32* %74
%75 = getelementptr inbounds i32, i32* %3, i64 6
%76 = load i32, i32* %75
%77 = getelementptr inbounds i32, i32* %3, i64 25
%78 = load i32, i32* %77
%79 = add nsw i32 %78, %76
%80 = getelementptr inbounds i32, i32* %2, i64 6
store i32 %79, i32* %80
%81 = load i32, i32* %75
%82 = load i32, i32* %77
%83 = sub nsw i32 %81, %82
%84 = mul nsw i32 %83, 10199
%85 = ashr i32 %84, 14
%86 = getelementptr inbounds i32, i32* %2, i64 25
store i32 %85, i32* %86
%87 = getelementptr inbounds i32, i32* %3, i64 7
%88 = load i32, i32* %87
%89 = getelementptr inbounds i32, i32* %3, i64 24
%90 = load i32, i32* %89
%91 = add nsw i32 %90, %88
%92 = getelementptr inbounds i32, i32* %2, i64 7
store i32 %91, i32* %92
%93 = load i32, i32* %87
%94 = load i32, i32* %89
%95 = sub nsw i32 %93, %94
%96 = mul nsw i32 %95, 691
%97 = ashr i32 %96, 10
%98 = getelementptr inbounds i32, i32* %2, i64 24
store i32 %97, i32* %98
%99 = getelementptr inbounds i32, i32* %3, i64 8
%100 = load i32, i32* %99
%101 = getelementptr inbounds i32, i32* %3, i64 23
%102 = load i32, i32* %101
%103 = add nsw i32 %102, %100
%104 = getelementptr inbounds i32, i32* %2, i64 8
store i32 %103, i32* %104
%105 = load i32, i32* %99
%106 = load i32, i32* %101
%107 = sub nsw i32 %105, %106
%108 = mul nsw i32 %107, 6099
%109 = ashr i32 %108, 13
%110 = getelementptr inbounds i32, i32* %2, i64 23
store i32 %109, i32* %110
%111 = getelementptr inbounds i32, i32* %3, i64 9
%112 = load i32, i32* %111
%113 = getelementptr inbounds i32, i32* %3, i64 22
%114 = load i32, i32* %113
%115 = add nsw i32 %114, %112
%116 = getelementptr inbounds i32, i32* %2, i64 9
store i32 %115, i32* %116
%117 = load i32, i32* %111
%118 = load i32, i32* %113
%119 = sub nsw i32 %117, %118
%120 = mul nsw i32 %119, 27503
%121 = ashr i32 %120, 15
%122 = getelementptr inbounds i32, i32* %2, i64 22
store i32 %121, i32* %122
%123 = getelementptr inbounds i32, i32* %3, i64 10
%124 = load i32, i32* %123
%125 = getelementptr inbounds i32, i32* %3, i64 21
%126 = load i32, i32* %125
%127 = add nsw i32 %126, %124
%128 = getelementptr inbounds i32, i32* %2, i64 10
store i32 %127, i32* %128
%129 = load i32, i32* %123
%130 = load i32, i32* %125
%131 = sub nsw i32 %129, %130
%132 = mul nsw i32 %131, 31869
%133 = ashr i32 %132, 15
%134 = getelementptr inbounds i32, i32* %2, i64 21
store i32 %133, i32* %134
%135 = getelementptr inbounds i32, i32* %3, i64 11
%136 = load i32, i32* %135
%137 = getelementptr inbounds i32, i32* %3, i64 20
%138 = load i32, i32* %137
%139 = add nsw i32 %138, %136
%140 = getelementptr inbounds i32, i32* %2, i64 11
store i32 %139, i32* %140
%141 = load i32, i32* %135
%142 = load i32, i32* %137
%143 = sub nsw i32 %141, %142
%144 = mul nsw i32 %143, 2395
%145 = ashr i32 %144, 11
%146 = getelementptr inbounds i32, i32* %2, i64 20
store i32 %145, i32* %146
%147 = getelementptr inbounds i32, i32* %3, i64 12
%148 = load i32, i32* %147
%149 = getelementptr inbounds i32, i32* %3, i64 19
%150 = load i32, i32* %149
%151 = add nsw i32 %150, %148
%152 = getelementptr inbounds i32, i32* %2, i64 12
store i32 %151, i32* %152
%153 = load i32, i32* %147
%154 = load i32, i32* %149
%155 = sub nsw i32 %153, %154
%156 = mul nsw i32 %155, 48633
%157 = ashr i32 %156, 15
%158 = getelementptr inbounds i32, i32* %2, i64 19
store i32 %157, i32* %158
%159 = getelementptr inbounds i32, i32* %3, i64 13
%160 = load i32, i32* %159
%161 = getelementptr inbounds i32, i32* %3, i64 18
%162 = load i32, i32* %161
%163 = add nsw i32 %162, %160
%164 = getelementptr inbounds i32, i32* %2, i64 13
store i32 %163, i32* %164
%165 = load i32, i32* %159
%166 = load i32, i32* %161
%167 = sub nsw i32 %165, %166
%168 = sext i32 %167 to i64
%169 = mul nsw i64 %168, 67429
%170 = lshr i64 %169, 15
%171 = trunc i64 %170 to i32
%172 = getelementptr inbounds i32, i32* %2, i64 18
store i32 %171, i32* %172
%173 = getelementptr inbounds i32, i32* %3, i64 14
%174 = load i32, i32* %173
%175 = getelementptr inbounds i32, i32* %3, i64 17
%176 = load i32, i32* %175
%177 = add nsw i32 %176, %174
%178 = getelementptr inbounds i32, i32* %2, i64 14
store i32 %177, i32* %178
%179 = load i32, i32* %173
%180 = load i32, i32* %175
%181 = sub nsw i32 %179, %180
%182 = sext i32 %181 to i64
%183 = mul nsw i64 %182, 111660
%184 = lshr i64 %183, 15
%185 = trunc i64 %184 to i32
%186 = getelementptr inbounds i32, i32* %2, i64 17
store i32 %185, i32* %186
%187 = getelementptr inbounds i32, i32* %3, i64 15
%188 = load i32, i32* %187
%189 = getelementptr inbounds i32, i32* %3, i64 16
%190 = load i32, i32* %189
%191 = add nsw i32 %190, %188
%192 = getelementptr inbounds i32, i32* %2, i64 15
store i32 %191, i32* %192
%193 = load i32, i32* %187
%194 = load i32, i32* %189
%195 = sub nsw i32 %193, %194
%196 = sext i32 %195 to i64
%197 = mul nsw i64 %196, 333906
%198 = lshr i64 %197, 15
%199 = trunc i64 %198 to i32
%200 = getelementptr inbounds i32, i32* %2, i64 16
store i32 %199, i32* %200
%201 = add nsw i32 %191, %8
store i32 %201, i32* %3
%202 = load i32, i32* %2
%203 = load i32, i32* %192
%204 = sub nsw i32 %202, %203
%205 = mul nsw i32 %204, 16463
%206 = ashr i32 %205, 15
store i32 %206, i32* %187
%207 = load i32, i32* %20
%208 = load i32, i32* %178
%209 = add nsw i32 %208, %207
store i32 %209, i32* %15
%210 = load i32, i32* %20
%211 = load i32, i32* %178
%212 = sub nsw i32 %210, %211
%213 = mul nsw i32 %212, 17121
%214 = ashr i32 %213, 15
store i32 %214, i32* %173
%215 = load i32, i32* %32
%216 = load i32, i32* %164
%217 = add nsw i32 %216, %215
store i32 %217, i32* %27
%218 = load i32, i32* %32
%219 = load i32, i32* %164
%220 = sub nsw i32 %218, %219
%221 = mul nsw i32 %220, 18577
%222 = ashr i32 %221, 15
store i32 %222, i32* %159
%223 = load i32, i32* %44
%224 = load i32, i32* %152
%225 = add nsw i32 %224, %223
store i32 %225, i32* %39
%226 = load i32, i32* %44
%227 = load i32, i32* %152
%228 = sub nsw i32 %226, %227
%229 = mul nsw i32 %228, 21195
%230 = ashr i32 %229, 15
store i32 %230, i32* %147
%231 = load i32, i32* %56
%232 = load i32, i32* %140
%233 = add nsw i32 %232, %231
store i32 %233, i32* %51
%234 = load i32, i32* %56
%235 = load i32, i32* %140
%236 = sub nsw i32 %234, %235
%237 = mul nsw i32 %236, 12913
%238 = ashr i32 %237, 14
store i32 %238, i32* %135
%239 = load i32, i32* %68
%240 = load i32, i32* %128
%241 = add nsw i32 %240, %239
store i32 %241, i32* %63
%242 = load i32, i32* %68
%243 = load i32, i32* %128
%244 = sub nsw i32 %242, %243
%245 = mul nsw i32 %244, 8689
%246 = ashr i32 %245, 13
store i32 %246, i32* %123
%247 = load i32, i32* %80
%248 = load i32, i32* %116
%249 = add nsw i32 %248, %247
store i32 %249, i32* %75
%250 = load i32, i32* %80
%251 = load i32, i32* %116
%252 = sub nsw i32 %250, %251
%253 = mul nsw i32 %252, 56441
%254 = ashr i32 %253, 15
store i32 %254, i32* %111
%255 = load i32, i32* %92
%256 = load i32, i32* %104
%257 = add nsw i32 %256, %255
store i32 %257, i32* %87
%258 = load i32, i32* %92
%259 = load i32, i32* %104
%260 = sub nsw i32 %258, %259
%261 = sext i32 %260 to i64
%262 = mul nsw i64 %261, 167154
%263 = lshr i64 %262, 15
%264 = trunc i64 %263 to i32
store i32 %264, i32* %99
%265 = load i32, i32* %200
%266 = load i32, i32* %14
%267 = add nsw i32 %266, %265
store i32 %267, i32* %189
%268 = load i32, i32* %14
%269 = load i32, i32* %200
%270 = sub nsw i32 %268, %269
%271 = mul nsw i32 %270, 16463
%272 = ashr i32 %271, 15
store i32 %272, i32* %6
%273 = load i32, i32* %186
%274 = load i32, i32* %26
%275 = add nsw i32 %274, %273
store i32 %275, i32* %175
%276 = load i32, i32* %26
%277 = load i32, i32* %186
%278 = sub nsw i32 %276, %277
%279 = mul nsw i32 %278, 17121
%280 = ashr i32 %279, 15
store i32 %280, i32* %17
%281 = load i32, i32* %172
%282 = load i32, i32* %38
%283 = add nsw i32 %282, %281
store i32 %283, i32* %161
%284 = load i32, i32* %38
%285 = load i32, i32* %172
%286 = sub nsw i32 %284, %285
%287 = mul nsw i32 %286, 18577
%288 = ashr i32 %287, 15
store i32 %288, i32* %29
%289 = load i32, i32* %158
%290 = load i32, i32* %50
%291 = add nsw i32 %290, %289
store i32 %291, i32* %149
%292 = load i32, i32* %50
%293 = load i32, i32* %158
%294 = sub nsw i32 %292, %293
%295 = mul nsw i32 %294, 21195
%296 = ashr i32 %295, 15
store i32 %296, i32* %41
%297 = load i32, i32* %146
%298 = load i32, i32* %62
%299 = add nsw i32 %298, %297
store i32 %299, i32* %137
%300 = load i32, i32* %62
%301 = load i32, i32* %146
%302 = sub nsw i32 %300, %301
%303 = mul nsw i32 %302, 12913
%304 = ashr i32 %303, 14
store i32 %304, i32* %53
%305 = load i32, i32* %134
%306 = load i32, i32* %74
%307 = add nsw i32 %306, %305
store i32 %307, i32* %125
%308 = load i32, i32* %74
%309 = load i32, i32* %134
%310 = sub nsw i32 %308, %309
%311 = mul nsw i32 %310, 8689
%312 = ashr i32 %311, 13
store i32 %312, i32* %65
%313 = load i32, i32* %122
%314 = load i32, i32* %86
%315 = add nsw i32 %314, %313
store i32 %315, i32* %113
%316 = load i32, i32* %86
%317 = load i32, i32* %122
%318 = sub nsw i32 %316, %317
%319 = mul nsw i32 %318, 56441
%320 = ashr i32 %319, 15
store i32 %320, i32* %77
%321 = load i32, i32* %110
%322 = load i32, i32* %98
%323 = add nsw i32 %322, %321
store i32 %323, i32* %101
%324 = load i32, i32* %98
%325 = load i32, i32* %110
%326 = sub nsw i32 %324, %325
%327 = sext i32 %326 to i64
%328 = mul nsw i64 %327, 167154
%329 = lshr i64 %328, 15
%330 = trunc i64 %329 to i32
store i32 %330, i32* %89
%331 = add nsw i32 %257, %201
store i32 %331, i32* %2
%332 = load i32, i32* %3
%333 = load i32, i32* %87
%334 = sub nsw i32 %332, %333
%335 = mul nsw i32 %334, 261
%336 = ashr i32 %335, 9
store i32 %336, i32* %92
%337 = load i32, i32* %15
%338 = load i32, i32* %75
%339 = add nsw i32 %338, %337
store i32 %339, i32* %20
%340 = load i32, i32* %15
%341 = load i32, i32* %75
%342 = sub nsw i32 %340, %341
%343 = mul nsw i32 %342, 2463
%344 = ashr i32 %343, 12
store i32 %344, i32* %80
%345 = load i32, i32* %27
%346 = load i32, i32* %63
%347 = add nsw i32 %346, %345
store i32 %347, i32* %32
%348 = load i32, i32* %27
%349 = load i32, i32* %63
%350 = sub nsw i32 %348, %349
%351 = mul nsw i32 %350, 14745
%352 = ashr i32 %351, 14
store i32 %352, i32* %68
%353 = load i32, i32* %39
%354 = load i32, i32* %51
%355 = add nsw i32 %354, %353
store i32 %355, i32* %44
%356 = load i32, i32* %39
%357 = load i32, i32* %51
%358 = sub nsw i32 %356, %357
%359 = sext i32 %358 to i64
%360 = mul nsw i64 %359, 83981
%361 = lshr i64 %360, 15
%362 = trunc i64 %361 to i32
store i32 %362, i32* %56
%363 = load i32, i32* %99
%364 = load i32, i32* %187
%365 = add nsw i32 %364, %363
store i32 %365, i32* %104
%366 = load i32, i32* %187
%367 = load i32, i32* %99
%368 = sub nsw i32 %366, %367
%369 = mul nsw i32 %368, 261
%370 = ashr i32 %369, 9
store i32 %370, i32* %192
%371 = load i32, i32* %111
%372 = load i32, i32* %173
%373 = add nsw i32 %372, %371
store i32 %373, i32* %116
%374 = load i32, i32* %173
%375 = load i32, i32* %111
%376 = sub nsw i32 %374, %375
%377 = mul nsw i32 %376, 2463
%378 = ashr i32 %377, 12
store i32 %378, i32* %178
%379 = load i32, i32* %123
%380 = load i32, i32* %159
%381 = add nsw i32 %380, %379
store i32 %381, i32* %128
%382 = load i32, i32* %159
%383 = load i32, i32* %123
%384 = sub nsw i32 %382, %383
%385 = mul nsw i32 %384, 14745
%386 = ashr i32 %385, 14
store i32 %386, i32* %164
%387 = load i32, i32* %135
%388 = load i32, i32* %147
%389 = add nsw i32 %388, %387
store i32 %389, i32* %140
%390 = load i32, i32* %147
%391 = load i32, i32* %135
%392 = sub nsw i32 %390, %391
%393 = sext i32 %392 to i64
%394 = mul nsw i64 %393, 83981
%395 = lshr i64 %394, 15
%396 = trunc i64 %395 to i32
store i32 %396, i32* %152
%397 = load i32, i32* %189
%398 = load i32, i32* %101
%399 = add nsw i32 %398, %397
store i32 %399, i32* %200
%400 = load i32, i32* %189
%401 = load i32, i32* %101
%402 = sub nsw i32 %400, %401
%403 = mul nsw i32 %402, 261
%404 = ashr i32 %403, 9
store i32 %404, i32* %110
%405 = load i32, i32* %175
%406 = load i32, i32* %113
%407 = add nsw i32 %406, %405
store i32 %407, i32* %186
%408 = load i32, i32* %175
%409 = load i32, i32* %113
%410 = sub nsw i32 %408, %409
%411 = mul nsw i32 %410, 2463
%412 = ashr i32 %411, 12
store i32 %412, i32* %122
%413 = load i32, i32* %161
%414 = load i32, i32* %125
%415 = add nsw i32 %414, %413
store i32 %415, i32* %172
%416 = load i32, i32* %161
%417 = load i32, i32* %125
%418 = sub nsw i32 %416, %417
%419 = mul nsw i32 %418, 14745
%420 = ashr i32 %419, 14
store i32 %420, i32* %134
%421 = load i32, i32* %149
%422 = load i32, i32* %137
%423 = add nsw i32 %422, %421
store i32 %423, i32* %158
%424 = load i32, i32* %149
%425 = load i32, i32* %137
%426 = sub nsw i32 %424, %425
%427 = sext i32 %426 to i64
%428 = mul nsw i64 %427, 83981
%429 = lshr i64 %428, 15
%430 = trunc i64 %429 to i32
store i32 %430, i32* %146
%431 = load i32, i32* %89
%432 = load i32, i32* %6
%433 = add nsw i32 %432, %431
store i32 %433, i32* %98
%434 = load i32, i32* %6
%435 = load i32, i32* %89
%436 = sub nsw i32 %434, %435
%437 = mul nsw i32 %436, 261
%438 = ashr i32 %437, 9
store i32 %438, i32* %14
%439 = load i32, i32* %77
%440 = load i32, i32* %17
%441 = add nsw i32 %440, %439
store i32 %441, i32* %86
%442 = load i32, i32* %17
%443 = load i32, i32* %77
%444 = sub nsw i32 %442, %443
%445 = mul nsw i32 %444, 2463
%446 = ashr i32 %445, 12
store i32 %446, i32* %26
%447 = load i32, i32* %65
%448 = load i32, i32* %29
%449 = add nsw i32 %448, %447
store i32 %449, i32* %74
%450 = load i32, i32* %29
%451 = load i32, i32* %65
%452 = sub nsw i32 %450, %451
%453 = mul nsw i32 %452, 14745
%454 = ashr i32 %453, 14
store i32 %454, i32* %38
%455 = load i32, i32* %53
%456 = load i32, i32* %41
%457 = add nsw i32 %456, %455
store i32 %457, i32* %62
%458 = load i32, i32* %41
%459 = load i32, i32* %53
%460 = sub nsw i32 %458, %459
%461 = sext i32 %460 to i64
%462 = mul nsw i64 %461, 83981
%463 = lshr i64 %462, 15
%464 = trunc i64 %463 to i32
store i32 %464, i32* %50
%465 = add nsw i32 %355, %331
store i32 %465, i32* %3
%466 = load i32, i32* %2
%467 = load i32, i32* %44
%468 = sub nsw i32 %466, %467
%469 = mul nsw i32 %468, 17733
%470 = ashr i32 %469, 15
store i32 %470, i32* %39
%471 = load i32, i32* %20
%472 = load i32, i32* %32
%473 = add nsw i32 %472, %471
store i32 %473, i32* %15
%474 = load i32, i32* %20
%475 = load i32, i32* %32
%476 = sub nsw i32 %474, %475
%477 = mul nsw i32 %476, 42813
%478 = ashr i32 %477, 15
store i32 %478, i32* %27
%479 = load i32, i32* %56
%480 = load i32, i32* %92
%481 = add nsw i32 %480, %479
store i32 %481, i32* %51
%482 = load i32, i32* %92
%483 = load i32, i32* %56
%484 = sub nsw i32 %482, %483
%485 = mul nsw i32 %484, 17733
%486 = ashr i32 %485, 15
store i32 %486, i32* %87
%487 = load i32, i32* %68
%488 = load i32, i32* %80
%489 = add nsw i32 %488, %487
store i32 %489, i32* %63
%490 = load i32, i32* %80
%491 = load i32, i32* %68
%492 = sub nsw i32 %490, %491
%493 = mul nsw i32 %492, 42813
%494 = ashr i32 %493, 15
store i32 %494, i32* %75
%495 = load i32, i32* %104
%496 = load i32, i32* %140
%497 = add nsw i32 %496, %495
store i32 %497, i32* %99
%498 = load i32, i32* %104
%499 = load i32, i32* %140
%500 = sub nsw i32 %498, %499
%501 = mul nsw i32 %500, 17733
%502 = ashr i32 %501, 15
store i32 %502, i32* %135
%503 = load i32, i32* %116
%504 = load i32, i32* %128
%505 = add nsw i32 %504, %503
store i32 %505, i32* %111
%506 = load i32, i32* %116
%507 = load i32, i32* %128
%508 = sub nsw i32 %506, %507
%509 = mul nsw i32 %508, 42813
%510 = ashr i32 %509, 15
store i32 %510, i32* %123
%511 = load i32, i32* %152
%512 = load i32, i32* %192
%513 = add nsw i32 %512, %511
store i32 %513, i32* %147
%514 = load i32, i32* %192
%515 = load i32, i32* %152
%516 = sub nsw i32 %514, %515
%517 = mul nsw i32 %516, 17733
%518 = ashr i32 %517, 15
store i32 %518, i32* %187
%519 = load i32, i32* %164
%520 = load i32, i32* %178
%521 = add nsw i32 %520, %519
store i32 %521, i32* %159
%522 = load i32, i32* %178
%523 = load i32, i32* %164
%524 = sub nsw i32 %522, %523
%525 = mul nsw i32 %524, 42813
%526 = ashr i32 %525, 15
store i32 %526, i32* %173
%527 = load i32, i32* %200
%528 = load i32, i32* %158
%529 = add nsw i32 %528, %527
store i32 %529, i32* %189
%530 = load i32, i32* %200
%531 = load i32, i32* %158
%532 = sub nsw i32 %530, %531
%533 = mul nsw i32 %532, 17733
%534 = ashr i32 %533, 15
store i32 %534, i32* %149
%535 = load i32, i32* %186
%536 = load i32, i32* %172
%537 = add nsw i32 %536, %535
store i32 %537, i32* %175
%538 = load i32, i32* %186
%539 = load i32, i32* %172
%540 = sub nsw i32 %538, %539
%541 = mul nsw i32 %540, 42813
%542 = ashr i32 %541, 15
store i32 %542, i32* %161
%543 = load i32, i32* %146
%544 = load i32, i32* %110
%545 = add nsw i32 %544, %543
store i32 %545, i32* %137
%546 = load i32, i32* %110
%547 = load i32, i32* %146
%548 = sub nsw i32 %546, %547
%549 = mul nsw i32 %548, 17733
%550 = ashr i32 %549, 15
store i32 %550, i32* %101
%551 = load i32, i32* %134
%552 = load i32, i32* %122
%553 = add nsw i32 %552, %551
store i32 %553, i32* %125
%554 = load i32, i32* %122
%555 = load i32, i32* %134
%556 = sub nsw i32 %554, %555
%557 = mul nsw i32 %556, 42813
%558 = ashr i32 %557, 15
store i32 %558, i32* %113
%559 = load i32, i32* %98
%560 = load i32, i32* %62
%561 = add nsw i32 %560, %559
store i32 %561, i32* %89
%562 = load i32, i32* %98
%563 = load i32, i32* %62
%564 = sub nsw i32 %562, %563
%565 = mul nsw i32 %564, 17733
%566 = ashr i32 %565, 15
store i32 %566, i32* %53
%567 = load i32, i32* %86
%568 = load i32, i32* %74
%569 = add nsw i32 %568, %567
store i32 %569, i32* %77
%570 = load i32, i32* %86
%571 = load i32, i32* %74
%572 = sub nsw i32 %570, %571
%573 = mul nsw i32 %572, 42813
%574 = ashr i32 %573, 15
store i32 %574, i32* %65
%575 = load i32, i32* %50
%576 = load i32, i32* %14
%577 = add nsw i32 %576, %575
store i32 %577, i32* %41
%578 = load i32, i32* %14
%579 = load i32, i32* %50
%580 = sub nsw i32 %578, %579
%581 = mul nsw i32 %580, 17733
%582 = ashr i32 %581, 15
store i32 %582, i32* %6
%583 = load i32, i32* %38
%584 = load i32, i32* %26
%585 = add nsw i32 %584, %583
store i32 %585, i32* %29
%586 = load i32, i32* %26
%587 = load i32, i32* %38
%588 = sub nsw i32 %586, %587
%589 = mul nsw i32 %588, 42813
%590 = ashr i32 %589, 15
store i32 %590, i32* %17
br label %591
591: ; preds = %4, %591
%592 = phi i64 [ 0, %4 ], [ %620, %591 ]
%593 = getelementptr inbounds i32, i32* %3, i64 %592
%594 = load i32, i32* %593
%595 = or i64 %592, 1
%596 = getelementptr inbounds i32, i32* %3, i64 %595
%597 = load i32, i32* %596
%598 = add nsw i32 %597, %594
%599 = getelementptr inbounds i32, i32* %2, i64 %592
store i32 %598, i32* %599
%600 = load i32, i32* %593
%601 = load i32, i32* %596
%602 = sub nsw i32 %600, %601
%603 = mul nsw i32 %602, 11585
%604 = ashr i32 %603, 14
%605 = getelementptr inbounds i32, i32* %2, i64 %595
store i32 %604, i32* %605
%606 = or i64 %592, 2
%607 = getelementptr inbounds i32, i32* %3, i64 %606
%608 = load i32, i32* %607
%609 = or i64 %592, 3
%610 = getelementptr inbounds i32, i32* %3, i64 %609
%611 = load i32, i32* %610
%612 = add nsw i32 %611, %608
%613 = getelementptr inbounds i32, i32* %2, i64 %606
store i32 %612, i32* %613
%614 = load i32, i32* %610
%615 = load i32, i32* %607
%616 = sub nsw i32 %614, %615
%617 = mul nsw i32 %616, 11585
%618 = ashr i32 %617, 14
%619 = getelementptr inbounds i32, i32* %2, i64 %609
store i32 %618, i32* %619
%620 = add nuw nsw i64 %592, 4
%621 = icmp ult i64 %592, 28
br i1 %621, label %591, label %622
622: ; preds = %591
%623 = load i32, i32* %44
%624 = load i32, i32* %32
%625 = add nsw i32 %624, %623
store i32 %625, i32* %32
%626 = load i32, i32* %92
%627 = load i32, i32* %80
%628 = add nsw i32 %627, %626
%629 = load i32, i32* %56
%630 = add nsw i32 %629, %628
store i32 %630, i32* %56
%631 = load i32, i32* %68
%632 = add nsw i32 %631, %628
store i32 %632, i32* %80
%633 = add nsw i32 %631, %626
store i32 %633, i32* %68
%634 = load i32, i32* %140
%635 = load i32, i32* %128
%636 = add nsw i32 %635, %634
store i32 %636, i32* %128
%637 = load i32, i32* %192
%638 = load i32, i32* %178
%639 = add nsw i32 %638, %637
%640 = load i32, i32* %152
%641 = add nsw i32 %640, %639
store i32 %641, i32* %152
%642 = load i32, i32* %164
%643 = add nsw i32 %642, %639
store i32 %643, i32* %178
%644 = add nsw i32 %642, %637
store i32 %644, i32* %164
%645 = load i32, i32* %158
%646 = load i32, i32* %172
%647 = add nsw i32 %646, %645
store i32 %647, i32* %172
%648 = load i32, i32* %110
%649 = load i32, i32* %122
%650 = add nsw i32 %649, %648
%651 = load i32, i32* %146
%652 = add nsw i32 %651, %650
store i32 %652, i32* %146
%653 = load i32, i32* %134
%654 = add nsw i32 %653, %650
store i32 %654, i32* %122
%655 = add nsw i32 %653, %648
store i32 %655, i32* %134
%656 = load i32, i32* %62
%657 = load i32, i32* %74
%658 = add nsw i32 %657, %656
store i32 %658, i32* %74
%659 = load i32, i32* %14
%660 = load i32, i32* %26
%661 = add nsw i32 %660, %659
%662 = load i32, i32* %50
%663 = add nsw i32 %662, %661
store i32 %663, i32* %50
%664 = load i32, i32* %38
%665 = add nsw i32 %664, %661
store i32 %665, i32* %26
%666 = add nsw i32 %664, %659
store i32 %666, i32* %38
%667 = load i32, i32* %2
%668 = getelementptr inbounds i32, i32* %0, i64 2048
store i32 %667, i32* %668
%669 = load i32, i32* %56
%670 = getelementptr inbounds i32, i32* %0, i64 1536
store i32 %669, i32* %670
%671 = load i32, i32* %32
%672 = getelementptr inbounds i32, i32* %0, i64 1024
store i32 %671, i32* %672
%673 = load i32, i32* %80
%674 = getelementptr inbounds i32, i32* %0, i64 512
store i32 %673, i32* %674
%675 = load i32, i32* %20
store i32 %675, i32* %0
%676 = load i32, i32* %20
store i32 %676, i32* %1
%677 = load i32, i32* %68
%678 = getelementptr inbounds i32, i32* %1, i64 512
store i32 %677, i32* %678
%679 = load i32, i32* %44
%680 = getelementptr inbounds i32, i32* %1, i64 1024
store i32 %679, i32* %680
%681 = load i32, i32* %92
%682 = getelementptr inbounds i32, i32* %1, i64 1536
store i32 %681, i32* %682
%683 = load i32, i32* %152
%684 = load i32, i32* %104
%685 = add nsw i32 %684, %683
store i32 %685, i32* %104
%686 = getelementptr inbounds i32, i32* %0, i64 1792
store i32 %685, i32* %686
%687 = load i32, i32* %128
%688 = load i32, i32* %152
%689 = add nsw i32 %688, %687
store i32 %689, i32* %152
%690 = getelementptr inbounds i32, i32* %0, i64 1280
store i32 %689, i32* %690
%691 = load i32, i32* %178
%692 = load i32, i32* %128
%693 = add nsw i32 %692, %691
store i32 %693, i32* %128
%694 = getelementptr inbounds i32, i32* %0, i64 768
store i32 %693, i32* %694
%695 = load i32, i32* %116
%696 = load i32, i32* %178
%697 = add nsw i32 %696, %695
store i32 %697, i32* %178
%698 = getelementptr inbounds i32, i32* %0, i64 256
store i32 %697, i32* %698
%699 = load i32, i32* %164
%700 = load i32, i32* %116
%701 = add nsw i32 %700, %699
store i32 %701, i32* %116
%702 = getelementptr inbounds i32, i32* %1, i64 256
store i32 %701, i32* %702
%703 = load i32, i32* %140
%704 = load i32, i32* %164
%705 = add nsw i32 %704, %703
store i32 %705, i32* %164
%706 = getelementptr inbounds i32, i32* %1, i64 768
store i32 %705, i32* %706
%707 = load i32, i32* %192
%708 = load i32, i32* %140
%709 = add nsw i32 %708, %707
store i32 %709, i32* %140
%710 = getelementptr inbounds i32, i32* %1, i64 1280
store i32 %709, i32* %710
%711 = load i32, i32* %192
%712 = getelementptr inbounds i32, i32* %1, i64 1792
store i32 %711, i32* %712
%713 = load i32, i32* %50
%714 = load i32, i32* %98
%715 = add nsw i32 %714, %713
store i32 %715, i32* %98
%716 = load i32, i32* %200
%717 = add nsw i32 %716, %715
%718 = getelementptr inbounds i32, i32* %0, i64 1920
store i32 %717, i32* %718
%719 = load i32, i32* %98
%720 = load i32, i32* %146
%721 = add nsw i32 %720, %719
%722 = getelementptr inbounds i32, i32* %0, i64 1664
store i32 %721, i32* %722
%723 = load i32, i32* %74
%724 = load i32, i32* %50
%725 = add nsw i32 %724, %723
store i32 %725, i32* %50
%726 = load i32, i32* %146
%727 = add nsw i32 %726, %725
%728 = getelementptr inbounds i32, i32* %0, i64 1408
store i32 %727, i32* %728
%729 = load i32, i32* %50
%730 = load i32, i32* %172
%731 = add nsw i32 %730, %729
%732 = getelementptr inbounds i32, i32* %0, i64 1152
store i32 %731, i32* %732
%733 = load i32, i32* %26
%734 = load i32, i32* %74
%735 = add nsw i32 %734, %733
store i32 %735, i32* %74
%736 = load i32, i32* %172
%737 = add nsw i32 %736, %735
%738 = getelementptr inbounds i32, i32* %0, i64 896
store i32 %737, i32* %738
%739 = load i32, i32* %74
%740 = load i32, i32* %122
%741 = add nsw i32 %740, %739
%742 = getelementptr inbounds i32, i32* %0, i64 640
store i32 %741, i32* %742
%743 = load i32, i32* %86
%744 = load i32, i32* %26
%745 = add nsw i32 %744, %743
store i32 %745, i32* %26
%746 = load i32, i32* %122
%747 = add nsw i32 %746, %745
%748 = getelementptr inbounds i32, i32* %0, i64 384
store i32 %747, i32* %748
%749 = load i32, i32* %26
%750 = load i32, i32* %186
%751 = add nsw i32 %750, %749
%752 = getelementptr inbounds i32, i32* %0, i64 128
store i32 %751, i32* %752
%753 = load i32, i32* %38
%754 = load i32, i32* %86
%755 = add nsw i32 %754, %753
store i32 %755, i32* %86
%756 = load i32, i32* %186
%757 = add nsw i32 %756, %755
%758 = getelementptr inbounds i32, i32* %1, i64 128
store i32 %757, i32* %758
%759 = load i32, i32* %86
%760 = load i32, i32* %134
%761 = add nsw i32 %760, %759
%762 = getelementptr inbounds i32, i32* %1, i64 384
store i32 %761, i32* %762
%763 = load i32, i32* %62
%764 = load i32, i32* %38
%765 = add nsw i32 %764, %763
store i32 %765, i32* %38
%766 = load i32, i32* %134
%767 = add nsw i32 %766, %765
%768 = getelementptr inbounds i32, i32* %1, i64 640
store i32 %767, i32* %768
%769 = load i32, i32* %38
%770 = load i32, i32* %158
%771 = add nsw i32 %770, %769
%772 = getelementptr inbounds i32, i32* %1, i64 896
store i32 %771, i32* %772
%773 = load i32, i32* %14
%774 = load i32, i32* %62
%775 = add nsw i32 %774, %773
store i32 %775, i32* %62
%776 = load i32, i32* %158
%777 = add nsw i32 %776, %775
%778 = getelementptr inbounds i32, i32* %1, i64 1152
store i32 %777, i32* %778
%779 = load i32, i32* %62
%780 = load i32, i32* %110
%781 = add nsw i32 %780, %779
%782 = getelementptr inbounds i32, i32* %1, i64 1408
store i32 %781, i32* %782
%783 = load i32, i32* %110
%784 = load i32, i32* %14
%785 = add nsw i32 %784, %783
%786 = getelementptr inbounds i32, i32* %1, i64 1664
store i32 %785, i32* %786
%787 = load i32, i32* %14
%788 = getelementptr inbounds i32, i32* %1, i64 1920
store i32 %787, i32* %788
ret void
}