int main(void) {
  int inputarray[10] = {36, 16, 26, 36, 16, 26, 36, 16, 26, 36};
  int copyinputarray[10];
  int extensioninput[10];
  int outputarray[10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
  int atoms[30][4];
  int conjugate[10][5];
  int cohabitant[10][5];
  int hypotheses[10][4];
  int scrubhypotheses[10][4];
  int hypothesescount;
  int scrubhypothesescount;
  int alreadydone;
  long atomeffects[10];
  long atomeffectssum;
  long atomeffectsdivisor;
  long conjugateeffects[10];
  long cohabitanteffects[10];
  int atomnumbertracer = 0;
  int firstatom = 0;
  int secondatom = 0;
  int thirdatom = 0;
  int candidateatom = 0;
  int candidatevalue = 0;
  int candidateleft = 0;
  int candidateright = 0;
  int candidateposition = 0;
  int inputposition = 0;
  int solution = 0;
  int plan = 0;
  int valueplan = 0;
  int foundatom = 0;
  int lengthofoutput = 0;
  int h = 0;
  int i = 0;
  int j = 0;
  int k = 0;
  int l = 0;
  int m = 0;
  int n = 0;
  int maxshow = 0;
  int hypotrue = 0;
  for (i = 0; i < 30; i++) {
    atoms[i][0] = 100 + i;
    for (j = 1; j < 4; j++) {
      atoms[i][j] = 0;
    }
  }
  atoms[0][1] = 2;
  atoms[0][2] = 3;
  atoms[0][3] = - -100;
  atoms[1][1] = 1;
  atoms[1][2] = 2;
  atoms[1][3] = - -100;
  atoms[2][1] = 3;
  atoms[2][2] = 4;
  atoms[2][3] = -100;
  atoms[3][1] = 4;
  atoms[3][2] = 5;
  atoms[3][3] = 2 * -100;
  atoms[4][1] = 5;
  atoms[4][2] = 6;
  atoms[4][3] = -100;
  atoms[5][1] = 5;
  atoms[5][2] = 3;
  atoms[5][3] = - -100;
  atoms[6][1] = 11;
  atoms[6][2] = 12;
  atoms[6][3] = 13;
  for (i = 0; i < 10; i++) {
    copyinputarray[i] = 0;
    extensioninput[i] = 0;
  }
  for (i = 0; i < 10; i++) {
    copyinputarray[i] = inputarray[i];
    extensioninput[i] = inputarray[i];
  }
  for (h = 0; h < 3; h++) {
    for (l = 0; l < 3; l++) {
      if ((l == 0) && (h < 3 - 1)) {
        for (i = 0; i < 10; i++) {
          inputarray[i] = copyinputarray[i];
          extensioninput[i] = inputarray[i];
        }
      } else if ((l > 0) && (h < 3 - 1)) {
        for (i = 0; i < 10; i++) {
          inputarray[i] = extensioninput[i];
        }
      } else {
        for (i = 0; i < 10; i++) {
          inputarray[i] = copyinputarray[i];
        }
      }
      for (n = 0; n < 10 - 1; n++) {
        candidateatom = 0;
        candidatevalue = 1000 + 1;
        candidateposition = 0;
        inputposition = 0;
        for (i = 0; i < 10; i++) {
          for (j = 0; j < 30; j++) {
            if ((((atoms[j][1] == inputarray[i]) &&
                  (atoms[j][2] == inputarray[i + 1])) ||
                 ((atoms[j][1] == inputarray[i + 1]) &&
                  (atoms[j][2] == inputarray[i]))) &&
                (!((atoms[j][1] == 0) && (atoms[j][2] == 0))) &&
                (atoms[j][3] <= candidatevalue)) {
              candidateatom = atoms[j][0];
              candidatevalue = atoms[j][3];
              candidateleft = inputarray[i];
              candidateright = inputarray[i + 1];
              candidateposition = j;
              inputposition = i;
            }
          }
        }
        if (candidatevalue > 1000) {
          atomnumbertracer = atoms[30 - 1][0];
          for (k = 30 - 1; k > 0; k--) {
            atoms[k][0] = atoms[k - 1][0];
            atoms[k][1] = atoms[k - 1][1];
            atoms[k][2] = atoms[k - 1][2];
            atoms[k][3] = atoms[k - 1][3];
          }
          inputposition = 0;
          for (k = 10 - 1; k > 0; k--) {
            if (inputarray[k] != 0) {
              inputposition = k - 1;
              break;
            }
          }
          if ((inputarray[inputposition] == 0) &&
              (inputarray[inputposition + 1] == 0)) {
            printf("input all empty, terminating\n");
            exit(0);
          }
          atoms[0][0] = atomnumbertracer;
          atoms[0][1] = inputarray[inputposition];
          atoms[0][2] = inputarray[inputposition + 1];
          atoms[0][3] = -100;
          candidateatom = atoms[0][0];
          candidatevalue = atoms[0][3];
          candidateleft = atoms[0][1];
          candidateright = atoms[0][2];
          candidateposition = 0;
        } else {
          for (k = candidateposition; k > 0; k--) {
            atoms[k][0] = atoms[k - 1][0];
            atoms[k][1] = atoms[k - 1][1];
            atoms[k][2] = atoms[k - 1][2];
            atoms[k][3] = atoms[k - 1][3];
          }
          atoms[0][0] = candidateatom;
          atoms[0][1] = candidateleft;
          atoms[0][2] = candidateright;
          atoms[0][3] = candidatevalue + -100;
          if (atoms[0][3] < -1000) {
            atoms[0][3] = -1000;
          }
        }
        for (k = inputposition; k < 10 - 1; k++) {
          inputarray[k] = inputarray[k + 1];
        }
        inputarray[inputposition] = candidateatom;
        inputarray[10 - 1] = 0;
        printf("\n\nBEFORE TRIANGULATION:\n");
        for (i = 0; i < 30; i = i + 2) {
          printf("%d %d %d %d\t\t%d %d %d %d\n", atoms[i][0], atoms[i][1],
                 atoms[i][2], atoms[i][3], atoms[i + 1][0], atoms[i + 1][1],
                 atoms[i + 1][2], atoms[i + 1][3]);
        }
        for (i = 0; i < 10; i++) {
          atomeffects[i] = 0;
          conjugateeffects[i] = 0;
          cohabitanteffects[i] = 0;
          for (j = 0; j < 5; j++) {
            conjugate[i][j] = 0;
            cohabitant[i][j] = 0;
          }
          for (k = 0; k < 4; k++) {
            hypotheses[i][k] = 0;
            scrubhypotheses[i][k] = 0;
          }
        }
        j = 0;
        for (i = 1; i < 30; i++) {
          if (j == 10) {
            break;
          }
          if ((atoms[0][1] == atoms[i][1]) && (atoms[0][2] != atoms[i][2]) &&
              (atoms[0][1] != 0)) {
            conjugate[j][0] = atoms[i][0];
            conjugate[j][1] = atoms[i][1];
            conjugate[j][2] = atoms[i][2];
            conjugate[j][3] = atoms[i][3];
            conjugate[j][4] = i;
            cohabitant[j][1] = atoms[0][2];
            cohabitant[j][2] = atoms[i][2];
            j++;
          } else if ((atoms[0][2] == atoms[i][1]) &&
                     (atoms[0][1] != atoms[i][2]) && (atoms[0][2] != 0)) {
            conjugate[j][0] = atoms[i][0];
            conjugate[j][1] = atoms[i][1];
            conjugate[j][2] = atoms[i][2];
            conjugate[j][3] = atoms[i][3];
            conjugate[j][4] = i;
            cohabitant[j][1] = atoms[0][1];
            cohabitant[j][2] = atoms[i][2];
            j++;
          } else if ((atoms[0][1] != atoms[i][1]) &&
                     (atoms[0][2] == atoms[i][2]) && (atoms[0][2] != 0)) {
            conjugate[j][0] = atoms[i][0];
            conjugate[j][1] = atoms[i][1];
            conjugate[j][2] = atoms[i][2];
            conjugate[j][3] = atoms[i][3];
            conjugate[j][4] = i;
            cohabitant[j][1] = atoms[0][1];
            cohabitant[j][2] = atoms[i][1];
            j++;
          } else if ((atoms[0][2] != atoms[i][1]) &&
                     (atoms[0][1] == atoms[i][2]) && (atoms[0][1] != 0)) {
            conjugate[j][0] = atoms[i][0];
            conjugate[j][1] = atoms[i][1];
            conjugate[j][2] = atoms[i][2];
            conjugate[j][3] = atoms[i][3];
            conjugate[j][4] = i;
            cohabitant[j][1] = atoms[0][2];
            cohabitant[j][2] = atoms[i][1];
            j++;
          }
        }
        for (j = 0; j < 10; j++) {
          alreadydone = 0;
          if ((((cohabitant[j][1] == atoms[0][1]) &&
                (cohabitant[j][2] == atoms[0][2])) ||
               ((cohabitant[j][2] == atoms[0][1]) &&
                (cohabitant[j][1] == atoms[0][2]))) ||
              (((conjugate[j][1] == atoms[0][1]) &&
                (conjugate[j][2] == atoms[0][2])) ||
               ((conjugate[j][2] == atoms[0][1]) &&
                (conjugate[j][1] == atoms[0][2])))) {
            cohabitant[j][0] = 0;
            cohabitant[j][1] = 0;
            cohabitant[j][2] = 0;
            cohabitant[j][3] = 0;
            cohabitant[j][4] = 0;
            conjugate[j][0] = 0;
            conjugate[j][1] = 0;
            conjugate[j][2] = 0;
            conjugate[j][3] = 0;
            conjugate[j][4] = 0;
          }
          for (i = 1; i < 30; i++) {
            if ((((cohabitant[j][1] == atoms[i][1]) &&
                  (cohabitant[j][2] == atoms[i][2])) ||
                 ((cohabitant[j][2] == atoms[i][1]) &&
                  (cohabitant[j][1] == atoms[i][2]))) &&
                (!((cohabitant[j][2] == 0) && (cohabitant[j][1] == 0)))) {
              cohabitant[j][0] = atoms[i][0];
              cohabitant[j][1] = atoms[i][1];
              cohabitant[j][2] = atoms[i][2];
              cohabitant[j][3] = atoms[i][3];
              cohabitant[j][4] = i;
              for (k = 0; k < j; k++) {
                if (cohabitant[j][0] == conjugate[k][0]) {
                  cohabitant[j][0] = 0;
                  cohabitant[j][1] = 0;
                  cohabitant[j][2] = 0;
                  cohabitant[j][3] = 0;
                  cohabitant[j][4] = 0;
                  conjugate[j][0] = 0;
                  conjugate[j][1] = 0;
                  conjugate[j][2] = 0;
                  conjugate[j][3] = 0;
                  conjugate[j][4] = 0;
                  break;
                }
              }
              break;
            }
          }
        }
        for (i = 0; i < 10; i++) {
          if (!((conjugate[i][0] == 0) && (cohabitant[i][0] == 0))) {
            if (((conjugate[i][3] >= 0) && (cohabitant[i][3] >= 0)) ||
                ((conjugate[i][3] < 0) && (cohabitant[i][3] < 0))) {
              atomeffects[i] = sqrt(1.0 * conjugate[i][3] * cohabitant[i][3]);
              if (atomeffects[i] > 1000) {
                atomeffects[i] = 1000;
              }
            } else {
              atomeffects[i] =
                  -1 * sqrt(-1.0 * conjugate[i][3] * cohabitant[i][3]);
              if (atomeffects[i] < -1000) {
                atomeffects[i] = -1000;
              }
            }
            if (((atoms[0][3] >= 0) && (conjugate[i][3] >= 0)) ||
                ((atoms[0][3] < 0) && (conjugate[i][3] < 0))) {
              cohabitanteffects[i] = sqrt(1.0 * atoms[0][3] * conjugate[i][3]);
              if (cohabitanteffects[i] > 1000) {
                cohabitanteffects[i] = 1000;
              }
            } else {
              cohabitanteffects[i] =
                  -1 * sqrt(-1.0 * atoms[0][3] * conjugate[i][3]);
              if (cohabitanteffects[i] < -1000) {
                cohabitanteffects[i] = -1000;
              }
            }
            if (((atoms[0][3] >= 0) && (cohabitant[i][3] >= 0)) ||
                ((atoms[0][3] < 0) && (cohabitant[i][3] < 0))) {
              conjugateeffects[i] = sqrt(1.0 * atoms[0][3] * cohabitant[i][3]);
              if (conjugateeffects[i] > 1000) {
                conjugateeffects[i] = 1000;
              }
            } else {
              conjugateeffects[i] =
                  -1 * sqrt(-1.0 * atoms[0][3] * cohabitant[i][3]);
              if (conjugateeffects[i] < -1000) {
                conjugateeffects[i] = -1000;
              }
            }
          }
        }
        printf("\n\nBEFORE AFFECTION:\n");
        for (i = 0; i < 30; i = i + 2) {
          printf("%d %d %d %d\t\t%d %d %d %d\n", atoms[i][0], atoms[i][1],
                 atoms[i][2], atoms[i][3], atoms[i + 1][0], atoms[i + 1][1],
                 atoms[i + 1][2], atoms[i + 1][3]);
        }
        atomeffectssum = 0;
        atomeffectsdivisor = 0;
        for (i = 0; i < 10; i++) {
          if (!((conjugate[i][0] == 0) && (cohabitant[i][0] == 0))) {
            atomeffectssum = atomeffectssum + atomeffects[i];
            atomeffectsdivisor++;
          }
        }
        if (atomeffectsdivisor > 0) {
          atomeffectssum = atomeffectssum / atomeffectsdivisor;
          atomeffectssum = atomeffectssum + atoms[0][3];
          if (atomeffectssum < -1000) {
            atomeffectssum = -1000;
          } else if (atomeffectssum > 1000) {
            atomeffectssum = 1000;
          }
          atoms[0][3] = atomeffectssum;
        }
        printf("\nFOLDING INPUT ARRAY:\n");
        j = 0;
        for (i = 0; i < 10; i++) {
          printf("%-7d ", inputarray[i]);
          if (j == 11) {
            printf("\n");
            j = 0;
          } else {
            j++;
          }
        }
        printf("\nSTATE OF EVALUATION:\n");
        if (hypotrue == 1) {
          printf("?");
        } else {
          printf("!");
        }
        if (atoms[0][3] < 0) {
          printf("   ATOM:%-7d L:%-7d R:%-7d VIC:%-+6d :: DAYDREAM:%-2d OF "
                 "%-2d    ::  RECONS:%-2d OF %-2d :: HRCHY:%-3d OF %-3d :: "
                 "INPOS    %-3d\n",
                 atoms[0][0], atoms[0][1], atoms[0][2], atoms[0][3], h + 1, 3,
                 l + 1, 3, n + 1, 10 - 1, inputposition);
        } else {
          printf("   ATOM:%-7d L:%-7d R:%-7d ANA:%-+6d :: DAYDREAM:%-2d OF "
                 "%-2d    ::  RECONS:%-2d OF %-2d :: HRCHY:%-3d OF %-3d :: "
                 "INPOS    %-3d\n",
                 atoms[0][0], atoms[0][1], atoms[0][2], atoms[0][3], h + 1, 3,
                 l + 1, 3, n + 1, 10 - 1, inputposition);
        }
        for (i = 0; i < 10; i++) {
          atomeffectssum = 0;
          if (!((conjugate[i][0] == 0) && (cohabitant[i][0] == 0))) {
            if (i == 0) {
              maxshow = 0;
            }
            if (maxshow < 20) {
              maxshow++;
              if ((conjugate[i][3] < 0) && (cohabitant[i][3] < 0)) {
                printf(" __/CONJ:%-7d L:%-7d R:%-7d,VIC:%-+9d POS:%-7d "
                       "EFCT:%-+6d\n   \\COHB:%-7d L:%-7d R:%-7d`VIC:%-+9d "
                       "POS:%-7d EFCT:%-+6d",
                       conjugate[i][0], conjugate[i][1], conjugate[i][2],
                       conjugate[i][3], conjugate[i][4], conjugateeffects[i],
                       cohabitant[i][0], cohabitant[i][1], cohabitant[i][2],
                       cohabitant[i][3], cohabitant[i][4],
                       cohabitanteffects[i]);
              } else if ((conjugate[i][3] >= 0) && (cohabitant[i][3] < 0)) {
                printf(" __/CONJ:%-7d L:%-7d R:%-7d,ANA:%-+9d POS:%-7d "
                       "EFCT:%-+6d\n   \\COHB:%-7d L:%-7d R:%-7d`VIC:%-+9d "
                       "POS:%-7d EFCT:%-+6d",
                       conjugate[i][0], conjugate[i][1], conjugate[i][2],
                       conjugate[i][3], conjugate[i][4], conjugateeffects[i],
                       cohabitant[i][0], cohabitant[i][1], cohabitant[i][2],
                       cohabitant[i][3], cohabitant[i][4],
                       cohabitanteffects[i]);
              } else if ((conjugate[i][3] < 0) && (cohabitant[i][3] >= 0)) {
                printf(" __/CONJ:%-7d L:%-7d R:%-7d,VIC:%-+9d POS:%-7d "
                       "EFCT:%-+6d\n   \\COHB:%-7d L:%-7d R:%-7d`ANA:%-+9d "
                       "POS:%-7d EFCT:%-+6d",
                       conjugate[i][0], conjugate[i][1], conjugate[i][2],
                       conjugate[i][3], conjugate[i][4], conjugateeffects[i],
                       cohabitant[i][0], cohabitant[i][1], cohabitant[i][2],
                       cohabitant[i][3], cohabitant[i][4],
                       cohabitanteffects[i]);
              } else {
                printf(" __/CONJ:%-7d L:%-7d R:%-7d,ANA:%-+9d POS:%-7d "
                       "EFCT:%-+6d\n   \\COHB:%-7d L:%-7d R:%-7d`ANA:%-+9d "
                       "POS:%-7d EFCT:%-+6d",
                       conjugate[i][0], conjugate[i][1], conjugate[i][2],
                       conjugate[i][3], conjugate[i][4], conjugateeffects[i],
                       cohabitant[i][0], cohabitant[i][1], cohabitant[i][2],
                       cohabitant[i][3], cohabitant[i][4],
                       cohabitanteffects[i]);
              }
              if (cohabitant[i][0] != 0) {
                printf("  [ADJUSTED] ");
                if (((cohabitant[i][3] * conjugate[i][3] < 0) &&
                     (atoms[0][3] > 0)) ||
                    ((cohabitant[i][3] * conjugate[i][3] > 0) &&
                     (atoms[0][3] < 0))) {
                  printf("-\n");
                } else if ((cohabitant[i][3] * conjugate[i][3] == 0) ||
                           (atoms[0][3] == 0)) {
                  printf("0\n");
                } else {
                  printf("+\n");
                }
              } else {
                printf("  [CONCLUDED] \n");
              }
            }
            atomeffectssum = conjugateeffects[i] + atoms[conjugate[i][4]][3];
            if (atomeffectssum < -1000) {
              atomeffectssum = -1000;
            } else if (atomeffectssum > 1000) {
              atomeffectssum = 1000;
            }
            atoms[conjugate[i][4]][3] = atomeffectssum;
          }
        }
        hypothesescount = 0;
        for (i = 0; i < 10; i++) {
          atomeffectssum = 0;
          if (conjugate[i][0] != 0) {
            if (cohabitant[i][0] != 0) {
              atomeffectssum =
                  cohabitanteffects[i] + atoms[cohabitant[i][4]][3];
              if (atomeffectssum < -1000) {
                atomeffectssum = -1000;
              } else if (atomeffectssum > 1000) {
                atomeffectssum = 1000;
              }
              atoms[cohabitant[i][4]][3] = atomeffectssum;
            } else {
              hypotheses[hypothesescount][1] = cohabitant[i][1];
              hypotheses[hypothesescount][2] = cohabitant[i][2];
              atomeffectssum = cohabitanteffects[i];
              if (atomeffectssum < -1000) {
                atomeffectssum = -1000;
              } else if (atomeffectssum > 1000) {
                atomeffectssum = 1000;
              }
              hypotheses[hypothesescount][3] = atomeffectssum;
              hypothesescount++;
            }
          }
        }
        printf("\n\nHYPOTHESES BEFORE SCRUBBING:\n");
        for (i = 0; i < 10; i++) {
          printf("%d %d %d %d\n", hypotheses[i][0], hypotheses[i][1],
                 hypotheses[i][2], hypotheses[i][3]);
        }
        for (i = 0; i < hypothesescount; i++) {
          scrubhypotheses[i][0] = hypotheses[i][0];
          scrubhypotheses[i][1] = hypotheses[i][1];
          scrubhypotheses[i][2] = hypotheses[i][2];
          scrubhypotheses[i][3] = hypotheses[i][3];
          hypotheses[i][0] = 0;
          hypotheses[i][1] = 0;
          hypotheses[i][2] = 0;
          hypotheses[i][3] = 0;
        }
        scrubhypothesescount = hypothesescount;
        if (scrubhypothesescount > 0) {
          for (i = 0; i < scrubhypothesescount - 1; i++) {
            printf("scrubhypothesis: %d %d %d %d\n", scrubhypotheses[i][0],
                   scrubhypotheses[i][1], scrubhypotheses[i][2],
                   scrubhypotheses[i][3]);
            if (!((scrubhypotheses[i][1] == 0) &&
                  (scrubhypotheses[i][2] == 0))) {
              for (j = i + 1; j < scrubhypothesescount; j++) {
                if (((scrubhypotheses[i][1] == scrubhypotheses[j][1]) &&
                     (scrubhypotheses[i][2] == scrubhypotheses[j][2])) ||
                    ((scrubhypotheses[i][1] == scrubhypotheses[j][2]) &&
                     (scrubhypotheses[i][2] == scrubhypotheses[j][1]))) {
                  scrubhypotheses[i][3] =
                      scrubhypotheses[j][3] + scrubhypotheses[i][3];
                  if (scrubhypotheses[i][3] < -1000) {
                    scrubhypotheses[i][3] = -1000;
                  } else if (scrubhypotheses[i][3] > 1000) {
                    scrubhypotheses[i][3] = 1000;
                  }
                  scrubhypotheses[j][0] = 0;
                  scrubhypotheses[j][1] = 0;
                  scrubhypotheses[j][2] = 0;
                  scrubhypotheses[j][3] = 0;
                }
              }
            }
          }
          j = 0;
          for (i = 0; i < scrubhypothesescount; i++) {
            if (!((scrubhypotheses[i][0] == 0) &&
                  (scrubhypotheses[i][1] == 0) &&
                  (scrubhypotheses[i][2] == 0))) {
              hypotheses[j][0] = scrubhypotheses[i][0];
              hypotheses[j][1] = scrubhypotheses[i][1];
              hypotheses[j][2] = scrubhypotheses[i][2];
              hypotheses[j][3] = scrubhypotheses[i][3];
              j++;
              scrubhypotheses[i][0] = 0;
              scrubhypotheses[i][1] = 0;
              scrubhypotheses[i][2] = 0;
              scrubhypotheses[i][3] = 0;
            }
          }
          hypothesescount = j;
        }
        printf("\n\nHYPOTHESES AFTER SCRUBBING:\n");
        for (i = 0; i < 10; i++) {
          printf("%d %d %d %d\n", hypotheses[i][0], hypotheses[i][1],
                 hypotheses[i][2], hypotheses[i][3]);
        }
        j = 30;
        for (i = 0; i < hypothesescount; i++) {
          j--;
          hypotheses[i][0] = atoms[j][0];
        }
        for (k = 30 - 1; k > hypothesescount - 1; k--) {
          atoms[k][0] = atoms[k - hypothesescount][0];
          atoms[k][1] = atoms[k - hypothesescount][1];
          atoms[k][2] = atoms[k - hypothesescount][2];
          atoms[k][3] = atoms[k - hypothesescount][3];
        }
        for (k = 0; k < hypothesescount; k++) {
          atoms[k][0] = hypotheses[k][0];
          atoms[k][1] = hypotheses[k][1];
          atoms[k][2] = hypotheses[k][2];
          atoms[k][3] = hypotheses[k][3];
        }
      }
    }
    solution = 0;
    plan = 0;
    lengthofoutput = 0;
    valueplan = 1000 + 1;
    for (k = 10 - 1; k >= 0; k--) {
      if (inputarray[k] != 0) {
        solution = inputarray[k];
        break;
      }
    }
    printf("____INPUT ARRAY: ");
    for (i = 0; i < 10; i++) {
      printf("%d ", inputarray[i]);
    }
    printf("\n");
    printf("____SOLUTION FOUND: %d\n", solution);
    if (solution == 0) {
      plan = 0;
    } else {
      for (k = 0; k < 10; k++) {
        for (i = 0; i < 30; i++) {
          if ((atoms[i][1] == solution) && (atoms[i][3] <= valueplan)) {
            plan = atoms[i][2];
            valueplan = atoms[i][3];
            printf("solution: %d, plan for solution: %d, super-atom: %d, "
                   "value: %d\n",
                   solution, plan, atoms[i][0], valueplan);
          }
        }
        printf("____SOLUTION FOUND LATER: %d\n", solution);
        printf("plan___ was found: %d\n", plan);
        if (plan == 0) {
          if (solution < 100) {
            break;
          } else {
            for (j = 0; j < 30; j++) {
              if (atoms[j][0] == solution) {
                if (atoms[j][2] != 0) {
                  solution = atoms[j][2];
                  break;
                } else {
                  solution = atoms[j][1];
                  break;
                }
                printf("replacement solution: %d, replacement plan for "
                       "solution: %d, super-atom: %d, value: %d\n",
                       solution, plan, atoms[i][0], valueplan);
              }
            }
          }
        }
      }
    }
    printf("plan: %d\n", plan);
    for (i = 0; i < 10; i++) {
      outputarray[i] = 0;
    }
    outputarray[0] = plan;
    i = 0;
    for (;;) {
      if ((outputarray[i] < 100) || (outputarray[i] == 0)) {
        i++;
        if (i < 10) {
          continue;
        } else {
          break;
        }
      } else {
        for (j = 10 - 1; j > i; j--) {
          outputarray[j] = outputarray[j - 1];
        }
        foundatom = 0;
        for (k = 0; k < 30; k++) {
          if (atoms[k][0] == outputarray[i]) {
            if ((atoms[k][0] == atoms[k][1]) || (atoms[k][0] == atoms[k][2])) {
              outputarray[i] = 0;
              i++;
            } else {
              foundatom = 1;
              outputarray[i] = atoms[k][1];
              outputarray[i + 1] = atoms[k][2];
              break;
            }
          }
        }
        if (foundatom == 0) {
          outputarray[i] = 0;
          i++;
        }
      }
    }
    printf("PLAN FOR SOLUTION FOUND: ");
    for (i = 0; i < 10; i++) {
      printf("%d ", outputarray[i]);
    }
    printf("\n");
    printf("\n\nFINAL ATOMS:\n");
    for (i = 0; i < 30; i++) {
      printf("%d %d %d %d\n", atoms[i][0], atoms[i][1], atoms[i][2],
             atoms[i][3]);
    }
    for (i = 0; i < 10; i++) {
      inputarray[i] = extensioninput[i];
    }
    for (i = 0; i < 10; i++) {
      printf("%d ", inputarray[i]);
    }
    printf("\n");
    if (plan != 0) {
      for (i = 10 - 1; i >= 0; i--) {
        if (outputarray[i] != 0) {
          lengthofoutput = i + 1;
          break;
        }
      }
      printf("length of output was: %d\n", lengthofoutput);
      for (i = 0; i < 10 - lengthofoutput; i++) {
        inputarray[i] = inputarray[i + lengthofoutput];
      }
      j = 0;
      for (i = 10 - lengthofoutput; i < 10; i++) {
        inputarray[i] = outputarray[j];
        j++;
      }
    }
    printf("Shifted input array: \n");
    for (i = 0; i < 10; i++) {
      printf("%d ", inputarray[i]);
    }
    printf("\n");
    for (i = 0; i < 10; i++) {
      extensioninput[i] = inputarray[i];
    }
  }
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
push   %r15
push   %r14
push   %r12
push   %rbx
sub    $0x730,%rsp
movl   $0x0,-0x24(%rbp)
lea    -0x50(%rbp),%rdi
lea    0x4e9c(%rip),%rsi
mov    $0x28,%edx
call   1050 <memcpy@plt>
lea    -0xe0(%rbp),%rdi
xor    %esi,%esi
mov    $0x28,%edx
call   1040 <memset@plt>
movl   $0x0,-0x6b4(%rbp)
movl   $0x0,-0x6b8(%rbp)
movl   $0x0,-0x6bc(%rbp)
movl   $0x0,-0x6c0(%rbp)
movl   $0x0,-0x6c4(%rbp)
movl   $0x0,-0x6c8(%rbp)
movl   $0x0,-0x6cc(%rbp)
movl   $0x0,-0x6d0(%rbp)
movl   $0x0,-0x6d4(%rbp)
movl   $0x0,-0x6d8(%rbp)
movl   $0x0,-0x6dc(%rbp)
movl   $0x0,-0x6e0(%rbp)
movl   $0x0,-0x6e4(%rbp)
movl   $0x0,-0x6e8(%rbp)
movl   $0x0,-0x6ec(%rbp)
movl   $0x0,-0x6f0(%rbp)
movl   $0x0,-0x6f4(%rbp)
movl   $0x0,-0x6f8(%rbp)
movl   $0x0,-0x6fc(%rbp)
movl   $0x0,-0x700(%rbp)
movl   $0x0,-0x704(%rbp)
movl   $0x0,-0x708(%rbp)
movl   $0x0,-0x70c(%rbp)
movl   $0x0,-0x710(%rbp)
movl   $0x0,-0x6f4(%rbp)
cmpl   $0x1e,-0x6f4(%rbp)
jge    131f <main+0x1cf>
mov    -0x6f4(%rbp),%ecx
add    $0x64,%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
movl   $0x1,-0x6f8(%rbp)
cmpl   $0x4,-0x6f8(%rbp)
jge    1306 <main+0x1b6>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movslq -0x6f8(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    12c2 <main+0x172>
jmp    130b <main+0x1bb>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    128b <main+0x13b>
movl   $0x2,-0x2bc(%rbp)
movl   $0x3,-0x2b8(%rbp)
movl   $0x64,-0x2b4(%rbp)
movl   $0x1,-0x2ac(%rbp)
movl   $0x2,-0x2a8(%rbp)
movl   $0x64,-0x2a4(%rbp)
movl   $0x3,-0x29c(%rbp)
movl   $0x4,-0x298(%rbp)
movl   $0xffffff9c,-0x294(%rbp)
ff ff ff
movl   $0x4,-0x28c(%rbp)
movl   $0x5,-0x288(%rbp)
movl   $0xffffff38,-0x284(%rbp)
ff ff ff
movl   $0x5,-0x27c(%rbp)
movl   $0x6,-0x278(%rbp)
movl   $0xffffff9c,-0x274(%rbp)
ff ff ff
movl   $0x5,-0x26c(%rbp)
movl   $0x3,-0x268(%rbp)
movl   $0x64,-0x264(%rbp)
movl   $0xb,-0x25c(%rbp)
movl   $0xc,-0x258(%rbp)
movl   $0xd,-0x254(%rbp)
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    143d <main+0x2ed>
movslq -0x6f4(%rbp),%rax
movl   $0x0,-0x80(%rbp,%rax,4)
movslq -0x6f4(%rbp),%rax
movl   $0x0,-0xb0(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    13fb <main+0x2ab>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    1497 <main+0x347>
movslq -0x6f4(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0x80(%rbp,%rax,4)
movslq -0x6f4(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0xb0(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    1447 <main+0x2f7>
movl   $0x0,-0x6f0(%rbp)
cmpl   $0x3,-0x6f0(%rbp)
jge    52db <main+0x418b>
movl   $0x0,-0x700(%rbp)
cmpl   $0x3,-0x700(%rbp)
jge    4975 <main+0x3825>
cmpl   $0x0,-0x700(%rbp)
jne    153e <main+0x3ee>
cmpl   $0x2,-0x6f0(%rbp)
jge    153e <main+0x3ee>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    1539 <main+0x3e9>
movslq -0x6f4(%rbp),%rax
mov    -0x80(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0x50(%rbp,%rax,4)
movslq -0x6f4(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0xb0(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    14e9 <main+0x399>
jmp    15ec <main+0x49c>
cmpl   $0x0,-0x700(%rbp)
jle    15a1 <main+0x451>
cmpl   $0x2,-0x6f0(%rbp)
jge    15a1 <main+0x451>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    159c <main+0x44c>
movslq -0x6f4(%rbp),%rax
mov    -0xb0(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0x50(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    1562 <main+0x412>
jmp    15e7 <main+0x497>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    15e2 <main+0x492>
movslq -0x6f4(%rbp),%rax
mov    -0x80(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0x50(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    15ab <main+0x45b>
jmp    15e7 <main+0x497>
jmp    15ec <main+0x49c>
movl   $0x0,-0x708(%rbp)
cmpl   $0x9,-0x708(%rbp)
jge    495c <main+0x380c>
movl   $0x0,-0x6c4(%rbp)
movl   $0x3e9,-0x6c8(%rbp)
movl   $0x0,-0x6d4(%rbp)
movl   $0x0,-0x6d8(%rbp)
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    1814 <main+0x6c4>
movl   $0x0,-0x6f8(%rbp)
cmpl   $0x1e,-0x6f8(%rbp)
jge    17fb <main+0x6ab>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
movslq -0x6f4(%rbp),%rcx
cmp    -0x50(%rbp,%rcx,4),%eax
jne    16b0 <main+0x560>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
mov    -0x6f4(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmp    -0x50(%rbp,%rcx,4),%eax
je     1707 <main+0x5b7>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
mov    -0x6f4(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmp    -0x50(%rbp,%rcx,4),%eax
jne    17e2 <main+0x692>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
movslq -0x6f4(%rbp),%rcx
cmp    -0x50(%rbp,%rcx,4),%eax
jne    17e2 <main+0x692>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0x0,0x4(%rax)
jne    1745 <main+0x5f5>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0x0,0x8(%rax)
je     17e2 <main+0x692>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%eax
cmp    -0x6c8(%rbp),%eax
jg     17e2 <main+0x692>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%eax
mov    %eax,-0x6c4(%rbp)
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%eax
mov    %eax,-0x6c8(%rbp)
movslq -0x6f4(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%eax
mov    %eax,-0x6cc(%rbp)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
cltq
mov    -0x50(%rbp,%rax,4),%eax
mov    %eax,-0x6d0(%rbp)
mov    -0x6f8(%rbp),%eax
mov    %eax,-0x6d4(%rbp)
mov    -0x6f4(%rbp),%eax
mov    %eax,-0x6d8(%rbp)
jmp    17e7 <main+0x697>
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    164c <main+0x4fc>
jmp    1800 <main+0x6b0>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    1635 <main+0x4e5>
cmpl   $0x3e8,-0x6c8(%rbp)
jle    1a45 <main+0x8f5>
mov    -0xf0(%rbp),%eax
mov    %eax,-0x6b4(%rbp)
movl   $0x1d,-0x6fc(%rbp)
cmpl   $0x0,-0x6fc(%rbp)
jle    192d <main+0x7dd>
mov    -0x6fc(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
mov    -0x6fc(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
mov    -0x6fc(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
mov    -0x6fc(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6fc(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x6fc(%rbp)
jmp    183a <main+0x6ea>
movl   $0x0,-0x6d8(%rbp)
movl   $0x9,-0x6fc(%rbp)
cmpl   $0x0,-0x6fc(%rbp)
jle    198d <main+0x83d>
movslq -0x6fc(%rbp),%rax
cmpl   $0x0,-0x50(%rbp,%rax,4)
je     1974 <main+0x824>
mov    -0x6fc(%rbp),%eax
sub    $0x1,%eax
mov    %eax,-0x6d8(%rbp)
jmp    198d <main+0x83d>
jmp    1979 <main+0x829>
mov    -0x6fc(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x6fc(%rbp)
jmp    1941 <main+0x7f1>
movslq -0x6d8(%rbp),%rax
cmpl   $0x0,-0x50(%rbp,%rax,4)
jne    19ca <main+0x87a>
mov    -0x6d8(%rbp),%eax
add    $0x1,%eax
cltq
cmpl   $0x0,-0x50(%rbp,%rax,4)
jne    19ca <main+0x87a>
lea    0x467c(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
xor    %edi,%edi
call   1070 <exit@plt>
mov    -0x6b4(%rbp),%eax
mov    %eax,-0x2c0(%rbp)
movslq -0x6d8(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%eax
mov    %eax,-0x2bc(%rbp)
mov    -0x6d8(%rbp),%eax
add    $0x1,%eax
cltq
mov    -0x50(%rbp,%rax,4),%eax
mov    %eax,-0x2b8(%rbp)
movl   $0xffffff9c,-0x2b4(%rbp)
ff ff ff
mov    -0x2c0(%rbp),%eax
mov    %eax,-0x6c4(%rbp)
mov    -0x2b4(%rbp),%eax
mov    %eax,-0x6c8(%rbp)
mov    -0x2bc(%rbp),%eax
mov    %eax,-0x6cc(%rbp)
mov    -0x2b8(%rbp),%eax
mov    %eax,-0x6d0(%rbp)
movl   $0x0,-0x6d4(%rbp)
jmp    1b96 <main+0xa46>
mov    -0x6d4(%rbp),%eax
mov    %eax,-0x6fc(%rbp)
cmpl   $0x0,-0x6fc(%rbp)
jle    1b44 <main+0x9f4>
mov    -0x6fc(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
mov    -0x6fc(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
mov    -0x6fc(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
mov    -0x6fc(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6fc(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x6fc(%rbp)
jmp    1a51 <main+0x901>
mov    -0x6c4(%rbp),%eax
mov    %eax,-0x2c0(%rbp)
mov    -0x6cc(%rbp),%eax
mov    %eax,-0x2bc(%rbp)
mov    -0x6d0(%rbp),%eax
mov    %eax,-0x2b8(%rbp)
mov    -0x6c8(%rbp),%eax
add    $0xffffff9c,%eax
mov    %eax,-0x2b4(%rbp)
cmpl   $0xfffffc18,-0x2b4(%rbp)
fc ff ff
jge    1b91 <main+0xa41>
movl   $0xfffffc18,-0x2b4(%rbp)
fc ff ff
jmp    1b96 <main+0xa46>
mov    -0x6d8(%rbp),%eax
mov    %eax,-0x6fc(%rbp)
cmpl   $0x9,-0x6fc(%rbp)
jge    1bdd <main+0xa8d>
mov    -0x6fc(%rbp),%eax
add    $0x1,%eax
cltq
mov    -0x50(%rbp,%rax,4),%ecx
movslq -0x6fc(%rbp),%rax
mov    %ecx,-0x50(%rbp,%rax,4)
mov    -0x6fc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6fc(%rbp)
jmp    1ba2 <main+0xa52>
mov    -0x6c4(%rbp),%ecx
movslq -0x6d8(%rbp),%rax
mov    %ecx,-0x50(%rbp,%rax,4)
movl   $0x0,-0x2c(%rbp)
lea    0x445a(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0x1e,-0x6f4(%rbp)
jge    1d1f <main+0xbcf>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
movslq %eax,%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    (%rax),%r9d
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
movslq %eax,%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0x4(%rax),%r11d
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
movslq %eax,%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0x8(%rax),%r10d
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
movslq %eax,%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0xc(%rax),%eax
lea    0x4378(%rip),%rdi
mov    %r11d,(%rsp)
mov    %r10d,0x8(%rsp)
mov    %eax,0x10(%rsp)
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6f4(%rbp),%eax
add    $0x2,%eax
mov    %eax,-0x6f4(%rbp)
jmp    1c0d <main+0xabd>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    1e6a <main+0xd1a>
movslq -0x6f4(%rbp),%rax
movq   $0x0,-0x600(%rbp,%rax,8)
movslq -0x6f4(%rbp),%rax
movq   $0x0,-0x660(%rbp,%rax,8)
movslq -0x6f4(%rbp),%rax
movq   $0x0,-0x6b0(%rbp,%rax,8)
movl   $0x0,-0x6f8(%rbp)
cmpl   $0x5,-0x6f8(%rbp)
jge    1de0 <main+0xc90>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movslq -0x6f8(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movslq -0x6f8(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    1d79 <main+0xc29>
movl   $0x0,-0x6fc(%rbp)
cmpl   $0x4,-0x6fc(%rbp)
jge    1e51 <main+0xd01>
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movslq -0x6fc(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movslq -0x6fc(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x6fc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6fc(%rbp)
jmp    1dea <main+0xc9a>
jmp    1e56 <main+0xd06>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    1d29 <main+0xbd9>
movl   $0x0,-0x6f8(%rbp)
movl   $0x1,-0x6f4(%rbp)
cmpl   $0x1e,-0x6f4(%rbp)
jge    250c <main+0x13bc>
cmpl   $0xa,-0x6f8(%rbp)
jne    1e9d <main+0xd4d>
jmp    250c <main+0x13bc>
mov    -0x2bc(%rbp),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x4(%rcx),%eax
jne    2030 <main+0xee0>
mov    -0x2b8(%rbp),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x8(%rcx),%eax
je     2030 <main+0xee0>
cmpl   $0x0,-0x2bc(%rbp)
je     2030 <main+0xee0>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6f4(%rbp),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x10(%rax)
mov    -0x2b8(%rbp),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    24f3 <main+0x13a3>
mov    -0x2b8(%rbp),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x4(%rcx),%eax
jne    21c3 <main+0x1073>
mov    -0x2bc(%rbp),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x8(%rcx),%eax
je     21c3 <main+0x1073>
cmpl   $0x0,-0x2b8(%rbp)
je     21c3 <main+0x1073>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6f4(%rbp),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x10(%rax)
mov    -0x2bc(%rbp),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    24ee <main+0x139e>
mov    -0x2bc(%rbp),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x4(%rcx),%eax
je     2356 <main+0x1206>
mov    -0x2b8(%rbp),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x8(%rcx),%eax
jne    2356 <main+0x1206>
cmpl   $0x0,-0x2b8(%rbp)
je     2356 <main+0x1206>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6f4(%rbp),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x10(%rax)
mov    -0x2bc(%rbp),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    24e9 <main+0x1399>
mov    -0x2b8(%rbp),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x4(%rcx),%eax
je     24e4 <main+0x1394>
mov    -0x2bc(%rbp),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x8(%rcx),%eax
jne    24e4 <main+0x1394>
cmpl   $0x0,-0x2bc(%rbp)
je     24e4 <main+0x1394>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6f4(%rbp),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x10(%rax)
mov    -0x2b8(%rbp),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    24e9 <main+0x1399>
jmp    24ee <main+0x139e>
jmp    24f3 <main+0x13a3>
jmp    24f8 <main+0x13a8>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    1e7e <main+0xd2e>
movl   $0x0,-0x6f8(%rbp)
cmpl   $0xa,-0x6f8(%rbp)
jge    2b27 <main+0x19d7>
movl   $0x0,-0x5ac(%rbp)
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
cmp    -0x2bc(%rbp),%eax
jne    2575 <main+0x1425>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
cmp    -0x2b8(%rbp),%eax
je     264d <main+0x14fd>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
cmp    -0x2bc(%rbp),%eax
jne    25bd <main+0x146d>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
cmp    -0x2b8(%rbp),%eax
je     264d <main+0x14fd>
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
cmp    -0x2bc(%rbp),%eax
jne    2605 <main+0x14b5>
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
cmp    -0x2b8(%rbp),%eax
je     264d <main+0x14fd>
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
cmp    -0x2bc(%rbp),%eax
jne    2763 <main+0x1613>
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
cmp    -0x2b8(%rbp),%eax
jne    2763 <main+0x1613>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x4(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x8(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0xc(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x10(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x4(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x8(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0xc(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x10(%rax)
movl   $0x1,-0x6f4(%rbp)
cmpl   $0x1e,-0x6f4(%rbp)
jge    2b0e <main+0x19be>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x4(%rcx),%eax
jne    27e6 <main+0x1696>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x8(%rcx),%eax
je     2852 <main+0x1702>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x4(%rcx),%eax
jne    2af5 <main+0x19a5>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x8(%rcx),%eax
jne    2af5 <main+0x19a5>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0x8(%rax)
jne    2890 <main+0x1740>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0x4(%rax)
je     2af5 <main+0x19a5>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6f4(%rbp),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
mov    %ecx,0x10(%rax)
movl   $0x0,-0x6fc(%rbp)
mov    -0x6fc(%rbp),%eax
cmp    -0x6f8(%rbp),%eax
jge    2af0 <main+0x19a0>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    (%rax),%eax
movslq -0x6fc(%rbp),%rdx
lea    -0x390(%rbp),%rcx
imul   $0x14,%rdx,%rdx
add    %rdx,%rcx
cmp    (%rcx),%eax
jne    2ad7 <main+0x1987>
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x4(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x8(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0xc(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x10(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x4(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x8(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0xc(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
movl   $0x0,0x10(%rax)
jmp    2af0 <main+0x19a0>
jmp    2adc <main+0x198c>
mov    -0x6fc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6fc(%rbp)
jmp    2976 <main+0x1826>
jmp    2b0e <main+0x19be>
jmp    2afa <main+0x19aa>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    276d <main+0x161d>
jmp    2b13 <main+0x19c3>
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    2516 <main+0x13c6>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    2ffd <main+0x1ead>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
jne    2b7a <main+0x1a2a>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
je     2fe4 <main+0x1e94>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jl     2bb8 <main+0x1a68>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    2bf6 <main+0x1aa6>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    2c84 <main+0x1b34>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    2c84 <main+0x1b34>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cvtsi2sdl 0xc(%rax),%xmm1
movsd  0x33f0(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cvtsi2sdl 0xc(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1060 <sqrt@plt>
cvttsd2si %xmm0,%rcx
movslq -0x6f4(%rbp),%rax
mov    %rcx,-0x600(%rbp,%rax,8)
ff
movslq -0x6f4(%rbp),%rax
cmpq   $0x3e8,-0x600(%rbp,%rax,8)
jle    2c7f <main+0x1b2f>
movslq -0x6f4(%rbp),%rax
movq   $0x3e8,-0x600(%rbp,%rax,8)
jmp    2d21 <main+0x1bd1>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cvtsi2sdl 0xc(%rax),%xmm1
movsd  0x335a(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cvtsi2sdl 0xc(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1060 <sqrt@plt>
movaps %xmm0,%xmm1
movsd  0x3328(%rip),%xmm0
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%rcx
movslq -0x6f4(%rbp),%rax
mov    %rcx,-0x600(%rbp,%rax,8)
ff
movslq -0x6f4(%rbp),%rax
cmpq   $0xfffffffffffffc18,-0x600(%rbp,%rax,8)
ff 18 fc ff ff
jge    2d1c <main+0x1bcc>
movslq -0x6f4(%rbp),%rax
movq   $0xfffffffffffffc18,-0x600(%rbp,%rax,8)
ff 18 fc ff ff
jmp    2d21 <main+0x1bd1>
cmpl   $0x0,-0x2b4(%rbp)
jl     2d4d <main+0x1bfd>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    2d79 <main+0x1c29>
cmpl   $0x0,-0x2b4(%rbp)
jge    2df5 <main+0x1ca5>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    2df5 <main+0x1ca5>
cvtsi2sdl -0x2b4(%rbp),%xmm1
ff
movsd  0x327f(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cvtsi2sdl 0xc(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1060 <sqrt@plt>
cvttsd2si %xmm0,%rcx
movslq -0x6f4(%rbp),%rax
mov    %rcx,-0x6b0(%rbp,%rax,8)
ff
movslq -0x6f4(%rbp),%rax
cmpq   $0x3e8,-0x6b0(%rbp,%rax,8)
jle    2df0 <main+0x1ca0>
movslq -0x6f4(%rbp),%rax
movq   $0x3e8,-0x6b0(%rbp,%rax,8)
jmp    2e80 <main+0x1d30>
cvtsi2sdl -0x2b4(%rbp),%xmm1
ff
movsd  0x31fb(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cvtsi2sdl 0xc(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1060 <sqrt@plt>
movaps %xmm0,%xmm1
movsd  0x31c9(%rip),%xmm0
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%rcx
movslq -0x6f4(%rbp),%rax
mov    %rcx,-0x6b0(%rbp,%rax,8)
ff
movslq -0x6f4(%rbp),%rax
cmpq   $0xfffffffffffffc18,-0x6b0(%rbp,%rax,8)
ff 18 fc ff ff
jge    2e7b <main+0x1d2b>
movslq -0x6f4(%rbp),%rax
movq   $0xfffffffffffffc18,-0x6b0(%rbp,%rax,8)
ff 18 fc ff ff
jmp    2e80 <main+0x1d30>
cmpl   $0x0,-0x2b4(%rbp)
jl     2eac <main+0x1d5c>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    2ed8 <main+0x1d88>
cmpl   $0x0,-0x2b4(%rbp)
jge    2f54 <main+0x1e04>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    2f54 <main+0x1e04>
cvtsi2sdl -0x2b4(%rbp),%xmm1
ff
movsd  0x3120(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cvtsi2sdl 0xc(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1060 <sqrt@plt>
cvttsd2si %xmm0,%rcx
movslq -0x6f4(%rbp),%rax
mov    %rcx,-0x660(%rbp,%rax,8)
ff
movslq -0x6f4(%rbp),%rax
cmpq   $0x3e8,-0x660(%rbp,%rax,8)
jle    2f4f <main+0x1dff>
movslq -0x6f4(%rbp),%rax
movq   $0x3e8,-0x660(%rbp,%rax,8)
jmp    2fdf <main+0x1e8f>
cvtsi2sdl -0x2b4(%rbp),%xmm1
ff
movsd  0x309c(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cvtsi2sdl 0xc(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1060 <sqrt@plt>
movaps %xmm0,%xmm1
movsd  0x306a(%rip),%xmm0
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%rcx
movslq -0x6f4(%rbp),%rax
mov    %rcx,-0x660(%rbp,%rax,8)
ff
movslq -0x6f4(%rbp),%rax
cmpq   $0xfffffffffffffc18,-0x660(%rbp,%rax,8)
ff 18 fc ff ff
jge    2fda <main+0x1e8a>
movslq -0x6f4(%rbp),%rax
movq   $0xfffffffffffffc18,-0x660(%rbp,%rax,8)
ff 18 fc ff ff
jmp    2fdf <main+0x1e8f>
jmp    2fe4 <main+0x1e94>
jmp    2fe9 <main+0x1e99>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    2b31 <main+0x19e1>
lea    0x3085(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0x1e,-0x6f4(%rbp)
jge    3127 <main+0x1fd7>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
movslq %eax,%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    (%rax),%r9d
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
movslq %eax,%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0x4(%rax),%r11d
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
movslq %eax,%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0x8(%rax),%r10d
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
movslq %eax,%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0xc(%rax),%eax
lea    0x2f70(%rip),%rdi
mov    %r11d,(%rsp)
mov    %r10d,0x8(%rsp)
mov    %eax,0x10(%rsp)
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6f4(%rbp),%eax
add    $0x2,%eax
mov    %eax,-0x6f4(%rbp)
jmp    3015 <main+0x1ec5>
movq   $0x0,-0x608(%rbp)
movq   $0x0,-0x610(%rbp)
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    31d8 <main+0x2088>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
jne    3190 <main+0x2040>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
je     31bf <main+0x206f>
mov    -0x608(%rbp),%rax
movslq -0x6f4(%rbp),%rcx
add    -0x600(%rbp,%rcx,8),%rax
ff
mov    %rax,-0x608(%rbp)
mov    -0x610(%rbp),%rax
add    $0x1,%rax
mov    %rax,-0x610(%rbp)
jmp    31c4 <main+0x2074>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    3147 <main+0x1ff7>
cmpq   $0x0,-0x610(%rbp)
jle    3264 <main+0x2114>
mov    -0x608(%rbp),%rax
cqto
idivq  -0x610(%rbp)
mov    %rax,-0x608(%rbp)
mov    -0x608(%rbp),%rax
movslq -0x2b4(%rbp),%rcx
add    %rcx,%rax
mov    %rax,-0x608(%rbp)
cmpq   $0xfffffffffffffc18,-0x608(%rbp)
18 fc ff ff
jge    3236 <main+0x20e6>
movq   $0xfffffffffffffc18,-0x608(%rbp)
18 fc ff ff
jmp    3257 <main+0x2107>
cmpq   $0x3e8,-0x608(%rbp)
jle    3252 <main+0x2102>
movq   $0x3e8,-0x608(%rbp)
jmp    3257 <main+0x2107>
mov    -0x608(%rbp),%rax
mov    %eax,-0x2b4(%rbp)
lea    0x2e33(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f8(%rbp)
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    32fe <main+0x21ae>
movslq -0x6f4(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%esi
lea    0x2e10(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
cmpl   $0xb,-0x6f8(%rbp)
jne    32d6 <main+0x2186>
lea    0x3272(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f8(%rbp)
jmp    32e5 <main+0x2195>
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    32ea <main+0x219a>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    3286 <main+0x2136>
lea    0x2db6(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
cmpl   $0x1,-0x710(%rbp)
jne    332c <main+0x21dc>
lea    0x2db2(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
jmp    333a <main+0x21ea>
lea    0x2da1(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
cmpl   $0x0,-0x2b4(%rbp)
jge    33bf <main+0x226f>
mov    -0x2c0(%rbp),%esi
mov    -0x2bc(%rbp),%edx
mov    -0x2b8(%rbp),%ecx
mov    -0x2b4(%rbp),%r8d
mov    -0x6f0(%rbp),%r9d
add    $0x1,%r9d
mov    -0x700(%rbp),%r11d
add    $0x1,%r11d
mov    -0x708(%rbp),%r10d
add    $0x1,%r10d
mov    -0x6d8(%rbp),%eax
lea    0x2d48(%rip),%rdi
movl   $0x3,(%rsp)
mov    %r11d,0x8(%rsp)
movl   $0x3,0x10(%rsp)
mov    %r10d,0x18(%rsp)
movl   $0x9,0x20(%rsp)
mov    %eax,0x28(%rsp)
mov    $0x0,%al
call   1030 <printf@plt>
jmp    3432 <main+0x22e2>
mov    -0x2c0(%rbp),%esi
mov    -0x2bc(%rbp),%edx
mov    -0x2b8(%rbp),%ecx
mov    -0x2b4(%rbp),%r8d
mov    -0x6f0(%rbp),%r9d
add    $0x1,%r9d
mov    -0x700(%rbp),%r11d
add    $0x1,%r11d
mov    -0x708(%rbp),%r10d
add    $0x1,%r10d
mov    -0x6d8(%rbp),%eax
lea    0x2d51(%rip),%rdi
movl   $0x3,(%rsp)
mov    %r11d,0x8(%rsp)
movl   $0x3,0x10(%rsp)
mov    %r10d,0x18(%rsp)
movl   $0x9,0x20(%rsp)
mov    %eax,0x28(%rsp)
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    3cbe <main+0x2b6e>
movq   $0x0,-0x608(%rbp)
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
jne    3490 <main+0x2340>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
je     3ca5 <main+0x2b55>
cmpl   $0x0,-0x6f4(%rbp)
jne    34a7 <main+0x2357>
movl   $0x0,-0x70c(%rbp)
cmpl   $0x14,-0x70c(%rbp)
jge    3bec <main+0x2a9c>
mov    -0x70c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x70c(%rbp)
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    3647 <main+0x24f7>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    3647 <main+0x24f7>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x390(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
movslq -0x6f4(%rbp),%rdi
lea    -0x390(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x10(%rax),%r9d
movslq -0x6f4(%rbp),%rax
mov    -0x660(%rbp,%rax,8),%r12
ff
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    (%rax),%r15d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x4(%rax),%r14d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x8(%rax),%ebx
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r11d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x10(%rax),%r10d
movslq -0x6f4(%rbp),%rax
mov    -0x6b0(%rbp,%rax,8),%rax
ff
lea    0x2bbe(%rip),%rdi
mov    %r12,(%rsp)
mov    %r15d,0x8(%rsp)
mov    %r14d,0x10(%rsp)
mov    %ebx,0x18(%rsp)
mov    %r11d,0x20(%rsp)
mov    %r10d,0x28(%rsp)
mov    %rax,0x30(%rsp)
mov    $0x0,%al
call   1030 <printf@plt>
jmp    3a9a <main+0x294a>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jl     37cb <main+0x267b>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    37cb <main+0x267b>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x390(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
movslq -0x6f4(%rbp),%rdi
lea    -0x390(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x10(%rax),%r9d
movslq -0x6f4(%rbp),%rax
mov    -0x660(%rbp,%rax,8),%r12
ff
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    (%rax),%r15d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x4(%rax),%r14d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x8(%rax),%ebx
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r11d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x10(%rax),%r10d
movslq -0x6f4(%rbp),%rax
mov    -0x6b0(%rbp,%rax,8),%rax
ff
lea    0x2aae(%rip),%rdi
mov    %r12,(%rsp)
mov    %r15d,0x8(%rsp)
mov    %r14d,0x10(%rsp)
mov    %ebx,0x18(%rsp)
mov    %r11d,0x20(%rsp)
mov    %r10d,0x28(%rsp)
mov    %rax,0x30(%rsp)
mov    $0x0,%al
call   1030 <printf@plt>
jmp    3a95 <main+0x2945>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jge    394f <main+0x27ff>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,0xc(%rax)
jl     394f <main+0x27ff>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x390(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
movslq -0x6f4(%rbp),%rdi
lea    -0x390(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x10(%rax),%r9d
movslq -0x6f4(%rbp),%rax
mov    -0x660(%rbp,%rax,8),%r12
ff
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    (%rax),%r15d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x4(%rax),%r14d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x8(%rax),%ebx
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r11d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x10(%rax),%r10d
movslq -0x6f4(%rbp),%rax
mov    -0x6b0(%rbp,%rax,8),%rax
ff
lea    0x299e(%rip),%rdi
mov    %r12,(%rsp)
mov    %r15d,0x8(%rsp)
mov    %r14d,0x10(%rsp)
mov    %ebx,0x18(%rsp)
mov    %r11d,0x20(%rsp)
mov    %r10d,0x28(%rsp)
mov    %rax,0x30(%rsp)
mov    $0x0,%al
call   1030 <printf@plt>
jmp    3a90 <main+0x2940>
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x390(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
movslq -0x6f4(%rbp),%rdi
lea    -0x390(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x10(%rax),%r9d
movslq -0x6f4(%rbp),%rax
mov    -0x660(%rbp,%rax,8),%r12
ff
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    (%rax),%r15d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x4(%rax),%r14d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x8(%rax),%ebx
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r11d
movslq -0x6f4(%rbp),%rdi
lea    -0x460(%rbp),%rax
imul   $0x14,%rdi,%rdi
add    %rdi,%rax
mov    0x10(%rax),%r10d
movslq -0x6f4(%rbp),%rax
mov    -0x6b0(%rbp,%rax,8),%rax
ff
lea    0x28cc(%rip),%rdi
mov    %r12,(%rsp)
mov    %r15d,0x8(%rsp)
mov    %r14d,0x10(%rsp)
mov    %ebx,0x18(%rsp)
mov    %r11d,0x20(%rsp)
mov    %r10d,0x28(%rsp)
mov    %rax,0x30(%rsp)
mov    $0x0,%al
call   1030 <printf@plt>
jmp    3a95 <main+0x2945>
jmp    3a9a <main+0x294a>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
je     3bd9 <main+0x2a89>
lea    0x28e9(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0xc(%rax),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x390(%rbp),%rcx
imul   $0x14,%rdx,%rdx
add    %rdx,%rcx
imul   0xc(%rcx),%eax
cmp    $0x0,%eax
jge    3b0d <main+0x29bd>
cmpl   $0x0,-0x2b4(%rbp)
jg     3b54 <main+0x2a04>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0xc(%rax),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x390(%rbp),%rcx
imul   $0x14,%rdx,%rdx
add    %rdx,%rcx
imul   0xc(%rcx),%eax
cmp    $0x0,%eax
jle    3b67 <main+0x2a17>
cmpl   $0x0,-0x2b4(%rbp)
jge    3b67 <main+0x2a17>
lea    0x285b(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
jmp    3bd4 <main+0x2a84>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0xc(%rax),%eax
movslq -0x6f4(%rbp),%rdx
lea    -0x390(%rbp),%rcx
imul   $0x14,%rdx,%rdx
add    %rdx,%rcx
imul   0xc(%rcx),%eax
cmp    $0x0,%eax
je     3bae <main+0x2a5e>
cmpl   $0x0,-0x2b4(%rbp)
jne    3bc1 <main+0x2a71>
lea    0x2804(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
jmp    3bcf <main+0x2a7f>
lea    0x27f4(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
jmp    3bd4 <main+0x2a84>
jmp    3be7 <main+0x2a97>
lea    0x27df(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
jmp    3bec <main+0x2a9c>
movslq -0x6f4(%rbp),%rax
mov    -0x660(%rbp,%rax,8),%rax
ff
movslq -0x6f4(%rbp),%rdx
lea    -0x390(%rbp),%rcx
imul   $0x14,%rdx,%rdx
add    %rdx,%rcx
movslq 0x10(%rcx),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
movslq 0xc(%rcx),%rcx
add    %rcx,%rax
mov    %rax,-0x608(%rbp)
cmpq   $0xfffffffffffffc18,-0x608(%rbp)
18 fc ff ff
jge    3c51 <main+0x2b01>
movq   $0xfffffffffffffc18,-0x608(%rbp)
18 fc ff ff
jmp    3c72 <main+0x2b22>
cmpq   $0x3e8,-0x608(%rbp)
jle    3c6d <main+0x2b1d>
movq   $0x3e8,-0x608(%rbp)
jmp    3c72 <main+0x2b22>
mov    -0x608(%rbp),%rax
mov    %eax,%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x390(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
movslq 0x10(%rax),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
jmp    3caa <main+0x2b5a>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    343c <main+0x22ec>
movl   $0x0,-0x5a4(%rbp)
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    3eea <main+0x2d9a>
movq   $0x0,-0x608(%rbp)
movslq -0x6f4(%rbp),%rcx
lea    -0x390(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
je     3ed1 <main+0x2d81>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
je     3de4 <main+0x2c94>
movslq -0x6f4(%rbp),%rax
mov    -0x6b0(%rbp,%rax,8),%rax
ff
movslq -0x6f4(%rbp),%rdx
lea    -0x460(%rbp),%rcx
imul   $0x14,%rdx,%rdx
add    %rdx,%rcx
movslq 0x10(%rcx),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
movslq 0xc(%rcx),%rcx
add    %rcx,%rax
mov    %rax,-0x608(%rbp)
cmpq   $0xfffffffffffffc18,-0x608(%rbp)
18 fc ff ff
jge    3d8b <main+0x2c3b>
movq   $0xfffffffffffffc18,-0x608(%rbp)
18 fc ff ff
jmp    3dac <main+0x2c5c>
cmpq   $0x3e8,-0x608(%rbp)
jle    3da7 <main+0x2c57>
movq   $0x3e8,-0x608(%rbp)
jmp    3dac <main+0x2c5c>
mov    -0x608(%rbp),%rax
mov    %eax,%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x460(%rbp),%rax
imul   $0x14,%rdx,%rdx
add    %rdx,%rax
movslq 0x10(%rax),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
jmp    3ecc <main+0x2d7c>
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x5a4(%rbp),%rdx
lea    -0x500(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x460(%rbp),%rax
imul   $0x14,%rcx,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x5a4(%rbp),%rdx
lea    -0x500(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
movslq -0x6f4(%rbp),%rax
mov    -0x6b0(%rbp,%rax,8),%rax
ff
mov    %rax,-0x608(%rbp)
cmpq   $0xfffffffffffffc18,-0x608(%rbp)
18 fc ff ff
jge    3e7b <main+0x2d2b>
movq   $0xfffffffffffffc18,-0x608(%rbp)
18 fc ff ff
jmp    3e9c <main+0x2d4c>
cmpq   $0x3e8,-0x608(%rbp)
jle    3e97 <main+0x2d47>
movq   $0x3e8,-0x608(%rbp)
jmp    3e9c <main+0x2d4c>
mov    -0x608(%rbp),%rax
mov    %eax,%ecx
movslq -0x5a4(%rbp),%rdx
lea    -0x500(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x5a4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x5a4(%rbp)
jmp    3ed1 <main+0x2d81>
jmp    3ed6 <main+0x2d86>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    3cd2 <main+0x2b82>
lea    0x24de(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    3f91 <main+0x2e41>
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x500(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
lea    0x2106(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    3f02 <main+0x2db2>
movl   $0x0,-0x6f4(%rbp)
mov    -0x6f4(%rbp),%eax
cmp    -0x5a4(%rbp),%eax
jge    40ee <main+0x2f9e>
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,0x8(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,0xc(%rax)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    3f9b <main+0x2e4b>
mov    -0x5a4(%rbp),%eax
mov    %eax,-0x5a8(%rbp)
cmpl   $0x0,-0x5a8(%rbp)
jle    4624 <main+0x34d4>
movl   $0x0,-0x6f4(%rbp)
mov    -0x6f4(%rbp),%eax
mov    -0x5a8(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    4441 <main+0x32f1>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
lea    0x2260(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0x0,0x4(%rax)
jne    41d4 <main+0x3084>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0x0,0x8(%rax)
je     4428 <main+0x32d8>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
mov    -0x6f8(%rbp),%eax
cmp    -0x5a8(%rbp),%eax
jge    4423 <main+0x32d3>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
movslq -0x6f8(%rbp),%rdx
lea    -0x5a0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x4(%rcx),%eax
jne    4261 <main+0x3111>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
movslq -0x6f8(%rbp),%rdx
lea    -0x5a0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x8(%rcx),%eax
je     42cd <main+0x317d>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
movslq -0x6f8(%rbp),%rdx
lea    -0x5a0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x8(%rcx),%eax
jne    440a <main+0x32ba>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
movslq -0x6f8(%rbp),%rdx
lea    -0x5a0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x4(%rcx),%eax
jne    440a <main+0x32ba>
movslq -0x6f8(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
add    0xc(%rax),%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0xfffffc18,0xc(%rax)
jge    4358 <main+0x3208>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0xfffffc18,0xc(%rax)
jmp    439b <main+0x324b>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0x3e8,0xc(%rax)
jle    4396 <main+0x3246>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x3e8,0xc(%rax)
jmp    439b <main+0x324b>
movslq -0x6f8(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,0x4(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,0x8(%rax)
movslq -0x6f8(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,0xc(%rax)
jmp    440f <main+0x32bf>
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    41e3 <main+0x3093>
jmp    4428 <main+0x32d8>
jmp    442d <main+0x32dd>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    4111 <main+0x2fc1>
movl   $0x0,-0x6f8(%rbp)
movl   $0x0,-0x6f4(%rbp)
mov    -0x6f4(%rbp),%eax
cmp    -0x5a8(%rbp),%eax
jge    4618 <main+0x34c8>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0x0,(%rax)
jne    44c3 <main+0x3373>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0x0,0x4(%rax)
jne    44c3 <main+0x3373>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0x0,0x8(%rax)
je     45ff <main+0x34af>
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x500(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x500(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x500(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6f8(%rbp),%rdx
lea    -0x500(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,0x4(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,0x8(%rax)
movslq -0x6f4(%rbp),%rcx
lea    -0x5a0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
movl   $0x0,0xc(%rax)
jmp    4604 <main+0x34b4>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    4455 <main+0x3305>
mov    -0x6f8(%rbp),%eax
mov    %eax,-0x5a4(%rbp)
lea    0x1de2(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    46cb <main+0x357b>
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x500(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
lea    0x19cc(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    463c <main+0x34ec>
movl   $0x1e,-0x6f8(%rbp)
movl   $0x0,-0x6f4(%rbp)
mov    -0x6f4(%rbp),%eax
cmp    -0x5a4(%rbp),%eax
jge    4742 <main+0x35f2>
mov    -0x6f8(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x6f8(%rbp)
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6f4(%rbp),%rdx
lea    -0x500(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    46df <main+0x358f>
movl   $0x1d,-0x6fc(%rbp)
mov    -0x6fc(%rbp),%eax
mov    -0x5a4(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jle    4855 <main+0x3705>
mov    -0x6fc(%rbp),%eax
sub    -0x5a4(%rbp),%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
mov    -0x6fc(%rbp),%eax
sub    -0x5a4(%rbp),%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
mov    -0x6fc(%rbp),%eax
sub    -0x5a4(%rbp),%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
mov    -0x6fc(%rbp),%eax
sub    -0x5a4(%rbp),%eax
movslq %eax,%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6fc(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x6fc(%rbp)
jmp    474c <main+0x35fc>
movl   $0x0,-0x6fc(%rbp)
mov    -0x6fc(%rbp),%eax
cmp    -0x5a4(%rbp),%eax
jge    4943 <main+0x37f3>
movslq -0x6fc(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,(%rax)
movslq -0x6fc(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x4(%rax)
movslq -0x6fc(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0x8(%rax)
movslq -0x6fc(%rbp),%rcx
lea    -0x500(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%ecx
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdx
add    %rdx,%rax
mov    %ecx,0xc(%rax)
mov    -0x6fc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6fc(%rbp)
jmp    485f <main+0x370f>
jmp    4948 <main+0x37f8>
mov    -0x708(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x708(%rbp)
jmp    15f6 <main+0x4a6>
jmp    4961 <main+0x3811>
mov    -0x700(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x700(%rbp)
jmp    14b8 <main+0x368>
movl   $0x0,-0x6dc(%rbp)
movl   $0x0,-0x6e0(%rbp)
movl   $0x0,-0x6ec(%rbp)
movl   $0x3e9,-0x6e4(%rbp)
movl   $0x9,-0x6fc(%rbp)
cmpl   $0x0,-0x6fc(%rbp)
jl     49f5 <main+0x38a5>
movslq -0x6fc(%rbp),%rax
cmpl   $0x0,-0x50(%rbp,%rax,4)
je     49dc <main+0x388c>
movslq -0x6fc(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%eax
mov    %eax,-0x6dc(%rbp)
jmp    49f5 <main+0x38a5>
jmp    49e1 <main+0x3891>
mov    -0x6fc(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x6fc(%rbp)
jmp    49a7 <main+0x3857>
lea    0x1a30(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    4a47 <main+0x38f7>
movslq -0x6f4(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%esi
lea    0x1a12(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    4a0d <main+0x38bd>
lea    0x1ae4(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6dc(%rbp),%esi
lea    0x19e0(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
cmpl   $0x0,-0x6dc(%rbp)
jne    4a85 <main+0x3935>
movl   $0x0,-0x6e0(%rbp)
jmp    4caf <main+0x3b5f>
movl   $0x0,-0x6fc(%rbp)
cmpl   $0xa,-0x6fc(%rbp)
jge    4caa <main+0x3b5a>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0x1e,-0x6f4(%rbp)
jge    4b88 <main+0x3a38>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
cmp    -0x6dc(%rbp),%eax
jne    4b6f <main+0x3a1f>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%eax
cmp    -0x6e4(%rbp),%eax
jg     4b6f <main+0x3a1f>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
mov    %eax,-0x6e0(%rbp)
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0xc(%rax),%eax
mov    %eax,-0x6e4(%rbp)
mov    -0x6dc(%rbp),%esi
mov    -0x6e0(%rbp),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%ecx
mov    -0x6e4(%rbp),%r8d
lea    0x18f2(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
jmp    4b74 <main+0x3a24>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    4aa6 <main+0x3956>
mov    -0x6dc(%rbp),%esi
lea    0x1905(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6e0(%rbp),%esi
lea    0x190f(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
cmpl   $0x0,-0x6e0(%rbp)
jne    4c91 <main+0x3b41>
cmpl   $0x64,-0x6dc(%rbp)
jge    4bcf <main+0x3a7f>
jmp    4caa <main+0x3b5a>
movl   $0x0,-0x6f8(%rbp)
cmpl   $0x1e,-0x6f8(%rbp)
jge    4c87 <main+0x3b37>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%eax
cmp    -0x6dc(%rbp),%eax
jne    4c6e <main+0x3b1e>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
cmpl   $0x0,0x8(%rax)
je     4c4b <main+0x3afb>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%eax
mov    %eax,-0x6dc(%rbp)
jmp    4c87 <main+0x3b37>
movslq -0x6f8(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%eax
mov    %eax,-0x6dc(%rbp)
jmp    4c87 <main+0x3b37>
jmp    4c73 <main+0x3b23>
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
jmp    4bd9 <main+0x3a89>
jmp    4c8c <main+0x3b3c>
jmp    4c91 <main+0x3b41>
jmp    4c96 <main+0x3b46>
mov    -0x6fc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6fc(%rbp)
jmp    4a8f <main+0x393f>
jmp    4caf <main+0x3b5f>
mov    -0x6e0(%rbp),%esi
lea    0x1813(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    4d00 <main+0x3bb0>
movslq -0x6f4(%rbp),%rax
movl   $0x0,-0xe0(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    4ccd <main+0x3b7d>
mov    -0x6e0(%rbp),%eax
mov    %eax,-0xe0(%rbp)
movl   $0x0,-0x6f4(%rbp)
movslq -0x6f4(%rbp),%rax
cmpl   $0x64,-0xe0(%rbp,%rax,4)
64
jl     4d40 <main+0x3bf0>
movslq -0x6f4(%rbp),%rax
cmpl   $0x0,-0xe0(%rbp,%rax,4)
jne    4d66 <main+0x3c16>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    4d61 <main+0x3c11>
jmp    4d16 <main+0x3bc6>
jmp    4f47 <main+0x3df7>
movl   $0x9,-0x6f8(%rbp)
mov    -0x6f8(%rbp),%eax
cmp    -0x6f4(%rbp),%eax
jle    4db6 <main+0x3c66>
mov    -0x6f8(%rbp),%eax
sub    $0x1,%eax
cltq
mov    -0xe0(%rbp,%rax,4),%ecx
movslq -0x6f8(%rbp),%rax
mov    %ecx,-0xe0(%rbp,%rax,4)
mov    -0x6f8(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x6f8(%rbp)
jmp    4d70 <main+0x3c20>
movl   $0x0,-0x6e8(%rbp)
movl   $0x0,-0x6fc(%rbp)
cmpl   $0x1e,-0x6fc(%rbp)
jge    4f0f <main+0x3dbf>
movslq -0x6fc(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%eax
movslq -0x6f4(%rbp),%rcx
cmp    -0xe0(%rbp,%rcx,4),%eax
jne    4ef6 <main+0x3da6>
movslq -0x6fc(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%eax
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x4(%rcx),%eax
je     4e6c <main+0x3d1c>
movslq -0x6fc(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%eax
movslq -0x6fc(%rbp),%rdx
lea    -0x2c0(%rbp),%rcx
shl    $0x4,%rdx
add    %rdx,%rcx
cmp    0x8(%rcx),%eax
jne    4e92 <main+0x3d42>
movslq -0x6f4(%rbp),%rax
movl   $0x0,-0xe0(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    4ef1 <main+0x3da1>
movl   $0x1,-0x6e8(%rbp)
movslq -0x6fc(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0xe0(%rbp,%rax,4)
movslq -0x6fc(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
cltq
mov    %ecx,-0xe0(%rbp,%rax,4)
jmp    4f0f <main+0x3dbf>
jmp    4ef6 <main+0x3da6>
jmp    4efb <main+0x3dab>
mov    -0x6fc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6fc(%rbp)
jmp    4dca <main+0x3c7a>
cmpl   $0x0,-0x6e8(%rbp)
jne    4f3d <main+0x3ded>
movslq -0x6f4(%rbp),%rax
movl   $0x0,-0xe0(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    4f42 <main+0x3df2>
jmp    4d16 <main+0x3bc6>
lea    0x158b(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    4f9c <main+0x3e4c>
movslq -0x6f4(%rbp),%rax
mov    -0xe0(%rbp,%rax,4),%esi
lea    0x14bd(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    4f5f <main+0x3e0f>
lea    0x158f(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0x1542(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0x1e,-0x6f4(%rbp)
jge    5051 <main+0x3f01>
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    (%rax),%esi
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x4(%rax),%edx
movslq -0x6f4(%rbp),%rcx
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rcx
add    %rcx,%rax
mov    0x8(%rax),%ecx
movslq -0x6f4(%rbp),%rdi
lea    -0x2c0(%rbp),%rax
shl    $0x4,%rdi
add    %rdi,%rax
mov    0xc(%rax),%r8d
lea    0x1046(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    4fc2 <main+0x3e72>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    5095 <main+0x3f45>
movslq -0x6f4(%rbp),%rax
mov    -0xb0(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0x50(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    505b <main+0x3f0b>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    50d9 <main+0x3f89>
movslq -0x6f4(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%esi
lea    0x1380(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    509f <main+0x3f4f>
lea    0x1452(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
cmpl   $0x0,-0x6e0(%rbp)
je     521e <main+0x40ce>
movl   $0x9,-0x6f4(%rbp)
cmpl   $0x0,-0x6f4(%rbp)
jl     514d <main+0x3ffd>
movslq -0x6f4(%rbp),%rax
cmpl   $0x0,-0xe0(%rbp,%rax,4)
je     5134 <main+0x3fe4>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6ec(%rbp)
jmp    514d <main+0x3ffd>
jmp    5139 <main+0x3fe9>
mov    -0x6f4(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x6f4(%rbp)
jmp    50fe <main+0x3fae>
mov    -0x6ec(%rbp),%esi
lea    0x13a9(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
mov    -0x6f4(%rbp),%eax
mov    $0xa,%ecx
sub    -0x6ec(%rbp),%ecx
cmp    %ecx,%eax
jge    51b5 <main+0x4065>
mov    -0x6f4(%rbp),%eax
add    -0x6ec(%rbp),%eax
cltq
mov    -0x50(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0x50(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    516b <main+0x401b>
movl   $0x0,-0x6f8(%rbp)
mov    $0xa,%eax
sub    -0x6ec(%rbp),%eax
mov    %eax,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    5219 <main+0x40c9>
movslq -0x6f8(%rbp),%rax
mov    -0xe0(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0x50(%rbp,%rax,4)
mov    -0x6f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f8(%rbp)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    51d0 <main+0x4080>
jmp    521e <main+0x40ce>
lea    0x12f8(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    5270 <main+0x4120>
movslq -0x6f4(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%esi
lea    0x11e9(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    5236 <main+0x40e6>
lea    0x12bb(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movl   $0x0,-0x6f4(%rbp)
cmpl   $0xa,-0x6f4(%rbp)
jge    52c2 <main+0x4172>
movslq -0x6f4(%rbp),%rax
mov    -0x50(%rbp,%rax,4),%ecx
movslq -0x6f4(%rbp),%rax
mov    %ecx,-0xb0(%rbp,%rax,4)
mov    -0x6f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f4(%rbp)
jmp    5288 <main+0x4138>
jmp    52c7 <main+0x4177>
mov    -0x6f0(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6f0(%rbp)
jmp    14a1 <main+0x351>
mov    -0x24(%rbp),%eax
add    $0x730,%rsp
pop    %rbx
pop    %r12
pop    %r14
pop    %r15
pop    %rbp
ret

x86 assembly (clang, -O2):
<main>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x6d8,%rsp
mov    0x2ec8(%rip),%rax
mov    %rax,0x40(%rsp)
movaps 0x2eac(%rip),%xmm0
movaps %xmm0,0x30(%rsp)
movaps 0x2e90(%rip),%xmm0
movaps %xmm0,0x20(%rsp)
xorps  %xmm0,%xmm0
movaps %xmm0,0x90(%rsp)
movaps %xmm0,0x80(%rsp)
movq   $0x0,0xa0(%rsp)
mov    $0x66,%eax
lea    0x1e4(%rsp),%rcx
xor    %edx,%edx
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
lea    -0x2(%rax),%esi
mov    %esi,0x1c0(%rsp,%rdx,1)
movl   $0x0,-0x18(%rcx,%rdx,1)
movq   $0x0,-0x20(%rcx,%rdx,1)
lea    -0x1(%rax),%esi
mov    %esi,0x1d0(%rsp,%rdx,1)
movl   $0x0,-0x8(%rcx,%rdx,1)
movq   $0x0,-0x10(%rcx,%rdx,1)
mov    %eax,0x1e0(%rsp,%rdx,1)
movl   $0x0,0x8(%rcx,%rdx,1)
movq   $0x0,(%rcx,%rdx,1)
add    $0x30,%rdx
add    $0x3,%eax
cmp    $0x1e0,%rdx
jne    11d0 <main+0x70>
movabs $0x300000002,%rax
mov    %rax,0x1c4(%rsp)
lea    0x1cc(%rsp),%r14
movl   $0x64,0x1cc(%rsp)
movabs $0x200000001,%rax
mov    %rax,0x1d4(%rsp)
movl   $0x64,0x1dc(%rsp)
movabs $0x400000003,%rax
mov    %rax,0x1e4(%rsp)
movl   $0xffffff9c,0x1ec(%rsp)
9c ff ff ff
movabs $0x500000004,%rax
mov    %rax,0x1f4(%rsp)
movl   $0xffffff38,0x1fc(%rsp)
38 ff ff ff
movabs $0x600000005,%rax
mov    %rax,0x204(%rsp)
movl   $0xffffff9c,0x20c(%rsp)
9c ff ff ff
movabs $0x300000005,%rax
mov    %rax,0x214(%rsp)
movl   $0x64,0x21c(%rsp)
movabs $0xc0000000b,%rax
mov    %rax,0x224(%rsp)
movl   $0xd,0x22c(%rsp)
mov    0x2d39(%rip),%rax
mov    %rax,0x1b0(%rsp)
movaps 0x2d1a(%rip),%xmm0
movaps %xmm0,0x1a0(%rsp)
movapd 0x2cfa(%rip),%xmm0
movapd %xmm0,0x190(%rsp)
xor    %r15d,%r15d
movl   $0x0,0x4c(%rsp)
xor    %eax,%eax
xor    %r8d,%r8d
xor    %r12d,%r12d
jmp    1473 <main+0x313>
nopw   0x0(%rax,%rax,1)
mov    $0xa,%ebp
lea    0x30d1(%rip),%rdi
mov    $0xa,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %ebp,%edx
neg    %ebp
movslq %ebp,%rax
lea    (%rsp,%rax,4),%rdi
add    $0x48,%rdi
shl    $0x2,%rdx
lea    0x80(%rsp),%rsi
call   1060 <memcpy@plt>
lea    0x30c7(%rip),%rdi
call   1040 <puts@plt>
mov    0x20(%rsp),%esi
lea    0x2fd9(%rip),%rbx
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x24(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x28(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x2c(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x30(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x34(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x38(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x3c(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x40(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x44(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
movapd 0x20(%rsp),%xmm0
movapd 0x30(%rsp),%xmm1
movapd %xmm0,0x190(%rsp)
movapd %xmm1,0x1a0(%rsp)
mov    0x40(%rsp),%rax
mov    %rax,0x1b0(%rsp)
mov    0x7c(%rsp),%eax
cmp    $0x3,%eax
mov    0x4(%rsp),%r8d
mov    0x1c(%rsp),%r12d
je     381c <main+0x26bc>
mov    %eax,%ecx
mov    %rcx,%rax
mov    %rcx,0x1b8(%rsp)
lea    0x1(%rcx),%eax
mov    %eax,0x7c(%rsp)
xor    %ecx,%ecx
jmp    14a1 <main+0x341>
nopl   0x0(%rax,%rax,1)
mov    0xa8(%rsp),%rcx
cmp    $0x3,%ecx
je     30d0 <main+0x1f70>
test   %ecx,%ecx
jne    1500 <main+0x3a0>
cmpl   $0x1,0x1b8(%rsp)
01
ja     1500 <main+0x3a0>
mov    0x2b8a(%rip),%rax
mov    %rax,0x40(%rsp)
movapd 0x2b6d(%rip),%xmm0
movapd %xmm0,0x30(%rsp)
movapd 0x2b4f(%rip),%xmm1
movapd %xmm1,0x20(%rsp)
movapd %xmm1,0x190(%rsp)
movapd %xmm0,0x1a0(%rsp)
mov    %rax,0x1b0(%rsp)
jmp    1566 <main+0x406>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
test   %ecx,%ecx
je     1540 <main+0x3e0>
cmpl   $0x2,0x1b8(%rsp)
02
jae    1540 <main+0x3e0>
mov    0x1b0(%rsp),%rax
mov    %rax,0x40(%rsp)
movapd 0x190(%rsp),%xmm0
movapd 0x1a0(%rsp),%xmm1
movapd %xmm1,0x30(%rsp)
jmp    1560 <main+0x400>
cs nopw 0x0(%rax,%rax,1)
nop
mov    0x2af9(%rip),%rax
mov    %rax,0x40(%rsp)
movaps 0x2add(%rip),%xmm0
movaps %xmm0,0x30(%rsp)
movapd 0x2ac0(%rip),%xmm0
movapd %xmm0,0x20(%rsp)
add    $0x1,%ecx
mov    %rcx,0xa8(%rsp)
xor    %eax,%eax
mov    %rax,0x60(%rsp)
mov    0x20(%rsp),%r9d
jmp    1599 <main+0x439>
nop
cmpl   $0x9,0x60(%rsp)
lea    0x1cc(%rsp),%r14
mov    $0x0,%r15d
je     1490 <main+0x330>
mov    %r8d,0x4(%rsp)
mov    $0x3e9,%r10d
mov    %r9d,0x160(%rsp)
mov    %r9d,%esi
xor    %r11d,%r11d
xor    %r13d,%r13d
xor    %r8d,%r8d
movl   $0x0,0x10(%rsp)
jmp    15dc <main+0x47c>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
mov    %eax,%esi
cmp    $0xa,%r11
je     1660 <main+0x500>
mov    %r11,%r9
add    $0x1,%r11
mov    %r14,%rbp
xor    %ebx,%ebx
jmp    1600 <main+0x4a0>
nopw   0x0(%rax,%rax,1)
mov    %ecx,%eax
add    $0x1,%rbx
add    $0x10,%rbp
cmp    $0x1e,%rbx
je     15d0 <main+0x470>
mov    -0x8(%rbp),%edx
cmp    %esi,%edx
jne    1620 <main+0x4c0>
mov    -0x4(%rbp),%eax
mov    0x20(%rsp,%r11,4),%ecx
mov    %eax,%edi
cmp    %ecx,%eax
je     1632 <main+0x4d2>
cmp    %ecx,%edx
jne    15f0 <main+0x490>
jmp    1629 <main+0x4c9>
nopl   0x0(%rax,%rax,1)
mov    0x20(%rsp,%r11,4),%ecx
cmp    %ecx,%edx
jne    15f0 <main+0x490>
mov    %edx,%eax
mov    %esi,%edi
cmp    %esi,-0x4(%rbp)
jne    1657 <main+0x4f7>
or     %edi,%edx
je     15f2 <main+0x492>
mov    0x0(%rbp),%ecx
cmp    %r10d,%ecx
jg     15f2 <main+0x492>
mov    -0xc(%rbp),%edx
mov    %edx,0x10(%rsp)
mov    %ecx,%r10d
mov    %esi,%r12d
mov    %eax,0x4(%rsp)
mov    %ebx,%r8d
mov    %r9d,%r13d
jmp    15f2 <main+0x492>
mov    %edx,%eax
jmp    15f2 <main+0x492>
nopl   0x0(%rax,%rax,1)
cmp    $0x3e8,%r10d
jle    1930 <main+0x7d0>
mov    0x390(%rsp),%eax
mov    %eax,0x10(%rsp)
movaps 0x380(%rsp),%xmm0
movaps %xmm0,0x390(%rsp)
movaps 0x370(%rsp),%xmm0
movaps %xmm0,0x380(%rsp)
movaps 0x360(%rsp),%xmm0
movaps %xmm0,0x370(%rsp)
movaps 0x350(%rsp),%xmm0
movaps %xmm0,0x360(%rsp)
movaps 0x340(%rsp),%xmm0
movaps %xmm0,0x350(%rsp)
movaps 0x300(%rsp),%xmm0
movapd 0x310(%rsp),%xmm1
movapd 0x320(%rsp),%xmm2
movaps 0x330(%rsp),%xmm3
movaps %xmm3,0x340(%rsp)
movapd %xmm2,0x330(%rsp)
movapd %xmm1,0x320(%rsp)
movaps %xmm0,0x310(%rsp)
movaps 0x2f0(%rsp),%xmm0
movaps %xmm0,0x300(%rsp)
movaps 0x2e0(%rsp),%xmm0
movaps %xmm0,0x2f0(%rsp)
movaps 0x2d0(%rsp),%xmm0
movaps %xmm0,0x2e0(%rsp)
movaps 0x2c0(%rsp),%xmm0
movaps %xmm0,0x2d0(%rsp)
movaps 0x2b0(%rsp),%xmm0
movaps %xmm0,0x2c0(%rsp)
movaps 0x2a0(%rsp),%xmm0
movaps %xmm0,0x2b0(%rsp)
movaps 0x290(%rsp),%xmm0
movaps %xmm0,0x2a0(%rsp)
movaps 0x280(%rsp),%xmm0
movaps %xmm0,0x290(%rsp)
movaps 0x270(%rsp),%xmm0
movaps %xmm0,0x280(%rsp)
movaps 0x260(%rsp),%xmm0
movaps %xmm0,0x270(%rsp)
movaps 0x250(%rsp),%xmm0
movaps %xmm0,0x260(%rsp)
movaps 0x240(%rsp),%xmm0
movaps %xmm0,0x250(%rsp)
movaps 0x230(%rsp),%xmm0
movaps %xmm0,0x240(%rsp)
movaps 0x220(%rsp),%xmm0
movaps %xmm0,0x230(%rsp)
movaps 0x210(%rsp),%xmm0
movaps %xmm0,0x220(%rsp)
movaps 0x200(%rsp),%xmm0
movaps %xmm0,0x210(%rsp)
movaps 0x1f0(%rsp),%xmm0
movaps %xmm0,0x200(%rsp)
movaps 0x1e0(%rsp),%xmm0
movaps %xmm0,0x1f0(%rsp)
movaps 0x1d0(%rsp),%xmm0
movaps %xmm0,0x1e0(%rsp)
movapd 0x1c0(%rsp),%xmm0
movapd %xmm0,0x1d0(%rsp)
mov    $0x8,%r13d
cmpl   $0x0,0x44(%rsp)
mov    0x160(%rsp),%r14d
jne    18d0 <main+0x770>
mov    $0x7,%r13d
cmpl   $0x0,0x40(%rsp)
jne    18d0 <main+0x770>
mov    $0x6,%r13d
cmpl   $0x0,0x3c(%rsp)
jne    18d0 <main+0x770>
mov    $0x5,%r13d
cmpl   $0x0,0x38(%rsp)
jne    18d0 <main+0x770>
mov    $0x4,%r13d
cmpl   $0x0,0x34(%rsp)
jne    18d0 <main+0x770>
mov    $0x3,%r13d
cmpl   $0x0,0x30(%rsp)
jne    18d0 <main+0x770>
mov    $0x2,%r13d
cmpl   $0x0,0x2c(%rsp)
jne    18d0 <main+0x770>
mov    $0x1,%r13d
cmpl   $0x0,0x28(%rsp)
jne    18d0 <main+0x770>
xor    %r13d,%r13d
cmpl   $0x0,0x24(%rsp)
je     18d8 <main+0x778>
nopl   0x0(%rax,%rax,1)
mov    %r13d,%eax
mov    0x20(%rsp,%rax,4),%r14d
lea    0x1(%r13),%eax
test   %r14d,%r14d
jne    18ec <main+0x78c>
cmpl   $0x0,0x20(%rsp,%rax,4)
je     3830 <main+0x26d0>
mov    0x10(%rsp),%ecx
mov    %ecx,0x1c0(%rsp)
mov    %r14d,0x1c4(%rsp)
mov    0x20(%rsp,%rax,4),%r9d
mov    %r9d,0x1c8(%rsp)
movl   $0xffffff9c,0x1cc(%rsp)
9c ff ff ff
mov    $0xffffff9c,%eax
mov    %rax,0x8(%rsp)
jmp    1a51 <main+0x8f1>
cs nopw 0x0(%rax,%rax,1)
test   %r8d,%r8d
mov    0x4(%rsp),%r9d
mov    %r12d,%r14d
jle    1a0d <main+0x8ad>
mov    %r8d,%ecx
lea    -0x1(%rcx),%rdx
mov    %rcx,%rsi
and    $0x3,%rsi
je     1994 <main+0x834>
mov    %rcx,%rax
shl    $0x4,%rax
lea    (%rsp,%rax,1),%rdi
add    $0x1c0,%rdi
shl    $0x4,%rsi
xor    %ebp,%ebp
nopl   0x0(%rax)
add    $0xffffffffffffffff,%rcx
mov    %ecx,%eax
shl    $0x4,%rax
movapd 0x1c0(%rsp,%rax,1),%xmm0
movapd %xmm0,(%rdi,%rbp,1)
add    $0xfffffffffffffff0,%rbp
mov    %rsi,%rax
add    %rbp,%rax
jne    1970 <main+0x810>
cmp    $0x3,%rdx
jb     1a0d <main+0x8ad>
lea    -0x4(%rcx),%rdx
shl    $0x4,%rcx
add    %rsp,%rcx
add    $0x1c0,%rcx
nopl   0x0(%rax)
lea    0x3(%rdx),%eax
shl    $0x4,%rax
movaps 0x1c0(%rsp,%rax,1),%xmm0
movaps %xmm0,(%rcx)
lea    0x2(%rdx),%eax
shl    $0x4,%rax
movaps 0x1c0(%rsp,%rax,1),%xmm0
movaps %xmm0,-0x10(%rcx)
lea    0x1(%rdx),%rax
mov    %eax,%esi
shl    $0x4,%rsi
movaps 0x1c0(%rsp,%rsi,1),%xmm0
movaps %xmm0,-0x20(%rcx)
mov    %edx,%esi
shl    $0x4,%rsi
movapd 0x1c0(%rsp,%rsi,1),%xmm0
movapd %xmm0,-0x30(%rcx)
add    $0xfffffffffffffffc,%rdx
add    $0xffffffffffffffc0,%rcx
cmp    $0x1,%rax
ja     19b0 <main+0x850>
mov    0x10(%rsp),%eax
mov    %eax,0x1c0(%rsp)
mov    %r14d,0x1c4(%rsp)
mov    %r9d,0x1c8(%rsp)
lea    -0x64(%r10),%ecx
cmp    $0xfffffc7c,%r10d
mov    $0xfffffc18,%eax
cmovl  %eax,%ecx
mov    %ecx,0x1cc(%rsp)
cmp    $0x9,%r13d
mov    %rcx,0x8(%rsp)
jge    1b20 <main+0x9c0>
movslq %r13d,%rax
mov    $0x9,%edx
sub    %rax,%rdx
mov    %rax,%rcx
cmp    $0x8,%rdx
mov    %r9d,0x4(%rsp)
jb     1b00 <main+0x9a0>
mov    %rdx,%rcx
and    $0xfffffffffffffff8,%rcx
lea    -0x8(%rcx),%rsi
mov    %rsi,%rbp
shr    $0x3,%rbp
add    $0x1,%rbp
test   %rsi,%rsi
je     30b0 <main+0x1f50>
mov    %rbp,%rsi
and    $0xfffffffffffffffe,%rsi
lea    0x54(%rsp),%rdi
lea    (%rdi,%rax,4),%rbx
xor    %edi,%edi
nop
movupd -0x30(%rbx,%rdi,4),%xmm0
movupd -0x20(%rbx,%rdi,4),%xmm1
movupd -0x10(%rbx,%rdi,4),%xmm2
movups (%rbx,%rdi,4),%xmm3
movupd %xmm0,-0x34(%rbx,%rdi,4)
movupd %xmm1,-0x24(%rbx,%rdi,4)
movupd %xmm2,-0x14(%rbx,%rdi,4)
movups %xmm3,-0x4(%rbx,%rdi,4)
add    $0x10,%rdi
add    $0xfffffffffffffffe,%rsi
jne    1aa0 <main+0x940>
test   $0x1,%bpl
je     1af8 <main+0x998>
add    %rax,%rdi
movupd 0x24(%rsp,%rdi,4),%xmm0
movupd 0x34(%rsp,%rdi,4),%xmm1
movupd %xmm0,0x20(%rsp,%rdi,4)
movupd %xmm1,0x30(%rsp,%rdi,4)
cmp    %rcx,%rdx
je     1b23 <main+0x9c3>
add    %rax,%rcx
mov    0x24(%rsp,%rcx,4),%edx
mov    %edx,0x20(%rsp,%rcx,4)
lea    0x1(%rcx),%rdx
mov    %rdx,%rcx
cmp    $0x9,%rdx
jne    1b00 <main+0x9a0>
jmp    1b23 <main+0x9c3>
nopw   0x0(%rax,%rax,1)
mov    %r13d,%eax
mov    0x10(%rsp),%ebx
mov    %ebx,0x20(%rsp,%rax,4)
movl   $0x0,0x44(%rsp)
lea    0x2932(%rip),%rdi
call   1040 <puts@plt>
mov    0x1d0(%rsp),%r9d
mov    0x1d4(%rsp),%r10d
mov    0x1d8(%rsp),%r11d
mov    0x1dc(%rsp),%ebp
sub    $0x8,%rsp
lea    0x24df(%rip),%r12
mov    %r12,%rdi
mov    %ebx,%esi
mov    %r14d,0x24(%rsp)
mov    %r14d,%edx
mov    0xc(%rsp),%ecx
mov    0x10(%rsp),%r8
xor    %eax,%eax
push   %rbp
push   %r11
push   %r10
call   1050 <printf@plt>
add    $0x20,%rsp
xor    %ebx,%ebx
lea    0x1fc(%rsp),%rbp
nopl   0x0(%rax)
mov    -0x1c(%rbp),%esi
mov    -0x18(%rbp),%edx
mov    -0x14(%rbp),%ecx
mov    -0x10(%rbp),%r8d
mov    -0xc(%rbp),%r9d
mov    -0x8(%rbp),%r10d
mov    -0x4(%rbp),%r11d
mov    0x0(%rbp),%r14d
sub    $0x8,%rsp
mov    %r12,%rdi
xor    %eax,%eax
push   %r14
push   %r11
push   %r10
call   1050 <printf@plt>
add    $0x20,%rsp
add    $0x20,%rbp
add    $0x2,%rbx
cmp    $0x1c,%rbx
jb     1ba0 <main+0xa40>
xorpd  %xmm0,%xmm0
movapd %xmm0,0x4b0(%rsp)
movapd %xmm0,0x4a0(%rsp)
movapd %xmm0,0x490(%rsp)
movapd %xmm0,0x480(%rsp)
movapd %xmm0,0x470(%rsp)
movapd %xmm0,0x680(%rsp)
movapd %xmm0,0x690(%rsp)
movapd %xmm0,0x6a0(%rsp)
movapd %xmm0,0x6b0(%rsp)
movapd %xmm0,0x6c0(%rsp)
movapd %xmm0,0x630(%rsp)
movapd %xmm0,0x640(%rsp)
movapd %xmm0,0x650(%rsp)
movapd %xmm0,0x660(%rsp)
movapd %xmm0,0x670(%rsp)
movapd %xmm0,0x3a0(%rsp)
movapd %xmm0,0x3b0(%rsp)
movapd %xmm0,0x3c0(%rsp)
movapd %xmm0,0x3d0(%rsp)
movapd %xmm0,0x3e0(%rsp)
movapd %xmm0,0x3f0(%rsp)
movapd %xmm0,0x400(%rsp)
movapd %xmm0,0x410(%rsp)
movapd %xmm0,0x420(%rsp)
movapd %xmm0,0x430(%rsp)
movapd %xmm0,0x440(%rsp)
movapd %xmm0,0x450(%rsp)
movq   $0x0,0x460(%rsp)
movapd %xmm0,0x570(%rsp)
movapd %xmm0,0x560(%rsp)
movapd %xmm0,0x550(%rsp)
movapd %xmm0,0x540(%rsp)
movapd %xmm0,0x530(%rsp)
movapd %xmm0,0x520(%rsp)
movapd %xmm0,0x510(%rsp)
movapd %xmm0,0x500(%rsp)
movapd %xmm0,0x4f0(%rsp)
movapd %xmm0,0x4e0(%rsp)
movapd %xmm0,0x4d0(%rsp)
movapd %xmm0,0x4c0(%rsp)
movq   $0x0,0x580(%rsp)
movapd %xmm0,0x140(%rsp)
movapd %xmm0,0x130(%rsp)
movapd %xmm0,0x120(%rsp)
movapd %xmm0,0x110(%rsp)
movapd %xmm0,0x100(%rsp)
movapd %xmm0,0xf0(%rsp)
movapd %xmm0,0xe0(%rsp)
movapd %xmm0,0xd0(%rsp)
movapd %xmm0,0xc0(%rsp)
movapd %xmm0,0xb0(%rsp)
movapd %xmm0,0x620(%rsp)
movapd %xmm0,0x610(%rsp)
movapd %xmm0,0x600(%rsp)
movapd %xmm0,0x5f0(%rsp)
movapd %xmm0,0x5e0(%rsp)
movapd %xmm0,0x5d0(%rsp)
movapd %xmm0,0x5c0(%rsp)
movapd %xmm0,0x5b0(%rsp)
movapd %xmm0,0x5a0(%rsp)
movapd %xmm0,0x590(%rsp)
xor    %eax,%eax
mov    $0x1,%ecx
lea    0x1dc(%rsp),%rdx
mov    $0x3e8,%r12d
mov    0x4(%rsp),%r10d
mov    0x1c(%rsp),%ebx
mov    -0x8(%rdx),%esi
cmp    %esi,%ebx
jne    1e50 <main+0xcf0>
mov    -0x4(%rdx),%edi
cmp    %edi,%r10d
je     1e50 <main+0xcf0>
mov    %ebx,%r8d
mov    %r10d,%r9d
mov    %edi,%ebp
test   %ebx,%ebx
jne    1ea6 <main+0xd46>
nopl   0x0(%rax,%rax,1)
cmp    %esi,%r10d
jne    1e70 <main+0xd10>
mov    -0x4(%rdx),%edi
cmp    %edi,%ebx
je     1e70 <main+0xd10>
mov    %r10d,%r8d
mov    %ebx,%r9d
mov    %edi,%ebp
test   %r10d,%r10d
jne    1ea6 <main+0xd46>
nopl   0x0(%rax)
cmp    %esi,%ebx
jne    1e90 <main+0xd30>
cmp    %esi,%r10d
je     1ef3 <main+0xd93>
test   %ebx,%ebx
je     1ef3 <main+0xd93>
mov    %esi,%r8d
mov    %ebx,%edi
mov    %r10d,%r9d
mov    %esi,%ebp
cmp    -0x4(%rdx),%ebx
je     1ea6 <main+0xd46>
jmp    1ef3 <main+0xd93>
xchg   %ax,%ax
test   %r10d,%r10d
je     1e74 <main+0xd14>
cmp    -0x4(%rdx),%r10d
jne    1e74 <main+0xd14>
mov    %esi,%r8d
mov    %r10d,%edi
mov    %ebx,%r9d
mov    %esi,%ebp
mov    -0xc(%rdx),%esi
cltq
lea    0x0(,%rax,4),%rbx
lea    (%rbx,%rbx,4),%rbx
mov    %esi,0x3a0(%rsp,%rbx,1)
mov    %r8d,0x3a4(%rsp,%rbx,1)
mov    %edi,0x3a8(%rsp,%rbx,1)
mov    (%rdx),%esi
mov    %esi,0x3ac(%rsp,%rbx,1)
mov    %ecx,0x3b0(%rsp,%rbx,1)
mov    %r9d,0x4c4(%rsp,%rbx,1)
mov    %ebp,0x4c8(%rsp,%rbx,1)
mov    0x1c(%rsp),%ebx
add    $0x1,%eax
cmp    $0x1c,%rcx
ja     1f0a <main+0xdaa>
add    $0x1,%rcx
add    $0x10,%rdx
cmp    $0xa,%eax
jne    1e30 <main+0xcd0>
xor    %r14d,%r14d
xor    %r10d,%r10d
jmp    1f52 <main+0xdf2>
movupd %xmm0,(%r9)
movl   $0x0,0x10(%r9)
movupd %xmm0,0x3a0(%rsp,%r11,4)
movl   $0x0,0x3b0(%rsp,%r11,4)
cs nopw 0x0(%rax,%rax,1)
nop
add    $0x1,%r10
add    $0x14,%r14
cmp    $0xa,%r10
je     20a0 <main+0xf40>
lea    (%r10,%r10,4),%r11
lea    (%rsp,%r11,4),%r9
add    $0x4c0,%r9
mov    0x4c4(%rsp,%r11,4),%edi
mov    0x4c8(%rsp,%r11,4),%ebp
mov    0x1c(%rsp),%eax
cmp    %eax,%edi
jne    1f7f <main+0xe1f>
cmp    0x4(%rsp),%ebp
je     1fb0 <main+0xe50>
cmp    %eax,%ebp
jne    1f89 <main+0xe29>
cmp    0x4(%rsp),%edi
je     1fb0 <main+0xe50>
mov    0x3a4(%rsp,%r11,4),%ecx
mov    0x3a8(%rsp,%r11,4),%edx
cmp    %eax,%ecx
jne    1fa3 <main+0xe43>
cmp    0x4(%rsp),%edx
je     1fb0 <main+0xe50>
cmp    %eax,%edx
jne    1fd7 <main+0xe77>
cmp    0x4(%rsp),%ecx
jne    1fd7 <main+0xe77>
nopl   (%rax)
movupd %xmm0,(%r9)
movl   $0x0,0x10(%r9)
movupd %xmm0,0x3a0(%rsp,%r11,4)
movl   $0x0,0x3b0(%rsp,%r11,4)
xor    %ebp,%ebp
xor    %edi,%edi
lea    (%rsp,%r11,4),%r8
add    $0x4c4,%r8
mov    %ebp,%ecx
or     %edi,%ecx
sete   %cl
mov    $0x1c,%esi
mov    $0x1,%ebx
jmp    201a <main+0xeba>
cs nopw 0x0(%rax,%rax,1)
nop
xor    %ebp,%ebp
test   %cl,%cl
je     2044 <main+0xee4>
add    $0x10,%rsi
add    $0x1,%ebx
cmp    $0x1ec,%rsi
je     1f40 <main+0xde0>
mov    0x1b8(%rsp,%rsi,1),%edx
cmp    %edx,%edi
jne    202e <main+0xece>
cmp    0x1bc(%rsp,%rsi,1),%ebp
je     2000 <main+0xea0>
cmp    %edx,%ebp
jne    2006 <main+0xea6>
cmp    0x1bc(%rsp,%rsi,1),%edi
setne  %al
cmove  %r15d,%ebp
or     %cl,%al
jne    2006 <main+0xea6>
mov    0x1b4(%rsp,%rsi,1),%ecx
mov    %ecx,(%r9)
mov    %edx,(%r8)
mov    0x1bc(%rsp,%rsi,1),%eax
mov    %eax,0x4(%r8)
mov    0x1c0(%rsp,%rsi,1),%eax
mov    %eax,0x4cc(%rsp,%r11,4)
mov    %ebx,0x4d0(%rsp,%r11,4)
test   %r10,%r10
je     1f40 <main+0xde0>
xor    %edx,%edx
xchg   %ax,%ax
cmp    0x3a0(%rsp,%rdx,1),%ecx
je     1f12 <main+0xdb2>
add    $0x14,%rdx
cmp    %rdx,%r14
jne    2080 <main+0xf20>
jmp    1f40 <main+0xde0>
nopl   0x0(%rax,%rax,1)
cvtsi2sdl 0x8(%rsp),%xmm0
movapd %xmm0,0x160(%rsp)
xorpd  0x1f49(%rip),%xmm0
movapd %xmm0,0x170(%rsp)
xor    %ebp,%ebp
xor    %ebx,%ebx
jmp    2102 <main+0xfa2>
cs nopw 0x0(%rax,%rax,1)
movapd %xmm1,%xmm0
call   1070 <sqrt@plt>
cvttsd2si %xmm0,%rax
cmp    $0x3e8,%rax
cmovge %r12,%rax
mov    %rax,0x680(%rsp,%rbx,8)
add    $0x1,%rbx
add    $0x14,%rbp
cmp    $0xa,%rbx
je     2360 <main+0x1200>
cmpl   $0x0,0x3a0(%rsp,%rbp,1)
jne    2116 <main+0xfb6>
cmpl   $0x0,0x4c0(%rsp,%rbp,1)
je     20f0 <main+0xf90>
mov    0x4cc(%rsp,%rbp,1),%r15d
xorps  %xmm1,%xmm1
cvtsi2sd %r15d,%xmm1
mov    0x3ac(%rsp,%rbp,1),%r14d
xorps  %xmm2,%xmm2
cvtsi2sd %r14d,%xmm2
test   %r14d,%r14d
movsd  %xmm1,0x50(%rsp)
js     2160 <main+0x1000>
test   %r15d,%r15d
js     2165 <main+0x1005>
movapd %xmm2,%xmm0
mulsd  %xmm1,%xmm0
ucomisd 0x1eba(%rip),%xmm0
jb     2190 <main+0x1030>
sqrtsd %xmm0,%xmm0
jmp    21a7 <main+0x1047>
xchg   %ax,%ax
test   %r15d,%r15d
js     2146 <main+0xfe6>
movapd %xmm2,%xmm0
xorpd  0x1e8f(%rip),%xmm0
mulsd  %xmm1,%xmm0
ucomisd 0x1e93(%rip),%xmm0
jb     21c0 <main+0x1060>
sqrtsd %xmm0,%xmm0
jmp    21d7 <main+0x1077>
cs nopw 0x0(%rax,%rax,1)
nop
movapd %xmm2,0x150(%rsp)
call   1070 <sqrt@plt>
movapd 0x150(%rsp),%xmm2
mov    0x8(%rsp),%rdx
cvttsd2si %xmm0,%rax
cmp    $0x3e8,%rax
cmovge %r12,%rax
jmp    21fa <main+0x109a>
nopl   (%rax)
movapd %xmm2,0x150(%rsp)
call   1070 <sqrt@plt>
movapd 0x150(%rsp),%xmm2
mov    0x8(%rsp),%rdx
xorpd  0x1e1c(%rip),%xmm0
cvttsd2si %xmm0,%rax
cmp    $0xfffffffffffffc19,%rax
mov    $0xfffffffffffffc18,%rcx
cmovl  %rcx,%rax
mov    %rax,0x470(%rsp,%rbx,8)
test   %edx,%edx
js     2230 <main+0x10d0>
test   %r14d,%r14d
js     2235 <main+0x10d5>
mulsd  0x160(%rsp),%xmm2
ucomisd 0x1df4(%rip),%xmm2
jb     2260 <main+0x1100>
xorps  %xmm0,%xmm0
sqrtsd %xmm2,%xmm0
jmp    226e <main+0x110e>
nopw   0x0(%rax,%rax,1)
test   %r14d,%r14d
js     220b <main+0x10ab>
mulsd  0x170(%rsp),%xmm2
ucomisd 0x1dca(%rip),%xmm2
jb     2290 <main+0x1130>
xorps  %xmm0,%xmm0
sqrtsd %xmm2,%xmm0
jmp    229e <main+0x113e>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
movapd %xmm2,%xmm0
call   1070 <sqrt@plt>
mov    0x8(%rsp),%rdx
movsd  0x50(%rsp),%xmm1
cvttsd2si %xmm0,%rax
cmp    $0x3e8,%rax
cmovge %r12,%rax
jmp    22c2 <main+0x1162>
cs nopw 0x0(%rax,%rax,1)
nop
movapd %xmm2,%xmm0
call   1070 <sqrt@plt>
mov    0x8(%rsp),%rdx
movsd  0x50(%rsp),%xmm1
xorpd  0x1d54(%rip),%xmm0
cvttsd2si %xmm0,%rax
cmp    $0xfffffffffffffc19,%rax
mov    $0xfffffffffffffc18,%rcx
cmovl  %rcx,%rax
mov    %rax,0x630(%rsp,%rbx,8)
test   %edx,%edx
js     2300 <main+0x11a0>
test   %r15d,%r15d
js     2305 <main+0x11a5>
mulsd  0x160(%rsp),%xmm1
ucomisd 0x1d2c(%rip),%xmm1
mov    $0x0,%r15d
jb     20d0 <main+0xf70>
xorps  %xmm0,%xmm0
sqrtsd %xmm1,%xmm0
jmp    20d9 <main+0xf79>
nopl   0x0(%rax)
test   %r15d,%r15d
js     22d3 <main+0x1173>
mulsd  0x170(%rsp),%xmm1
ucomisd 0x1cfa(%rip),%xmm1
mov    $0x0,%r15d
jb     2330 <main+0x11d0>
xorps  %xmm0,%xmm0
sqrtsd %xmm1,%xmm0
jmp    2339 <main+0x11d9>
nopw   0x0(%rax,%rax,1)
movapd %xmm1,%xmm0
call   1070 <sqrt@plt>
xorpd  0x1cbf(%rip),%xmm0
cvttsd2si %xmm0,%rax
cmp    $0xfffffffffffffc19,%rax
mov    $0xfffffffffffffc18,%rcx
cmovl  %rcx,%rax
jmp    20e8 <main+0xf88>
nopl   0x0(%rax)
lea    0x211d(%rip),%rdi
call   1040 <puts@plt>
mov    0x1d0(%rsp),%r9d
mov    0x1d4(%rsp),%r10d
mov    0x1d8(%rsp),%ebx
mov    0x1dc(%rsp),%ebp
sub    $0x8,%rsp
lea    0x1cb3(%rip),%r12
mov    %r12,%rdi
mov    0x18(%rsp),%esi
mov    0x24(%rsp),%edx
mov    0xc(%rsp),%ecx
mov    0x10(%rsp),%r8
xor    %eax,%eax
push   %rbp
push   %rbx
push   %r10
call   1050 <printf@plt>
add    $0x20,%rsp
xor    %ebx,%ebx
lea    0x1fc(%rsp),%rbp
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
mov    -0x1c(%rbp),%esi
mov    -0x18(%rbp),%edx
mov    -0x14(%rbp),%ecx
mov    -0x10(%rbp),%r8d
mov    -0xc(%rbp),%r9d
mov    -0x8(%rbp),%r10d
mov    -0x4(%rbp),%r11d
mov    0x0(%rbp),%r14d
sub    $0x8,%rsp
mov    %r12,%rdi
xor    %eax,%eax
push   %r14
push   %r11
push   %r10
call   1050 <printf@plt>
add    $0x20,%rsp
add    $0x20,%rbp
add    $0x2,%rbx
cmp    $0x1c,%rbx
jb     23d0 <main+0x1270>
mov    0x3a0(%rsp),%edx
mov    0x3b4(%rsp),%edi
xor    %esi,%esi
xor    %ecx,%ecx
mov    0x4c0(%rsp),%eax
mov    %edx,0x150(%rsp)
or     %edx,%eax
sete   %bl
setne  %dl
mov    $0x0,%r8d
mov    $0x0,%eax
je     2450 <main+0x12f0>
mov    0x470(%rsp),%rax
or     0x4d4(%rsp),%edi
mov    0x4c(%rsp),%r14d
je     2480 <main+0x1320>
mov    %bl,%sil
mov    $0x2,%ecx
sub    %rsi,%rcx
mov    0x478(%rsp),%rdx
jmp    2487 <main+0x1327>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
mov    %dl,%cl
mov    $0x0,%edx
add    %rdx,%rax
mov    0x3c8(%rsp),%edx
xor    %esi,%esi
or     0x4e8(%rsp),%edx
setne  %dl
mov    $0x0,%edi
je     24ac <main+0x134c>
mov    0x480(%rsp),%rdi
add    %rdi,%rax
mov    %dl,%sil
add    %rsi,%rcx
mov    0x3dc(%rsp),%edx
xor    %esi,%esi
or     0x4fc(%rsp),%edx
setne  %dl
mov    $0x0,%edi
je     24d7 <main+0x1377>
mov    0x488(%rsp),%rdi
add    %rdi,%rax
mov    %dl,%sil
add    %rsi,%rcx
mov    0x3f0(%rsp),%edx
xor    %esi,%esi
or     0x510(%rsp),%edx
setne  %dl
mov    $0x0,%edi
je     2502 <main+0x13a2>
mov    0x490(%rsp),%rdi
add    %rdi,%rax
mov    %dl,%sil
add    %rsi,%rcx
mov    0x404(%rsp),%edx
xor    %esi,%esi
or     0x524(%rsp),%edx
setne  %dl
mov    $0x0,%edi
je     252d <main+0x13cd>
mov    0x498(%rsp),%rdi
add    %rdi,%rax
mov    %dl,%sil
add    %rsi,%rcx
mov    0x418(%rsp),%edx
xor    %esi,%esi
or     0x538(%rsp),%edx
setne  %dl
mov    $0x0,%edi
je     2558 <main+0x13f8>
mov    0x4a0(%rsp),%rdi
add    %rdi,%rax
mov    %dl,%sil
add    %rsi,%rcx
mov    0x42c(%rsp),%edx
xor    %esi,%esi
or     0x54c(%rsp),%edx
setne  %dl
mov    $0x0,%edi
je     2583 <main+0x1423>
mov    0x4a8(%rsp),%rdi
add    %rdi,%rax
mov    %dl,%sil
add    %rsi,%rcx
mov    0x440(%rsp),%edx
xor    %esi,%esi
or     0x560(%rsp),%edx
setne  %dl
je     25a9 <main+0x1449>
mov    0x4b0(%rsp),%r8
add    %r8,%rax
mov    %dl,%sil
add    %rsi,%rcx
mov    0x454(%rsp),%edx
or     0x574(%rsp),%edx
jne    25d0 <main+0x1470>
test   %rcx,%rcx
jne    25dc <main+0x147c>
mov    0x8(%rsp),%r12
jmp    2632 <main+0x14d2>
xchg   %ax,%ax
add    0x4b8(%rsp),%rax
add    $0x1,%rcx
mov    %rax,%rdx
or     %rcx,%rdx
mov    $0x3e8,%esi
shr    $0x20,%rdx
je     2600 <main+0x14a0>
cqto
idiv   %rcx
jmp    2604 <main+0x14a4>
cs nopw 0x0(%rax,%rax,1)
xchg   %ax,%ax
xor    %edx,%edx
div    %ecx
mov    0x8(%rsp),%r12
movslq %r12d,%r12
add    %rax,%r12
cmp    $0x3e8,%r12
cmovge %rsi,%r12
cmp    $0xfffffffffffffc19,%r12
mov    $0xfffffc18,%eax
cmovl  %eax,%r12d
mov    %r12d,0x1cc(%rsp)
lea    0x1e5f(%rip),%rdi
call   1040 <puts@plt>
mov    0x20(%rsp),%esi
lea    0x1a19(%rip),%rbx
mov    %rbx,%rdi
mov    %esi,0x160(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x24(%rsp),%esi
mov    %rbx,%rdi
mov    %esi,0x18c(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x28(%rsp),%esi
mov    %rbx,%rdi
mov    %esi,0x188(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x2c(%rsp),%esi
mov    %rbx,%rdi
mov    %esi,0x6c(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x30(%rsp),%esi
mov    %rbx,%rdi
mov    %esi,0x70(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x34(%rsp),%esi
mov    %rbx,%rdi
mov    %esi,0x74(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x38(%rsp),%esi
mov    %rbx,%rdi
mov    %esi,0x78(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x3c(%rsp),%esi
mov    %rbx,%rdi
mov    %esi,0x5c(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x40(%rsp),%esi
mov    %rbx,%rdi
mov    %esi,0x170(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
lea    0x1da8(%rip),%rdi
call   1040 <puts@plt>
mov    $0x21,%edi
call   1030 <putchar@plt>
mov    0x60(%rsp),%rbx
add    $0x1,%ebx
test   %r12d,%r12d
lea    0x19c2(%rip),%rdi
lea    0x193a(%rip),%rax
cmovs  %rax,%rdi
mov    0x10(%rsp),%esi
mov    0x1c(%rsp),%edx
mov    0x4(%rsp),%ecx
mov    %r12d,%r8d
mov    0x7c(%rsp),%r9d
xor    %eax,%eax
push   %r13
push   $0x9
mov    %rbx,0x70(%rsp)
push   %rbx
push   $0x3
push   0xc8(%rsp)
push   $0x3
call   1050 <printf@plt>
add    $0x30,%rsp
xor    %r8d,%r8d
xor    %ebx,%ebx
mov    0x150(%rsp),%esi
mov    $0x3e8,%edi
test   %esi,%esi
jne    278e <main+0x162e>
nopl   0x0(%rax,%rax,1)
cmpl   $0x0,0x4c0(%rsp,%rbx,1)
je     2916 <main+0x17b6>
test   %rbx,%rbx
cmove  %r15d,%r14d
cmp    $0x14,%r14d
jge    28a0 <main+0x1740>
add    $0x1,%r14d
mov    %r14d,0x4c(%rsp)
mov    0x4cc(%rsp,%rbx,1),%r15d
test   %r15d,%r15d
lea    0x1a98(%rip),%rax
lea    0x19a9(%rip),%rcx
cmovs  %rcx,%rax
lea    0x1afa(%rip),%rdi
lea    0x1a0b(%rip),%rcx
cmovs  %rcx,%rdi
mov    0x3ac(%rsp,%rbx,1),%r13d
test   %r13d,%r13d
mov    0x3a4(%rsp,%rbx,1),%edx
mov    0x3a8(%rsp,%rbx,1),%ecx
mov    0x3b0(%rsp,%rbx,1),%r9d
mov    0x680(%rsp,%r8,1),%r10
mov    0x4c0(%rsp,%rbx,1),%r14d
mov    0x4c4(%rsp,%rbx,1),%ebp
mov    %rbp,0x10(%rsp)
mov    0x4c8(%rsp,%rbx,1),%r11d
cmovs  %rax,%rdi
mov    0x4d0(%rsp,%rbx,1),%r12d
sub    $0x8,%rsp
mov    %r8,%rbp
mov    %r13d,%r8d
mov    %r9d,0x10(%rsp)
xor    %eax,%eax
mov    %rbp,0x58(%rsp)
push   0x638(%rsp,%rbp,1)
push   %r12
push   %r15
push   %r11
push   0x38(%rsp)
push   %r14
mov    %r10,%r12
push   %r10
call   1050 <printf@plt>
add    $0x40,%rsp
test   %r14d,%r14d
je     28c0 <main+0x1760>
lea    0x1acf(%rip),%rdi
xor    %eax,%eax
call   1050 <printf@plt>
imul   %r15d,%r13d
mov    0x1cc(%rsp),%eax
test   %r13d,%r13d
jns    2886 <main+0x1726>
test   %eax,%eax
jg     2897 <main+0x1737>
test   %r13d,%r13d
jle    293b <main+0x17db>
test   %eax,%eax
jns    293b <main+0x17db>
lea    0x1c76(%rip),%rdi
jmp    28c7 <main+0x1767>
mov    0x680(%rsp,%r8,1),%r12
mov    0x3b0(%rsp,%rbx,1),%eax
jmp    28e2 <main+0x1782>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
lea    0x1c3a(%rip),%rdi
call   1040 <puts@plt>
xor    %r15d,%r15d
mov    $0x3e8,%edi
mov    0x4c(%rsp),%r14d
mov    0x50(%rsp),%r8
mov    0x8(%rsp),%eax
cltq
shl    $0x4,%rax
movslq 0x1cc(%rsp,%rax,1),%rcx
add    %r12,%rcx
cmp    $0x3e8,%rcx
jl     2901 <main+0x17a1>
mov    $0x3e8,%ecx
cmp    $0xfffffffffffffc19,%rcx
jge    290f <main+0x17af>
mov    $0xfffffc18,%ecx
mov    %ecx,0x1cc(%rsp,%rax,1)
cmp    $0xb4,%rbx
je     2970 <main+0x1810>
mov    0x3b4(%rsp,%rbx,1),%esi
add    $0x14,%rbx
add    $0x8,%r8
test   %esi,%esi
jne    278e <main+0x162e>
jmp    2780 <main+0x1620>
test   %r13d,%r13d
mov    $0x0,%r15d
mov    0x4c(%rsp),%r14d
je     2958 <main+0x17f8>
test   %eax,%eax
je     2958 <main+0x17f8>
lea    0x1bba(%rip),%rdi
jmp    295f <main+0x17ff>
lea    0x1bb3(%rip),%rdi
call   1040 <puts@plt>
mov    $0x3e8,%edi
jmp    28d9 <main+0x1779>
xchg   %ax,%ax
xor    %eax,%eax
lea    0x630(%rsp),%rcx
xor    %r13d,%r13d
mov    $0xfffffc18,%ebp
mov    0x150(%rsp),%edx
test   %edx,%edx
je     29d4 <main+0x1874>
nopl   (%rax)
cmpl   $0x0,0x4c0(%rsp,%rax,1)
je     2a00 <main+0x18a0>
movslq 0x4d0(%rsp,%rax,1),%rdx
shl    $0x4,%rdx
movslq 0x1cc(%rsp,%rdx,1),%rsi
add    (%rcx),%rsi
cmp    $0x3e8,%rsi
jl     29bf <main+0x185f>
mov    $0x3e8,%esi
cmp    $0xfffffffffffffc19,%rsi
jge    29cd <main+0x186d>
mov    $0xfffffc18,%esi
mov    %esi,0x1cc(%rsp,%rdx,1)
cmp    $0xb4,%rax
je     2a45 <main+0x18e5>
mov    0x3b4(%rsp,%rax,1),%edx
add    $0x8,%rcx
add    $0x14,%rax
test   %edx,%edx
jne    2990 <main+0x1830>
jmp    29d4 <main+0x1874>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
mov    0x4c4(%rsp,%rax,1),%rdx
movslq %r13d,%r13
mov    %r13,%rsi
shl    $0x4,%rsi
mov    %rdx,0xb4(%rsp,%rsi,1)
mov    (%rcx),%rdx
cmp    $0x3e8,%rdx
cmovge %rdi,%rdx
cmp    $0xfffffffffffffc19,%rdx
cmovl  %ebp,%edx
mov    %edx,0xbc(%rsp,%rsi,1)
add    $0x1,%r13d
cmp    $0xb4,%rax
jne    29dc <main+0x187c>
mov    %r14d,0x4c(%rsp)
lea    0x1a73(%rip),%rdi
call   1040 <puts@plt>
mov    0xb4(%rsp),%r15d
mov    0xb8(%rsp),%ebp
mov    0xbc(%rsp),%ebx
lea    0x15e2(%rip),%r14
mov    %r14,%rdi
xor    %esi,%esi
mov    %r15d,%edx
mov    %ebp,%ecx
mov    %ebx,%r8d
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xc4(%rsp),%edx
mov    0xc8(%rsp),%ecx
mov    0xcc(%rsp),%r8d
mov    %r14,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xd4(%rsp),%edx
mov    0xd8(%rsp),%ecx
mov    0xdc(%rsp),%r8d
mov    %r14,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xe4(%rsp),%edx
mov    0xe8(%rsp),%ecx
mov    0xec(%rsp),%r8d
mov    %r14,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xf4(%rsp),%edx
mov    0xf8(%rsp),%ecx
mov    0xfc(%rsp),%r8d
mov    %r14,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x104(%rsp),%edx
mov    0x108(%rsp),%ecx
mov    0x10c(%rsp),%r8d
mov    %r14,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x114(%rsp),%edx
mov    0x118(%rsp),%ecx
mov    0x11c(%rsp),%r8d
mov    %r14,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x124(%rsp),%edx
mov    0x128(%rsp),%ecx
mov    0x12c(%rsp),%r8d
mov    %r14,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x134(%rsp),%edx
mov    0x138(%rsp),%ecx
mov    0x13c(%rsp),%r8d
mov    %r14,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x144(%rsp),%edx
mov    0x148(%rsp),%ecx
mov    0x14c(%rsp),%r8d
mov    %r14,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
test   %r13d,%r13d
jle    2cb0 <main+0x1b50>
mov    %r13d,%r12d
mov    %r12,%rax
shl    $0x4,%rax
add    $0xfffffffffffffff0,%rax
xor    %ecx,%ecx
xor    %edx,%edx
lea    0xcc(%rsp),%rsi
xorpd  %xmm0,%xmm0
mov    %edx,0x590(%rsp,%rcx,1)
mov    %r15d,0x594(%rsp,%rcx,1)
mov    %ebp,0x598(%rsp,%rcx,1)
mov    %ebx,0x59c(%rsp,%rcx,1)
movapd %xmm0,-0x1c(%rsi,%rcx,1)
cmp    %rcx,%rax
je     2c30 <main+0x1ad0>
mov    0xc0(%rsp,%rcx,1),%edx
mov    0xc4(%rsp,%rcx,1),%r15d
mov    0xc8(%rsp,%rcx,1),%ebp
mov    0xcc(%rsp,%rcx,1),%ebx
add    $0x10,%rcx
jmp    2be0 <main+0x1a80>
nopl   0x0(%rax,%rax,1)
test   %r13d,%r13d
jle    2cb0 <main+0x1b50>
cmp    $0x1,%r13d
jne    2f9b <main+0x1e3b>
xor    %r13d,%r13d
lea    0x590(%rsp),%rax
jmp    2c8e <main+0x1b2e>
nopl   0x0(%rax)
movslq %r13d,%r13
mov    %r13,%rsi
shl    $0x4,%rsi
mov    %ecx,0xb0(%rsp,%rsi,1)
mov    %edx,0xb4(%rsp,%rsi,1)
mov    0x8(%rax),%ecx
mov    %ecx,0xb8(%rsp,%rsi,1)
mov    0xc(%rax),%ecx
mov    %ecx,0xbc(%rsp,%rsi,1)
add    $0x1,%r13d
movapd %xmm0,(%rax)
add    $0x10,%rax
add    $0xffffffffffffffff,%r12
je     2cb0 <main+0x1b50>
mov    (%rax),%ecx
mov    0x4(%rax),%edx
mov    %ecx,%esi
or     %edx,%esi
jne    2c50 <main+0x1af0>
xor    %edx,%edx
cmpl   $0x0,0x8(%rax)
jne    2c50 <main+0x1af0>
jmp    2c84 <main+0x1b24>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
lea    0x182c(%rip),%rdi
call   1040 <puts@plt>
mov    0xb0(%rsp),%esi
mov    0xb4(%rsp),%r15d
mov    0xb8(%rsp),%r14d
mov    0xbc(%rsp),%ebp
lea    0x1374(%rip),%rbx
mov    %rbx,%rdi
mov    %r15d,%edx
mov    %r14d,%ecx
mov    %ebp,%r8d
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xc0(%rsp),%esi
mov    0xc4(%rsp),%edx
mov    0xc8(%rsp),%ecx
mov    0xcc(%rsp),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xd0(%rsp),%esi
mov    0xd4(%rsp),%edx
mov    0xd8(%rsp),%ecx
mov    0xdc(%rsp),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xe0(%rsp),%esi
mov    0xe4(%rsp),%edx
mov    0xe8(%rsp),%ecx
mov    0xec(%rsp),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xf0(%rsp),%esi
mov    0xf4(%rsp),%edx
mov    0xf8(%rsp),%ecx
mov    0xfc(%rsp),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x100(%rsp),%esi
mov    0x104(%rsp),%edx
mov    0x108(%rsp),%ecx
mov    0x10c(%rsp),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x110(%rsp),%esi
mov    0x114(%rsp),%edx
mov    0x118(%rsp),%ecx
mov    0x11c(%rsp),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x120(%rsp),%esi
mov    0x124(%rsp),%edx
mov    0x128(%rsp),%ecx
mov    0x12c(%rsp),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x130(%rsp),%esi
mov    0x134(%rsp),%edx
mov    0x138(%rsp),%ecx
mov    0x13c(%rsp),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x140(%rsp),%esi
mov    0x144(%rsp),%edx
mov    0x148(%rsp),%ecx
mov    0x14c(%rsp),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %r13d,%eax
test   %r13d,%r13d
mov    0x4(%rsp),%r8d
mov    0x1c(%rsp),%r12d
mov    0x160(%rsp),%r9d
jle    2efd <main+0x1d9d>
cmp    $0x1,%r13d
jne    2e90 <main+0x1d30>
mov    $0x1e,%edx
xor    %ecx,%ecx
test   $0x1,%al
jne    2edc <main+0x1d7c>
jmp    2ef7 <main+0x1d97>
cs nopw 0x0(%rax,%rax,1)
xchg   %ax,%ax
mov    %eax,%edx
and    $0xfffffffe,%edx
lea    0x390(%rsp),%rsi
lea    0xc0(%rsp),%rdi
xor    %ecx,%ecx
nopw   0x0(%rax,%rax,1)
mov    (%rsi),%ebx
mov    %ebx,-0x10(%rdi)
mov    -0x10(%rsi),%ebx
mov    %ebx,(%rdi)
add    $0x2,%rcx
add    $0x20,%rdi
add    $0xffffffffffffffe0,%rsi
cmp    %rcx,%rdx
jne    2eb0 <main+0x1d50>
mov    $0x1e,%edx
sub    %rcx,%rdx
mov    0x1c(%rsp),%r12d
test   $0x1,%al
je     2ef7 <main+0x1d97>
shl    $0x4,%rdx
lea    0x1c0(%rsp),%rsi
mov    -0x10(%rdx,%rsi,1),%edx
shl    $0x4,%rcx
mov    %edx,0xb0(%rsp,%rcx,1)
cmp    $0x1d,%r13d
jg     2f36 <main+0x1dd6>
movslq %r13d,%rcx
mov    %rcx,%rdx
shl    $0x4,%rdx
neg    %rdx
mov    $0x1e,%esi
lea    0x390(%rsp),%rdi
nopw   0x0(%rax,%rax,1)
movapd (%rdi,%rdx,1),%xmm0
movapd %xmm0,(%rdi)
add    $0xffffffffffffffff,%rsi
add    $0xfffffffffffffff0,%rdi
cmp    %rcx,%rsi
jg     2f20 <main+0x1dc0>
test   %r13d,%r13d
jle    1580 <main+0x420>
shl    $0x4,%rax
add    $0xfffffffffffffff0,%rax
xor    %ecx,%ecx
nopl   0x0(%rax)
mov    0xb0(%rsp,%rcx,1),%edx
mov    %edx,0x1c0(%rsp,%rcx,1)
mov    %r15d,0x1c4(%rsp,%rcx,1)
mov    %r14d,0x1c8(%rsp,%rcx,1)
mov    %ebp,0x1cc(%rsp,%rcx,1)
cmp    %rcx,%rax
je     1580 <main+0x420>
mov    0xc4(%rsp,%rcx,1),%r15d
mov    0xc8(%rsp,%rcx,1),%r14d
mov    0xcc(%rsp,%rcx,1),%ebp
add    $0x10,%rcx
jmp    2f50 <main+0x1df0>
lea    -0x1(%r13),%eax
mov    %rax,0x10(%rsp)
xor    %r15d,%r15d
jmp    2fc5 <main+0x1e65>
nopl   0x0(%rax)
add    $0x1,%r15
mov    %r15,%rax
mov    %rax,%r15
cmp    0x10(%rsp),%rax
je     2c3f <main+0x1adf>
mov    %r15,%rbp
shl    $0x4,%rbp
mov    0x590(%rsp,%rbp,1),%esi
mov    0x594(%rsp,%rbp,1),%ebx
mov    0x598(%rsp,%rbp,1),%r14d
mov    0x59c(%rsp,%rbp,1),%r8d
lea    0x1357(%rip),%rdi
mov    %ebx,%edx
mov    %r14d,%ecx
xor    %eax,%eax
call   1050 <printf@plt>
lea    0x1(%r15),%rax
test   %ebx,%ebx
jne    300e <main+0x1eae>
test   %r14d,%r14d
je     30a7 <main+0x1f47>
cmp    %r12,%rax
xorpd  %xmm0,%xmm0
jge    2fb7 <main+0x1e57>
lea    (%rsp,%rbp,1),%rcx
add    $0x594,%rcx
mov    %eax,%edx
shl    $0x4,%rdx
lea    0x59c(%rsp),%rsi
add    %rsi,%rdx
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
add    $0x1,%eax
mov    -0x8(%rdx),%esi
cmp    %esi,%ebx
jne    3060 <main+0x1f00>
mov    -0x4(%rdx),%edi
cmp    %edi,0x4(%rcx)
je     306c <main+0x1f0c>
cmp    %edi,%ebx
je     3067 <main+0x1f07>
jmp    3096 <main+0x1f36>
nopl   0x0(%rax,%rax,1)
mov    -0x4(%rdx),%edi
cmp    %edi,%ebx
jne    3096 <main+0x1f36>
cmp    %esi,0x4(%rcx)
jne    3096 <main+0x1f36>
mov    0x8(%rcx),%edi
add    (%rdx),%edi
mov    %edi,0x8(%rcx)
mov    $0xfffffc18,%esi
cmp    $0xfffffc18,%edi
jl     308e <main+0x1f2e>
mov    $0x3e8,%esi
cmp    $0x3e9,%edi
jl     3091 <main+0x1f31>
mov    %esi,0x8(%rcx)
movapd %xmm0,-0xc(%rdx)
cmp    %eax,%r13d
jle    2fb0 <main+0x1e50>
mov    (%rcx),%ebx
add    $0x10,%rdx
jmp    3040 <main+0x1ee0>
xorpd  %xmm0,%xmm0
jmp    2fb7 <main+0x1e57>
xor    %edi,%edi
test   $0x1,%bpl
jne    1add <main+0x97d>
jmp    1af8 <main+0x998>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
mov    0x170(%rsp),%eax
mov    %eax,%r13d
test   %eax,%eax
mov    0x18c(%rsp),%r15d
mov    0x188(%rsp),%r12d
jne    3140 <main+0x1fe0>
mov    0x5c(%rsp),%eax
mov    %eax,%r13d
test   %eax,%eax
jne    3140 <main+0x1fe0>
mov    0x78(%rsp),%eax
mov    %eax,%r13d
test   %eax,%eax
jne    3140 <main+0x1fe0>
mov    0x74(%rsp),%eax
mov    %eax,%r13d
test   %eax,%eax
jne    3140 <main+0x1fe0>
mov    0x70(%rsp),%eax
mov    %eax,%r13d
test   %eax,%eax
jne    3140 <main+0x1fe0>
mov    0x6c(%rsp),%eax
mov    %eax,%r13d
test   %eax,%eax
jne    3140 <main+0x1fe0>
mov    %r12d,%r13d
test   %r12d,%r12d
jne    3140 <main+0x1fe0>
test   %r15d,%r15d
mov    %r15d,%r13d
cmove  %r9d,%r13d
nopw   0x0(%rax,%rax,1)
xor    %r14d,%r14d
lea    0x121c(%rip),%rdi
xor    %eax,%eax
mov    %r9d,%ebp
call   1050 <printf@plt>
lea    0x121d(%rip),%rbx
mov    %rbx,%rdi
mov    %ebp,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
mov    %r15d,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
mov    %r12d,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
mov    0x6c(%rsp),%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
mov    0x70(%rsp),%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
mov    0x74(%rsp),%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
mov    0x78(%rsp),%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
mov    0x5c(%rsp),%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
mov    0x170(%rsp),%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    %rbx,%rdi
xor    %esi,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x1187(%rip),%rdi
mov    %r13d,%esi
xor    %eax,%eax
call   1050 <printf@plt>
movl   $0x0,0x10(%rsp)
test   %r13d,%r13d
je     3350 <main+0x21f0>
mov    $0x3e9,%r15d
xor    %r12d,%r12d
movl   $0x0,0x10(%rsp)
jmp    3267 <main+0x2107>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
lea    0x119d(%rip),%rdi
mov    %r13d,%esi
xor    %eax,%eax
call   1050 <printf@plt>
lea    0x11aa(%rip),%rdi
mov    0x10(%rsp),%ebx
mov    %ebx,%esi
xor    %eax,%eax
call   1050 <printf@plt>
test   %ebx,%ebx
je     32c0 <main+0x2160>
add    $0x1,%r12d
cmp    $0xa,%r12d
je     3350 <main+0x21f0>
mov    $0xc,%ebx
jmp    327d <main+0x211d>
xchg   %ax,%ax
add    $0x10,%rbx
cmp    $0x1ec,%rbx
je     3230 <main+0x20d0>
cmp    %r13d,0x1b8(%rsp,%rbx,1)
jne    3270 <main+0x2110>
mov    0x1c0(%rsp,%rbx,1),%ebp
cmp    %r15d,%ebp
jg     3270 <main+0x2110>
mov    0x1b4(%rsp,%rbx,1),%ecx
mov    0x1bc(%rsp,%rbx,1),%edx
lea    0x10ec(%rip),%rdi
mov    %r13d,%esi
mov    %edx,0x10(%rsp)
mov    %ebp,%r8d
xor    %eax,%eax
call   1050 <printf@plt>
mov    %ebp,%r15d
jmp    3270 <main+0x2110>
xchg   %ax,%ax
cmp    $0x64,%r13d
jl     3344 <main+0x21e4>
lea    0x200(%rsp),%rcx
xor    %eax,%eax
cmp    %r13d,-0x40(%rcx)
je     3320 <main+0x21c0>
cmp    %r13d,-0x30(%rcx)
je     3300 <main+0x21a0>
cmp    %r13d,-0x20(%rcx)
je     3306 <main+0x21a6>
cmp    %r13d,-0x10(%rcx)
je     330c <main+0x21ac>
cmp    %r13d,(%rcx)
je     3312 <main+0x21b2>
add    $0x5,%rax
add    $0x50,%rcx
cmp    $0x1e,%rax
jne    32d0 <main+0x2170>
jmp    3259 <main+0x20f9>
add    $0x1,%rax
jmp    3320 <main+0x21c0>
add    $0x2,%rax
jmp    3320 <main+0x21c0>
add    $0x3,%rax
jmp    3320 <main+0x21c0>
add    $0x4,%rax
cs nopw 0x0(%rax,%rax,1)
mov    %eax,%eax
shl    $0x4,%rax
mov    0x1c8(%rsp,%rax,1),%r13d
test   %r13d,%r13d
jne    3259 <main+0x20f9>
mov    0x1c4(%rsp,%rax,1),%r13d
jmp    3259 <main+0x20f9>
movl   $0x0,0x10(%rsp)
nopl   0x0(%rax)
lea    0x10b2(%rip),%rdi
mov    0x10(%rsp),%ebx
mov    %ebx,%esi
xor    %eax,%eax
call   1050 <printf@plt>
xorpd  %xmm0,%xmm0
movapd %xmm0,0x80(%rsp)
movapd %xmm0,0x90(%rsp)
movq   $0x0,0xa0(%rsp)
mov    %ebx,0x80(%rsp)
mov    %ebx,%eax
lea    0xcbf(%rip),%rbx
jmp    33b8 <main+0x2258>
nopl   0x0(%rax,%rax,1)
cmp    $0x9,%r14d
jge    34d0 <main+0x2370>
add    $0x1,%r14d
movslq %r14d,%rax
mov    0x80(%rsp,%rax,4),%eax
cmp    $0x64,%eax
jl     33a0 <main+0x2240>
cmp    $0x8,%r14d
jg     3440 <main+0x22e0>
movslq %r14d,%rsi
mov    $0x9,%edx
mov    $0x9,%ecx
sub    %rsi,%rcx
mov    %ecx,%eax
and    $0x3,%eax
add    $0xfffffffffffffffa,%rsi
cmp    $0x3,%rsi
jb     3411 <main+0x22b1>
and    $0xfffffffffffffffc,%rcx
mov    $0x9,%esi
nop
lea    -0x4(%rsi),%rdx
movupd 0x70(%rsp,%rsi,4),%xmm0
movupd %xmm0,0x74(%rsp,%rsi,4)
lea    (%rcx,%rsi,1),%rdi
add    $0xfffffffffffffffc,%rdi
mov    %rdx,%rsi
cmp    $0x9,%rdi
jne    33f0 <main+0x2290>
test   %rax,%rax
je     3440 <main+0x22e0>
lea    (%rsp,%rdx,4),%rcx
add    $0x80,%rcx
neg    %rax
xor    %edx,%edx
cs nopw 0x0(%rax,%rax,1)
mov    -0x4(%rcx,%rdx,4),%esi
mov    %esi,(%rcx,%rdx,4)
add    $0xffffffffffffffff,%rdx
cmp    %rdx,%rax
jne    3430 <main+0x22d0>
mov    $0x8,%eax
jmp    346d <main+0x230d>
nopw   0x0(%rax,%rax,1)
movl   $0x0,0x80(%rsp,%rcx,4)
add    $0x1,%ecx
mov    %ecx,%r14d
add    $0x10,%rax
cmp    $0x1e8,%rax
je     34b0 <main+0x2350>
mov    0x1b8(%rsp,%rax,1),%edx
movslq %r14d,%rcx
cmp    0x80(%rsp,%rcx,4),%edx
jne    3461 <main+0x2301>
mov    0x1bc(%rsp,%rax,1),%esi
cmp    %esi,%edx
je     3450 <main+0x22f0>
mov    0x1c0(%rsp,%rax,1),%edi
cmp    %edi,%edx
je     3450 <main+0x22f0>
mov    %esi,0x80(%rsp,%rcx,4)
mov    %edi,0x84(%rsp,%rcx,4)
jmp    33ae <main+0x224e>
nopl   0x0(%rax)
movslq %r14d,%r14
movl   $0x0,0x80(%rsp,%r14,4)
jmp    33aa <main+0x224a>
cs nopw 0x0(%rax,%rax,1)
xchg   %ax,%ax
lea    0xf3c(%rip),%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x80(%rsp),%esi
lea    0xe8c(%rip),%rbp
mov    %rbp,%rdi
mov    %esi,0x5c(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x84(%rsp),%esi
mov    %rbp,%rdi
mov    %esi,0xa8(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x88(%rsp),%esi
mov    %rbp,%rdi
mov    %esi,0x60(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x8c(%rsp),%esi
mov    %rbp,%rdi
mov    %esi,0x170(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x90(%rsp),%esi
mov    %rbp,%rdi
mov    %esi,0x150(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x94(%rsp),%esi
mov    %rbp,%rdi
mov    %esi,0x160(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x98(%rsp),%esi
mov    %rbp,%rdi
mov    %esi,0x8(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x9c(%rsp),%esi
mov    %rbp,%rdi
mov    %esi,0x50(%rsp)
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xa0(%rsp),%esi
mov    %rbp,%rdi
mov    %esi,%r13d
xor    %eax,%eax
call   1050 <printf@plt>
mov    0xa4(%rsp),%r12d
mov    %rbp,%rdi
mov    %r12d,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0xe74(%rip),%rdi
call   1040 <puts@plt>
mov    $0xc,%ebp
nopl   (%rax)
mov    0x1b4(%rsp,%rbp,1),%esi
mov    0x1b8(%rsp,%rbp,1),%edx
mov    0x1bc(%rsp,%rbp,1),%ecx
mov    0x1c0(%rsp,%rbp,1),%r8d
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
add    $0x10,%rbp
cmp    $0x1ec,%rbp
jne    35e0 <main+0x2480>
movapd 0x190(%rsp),%xmm0
movapd 0x1a0(%rsp),%xmm1
movapd %xmm0,0x20(%rsp)
mov    0x1b0(%rsp),%rax
mov    %rax,0x40(%rsp)
movapd %xmm1,0x30(%rsp)
mov    0x20(%rsp),%esi
lea    0xd2e(%rip),%rbx
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x24(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x28(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x2c(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x30(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x34(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x38(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x3c(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x40(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    0x44(%rsp),%esi
mov    %rbx,%rdi
xor    %eax,%eax
call   1050 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
cmpl   $0x0,0x10(%rsp)
lea    0x1cc(%rsp),%r14
mov    $0x0,%r15d
je     1388 <main+0x228>
test   %r12d,%r12d
jne    1350 <main+0x1f0>
mov    $0x9,%ebp
test   %r13d,%r13d
jne    3780 <main+0x2620>
mov    $0x8,%ebp
cmpl   $0x0,0x50(%rsp)
jne    3780 <main+0x2620>
mov    $0x7,%ebp
cmpl   $0x0,0x8(%rsp)
jne    3780 <main+0x2620>
mov    $0x6,%ebp
cmpl   $0x0,0x160(%rsp)
jne    3780 <main+0x2620>
mov    $0x5,%ebp
cmpl   $0x0,0x150(%rsp)
jne    3780 <main+0x2620>
mov    $0x4,%ebp
cmpl   $0x0,0x170(%rsp)
jne    3780 <main+0x2620>
mov    $0x3,%ebp
cmpl   $0x0,0x60(%rsp)
jne    3780 <main+0x2620>
mov    $0x2,%ebp
cmpl   $0x0,0xa8(%rsp)
jne    3780 <main+0x2620>
xor    %ebp,%ebp
cmpl   $0x0,0x5c(%rsp)
setne  %bpl
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
lea    0xca6(%rip),%rdi
mov    %ebp,%esi
xor    %eax,%eax
call   1050 <printf@plt>
mov    $0xa,%edx
sub    %ebp,%edx
mov    %ebp,%ecx
lea    -0x1(%rdx),%rsi
mov    %edx,%eax
and    $0x3,%eax
cmp    $0x3,%rsi
jae    37ac <main+0x264c>
xor    %esi,%esi
jmp    37e8 <main+0x2688>
and    $0xfffffffc,%edx
lea    0x54(%rsp),%rsi
lea    (%rsi,%rcx,4),%rdi
add    $0xffffffffffffffd8,%rdi
xor    %esi,%esi
xchg   %ax,%ax
mov    -0xc(%rdi,%rsi,4),%ebx
mov    %ebx,0x20(%rsp,%rsi,4)
mov    -0x8(%rdi,%rsi,4),%ebx
mov    %ebx,0x24(%rsp,%rsi,4)
mov    -0x4(%rdi,%rsi,4),%ebx
mov    %ebx,0x28(%rsp,%rsi,4)
mov    (%rdi,%rsi,4),%ebx
mov    %ebx,0x2c(%rsp,%rsi,4)
add    $0x4,%rsi
cmp    %rsi,%rdx
jne    37c0 <main+0x2660>
test   %rax,%rax
je     380f <main+0x26af>
lea    (%rsp,%rsi,4),%rdx
add    $0x20,%rdx
lea    (%rdx,%rcx,4),%rcx
xor    %esi,%esi
nopl   0x0(%rax,%rax,1)
mov    (%rcx,%rsi,4),%edi
mov    %edi,(%rdx,%rsi,4)
add    $0x1,%rsi
cmp    %rsi,%rax
jne    3800 <main+0x26a0>
test   %ebp,%ebp
jne    1368 <main+0x208>
jmp    1388 <main+0x228>
xor    %eax,%eax
add    $0x6d8,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret
lea    0xcdf(%rip),%rdi
call   1040 <puts@plt>
xor    %edi,%edi
call   1080 <exit@plt>

LLVM IR (-O0):
@__const.main.inputarray = [10 x i32] [i32 36, i32 16, i32 26, i32 36, i32 16, i32 26, i32 36, i32 16, i32 26, i32 36]
@.str = [30 x i8] c"input all empty, terminating\0A\00"
@.str.1 = [25 x i8] c"\0A\0ABEFORE TRIANGULATION:\0A\00"
@.str.2 = [26 x i8] c"%d %d %d %d\09\09%d %d %d %d\0A\00"
@.str.3 = [21 x i8] c"\0A\0ABEFORE AFFECTION:\0A\00"
@.str.4 = [23 x i8] c"\0AFOLDING INPUT ARRAY:\0A\00"
@.str.5 = [6 x i8] c"%-7d \00"
@.str.6 = [2 x i8] c"\0A\00"
@.str.7 = [23 x i8] c"\0ASTATE OF EVALUATION:\0A\00"
@.str.8 = [2 x i8] c"?\00"
@.str.9 = [2 x i8] c"!\00"
@.str.10 = [129 x i8] c" ATOM:%-7d L:%-7d R:%-7d VIC:%-+6d :: DAYDREAM:%-2d OF %-2d :: RECONS:%-2d OF %-2d :: HRCHY:%-3d OF %-3d :: INPOS %-3d\0A\00"
@.str.11 = [129 x i8] c" ATOM:%-7d L:%-7d R:%-7d ANA:%-+6d :: DAYDREAM:%-2d OF %-2d :: RECONS:%-2d OF %-2d :: HRCHY:%-3d OF %-3d :: INPOS %-3d\0A\00"
@.str.12 = [116 x i8] c" __/CONJ:%-7d L:%-7d R:%-7d,VIC:%-+9d POS:%-7d EFCT:%-+6d\0A \\COHB:%-7d L:%-7d R:%-7d`VIC:%-+9d POS:%-7d EFCT:%-+6d\00"
@.str.13 = [116 x i8] c" __/CONJ:%-7d L:%-7d R:%-7d,ANA:%-+9d POS:%-7d EFCT:%-+6d\0A \\COHB:%-7d L:%-7d R:%-7d`VIC:%-+9d POS:%-7d EFCT:%-+6d\00"
@.str.14 = [116 x i8] c" __/CONJ:%-7d L:%-7d R:%-7d,VIC:%-+9d POS:%-7d EFCT:%-+6d\0A \\COHB:%-7d L:%-7d R:%-7d`ANA:%-+9d POS:%-7d EFCT:%-+6d\00"
@.str.15 = [116 x i8] c" __/CONJ:%-7d L:%-7d R:%-7d,ANA:%-+9d POS:%-7d EFCT:%-+6d\0A \\COHB:%-7d L:%-7d R:%-7d`ANA:%-+9d POS:%-7d EFCT:%-+6d\00"
@.str.16 = [14 x i8] c" [ADJUSTED] \00"
@.str.17 = [3 x i8] c"-\0A\00"
@.str.18 = [3 x i8] c"0\0A\00"
@.str.19 = [3 x i8] c"+\0A\00"
@.str.20 = [16 x i8] c" [CONCLUDED] \0A\00"
@.str.21 = [32 x i8] c"\0A\0AHYPOTHESES BEFORE SCRUBBING:\0A\00"
@.str.22 = [13 x i8] c"%d %d %d %d\0A\00"
@.str.23 = [30 x i8] c"scrubhypothesis: %d %d %d %d\0A\00"
@.str.24 = [31 x i8] c"\0A\0AHYPOTHESES AFTER SCRUBBING:\0A\00"
@.str.25 = [18 x i8] c"____INPUT ARRAY: \00"
@.str.26 = [4 x i8] c"%d \00"
@.str.27 = [24 x i8] c"____SOLUTION FOUND: %d\0A\00"
@.str.28 = [64 x i8] c"solution: %d, plan for solution: %d, super-atom: %d, value: %d\0A\00"
@.str.29 = [30 x i8] c"____SOLUTION FOUND LATER: %d\0A\00"
@.str.30 = [23 x i8] c"plan___ was found: %d\0A\00"
@.str.31 = [10 x i8] c"plan: %d\0A\00"
@.str.32 = [26 x i8] c"PLAN FOR SOLUTION FOUND: \00"
@.str.33 = [16 x i8] c"\0A\0AFINAL ATOMS:\0A\00"
@.str.34 = [26 x i8] c"length of output was: %d\0A\00"
@.str.35 = [23 x i8] c"Shifted input array: \0A\00"
define i32 @main() {
%1 = alloca i32
%2 = alloca [10 x i32]
%3 = alloca [10 x i32]
%4 = alloca [10 x i32]
%5 = alloca [10 x i32]
%6 = alloca [30 x [4 x i32]]
%7 = alloca [10 x [5 x i32]]
%8 = alloca [10 x [5 x i32]]
%9 = alloca [10 x [4 x i32]]
%10 = alloca [10 x [4 x i32]]
%11 = alloca i32
%12 = alloca i32
%13 = alloca i32
%14 = alloca [10 x i64]
%15 = alloca i64
%16 = alloca i64
%17 = alloca [10 x i64]
%18 = alloca [10 x i64]
%19 = alloca i32
%20 = alloca i32
%21 = alloca i32
%22 = alloca i32
%23 = alloca i32
%24 = alloca i32
%25 = alloca i32
%26 = alloca i32
%27 = alloca i32
%28 = alloca i32
%29 = alloca i32
%30 = alloca i32
%31 = alloca i32
%32 = alloca i32
%33 = alloca i32
%34 = alloca i32
%35 = alloca i32
%36 = alloca i32
%37 = alloca i32
%38 = alloca i32
%39 = alloca i32
%40 = alloca i32
%41 = alloca i32
%42 = alloca i32
store i32 0, i32* %1
%43 = bitcast [10 x i32]* %2 to i8*
%44 = bitcast [10 x i32]* %5 to i8*
store i32 0, i32* %19
store i32 0, i32* %20
store i32 0, i32* %21
store i32 0, i32* %22
store i32 0, i32* %23
store i32 0, i32* %24
store i32 0, i32* %25
store i32 0, i32* %26
store i32 0, i32* %27
store i32 0, i32* %28
store i32 0, i32* %29
store i32 0, i32* %30
store i32 0, i32* %31
store i32 0, i32* %32
store i32 0, i32* %33
store i32 0, i32* %34
store i32 0, i32* %35
store i32 0, i32* %36
store i32 0, i32* %37
store i32 0, i32* %38
store i32 0, i32* %39
store i32 0, i32* %40
store i32 0, i32* %41
store i32 0, i32* %42
store i32 0, i32* %35
br label %45
45: ; preds = %69, %0
%46 = load i32, i32* %35
%47 = icmp slt i32 %46, 30
br i1 %47, label %48, label %72
48: ; preds = %45
%49 = load i32, i32* %35
%50 = add nsw i32 100, %49
%51 = load i32, i32* %35
%52 = sext i32 %51 to i64
%53 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %52
%54 = getelementptr inbounds [4 x i32], [4 x i32]* %53, i64 0, i64 0
store i32 %50, i32* %54
store i32 1, i32* %36
br label %55
55: ; preds = %65, %48
%56 = load i32, i32* %36
%57 = icmp slt i32 %56, 4
br i1 %57, label %58, label %68
58: ; preds = %55
%59 = load i32, i32* %35
%60 = sext i32 %59 to i64
%61 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %60
%62 = load i32, i32* %36
%63 = sext i32 %62 to i64
%64 = getelementptr inbounds [4 x i32], [4 x i32]* %61, i64 0, i64 %63
store i32 0, i32* %64
br label %65
65: ; preds = %58
%66 = load i32, i32* %36
%67 = add nsw i32 %66, 1
store i32 %67, i32* %36
br label %55
68: ; preds = %55
br label %69
69: ; preds = %68
%70 = load i32, i32* %35
%71 = add nsw i32 %70, 1
store i32 %71, i32* %35
br label %45
72: ; preds = %45
%73 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%74 = getelementptr inbounds [4 x i32], [4 x i32]* %73, i64 0, i64 1
store i32 2, i32* %74
%75 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%76 = getelementptr inbounds [4 x i32], [4 x i32]* %75, i64 0, i64 2
store i32 3, i32* %76
%77 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%78 = getelementptr inbounds [4 x i32], [4 x i32]* %77, i64 0, i64 3
store i32 100, i32* %78
%79 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 1
%80 = getelementptr inbounds [4 x i32], [4 x i32]* %79, i64 0, i64 1
store i32 1, i32* %80
%81 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 1
%82 = getelementptr inbounds [4 x i32], [4 x i32]* %81, i64 0, i64 2
store i32 2, i32* %82
%83 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 1
%84 = getelementptr inbounds [4 x i32], [4 x i32]* %83, i64 0, i64 3
store i32 100, i32* %84
%85 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 2
%86 = getelementptr inbounds [4 x i32], [4 x i32]* %85, i64 0, i64 1
store i32 3, i32* %86
%87 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 2
%88 = getelementptr inbounds [4 x i32], [4 x i32]* %87, i64 0, i64 2
store i32 4, i32* %88
%89 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 2
%90 = getelementptr inbounds [4 x i32], [4 x i32]* %89, i64 0, i64 3
store i32 -100, i32* %90
%91 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 3
%92 = getelementptr inbounds [4 x i32], [4 x i32]* %91, i64 0, i64 1
store i32 4, i32* %92
%93 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 3
%94 = getelementptr inbounds [4 x i32], [4 x i32]* %93, i64 0, i64 2
store i32 5, i32* %94
%95 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 3
%96 = getelementptr inbounds [4 x i32], [4 x i32]* %95, i64 0, i64 3
store i32 -200, i32* %96
%97 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 4
%98 = getelementptr inbounds [4 x i32], [4 x i32]* %97, i64 0, i64 1
store i32 5, i32* %98
%99 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 4
%100 = getelementptr inbounds [4 x i32], [4 x i32]* %99, i64 0, i64 2
store i32 6, i32* %100
%101 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 4
%102 = getelementptr inbounds [4 x i32], [4 x i32]* %101, i64 0, i64 3
store i32 -100, i32* %102
%103 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 5
%104 = getelementptr inbounds [4 x i32], [4 x i32]* %103, i64 0, i64 1
store i32 5, i32* %104
%105 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 5
%106 = getelementptr inbounds [4 x i32], [4 x i32]* %105, i64 0, i64 2
store i32 3, i32* %106
%107 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 5
%108 = getelementptr inbounds [4 x i32], [4 x i32]* %107, i64 0, i64 3
store i32 100, i32* %108
%109 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 6
%110 = getelementptr inbounds [4 x i32], [4 x i32]* %109, i64 0, i64 1
store i32 11, i32* %110
%111 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 6
%112 = getelementptr inbounds [4 x i32], [4 x i32]* %111, i64 0, i64 2
store i32 12, i32* %112
%113 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 6
%114 = getelementptr inbounds [4 x i32], [4 x i32]* %113, i64 0, i64 3
store i32 13, i32* %114
store i32 0, i32* %35
br label %115
115: ; preds = %125, %72
%116 = load i32, i32* %35
%117 = icmp slt i32 %116, 10
br i1 %117, label %118, label %128
118: ; preds = %115
%119 = load i32, i32* %35
%120 = sext i32 %119 to i64
%121 = getelementptr inbounds [10 x i32], [10 x i32]* %3, i64 0, i64 %120
store i32 0, i32* %121
%122 = load i32, i32* %35
%123 = sext i32 %122 to i64
%124 = getelementptr inbounds [10 x i32], [10 x i32]* %4, i64 0, i64 %123
store i32 0, i32* %124
br label %125
125: ; preds = %118
%126 = load i32, i32* %35
%127 = add nsw i32 %126, 1
store i32 %127, i32* %35
br label %115
128: ; preds = %115
store i32 0, i32* %35
br label %129
129: ; preds = %147, %128
%130 = load i32, i32* %35
%131 = icmp slt i32 %130, 10
br i1 %131, label %132, label %150
132: ; preds = %129
%133 = load i32, i32* %35
%134 = sext i32 %133 to i64
%135 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %134
%136 = load i32, i32* %135
%137 = load i32, i32* %35
%138 = sext i32 %137 to i64
%139 = getelementptr inbounds [10 x i32], [10 x i32]* %3, i64 0, i64 %138
store i32 %136, i32* %139
%140 = load i32, i32* %35
%141 = sext i32 %140 to i64
%142 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %141
%143 = load i32, i32* %142
%144 = load i32, i32* %35
%145 = sext i32 %144 to i64
%146 = getelementptr inbounds [10 x i32], [10 x i32]* %4, i64 0, i64 %145
store i32 %143, i32* %146
br label %147
147: ; preds = %132
%148 = load i32, i32* %35
%149 = add nsw i32 %148, 1
store i32 %149, i32* %35
br label %129
150: ; preds = %129
store i32 0, i32* %34
br label %151
151: ; preds = %3237, %150
%152 = load i32, i32* %34
%153 = icmp slt i32 %152, 3
br i1 %153, label %154, label %3240
154: ; preds = %151
store i32 0, i32* %38
br label %155
155: ; preds = %2796, %154
%156 = load i32, i32* %38
%157 = icmp slt i32 %156, 3
br i1 %157, label %158, label %2799
158: ; preds = %155
%159 = load i32, i32* %38
%160 = icmp eq i32 %159, 0
br i1 %160, label %161, label %187
161: ; preds = %158
%162 = load i32, i32* %34
%163 = icmp slt i32 %162, 2
br i1 %163, label %164, label %187
164: ; preds = %161
store i32 0, i32* %35
br label %165
165: ; preds = %183, %164
%166 = load i32, i32* %35
%167 = icmp slt i32 %166, 10
br i1 %167, label %168, label %186
168: ; preds = %165
%169 = load i32, i32* %35
%170 = sext i32 %169 to i64
%171 = getelementptr inbounds [10 x i32], [10 x i32]* %3, i64 0, i64 %170
%172 = load i32, i32* %171
%173 = load i32, i32* %35
%174 = sext i32 %173 to i64
%175 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %174
store i32 %172, i32* %175
%176 = load i32, i32* %35
%177 = sext i32 %176 to i64
%178 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %177
%179 = load i32, i32* %178
%180 = load i32, i32* %35
%181 = sext i32 %180 to i64
%182 = getelementptr inbounds [10 x i32], [10 x i32]* %4, i64 0, i64 %181
store i32 %179, i32* %182
br label %183
183: ; preds = %168
%184 = load i32, i32* %35
%185 = add nsw i32 %184, 1
store i32 %185, i32* %35
br label %165
186: ; preds = %165
br label %226
187: ; preds = %161, %158
%188 = load i32, i32* %38
%189 = icmp sgt i32 %188, 0
br i1 %189, label %190, label %209
190: ; preds = %187
%191 = load i32, i32* %34
%192 = icmp slt i32 %191, 2
br i1 %192, label %193, label %209
193: ; preds = %190
store i32 0, i32* %35
br label %194
194: ; preds = %205, %193
%195 = load i32, i32* %35
%196 = icmp slt i32 %195, 10
br i1 %196, label %197, label %208
197: ; preds = %194
%198 = load i32, i32* %35
%199 = sext i32 %198 to i64
%200 = getelementptr inbounds [10 x i32], [10 x i32]* %4, i64 0, i64 %199
%201 = load i32, i32* %200
%202 = load i32, i32* %35
%203 = sext i32 %202 to i64
%204 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %203
store i32 %201, i32* %204
br label %205
205: ; preds = %197
%206 = load i32, i32* %35
%207 = add nsw i32 %206, 1
store i32 %207, i32* %35
br label %194
208: ; preds = %194
br label %225
209: ; preds = %190, %187
store i32 0, i32* %35
br label %210
210: ; preds = %221, %209
%211 = load i32, i32* %35
%212 = icmp slt i32 %211, 10
br i1 %212, label %213, label %224
213: ; preds = %210
%214 = load i32, i32* %35
%215 = sext i32 %214 to i64
%216 = getelementptr inbounds [10 x i32], [10 x i32]* %3, i64 0, i64 %215
%217 = load i32, i32* %216
%218 = load i32, i32* %35
%219 = sext i32 %218 to i64
%220 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %219
store i32 %217, i32* %220
br label %221
221: ; preds = %213
%222 = load i32, i32* %35
%223 = add nsw i32 %222, 1
store i32 %223, i32* %35
br label %210
224: ; preds = %210
br label %225
225: ; preds = %224, %208
br label %226
226: ; preds = %225, %186
store i32 0, i32* %40
br label %227
227: ; preds = %2792, %226
%228 = load i32, i32* %40
%229 = icmp slt i32 %228, 9
br i1 %229, label %230, label %2795
230: ; preds = %227
store i32 0, i32* %23
store i32 1001, i32* %24
store i32 0, i32* %27
store i32 0, i32* %28
store i32 0, i32* %35
br label %231
231: ; preds = %333, %230
%232 = load i32, i32* %35
%233 = icmp slt i32 %232, 10
br i1 %233, label %234, label %336
234: ; preds = %231
store i32 0, i32* %36
br label %235
235: ; preds = %329, %234
%236 = load i32, i32* %36
%237 = icmp slt i32 %236, 30
br i1 %237, label %238, label %332
238: ; preds = %235
%239 = load i32, i32* %36
%240 = sext i32 %239 to i64
%241 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %240
%242 = getelementptr inbounds [4 x i32], [4 x i32]* %241, i64 0, i64 1
%243 = load i32, i32* %242
%244 = load i32, i32* %35
%245 = sext i32 %244 to i64
%246 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %245
%247 = load i32, i32* %246
%248 = icmp eq i32 %243, %247
br i1 %248, label %249, label %261
249: ; preds = %238
%250 = load i32, i32* %36
%251 = sext i32 %250 to i64
%252 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %251
%253 = getelementptr inbounds [4 x i32], [4 x i32]* %252, i64 0, i64 2
%254 = load i32, i32* %253
%255 = load i32, i32* %35
%256 = add nsw i32 %255, 1
%257 = sext i32 %256 to i64
%258 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %257
%259 = load i32, i32* %258
%260 = icmp eq i32 %254, %259
br i1 %260, label %284, label %261
261: ; preds = %249, %238
%262 = load i32, i32* %36
%263 = sext i32 %262 to i64
%264 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %263
%265 = getelementptr inbounds [4 x i32], [4 x i32]* %264, i64 0, i64 1
%266 = load i32, i32* %265
%267 = load i32, i32* %35
%268 = add nsw i32 %267, 1
%269 = sext i32 %268 to i64
%270 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %269
%271 = load i32, i32* %270
%272 = icmp eq i32 %266, %271
br i1 %272, label %273, label %328
273: ; preds = %261
%274 = load i32, i32* %36
%275 = sext i32 %274 to i64
%276 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %275
%277 = getelementptr inbounds [4 x i32], [4 x i32]* %276, i64 0, i64 2
%278 = load i32, i32* %277
%279 = load i32, i32* %35
%280 = sext i32 %279 to i64
%281 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %280
%282 = load i32, i32* %281
%283 = icmp eq i32 %278, %282
br i1 %283, label %284, label %328
284: ; preds = %273, %249
%285 = load i32, i32* %36
%286 = sext i32 %285 to i64
%287 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %286
%288 = getelementptr inbounds [4 x i32], [4 x i32]* %287, i64 0, i64 1
%289 = load i32, i32* %288
%290 = icmp eq i32 %289, 0
br i1 %290, label %291, label %298
291: ; preds = %284
%292 = load i32, i32* %36
%293 = sext i32 %292 to i64
%294 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %293
%295 = getelementptr inbounds [4 x i32], [4 x i32]* %294, i64 0, i64 2
%296 = load i32, i32* %295
%297 = icmp eq i32 %296, 0
br i1 %297, label %328, label %298
298: ; preds = %291, %284
%299 = load i32, i32* %36
%300 = sext i32 %299 to i64
%301 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %300
%302 = getelementptr inbounds [4 x i32], [4 x i32]* %301, i64 0, i64 3
%303 = load i32, i32* %302
%304 = load i32, i32* %24
%305 = icmp sle i32 %303, %304
br i1 %305, label %306, label %328
306: ; preds = %298
%307 = load i32, i32* %36
%308 = sext i32 %307 to i64
%309 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %308
%310 = getelementptr inbounds [4 x i32], [4 x i32]* %309, i64 0, i64 0
%311 = load i32, i32* %310
store i32 %311, i32* %23
%312 = load i32, i32* %36
%313 = sext i32 %312 to i64
%314 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %313
%315 = getelementptr inbounds [4 x i32], [4 x i32]* %314, i64 0, i64 3
%316 = load i32, i32* %315
store i32 %316, i32* %24
%317 = load i32, i32* %35
%318 = sext i32 %317 to i64
%319 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %318
%320 = load i32, i32* %319
store i32 %320, i32* %25
%321 = load i32, i32* %35
%322 = add nsw i32 %321, 1
%323 = sext i32 %322 to i64
%324 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %323
%325 = load i32, i32* %324
store i32 %325, i32* %26
%326 = load i32, i32* %36
store i32 %326, i32* %27
%327 = load i32, i32* %35
store i32 %327, i32* %28
br label %328
328: ; preds = %306, %298, %291, %273, %261
br label %329
329: ; preds = %328
%330 = load i32, i32* %36
%331 = add nsw i32 %330, 1
store i32 %331, i32* %36
br label %235
332: ; preds = %235
br label %333
333: ; preds = %332
%334 = load i32, i32* %35
%335 = add nsw i32 %334, 1
store i32 %335, i32* %35
br label %231
336: ; preds = %231
%337 = load i32, i32* %24
%338 = icmp sgt i32 %337, 1000
br i1 %338, label %339, label %453
339: ; preds = %336
%340 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 29
%341 = getelementptr inbounds [4 x i32], [4 x i32]* %340, i64 0, i64 0
%342 = load i32, i32* %341
store i32 %342, i32* %19
store i32 29, i32* %37
br label %343
343: ; preds = %387, %339
%344 = load i32, i32* %37
%345 = icmp sgt i32 %344, 0
br i1 %345, label %346, label %390
346: ; preds = %343
%347 = load i32, i32* %37
%348 = sub nsw i32 %347, 1
%349 = sext i32 %348 to i64
%350 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %349
%351 = getelementptr inbounds [4 x i32], [4 x i32]* %350, i64 0, i64 0
%352 = load i32, i32* %351
%353 = load i32, i32* %37
%354 = sext i32 %353 to i64
%355 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %354
%356 = getelementptr inbounds [4 x i32], [4 x i32]* %355, i64 0, i64 0
store i32 %352, i32* %356
%357 = load i32, i32* %37
%358 = sub nsw i32 %357, 1
%359 = sext i32 %358 to i64
%360 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %359
%361 = getelementptr inbounds [4 x i32], [4 x i32]* %360, i64 0, i64 1
%362 = load i32, i32* %361
%363 = load i32, i32* %37
%364 = sext i32 %363 to i64
%365 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %364
%366 = getelementptr inbounds [4 x i32], [4 x i32]* %365, i64 0, i64 1
store i32 %362, i32* %366
%367 = load i32, i32* %37
%368 = sub nsw i32 %367, 1
%369 = sext i32 %368 to i64
%370 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %369
%371 = getelementptr inbounds [4 x i32], [4 x i32]* %370, i64 0, i64 2
%372 = load i32, i32* %371
%373 = load i32, i32* %37
%374 = sext i32 %373 to i64
%375 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %374
%376 = getelementptr inbounds [4 x i32], [4 x i32]* %375, i64 0, i64 2
store i32 %372, i32* %376
%377 = load i32, i32* %37
%378 = sub nsw i32 %377, 1
%379 = sext i32 %378 to i64
%380 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %379
%381 = getelementptr inbounds [4 x i32], [4 x i32]* %380, i64 0, i64 3
%382 = load i32, i32* %381
%383 = load i32, i32* %37
%384 = sext i32 %383 to i64
%385 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %384
%386 = getelementptr inbounds [4 x i32], [4 x i32]* %385, i64 0, i64 3
store i32 %382, i32* %386
br label %387
387: ; preds = %346
%388 = load i32, i32* %37
%389 = add nsw i32 %388, -1
store i32 %389, i32* %37
br label %343
390: ; preds = %343
store i32 0, i32* %28
store i32 9, i32* %37
br label %391
391: ; preds = %404, %390
%392 = load i32, i32* %37
%393 = icmp sgt i32 %392, 0
br i1 %393, label %394, label %407
394: ; preds = %391
%395 = load i32, i32* %37
%396 = sext i32 %395 to i64
%397 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %396
%398 = load i32, i32* %397
%399 = icmp ne i32 %398, 0
br i1 %399, label %400, label %403
400: ; preds = %394
%401 = load i32, i32* %37
%402 = sub nsw i32 %401, 1
store i32 %402, i32* %28
br label %407
403: ; preds = %394
br label %404
404: ; preds = %403
%405 = load i32, i32* %37
%406 = add nsw i32 %405, -1
store i32 %406, i32* %37
br label %391
407: ; preds = %400, %391
%408 = load i32, i32* %28
%409 = sext i32 %408 to i64
%410 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %409
%411 = load i32, i32* %410
%412 = icmp eq i32 %411, 0
br i1 %412, label %413, label %422
413: ; preds = %407
%414 = load i32, i32* %28
%415 = add nsw i32 %414, 1
%416 = sext i32 %415 to i64
%417 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %416
%418 = load i32, i32* %417
%419 = icmp eq i32 %418, 0
br i1 %419, label %420, label %422
420: ; preds = %413
%421 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str, i64 0, i64 0))
unreachable
422: ; preds = %413, %407
%423 = load i32, i32* %19
%424 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%425 = getelementptr inbounds [4 x i32], [4 x i32]* %424, i64 0, i64 0
store i32 %423, i32* %425
%426 = load i32, i32* %28
%427 = sext i32 %426 to i64
%428 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %427
%429 = load i32, i32* %428
%430 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%431 = getelementptr inbounds [4 x i32], [4 x i32]* %430, i64 0, i64 1
store i32 %429, i32* %431
%432 = load i32, i32* %28
%433 = add nsw i32 %432, 1
%434 = sext i32 %433 to i64
%435 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %434
%436 = load i32, i32* %435
%437 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%438 = getelementptr inbounds [4 x i32], [4 x i32]* %437, i64 0, i64 2
store i32 %436, i32* %438
%439 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%440 = getelementptr inbounds [4 x i32], [4 x i32]* %439, i64 0, i64 3
store i32 -100, i32* %440
%441 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%442 = getelementptr inbounds [4 x i32], [4 x i32]* %441, i64 0, i64 0
%443 = load i32, i32* %442
store i32 %443, i32* %23
%444 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%445 = getelementptr inbounds [4 x i32], [4 x i32]* %444, i64 0, i64 3
%446 = load i32, i32* %445
store i32 %446, i32* %24
%447 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%448 = getelementptr inbounds [4 x i32], [4 x i32]* %447, i64 0, i64 1
%449 = load i32, i32* %448
store i32 %449, i32* %25
%450 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%451 = getelementptr inbounds [4 x i32], [4 x i32]* %450, i64 0, i64 2
%452 = load i32, i32* %451
store i32 %452, i32* %26
store i32 0, i32* %27
br label %524
453: ; preds = %336
%454 = load i32, i32* %27
store i32 %454, i32* %37
br label %455
455: ; preds = %499, %453
%456 = load i32, i32* %37
%457 = icmp sgt i32 %456, 0
br i1 %457, label %458, label %502
458: ; preds = %455
%459 = load i32, i32* %37
%460 = sub nsw i32 %459, 1
%461 = sext i32 %460 to i64
%462 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %461
%463 = getelementptr inbounds [4 x i32], [4 x i32]* %462, i64 0, i64 0
%464 = load i32, i32* %463
%465 = load i32, i32* %37
%466 = sext i32 %465 to i64
%467 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %466
%468 = getelementptr inbounds [4 x i32], [4 x i32]* %467, i64 0, i64 0
store i32 %464, i32* %468
%469 = load i32, i32* %37
%470 = sub nsw i32 %469, 1
%471 = sext i32 %470 to i64
%472 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %471
%473 = getelementptr inbounds [4 x i32], [4 x i32]* %472, i64 0, i64 1
%474 = load i32, i32* %473
%475 = load i32, i32* %37
%476 = sext i32 %475 to i64
%477 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %476
%478 = getelementptr inbounds [4 x i32], [4 x i32]* %477, i64 0, i64 1
store i32 %474, i32* %478
%479 = load i32, i32* %37
%480 = sub nsw i32 %479, 1
%481 = sext i32 %480 to i64
%482 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %481
%483 = getelementptr inbounds [4 x i32], [4 x i32]* %482, i64 0, i64 2
%484 = load i32, i32* %483
%485 = load i32, i32* %37
%486 = sext i32 %485 to i64
%487 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %486
%488 = getelementptr inbounds [4 x i32], [4 x i32]* %487, i64 0, i64 2
store i32 %484, i32* %488
%489 = load i32, i32* %37
%490 = sub nsw i32 %489, 1
%491 = sext i32 %490 to i64
%492 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %491
%493 = getelementptr inbounds [4 x i32], [4 x i32]* %492, i64 0, i64 3
%494 = load i32, i32* %493
%495 = load i32, i32* %37
%496 = sext i32 %495 to i64
%497 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %496
%498 = getelementptr inbounds [4 x i32], [4 x i32]* %497, i64 0, i64 3
store i32 %494, i32* %498
br label %499
499: ; preds = %458
%500 = load i32, i32* %37
%501 = add nsw i32 %500, -1
store i32 %501, i32* %37
br label %455
502: ; preds = %455
%503 = load i32, i32* %23
%504 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%505 = getelementptr inbounds [4 x i32], [4 x i32]* %504, i64 0, i64 0
store i32 %503, i32* %505
%506 = load i32, i32* %25
%507 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%508 = getelementptr inbounds [4 x i32], [4 x i32]* %507, i64 0, i64 1
store i32 %506, i32* %508
%509 = load i32, i32* %26
%510 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%511 = getelementptr inbounds [4 x i32], [4 x i32]* %510, i64 0, i64 2
store i32 %509, i32* %511
%512 = load i32, i32* %24
%513 = add nsw i32 %512, -100
%514 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%515 = getelementptr inbounds [4 x i32], [4 x i32]* %514, i64 0, i64 3
store i32 %513, i32* %515
%516 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%517 = getelementptr inbounds [4 x i32], [4 x i32]* %516, i64 0, i64 3
%518 = load i32, i32* %517
%519 = icmp slt i32 %518, -1000
br i1 %519, label %520, label %523
520: ; preds = %502
%521 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%522 = getelementptr inbounds [4 x i32], [4 x i32]* %521, i64 0, i64 3
store i32 -1000, i32* %522
br label %523
523: ; preds = %520, %502
br label %524
524: ; preds = %523, %422
%525 = load i32, i32* %28
store i32 %525, i32* %37
br label %526
526: ; preds = %538, %524
%527 = load i32, i32* %37
%528 = icmp slt i32 %527, 9
br i1 %528, label %529, label %541
529: ; preds = %526
%530 = load i32, i32* %37
%531 = add nsw i32 %530, 1
%532 = sext i32 %531 to i64
%533 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %532
%534 = load i32, i32* %533
%535 = load i32, i32* %37
%536 = sext i32 %535 to i64
%537 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %536
store i32 %534, i32* %537
br label %538
538: ; preds = %529
%539 = load i32, i32* %37
%540 = add nsw i32 %539, 1
store i32 %540, i32* %37
br label %526
541: ; preds = %526
%542 = load i32, i32* %23
%543 = load i32, i32* %28
%544 = sext i32 %543 to i64
%545 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %544
store i32 %542, i32* %545
%546 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 9
store i32 0, i32* %546
%547 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.1, i64 0, i64 0))
store i32 0, i32* %35
br label %548
548: ; preds = %597, %541
%549 = load i32, i32* %35
%550 = icmp slt i32 %549, 30
br i1 %550, label %551, label %600
551: ; preds = %548
%552 = load i32, i32* %35
%553 = sext i32 %552 to i64
%554 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %553
%555 = getelementptr inbounds [4 x i32], [4 x i32]* %554, i64 0, i64 0
%556 = load i32, i32* %555
%557 = load i32, i32* %35
%558 = sext i32 %557 to i64
%559 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %558
%560 = getelementptr inbounds [4 x i32], [4 x i32]* %559, i64 0, i64 1
%561 = load i32, i32* %560
%562 = load i32, i32* %35
%563 = sext i32 %562 to i64
%564 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %563
%565 = getelementptr inbounds [4 x i32], [4 x i32]* %564, i64 0, i64 2
%566 = load i32, i32* %565
%567 = load i32, i32* %35
%568 = sext i32 %567 to i64
%569 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %568
%570 = getelementptr inbounds [4 x i32], [4 x i32]* %569, i64 0, i64 3
%571 = load i32, i32* %570
%572 = load i32, i32* %35
%573 = add nsw i32 %572, 1
%574 = sext i32 %573 to i64
%575 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %574
%576 = getelementptr inbounds [4 x i32], [4 x i32]* %575, i64 0, i64 0
%577 = load i32, i32* %576
%578 = load i32, i32* %35
%579 = add nsw i32 %578, 1
%580 = sext i32 %579 to i64
%581 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %580
%582 = getelementptr inbounds [4 x i32], [4 x i32]* %581, i64 0, i64 1
%583 = load i32, i32* %582
%584 = load i32, i32* %35
%585 = add nsw i32 %584, 1
%586 = sext i32 %585 to i64
%587 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %586
%588 = getelementptr inbounds [4 x i32], [4 x i32]* %587, i64 0, i64 2
%589 = load i32, i32* %588
%590 = load i32, i32* %35
%591 = add nsw i32 %590, 1
%592 = sext i32 %591 to i64
%593 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %592
%594 = getelementptr inbounds [4 x i32], [4 x i32]* %593, i64 0, i64 3
%595 = load i32, i32* %594
%596 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.2, i64 0, i64 0), i32 %556, i32 %561, i32 %566, i32 %571, i32 %577, i32 %583, i32 %589, i32 %595)
br label %597
597: ; preds = %551
%598 = load i32, i32* %35
%599 = add nsw i32 %598, 2
store i32 %599, i32* %35
br label %548
600: ; preds = %548
store i32 0, i32* %35
br label %601
601: ; preds = %654, %600
%602 = load i32, i32* %35
%603 = icmp slt i32 %602, 10
br i1 %603, label %604, label %657
604: ; preds = %601
%605 = load i32, i32* %35
%606 = sext i32 %605 to i64
%607 = getelementptr inbounds [10 x i64], [10 x i64]* %14, i64 0, i64 %606
store i64 0, i64* %607
%608 = load i32, i32* %35
%609 = sext i32 %608 to i64
%610 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %609
store i64 0, i64* %610
%611 = load i32, i32* %35
%612 = sext i32 %611 to i64
%613 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %612
store i64 0, i64* %613
store i32 0, i32* %36
br label %614
614: ; preds = %630, %604
%615 = load i32, i32* %36
%616 = icmp slt i32 %615, 5
br i1 %616, label %617, label %633
617: ; preds = %614
%618 = load i32, i32* %35
%619 = sext i32 %618 to i64
%620 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %619
%621 = load i32, i32* %36
%622 = sext i32 %621 to i64
%623 = getelementptr inbounds [5 x i32], [5 x i32]* %620, i64 0, i64 %622
store i32 0, i32* %623
%624 = load i32, i32* %35
%625 = sext i32 %624 to i64
%626 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %625
%627 = load i32, i32* %36
%628 = sext i32 %627 to i64
%629 = getelementptr inbounds [5 x i32], [5 x i32]* %626, i64 0, i64 %628
store i32 0, i32* %629
br label %630
630: ; preds = %617
%631 = load i32, i32* %36
%632 = add nsw i32 %631, 1
store i32 %632, i32* %36
br label %614
633: ; preds = %614
store i32 0, i32* %37
br label %634
634: ; preds = %650, %633
%635 = load i32, i32* %37
%636 = icmp slt i32 %635, 4
br i1 %636, label %637, label %653
637: ; preds = %634
%638 = load i32, i32* %35
%639 = sext i32 %638 to i64
%640 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %639
%641 = load i32, i32* %37
%642 = sext i32 %641 to i64
%643 = getelementptr inbounds [4 x i32], [4 x i32]* %640, i64 0, i64 %642
store i32 0, i32* %643
%644 = load i32, i32* %35
%645 = sext i32 %644 to i64
%646 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %645
%647 = load i32, i32* %37
%648 = sext i32 %647 to i64
%649 = getelementptr inbounds [4 x i32], [4 x i32]* %646, i64 0, i64 %648
store i32 0, i32* %649
br label %650
650: ; preds = %637
%651 = load i32, i32* %37
%652 = add nsw i32 %651, 1
store i32 %652, i32* %37
br label %634
653: ; preds = %634
br label %654
654: ; preds = %653
%655 = load i32, i32* %35
%656 = add nsw i32 %655, 1
store i32 %656, i32* %35
br label %601
657: ; preds = %601
store i32 0, i32* %36
store i32 1, i32* %35
br label %658
658: ; preds = %1009, %657
%659 = load i32, i32* %35
%660 = icmp slt i32 %659, 30
br i1 %660, label %661, label %1012
661: ; preds = %658
%662 = load i32, i32* %36
%663 = icmp eq i32 %662, 10
br i1 %663, label %664, label %665
664: ; preds = %661
br label %1012
665: ; preds = %661
%666 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%667 = getelementptr inbounds [4 x i32], [4 x i32]* %666, i64 0, i64 1
%668 = load i32, i32* %667
%669 = load i32, i32* %35
%670 = sext i32 %669 to i64
%671 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %670
%672 = getelementptr inbounds [4 x i32], [4 x i32]* %671, i64 0, i64 1
%673 = load i32, i32* %672
%674 = icmp eq i32 %668, %673
br i1 %674, label %675, label %750
675: ; preds = %665
%676 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%677 = getelementptr inbounds [4 x i32], [4 x i32]* %676, i64 0, i64 2
%678 = load i32, i32* %677
%679 = load i32, i32* %35
%680 = sext i32 %679 to i64
%681 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %680
%682 = getelementptr inbounds [4 x i32], [4 x i32]* %681, i64 0, i64 2
%683 = load i32, i32* %682
%684 = icmp ne i32 %678, %683
br i1 %684, label %685, label %750
685: ; preds = %675
%686 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%687 = getelementptr inbounds [4 x i32], [4 x i32]* %686, i64 0, i64 1
%688 = load i32, i32* %687
%689 = icmp ne i32 %688, 0
br i1 %689, label %690, label %750
690: ; preds = %685
%691 = load i32, i32* %35
%692 = sext i32 %691 to i64
%693 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %692
%694 = getelementptr inbounds [4 x i32], [4 x i32]* %693, i64 0, i64 0
%695 = load i32, i32* %694
%696 = load i32, i32* %36
%697 = sext i32 %696 to i64
%698 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %697
%699 = getelementptr inbounds [5 x i32], [5 x i32]* %698, i64 0, i64 0
store i32 %695, i32* %699
%700 = load i32, i32* %35
%701 = sext i32 %700 to i64
%702 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %701
%703 = getelementptr inbounds [4 x i32], [4 x i32]* %702, i64 0, i64 1
%704 = load i32, i32* %703
%705 = load i32, i32* %36
%706 = sext i32 %705 to i64
%707 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %706
%708 = getelementptr inbounds [5 x i32], [5 x i32]* %707, i64 0, i64 1
store i32 %704, i32* %708
%709 = load i32, i32* %35
%710 = sext i32 %709 to i64
%711 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %710
%712 = getelementptr inbounds [4 x i32], [4 x i32]* %711, i64 0, i64 2
%713 = load i32, i32* %712
%714 = load i32, i32* %36
%715 = sext i32 %714 to i64
%716 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %715
%717 = getelementptr inbounds [5 x i32], [5 x i32]* %716, i64 0, i64 2
store i32 %713, i32* %717
%718 = load i32, i32* %35
%719 = sext i32 %718 to i64
%720 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %719
%721 = getelementptr inbounds [4 x i32], [4 x i32]* %720, i64 0, i64 3
%722 = load i32, i32* %721
%723 = load i32, i32* %36
%724 = sext i32 %723 to i64
%725 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %724
%726 = getelementptr inbounds [5 x i32], [5 x i32]* %725, i64 0, i64 3
store i32 %722, i32* %726
%727 = load i32, i32* %35
%728 = load i32, i32* %36
%729 = sext i32 %728 to i64
%730 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %729
%731 = getelementptr inbounds [5 x i32], [5 x i32]* %730, i64 0, i64 4
store i32 %727, i32* %731
%732 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%733 = getelementptr inbounds [4 x i32], [4 x i32]* %732, i64 0, i64 2
%734 = load i32, i32* %733
%735 = load i32, i32* %36
%736 = sext i32 %735 to i64
%737 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %736
%738 = getelementptr inbounds [5 x i32], [5 x i32]* %737, i64 0, i64 1
store i32 %734, i32* %738
%739 = load i32, i32* %35
%740 = sext i32 %739 to i64
%741 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %740
%742 = getelementptr inbounds [4 x i32], [4 x i32]* %741, i64 0, i64 2
%743 = load i32, i32* %742
%744 = load i32, i32* %36
%745 = sext i32 %744 to i64
%746 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %745
%747 = getelementptr inbounds [5 x i32], [5 x i32]* %746, i64 0, i64 2
store i32 %743, i32* %747
%748 = load i32, i32* %36
%749 = add nsw i32 %748, 1
store i32 %749, i32* %36
br label %1008
750: ; preds = %685, %675, %665
%751 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%752 = getelementptr inbounds [4 x i32], [4 x i32]* %751, i64 0, i64 2
%753 = load i32, i32* %752
%754 = load i32, i32* %35
%755 = sext i32 %754 to i64
%756 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %755
%757 = getelementptr inbounds [4 x i32], [4 x i32]* %756, i64 0, i64 1
%758 = load i32, i32* %757
%759 = icmp eq i32 %753, %758
br i1 %759, label %760, label %835
760: ; preds = %750
%761 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%762 = getelementptr inbounds [4 x i32], [4 x i32]* %761, i64 0, i64 1
%763 = load i32, i32* %762
%764 = load i32, i32* %35
%765 = sext i32 %764 to i64
%766 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %765
%767 = getelementptr inbounds [4 x i32], [4 x i32]* %766, i64 0, i64 2
%768 = load i32, i32* %767
%769 = icmp ne i32 %763, %768
br i1 %769, label %770, label %835
770: ; preds = %760
%771 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%772 = getelementptr inbounds [4 x i32], [4 x i32]* %771, i64 0, i64 2
%773 = load i32, i32* %772
%774 = icmp ne i32 %773, 0
br i1 %774, label %775, label %835
775: ; preds = %770
%776 = load i32, i32* %35
%777 = sext i32 %776 to i64
%778 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %777
%779 = getelementptr inbounds [4 x i32], [4 x i32]* %778, i64 0, i64 0
%780 = load i32, i32* %779
%781 = load i32, i32* %36
%782 = sext i32 %781 to i64
%783 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %782
%784 = getelementptr inbounds [5 x i32], [5 x i32]* %783, i64 0, i64 0
store i32 %780, i32* %784
%785 = load i32, i32* %35
%786 = sext i32 %785 to i64
%787 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %786
%788 = getelementptr inbounds [4 x i32], [4 x i32]* %787, i64 0, i64 1
%789 = load i32, i32* %788
%790 = load i32, i32* %36
%791 = sext i32 %790 to i64
%792 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %791
%793 = getelementptr inbounds [5 x i32], [5 x i32]* %792, i64 0, i64 1
store i32 %789, i32* %793
%794 = load i32, i32* %35
%795 = sext i32 %794 to i64
%796 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %795
%797 = getelementptr inbounds [4 x i32], [4 x i32]* %796, i64 0, i64 2
%798 = load i32, i32* %797
%799 = load i32, i32* %36
%800 = sext i32 %799 to i64
%801 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %800
%802 = getelementptr inbounds [5 x i32], [5 x i32]* %801, i64 0, i64 2
store i32 %798, i32* %802
%803 = load i32, i32* %35
%804 = sext i32 %803 to i64
%805 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %804
%806 = getelementptr inbounds [4 x i32], [4 x i32]* %805, i64 0, i64 3
%807 = load i32, i32* %806
%808 = load i32, i32* %36
%809 = sext i32 %808 to i64
%810 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %809
%811 = getelementptr inbounds [5 x i32], [5 x i32]* %810, i64 0, i64 3
store i32 %807, i32* %811
%812 = load i32, i32* %35
%813 = load i32, i32* %36
%814 = sext i32 %813 to i64
%815 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %814
%816 = getelementptr inbounds [5 x i32], [5 x i32]* %815, i64 0, i64 4
store i32 %812, i32* %816
%817 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%818 = getelementptr inbounds [4 x i32], [4 x i32]* %817, i64 0, i64 1
%819 = load i32, i32* %818
%820 = load i32, i32* %36
%821 = sext i32 %820 to i64
%822 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %821
%823 = getelementptr inbounds [5 x i32], [5 x i32]* %822, i64 0, i64 1
store i32 %819, i32* %823
%824 = load i32, i32* %35
%825 = sext i32 %824 to i64
%826 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %825
%827 = getelementptr inbounds [4 x i32], [4 x i32]* %826, i64 0, i64 2
%828 = load i32, i32* %827
%829 = load i32, i32* %36
%830 = sext i32 %829 to i64
%831 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %830
%832 = getelementptr inbounds [5 x i32], [5 x i32]* %831, i64 0, i64 2
store i32 %828, i32* %832
%833 = load i32, i32* %36
%834 = add nsw i32 %833, 1
store i32 %834, i32* %36
br label %1007
835: ; preds = %770, %760, %750
%836 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%837 = getelementptr inbounds [4 x i32], [4 x i32]* %836, i64 0, i64 1
%838 = load i32, i32* %837
%839 = load i32, i32* %35
%840 = sext i32 %839 to i64
%841 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %840
%842 = getelementptr inbounds [4 x i32], [4 x i32]* %841, i64 0, i64 1
%843 = load i32, i32* %842
%844 = icmp ne i32 %838, %843
br i1 %844, label %845, label %920
845: ; preds = %835
%846 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%847 = getelementptr inbounds [4 x i32], [4 x i32]* %846, i64 0, i64 2
%848 = load i32, i32* %847
%849 = load i32, i32* %35
%850 = sext i32 %849 to i64
%851 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %850
%852 = getelementptr inbounds [4 x i32], [4 x i32]* %851, i64 0, i64 2
%853 = load i32, i32* %852
%854 = icmp eq i32 %848, %853
br i1 %854, label %855, label %920
855: ; preds = %845
%856 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%857 = getelementptr inbounds [4 x i32], [4 x i32]* %856, i64 0, i64 2
%858 = load i32, i32* %857
%859 = icmp ne i32 %858, 0
br i1 %859, label %860, label %920
860: ; preds = %855
%861 = load i32, i32* %35
%862 = sext i32 %861 to i64
%863 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %862
%864 = getelementptr inbounds [4 x i32], [4 x i32]* %863, i64 0, i64 0
%865 = load i32, i32* %864
%866 = load i32, i32* %36
%867 = sext i32 %866 to i64
%868 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %867
%869 = getelementptr inbounds [5 x i32], [5 x i32]* %868, i64 0, i64 0
store i32 %865, i32* %869
%870 = load i32, i32* %35
%871 = sext i32 %870 to i64
%872 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %871
%873 = getelementptr inbounds [4 x i32], [4 x i32]* %872, i64 0, i64 1
%874 = load i32, i32* %873
%875 = load i32, i32* %36
%876 = sext i32 %875 to i64
%877 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %876
%878 = getelementptr inbounds [5 x i32], [5 x i32]* %877, i64 0, i64 1
store i32 %874, i32* %878
%879 = load i32, i32* %35
%880 = sext i32 %879 to i64
%881 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %880
%882 = getelementptr inbounds [4 x i32], [4 x i32]* %881, i64 0, i64 2
%883 = load i32, i32* %882
%884 = load i32, i32* %36
%885 = sext i32 %884 to i64
%886 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %885
%887 = getelementptr inbounds [5 x i32], [5 x i32]* %886, i64 0, i64 2
store i32 %883, i32* %887
%888 = load i32, i32* %35
%889 = sext i32 %888 to i64
%890 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %889
%891 = getelementptr inbounds [4 x i32], [4 x i32]* %890, i64 0, i64 3
%892 = load i32, i32* %891
%893 = load i32, i32* %36
%894 = sext i32 %893 to i64
%895 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %894
%896 = getelementptr inbounds [5 x i32], [5 x i32]* %895, i64 0, i64 3
store i32 %892, i32* %896
%897 = load i32, i32* %35
%898 = load i32, i32* %36
%899 = sext i32 %898 to i64
%900 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %899
%901 = getelementptr inbounds [5 x i32], [5 x i32]* %900, i64 0, i64 4
store i32 %897, i32* %901
%902 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%903 = getelementptr inbounds [4 x i32], [4 x i32]* %902, i64 0, i64 1
%904 = load i32, i32* %903
%905 = load i32, i32* %36
%906 = sext i32 %905 to i64
%907 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %906
%908 = getelementptr inbounds [5 x i32], [5 x i32]* %907, i64 0, i64 1
store i32 %904, i32* %908
%909 = load i32, i32* %35
%910 = sext i32 %909 to i64
%911 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %910
%912 = getelementptr inbounds [4 x i32], [4 x i32]* %911, i64 0, i64 1
%913 = load i32, i32* %912
%914 = load i32, i32* %36
%915 = sext i32 %914 to i64
%916 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %915
%917 = getelementptr inbounds [5 x i32], [5 x i32]* %916, i64 0, i64 2
store i32 %913, i32* %917
%918 = load i32, i32* %36
%919 = add nsw i32 %918, 1
store i32 %919, i32* %36
br label %1006
920: ; preds = %855, %845, %835
%921 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%922 = getelementptr inbounds [4 x i32], [4 x i32]* %921, i64 0, i64 2
%923 = load i32, i32* %922
%924 = load i32, i32* %35
%925 = sext i32 %924 to i64
%926 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %925
%927 = getelementptr inbounds [4 x i32], [4 x i32]* %926, i64 0, i64 1
%928 = load i32, i32* %927
%929 = icmp ne i32 %923, %928
br i1 %929, label %930, label %1005
930: ; preds = %920
%931 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%932 = getelementptr inbounds [4 x i32], [4 x i32]* %931, i64 0, i64 1
%933 = load i32, i32* %932
%934 = load i32, i32* %35
%935 = sext i32 %934 to i64
%936 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %935
%937 = getelementptr inbounds [4 x i32], [4 x i32]* %936, i64 0, i64 2
%938 = load i32, i32* %937
%939 = icmp eq i32 %933, %938
br i1 %939, label %940, label %1005
940: ; preds = %930
%941 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%942 = getelementptr inbounds [4 x i32], [4 x i32]* %941, i64 0, i64 1
%943 = load i32, i32* %942
%944 = icmp ne i32 %943, 0
br i1 %944, label %945, label %1005
945: ; preds = %940
%946 = load i32, i32* %35
%947 = sext i32 %946 to i64
%948 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %947
%949 = getelementptr inbounds [4 x i32], [4 x i32]* %948, i64 0, i64 0
%950 = load i32, i32* %949
%951 = load i32, i32* %36
%952 = sext i32 %951 to i64
%953 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %952
%954 = getelementptr inbounds [5 x i32], [5 x i32]* %953, i64 0, i64 0
store i32 %950, i32* %954
%955 = load i32, i32* %35
%956 = sext i32 %955 to i64
%957 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %956
%958 = getelementptr inbounds [4 x i32], [4 x i32]* %957, i64 0, i64 1
%959 = load i32, i32* %958
%960 = load i32, i32* %36
%961 = sext i32 %960 to i64
%962 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %961
%963 = getelementptr inbounds [5 x i32], [5 x i32]* %962, i64 0, i64 1
store i32 %959, i32* %963
%964 = load i32, i32* %35
%965 = sext i32 %964 to i64
%966 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %965
%967 = getelementptr inbounds [4 x i32], [4 x i32]* %966, i64 0, i64 2
%968 = load i32, i32* %967
%969 = load i32, i32* %36
%970 = sext i32 %969 to i64
%971 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %970
%972 = getelementptr inbounds [5 x i32], [5 x i32]* %971, i64 0, i64 2
store i32 %968, i32* %972
%973 = load i32, i32* %35
%974 = sext i32 %973 to i64
%975 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %974
%976 = getelementptr inbounds [4 x i32], [4 x i32]* %975, i64 0, i64 3
%977 = load i32, i32* %976
%978 = load i32, i32* %36
%979 = sext i32 %978 to i64
%980 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %979
%981 = getelementptr inbounds [5 x i32], [5 x i32]* %980, i64 0, i64 3
store i32 %977, i32* %981
%982 = load i32, i32* %35
%983 = load i32, i32* %36
%984 = sext i32 %983 to i64
%985 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %984
%986 = getelementptr inbounds [5 x i32], [5 x i32]* %985, i64 0, i64 4
store i32 %982, i32* %986
%987 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%988 = getelementptr inbounds [4 x i32], [4 x i32]* %987, i64 0, i64 2
%989 = load i32, i32* %988
%990 = load i32, i32* %36
%991 = sext i32 %990 to i64
%992 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %991
%993 = getelementptr inbounds [5 x i32], [5 x i32]* %992, i64 0, i64 1
store i32 %989, i32* %993
%994 = load i32, i32* %35
%995 = sext i32 %994 to i64
%996 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %995
%997 = getelementptr inbounds [4 x i32], [4 x i32]* %996, i64 0, i64 1
%998 = load i32, i32* %997
%999 = load i32, i32* %36
%1000 = sext i32 %999 to i64
%1001 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1000
%1002 = getelementptr inbounds [5 x i32], [5 x i32]* %1001, i64 0, i64 2
store i32 %998, i32* %1002
%1003 = load i32, i32* %36
%1004 = add nsw i32 %1003, 1
store i32 %1004, i32* %36
br label %1005
1005: ; preds = %945, %940, %930, %920
br label %1006
1006: ; preds = %1005, %860
br label %1007
1007: ; preds = %1006, %775
br label %1008
1008: ; preds = %1007, %690
br label %1009
1009: ; preds = %1008
%1010 = load i32, i32* %35
%1011 = add nsw i32 %1010, 1
store i32 %1011, i32* %35
br label %658
1012: ; preds = %664, %658
store i32 0, i32* %36
br label %1013
1013: ; preds = %1312, %1012
%1014 = load i32, i32* %36
%1015 = icmp slt i32 %1014, 10
br i1 %1015, label %1016, label %1315
1016: ; preds = %1013
store i32 0, i32* %13
%1017 = load i32, i32* %36
%1018 = sext i32 %1017 to i64
%1019 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1018
%1020 = getelementptr inbounds [5 x i32], [5 x i32]* %1019, i64 0, i64 1
%1021 = load i32, i32* %1020
%1022 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1023 = getelementptr inbounds [4 x i32], [4 x i32]* %1022, i64 0, i64 1
%1024 = load i32, i32* %1023
%1025 = icmp eq i32 %1021, %1024
br i1 %1025, label %1026, label %1036
1026: ; preds = %1016
%1027 = load i32, i32* %36
%1028 = sext i32 %1027 to i64
%1029 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1028
%1030 = getelementptr inbounds [5 x i32], [5 x i32]* %1029, i64 0, i64 2
%1031 = load i32, i32* %1030
%1032 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1033 = getelementptr inbounds [4 x i32], [4 x i32]* %1032, i64 0, i64 2
%1034 = load i32, i32* %1033
%1035 = icmp eq i32 %1031, %1034
br i1 %1035, label %1096, label %1036
1036: ; preds = %1026, %1016
%1037 = load i32, i32* %36
%1038 = sext i32 %1037 to i64
%1039 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1038
%1040 = getelementptr inbounds [5 x i32], [5 x i32]* %1039, i64 0, i64 2
%1041 = load i32, i32* %1040
%1042 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1043 = getelementptr inbounds [4 x i32], [4 x i32]* %1042, i64 0, i64 1
%1044 = load i32, i32* %1043
%1045 = icmp eq i32 %1041, %1044
br i1 %1045, label %1046, label %1056
1046: ; preds = %1036
%1047 = load i32, i32* %36
%1048 = sext i32 %1047 to i64
%1049 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1048
%1050 = getelementptr inbounds [5 x i32], [5 x i32]* %1049, i64 0, i64 1
%1051 = load i32, i32* %1050
%1052 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1053 = getelementptr inbounds [4 x i32], [4 x i32]* %1052, i64 0, i64 2
%1054 = load i32, i32* %1053
%1055 = icmp eq i32 %1051, %1054
br i1 %1055, label %1096, label %1056
1056: ; preds = %1046, %1036
%1057 = load i32, i32* %36
%1058 = sext i32 %1057 to i64
%1059 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1058
%1060 = getelementptr inbounds [5 x i32], [5 x i32]* %1059, i64 0, i64 1
%1061 = load i32, i32* %1060
%1062 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1063 = getelementptr inbounds [4 x i32], [4 x i32]* %1062, i64 0, i64 1
%1064 = load i32, i32* %1063
%1065 = icmp eq i32 %1061, %1064
br i1 %1065, label %1066, label %1076
1066: ; preds = %1056
%1067 = load i32, i32* %36
%1068 = sext i32 %1067 to i64
%1069 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1068
%1070 = getelementptr inbounds [5 x i32], [5 x i32]* %1069, i64 0, i64 2
%1071 = load i32, i32* %1070
%1072 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1073 = getelementptr inbounds [4 x i32], [4 x i32]* %1072, i64 0, i64 2
%1074 = load i32, i32* %1073
%1075 = icmp eq i32 %1071, %1074
br i1 %1075, label %1096, label %1076
1076: ; preds = %1066, %1056
%1077 = load i32, i32* %36
%1078 = sext i32 %1077 to i64
%1079 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1078
%1080 = getelementptr inbounds [5 x i32], [5 x i32]* %1079, i64 0, i64 2
%1081 = load i32, i32* %1080
%1082 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1083 = getelementptr inbounds [4 x i32], [4 x i32]* %1082, i64 0, i64 1
%1084 = load i32, i32* %1083
%1085 = icmp eq i32 %1081, %1084
br i1 %1085, label %1086, label %1137
1086: ; preds = %1076
%1087 = load i32, i32* %36
%1088 = sext i32 %1087 to i64
%1089 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1088
%1090 = getelementptr inbounds [5 x i32], [5 x i32]* %1089, i64 0, i64 1
%1091 = load i32, i32* %1090
%1092 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1093 = getelementptr inbounds [4 x i32], [4 x i32]* %1092, i64 0, i64 2
%1094 = load i32, i32* %1093
%1095 = icmp eq i32 %1091, %1094
br i1 %1095, label %1096, label %1137
1096: ; preds = %1086, %1066, %1046, %1026
%1097 = load i32, i32* %36
%1098 = sext i32 %1097 to i64
%1099 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1098
%1100 = getelementptr inbounds [5 x i32], [5 x i32]* %1099, i64 0, i64 0
store i32 0, i32* %1100
%1101 = load i32, i32* %36
%1102 = sext i32 %1101 to i64
%1103 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1102
%1104 = getelementptr inbounds [5 x i32], [5 x i32]* %1103, i64 0, i64 1
store i32 0, i32* %1104
%1105 = load i32, i32* %36
%1106 = sext i32 %1105 to i64
%1107 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1106
%1108 = getelementptr inbounds [5 x i32], [5 x i32]* %1107, i64 0, i64 2
store i32 0, i32* %1108
%1109 = load i32, i32* %36
%1110 = sext i32 %1109 to i64
%1111 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1110
%1112 = getelementptr inbounds [5 x i32], [5 x i32]* %1111, i64 0, i64 3
store i32 0, i32* %1112
%1113 = load i32, i32* %36
%1114 = sext i32 %1113 to i64
%1115 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1114
%1116 = getelementptr inbounds [5 x i32], [5 x i32]* %1115, i64 0, i64 4
store i32 0, i32* %1116
%1117 = load i32, i32* %36
%1118 = sext i32 %1117 to i64
%1119 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1118
%1120 = getelementptr inbounds [5 x i32], [5 x i32]* %1119, i64 0, i64 0
store i32 0, i32* %1120
%1121 = load i32, i32* %36
%1122 = sext i32 %1121 to i64
%1123 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1122
%1124 = getelementptr inbounds [5 x i32], [5 x i32]* %1123, i64 0, i64 1
store i32 0, i32* %1124
%1125 = load i32, i32* %36
%1126 = sext i32 %1125 to i64
%1127 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1126
%1128 = getelementptr inbounds [5 x i32], [5 x i32]* %1127, i64 0, i64 2
store i32 0, i32* %1128
%1129 = load i32, i32* %36
%1130 = sext i32 %1129 to i64
%1131 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1130
%1132 = getelementptr inbounds [5 x i32], [5 x i32]* %1131, i64 0, i64 3
store i32 0, i32* %1132
%1133 = load i32, i32* %36
%1134 = sext i32 %1133 to i64
%1135 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1134
%1136 = getelementptr inbounds [5 x i32], [5 x i32]* %1135, i64 0, i64 4
store i32 0, i32* %1136
br label %1137
1137: ; preds = %1096, %1086, %1076
store i32 1, i32* %35
br label %1138
1138: ; preds = %1308, %1137
%1139 = load i32, i32* %35
%1140 = icmp slt i32 %1139, 30
br i1 %1140, label %1141, label %1311
1141: ; preds = %1138
%1142 = load i32, i32* %36
%1143 = sext i32 %1142 to i64
%1144 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1143
%1145 = getelementptr inbounds [5 x i32], [5 x i32]* %1144, i64 0, i64 1
%1146 = load i32, i32* %1145
%1147 = load i32, i32* %35
%1148 = sext i32 %1147 to i64
%1149 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1148
%1150 = getelementptr inbounds [4 x i32], [4 x i32]* %1149, i64 0, i64 1
%1151 = load i32, i32* %1150
%1152 = icmp eq i32 %1146, %1151
br i1 %1152, label %1153, label %1165
1153: ; preds = %1141
%1154 = load i32, i32* %36
%1155 = sext i32 %1154 to i64
%1156 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1155
%1157 = getelementptr inbounds [5 x i32], [5 x i32]* %1156, i64 0, i64 2
%1158 = load i32, i32* %1157
%1159 = load i32, i32* %35
%1160 = sext i32 %1159 to i64
%1161 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1160
%1162 = getelementptr inbounds [4 x i32], [4 x i32]* %1161, i64 0, i64 2
%1163 = load i32, i32* %1162
%1164 = icmp eq i32 %1158, %1163
br i1 %1164, label %1189, label %1165
1165: ; preds = %1153, %1141
%1166 = load i32, i32* %36
%1167 = sext i32 %1166 to i64
%1168 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1167
%1169 = getelementptr inbounds [5 x i32], [5 x i32]* %1168, i64 0, i64 2
%1170 = load i32, i32* %1169
%1171 = load i32, i32* %35
%1172 = sext i32 %1171 to i64
%1173 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1172
%1174 = getelementptr inbounds [4 x i32], [4 x i32]* %1173, i64 0, i64 1
%1175 = load i32, i32* %1174
%1176 = icmp eq i32 %1170, %1175
br i1 %1176, label %1177, label %1307
1177: ; preds = %1165
%1178 = load i32, i32* %36
%1179 = sext i32 %1178 to i64
%1180 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1179
%1181 = getelementptr inbounds [5 x i32], [5 x i32]* %1180, i64 0, i64 1
%1182 = load i32, i32* %1181
%1183 = load i32, i32* %35
%1184 = sext i32 %1183 to i64
%1185 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1184
%1186 = getelementptr inbounds [4 x i32], [4 x i32]* %1185, i64 0, i64 2
%1187 = load i32, i32* %1186
%1188 = icmp eq i32 %1182, %1187
br i1 %1188, label %1189, label %1307
1189: ; preds = %1177, %1153
%1190 = load i32, i32* %36
%1191 = sext i32 %1190 to i64
%1192 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1191
%1193 = getelementptr inbounds [5 x i32], [5 x i32]* %1192, i64 0, i64 2
%1194 = load i32, i32* %1193
%1195 = icmp eq i32 %1194, 0
br i1 %1195, label %1196, label %1203
1196: ; preds = %1189
%1197 = load i32, i32* %36
%1198 = sext i32 %1197 to i64
%1199 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1198
%1200 = getelementptr inbounds [5 x i32], [5 x i32]* %1199, i64 0, i64 1
%1201 = load i32, i32* %1200
%1202 = icmp eq i32 %1201, 0
br i1 %1202, label %1307, label %1203
1203: ; preds = %1196, %1189
%1204 = load i32, i32* %35
%1205 = sext i32 %1204 to i64
%1206 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1205
%1207 = getelementptr inbounds [4 x i32], [4 x i32]* %1206, i64 0, i64 0
%1208 = load i32, i32* %1207
%1209 = load i32, i32* %36
%1210 = sext i32 %1209 to i64
%1211 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1210
%1212 = getelementptr inbounds [5 x i32], [5 x i32]* %1211, i64 0, i64 0
store i32 %1208, i32* %1212
%1213 = load i32, i32* %35
%1214 = sext i32 %1213 to i64
%1215 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1214
%1216 = getelementptr inbounds [4 x i32], [4 x i32]* %1215, i64 0, i64 1
%1217 = load i32, i32* %1216
%1218 = load i32, i32* %36
%1219 = sext i32 %1218 to i64
%1220 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1219
%1221 = getelementptr inbounds [5 x i32], [5 x i32]* %1220, i64 0, i64 1
store i32 %1217, i32* %1221
%1222 = load i32, i32* %35
%1223 = sext i32 %1222 to i64
%1224 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1223
%1225 = getelementptr inbounds [4 x i32], [4 x i32]* %1224, i64 0, i64 2
%1226 = load i32, i32* %1225
%1227 = load i32, i32* %36
%1228 = sext i32 %1227 to i64
%1229 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1228
%1230 = getelementptr inbounds [5 x i32], [5 x i32]* %1229, i64 0, i64 2
store i32 %1226, i32* %1230
%1231 = load i32, i32* %35
%1232 = sext i32 %1231 to i64
%1233 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1232
%1234 = getelementptr inbounds [4 x i32], [4 x i32]* %1233, i64 0, i64 3
%1235 = load i32, i32* %1234
%1236 = load i32, i32* %36
%1237 = sext i32 %1236 to i64
%1238 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1237
%1239 = getelementptr inbounds [5 x i32], [5 x i32]* %1238, i64 0, i64 3
store i32 %1235, i32* %1239
%1240 = load i32, i32* %35
%1241 = load i32, i32* %36
%1242 = sext i32 %1241 to i64
%1243 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1242
%1244 = getelementptr inbounds [5 x i32], [5 x i32]* %1243, i64 0, i64 4
store i32 %1240, i32* %1244
store i32 0, i32* %37
br label %1245
1245: ; preds = %1303, %1203
%1246 = load i32, i32* %37
%1247 = load i32, i32* %36
%1248 = icmp slt i32 %1246, %1247
br i1 %1248, label %1249, label %1306
1249: ; preds = %1245
%1250 = load i32, i32* %36
%1251 = sext i32 %1250 to i64
%1252 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1251
%1253 = getelementptr inbounds [5 x i32], [5 x i32]* %1252, i64 0, i64 0
%1254 = load i32, i32* %1253
%1255 = load i32, i32* %37
%1256 = sext i32 %1255 to i64
%1257 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1256
%1258 = getelementptr inbounds [5 x i32], [5 x i32]* %1257, i64 0, i64 0
%1259 = load i32, i32* %1258
%1260 = icmp eq i32 %1254, %1259
br i1 %1260, label %1261, label %1302
1261: ; preds = %1249
%1262 = load i32, i32* %36
%1263 = sext i32 %1262 to i64
%1264 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1263
%1265 = getelementptr inbounds [5 x i32], [5 x i32]* %1264, i64 0, i64 0
store i32 0, i32* %1265
%1266 = load i32, i32* %36
%1267 = sext i32 %1266 to i64
%1268 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1267
%1269 = getelementptr inbounds [5 x i32], [5 x i32]* %1268, i64 0, i64 1
store i32 0, i32* %1269
%1270 = load i32, i32* %36
%1271 = sext i32 %1270 to i64
%1272 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1271
%1273 = getelementptr inbounds [5 x i32], [5 x i32]* %1272, i64 0, i64 2
store i32 0, i32* %1273
%1274 = load i32, i32* %36
%1275 = sext i32 %1274 to i64
%1276 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1275
%1277 = getelementptr inbounds [5 x i32], [5 x i32]* %1276, i64 0, i64 3
store i32 0, i32* %1277
%1278 = load i32, i32* %36
%1279 = sext i32 %1278 to i64
%1280 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1279
%1281 = getelementptr inbounds [5 x i32], [5 x i32]* %1280, i64 0, i64 4
store i32 0, i32* %1281
%1282 = load i32, i32* %36
%1283 = sext i32 %1282 to i64
%1284 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1283
%1285 = getelementptr inbounds [5 x i32], [5 x i32]* %1284, i64 0, i64 0
store i32 0, i32* %1285
%1286 = load i32, i32* %36
%1287 = sext i32 %1286 to i64
%1288 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1287
%1289 = getelementptr inbounds [5 x i32], [5 x i32]* %1288, i64 0, i64 1
store i32 0, i32* %1289
%1290 = load i32, i32* %36
%1291 = sext i32 %1290 to i64
%1292 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1291
%1293 = getelementptr inbounds [5 x i32], [5 x i32]* %1292, i64 0, i64 2
store i32 0, i32* %1293
%1294 = load i32, i32* %36
%1295 = sext i32 %1294 to i64
%1296 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1295
%1297 = getelementptr inbounds [5 x i32], [5 x i32]* %1296, i64 0, i64 3
store i32 0, i32* %1297
%1298 = load i32, i32* %36
%1299 = sext i32 %1298 to i64
%1300 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1299
%1301 = getelementptr inbounds [5 x i32], [5 x i32]* %1300, i64 0, i64 4
store i32 0, i32* %1301
br label %1306
1302: ; preds = %1249
br label %1303
1303: ; preds = %1302
%1304 = load i32, i32* %37
%1305 = add nsw i32 %1304, 1
store i32 %1305, i32* %37
br label %1245
1306: ; preds = %1261, %1245
br label %1311
1307: ; preds = %1196, %1177, %1165
br label %1308
1308: ; preds = %1307
%1309 = load i32, i32* %35
%1310 = add nsw i32 %1309, 1
store i32 %1310, i32* %35
br label %1138
1311: ; preds = %1306, %1138
br label %1312
1312: ; preds = %1311
%1313 = load i32, i32* %36
%1314 = add nsw i32 %1313, 1
store i32 %1314, i32* %36
br label %1013
1315: ; preds = %1013
store i32 0, i32* %35
br label %1316
1316: ; preds = %1586, %1315
%1317 = load i32, i32* %35
%1318 = icmp slt i32 %1317, 10
br i1 %1318, label %1319, label %1589
1319: ; preds = %1316
%1320 = load i32, i32* %35
%1321 = sext i32 %1320 to i64
%1322 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1321
%1323 = getelementptr inbounds [5 x i32], [5 x i32]* %1322, i64 0, i64 0
%1324 = load i32, i32* %1323
%1325 = icmp eq i32 %1324, 0
br i1 %1325, label %1326, label %1333
1326: ; preds = %1319
%1327 = load i32, i32* %35
%1328 = sext i32 %1327 to i64
%1329 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1328
%1330 = getelementptr inbounds [5 x i32], [5 x i32]* %1329, i64 0, i64 0
%1331 = load i32, i32* %1330
%1332 = icmp eq i32 %1331, 0
br i1 %1332, label %1585, label %1333
1333: ; preds = %1326, %1319
%1334 = load i32, i32* %35
%1335 = sext i32 %1334 to i64
%1336 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1335
%1337 = getelementptr inbounds [5 x i32], [5 x i32]* %1336, i64 0, i64 3
%1338 = load i32, i32* %1337
%1339 = icmp sge i32 %1338, 0
br i1 %1339, label %1340, label %1347
1340: ; preds = %1333
%1341 = load i32, i32* %35
%1342 = sext i32 %1341 to i64
%1343 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1342
%1344 = getelementptr inbounds [5 x i32], [5 x i32]* %1343, i64 0, i64 3
%1345 = load i32, i32* %1344
%1346 = icmp sge i32 %1345, 0
br i1 %1346, label %1361, label %1347
1347: ; preds = %1340, %1333
%1348 = load i32, i32* %35
%1349 = sext i32 %1348 to i64
%1350 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1349
%1351 = getelementptr inbounds [5 x i32], [5 x i32]* %1350, i64 0, i64 3
%1352 = load i32, i32* %1351
%1353 = icmp slt i32 %1352, 0
br i1 %1353, label %1354, label %1391
1354: ; preds = %1347
%1355 = load i32, i32* %35
%1356 = sext i32 %1355 to i64
%1357 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1356
%1358 = getelementptr inbounds [5 x i32], [5 x i32]* %1357, i64 0, i64 3
%1359 = load i32, i32* %1358
%1360 = icmp slt i32 %1359, 0
br i1 %1360, label %1361, label %1391
1361: ; preds = %1354, %1340
%1362 = load i32, i32* %35
%1363 = sext i32 %1362 to i64
%1364 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1363
%1365 = getelementptr inbounds [5 x i32], [5 x i32]* %1364, i64 0, i64 3
%1366 = load i32, i32* %1365
%1367 = sitofp i32 %1366 to double
%1368 = fmul double 1.000000e+00, %1367
%1369 = load i32, i32* %35
%1370 = sext i32 %1369 to i64
%1371 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1370
%1372 = getelementptr inbounds [5 x i32], [5 x i32]* %1371, i64 0, i64 3
%1373 = load i32, i32* %1372
%1374 = sitofp i32 %1373 to double
%1375 = fmul double %1368, %1374
%1376 = call double @sqrt(double %1375)
%1377 = fptosi double %1376 to i64
%1378 = load i32, i32* %35
%1379 = sext i32 %1378 to i64
%1380 = getelementptr inbounds [10 x i64], [10 x i64]* %14, i64 0, i64 %1379
store i64 %1377, i64* %1380
%1381 = load i32, i32* %35
%1382 = sext i32 %1381 to i64
%1383 = getelementptr inbounds [10 x i64], [10 x i64]* %14, i64 0, i64 %1382
%1384 = load i64, i64* %1383
%1385 = icmp sgt i64 %1384, 1000
br i1 %1385, label %1386, label %1390
1386: ; preds = %1361
%1387 = load i32, i32* %35
%1388 = sext i32 %1387 to i64
%1389 = getelementptr inbounds [10 x i64], [10 x i64]* %14, i64 0, i64 %1388
store i64 1000, i64* %1389
br label %1390
1390: ; preds = %1386, %1361
br label %1422
1391: ; preds = %1354, %1347
%1392 = load i32, i32* %35
%1393 = sext i32 %1392 to i64
%1394 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1393
%1395 = getelementptr inbounds [5 x i32], [5 x i32]* %1394, i64 0, i64 3
%1396 = load i32, i32* %1395
%1397 = sitofp i32 %1396 to double
%1398 = fmul double -1.000000e+00, %1397
%1399 = load i32, i32* %35
%1400 = sext i32 %1399 to i64
%1401 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1400
%1402 = getelementptr inbounds [5 x i32], [5 x i32]* %1401, i64 0, i64 3
%1403 = load i32, i32* %1402
%1404 = sitofp i32 %1403 to double
%1405 = fmul double %1398, %1404
%1406 = call double @sqrt(double %1405)
%1407 = fmul double -1.000000e+00, %1406
%1408 = fptosi double %1407 to i64
%1409 = load i32, i32* %35
%1410 = sext i32 %1409 to i64
%1411 = getelementptr inbounds [10 x i64], [10 x i64]* %14, i64 0, i64 %1410
store i64 %1408, i64* %1411
%1412 = load i32, i32* %35
%1413 = sext i32 %1412 to i64
%1414 = getelementptr inbounds [10 x i64], [10 x i64]* %14, i64 0, i64 %1413
%1415 = load i64, i64* %1414
%1416 = icmp slt i64 %1415, -1000
br i1 %1416, label %1417, label %1421
1417: ; preds = %1391
%1418 = load i32, i32* %35
%1419 = sext i32 %1418 to i64
%1420 = getelementptr inbounds [10 x i64], [10 x i64]* %14, i64 0, i64 %1419
store i64 -1000, i64* %1420
br label %1421
1421: ; preds = %1417, %1391
br label %1422
1422: ; preds = %1421, %1390
%1423 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1424 = getelementptr inbounds [4 x i32], [4 x i32]* %1423, i64 0, i64 3
%1425 = load i32, i32* %1424
%1426 = icmp sge i32 %1425, 0
br i1 %1426, label %1427, label %1434
1427: ; preds = %1422
%1428 = load i32, i32* %35
%1429 = sext i32 %1428 to i64
%1430 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1429
%1431 = getelementptr inbounds [5 x i32], [5 x i32]* %1430, i64 0, i64 3
%1432 = load i32, i32* %1431
%1433 = icmp sge i32 %1432, 0
br i1 %1433, label %1446, label %1434
1434: ; preds = %1427, %1422
%1435 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1436 = getelementptr inbounds [4 x i32], [4 x i32]* %1435, i64 0, i64 3
%1437 = load i32, i32* %1436
%1438 = icmp slt i32 %1437, 0
br i1 %1438, label %1439, label %1474
1439: ; preds = %1434
%1440 = load i32, i32* %35
%1441 = sext i32 %1440 to i64
%1442 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1441
%1443 = getelementptr inbounds [5 x i32], [5 x i32]* %1442, i64 0, i64 3
%1444 = load i32, i32* %1443
%1445 = icmp slt i32 %1444, 0
br i1 %1445, label %1446, label %1474
1446: ; preds = %1439, %1427
%1447 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1448 = getelementptr inbounds [4 x i32], [4 x i32]* %1447, i64 0, i64 3
%1449 = load i32, i32* %1448
%1450 = sitofp i32 %1449 to double
%1451 = fmul double 1.000000e+00, %1450
%1452 = load i32, i32* %35
%1453 = sext i32 %1452 to i64
%1454 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1453
%1455 = getelementptr inbounds [5 x i32], [5 x i32]* %1454, i64 0, i64 3
%1456 = load i32, i32* %1455
%1457 = sitofp i32 %1456 to double
%1458 = fmul double %1451, %1457
%1459 = call double @sqrt(double %1458)
%1460 = fptosi double %1459 to i64
%1461 = load i32, i32* %35
%1462 = sext i32 %1461 to i64
%1463 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %1462
store i64 %1460, i64* %1463
%1464 = load i32, i32* %35
%1465 = sext i32 %1464 to i64
%1466 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %1465
%1467 = load i64, i64* %1466
%1468 = icmp sgt i64 %1467, 1000
br i1 %1468, label %1469, label %1473
1469: ; preds = %1446
%1470 = load i32, i32* %35
%1471 = sext i32 %1470 to i64
%1472 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %1471
store i64 1000, i64* %1472
br label %1473
1473: ; preds = %1469, %1446
br label %1503
1474: ; preds = %1439, %1434
%1475 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1476 = getelementptr inbounds [4 x i32], [4 x i32]* %1475, i64 0, i64 3
%1477 = load i32, i32* %1476
%1478 = sitofp i32 %1477 to double
%1479 = fmul double -1.000000e+00, %1478
%1480 = load i32, i32* %35
%1481 = sext i32 %1480 to i64
%1482 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1481
%1483 = getelementptr inbounds [5 x i32], [5 x i32]* %1482, i64 0, i64 3
%1484 = load i32, i32* %1483
%1485 = sitofp i32 %1484 to double
%1486 = fmul double %1479, %1485
%1487 = call double @sqrt(double %1486)
%1488 = fmul double -1.000000e+00, %1487
%1489 = fptosi double %1488 to i64
%1490 = load i32, i32* %35
%1491 = sext i32 %1490 to i64
%1492 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %1491
store i64 %1489, i64* %1492
%1493 = load i32, i32* %35
%1494 = sext i32 %1493 to i64
%1495 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %1494
%1496 = load i64, i64* %1495
%1497 = icmp slt i64 %1496, -1000
br i1 %1497, label %1498, label %1502
1498: ; preds = %1474
%1499 = load i32, i32* %35
%1500 = sext i32 %1499 to i64
%1501 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %1500
store i64 -1000, i64* %1501
br label %1502
1502: ; preds = %1498, %1474
br label %1503
1503: ; preds = %1502, %1473
%1504 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1505 = getelementptr inbounds [4 x i32], [4 x i32]* %1504, i64 0, i64 3
%1506 = load i32, i32* %1505
%1507 = icmp sge i32 %1506, 0
br i1 %1507, label %1508, label %1515
1508: ; preds = %1503
%1509 = load i32, i32* %35
%1510 = sext i32 %1509 to i64
%1511 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1510
%1512 = getelementptr inbounds [5 x i32], [5 x i32]* %1511, i64 0, i64 3
%1513 = load i32, i32* %1512
%1514 = icmp sge i32 %1513, 0
br i1 %1514, label %1527, label %1515
1515: ; preds = %1508, %1503
%1516 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1517 = getelementptr inbounds [4 x i32], [4 x i32]* %1516, i64 0, i64 3
%1518 = load i32, i32* %1517
%1519 = icmp slt i32 %1518, 0
br i1 %1519, label %1520, label %1555
1520: ; preds = %1515
%1521 = load i32, i32* %35
%1522 = sext i32 %1521 to i64
%1523 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1522
%1524 = getelementptr inbounds [5 x i32], [5 x i32]* %1523, i64 0, i64 3
%1525 = load i32, i32* %1524
%1526 = icmp slt i32 %1525, 0
br i1 %1526, label %1527, label %1555
1527: ; preds = %1520, %1508
%1528 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1529 = getelementptr inbounds [4 x i32], [4 x i32]* %1528, i64 0, i64 3
%1530 = load i32, i32* %1529
%1531 = sitofp i32 %1530 to double
%1532 = fmul double 1.000000e+00, %1531
%1533 = load i32, i32* %35
%1534 = sext i32 %1533 to i64
%1535 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1534
%1536 = getelementptr inbounds [5 x i32], [5 x i32]* %1535, i64 0, i64 3
%1537 = load i32, i32* %1536
%1538 = sitofp i32 %1537 to double
%1539 = fmul double %1532, %1538
%1540 = call double @sqrt(double %1539)
%1541 = fptosi double %1540 to i64
%1542 = load i32, i32* %35
%1543 = sext i32 %1542 to i64
%1544 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %1543
store i64 %1541, i64* %1544
%1545 = load i32, i32* %35
%1546 = sext i32 %1545 to i64
%1547 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %1546
%1548 = load i64, i64* %1547
%1549 = icmp sgt i64 %1548, 1000
br i1 %1549, label %1550, label %1554
1550: ; preds = %1527
%1551 = load i32, i32* %35
%1552 = sext i32 %1551 to i64
%1553 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %1552
store i64 1000, i64* %1553
br label %1554
1554: ; preds = %1550, %1527
br label %1584
1555: ; preds = %1520, %1515
%1556 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1557 = getelementptr inbounds [4 x i32], [4 x i32]* %1556, i64 0, i64 3
%1558 = load i32, i32* %1557
%1559 = sitofp i32 %1558 to double
%1560 = fmul double -1.000000e+00, %1559
%1561 = load i32, i32* %35
%1562 = sext i32 %1561 to i64
%1563 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1562
%1564 = getelementptr inbounds [5 x i32], [5 x i32]* %1563, i64 0, i64 3
%1565 = load i32, i32* %1564
%1566 = sitofp i32 %1565 to double
%1567 = fmul double %1560, %1566
%1568 = call double @sqrt(double %1567)
%1569 = fmul double -1.000000e+00, %1568
%1570 = fptosi double %1569 to i64
%1571 = load i32, i32* %35
%1572 = sext i32 %1571 to i64
%1573 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %1572
store i64 %1570, i64* %1573
%1574 = load i32, i32* %35
%1575 = sext i32 %1574 to i64
%1576 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %1575
%1577 = load i64, i64* %1576
%1578 = icmp slt i64 %1577, -1000
br i1 %1578, label %1579, label %1583
1579: ; preds = %1555
%1580 = load i32, i32* %35
%1581 = sext i32 %1580 to i64
%1582 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %1581
store i64 -1000, i64* %1582
br label %1583
1583: ; preds = %1579, %1555
br label %1584
1584: ; preds = %1583, %1554
br label %1585
1585: ; preds = %1584, %1326
br label %1586
1586: ; preds = %1585
%1587 = load i32, i32* %35
%1588 = add nsw i32 %1587, 1
store i32 %1588, i32* %35
br label %1316
1589: ; preds = %1316
%1590 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.3, i64 0, i64 0))
store i32 0, i32* %35
br label %1591
1591: ; preds = %1640, %1589
%1592 = load i32, i32* %35
%1593 = icmp slt i32 %1592, 30
br i1 %1593, label %1594, label %1643
1594: ; preds = %1591
%1595 = load i32, i32* %35
%1596 = sext i32 %1595 to i64
%1597 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1596
%1598 = getelementptr inbounds [4 x i32], [4 x i32]* %1597, i64 0, i64 0
%1599 = load i32, i32* %1598
%1600 = load i32, i32* %35
%1601 = sext i32 %1600 to i64
%1602 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1601
%1603 = getelementptr inbounds [4 x i32], [4 x i32]* %1602, i64 0, i64 1
%1604 = load i32, i32* %1603
%1605 = load i32, i32* %35
%1606 = sext i32 %1605 to i64
%1607 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1606
%1608 = getelementptr inbounds [4 x i32], [4 x i32]* %1607, i64 0, i64 2
%1609 = load i32, i32* %1608
%1610 = load i32, i32* %35
%1611 = sext i32 %1610 to i64
%1612 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1611
%1613 = getelementptr inbounds [4 x i32], [4 x i32]* %1612, i64 0, i64 3
%1614 = load i32, i32* %1613
%1615 = load i32, i32* %35
%1616 = add nsw i32 %1615, 1
%1617 = sext i32 %1616 to i64
%1618 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1617
%1619 = getelementptr inbounds [4 x i32], [4 x i32]* %1618, i64 0, i64 0
%1620 = load i32, i32* %1619
%1621 = load i32, i32* %35
%1622 = add nsw i32 %1621, 1
%1623 = sext i32 %1622 to i64
%1624 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1623
%1625 = getelementptr inbounds [4 x i32], [4 x i32]* %1624, i64 0, i64 1
%1626 = load i32, i32* %1625
%1627 = load i32, i32* %35
%1628 = add nsw i32 %1627, 1
%1629 = sext i32 %1628 to i64
%1630 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1629
%1631 = getelementptr inbounds [4 x i32], [4 x i32]* %1630, i64 0, i64 2
%1632 = load i32, i32* %1631
%1633 = load i32, i32* %35
%1634 = add nsw i32 %1633, 1
%1635 = sext i32 %1634 to i64
%1636 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %1635
%1637 = getelementptr inbounds [4 x i32], [4 x i32]* %1636, i64 0, i64 3
%1638 = load i32, i32* %1637
%1639 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.2, i64 0, i64 0), i32 %1599, i32 %1604, i32 %1609, i32 %1614, i32 %1620, i32 %1626, i32 %1632, i32 %1638)
br label %1640
1640: ; preds = %1594
%1641 = load i32, i32* %35
%1642 = add nsw i32 %1641, 2
store i32 %1642, i32* %35
br label %1591
1643: ; preds = %1591
store i64 0, i64* %15
store i64 0, i64* %16
store i32 0, i32* %35
br label %1644
1644: ; preds = %1671, %1643
%1645 = load i32, i32* %35
%1646 = icmp slt i32 %1645, 10
br i1 %1646, label %1647, label %1674
1647: ; preds = %1644
%1648 = load i32, i32* %35
%1649 = sext i32 %1648 to i64
%1650 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1649
%1651 = getelementptr inbounds [5 x i32], [5 x i32]* %1650, i64 0, i64 0
%1652 = load i32, i32* %1651
%1653 = icmp eq i32 %1652, 0
br i1 %1653, label %1654, label %1661
1654: ; preds = %1647
%1655 = load i32, i32* %35
%1656 = sext i32 %1655 to i64
%1657 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1656
%1658 = getelementptr inbounds [5 x i32], [5 x i32]* %1657, i64 0, i64 0
%1659 = load i32, i32* %1658
%1660 = icmp eq i32 %1659, 0
br i1 %1660, label %1670, label %1661
1661: ; preds = %1654, %1647
%1662 = load i64, i64* %15
%1663 = load i32, i32* %35
%1664 = sext i32 %1663 to i64
%1665 = getelementptr inbounds [10 x i64], [10 x i64]* %14, i64 0, i64 %1664
%1666 = load i64, i64* %1665
%1667 = add nsw i64 %1662, %1666
store i64 %1667, i64* %15
%1668 = load i64, i64* %16
%1669 = add nsw i64 %1668, 1
store i64 %1669, i64* %16
br label %1670
1670: ; preds = %1661, %1654
br label %1671
1671: ; preds = %1670
%1672 = load i32, i32* %35
%1673 = add nsw i32 %1672, 1
store i32 %1673, i32* %35
br label %1644
1674: ; preds = %1644
%1675 = load i64, i64* %16
%1676 = icmp sgt i64 %1675, 0
br i1 %1676, label %1677, label %1700
1677: ; preds = %1674
%1678 = load i64, i64* %15
%1679 = load i64, i64* %16
%1680 = sdiv i64 %1678, %1679
store i64 %1680, i64* %15
%1681 = load i64, i64* %15
%1682 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1683 = getelementptr inbounds [4 x i32], [4 x i32]* %1682, i64 0, i64 3
%1684 = load i32, i32* %1683
%1685 = sext i32 %1684 to i64
%1686 = add nsw i64 %1681, %1685
store i64 %1686, i64* %15
%1687 = load i64, i64* %15
%1688 = icmp slt i64 %1687, -1000
br i1 %1688, label %1689, label %1690
1689: ; preds = %1677
store i64 -1000, i64* %15
br label %1695
1690: ; preds = %1677
%1691 = load i64, i64* %15
%1692 = icmp sgt i64 %1691, 1000
br i1 %1692, label %1693, label %1694
1693: ; preds = %1690
store i64 1000, i64* %15
br label %1694
1694: ; preds = %1693, %1690
br label %1695
1695: ; preds = %1694, %1689
%1696 = load i64, i64* %15
%1697 = trunc i64 %1696 to i32
%1698 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1699 = getelementptr inbounds [4 x i32], [4 x i32]* %1698, i64 0, i64 3
store i32 %1697, i32* %1699
br label %1700
1700: ; preds = %1695, %1674
%1701 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.4, i64 0, i64 0))
store i32 0, i32* %36
store i32 0, i32* %35
br label %1702
1702: ; preds = %1719, %1700
%1703 = load i32, i32* %35
%1704 = icmp slt i32 %1703, 10
br i1 %1704, label %1705, label %1722
1705: ; preds = %1702
%1706 = load i32, i32* %35
%1707 = sext i32 %1706 to i64
%1708 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %1707
%1709 = load i32, i32* %1708
%1710 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.5, i64 0, i64 0), i32 %1709)
%1711 = load i32, i32* %36
%1712 = icmp eq i32 %1711, 11
br i1 %1712, label %1713, label %1715
1713: ; preds = %1705
%1714 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0))
store i32 0, i32* %36
br label %1718
1715: ; preds = %1705
%1716 = load i32, i32* %36
%1717 = add nsw i32 %1716, 1
store i32 %1717, i32* %36
br label %1718
1718: ; preds = %1715, %1713
br label %1719
1719: ; preds = %1718
%1720 = load i32, i32* %35
%1721 = add nsw i32 %1720, 1
store i32 %1721, i32* %35
br label %1702
1722: ; preds = %1702
%1723 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.7, i64 0, i64 0))
%1724 = load i32, i32* %42
%1725 = icmp eq i32 %1724, 1
br i1 %1725, label %1726, label %1728
1726: ; preds = %1722
%1727 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.8, i64 0, i64 0))
br label %1730
1728: ; preds = %1722
%1729 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.9, i64 0, i64 0))
br label %1730
1730: ; preds = %1728, %1726
%1731 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1732 = getelementptr inbounds [4 x i32], [4 x i32]* %1731, i64 0, i64 3
%1733 = load i32, i32* %1732
%1734 = icmp slt i32 %1733, 0
br i1 %1734, label %1735, label %1756
1735: ; preds = %1730
%1736 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1737 = getelementptr inbounds [4 x i32], [4 x i32]* %1736, i64 0, i64 0
%1738 = load i32, i32* %1737
%1739 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1740 = getelementptr inbounds [4 x i32], [4 x i32]* %1739, i64 0, i64 1
%1741 = load i32, i32* %1740
%1742 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1743 = getelementptr inbounds [4 x i32], [4 x i32]* %1742, i64 0, i64 2
%1744 = load i32, i32* %1743
%1745 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1746 = getelementptr inbounds [4 x i32], [4 x i32]* %1745, i64 0, i64 3
%1747 = load i32, i32* %1746
%1748 = load i32, i32* %34
%1749 = add nsw i32 %1748, 1
%1750 = load i32, i32* %38
%1751 = add nsw i32 %1750, 1
%1752 = load i32, i32* %40
%1753 = add nsw i32 %1752, 1
%1754 = load i32, i32* %28
%1755 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([129 x i8], [129 x i8]* @.str.10, i64 0, i64 0), i32 %1738, i32 %1741, i32 %1744, i32 %1747, i32 %1749, i32 3, i32 %1751, i32 3, i32 %1753, i32 9, i32 %1754)
br label %1777
1756: ; preds = %1730
%1757 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1758 = getelementptr inbounds [4 x i32], [4 x i32]* %1757, i64 0, i64 0
%1759 = load i32, i32* %1758
%1760 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1761 = getelementptr inbounds [4 x i32], [4 x i32]* %1760, i64 0, i64 1
%1762 = load i32, i32* %1761
%1763 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1764 = getelementptr inbounds [4 x i32], [4 x i32]* %1763, i64 0, i64 2
%1765 = load i32, i32* %1764
%1766 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%1767 = getelementptr inbounds [4 x i32], [4 x i32]* %1766, i64 0, i64 3
%1768 = load i32, i32* %1767
%1769 = load i32, i32* %34
%1770 = add nsw i32 %1769, 1
%1771 = load i32, i32* %38
%1772 = add nsw i32 %1771, 1
%1773 = load i32, i32* %40
%1774 = add nsw i32 %1773, 1
%1775 = load i32, i32* %28
%1776 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([129 x i8], [129 x i8]* @.str.11, i64 0, i64 0), i32 %1759, i32 %1762, i32 %1765, i32 %1768, i32 %1770, i32 3, i32 %1772, i32 3, i32 %1774, i32 9, i32 %1775)
br label %1777
1777: ; preds = %1756, %1735
store i32 0, i32* %35
br label %1778
1778: ; preds = %2197, %1777
%1779 = load i32, i32* %35
%1780 = icmp slt i32 %1779, 10
br i1 %1780, label %1781, label %2200
1781: ; preds = %1778
store i64 0, i64* %15
%1782 = load i32, i32* %35
%1783 = sext i32 %1782 to i64
%1784 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1783
%1785 = getelementptr inbounds [5 x i32], [5 x i32]* %1784, i64 0, i64 0
%1786 = load i32, i32* %1785
%1787 = icmp eq i32 %1786, 0
br i1 %1787, label %1788, label %1795
1788: ; preds = %1781
%1789 = load i32, i32* %35
%1790 = sext i32 %1789 to i64
%1791 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1790
%1792 = getelementptr inbounds [5 x i32], [5 x i32]* %1791, i64 0, i64 0
%1793 = load i32, i32* %1792
%1794 = icmp eq i32 %1793, 0
br i1 %1794, label %2196, label %1795
1795: ; preds = %1788, %1781
%1796 = load i32, i32* %35
%1797 = icmp eq i32 %1796, 0
br i1 %1797, label %1798, label %1799
1798: ; preds = %1795
store i32 0, i32* %41
br label %1799
1799: ; preds = %1798, %1795
%1800 = load i32, i32* %41
%1801 = icmp slt i32 %1800, 20
br i1 %1801, label %1802, label %2161
1802: ; preds = %1799
%1803 = load i32, i32* %41
%1804 = add nsw i32 %1803, 1
store i32 %1804, i32* %41
%1805 = load i32, i32* %35
%1806 = sext i32 %1805 to i64
%1807 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1806
%1808 = getelementptr inbounds [5 x i32], [5 x i32]* %1807, i64 0, i64 3
%1809 = load i32, i32* %1808
%1810 = icmp slt i32 %1809, 0
br i1 %1810, label %1811, label %1878
1811: ; preds = %1802
%1812 = load i32, i32* %35
%1813 = sext i32 %1812 to i64
%1814 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1813
%1815 = getelementptr inbounds [5 x i32], [5 x i32]* %1814, i64 0, i64 3
%1816 = load i32, i32* %1815
%1817 = icmp slt i32 %1816, 0
br i1 %1817, label %1818, label %1878
1818: ; preds = %1811
%1819 = load i32, i32* %35
%1820 = sext i32 %1819 to i64
%1821 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1820
%1822 = getelementptr inbounds [5 x i32], [5 x i32]* %1821, i64 0, i64 0
%1823 = load i32, i32* %1822
%1824 = load i32, i32* %35
%1825 = sext i32 %1824 to i64
%1826 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1825
%1827 = getelementptr inbounds [5 x i32], [5 x i32]* %1826, i64 0, i64 1
%1828 = load i32, i32* %1827
%1829 = load i32, i32* %35
%1830 = sext i32 %1829 to i64
%1831 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1830
%1832 = getelementptr inbounds [5 x i32], [5 x i32]* %1831, i64 0, i64 2
%1833 = load i32, i32* %1832
%1834 = load i32, i32* %35
%1835 = sext i32 %1834 to i64
%1836 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1835
%1837 = getelementptr inbounds [5 x i32], [5 x i32]* %1836, i64 0, i64 3
%1838 = load i32, i32* %1837
%1839 = load i32, i32* %35
%1840 = sext i32 %1839 to i64
%1841 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1840
%1842 = getelementptr inbounds [5 x i32], [5 x i32]* %1841, i64 0, i64 4
%1843 = load i32, i32* %1842
%1844 = load i32, i32* %35
%1845 = sext i32 %1844 to i64
%1846 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %1845
%1847 = load i64, i64* %1846
%1848 = load i32, i32* %35
%1849 = sext i32 %1848 to i64
%1850 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1849
%1851 = getelementptr inbounds [5 x i32], [5 x i32]* %1850, i64 0, i64 0
%1852 = load i32, i32* %1851
%1853 = load i32, i32* %35
%1854 = sext i32 %1853 to i64
%1855 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1854
%1856 = getelementptr inbounds [5 x i32], [5 x i32]* %1855, i64 0, i64 1
%1857 = load i32, i32* %1856
%1858 = load i32, i32* %35
%1859 = sext i32 %1858 to i64
%1860 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1859
%1861 = getelementptr inbounds [5 x i32], [5 x i32]* %1860, i64 0, i64 2
%1862 = load i32, i32* %1861
%1863 = load i32, i32* %35
%1864 = sext i32 %1863 to i64
%1865 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1864
%1866 = getelementptr inbounds [5 x i32], [5 x i32]* %1865, i64 0, i64 3
%1867 = load i32, i32* %1866
%1868 = load i32, i32* %35
%1869 = sext i32 %1868 to i64
%1870 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1869
%1871 = getelementptr inbounds [5 x i32], [5 x i32]* %1870, i64 0, i64 4
%1872 = load i32, i32* %1871
%1873 = load i32, i32* %35
%1874 = sext i32 %1873 to i64
%1875 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %1874
%1876 = load i64, i64* %1875
%1877 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([116 x i8], [116 x i8]* @.str.12, i64 0, i64 0), i32 %1823, i32 %1828, i32 %1833, i32 %1838, i32 %1843, i64 %1847, i32 %1852, i32 %1857, i32 %1862, i32 %1867, i32 %1872, i64 %1876)
br label %2088
1878: ; preds = %1811, %1802
%1879 = load i32, i32* %35
%1880 = sext i32 %1879 to i64
%1881 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1880
%1882 = getelementptr inbounds [5 x i32], [5 x i32]* %1881, i64 0, i64 3
%1883 = load i32, i32* %1882
%1884 = icmp sge i32 %1883, 0
br i1 %1884, label %1885, label %1952
1885: ; preds = %1878
%1886 = load i32, i32* %35
%1887 = sext i32 %1886 to i64
%1888 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1887
%1889 = getelementptr inbounds [5 x i32], [5 x i32]* %1888, i64 0, i64 3
%1890 = load i32, i32* %1889
%1891 = icmp slt i32 %1890, 0
br i1 %1891, label %1892, label %1952
1892: ; preds = %1885
%1893 = load i32, i32* %35
%1894 = sext i32 %1893 to i64
%1895 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1894
%1896 = getelementptr inbounds [5 x i32], [5 x i32]* %1895, i64 0, i64 0
%1897 = load i32, i32* %1896
%1898 = load i32, i32* %35
%1899 = sext i32 %1898 to i64
%1900 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1899
%1901 = getelementptr inbounds [5 x i32], [5 x i32]* %1900, i64 0, i64 1
%1902 = load i32, i32* %1901
%1903 = load i32, i32* %35
%1904 = sext i32 %1903 to i64
%1905 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1904
%1906 = getelementptr inbounds [5 x i32], [5 x i32]* %1905, i64 0, i64 2
%1907 = load i32, i32* %1906
%1908 = load i32, i32* %35
%1909 = sext i32 %1908 to i64
%1910 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1909
%1911 = getelementptr inbounds [5 x i32], [5 x i32]* %1910, i64 0, i64 3
%1912 = load i32, i32* %1911
%1913 = load i32, i32* %35
%1914 = sext i32 %1913 to i64
%1915 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1914
%1916 = getelementptr inbounds [5 x i32], [5 x i32]* %1915, i64 0, i64 4
%1917 = load i32, i32* %1916
%1918 = load i32, i32* %35
%1919 = sext i32 %1918 to i64
%1920 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %1919
%1921 = load i64, i64* %1920
%1922 = load i32, i32* %35
%1923 = sext i32 %1922 to i64
%1924 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1923
%1925 = getelementptr inbounds [5 x i32], [5 x i32]* %1924, i64 0, i64 0
%1926 = load i32, i32* %1925
%1927 = load i32, i32* %35
%1928 = sext i32 %1927 to i64
%1929 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1928
%1930 = getelementptr inbounds [5 x i32], [5 x i32]* %1929, i64 0, i64 1
%1931 = load i32, i32* %1930
%1932 = load i32, i32* %35
%1933 = sext i32 %1932 to i64
%1934 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1933
%1935 = getelementptr inbounds [5 x i32], [5 x i32]* %1934, i64 0, i64 2
%1936 = load i32, i32* %1935
%1937 = load i32, i32* %35
%1938 = sext i32 %1937 to i64
%1939 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1938
%1940 = getelementptr inbounds [5 x i32], [5 x i32]* %1939, i64 0, i64 3
%1941 = load i32, i32* %1940
%1942 = load i32, i32* %35
%1943 = sext i32 %1942 to i64
%1944 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1943
%1945 = getelementptr inbounds [5 x i32], [5 x i32]* %1944, i64 0, i64 4
%1946 = load i32, i32* %1945
%1947 = load i32, i32* %35
%1948 = sext i32 %1947 to i64
%1949 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %1948
%1950 = load i64, i64* %1949
%1951 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([116 x i8], [116 x i8]* @.str.13, i64 0, i64 0), i32 %1897, i32 %1902, i32 %1907, i32 %1912, i32 %1917, i64 %1921, i32 %1926, i32 %1931, i32 %1936, i32 %1941, i32 %1946, i64 %1950)
br label %2087
1952: ; preds = %1885, %1878
%1953 = load i32, i32* %35
%1954 = sext i32 %1953 to i64
%1955 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1954
%1956 = getelementptr inbounds [5 x i32], [5 x i32]* %1955, i64 0, i64 3
%1957 = load i32, i32* %1956
%1958 = icmp slt i32 %1957, 0
br i1 %1958, label %1959, label %2026
1959: ; preds = %1952
%1960 = load i32, i32* %35
%1961 = sext i32 %1960 to i64
%1962 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1961
%1963 = getelementptr inbounds [5 x i32], [5 x i32]* %1962, i64 0, i64 3
%1964 = load i32, i32* %1963
%1965 = icmp sge i32 %1964, 0
br i1 %1965, label %1966, label %2026
1966: ; preds = %1959
%1967 = load i32, i32* %35
%1968 = sext i32 %1967 to i64
%1969 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1968
%1970 = getelementptr inbounds [5 x i32], [5 x i32]* %1969, i64 0, i64 0
%1971 = load i32, i32* %1970
%1972 = load i32, i32* %35
%1973 = sext i32 %1972 to i64
%1974 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1973
%1975 = getelementptr inbounds [5 x i32], [5 x i32]* %1974, i64 0, i64 1
%1976 = load i32, i32* %1975
%1977 = load i32, i32* %35
%1978 = sext i32 %1977 to i64
%1979 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1978
%1980 = getelementptr inbounds [5 x i32], [5 x i32]* %1979, i64 0, i64 2
%1981 = load i32, i32* %1980
%1982 = load i32, i32* %35
%1983 = sext i32 %1982 to i64
%1984 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1983
%1985 = getelementptr inbounds [5 x i32], [5 x i32]* %1984, i64 0, i64 3
%1986 = load i32, i32* %1985
%1987 = load i32, i32* %35
%1988 = sext i32 %1987 to i64
%1989 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %1988
%1990 = getelementptr inbounds [5 x i32], [5 x i32]* %1989, i64 0, i64 4
%1991 = load i32, i32* %1990
%1992 = load i32, i32* %35
%1993 = sext i32 %1992 to i64
%1994 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %1993
%1995 = load i64, i64* %1994
%1996 = load i32, i32* %35
%1997 = sext i32 %1996 to i64
%1998 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %1997
%1999 = getelementptr inbounds [5 x i32], [5 x i32]* %1998, i64 0, i64 0
%2000 = load i32, i32* %1999
%2001 = load i32, i32* %35
%2002 = sext i32 %2001 to i64
%2003 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2002
%2004 = getelementptr inbounds [5 x i32], [5 x i32]* %2003, i64 0, i64 1
%2005 = load i32, i32* %2004
%2006 = load i32, i32* %35
%2007 = sext i32 %2006 to i64
%2008 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2007
%2009 = getelementptr inbounds [5 x i32], [5 x i32]* %2008, i64 0, i64 2
%2010 = load i32, i32* %2009
%2011 = load i32, i32* %35
%2012 = sext i32 %2011 to i64
%2013 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2012
%2014 = getelementptr inbounds [5 x i32], [5 x i32]* %2013, i64 0, i64 3
%2015 = load i32, i32* %2014
%2016 = load i32, i32* %35
%2017 = sext i32 %2016 to i64
%2018 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2017
%2019 = getelementptr inbounds [5 x i32], [5 x i32]* %2018, i64 0, i64 4
%2020 = load i32, i32* %2019
%2021 = load i32, i32* %35
%2022 = sext i32 %2021 to i64
%2023 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %2022
%2024 = load i64, i64* %2023
%2025 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([116 x i8], [116 x i8]* @.str.14, i64 0, i64 0), i32 %1971, i32 %1976, i32 %1981, i32 %1986, i32 %1991, i64 %1995, i32 %2000, i32 %2005, i32 %2010, i32 %2015, i32 %2020, i64 %2024)
br label %2086
2026: ; preds = %1959, %1952
%2027 = load i32, i32* %35
%2028 = sext i32 %2027 to i64
%2029 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2028
%2030 = getelementptr inbounds [5 x i32], [5 x i32]* %2029, i64 0, i64 0
%2031 = load i32, i32* %2030
%2032 = load i32, i32* %35
%2033 = sext i32 %2032 to i64
%2034 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2033
%2035 = getelementptr inbounds [5 x i32], [5 x i32]* %2034, i64 0, i64 1
%2036 = load i32, i32* %2035
%2037 = load i32, i32* %35
%2038 = sext i32 %2037 to i64
%2039 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2038
%2040 = getelementptr inbounds [5 x i32], [5 x i32]* %2039, i64 0, i64 2
%2041 = load i32, i32* %2040
%2042 = load i32, i32* %35
%2043 = sext i32 %2042 to i64
%2044 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2043
%2045 = getelementptr inbounds [5 x i32], [5 x i32]* %2044, i64 0, i64 3
%2046 = load i32, i32* %2045
%2047 = load i32, i32* %35
%2048 = sext i32 %2047 to i64
%2049 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2048
%2050 = getelementptr inbounds [5 x i32], [5 x i32]* %2049, i64 0, i64 4
%2051 = load i32, i32* %2050
%2052 = load i32, i32* %35
%2053 = sext i32 %2052 to i64
%2054 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %2053
%2055 = load i64, i64* %2054
%2056 = load i32, i32* %35
%2057 = sext i32 %2056 to i64
%2058 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2057
%2059 = getelementptr inbounds [5 x i32], [5 x i32]* %2058, i64 0, i64 0
%2060 = load i32, i32* %2059
%2061 = load i32, i32* %35
%2062 = sext i32 %2061 to i64
%2063 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2062
%2064 = getelementptr inbounds [5 x i32], [5 x i32]* %2063, i64 0, i64 1
%2065 = load i32, i32* %2064
%2066 = load i32, i32* %35
%2067 = sext i32 %2066 to i64
%2068 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2067
%2069 = getelementptr inbounds [5 x i32], [5 x i32]* %2068, i64 0, i64 2
%2070 = load i32, i32* %2069
%2071 = load i32, i32* %35
%2072 = sext i32 %2071 to i64
%2073 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2072
%2074 = getelementptr inbounds [5 x i32], [5 x i32]* %2073, i64 0, i64 3
%2075 = load i32, i32* %2074
%2076 = load i32, i32* %35
%2077 = sext i32 %2076 to i64
%2078 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2077
%2079 = getelementptr inbounds [5 x i32], [5 x i32]* %2078, i64 0, i64 4
%2080 = load i32, i32* %2079
%2081 = load i32, i32* %35
%2082 = sext i32 %2081 to i64
%2083 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %2082
%2084 = load i64, i64* %2083
%2085 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([116 x i8], [116 x i8]* @.str.15, i64 0, i64 0), i32 %2031, i32 %2036, i32 %2041, i32 %2046, i32 %2051, i64 %2055, i32 %2060, i32 %2065, i32 %2070, i32 %2075, i32 %2080, i64 %2084)
br label %2086
2086: ; preds = %2026, %1966
br label %2087
2087: ; preds = %2086, %1892
br label %2088
2088: ; preds = %2087, %1818
%2089 = load i32, i32* %35
%2090 = sext i32 %2089 to i64
%2091 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2090
%2092 = getelementptr inbounds [5 x i32], [5 x i32]* %2091, i64 0, i64 0
%2093 = load i32, i32* %2092
%2094 = icmp ne i32 %2093, 0
br i1 %2094, label %2095, label %2158
2095: ; preds = %2088
%2096 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.16, i64 0, i64 0))
%2097 = load i32, i32* %35
%2098 = sext i32 %2097 to i64
%2099 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2098
%2100 = getelementptr inbounds [5 x i32], [5 x i32]* %2099, i64 0, i64 3
%2101 = load i32, i32* %2100
%2102 = load i32, i32* %35
%2103 = sext i32 %2102 to i64
%2104 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2103
%2105 = getelementptr inbounds [5 x i32], [5 x i32]* %2104, i64 0, i64 3
%2106 = load i32, i32* %2105
%2107 = mul nsw i32 %2101, %2106
%2108 = icmp slt i32 %2107, 0
br i1 %2108, label %2109, label %2114
2109: ; preds = %2095
%2110 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%2111 = getelementptr inbounds [4 x i32], [4 x i32]* %2110, i64 0, i64 3
%2112 = load i32, i32* %2111
%2113 = icmp sgt i32 %2112, 0
br i1 %2113, label %2132, label %2114
2114: ; preds = %2109, %2095
%2115 = load i32, i32* %35
%2116 = sext i32 %2115 to i64
%2117 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2116
%2118 = getelementptr inbounds [5 x i32], [5 x i32]* %2117, i64 0, i64 3
%2119 = load i32, i32* %2118
%2120 = load i32, i32* %35
%2121 = sext i32 %2120 to i64
%2122 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2121
%2123 = getelementptr inbounds [5 x i32], [5 x i32]* %2122, i64 0, i64 3
%2124 = load i32, i32* %2123
%2125 = mul nsw i32 %2119, %2124
%2126 = icmp sgt i32 %2125, 0
br i1 %2126, label %2127, label %2134
2127: ; preds = %2114
%2128 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%2129 = getelementptr inbounds [4 x i32], [4 x i32]* %2128, i64 0, i64 3
%2130 = load i32, i32* %2129
%2131 = icmp slt i32 %2130, 0
br i1 %2131, label %2132, label %2134
2132: ; preds = %2127, %2109
%2133 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.17, i64 0, i64 0))
br label %2157
2134: ; preds = %2127, %2114
%2135 = load i32, i32* %35
%2136 = sext i32 %2135 to i64
%2137 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2136
%2138 = getelementptr inbounds [5 x i32], [5 x i32]* %2137, i64 0, i64 3
%2139 = load i32, i32* %2138
%2140 = load i32, i32* %35
%2141 = sext i32 %2140 to i64
%2142 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2141
%2143 = getelementptr inbounds [5 x i32], [5 x i32]* %2142, i64 0, i64 3
%2144 = load i32, i32* %2143
%2145 = mul nsw i32 %2139, %2144
%2146 = icmp eq i32 %2145, 0
br i1 %2146, label %2152, label %2147
2147: ; preds = %2134
%2148 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 0
%2149 = getelementptr inbounds [4 x i32], [4 x i32]* %2148, i64 0, i64 3
%2150 = load i32, i32* %2149
%2151 = icmp eq i32 %2150, 0
br i1 %2151, label %2152, label %2154
2152: ; preds = %2147, %2134
%2153 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.18, i64 0, i64 0))
br label %2156
2154: ; preds = %2147
%2155 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.19, i64 0, i64 0))
br label %2156
2156: ; preds = %2154, %2152
br label %2157
2157: ; preds = %2156, %2132
br label %2160
2158: ; preds = %2088
%2159 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.20, i64 0, i64 0))
br label %2160
2160: ; preds = %2158, %2157
br label %2161
2161: ; preds = %2160, %1799
%2162 = load i32, i32* %35
%2163 = sext i32 %2162 to i64
%2164 = getelementptr inbounds [10 x i64], [10 x i64]* %17, i64 0, i64 %2163
%2165 = load i64, i64* %2164
%2166 = load i32, i32* %35
%2167 = sext i32 %2166 to i64
%2168 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2167
%2169 = getelementptr inbounds [5 x i32], [5 x i32]* %2168, i64 0, i64 4
%2170 = load i32, i32* %2169
%2171 = sext i32 %2170 to i64
%2172 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2171
%2173 = getelementptr inbounds [4 x i32], [4 x i32]* %2172, i64 0, i64 3
%2174 = load i32, i32* %2173
%2175 = sext i32 %2174 to i64
%2176 = add nsw i64 %2165, %2175
store i64 %2176, i64* %15
%2177 = load i64, i64* %15
%2178 = icmp slt i64 %2177, -1000
br i1 %2178, label %2179, label %2180
2179: ; preds = %2161
store i64 -1000, i64* %15
br label %2185
2180: ; preds = %2161
%2181 = load i64, i64* %15
%2182 = icmp sgt i64 %2181, 1000
br i1 %2182, label %2183, label %2184
2183: ; preds = %2180
store i64 1000, i64* %15
br label %2184
2184: ; preds = %2183, %2180
br label %2185
2185: ; preds = %2184, %2179
%2186 = load i64, i64* %15
%2187 = trunc i64 %2186 to i32
%2188 = load i32, i32* %35
%2189 = sext i32 %2188 to i64
%2190 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2189
%2191 = getelementptr inbounds [5 x i32], [5 x i32]* %2190, i64 0, i64 4
%2192 = load i32, i32* %2191
%2193 = sext i32 %2192 to i64
%2194 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2193
%2195 = getelementptr inbounds [4 x i32], [4 x i32]* %2194, i64 0, i64 3
store i32 %2187, i32* %2195
br label %2196
2196: ; preds = %2185, %1788
br label %2197
2197: ; preds = %2196
%2198 = load i32, i32* %35
%2199 = add nsw i32 %2198, 1
store i32 %2199, i32* %35
br label %1778
2200: ; preds = %1778
store i32 0, i32* %11
store i32 0, i32* %35
br label %2201
2201: ; preds = %2295, %2200
%2202 = load i32, i32* %35
%2203 = icmp slt i32 %2202, 10
br i1 %2203, label %2204, label %2298
2204: ; preds = %2201
store i64 0, i64* %15
%2205 = load i32, i32* %35
%2206 = sext i32 %2205 to i64
%2207 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %7, i64 0, i64 %2206
%2208 = getelementptr inbounds [5 x i32], [5 x i32]* %2207, i64 0, i64 0
%2209 = load i32, i32* %2208
%2210 = icmp ne i32 %2209, 0
br i1 %2210, label %2211, label %2294
2211: ; preds = %2204
%2212 = load i32, i32* %35
%2213 = sext i32 %2212 to i64
%2214 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2213
%2215 = getelementptr inbounds [5 x i32], [5 x i32]* %2214, i64 0, i64 0
%2216 = load i32, i32* %2215
%2217 = icmp ne i32 %2216, 0
br i1 %2217, label %2218, label %2253
2218: ; preds = %2211
%2219 = load i32, i32* %35
%2220 = sext i32 %2219 to i64
%2221 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %2220
%2222 = load i64, i64* %2221
%2223 = load i32, i32* %35
%2224 = sext i32 %2223 to i64
%2225 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2224
%2226 = getelementptr inbounds [5 x i32], [5 x i32]* %2225, i64 0, i64 4
%2227 = load i32, i32* %2226
%2228 = sext i32 %2227 to i64
%2229 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2228
%2230 = getelementptr inbounds [4 x i32], [4 x i32]* %2229, i64 0, i64 3
%2231 = load i32, i32* %2230
%2232 = sext i32 %2231 to i64
%2233 = add nsw i64 %2222, %2232
store i64 %2233, i64* %15
%2234 = load i64, i64* %15
%2235 = icmp slt i64 %2234, -1000
br i1 %2235, label %2236, label %2237
2236: ; preds = %2218
store i64 -1000, i64* %15
br label %2242
2237: ; preds = %2218
%2238 = load i64, i64* %15
%2239 = icmp sgt i64 %2238, 1000
br i1 %2239, label %2240, label %2241
2240: ; preds = %2237
store i64 1000, i64* %15
br label %2241
2241: ; preds = %2240, %2237
br label %2242
2242: ; preds = %2241, %2236
%2243 = load i64, i64* %15
%2244 = trunc i64 %2243 to i32
%2245 = load i32, i32* %35
%2246 = sext i32 %2245 to i64
%2247 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2246
%2248 = getelementptr inbounds [5 x i32], [5 x i32]* %2247, i64 0, i64 4
%2249 = load i32, i32* %2248
%2250 = sext i32 %2249 to i64
%2251 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2250
%2252 = getelementptr inbounds [4 x i32], [4 x i32]* %2251, i64 0, i64 3
store i32 %2244, i32* %2252
br label %2293
2253: ; preds = %2211
%2254 = load i32, i32* %35
%2255 = sext i32 %2254 to i64
%2256 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2255
%2257 = getelementptr inbounds [5 x i32], [5 x i32]* %2256, i64 0, i64 1
%2258 = load i32, i32* %2257
%2259 = load i32, i32* %11
%2260 = sext i32 %2259 to i64
%2261 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2260
%2262 = getelementptr inbounds [4 x i32], [4 x i32]* %2261, i64 0, i64 1
store i32 %2258, i32* %2262
%2263 = load i32, i32* %35
%2264 = sext i32 %2263 to i64
%2265 = getelementptr inbounds [10 x [5 x i32]], [10 x [5 x i32]]* %8, i64 0, i64 %2264
%2266 = getelementptr inbounds [5 x i32], [5 x i32]* %2265, i64 0, i64 2
%2267 = load i32, i32* %2266
%2268 = load i32, i32* %11
%2269 = sext i32 %2268 to i64
%2270 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2269
%2271 = getelementptr inbounds [4 x i32], [4 x i32]* %2270, i64 0, i64 2
store i32 %2267, i32* %2271
%2272 = load i32, i32* %35
%2273 = sext i32 %2272 to i64
%2274 = getelementptr inbounds [10 x i64], [10 x i64]* %18, i64 0, i64 %2273
%2275 = load i64, i64* %2274
store i64 %2275, i64* %15
%2276 = load i64, i64* %15
%2277 = icmp slt i64 %2276, -1000
br i1 %2277, label %2278, label %2279
2278: ; preds = %2253
store i64 -1000, i64* %15
br label %2284
2279: ; preds = %2253
%2280 = load i64, i64* %15
%2281 = icmp sgt i64 %2280, 1000
br i1 %2281, label %2282, label %2283
2282: ; preds = %2279
store i64 1000, i64* %15
br label %2283
2283: ; preds = %2282, %2279
br label %2284
2284: ; preds = %2283, %2278
%2285 = load i64, i64* %15
%2286 = trunc i64 %2285 to i32
%2287 = load i32, i32* %11
%2288 = sext i32 %2287 to i64
%2289 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2288
%2290 = getelementptr inbounds [4 x i32], [4 x i32]* %2289, i64 0, i64 3
store i32 %2286, i32* %2290
%2291 = load i32, i32* %11
%2292 = add nsw i32 %2291, 1
store i32 %2292, i32* %11
br label %2293
2293: ; preds = %2284, %2242
br label %2294
2294: ; preds = %2293, %2204
br label %2295
2295: ; preds = %2294
%2296 = load i32, i32* %35
%2297 = add nsw i32 %2296, 1
store i32 %2297, i32* %35
br label %2201
2298: ; preds = %2201
%2299 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.21, i64 0, i64 0))
store i32 0, i32* %35
br label %2300
2300: ; preds = %2325, %2298
%2301 = load i32, i32* %35
%2302 = icmp slt i32 %2301, 10
br i1 %2302, label %2303, label %2328
2303: ; preds = %2300
%2304 = load i32, i32* %35
%2305 = sext i32 %2304 to i64
%2306 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2305
%2307 = getelementptr inbounds [4 x i32], [4 x i32]* %2306, i64 0, i64 0
%2308 = load i32, i32* %2307
%2309 = load i32, i32* %35
%2310 = sext i32 %2309 to i64
%2311 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2310
%2312 = getelementptr inbounds [4 x i32], [4 x i32]* %2311, i64 0, i64 1
%2313 = load i32, i32* %2312
%2314 = load i32, i32* %35
%2315 = sext i32 %2314 to i64
%2316 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2315
%2317 = getelementptr inbounds [4 x i32], [4 x i32]* %2316, i64 0, i64 2
%2318 = load i32, i32* %2317
%2319 = load i32, i32* %35
%2320 = sext i32 %2319 to i64
%2321 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2320
%2322 = getelementptr inbounds [4 x i32], [4 x i32]* %2321, i64 0, i64 3
%2323 = load i32, i32* %2322
%2324 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.22, i64 0, i64 0), i32 %2308, i32 %2313, i32 %2318, i32 %2323)
br label %2325
2325: ; preds = %2303
%2326 = load i32, i32* %35
%2327 = add nsw i32 %2326, 1
store i32 %2327, i32* %35
br label %2300
2328: ; preds = %2300
store i32 0, i32* %35
br label %2329
2329: ; preds = %2386, %2328
%2330 = load i32, i32* %35
%2331 = load i32, i32* %11
%2332 = icmp slt i32 %2330, %2331
br i1 %2332, label %2333, label %2389
2333: ; preds = %2329
%2334 = load i32, i32* %35
%2335 = sext i32 %2334 to i64
%2336 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2335
%2337 = getelementptr inbounds [4 x i32], [4 x i32]* %2336, i64 0, i64 0
%2338 = load i32, i32* %2337
%2339 = load i32, i32* %35
%2340 = sext i32 %2339 to i64
%2341 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2340
%2342 = getelementptr inbounds [4 x i32], [4 x i32]* %2341, i64 0, i64 0
store i32 %2338, i32* %2342
%2343 = load i32, i32* %35
%2344 = sext i32 %2343 to i64
%2345 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2344
%2346 = getelementptr inbounds [4 x i32], [4 x i32]* %2345, i64 0, i64 1
%2347 = load i32, i32* %2346
%2348 = load i32, i32* %35
%2349 = sext i32 %2348 to i64
%2350 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2349
%2351 = getelementptr inbounds [4 x i32], [4 x i32]* %2350, i64 0, i64 1
store i32 %2347, i32* %2351
%2352 = load i32, i32* %35
%2353 = sext i32 %2352 to i64
%2354 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2353
%2355 = getelementptr inbounds [4 x i32], [4 x i32]* %2354, i64 0, i64 2
%2356 = load i32, i32* %2355
%2357 = load i32, i32* %35
%2358 = sext i32 %2357 to i64
%2359 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2358
%2360 = getelementptr inbounds [4 x i32], [4 x i32]* %2359, i64 0, i64 2
store i32 %2356, i32* %2360
%2361 = load i32, i32* %35
%2362 = sext i32 %2361 to i64
%2363 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2362
%2364 = getelementptr inbounds [4 x i32], [4 x i32]* %2363, i64 0, i64 3
%2365 = load i32, i32* %2364
%2366 = load i32, i32* %35
%2367 = sext i32 %2366 to i64
%2368 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2367
%2369 = getelementptr inbounds [4 x i32], [4 x i32]* %2368, i64 0, i64 3
store i32 %2365, i32* %2369
%2370 = load i32, i32* %35
%2371 = sext i32 %2370 to i64
%2372 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2371
%2373 = getelementptr inbounds [4 x i32], [4 x i32]* %2372, i64 0, i64 0
store i32 0, i32* %2373
%2374 = load i32, i32* %35
%2375 = sext i32 %2374 to i64
%2376 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2375
%2377 = getelementptr inbounds [4 x i32], [4 x i32]* %2376, i64 0, i64 1
store i32 0, i32* %2377
%2378 = load i32, i32* %35
%2379 = sext i32 %2378 to i64
%2380 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2379
%2381 = getelementptr inbounds [4 x i32], [4 x i32]* %2380, i64 0, i64 2
store i32 0, i32* %2381
%2382 = load i32, i32* %35
%2383 = sext i32 %2382 to i64
%2384 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2383
%2385 = getelementptr inbounds [4 x i32], [4 x i32]* %2384, i64 0, i64 3
store i32 0, i32* %2385
br label %2386
2386: ; preds = %2333
%2387 = load i32, i32* %35
%2388 = add nsw i32 %2387, 1
store i32 %2388, i32* %35
br label %2329
2389: ; preds = %2329
%2390 = load i32, i32* %11
store i32 %2390, i32* %12
%2391 = load i32, i32* %12
%2392 = icmp sgt i32 %2391, 0
br i1 %2392, label %2393, label %2642
2393: ; preds = %2389
store i32 0, i32* %35
br label %2394
2394: ; preds = %2552, %2393
%2395 = load i32, i32* %35
%2396 = load i32, i32* %12
%2397 = sub nsw i32 %2396, 1
%2398 = icmp slt i32 %2395, %2397
br i1 %2398, label %2399, label %2555
2399: ; preds = %2394
%2400 = load i32, i32* %35
%2401 = sext i32 %2400 to i64
%2402 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2401
%2403 = getelementptr inbounds [4 x i32], [4 x i32]* %2402, i64 0, i64 0
%2404 = load i32, i32* %2403
%2405 = load i32, i32* %35
%2406 = sext i32 %2405 to i64
%2407 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2406
%2408 = getelementptr inbounds [4 x i32], [4 x i32]* %2407, i64 0, i64 1
%2409 = load i32, i32* %2408
%2410 = load i32, i32* %35
%2411 = sext i32 %2410 to i64
%2412 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2411
%2413 = getelementptr inbounds [4 x i32], [4 x i32]* %2412, i64 0, i64 2
%2414 = load i32, i32* %2413
%2415 = load i32, i32* %35
%2416 = sext i32 %2415 to i64
%2417 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2416
%2418 = getelementptr inbounds [4 x i32], [4 x i32]* %2417, i64 0, i64 3
%2419 = load i32, i32* %2418
%2420 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.23, i64 0, i64 0), i32 %2404, i32 %2409, i32 %2414, i32 %2419)
%2421 = load i32, i32* %35
%2422 = sext i32 %2421 to i64
%2423 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2422
%2424 = getelementptr inbounds [4 x i32], [4 x i32]* %2423, i64 0, i64 1
%2425 = load i32, i32* %2424
%2426 = icmp eq i32 %2425, 0
br i1 %2426, label %2427, label %2434
2427: ; preds = %2399
%2428 = load i32, i32* %35
%2429 = sext i32 %2428 to i64
%2430 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2429
%2431 = getelementptr inbounds [4 x i32], [4 x i32]* %2430, i64 0, i64 2
%2432 = load i32, i32* %2431
%2433 = icmp eq i32 %2432, 0
br i1 %2433, label %2551, label %2434
2434: ; preds = %2427, %2399
%2435 = load i32, i32* %35
%2436 = add nsw i32 %2435, 1
store i32 %2436, i32* %36
br label %2437
2437: ; preds = %2547, %2434
%2438 = load i32, i32* %36
%2439 = load i32, i32* %12
%2440 = icmp slt i32 %2438, %2439
br i1 %2440, label %2441, label %2550
2441: ; preds = %2437
%2442 = load i32, i32* %35
%2443 = sext i32 %2442 to i64
%2444 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2443
%2445 = getelementptr inbounds [4 x i32], [4 x i32]* %2444, i64 0, i64 1
%2446 = load i32, i32* %2445
%2447 = load i32, i32* %36
%2448 = sext i32 %2447 to i64
%2449 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2448
%2450 = getelementptr inbounds [4 x i32], [4 x i32]* %2449, i64 0, i64 1
%2451 = load i32, i32* %2450
%2452 = icmp eq i32 %2446, %2451
br i1 %2452, label %2453, label %2465
2453: ; preds = %2441
%2454 = load i32, i32* %35
%2455 = sext i32 %2454 to i64
%2456 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2455
%2457 = getelementptr inbounds [4 x i32], [4 x i32]* %2456, i64 0, i64 2
%2458 = load i32, i32* %2457
%2459 = load i32, i32* %36
%2460 = sext i32 %2459 to i64
%2461 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2460
%2462 = getelementptr inbounds [4 x i32], [4 x i32]* %2461, i64 0, i64 2
%2463 = load i32, i32* %2462
%2464 = icmp eq i32 %2458, %2463
br i1 %2464, label %2489, label %2465
2465: ; preds = %2453, %2441
%2466 = load i32, i32* %35
%2467 = sext i32 %2466 to i64
%2468 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2467
%2469 = getelementptr inbounds [4 x i32], [4 x i32]* %2468, i64 0, i64 1
%2470 = load i32, i32* %2469
%2471 = load i32, i32* %36
%2472 = sext i32 %2471 to i64
%2473 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2472
%2474 = getelementptr inbounds [4 x i32], [4 x i32]* %2473, i64 0, i64 2
%2475 = load i32, i32* %2474
%2476 = icmp eq i32 %2470, %2475
br i1 %2476, label %2477, label %2546
2477: ; preds = %2465
%2478 = load i32, i32* %35
%2479 = sext i32 %2478 to i64
%2480 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2479
%2481 = getelementptr inbounds [4 x i32], [4 x i32]* %2480, i64 0, i64 2
%2482 = load i32, i32* %2481
%2483 = load i32, i32* %36
%2484 = sext i32 %2483 to i64
%2485 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2484
%2486 = getelementptr inbounds [4 x i32], [4 x i32]* %2485, i64 0, i64 1
%2487 = load i32, i32* %2486
%2488 = icmp eq i32 %2482, %2487
br i1 %2488, label %2489, label %2546
2489: ; preds = %2477, %2453
%2490 = load i32, i32* %36
%2491 = sext i32 %2490 to i64
%2492 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2491
%2493 = getelementptr inbounds [4 x i32], [4 x i32]* %2492, i64 0, i64 3
%2494 = load i32, i32* %2493
%2495 = load i32, i32* %35
%2496 = sext i32 %2495 to i64
%2497 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2496
%2498 = getelementptr inbounds [4 x i32], [4 x i32]* %2497, i64 0, i64 3
%2499 = load i32, i32* %2498
%2500 = add nsw i32 %2494, %2499
%2501 = load i32, i32* %35
%2502 = sext i32 %2501 to i64
%2503 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2502
%2504 = getelementptr inbounds [4 x i32], [4 x i32]* %2503, i64 0, i64 3
store i32 %2500, i32* %2504
%2505 = load i32, i32* %35
%2506 = sext i32 %2505 to i64
%2507 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2506
%2508 = getelementptr inbounds [4 x i32], [4 x i32]* %2507, i64 0, i64 3
%2509 = load i32, i32* %2508
%2510 = icmp slt i32 %2509, -1000
br i1 %2510, label %2511, label %2516
2511: ; preds = %2489
%2512 = load i32, i32* %35
%2513 = sext i32 %2512 to i64
%2514 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2513
%2515 = getelementptr inbounds [4 x i32], [4 x i32]* %2514, i64 0, i64 3
store i32 -1000, i32* %2515
br label %2529
2516: ; preds = %2489
%2517 = load i32, i32* %35
%2518 = sext i32 %2517 to i64
%2519 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2518
%2520 = getelementptr inbounds [4 x i32], [4 x i32]* %2519, i64 0, i64 3
%2521 = load i32, i32* %2520
%2522 = icmp sgt i32 %2521, 1000
br i1 %2522, label %2523, label %2528
2523: ; preds = %2516
%2524 = load i32, i32* %35
%2525 = sext i32 %2524 to i64
%2526 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2525
%2527 = getelementptr inbounds [4 x i32], [4 x i32]* %2526, i64 0, i64 3
store i32 1000, i32* %2527
br label %2528
2528: ; preds = %2523, %2516
br label %2529
2529: ; preds = %2528, %2511
%2530 = load i32, i32* %36
%2531 = sext i32 %2530 to i64
%2532 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2531
%2533 = getelementptr inbounds [4 x i32], [4 x i32]* %2532, i64 0, i64 0
store i32 0, i32* %2533
%2534 = load i32, i32* %36
%2535 = sext i32 %2534 to i64
%2536 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2535
%2537 = getelementptr inbounds [4 x i32], [4 x i32]* %2536, i64 0, i64 1
store i32 0, i32* %2537
%2538 = load i32, i32* %36
%2539 = sext i32 %2538 to i64
%2540 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2539
%2541 = getelementptr inbounds [4 x i32], [4 x i32]* %2540, i64 0, i64 2
store i32 0, i32* %2541
%2542 = load i32, i32* %36
%2543 = sext i32 %2542 to i64
%2544 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2543
%2545 = getelementptr inbounds [4 x i32], [4 x i32]* %2544, i64 0, i64 3
store i32 0, i32* %2545
br label %2546
2546: ; preds = %2529, %2477, %2465
br label %2547
2547: ; preds = %2546
%2548 = load i32, i32* %36
%2549 = add nsw i32 %2548, 1
store i32 %2549, i32* %36
br label %2437
2550: ; preds = %2437
br label %2551
2551: ; preds = %2550, %2427
br label %2552
2552: ; preds = %2551
%2553 = load i32, i32* %35
%2554 = add nsw i32 %2553, 1
store i32 %2554, i32* %35
br label %2394
2555: ; preds = %2394
store i32 0, i32* %36
store i32 0, i32* %35
br label %2556
2556: ; preds = %2637, %2555
%2557 = load i32, i32* %35
%2558 = load i32, i32* %12
%2559 = icmp slt i32 %2557, %2558
br i1 %2559, label %2560, label %2640
2560: ; preds = %2556
%2561 = load i32, i32* %35
%2562 = sext i32 %2561 to i64
%2563 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2562
%2564 = getelementptr inbounds [4 x i32], [4 x i32]* %2563, i64 0, i64 0
%2565 = load i32, i32* %2564
%2566 = icmp eq i32 %2565, 0
br i1 %2566, label %2567, label %2581
2567: ; preds = %2560
%2568 = load i32, i32* %35
%2569 = sext i32 %2568 to i64
%2570 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2569
%2571 = getelementptr inbounds [4 x i32], [4 x i32]* %2570, i64 0, i64 1
%2572 = load i32, i32* %2571
%2573 = icmp eq i32 %2572, 0
br i1 %2573, label %2574, label %2581
2574: ; preds = %2567
%2575 = load i32, i32* %35
%2576 = sext i32 %2575 to i64
%2577 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2576
%2578 = getelementptr inbounds [4 x i32], [4 x i32]* %2577, i64 0, i64 2
%2579 = load i32, i32* %2578
%2580 = icmp eq i32 %2579, 0
br i1 %2580, label %2636, label %2581
2581: ; preds = %2574, %2567, %2560
%2582 = load i32, i32* %35
%2583 = sext i32 %2582 to i64
%2584 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2583
%2585 = getelementptr inbounds [4 x i32], [4 x i32]* %2584, i64 0, i64 0
%2586 = load i32, i32* %2585
%2587 = load i32, i32* %36
%2588 = sext i32 %2587 to i64
%2589 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2588
%2590 = getelementptr inbounds [4 x i32], [4 x i32]* %2589, i64 0, i64 0
store i32 %2586, i32* %2590
%2591 = load i32, i32* %35
%2592 = sext i32 %2591 to i64
%2593 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2592
%2594 = getelementptr inbounds [4 x i32], [4 x i32]* %2593, i64 0, i64 1
%2595 = load i32, i32* %2594
%2596 = load i32, i32* %36
%2597 = sext i32 %2596 to i64
%2598 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2597
%2599 = getelementptr inbounds [4 x i32], [4 x i32]* %2598, i64 0, i64 1
store i32 %2595, i32* %2599
%2600 = load i32, i32* %35
%2601 = sext i32 %2600 to i64
%2602 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2601
%2603 = getelementptr inbounds [4 x i32], [4 x i32]* %2602, i64 0, i64 2
%2604 = load i32, i32* %2603
%2605 = load i32, i32* %36
%2606 = sext i32 %2605 to i64
%2607 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2606
%2608 = getelementptr inbounds [4 x i32], [4 x i32]* %2607, i64 0, i64 2
store i32 %2604, i32* %2608
%2609 = load i32, i32* %35
%2610 = sext i32 %2609 to i64
%2611 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2610
%2612 = getelementptr inbounds [4 x i32], [4 x i32]* %2611, i64 0, i64 3
%2613 = load i32, i32* %2612
%2614 = load i32, i32* %36
%2615 = sext i32 %2614 to i64
%2616 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2615
%2617 = getelementptr inbounds [4 x i32], [4 x i32]* %2616, i64 0, i64 3
store i32 %2613, i32* %2617
%2618 = load i32, i32* %36
%2619 = add nsw i32 %2618, 1
store i32 %2619, i32* %36
%2620 = load i32, i32* %35
%2621 = sext i32 %2620 to i64
%2622 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2621
%2623 = getelementptr inbounds [4 x i32], [4 x i32]* %2622, i64 0, i64 0
store i32 0, i32* %2623
%2624 = load i32, i32* %35
%2625 = sext i32 %2624 to i64
%2626 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2625
%2627 = getelementptr inbounds [4 x i32], [4 x i32]* %2626, i64 0, i64 1
store i32 0, i32* %2627
%2628 = load i32, i32* %35
%2629 = sext i32 %2628 to i64
%2630 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2629
%2631 = getelementptr inbounds [4 x i32], [4 x i32]* %2630, i64 0, i64 2
store i32 0, i32* %2631
%2632 = load i32, i32* %35
%2633 = sext i32 %2632 to i64
%2634 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %10, i64 0, i64 %2633
%2635 = getelementptr inbounds [4 x i32], [4 x i32]* %2634, i64 0, i64 3
store i32 0, i32* %2635
br label %2636
2636: ; preds = %2581, %2574
br label %2637
2637: ; preds = %2636
%2638 = load i32, i32* %35
%2639 = add nsw i32 %2638, 1
store i32 %2639, i32* %35
br label %2556
2640: ; preds = %2556
%2641 = load i32, i32* %36
store i32 %2641, i32* %11
br label %2642
2642: ; preds = %2640, %2389
%2643 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.24, i64 0, i64 0))
store i32 0, i32* %35
br label %2644
2644: ; preds = %2669, %2642
%2645 = load i32, i32* %35
%2646 = icmp slt i32 %2645, 10
br i1 %2646, label %2647, label %2672
2647: ; preds = %2644
%2648 = load i32, i32* %35
%2649 = sext i32 %2648 to i64
%2650 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2649
%2651 = getelementptr inbounds [4 x i32], [4 x i32]* %2650, i64 0, i64 0
%2652 = load i32, i32* %2651
%2653 = load i32, i32* %35
%2654 = sext i32 %2653 to i64
%2655 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2654
%2656 = getelementptr inbounds [4 x i32], [4 x i32]* %2655, i64 0, i64 1
%2657 = load i32, i32* %2656
%2658 = load i32, i32* %35
%2659 = sext i32 %2658 to i64
%2660 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2659
%2661 = getelementptr inbounds [4 x i32], [4 x i32]* %2660, i64 0, i64 2
%2662 = load i32, i32* %2661
%2663 = load i32, i32* %35
%2664 = sext i32 %2663 to i64
%2665 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2664
%2666 = getelementptr inbounds [4 x i32], [4 x i32]* %2665, i64 0, i64 3
%2667 = load i32, i32* %2666
%2668 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.22, i64 0, i64 0), i32 %2652, i32 %2657, i32 %2662, i32 %2667)
br label %2669
2669: ; preds = %2647
%2670 = load i32, i32* %35
%2671 = add nsw i32 %2670, 1
store i32 %2671, i32* %35
br label %2644
2672: ; preds = %2644
store i32 30, i32* %36
store i32 0, i32* %35
br label %2673
2673: ; preds = %2689, %2672
%2674 = load i32, i32* %35
%2675 = load i32, i32* %11
%2676 = icmp slt i32 %2674, %2675
br i1 %2676, label %2677, label %2692
2677: ; preds = %2673
%2678 = load i32, i32* %36
%2679 = add nsw i32 %2678, -1
store i32 %2679, i32* %36
%2680 = load i32, i32* %36
%2681 = sext i32 %2680 to i64
%2682 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2681
%2683 = getelementptr inbounds [4 x i32], [4 x i32]* %2682, i64 0, i64 0
%2684 = load i32, i32* %2683
%2685 = load i32, i32* %35
%2686 = sext i32 %2685 to i64
%2687 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2686
%2688 = getelementptr inbounds [4 x i32], [4 x i32]* %2687, i64 0, i64 0
store i32 %2684, i32* %2688
br label %2689
2689: ; preds = %2677
%2690 = load i32, i32* %35
%2691 = add nsw i32 %2690, 1
store i32 %2691, i32* %35
br label %2673
2692: ; preds = %2673
store i32 29, i32* %37
br label %2693
2693: ; preds = %2743, %2692
%2694 = load i32, i32* %37
%2695 = load i32, i32* %11
%2696 = sub nsw i32 %2695, 1
%2697 = icmp sgt i32 %2694, %2696
br i1 %2697, label %2698, label %2746
2698: ; preds = %2693
%2699 = load i32, i32* %37
%2700 = load i32, i32* %11
%2701 = sub nsw i32 %2699, %2700
%2702 = sext i32 %2701 to i64
%2703 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2702
%2704 = getelementptr inbounds [4 x i32], [4 x i32]* %2703, i64 0, i64 0
%2705 = load i32, i32* %2704
%2706 = load i32, i32* %37
%2707 = sext i32 %2706 to i64
%2708 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2707
%2709 = getelementptr inbounds [4 x i32], [4 x i32]* %2708, i64 0, i64 0
store i32 %2705, i32* %2709
%2710 = load i32, i32* %37
%2711 = load i32, i32* %11
%2712 = sub nsw i32 %2710, %2711
%2713 = sext i32 %2712 to i64
%2714 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2713
%2715 = getelementptr inbounds [4 x i32], [4 x i32]* %2714, i64 0, i64 1
%2716 = load i32, i32* %2715
%2717 = load i32, i32* %37
%2718 = sext i32 %2717 to i64
%2719 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2718
%2720 = getelementptr inbounds [4 x i32], [4 x i32]* %2719, i64 0, i64 1
store i32 %2716, i32* %2720
%2721 = load i32, i32* %37
%2722 = load i32, i32* %11
%2723 = sub nsw i32 %2721, %2722
%2724 = sext i32 %2723 to i64
%2725 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2724
%2726 = getelementptr inbounds [4 x i32], [4 x i32]* %2725, i64 0, i64 2
%2727 = load i32, i32* %2726
%2728 = load i32, i32* %37
%2729 = sext i32 %2728 to i64
%2730 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2729
%2731 = getelementptr inbounds [4 x i32], [4 x i32]* %2730, i64 0, i64 2
store i32 %2727, i32* %2731
%2732 = load i32, i32* %37
%2733 = load i32, i32* %11
%2734 = sub nsw i32 %2732, %2733
%2735 = sext i32 %2734 to i64
%2736 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2735
%2737 = getelementptr inbounds [4 x i32], [4 x i32]* %2736, i64 0, i64 3
%2738 = load i32, i32* %2737
%2739 = load i32, i32* %37
%2740 = sext i32 %2739 to i64
%2741 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2740
%2742 = getelementptr inbounds [4 x i32], [4 x i32]* %2741, i64 0, i64 3
store i32 %2738, i32* %2742
br label %2743
2743: ; preds = %2698
%2744 = load i32, i32* %37
%2745 = add nsw i32 %2744, -1
store i32 %2745, i32* %37
br label %2693
2746: ; preds = %2693
store i32 0, i32* %37
br label %2747
2747: ; preds = %2788, %2746
%2748 = load i32, i32* %37
%2749 = load i32, i32* %11
%2750 = icmp slt i32 %2748, %2749
br i1 %2750, label %2751, label %2791
2751: ; preds = %2747
%2752 = load i32, i32* %37
%2753 = sext i32 %2752 to i64
%2754 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2753
%2755 = getelementptr inbounds [4 x i32], [4 x i32]* %2754, i64 0, i64 0
%2756 = load i32, i32* %2755
%2757 = load i32, i32* %37
%2758 = sext i32 %2757 to i64
%2759 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2758
%2760 = getelementptr inbounds [4 x i32], [4 x i32]* %2759, i64 0, i64 0
store i32 %2756, i32* %2760
%2761 = load i32, i32* %37
%2762 = sext i32 %2761 to i64
%2763 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2762
%2764 = getelementptr inbounds [4 x i32], [4 x i32]* %2763, i64 0, i64 1
%2765 = load i32, i32* %2764
%2766 = load i32, i32* %37
%2767 = sext i32 %2766 to i64
%2768 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2767
%2769 = getelementptr inbounds [4 x i32], [4 x i32]* %2768, i64 0, i64 1
store i32 %2765, i32* %2769
%2770 = load i32, i32* %37
%2771 = sext i32 %2770 to i64
%2772 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2771
%2773 = getelementptr inbounds [4 x i32], [4 x i32]* %2772, i64 0, i64 2
%2774 = load i32, i32* %2773
%2775 = load i32, i32* %37
%2776 = sext i32 %2775 to i64
%2777 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2776
%2778 = getelementptr inbounds [4 x i32], [4 x i32]* %2777, i64 0, i64 2
store i32 %2774, i32* %2778
%2779 = load i32, i32* %37
%2780 = sext i32 %2779 to i64
%2781 = getelementptr inbounds [10 x [4 x i32]], [10 x [4 x i32]]* %9, i64 0, i64 %2780
%2782 = getelementptr inbounds [4 x i32], [4 x i32]* %2781, i64 0, i64 3
%2783 = load i32, i32* %2782
%2784 = load i32, i32* %37
%2785 = sext i32 %2784 to i64
%2786 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2785
%2787 = getelementptr inbounds [4 x i32], [4 x i32]* %2786, i64 0, i64 3
store i32 %2783, i32* %2787
br label %2788
2788: ; preds = %2751
%2789 = load i32, i32* %37
%2790 = add nsw i32 %2789, 1
store i32 %2790, i32* %37
br label %2747
2791: ; preds = %2747
br label %2792
2792: ; preds = %2791
%2793 = load i32, i32* %40
%2794 = add nsw i32 %2793, 1
store i32 %2794, i32* %40
br label %227
2795: ; preds = %227
br label %2796
2796: ; preds = %2795
%2797 = load i32, i32* %38
%2798 = add nsw i32 %2797, 1
store i32 %2798, i32* %38
br label %155
2799: ; preds = %155
store i32 0, i32* %29
store i32 0, i32* %30
store i32 0, i32* %33
store i32 1001, i32* %31
store i32 9, i32* %37
br label %2800
2800: ; preds = %2815, %2799
%2801 = load i32, i32* %37
%2802 = icmp sge i32 %2801, 0
br i1 %2802, label %2803, label %2818
2803: ; preds = %2800
%2804 = load i32, i32* %37
%2805 = sext i32 %2804 to i64
%2806 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %2805
%2807 = load i32, i32* %2806
%2808 = icmp ne i32 %2807, 0
br i1 %2808, label %2809, label %2814
2809: ; preds = %2803
%2810 = load i32, i32* %37
%2811 = sext i32 %2810 to i64
%2812 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %2811
%2813 = load i32, i32* %2812
store i32 %2813, i32* %29
br label %2818
2814: ; preds = %2803
br label %2815
2815: ; preds = %2814
%2816 = load i32, i32* %37
%2817 = add nsw i32 %2816, -1
store i32 %2817, i32* %37
br label %2800
2818: ; preds = %2809, %2800
%2819 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.25, i64 0, i64 0))
store i32 0, i32* %35
br label %2820
2820: ; preds = %2829, %2818
%2821 = load i32, i32* %35
%2822 = icmp slt i32 %2821, 10
br i1 %2822, label %2823, label %2832
2823: ; preds = %2820
%2824 = load i32, i32* %35
%2825 = sext i32 %2824 to i64
%2826 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %2825
%2827 = load i32, i32* %2826
%2828 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.26, i64 0, i64 0), i32 %2827)
br label %2829
2829: ; preds = %2823
%2830 = load i32, i32* %35
%2831 = add nsw i32 %2830, 1
store i32 %2831, i32* %35
br label %2820
2832: ; preds = %2820
%2833 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0))
%2834 = load i32, i32* %29
%2835 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.27, i64 0, i64 0), i32 %2834)
%2836 = load i32, i32* %29
%2837 = icmp eq i32 %2836, 0
br i1 %2837, label %2838, label %2839
2838: ; preds = %2832
store i32 0, i32* %30
br label %2940
2839: ; preds = %2832
store i32 0, i32* %37
br label %2840
2840: ; preds = %2936, %2839
%2841 = load i32, i32* %37
%2842 = icmp slt i32 %2841, 10
br i1 %2842, label %2843, label %2939
2843: ; preds = %2840
store i32 0, i32* %35
br label %2844
2844: ; preds = %2884, %2843
%2845 = load i32, i32* %35
%2846 = icmp slt i32 %2845, 30
br i1 %2846, label %2847, label %2887
2847: ; preds = %2844
%2848 = load i32, i32* %35
%2849 = sext i32 %2848 to i64
%2850 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2849
%2851 = getelementptr inbounds [4 x i32], [4 x i32]* %2850, i64 0, i64 1
%2852 = load i32, i32* %2851
%2853 = load i32, i32* %29
%2854 = icmp eq i32 %2852, %2853
br i1 %2854, label %2855, label %2883
2855: ; preds = %2847
%2856 = load i32, i32* %35
%2857 = sext i32 %2856 to i64
%2858 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2857
%2859 = getelementptr inbounds [4 x i32], [4 x i32]* %2858, i64 0, i64 3
%2860 = load i32, i32* %2859
%2861 = load i32, i32* %31
%2862 = icmp sle i32 %2860, %2861
br i1 %2862, label %2863, label %2883
2863: ; preds = %2855
%2864 = load i32, i32* %35
%2865 = sext i32 %2864 to i64
%2866 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2865
%2867 = getelementptr inbounds [4 x i32], [4 x i32]* %2866, i64 0, i64 2
%2868 = load i32, i32* %2867
store i32 %2868, i32* %30
%2869 = load i32, i32* %35
%2870 = sext i32 %2869 to i64
%2871 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2870
%2872 = getelementptr inbounds [4 x i32], [4 x i32]* %2871, i64 0, i64 3
%2873 = load i32, i32* %2872
store i32 %2873, i32* %31
%2874 = load i32, i32* %29
%2875 = load i32, i32* %30
%2876 = load i32, i32* %35
%2877 = sext i32 %2876 to i64
%2878 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2877
%2879 = getelementptr inbounds [4 x i32], [4 x i32]* %2878, i64 0, i64 0
%2880 = load i32, i32* %2879
%2881 = load i32, i32* %31
%2882 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([64 x i8], [64 x i8]* @.str.28, i64 0, i64 0), i32 %2874, i32 %2875, i32 %2880, i32 %2881)
br label %2883
2883: ; preds = %2863, %2855, %2847
br label %2884
2884: ; preds = %2883
%2885 = load i32, i32* %35
%2886 = add nsw i32 %2885, 1
store i32 %2886, i32* %35
br label %2844
2887: ; preds = %2844
%2888 = load i32, i32* %29
%2889 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.29, i64 0, i64 0), i32 %2888)
%2890 = load i32, i32* %30
%2891 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.30, i64 0, i64 0), i32 %2890)
%2892 = load i32, i32* %30
%2893 = icmp eq i32 %2892, 0
br i1 %2893, label %2894, label %2935
2894: ; preds = %2887
%2895 = load i32, i32* %29
%2896 = icmp slt i32 %2895, 100
br i1 %2896, label %2897, label %2898
2897: ; preds = %2894
br label %2939
2898: ; preds = %2894
store i32 0, i32* %36
br label %2899
2899: ; preds = %2930, %2898
%2900 = load i32, i32* %36
%2901 = icmp slt i32 %2900, 30
br i1 %2901, label %2902, label %2933
2902: ; preds = %2899
%2903 = load i32, i32* %36
%2904 = sext i32 %2903 to i64
%2905 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2904
%2906 = getelementptr inbounds [4 x i32], [4 x i32]* %2905, i64 0, i64 0
%2907 = load i32, i32* %2906
%2908 = load i32, i32* %29
%2909 = icmp eq i32 %2907, %2908
br i1 %2909, label %2910, label %2929
2910: ; preds = %2902
%2911 = load i32, i32* %36
%2912 = sext i32 %2911 to i64
%2913 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2912
%2914 = getelementptr inbounds [4 x i32], [4 x i32]* %2913, i64 0, i64 2
%2915 = load i32, i32* %2914
%2916 = icmp ne i32 %2915, 0
br i1 %2916, label %2917, label %2923
2917: ; preds = %2910
%2918 = load i32, i32* %36
%2919 = sext i32 %2918 to i64
%2920 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2919
%2921 = getelementptr inbounds [4 x i32], [4 x i32]* %2920, i64 0, i64 2
%2922 = load i32, i32* %2921
store i32 %2922, i32* %29
br label %2933
2923: ; preds = %2910
%2924 = load i32, i32* %36
%2925 = sext i32 %2924 to i64
%2926 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2925
%2927 = getelementptr inbounds [4 x i32], [4 x i32]* %2926, i64 0, i64 1
%2928 = load i32, i32* %2927
store i32 %2928, i32* %29
br label %2933
2929: ; preds = %2902
br label %2930
2930: ; preds = %2929
%2931 = load i32, i32* %36
%2932 = add nsw i32 %2931, 1
store i32 %2932, i32* %36
br label %2899
2933: ; preds = %2923, %2917, %2899
br label %2934
2934: ; preds = %2933
br label %2935
2935: ; preds = %2934, %2887
br label %2936
2936: ; preds = %2935
%2937 = load i32, i32* %37
%2938 = add nsw i32 %2937, 1
store i32 %2938, i32* %37
br label %2840
2939: ; preds = %2897, %2840
br label %2940
2940: ; preds = %2939, %2838
%2941 = load i32, i32* %30
%2942 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.31, i64 0, i64 0), i32 %2941)
store i32 0, i32* %35
br label %2943
2943: ; preds = %2950, %2940
%2944 = load i32, i32* %35
%2945 = icmp slt i32 %2944, 10
br i1 %2945, label %2946, label %2953
2946: ; preds = %2943
%2947 = load i32, i32* %35
%2948 = sext i32 %2947 to i64
%2949 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %2948
store i32 0, i32* %2949
br label %2950
2950: ; preds = %2946
%2951 = load i32, i32* %35
%2952 = add nsw i32 %2951, 1
store i32 %2952, i32* %35
br label %2943
2953: ; preds = %2943
%2954 = load i32, i32* %30
%2955 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 0
store i32 %2954, i32* %2955
store i32 0, i32* %35
br label %2956
2956: ; preds = %3070, %2973, %2953
%2957 = load i32, i32* %35
%2958 = sext i32 %2957 to i64
%2959 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %2958
%2960 = load i32, i32* %2959
%2961 = icmp slt i32 %2960, 100
br i1 %2961, label %2968, label %2962
2962: ; preds = %2956
%2963 = load i32, i32* %35
%2964 = sext i32 %2963 to i64
%2965 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %2964
%2966 = load i32, i32* %2965
%2967 = icmp eq i32 %2966, 0
br i1 %2967, label %2968, label %2975
2968: ; preds = %2962, %2956
%2969 = load i32, i32* %35
%2970 = add nsw i32 %2969, 1
store i32 %2970, i32* %35
%2971 = load i32, i32* %35
%2972 = icmp slt i32 %2971, 10
br i1 %2972, label %2973, label %2974
2973: ; preds = %2968
br label %2956
2974: ; preds = %2968
br label %3071
2975: ; preds = %2962
store i32 9, i32* %36
br label %2976
2976: ; preds = %2989, %2975
%2977 = load i32, i32* %36
%2978 = load i32, i32* %35
%2979 = icmp sgt i32 %2977, %2978
br i1 %2979, label %2980, label %2992
2980: ; preds = %2976
%2981 = load i32, i32* %36
%2982 = sub nsw i32 %2981, 1
%2983 = sext i32 %2982 to i64
%2984 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %2983
%2985 = load i32, i32* %2984
%2986 = load i32, i32* %36
%2987 = sext i32 %2986 to i64
%2988 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %2987
store i32 %2985, i32* %2988
br label %2989
2989: ; preds = %2980
%2990 = load i32, i32* %36
%2991 = add nsw i32 %2990, -1
store i32 %2991, i32* %36
br label %2976
2992: ; preds = %2976
store i32 0, i32* %32
store i32 0, i32* %37
br label %2993
2993: ; preds = %3057, %2992
%2994 = load i32, i32* %37
%2995 = icmp slt i32 %2994, 30
br i1 %2995, label %2996, label %3060
2996: ; preds = %2993
%2997 = load i32, i32* %37
%2998 = sext i32 %2997 to i64
%2999 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %2998
%3000 = getelementptr inbounds [4 x i32], [4 x i32]* %2999, i64 0, i64 0
%3001 = load i32, i32* %3000
%3002 = load i32, i32* %35
%3003 = sext i32 %3002 to i64
%3004 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %3003
%3005 = load i32, i32* %3004
%3006 = icmp eq i32 %3001, %3005
br i1 %3006, label %3007, label %3056
3007: ; preds = %2996
%3008 = load i32, i32* %37
%3009 = sext i32 %3008 to i64
%3010 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3009
%3011 = getelementptr inbounds [4 x i32], [4 x i32]* %3010, i64 0, i64 0
%3012 = load i32, i32* %3011
%3013 = load i32, i32* %37
%3014 = sext i32 %3013 to i64
%3015 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3014
%3016 = getelementptr inbounds [4 x i32], [4 x i32]* %3015, i64 0, i64 1
%3017 = load i32, i32* %3016
%3018 = icmp eq i32 %3012, %3017
br i1 %3018, label %3031, label %3019
3019: ; preds = %3007
%3020 = load i32, i32* %37
%3021 = sext i32 %3020 to i64
%3022 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3021
%3023 = getelementptr inbounds [4 x i32], [4 x i32]* %3022, i64 0, i64 0
%3024 = load i32, i32* %3023
%3025 = load i32, i32* %37
%3026 = sext i32 %3025 to i64
%3027 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3026
%3028 = getelementptr inbounds [4 x i32], [4 x i32]* %3027, i64 0, i64 2
%3029 = load i32, i32* %3028
%3030 = icmp eq i32 %3024, %3029
br i1 %3030, label %3031, label %3037
3031: ; preds = %3019, %3007
%3032 = load i32, i32* %35
%3033 = sext i32 %3032 to i64
%3034 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %3033
store i32 0, i32* %3034
%3035 = load i32, i32* %35
%3036 = add nsw i32 %3035, 1
store i32 %3036, i32* %35
br label %3055
3037: ; preds = %3019
store i32 1, i32* %32
%3038 = load i32, i32* %37
%3039 = sext i32 %3038 to i64
%3040 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3039
%3041 = getelementptr inbounds [4 x i32], [4 x i32]* %3040, i64 0, i64 1
%3042 = load i32, i32* %3041
%3043 = load i32, i32* %35
%3044 = sext i32 %3043 to i64
%3045 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %3044
store i32 %3042, i32* %3045
%3046 = load i32, i32* %37
%3047 = sext i32 %3046 to i64
%3048 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3047
%3049 = getelementptr inbounds [4 x i32], [4 x i32]* %3048, i64 0, i64 2
%3050 = load i32, i32* %3049
%3051 = load i32, i32* %35
%3052 = add nsw i32 %3051, 1
%3053 = sext i32 %3052 to i64
%3054 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %3053
store i32 %3050, i32* %3054
br label %3060
3055: ; preds = %3031
br label %3056
3056: ; preds = %3055, %2996
br label %3057
3057: ; preds = %3056
%3058 = load i32, i32* %37
%3059 = add nsw i32 %3058, 1
store i32 %3059, i32* %37
br label %2993
3060: ; preds = %3037, %2993
%3061 = load i32, i32* %32
%3062 = icmp eq i32 %3061, 0
br i1 %3062, label %3063, label %3069
3063: ; preds = %3060
%3064 = load i32, i32* %35
%3065 = sext i32 %3064 to i64
%3066 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %3065
store i32 0, i32* %3066
%3067 = load i32, i32* %35
%3068 = add nsw i32 %3067, 1
store i32 %3068, i32* %35
br label %3069
3069: ; preds = %3063, %3060
br label %3070
3070: ; preds = %3069
br label %2956
3071: ; preds = %2974
%3072 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.32, i64 0, i64 0))
store i32 0, i32* %35
br label %3073
3073: ; preds = %3082, %3071
%3074 = load i32, i32* %35
%3075 = icmp slt i32 %3074, 10
br i1 %3075, label %3076, label %3085
3076: ; preds = %3073
%3077 = load i32, i32* %35
%3078 = sext i32 %3077 to i64
%3079 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %3078
%3080 = load i32, i32* %3079
%3081 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.26, i64 0, i64 0), i32 %3080)
br label %3082
3082: ; preds = %3076
%3083 = load i32, i32* %35
%3084 = add nsw i32 %3083, 1
store i32 %3084, i32* %35
br label %3073
3085: ; preds = %3073
%3086 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0))
%3087 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.33, i64 0, i64 0))
store i32 0, i32* %35
br label %3088
3088: ; preds = %3113, %3085
%3089 = load i32, i32* %35
%3090 = icmp slt i32 %3089, 30
br i1 %3090, label %3091, label %3116
3091: ; preds = %3088
%3092 = load i32, i32* %35
%3093 = sext i32 %3092 to i64
%3094 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3093
%3095 = getelementptr inbounds [4 x i32], [4 x i32]* %3094, i64 0, i64 0
%3096 = load i32, i32* %3095
%3097 = load i32, i32* %35
%3098 = sext i32 %3097 to i64
%3099 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3098
%3100 = getelementptr inbounds [4 x i32], [4 x i32]* %3099, i64 0, i64 1
%3101 = load i32, i32* %3100
%3102 = load i32, i32* %35
%3103 = sext i32 %3102 to i64
%3104 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3103
%3105 = getelementptr inbounds [4 x i32], [4 x i32]* %3104, i64 0, i64 2
%3106 = load i32, i32* %3105
%3107 = load i32, i32* %35
%3108 = sext i32 %3107 to i64
%3109 = getelementptr inbounds [30 x [4 x i32]], [30 x [4 x i32]]* %6, i64 0, i64 %3108
%3110 = getelementptr inbounds [4 x i32], [4 x i32]* %3109, i64 0, i64 3
%3111 = load i32, i32* %3110
%3112 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.22, i64 0, i64 0), i32 %3096, i32 %3101, i32 %3106, i32 %3111)
br label %3113
3113: ; preds = %3091
%3114 = load i32, i32* %35
%3115 = add nsw i32 %3114, 1
store i32 %3115, i32* %35
br label %3088
3116: ; preds = %3088
store i32 0, i32* %35
br label %3117
3117: ; preds = %3128, %3116
%3118 = load i32, i32* %35
%3119 = icmp slt i32 %3118, 10
br i1 %3119, label %3120, label %3131
3120: ; preds = %3117
%3121 = load i32, i32* %35
%3122 = sext i32 %3121 to i64
%3123 = getelementptr inbounds [10 x i32], [10 x i32]* %4, i64 0, i64 %3122
%3124 = load i32, i32* %3123
%3125 = load i32, i32* %35
%3126 = sext i32 %3125 to i64
%3127 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %3126
store i32 %3124, i32* %3127
br label %3128
3128: ; preds = %3120
%3129 = load i32, i32* %35
%3130 = add nsw i32 %3129, 1
store i32 %3130, i32* %35
br label %3117
3131: ; preds = %3117
store i32 0, i32* %35
br label %3132
3132: ; preds = %3141, %3131
%3133 = load i32, i32* %35
%3134 = icmp slt i32 %3133, 10
br i1 %3134, label %3135, label %3144
3135: ; preds = %3132
%3136 = load i32, i32* %35
%3137 = sext i32 %3136 to i64
%3138 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %3137
%3139 = load i32, i32* %3138
%3140 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.26, i64 0, i64 0), i32 %3139)
br label %3141
3141: ; preds = %3135
%3142 = load i32, i32* %35
%3143 = add nsw i32 %3142, 1
store i32 %3143, i32* %35
br label %3132
3144: ; preds = %3132
%3145 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0))
%3146 = load i32, i32* %30
%3147 = icmp ne i32 %3146, 0
br i1 %3147, label %3148, label %3206
3148: ; preds = %3144
store i32 9, i32* %35
br label %3149
3149: ; preds = %3162, %3148
%3150 = load i32, i32* %35
%3151 = icmp sge i32 %3150, 0
br i1 %3151, label %3152, label %3165
3152: ; preds = %3149
%3153 = load i32, i32* %35
%3154 = sext i32 %3153 to i64
%3155 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %3154
%3156 = load i32, i32* %3155
%3157 = icmp ne i32 %3156, 0
br i1 %3157, label %3158, label %3161
3158: ; preds = %3152
%3159 = load i32, i32* %35
%3160 = add nsw i32 %3159, 1
store i32 %3160, i32* %33
br label %3165
3161: ; preds = %3152
br label %3162
3162: ; preds = %3161
%3163 = load i32, i32* %35
%3164 = add nsw i32 %3163, -1
store i32 %3164, i32* %35
br label %3149
3165: ; preds = %3158, %3149
%3166 = load i32, i32* %33
%3167 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.34, i64 0, i64 0), i32 %3166)
store i32 0, i32* %35
br label %3168
3168: ; preds = %3183, %3165
%3169 = load i32, i32* %35
%3170 = load i32, i32* %33
%3171 = sub nsw i32 10, %3170
%3172 = icmp slt i32 %3169, %3171
br i1 %3172, label %3173, label %3186
3173: ; preds = %3168
%3174 = load i32, i32* %35
%3175 = load i32, i32* %33
%3176 = add nsw i32 %3174, %3175
%3177 = sext i32 %3176 to i64
%3178 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %3177
%3179 = load i32, i32* %3178
%3180 = load i32, i32* %35
%3181 = sext i32 %3180 to i64
%3182 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %3181
store i32 %3179, i32* %3182
br label %3183
3183: ; preds = %3173
%3184 = load i32, i32* %35
%3185 = add nsw i32 %3184, 1
store i32 %3185, i32* %35
br label %3168
3186: ; preds = %3168
store i32 0, i32* %36
%3187 = load i32, i32* %33
%3188 = sub nsw i32 10, %3187
store i32 %3188, i32* %35
br label %3189
3189: ; preds = %3202, %3186
%3190 = load i32, i32* %35
%3191 = icmp slt i32 %3190, 10
br i1 %3191, label %3192, label %3205
3192: ; preds = %3189
%3193 = load i32, i32* %36
%3194 = sext i32 %3193 to i64
%3195 = getelementptr inbounds [10 x i32], [10 x i32]* %5, i64 0, i64 %3194
%3196 = load i32, i32* %3195
%3197 = load i32, i32* %35
%3198 = sext i32 %3197 to i64
%3199 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %3198
store i32 %3196, i32* %3199
%3200 = load i32, i32* %36
%3201 = add nsw i32 %3200, 1
store i32 %3201, i32* %36
br label %3202
3202: ; preds = %3192
%3203 = load i32, i32* %35
%3204 = add nsw i32 %3203, 1
store i32 %3204, i32* %35
br label %3189
3205: ; preds = %3189
br label %3206
3206: ; preds = %3205, %3144
%3207 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.35, i64 0, i64 0))
store i32 0, i32* %35
br label %3208
3208: ; preds = %3217, %3206
%3209 = load i32, i32* %35
%3210 = icmp slt i32 %3209, 10
br i1 %3210, label %3211, label %3220
3211: ; preds = %3208
%3212 = load i32, i32* %35
%3213 = sext i32 %3212 to i64
%3214 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %3213
%3215 = load i32, i32* %3214
%3216 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.26, i64 0, i64 0), i32 %3215)
br label %3217
3217: ; preds = %3211
%3218 = load i32, i32* %35
%3219 = add nsw i32 %3218, 1
store i32 %3219, i32* %35
br label %3208
3220: ; preds = %3208
%3221 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0))
store i32 0, i32* %35
br label %3222
3222: ; preds = %3233, %3220
%3223 = load i32, i32* %35
%3224 = icmp slt i32 %3223, 10
br i1 %3224, label %3225, label %3236
3225: ; preds = %3222
%3226 = load i32, i32* %35
%3227 = sext i32 %3226 to i64
%3228 = getelementptr inbounds [10 x i32], [10 x i32]* %2, i64 0, i64 %3227
%3229 = load i32, i32* %3228
%3230 = load i32, i32* %35
%3231 = sext i32 %3230 to i64
%3232 = getelementptr inbounds [10 x i32], [10 x i32]* %4, i64 0, i64 %3231
store i32 %3229, i32* %3232
br label %3233
3233: ; preds = %3225
%3234 = load i32, i32* %35
%3235 = add nsw i32 %3234, 1
store i32 %3235, i32* %35
br label %3222
3236: ; preds = %3222
br label %3237
3237: ; preds = %3236
%3238 = load i32, i32* %34
%3239 = add nsw i32 %3238, 1
store i32 %3239, i32* %34
br label %151
3240: ; preds = %151
%3241 = load i32, i32* %1
ret i32 %3241
}

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