#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */
typedef int /*<<< orphan*/ FILE;

/* Variables and functions */
double acos(short);
double atan(double);
double cos(double);
int /*<<< orphan*/ fclose(int /*<<< orphan*/ *);
scalar_t__ feof(int /*<<< orphan*/ *);
int /*<<< orphan*/ *fopen(char *, char *);
int /*<<< orphan*/ fprintf(int /*<<< orphan*/ *, char *, ...);
short fscanf(int /*<<< orphan*/ *, char *, ...);
scalar_t__ malloc(int);
int /*<<< orphan*/ printf(char *, ...);
int /*<<< orphan*/ scanf(char *, char *);
double sin(double);
short sqrt(double);
int /*<<< orphan*/ strcat(char *, char *);
char *strchr(char *, char);
int /*<<< orphan*/ strcpy(char *, char *);
int /*<<< orphan*/ strncpy(char *, char *, short);
char *strpbrk(char *, char *);
int main(int argc, char *argv[]) {
  FILE *in, *out, *settings;
  char *filebase = (char *)malloc(50);
  char *infile = (char *)malloc(50);
  char *outfile = (char *)malloc(50);
  char *fn = (char *)malloc(200);
  short ct;
  short ulx, uly, urx, ury, llx, lly, lrx, lry, tmp;
  short OverlayX, OverlayY;
  double Angle, UsScale, tranlrmm, ortranrmm, ortranlmm;
  short XOffset, YOffset;
  double AngleOffset;
  short i, nread, len;
  double X, Y, tmpX, tmpY;
  char *token = (char *)malloc(200);
  char *item = (char *)malloc(200);
  char *tabdelimited = (char *)malloc(1);
  short *x = (short *)malloc(sizeof(short) * 32);
  short *y = (short *)malloc(sizeof(short) * 32);
  short *pt = (short *)malloc(sizeof(short) * 8);
  short *ax = (short *)malloc(sizeof(short) * 10);
  short *ay = (short *)malloc(sizeof(short) * 10);
  settings = fopen("settings.txt", "r");
  if (settings == NULL) {
    printf("Couldn\'t open settings.txt\n");
    return -1;
  }
  if (fscanf(settings, "OverlayX = %hd\n", &OverlayX) == 0) {
    printf("Error reading value of: OverlayX\n");
    return -1;
  }
  if (fscanf(settings, "OverlayY = %hd\n", &OverlayY) == 0) {
    printf("Error reading value of: OverlayY\n");
    return -1;
  }
  if (fscanf(settings, "Angle = %lf\n", &Angle) == 0) {
    printf("Error reading value of: Angle\n");
    return -1;
  }
  if (fscanf(settings, "UsScale = %lf\n", &UsScale) == 0) {
    printf("Error reading value of: UsScale\n");
    return -1;
  }
  if (fscanf(settings, "distance_btwn_lower_dots = %lf\n", &tranlrmm) == 0) {
    printf("Error reading value of: distance_btwn_lower_dots\n");
    return -1;
  }
  if (fscanf(settings, "tip_of_transducer_to_lower_right_dot = %lf\n",
             &ortranrmm) == 0) {
    printf("Error reading value of: tip_of_transducer_to_lower_right_dot\n");
    return -1;
  }
  if (fscanf(settings, "tip_of_transducer_to_lower_left_dot = %lf\n",
             &ortranlmm) == 0) {
    printf("Error reading value of: tip_of_transducer_to_lower_left_dot\n");
    return -1;
  }
  fclose(settings);
  printf("Using these settings:\n");
  printf("OverlayX = %hd\n", OverlayX);
  printf("OverlayY = %hd\n", OverlayY);
  printf("Angle = %lf\n", Angle);
  printf("UsScale = %lf\n", UsScale);
  printf("distance_btwn_lower_dots = %lf\n", tranlrmm);
  printf("tip_of_transducer_to_lower_right_dot = %lf\n", ortranrmm);
  printf("tip_of_transducer_to_lower_left_dot = %lf\n", ortranlmm);
  printf("\n");
  if (argc < 2) {
    printf("Enter the filename (without \'.txt\'): ");
    scanf("%s", filebase);
  } else {
    strcpy(filebase, argv[1]);
  }
  if (argc < 3) {
    printf("Would you like tab-delimited format instead of R/SSANOVA format? "
           "(y/n)\n");
    scanf("%s", tabdelimited);
  } else {
    *tabdelimited = *argv[2];
  }
  strcpy(infile, filebase);
  strcat(infile, ".txt");
  strcpy(outfile, filebase);
  strcat(outfile, "_output.txt");
  in = fopen(infile, "r");
  if (in == NULL) {
    printf("Unable to open file: %s\n", infile);
    return -1;
  }
  out = fopen(outfile, "w");
  if (out == NULL) {
    printf("Unable to open file: %s\n", outfile);
    return -1;
  }
  fscanf(
      in,
      "Filename Raw.R1.X Raw.R1.Y Raw.R2.X Raw.R2.Y Raw.R3.X Raw.R3.Y Raw.R4.X "
      "Raw.R4.Y Raw.R5.X Raw.R5.Y Raw.R6.X Raw.R6.Y Raw.R7.X Raw.R7.Y Raw.R8.X "
      "Raw.R8.Y Raw.R9.X Raw.R9.Y Raw.R10.X Raw.R10.Y Raw.R11.X Raw.R11.Y "
      "Raw.R12.X Raw.R12.Y Raw.R13.X Raw.R13.Y Raw.R14.X Raw.R14.Y Raw.R15.X "
      "Raw.R15.Y Raw.R16.X Raw.R16.Y Raw.R17.X Raw.R17.Y Raw.R18.X Raw.R18.Y "
      "Raw.R19.X Raw.R19.Y Raw.R20.X Raw.R20.Y Raw.R21.X Raw.R21.Y Raw.R22.X "
      "Raw.R22.Y Raw.R23.X Raw.R23.Y Raw.R24.X Raw.R24.Y Raw.R25.X Raw.R25.Y "
      "Raw.R26.X Raw.R26.Y Raw.R27.X Raw.R27.Y Raw.R28.X Raw.R28.Y Raw.R29.X "
      "Raw.R29.Y Raw.R30.X Raw.R30.Y Raw.R31.X Raw.R31.Y Raw.R32.X Raw.R32.Y "
      "UL.x UL.y UR.x UR.y LL.x LL.y LR.x LR.y Aux1.x Aux1.y Aux2.x Aux2.y "
      "Aux3.x Aux3.y Aux4.x Aux4.y Aux5.x Aux5.y Aux6.x Aux6.y Aux7.x Aux7.y "
      "Aux8.x Aux8.y Aux9.x Aux9.y Aux10.x Aux10.y");
  double orheaddist, orheadangle, vidoriginx, vidoriginy, vidscale,
      imagecenterx = 360.5, imagecentery = 267.0, tranangle, usoriginx = 390,
      usoriginy = 416, ortrandist, ortranangle, headangle, htangle, headx,
      heady, centerheaddist, centerheadangle, rotatedheadx, rotatedheady;
  if (*tabdelimited == 'y') {
    fprintf(out, "Filename\t");
    for (i = 0; i < 32; i++) {
      fprintf(out, "x.%i\ty.%i\t", i + 1, i + 1);
    }
    for (i = 0; i < 10; i++) {
      fprintf(out, "aux.x.%i\taux.y.%i\t", i + 1, i + 1);
    }
    fprintf(out, "\n");
  } else {
    fprintf(out, "word\ttoken\tX\tY\n");
  }
  while (0 == feof(in)) {
    nread = fscanf(
        in,
        "%s\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
        "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
        "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
        "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
        "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
        "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
        "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\n",
        fn, x, y, x + 1, y + 1, x + 2, y + 2, x + 3, y + 3, x + 4, y + 4, x + 5,
        y + 5, x + 6, y + 6, x + 7, y + 7, x + 8, y + 8, x + 9, y + 9, x + 10,
        y + 10, x + 11, y + 11, x + 12, y + 12, x + 13, y + 13, x + 14, y + 14,
        x + 15, y + 15, x + 16, y + 16, x + 17, y + 17, x + 18, y + 18, x + 19,
        y + 19, x + 20, y + 20, x + 21, y + 21, x + 22, y + 22, x + 23, y + 23,
        x + 24, y + 24, x + 25, y + 25, x + 26, y + 26, x + 27, y + 27, x + 28,
        y + 28, x + 29, y + 29, x + 30, y + 30, x + 31, y + 31, pt, pt + 1,
        pt + 2, pt + 3, pt + 4, pt + 5, pt + 6, pt + 7, ax, ay, ax + 1, ay + 1,
        ax + 2, ay + 2, ax + 3, ay + 3, ax + 4, ay + 4, ax + 5, ay + 5, ax + 6,
        ay + 6, ax + 7, ay + 7, ax + 8, ay + 8, ax + 9, ay + 9);
    if (nread != 93) {
      printf("\nFor the entry \"%s\", only %d items were read, whereas I was "
             "expecting 93. I\'m going to skip that line and finish the rest "
             "of the file.\n\n",
             fn, nread);
      continue;
    }
    ulx = *(pt + 0);
    uly = *(pt + 1) * ((double)533 / (double)480);
    urx = *(pt + 2);
    ury = *(pt + 3) * ((double)533 / (double)480);
    llx = *(pt + 4);
    lly = *(pt + 5) * ((double)533 / (double)480);
    lrx = *(pt + 6);
    lry = *(pt + 7) * ((double)533 / (double)480);
    vidscale =
        tranlrmm / sqrt((lrx - llx) * (lrx - llx) + (lly - lry) * (lly - lry));
    ortrandist = ortranlmm / vidscale;
    ortranangle = atan(
        -1.0f * ortranrmm *
        sin(acos((tranlrmm * tranlrmm + ortranrmm * ortranrmm -
                  ortranlmm * ortranlmm) /
                 (2.0f * tranlrmm * ortranrmm))) /
        (tranlrmm -
         ortranrmm * cos(acos((tranlrmm * tranlrmm + ortranrmm * ortranrmm -
                               ortranlmm * ortranlmm) /
                              (2 * tranlrmm * ortranrmm)))));
    tranangle = atan((double)(lly - lry) / (double)(lrx - llx));
    headangle = atan((double)(uly - ury) / (double)(urx - ulx));
    htangle = headangle - tranangle;
    AngleOffset =
        htangle - Angle * (-3.1415926535897932384626433832795 / 180.0f);
    vidoriginx = llx - (ortrandist * cos(ortranangle - tranangle));
    vidoriginy = lly - (ortrandist * sin(ortranangle - tranangle));
    orheaddist = vidscale / UsScale *
                 sqrt((ulx - vidoriginx) * (ulx - vidoriginx) +
                      (uly - vidoriginy) * (uly - vidoriginy));
    orheadangle = acos((ulx - vidoriginx) /
                       (sqrt((ulx - vidoriginx) * (ulx - vidoriginx) +
                             (vidoriginy - uly) * (vidoriginy - uly)))) -
                  tranangle;
    headx = usoriginx + orheaddist * cos(orheadangle);
    heady = usoriginy - orheaddist * sin(orheadangle);
    centerheaddist = sqrt((headx - imagecenterx) * (headx - imagecenterx) +
                          (imagecentery - heady) * (imagecentery - heady));
    centerheadangle = atan((headx - imagecenterx) / (imagecentery - heady));
    rotatedheadx =
        imagecenterx + (centerheaddist * sin(centerheadangle + AngleOffset));
    rotatedheady =
        imagecentery - (centerheaddist * cos(centerheadangle + AngleOffset));
    XOffset = (short)(OverlayX - rotatedheadx);
    YOffset = (short)(OverlayY - rotatedheady);
    AngleOffset *= -1;
    for (i = 0; i < 32; i++) {
      X = (double)*(x + i);
      Y = (double)*(y + i);
      if (X != -1) {
        Y *= (double)533 / (double)480;
        X -= 360;
        Y -= 266.5;
        tmpX = X * cos(AngleOffset) + Y * sin(AngleOffset);
        tmpY = Y * cos(AngleOffset) - X * sin(AngleOffset);
        X = tmpX + 360;
        Y = tmpY + 266.5;
        X += XOffset;
        Y += YOffset;
        *(x + i) = (int)X;
        *(y + i) = (int)Y;
      } else {
        *(x + i) = -1;
        *(y + i) = -1;
      }
    }
    AngleOffset =
        headangle - Angle * (-3.1415926535897932384626433832795 / 180.0f);
    AngleOffset *= -1;
    XOffset = OverlayX - ulx;
    YOffset = OverlayY - uly;
    for (i = 0; i < 10; i++) {
      X = (double)*(ax + i);
      Y = (double)*(ay + i);
      if (X != -1) {
        Y *= (double)533 / (double)480;
        X -= 360;
        Y -= 266.5;
        tmpX = X * cos(AngleOffset) + Y * sin(AngleOffset);
        tmpY = Y * cos(AngleOffset) - X * sin(AngleOffset);
        X = tmpX + 360;
        Y = tmpY + 266.5;
        X += XOffset;
        Y += YOffset;
        *(ax + i) = (int)X;
        *(ay + i) = (int)Y;
      } else {
        *(ax + i) = -1;
        *(ay + i) = -1;
      }
    }
    if (*tabdelimited == 'y') {
      fprintf(
          out,
          "%s\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
          "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
          "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
          "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
          "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
          "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%"
          "hd\t%hd\t%hd\t%hd\t%hd\t%hd\t%hd\n",
          fn, *(x), *(y), *(x + 1), *(y + 1), *(x + 2), *(y + 2), *(x + 3),
          *(y + 3), *(x + 4), *(y + 4), *(x + 5), *(y + 5), *(x + 6), *(y + 6),
          *(x + 7), *(y + 7), *(x + 8), *(y + 8), *(x + 9), *(y + 9), *(x + 10),
          *(y + 10), *(x + 11), *(y + 11), *(x + 12), *(y + 12), *(x + 13),
          *(y + 13), *(x + 14), *(y + 14), *(x + 15), *(y + 15), *(x + 16),
          *(y + 16), *(x + 17), *(y + 17), *(x + 18), *(y + 18), *(x + 19),
          *(y + 19), *(x + 20), *(y + 20), *(x + 21), *(y + 21), *(x + 22),
          *(y + 22), *(x + 23), *(y + 23), *(x + 24), *(y + 24), *(x + 25),
          *(y + 25), *(x + 26), *(y + 26), *(x + 27), *(y + 27), *(x + 28),
          *(y + 28), *(x + 29), *(y + 29), *(x + 30), *(y + 30), *(x + 31),
          *(y + 31), *(ax), *(ay), *(ax + 1), *(ay + 1), *(ax + 2), *(ay + 2),
          *(ax + 3), *(ay + 3), *(ax + 4), *(ay + 4), *(ax + 5), *(ay + 5),
          *(ax + 6), *(ay + 6), *(ax + 7), *(ay + 7), *(ax + 8), *(ay + 8),
          *(ax + 9), *(ay + 9));
    } else {
      len = strpbrk(fn, "1234567890") - fn;
      strncpy(token, fn, len);
      *(token + len) = '\0';
      len = strchr(fn, '_') - strpbrk(fn, "1234567890");
      strncpy(item, strpbrk(fn, "1234567890"), len);
      *(item + len) = '\0';
      for (i = 0; i < 32; i++) {
        if (*(x + i) != -1) {
          fprintf(out, "%s\t%s\t%hd\t%hd\n", token, item, *(x + i), *(y + i));
        }
      }
    }
  }
  fclose(in);
  fclose(out);
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x928,%rsp
movl   $0x0,-0x2c(%rbp)
mov    %edi,-0x30(%rbp)
mov    %rsi,-0x38(%rbp)
mov    $0x32,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x58(%rbp)
mov    $0x32,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x60(%rbp)
mov    $0x32,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x68(%rbp)
mov    $0xc8,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x70(%rbp)
mov    $0xc8,%edi
call   10e0 <malloc@plt>
mov    %rax,-0xf0(%rbp)
mov    $0xc8,%edi
call   10e0 <malloc@plt>
mov    %rax,-0xf8(%rbp)
mov    $0x1,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x100(%rbp)
mov    $0x40,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x108(%rbp)
mov    $0x40,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x110(%rbp)
mov    $0x10,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x118(%rbp)
mov    $0x14,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x120(%rbp)
mov    $0x14,%edi
call   10e0 <malloc@plt>
mov    %rax,-0x128(%rbp)
lea    0x2d57(%rip),%rdi
lea    0x2d5d(%rip),%rsi
call   1120 <fopen@plt>
mov    %rax,-0x50(%rbp)
cmpq   $0x0,-0x50(%rbp)
jne    133e <main+0x11e>
lea    0x2d44(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x50(%rbp),%rdi
lea    0x2d42(%rip),%rsi
lea    -0x86(%rbp),%rdx
mov    $0x0,%al
call   1090 <fscanf@plt>
cwtl
cmp    $0x0,%eax
jne    137b <main+0x15b>
lea    0x2d33(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x50(%rbp),%rdi
lea    0x2d37(%rip),%rsi
lea    -0x88(%rbp),%rdx
mov    $0x0,%al
call   1090 <fscanf@plt>
cwtl
cmp    $0x0,%eax
jne    13b8 <main+0x198>
lea    0x2d28(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x50(%rbp),%rdi
lea    0x2d2c(%rip),%rsi
lea    -0x90(%rbp),%rdx
mov    $0x0,%al
call   1090 <fscanf@plt>
cwtl
cmp    $0x0,%eax
jne    13f5 <main+0x1d5>
lea    0x2d1a(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x50(%rbp),%rdi
lea    0x2d1b(%rip),%rsi
lea    -0x98(%rbp),%rdx
mov    $0x0,%al
call   1090 <fscanf@plt>
cwtl
cmp    $0x0,%eax
jne    1432 <main+0x212>
lea    0x2d0b(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x50(%rbp),%rdi
lea    0x2d0e(%rip),%rsi
lea    -0xa0(%rbp),%rdx
mov    $0x0,%al
call   1090 <fscanf@plt>
cwtl
cmp    $0x0,%eax
jne    146f <main+0x24f>
lea    0x2d0f(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x50(%rbp),%rdi
lea    0x2d23(%rip),%rsi
lea    -0xa8(%rbp),%rdx
mov    $0x0,%al
call   1090 <fscanf@plt>
cwtl
cmp    $0x0,%eax
jne    14ac <main+0x28c>
lea    0x2d30(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x50(%rbp),%rdi
lea    0x2d50(%rip),%rsi
lea    -0xb0(%rbp),%rdx
mov    $0x0,%al
call   1090 <fscanf@plt>
cwtl
cmp    $0x0,%eax
jne    14e9 <main+0x2c9>
lea    0x2d5c(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x50(%rbp),%rdi
call   1050 <fclose@plt>
lea    0x2d76(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movswl -0x86(%rbp),%esi
lea    0x2b7d(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movswl -0x88(%rbp),%esi
lea    0x2b9a(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movsd  -0x90(%rbp),%xmm0
ff
lea    0x2bb6(%rip),%rdi
mov    $0x1,%al
call   1070 <printf@plt>
movsd  -0x98(%rbp),%xmm0
ff
lea    0x2bcc(%rip),%rdi
mov    $0x1,%al
call   1070 <printf@plt>
movsd  -0xa0(%rbp),%xmm0
ff
lea    0x2be6(%rip),%rdi
mov    $0x1,%al
call   1070 <printf@plt>
movsd  -0xa8(%rbp),%xmm0
ff
lea    0x2c22(%rip),%rdi
mov    $0x1,%al
call   1070 <printf@plt>
movsd  -0xb0(%rbp),%xmm0
ff
lea    0x2c76(%rip),%rdi
mov    $0x1,%al
call   1070 <printf@plt>
lea    0x32df(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
cmpl   $0x2,-0x30(%rbp)
jge    15d3 <main+0x3b3>
lea    0x2ccf(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
mov    -0x58(%rbp),%rsi
lea    0x2ce3(%rip),%rdi
call   1100 <scanf@plt>
jmp    15e4 <main+0x3c4>
mov    -0x58(%rbp),%rdi
mov    -0x38(%rbp),%rax
mov    0x8(%rax),%rsi
call   1040 <strcpy@plt>
cmpl   $0x3,-0x30(%rbp)
jge    1614 <main+0x3f4>
lea    0x2cba(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
mov    -0x100(%rbp),%rsi
lea    0x2ca2(%rip),%rdi
call   1100 <scanf@plt>
jmp    1627 <main+0x407>
mov    -0x38(%rbp),%rax
mov    0x10(%rax),%rax
mov    (%rax),%cl
mov    -0x100(%rbp),%rax
mov    %cl,(%rax)
mov    -0x60(%rbp),%rdi
mov    -0x58(%rbp),%rsi
call   1040 <strcpy@plt>
mov    -0x60(%rbp),%rdi
lea    0x2a29(%rip),%rsi
call   1140 <strcat@plt>
mov    -0x68(%rbp),%rdi
mov    -0x58(%rbp),%rsi
call   1040 <strcpy@plt>
mov    -0x68(%rbp),%rdi
lea    0x2c9b(%rip),%rsi
call   1140 <strcat@plt>
mov    -0x60(%rbp),%rdi
lea    0x2a01(%rip),%rsi
call   1120 <fopen@plt>
mov    %rax,-0x40(%rbp)
cmpq   $0x0,-0x40(%rbp)
jne    169e <main+0x47e>
mov    -0x60(%rbp),%rsi
lea    0x2c78(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x68(%rbp),%rdi
lea    0x2c73(%rip),%rsi
call   1120 <fopen@plt>
mov    %rax,-0x48(%rbp)
cmpq   $0x0,-0x48(%rbp)
jne    16db <main+0x4bb>
mov    -0x68(%rbp),%rsi
lea    0x2c3b(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
movl   $0xffffffff,-0x2c(%rbp)
jmp    3acd <main+0x28ad>
mov    -0x40(%rbp),%rdi
lea    0x2c38(%rip),%rsi
mov    $0x0,%al
call   1090 <fscanf@plt>
movsd  0x2923(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x290b(%rip),%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
movsd  0x28f3(%rip),%xmm0
movsd  %xmm0,-0x170(%rbp)
ff
movsd  0x28db(%rip),%xmm0
movsd  %xmm0,-0x178(%rbp)
ff
mov    -0x100(%rbp),%rax
movsbl (%rax),%eax
cmp    $0x79,%eax
jne    1815 <main+0x5f5>
mov    -0x48(%rbp),%rdi
lea    0x2f00(%rip),%rsi
mov    $0x0,%al
call   10a0 <fprintf@plt>
movw   $0x0,-0xc2(%rbp)
movswl -0xc2(%rbp),%eax
cmp    $0x20,%eax
jge    17a8 <main+0x588>
mov    -0x48(%rbp),%rdi
movswl -0xc2(%rbp),%edx
add    $0x1,%edx
movswl -0xc2(%rbp),%ecx
add    $0x1,%ecx
lea    0x2ecb(%rip),%rsi
mov    $0x0,%al
call   10a0 <fprintf@plt>
mov    -0xc2(%rbp),%ax
add    $0x1,%ax
mov    %ax,-0xc2(%rbp)
jmp    175b <main+0x53b>
movw   $0x0,-0xc2(%rbp)
movswl -0xc2(%rbp),%eax
cmp    $0xa,%eax
jge    17fe <main+0x5de>
mov    -0x48(%rbp),%rdi
movswl -0xc2(%rbp),%edx
add    $0x1,%edx
movswl -0xc2(%rbp),%ecx
add    $0x1,%ecx
lea    0x2e80(%rip),%rsi
mov    $0x0,%al
call   10a0 <fprintf@plt>
mov    -0xc2(%rbp),%ax
add    $0x1,%ax
mov    %ax,-0xc2(%rbp)
jmp    17b1 <main+0x591>
mov    -0x48(%rbp),%rdi
lea    0x3075(%rip),%rsi
mov    $0x0,%al
call   10a0 <fprintf@plt>
jmp    1827 <main+0x607>
mov    -0x48(%rbp),%rdi
lea    0x2e53(%rip),%rsi
mov    $0x0,%al
call   10a0 <fprintf@plt>
jmp    182c <main+0x60c>
mov    -0x40(%rbp),%rdi
call   10b0 <feof@plt>
mov    %rax,%rcx
xor    %eax,%eax
cmp    %rcx,%rax
jne    3abb <main+0x289b>
mov    -0x40(%rbp),%rdi
mov    -0x70(%rbp),%rdx
mov    -0x108(%rbp),%rcx
mov    -0x110(%rbp),%r8
mov    -0x108(%rbp),%r9
add    $0x2,%r9
mov    -0x110(%rbp),%rax
add    $0x2,%rax
mov    -0x108(%rbp),%rsi
add    $0x4,%rsi
mov    %rsi,-0x450(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x4,%rsi
mov    %rsi,-0x448(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x6,%rsi
mov    %rsi,-0x440(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x6,%rsi
mov    %rsi,-0x438(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x8,%rsi
mov    %rsi,-0x430(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x8,%rsi
mov    %rsi,-0x428(%rbp)
mov    -0x108(%rbp),%rsi
add    $0xa,%rsi
mov    %rsi,-0x420(%rbp)
mov    -0x110(%rbp),%rsi
add    $0xa,%rsi
mov    %rsi,-0x418(%rbp)
mov    -0x108(%rbp),%rsi
add    $0xc,%rsi
mov    %rsi,-0x410(%rbp)
mov    -0x110(%rbp),%rsi
add    $0xc,%rsi
mov    %rsi,-0x408(%rbp)
mov    -0x108(%rbp),%rsi
add    $0xe,%rsi
mov    %rsi,-0x400(%rbp)
mov    -0x110(%rbp),%rsi
add    $0xe,%rsi
mov    %rsi,-0x3f8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x10,%rsi
mov    %rsi,-0x3f0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x10,%rsi
mov    %rsi,-0x3e8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x12,%rsi
mov    %rsi,-0x3e0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x12,%rsi
mov    %rsi,-0x3d8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x14,%rsi
mov    %rsi,-0x3d0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x14,%rsi
mov    %rsi,-0x3c8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x16,%rsi
mov    %rsi,-0x3c0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x16,%rsi
mov    %rsi,-0x3b8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x18,%rsi
mov    %rsi,-0x3b0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x18,%rsi
mov    %rsi,-0x3a8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x1a,%rsi
mov    %rsi,-0x3a0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x1a,%rsi
mov    %rsi,-0x398(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x1c,%rsi
mov    %rsi,-0x390(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x1c,%rsi
mov    %rsi,-0x388(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x1e,%rsi
mov    %rsi,-0x380(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x1e,%rsi
mov    %rsi,-0x378(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x20,%rsi
mov    %rsi,-0x370(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x20,%rsi
mov    %rsi,-0x368(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x22,%rsi
mov    %rsi,-0x360(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x22,%rsi
mov    %rsi,-0x358(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x24,%rsi
mov    %rsi,-0x350(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x24,%rsi
mov    %rsi,-0x348(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x26,%rsi
mov    %rsi,-0x340(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x26,%rsi
mov    %rsi,-0x338(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x28,%rsi
mov    %rsi,-0x330(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x28,%rsi
mov    %rsi,-0x328(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x2a,%rsi
mov    %rsi,-0x320(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x2a,%rsi
mov    %rsi,-0x318(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x2c,%rsi
mov    %rsi,-0x310(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x2c,%rsi
mov    %rsi,-0x308(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x2e,%rsi
mov    %rsi,-0x300(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x2e,%rsi
mov    %rsi,-0x2f8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x30,%rsi
mov    %rsi,-0x2f0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x30,%rsi
mov    %rsi,-0x2e8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x32,%rsi
mov    %rsi,-0x2e0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x32,%rsi
mov    %rsi,-0x2d8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x34,%rsi
mov    %rsi,-0x2d0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x34,%rsi
mov    %rsi,-0x2c8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x36,%rsi
mov    %rsi,-0x2c0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x36,%rsi
mov    %rsi,-0x2b8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x38,%rsi
mov    %rsi,-0x2b0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x38,%rsi
mov    %rsi,-0x2a8(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x3a,%rsi
mov    %rsi,-0x2a0(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x3a,%rsi
mov    %rsi,-0x298(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x3c,%rsi
mov    %rsi,-0x290(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x3c,%rsi
mov    %rsi,-0x288(%rbp)
mov    -0x108(%rbp),%rsi
add    $0x3e,%rsi
mov    %rsi,-0x280(%rbp)
mov    -0x110(%rbp),%rsi
add    $0x3e,%rsi
mov    %rsi,-0x278(%rbp)
mov    -0x118(%rbp),%rsi
mov    %rsi,-0x270(%rbp)
mov    -0x118(%rbp),%rsi
add    $0x2,%rsi
mov    %rsi,-0x268(%rbp)
mov    -0x118(%rbp),%rsi
add    $0x4,%rsi
mov    %rsi,-0x260(%rbp)
mov    -0x118(%rbp),%rsi
add    $0x6,%rsi
mov    %rsi,-0x258(%rbp)
mov    -0x118(%rbp),%rsi
add    $0x8,%rsi
mov    %rsi,-0x250(%rbp)
mov    -0x118(%rbp),%rsi
add    $0xa,%rsi
mov    %rsi,-0x248(%rbp)
mov    -0x118(%rbp),%rsi
add    $0xc,%rsi
mov    %rsi,-0x240(%rbp)
mov    -0x118(%rbp),%rsi
add    $0xe,%rsi
mov    %rsi,-0x238(%rbp)
mov    -0x120(%rbp),%rsi
mov    %rsi,-0x230(%rbp)
mov    -0x128(%rbp),%rsi
mov    %rsi,-0x228(%rbp)
mov    -0x120(%rbp),%rsi
add    $0x2,%rsi
mov    %rsi,-0x220(%rbp)
mov    -0x128(%rbp),%rsi
add    $0x2,%rsi
mov    %rsi,-0x218(%rbp)
mov    -0x120(%rbp),%rsi
add    $0x4,%rsi
mov    %rsi,-0x210(%rbp)
mov    -0x128(%rbp),%rsi
add    $0x4,%rsi
mov    %rsi,-0x208(%rbp)
mov    -0x120(%rbp),%rsi
add    $0x6,%rsi
mov    %rsi,-0x200(%rbp)
mov    -0x128(%rbp),%rsi
add    $0x6,%rsi
mov    %rsi,-0x1f8(%rbp)
mov    -0x120(%rbp),%rsi
add    $0x8,%rsi
mov    %rsi,-0x1f0(%rbp)
mov    -0x128(%rbp),%rsi
add    $0x8,%rsi
mov    %rsi,-0x1e8(%rbp)
mov    -0x120(%rbp),%rsi
add    $0xa,%rsi
mov    %rsi,-0x1e0(%rbp)
mov    -0x128(%rbp),%rsi
add    $0xa,%rsi
mov    %rsi,-0x1d8(%rbp)
mov    -0x120(%rbp),%r13
add    $0xc,%r13
mov    -0x128(%rbp),%r12
add    $0xc,%r12
mov    -0x120(%rbp),%r15
add    $0xe,%r15
mov    -0x128(%rbp),%r14
add    $0xe,%r14
mov    -0x120(%rbp),%rbx
add    $0x10,%rbx
mov    -0x128(%rbp),%r11
add    $0x10,%r11
mov    -0x120(%rbp),%r10
add    $0x12,%r10
mov    -0x128(%rbp),%rsi
add    $0x12,%rsi
mov    %rsi,-0x1d0(%rbp)
lea    0x281a(%rip),%rsi
mov    %rax,(%rsp)
mov    -0x450(%rbp),%rax
mov    %rax,0x8(%rsp)
mov    -0x448(%rbp),%rax
mov    %rax,0x10(%rsp)
mov    -0x440(%rbp),%rax
mov    %rax,0x18(%rsp)
mov    -0x438(%rbp),%rax
mov    %rax,0x20(%rsp)
mov    -0x430(%rbp),%rax
mov    %rax,0x28(%rsp)
mov    -0x428(%rbp),%rax
mov    %rax,0x30(%rsp)
mov    -0x420(%rbp),%rax
mov    %rax,0x38(%rsp)
mov    -0x418(%rbp),%rax
mov    %rax,0x40(%rsp)
mov    -0x410(%rbp),%rax
mov    %rax,0x48(%rsp)
mov    -0x408(%rbp),%rax
mov    %rax,0x50(%rsp)
mov    -0x400(%rbp),%rax
mov    %rax,0x58(%rsp)
mov    -0x3f8(%rbp),%rax
mov    %rax,0x60(%rsp)
mov    -0x3f0(%rbp),%rax
mov    %rax,0x68(%rsp)
mov    -0x3e8(%rbp),%rax
mov    %rax,0x70(%rsp)
mov    -0x3e0(%rbp),%rax
mov    %rax,0x78(%rsp)
mov    -0x3d8(%rbp),%rax
mov    %rax,0x80(%rsp)
mov    -0x3d0(%rbp),%rax
mov    %rax,0x88(%rsp)
mov    -0x3c8(%rbp),%rax
mov    %rax,0x90(%rsp)
mov    -0x3c0(%rbp),%rax
mov    %rax,0x98(%rsp)
mov    -0x3b8(%rbp),%rax
mov    %rax,0xa0(%rsp)
mov    -0x3b0(%rbp),%rax
mov    %rax,0xa8(%rsp)
mov    -0x3a8(%rbp),%rax
mov    %rax,0xb0(%rsp)
mov    -0x3a0(%rbp),%rax
mov    %rax,0xb8(%rsp)
mov    -0x398(%rbp),%rax
mov    %rax,0xc0(%rsp)
mov    -0x390(%rbp),%rax
mov    %rax,0xc8(%rsp)
mov    -0x388(%rbp),%rax
mov    %rax,0xd0(%rsp)
mov    -0x380(%rbp),%rax
mov    %rax,0xd8(%rsp)
mov    -0x378(%rbp),%rax
mov    %rax,0xe0(%rsp)
mov    -0x370(%rbp),%rax
mov    %rax,0xe8(%rsp)
mov    -0x368(%rbp),%rax
mov    %rax,0xf0(%rsp)
mov    -0x360(%rbp),%rax
mov    %rax,0xf8(%rsp)
mov    -0x358(%rbp),%rax
mov    %rax,0x100(%rsp)
mov    -0x350(%rbp),%rax
mov    %rax,0x108(%rsp)
mov    -0x348(%rbp),%rax
mov    %rax,0x110(%rsp)
mov    -0x340(%rbp),%rax
mov    %rax,0x118(%rsp)
mov    -0x338(%rbp),%rax
mov    %rax,0x120(%rsp)
mov    -0x330(%rbp),%rax
mov    %rax,0x128(%rsp)
mov    -0x328(%rbp),%rax
mov    %rax,0x130(%rsp)
mov    -0x320(%rbp),%rax
mov    %rax,0x138(%rsp)
mov    -0x318(%rbp),%rax
mov    %rax,0x140(%rsp)
mov    -0x310(%rbp),%rax
mov    %rax,0x148(%rsp)
mov    -0x308(%rbp),%rax
mov    %rax,0x150(%rsp)
mov    -0x300(%rbp),%rax
mov    %rax,0x158(%rsp)
mov    -0x2f8(%rbp),%rax
mov    %rax,0x160(%rsp)
mov    -0x2f0(%rbp),%rax
mov    %rax,0x168(%rsp)
mov    -0x2e8(%rbp),%rax
mov    %rax,0x170(%rsp)
mov    -0x2e0(%rbp),%rax
mov    %rax,0x178(%rsp)
mov    -0x2d8(%rbp),%rax
mov    %rax,0x180(%rsp)
mov    -0x2d0(%rbp),%rax
mov    %rax,0x188(%rsp)
mov    -0x2c8(%rbp),%rax
mov    %rax,0x190(%rsp)
mov    -0x2c0(%rbp),%rax
mov    %rax,0x198(%rsp)
mov    -0x2b8(%rbp),%rax
mov    %rax,0x1a0(%rsp)
mov    -0x2b0(%rbp),%rax
mov    %rax,0x1a8(%rsp)
mov    -0x2a8(%rbp),%rax
mov    %rax,0x1b0(%rsp)
mov    -0x2a0(%rbp),%rax
mov    %rax,0x1b8(%rsp)
mov    -0x298(%rbp),%rax
mov    %rax,0x1c0(%rsp)
mov    -0x290(%rbp),%rax
mov    %rax,0x1c8(%rsp)
mov    -0x288(%rbp),%rax
mov    %rax,0x1d0(%rsp)
mov    -0x280(%rbp),%rax
mov    %rax,0x1d8(%rsp)
mov    -0x278(%rbp),%rax
mov    %rax,0x1e0(%rsp)
mov    -0x270(%rbp),%rax
mov    %rax,0x1e8(%rsp)
mov    -0x268(%rbp),%rax
mov    %rax,0x1f0(%rsp)
mov    -0x260(%rbp),%rax
mov    %rax,0x1f8(%rsp)
mov    -0x258(%rbp),%rax
mov    %rax,0x200(%rsp)
mov    -0x250(%rbp),%rax
mov    %rax,0x208(%rsp)
mov    -0x248(%rbp),%rax
mov    %rax,0x210(%rsp)
mov    -0x240(%rbp),%rax
mov    %rax,0x218(%rsp)
mov    -0x238(%rbp),%rax
mov    %rax,0x220(%rsp)
mov    -0x230(%rbp),%rax
mov    %rax,0x228(%rsp)
mov    -0x228(%rbp),%rax
mov    %rax,0x230(%rsp)
mov    -0x220(%rbp),%rax
mov    %rax,0x238(%rsp)
mov    -0x218(%rbp),%rax
mov    %rax,0x240(%rsp)
mov    -0x210(%rbp),%rax
mov    %rax,0x248(%rsp)
mov    -0x208(%rbp),%rax
mov    %rax,0x250(%rsp)
mov    -0x200(%rbp),%rax
mov    %rax,0x258(%rsp)
mov    -0x1f8(%rbp),%rax
mov    %rax,0x260(%rsp)
mov    -0x1f0(%rbp),%rax
mov    %rax,0x268(%rsp)
mov    -0x1e8(%rbp),%rax
mov    %rax,0x270(%rsp)
mov    -0x1e0(%rbp),%rax
mov    %rax,0x278(%rsp)
mov    -0x1d8(%rbp),%rax
mov    %rax,0x280(%rsp)
mov    -0x1d0(%rbp),%rax
mov    %r13,0x288(%rsp)
mov    %r12,0x290(%rsp)
mov    %r15,0x298(%rsp)
mov    %r14,0x2a0(%rsp)
mov    %rbx,0x2a8(%rsp)
mov    %r11,0x2b0(%rsp)
mov    %r10,0x2b8(%rsp)
mov    %rax,0x2c0(%rsp)
mov    $0x0,%al
call   1090 <fscanf@plt>
mov    %ax,-0xc4(%rbp)
movswl -0xc4(%rbp),%eax
cmp    $0x5d,%eax
je     2373 <main+0x1153>
mov    -0x70(%rbp),%rsi
movswl -0xc4(%rbp),%edx
lea    0x2490(%rip),%rdi
mov    $0x0,%al
call   1070 <printf@plt>
jmp    182c <main+0x60c>
mov    -0x118(%rbp),%rax
mov    (%rax),%ax
mov    %ax,-0x74(%rbp)
mov    -0x118(%rbp),%rax
movswl 0x2(%rax),%eax
cvtsi2sd %eax,%xmm0
movsd  0x1c90(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
mov    %ax,-0x76(%rbp)
mov    -0x118(%rbp),%rax
mov    0x4(%rax),%ax
mov    %ax,-0x78(%rbp)
mov    -0x118(%rbp),%rax
movswl 0x6(%rax),%eax
cvtsi2sd %eax,%xmm0
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
mov    %ax,-0x7a(%rbp)
mov    -0x118(%rbp),%rax
mov    0x8(%rax),%ax
mov    %ax,-0x7c(%rbp)
mov    -0x118(%rbp),%rax
movswl 0xa(%rax),%eax
cvtsi2sd %eax,%xmm0
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
mov    %ax,-0x7e(%rbp)
mov    -0x118(%rbp),%rax
mov    0xc(%rax),%ax
mov    %ax,-0x80(%rbp)
mov    -0x118(%rbp),%rax
movswl 0xe(%rax),%eax
cvtsi2sd %eax,%xmm0
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
mov    %ax,-0x82(%rbp)
movsd  -0xa0(%rbp),%xmm0
ff
movsd  %xmm0,-0x4e8(%rbp)
ff
movswl -0x80(%rbp),%eax
movswl -0x7c(%rbp),%ecx
sub    %ecx,%eax
imul   %eax,%eax
movswl -0x7e(%rbp),%ecx
movswl -0x82(%rbp),%edx
sub    %edx,%ecx
imul   %ecx,%ecx
add    %ecx,%eax
cvtsi2sd %eax,%xmm0
call   1130 <sqrt@plt>
movsd  -0x4e8(%rbp),%xmm0
ff
cwtl
cvtsi2sd %eax,%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x150(%rbp)
ff
movsd  -0xb0(%rbp),%xmm0
ff
movsd  -0x150(%rbp),%xmm1
ff
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x180(%rbp)
ff
movsd  -0xa8(%rbp),%xmm2
ff
movaps %xmm2,%xmm0
movaps 0x1bac(%rip),%xmm1
pxor   %xmm1,%xmm0
movsd  %xmm0,-0x4e0(%rbp)
ff
movsd  -0xa0(%rbp),%xmm1
ff
movaps %xmm2,%xmm3
mulsd  %xmm3,%xmm3
movaps %xmm1,%xmm0
mulsd  %xmm0,%xmm0
addsd  %xmm3,%xmm0
movsd  -0xb0(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm3
subsd  %xmm3,%xmm0
addsd  %xmm1,%xmm1
mulsd  %xmm2,%xmm1
divsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
movswl %ax,%edi
call   1080 <acos@plt>
call   10c0 <sin@plt>
movaps %xmm0,%xmm1
movsd  -0x4e0(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x4c8(%rbp)
ff
movsd  -0xa0(%rbp),%xmm1
ff
movsd  %xmm1,-0x4d0(%rbp)
ff
movsd  -0xa8(%rbp),%xmm2
ff
movsd  %xmm2,-0x4d8(%rbp)
ff
movaps %xmm2,%xmm3
mulsd  %xmm3,%xmm3
movaps %xmm1,%xmm0
mulsd  %xmm0,%xmm0
addsd  %xmm3,%xmm0
movsd  -0xb0(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm3
subsd  %xmm3,%xmm0
addsd  %xmm1,%xmm1
mulsd  %xmm2,%xmm1
divsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
movswl %ax,%edi
call   1080 <acos@plt>
call   1110 <cos@plt>
movsd  -0x4d8(%rbp),%xmm2
ff
movsd  -0x4d0(%rbp),%xmm1
ff
movaps %xmm0,%xmm3
movsd  -0x4c8(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm2
subsd  %xmm2,%xmm1
divsd  %xmm1,%xmm0
call   10d0 <atan@plt>
movsd  %xmm0,-0x188(%rbp)
ff
movswl -0x7e(%rbp),%eax
movswl -0x82(%rbp),%ecx
sub    %ecx,%eax
cvtsi2sd %eax,%xmm0
movswl -0x80(%rbp),%eax
movswl -0x7c(%rbp),%ecx
sub    %ecx,%eax
cvtsi2sd %eax,%xmm1
divsd  %xmm1,%xmm0
call   10d0 <atan@plt>
movsd  %xmm0,-0x168(%rbp)
ff
movswl -0x76(%rbp),%eax
movswl -0x7a(%rbp),%ecx
sub    %ecx,%eax
cvtsi2sd %eax,%xmm0
movswl -0x78(%rbp),%eax
movswl -0x74(%rbp),%ecx
sub    %ecx,%eax
cvtsi2sd %eax,%xmm1
divsd  %xmm1,%xmm0
call   10d0 <atan@plt>
movsd  %xmm0,-0x190(%rbp)
ff
movsd  -0x190(%rbp),%xmm0
ff
movsd  -0x168(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x198(%rbp)
ff
movsd  -0x198(%rbp),%xmm0
ff
movsd  -0x90(%rbp),%xmm1
ff
movsd  0x19fe(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movswl -0x7c(%rbp),%eax
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x4b8(%rbp)
ff
movsd  -0x180(%rbp),%xmm0
ff
movsd  %xmm0,-0x4c0(%rbp)
ff
movsd  -0x188(%rbp),%xmm0
ff
movsd  -0x168(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
call   1110 <cos@plt>
movsd  -0x4c0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x4b8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
movswl -0x7e(%rbp),%eax
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x4a8(%rbp)
ff
movsd  -0x180(%rbp),%xmm0
ff
movsd  %xmm0,-0x4b0(%rbp)
ff
movsd  -0x188(%rbp),%xmm0
ff
movsd  -0x168(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
call   10c0 <sin@plt>
movsd  -0x4b0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x4a8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  -0x150(%rbp),%xmm0
ff
movsd  -0x98(%rbp),%xmm1
ff
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x4a0(%rbp)
ff
movswl -0x74(%rbp),%eax
cvtsi2sd %eax,%xmm0
movsd  -0x140(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
movswl -0x76(%rbp),%eax
cvtsi2sd %eax,%xmm1
movsd  -0x148(%rbp),%xmm2
ff
subsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm1
mulsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1130 <sqrt@plt>
movsd  -0x4a0(%rbp),%xmm0
ff
cwtl
cvtsi2sd %eax,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
movswl -0x74(%rbp),%eax
cvtsi2sd %eax,%xmm0
movsd  -0x140(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x498(%rbp)
ff
movsd  -0x148(%rbp),%xmm1
ff
movswl -0x76(%rbp),%eax
cvtsi2sd %eax,%xmm2
subsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm1
mulsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1130 <sqrt@plt>
movsd  -0x498(%rbp),%xmm0
ff
cwtl
cvtsi2sd %eax,%xmm1
divsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
movswl %ax,%edi
call   1080 <acos@plt>
movsd  -0x168(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  -0x170(%rbp),%xmm0
ff
movsd  %xmm0,-0x490(%rbp)
ff
movsd  -0x130(%rbp),%xmm0
ff
movsd  %xmm0,-0x488(%rbp)
ff
movsd  -0x138(%rbp),%xmm0
ff
call   1110 <cos@plt>
movsd  -0x490(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x488(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  -0x178(%rbp),%xmm0
ff
movsd  %xmm0,-0x478(%rbp)
ff
movsd  -0x130(%rbp),%xmm0
ff
movsd  %xmm0,-0x480(%rbp)
ff
movsd  -0x138(%rbp),%xmm0
ff
call   10c0 <sin@plt>
movsd  -0x480(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x478(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x1a8(%rbp)
ff
movsd  -0x1a0(%rbp),%xmm0
ff
movsd  -0x158(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
movsd  -0x1a8(%rbp),%xmm2
ff
subsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm1
mulsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1130 <sqrt@plt>
cwtl
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x1b0(%rbp)
ff
movsd  -0x1a0(%rbp),%xmm0
ff
movsd  -0x158(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
movsd  -0x1a8(%rbp),%xmm2
ff
subsd  %xmm2,%xmm1
divsd  %xmm1,%xmm0
call   10d0 <atan@plt>
movsd  %xmm0,-0x1b8(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
movsd  %xmm0,-0x470(%rbp)
ff
movsd  -0x1b0(%rbp),%xmm0
ff
movsd  %xmm0,-0x468(%rbp)
ff
movsd  -0x1b8(%rbp),%xmm0
ff
movsd  -0xc0(%rbp),%xmm1
ff
addsd  %xmm1,%xmm0
call   10c0 <sin@plt>
movsd  -0x470(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x468(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1c0(%rbp)
ff
movsd  -0x160(%rbp),%xmm0
ff
movsd  %xmm0,-0x458(%rbp)
ff
movsd  -0x1b0(%rbp),%xmm0
ff
movsd  %xmm0,-0x460(%rbp)
ff
movsd  -0x1b8(%rbp),%xmm0
ff
movsd  -0xc0(%rbp),%xmm1
ff
addsd  %xmm1,%xmm0
call   1110 <cos@plt>
movsd  -0x460(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x458(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x1c8(%rbp)
ff
movswl -0x86(%rbp),%eax
cvtsi2sd %eax,%xmm0
movsd  -0x1c0(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
mov    %ax,-0xb2(%rbp)
movswl -0x88(%rbp),%eax
cvtsi2sd %eax,%xmm0
movsd  -0x1c8(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
mov    %ax,-0xb4(%rbp)
movsd  0x1623(%rip),%xmm0
mulsd  -0xc0(%rbp),%xmm0
ff
movsd  %xmm0,-0xc0(%rbp)
ff
movw   $0x0,-0xc2(%rbp)
movswl -0xc2(%rbp),%eax
cmp    $0x20,%eax
jge    2cc7 <main+0x1aa7>
mov    -0x108(%rbp),%rax
movswq -0xc2(%rbp),%rcx
ff
movswl (%rax,%rcx,2),%eax
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
mov    -0x110(%rbp),%rax
movswq -0xc2(%rbp),%rcx
ff
movswl (%rax,%rcx,2),%eax
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movsd  0x15ac(%rip),%xmm1
ucomisd %xmm1,%xmm0
jne    2a89 <main+0x1869>
jp     2a89 <main+0x1869>
jmp    2c7d <main+0x1a5d>
movsd  0x1597(%rip),%xmm0
mulsd  -0xd8(%rbp),%xmm0
ff
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movsd  0x1597(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  -0xd8(%rbp),%xmm0
ff
movsd  0x1573(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movsd  %xmm0,-0x508(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
call   1110 <cos@plt>
movsd  %xmm0,-0x510(%rbp)
ff
movsd  -0xd8(%rbp),%xmm0
ff
movsd  %xmm0,-0x518(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
call   10c0 <sin@plt>
movsd  -0x518(%rbp),%xmm1
ff
movsd  -0x510(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x508(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
movsd  -0xd8(%rbp),%xmm0
ff
movsd  %xmm0,-0x4f0(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
call   1110 <cos@plt>
movsd  %xmm0,-0x4f8(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movsd  %xmm0,-0x500(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
call   10c0 <sin@plt>
movsd  -0x500(%rbp),%xmm1
ff
movsd  -0x4f8(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x4f0(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
movsd  0x146e(%rip),%xmm0
addsd  -0xe0(%rbp),%xmm0
ff
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  0x144e(%rip),%xmm0
addsd  -0xe8(%rbp),%xmm0
ff
movsd  %xmm0,-0xd8(%rbp)
ff
movswl -0xb2(%rbp),%eax
cvtsi2sd %eax,%xmm0
addsd  -0xd0(%rbp),%xmm0
ff
movsd  %xmm0,-0xd0(%rbp)
ff
movswl -0xb4(%rbp),%eax
cvtsi2sd %eax,%xmm0
addsd  -0xd8(%rbp),%xmm0
ff
movsd  %xmm0,-0xd8(%rbp)
ff
cvttsd2si -0xd0(%rbp),%eax
ff
mov    %ax,%dx
mov    -0x108(%rbp),%rax
movswl -0xc2(%rbp),%ecx
movslq %ecx,%rcx
mov    %dx,(%rax,%rcx,2)
cvttsd2si -0xd8(%rbp),%eax
ff
mov    %ax,%dx
mov    -0x110(%rbp),%rax
movswl -0xc2(%rbp),%ecx
movslq %ecx,%rcx
mov    %dx,(%rax,%rcx,2)
jmp    2cab <main+0x1a8b>
mov    -0x108(%rbp),%rax
movswl -0xc2(%rbp),%ecx
movslq %ecx,%rcx
movw   $0xffff,(%rax,%rcx,2)
mov    -0x110(%rbp),%rax
movswl -0xc2(%rbp),%ecx
movslq %ecx,%rcx
movw   $0xffff,(%rax,%rcx,2)
jmp    2cb0 <main+0x1a90>
mov    -0xc2(%rbp),%ax
add    $0x1,%ax
mov    %ax,-0xc2(%rbp)
jmp    2a16 <main+0x17f6>
movsd  -0x190(%rbp),%xmm1
ff
movsd  -0x90(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  0x1342(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  0x1312(%rip),%xmm0
mulsd  -0xc0(%rbp),%xmm0
ff
movsd  %xmm0,-0xc0(%rbp)
ff
movswl -0x86(%rbp),%eax
movswl -0x74(%rbp),%ecx
sub    %ecx,%eax
mov    %ax,-0xb2(%rbp)
movswl -0x88(%rbp),%eax
movswl -0x76(%rbp),%ecx
sub    %ecx,%eax
mov    %ax,-0xb4(%rbp)
movw   $0x0,-0xc2(%rbp)
movswl -0xc2(%rbp),%eax
cmp    $0xa,%eax
jge    3000 <main+0x1de0>
mov    -0x120(%rbp),%rax
movswq -0xc2(%rbp),%rcx
ff
movswl (%rax,%rcx,2),%eax
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
mov    -0x128(%rbp),%rax
movswq -0xc2(%rbp),%rcx
ff
movswl (%rax,%rcx,2),%eax
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movsd  0x1273(%rip),%xmm1
ucomisd %xmm1,%xmm0
jne    2dc2 <main+0x1ba2>
jp     2dc2 <main+0x1ba2>
jmp    2fb6 <main+0x1d96>
movsd  0x125e(%rip),%xmm0
mulsd  -0xd8(%rbp),%xmm0
ff
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movsd  0x125e(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  -0xd8(%rbp),%xmm0
ff
movsd  0x123a(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movsd  %xmm0,-0x538(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
call   1110 <cos@plt>
movsd  %xmm0,-0x540(%rbp)
ff
movsd  -0xd8(%rbp),%xmm0
ff
movsd  %xmm0,-0x548(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
call   10c0 <sin@plt>
movsd  -0x548(%rbp),%xmm1
ff
movsd  -0x540(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x538(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
movsd  -0xd8(%rbp),%xmm0
ff
movsd  %xmm0,-0x520(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
call   1110 <cos@plt>
movsd  %xmm0,-0x528(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movsd  %xmm0,-0x530(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
call   10c0 <sin@plt>
movsd  -0x530(%rbp),%xmm1
ff
movsd  -0x528(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x520(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
movsd  0x1135(%rip),%xmm0
addsd  -0xe0(%rbp),%xmm0
ff
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  0x1115(%rip),%xmm0
addsd  -0xe8(%rbp),%xmm0
ff
movsd  %xmm0,-0xd8(%rbp)
ff
movswl -0xb2(%rbp),%eax
cvtsi2sd %eax,%xmm0
addsd  -0xd0(%rbp),%xmm0
ff
movsd  %xmm0,-0xd0(%rbp)
ff
movswl -0xb4(%rbp),%eax
cvtsi2sd %eax,%xmm0
addsd  -0xd8(%rbp),%xmm0
ff
movsd  %xmm0,-0xd8(%rbp)
ff
cvttsd2si -0xd0(%rbp),%eax
ff
mov    %ax,%dx
mov    -0x120(%rbp),%rax
movswl -0xc2(%rbp),%ecx
movslq %ecx,%rcx
mov    %dx,(%rax,%rcx,2)
cvttsd2si -0xd8(%rbp),%eax
ff
mov    %ax,%dx
mov    -0x128(%rbp),%rax
movswl -0xc2(%rbp),%ecx
movslq %ecx,%rcx
mov    %dx,(%rax,%rcx,2)
jmp    2fe4 <main+0x1dc4>
mov    -0x120(%rbp),%rax
movswl -0xc2(%rbp),%ecx
movslq %ecx,%rcx
movw   $0xffff,(%rax,%rcx,2)
mov    -0x128(%rbp),%rax
movswl -0xc2(%rbp),%ecx
movslq %ecx,%rcx
movw   $0xffff,(%rax,%rcx,2)
jmp    2fe9 <main+0x1dc9>
mov    -0xc2(%rbp),%ax
add    $0x1,%ax
mov    %ax,-0xc2(%rbp)
jmp    2d4f <main+0x1b2f>
mov    -0x100(%rbp),%rax
movsbl (%rax),%eax
cmp    $0x79,%eax
jne    3946 <main+0x2726>
mov    -0x48(%rbp),%rdi
mov    -0x70(%rbp),%rdx
mov    -0x108(%rbp),%rax
movswl (%rax),%ecx
mov    -0x110(%rbp),%rax
movswl (%rax),%r8d
mov    -0x108(%rbp),%rax
movswl 0x2(%rax),%r9d
mov    -0x110(%rbp),%rax
movswl 0x2(%rax),%eax
mov    -0x108(%rbp),%rsi
movswl 0x4(%rsi),%esi
mov    %esi,-0x66c(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x4(%rsi),%esi
mov    %esi,-0x668(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x6(%rsi),%esi
mov    %esi,-0x664(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x6(%rsi),%esi
mov    %esi,-0x660(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x8(%rsi),%esi
mov    %esi,-0x65c(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x8(%rsi),%esi
mov    %esi,-0x658(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0xa(%rsi),%esi
mov    %esi,-0x654(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0xa(%rsi),%esi
mov    %esi,-0x650(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0xc(%rsi),%esi
mov    %esi,-0x64c(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0xc(%rsi),%esi
mov    %esi,-0x648(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0xe(%rsi),%esi
mov    %esi,-0x644(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0xe(%rsi),%esi
mov    %esi,-0x640(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x10(%rsi),%esi
mov    %esi,-0x63c(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x10(%rsi),%esi
mov    %esi,-0x638(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x12(%rsi),%esi
mov    %esi,-0x634(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x12(%rsi),%esi
mov    %esi,-0x630(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x14(%rsi),%esi
mov    %esi,-0x62c(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x14(%rsi),%esi
mov    %esi,-0x628(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x16(%rsi),%esi
mov    %esi,-0x624(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x16(%rsi),%esi
mov    %esi,-0x620(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x18(%rsi),%esi
mov    %esi,-0x61c(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x18(%rsi),%esi
mov    %esi,-0x618(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x1a(%rsi),%esi
mov    %esi,-0x614(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x1a(%rsi),%esi
mov    %esi,-0x610(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x1c(%rsi),%esi
mov    %esi,-0x60c(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x1c(%rsi),%esi
mov    %esi,-0x608(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x1e(%rsi),%esi
mov    %esi,-0x604(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x1e(%rsi),%esi
mov    %esi,-0x600(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x20(%rsi),%esi
mov    %esi,-0x5fc(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x20(%rsi),%esi
mov    %esi,-0x5f8(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x22(%rsi),%esi
mov    %esi,-0x5f4(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x22(%rsi),%esi
mov    %esi,-0x5f0(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x24(%rsi),%esi
mov    %esi,-0x5ec(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x24(%rsi),%esi
mov    %esi,-0x5e8(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x26(%rsi),%esi
mov    %esi,-0x5e4(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x26(%rsi),%esi
mov    %esi,-0x5e0(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x28(%rsi),%esi
mov    %esi,-0x5dc(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x28(%rsi),%esi
mov    %esi,-0x5d8(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x2a(%rsi),%esi
mov    %esi,-0x5d4(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x2a(%rsi),%esi
mov    %esi,-0x5d0(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x2c(%rsi),%esi
mov    %esi,-0x5cc(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x2c(%rsi),%esi
mov    %esi,-0x5c8(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x2e(%rsi),%esi
mov    %esi,-0x5c4(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x2e(%rsi),%esi
mov    %esi,-0x5c0(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x30(%rsi),%esi
mov    %esi,-0x5bc(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x30(%rsi),%esi
mov    %esi,-0x5b8(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x32(%rsi),%esi
mov    %esi,-0x5b4(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x32(%rsi),%esi
mov    %esi,-0x5b0(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x34(%rsi),%esi
mov    %esi,-0x5ac(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x34(%rsi),%esi
mov    %esi,-0x5a8(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x36(%rsi),%esi
mov    %esi,-0x5a4(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x36(%rsi),%esi
mov    %esi,-0x5a0(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x38(%rsi),%esi
mov    %esi,-0x59c(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x38(%rsi),%esi
mov    %esi,-0x598(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x3a(%rsi),%esi
mov    %esi,-0x594(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x3a(%rsi),%esi
mov    %esi,-0x590(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x3c(%rsi),%esi
mov    %esi,-0x58c(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x3c(%rsi),%esi
mov    %esi,-0x588(%rbp)
mov    -0x108(%rbp),%rsi
movswl 0x3e(%rsi),%esi
mov    %esi,-0x584(%rbp)
mov    -0x110(%rbp),%rsi
movswl 0x3e(%rsi),%esi
mov    %esi,-0x580(%rbp)
mov    -0x120(%rbp),%rsi
movswl (%rsi),%esi
mov    %esi,-0x57c(%rbp)
mov    -0x128(%rbp),%rsi
movswl (%rsi),%esi
mov    %esi,-0x578(%rbp)
mov    -0x120(%rbp),%rsi
movswl 0x2(%rsi),%esi
mov    %esi,-0x574(%rbp)
mov    -0x128(%rbp),%rsi
movswl 0x2(%rsi),%esi
mov    %esi,-0x570(%rbp)
mov    -0x120(%rbp),%rsi
movswl 0x4(%rsi),%esi
mov    %esi,-0x56c(%rbp)
mov    -0x128(%rbp),%rsi
movswl 0x4(%rsi),%esi
mov    %esi,-0x568(%rbp)
mov    -0x120(%rbp),%rsi
movswl 0x6(%rsi),%esi
mov    %esi,-0x564(%rbp)
mov    -0x128(%rbp),%rsi
movswl 0x6(%rsi),%esi
mov    %esi,-0x560(%rbp)
mov    -0x120(%rbp),%rsi
movswl 0x8(%rsi),%esi
mov    %esi,-0x55c(%rbp)
mov    -0x128(%rbp),%rsi
movswl 0x8(%rsi),%esi
mov    %esi,-0x558(%rbp)
mov    -0x120(%rbp),%rsi
movswl 0xa(%rsi),%esi
mov    %esi,-0x554(%rbp)
mov    -0x128(%rbp),%rsi
movswl 0xa(%rsi),%esi
mov    %esi,-0x550(%rbp)
mov    -0x120(%rbp),%rsi
movswl 0xc(%rsi),%r13d
mov    -0x128(%rbp),%rsi
movswl 0xc(%rsi),%r12d
mov    -0x120(%rbp),%rsi
movswl 0xe(%rsi),%r15d
mov    -0x128(%rbp),%rsi
movswl 0xe(%rsi),%r14d
mov    -0x120(%rbp),%rsi
movswl 0x10(%rsi),%ebx
mov    -0x128(%rbp),%rsi
movswl 0x10(%rsi),%r11d
mov    -0x120(%rbp),%rsi
movswl 0x12(%rsi),%r10d
mov    -0x128(%rbp),%rsi
movswl 0x12(%rsi),%esi
mov    %esi,-0x54c(%rbp)
lea    0x1308(%rip),%rsi
mov    %eax,(%rsp)
mov    -0x66c(%rbp),%eax
mov    %eax,0x8(%rsp)
mov    -0x668(%rbp),%eax
mov    %eax,0x10(%rsp)
mov    -0x664(%rbp),%eax
mov    %eax,0x18(%rsp)
mov    -0x660(%rbp),%eax
mov    %eax,0x20(%rsp)
mov    -0x65c(%rbp),%eax
mov    %eax,0x28(%rsp)
mov    -0x658(%rbp),%eax
mov    %eax,0x30(%rsp)
mov    -0x654(%rbp),%eax
mov    %eax,0x38(%rsp)
mov    -0x650(%rbp),%eax
mov    %eax,0x40(%rsp)
mov    -0x64c(%rbp),%eax
mov    %eax,0x48(%rsp)
mov    -0x648(%rbp),%eax
mov    %eax,0x50(%rsp)
mov    -0x644(%rbp),%eax
mov    %eax,0x58(%rsp)
mov    -0x640(%rbp),%eax
mov    %eax,0x60(%rsp)
mov    -0x63c(%rbp),%eax
mov    %eax,0x68(%rsp)
mov    -0x638(%rbp),%eax
mov    %eax,0x70(%rsp)
mov    -0x634(%rbp),%eax
mov    %eax,0x78(%rsp)
mov    -0x630(%rbp),%eax
mov    %eax,0x80(%rsp)
mov    -0x62c(%rbp),%eax
mov    %eax,0x88(%rsp)
mov    -0x628(%rbp),%eax
mov    %eax,0x90(%rsp)
mov    -0x624(%rbp),%eax
mov    %eax,0x98(%rsp)
mov    -0x620(%rbp),%eax
mov    %eax,0xa0(%rsp)
mov    -0x61c(%rbp),%eax
mov    %eax,0xa8(%rsp)
mov    -0x618(%rbp),%eax
mov    %eax,0xb0(%rsp)
mov    -0x614(%rbp),%eax
mov    %eax,0xb8(%rsp)
mov    -0x610(%rbp),%eax
mov    %eax,0xc0(%rsp)
mov    -0x60c(%rbp),%eax
mov    %eax,0xc8(%rsp)
mov    -0x608(%rbp),%eax
mov    %eax,0xd0(%rsp)
mov    -0x604(%rbp),%eax
mov    %eax,0xd8(%rsp)
mov    -0x600(%rbp),%eax
mov    %eax,0xe0(%rsp)
mov    -0x5fc(%rbp),%eax
mov    %eax,0xe8(%rsp)
mov    -0x5f8(%rbp),%eax
mov    %eax,0xf0(%rsp)
mov    -0x5f4(%rbp),%eax
mov    %eax,0xf8(%rsp)
mov    -0x5f0(%rbp),%eax
mov    %eax,0x100(%rsp)
mov    -0x5ec(%rbp),%eax
mov    %eax,0x108(%rsp)
mov    -0x5e8(%rbp),%eax
mov    %eax,0x110(%rsp)
mov    -0x5e4(%rbp),%eax
mov    %eax,0x118(%rsp)
mov    -0x5e0(%rbp),%eax
mov    %eax,0x120(%rsp)
mov    -0x5dc(%rbp),%eax
mov    %eax,0x128(%rsp)
mov    -0x5d8(%rbp),%eax
mov    %eax,0x130(%rsp)
mov    -0x5d4(%rbp),%eax
mov    %eax,0x138(%rsp)
mov    -0x5d0(%rbp),%eax
mov    %eax,0x140(%rsp)
mov    -0x5cc(%rbp),%eax
mov    %eax,0x148(%rsp)
mov    -0x5c8(%rbp),%eax
mov    %eax,0x150(%rsp)
mov    -0x5c4(%rbp),%eax
mov    %eax,0x158(%rsp)
mov    -0x5c0(%rbp),%eax
mov    %eax,0x160(%rsp)
mov    -0x5bc(%rbp),%eax
mov    %eax,0x168(%rsp)
mov    -0x5b8(%rbp),%eax
mov    %eax,0x170(%rsp)
mov    -0x5b4(%rbp),%eax
mov    %eax,0x178(%rsp)
mov    -0x5b0(%rbp),%eax
mov    %eax,0x180(%rsp)
mov    -0x5ac(%rbp),%eax
mov    %eax,0x188(%rsp)
mov    -0x5a8(%rbp),%eax
mov    %eax,0x190(%rsp)
mov    -0x5a4(%rbp),%eax
mov    %eax,0x198(%rsp)
mov    -0x5a0(%rbp),%eax
mov    %eax,0x1a0(%rsp)
mov    -0x59c(%rbp),%eax
mov    %eax,0x1a8(%rsp)
mov    -0x598(%rbp),%eax
mov    %eax,0x1b0(%rsp)
mov    -0x594(%rbp),%eax
mov    %eax,0x1b8(%rsp)
mov    -0x590(%rbp),%eax
mov    %eax,0x1c0(%rsp)
mov    -0x58c(%rbp),%eax
mov    %eax,0x1c8(%rsp)
mov    -0x588(%rbp),%eax
mov    %eax,0x1d0(%rsp)
mov    -0x584(%rbp),%eax
mov    %eax,0x1d8(%rsp)
mov    -0x580(%rbp),%eax
mov    %eax,0x1e0(%rsp)
mov    -0x57c(%rbp),%eax
mov    %eax,0x1e8(%rsp)
mov    -0x578(%rbp),%eax
mov    %eax,0x1f0(%rsp)
mov    -0x574(%rbp),%eax
mov    %eax,0x1f8(%rsp)
mov    -0x570(%rbp),%eax
mov    %eax,0x200(%rsp)
mov    -0x56c(%rbp),%eax
mov    %eax,0x208(%rsp)
mov    -0x568(%rbp),%eax
mov    %eax,0x210(%rsp)
mov    -0x564(%rbp),%eax
mov    %eax,0x218(%rsp)
mov    -0x560(%rbp),%eax
mov    %eax,0x220(%rsp)
mov    -0x55c(%rbp),%eax
mov    %eax,0x228(%rsp)
mov    -0x558(%rbp),%eax
mov    %eax,0x230(%rsp)
mov    -0x554(%rbp),%eax
mov    %eax,0x238(%rsp)
mov    -0x550(%rbp),%eax
mov    %eax,0x240(%rsp)
mov    -0x54c(%rbp),%eax
mov    %r13d,0x248(%rsp)
mov    %r12d,0x250(%rsp)
mov    %r15d,0x258(%rsp)
mov    %r14d,0x260(%rsp)
mov    %ebx,0x268(%rsp)
mov    %r11d,0x270(%rsp)
mov    %r10d,0x278(%rsp)
mov    %eax,0x280(%rsp)
mov    $0x0,%al
call   10a0 <fprintf@plt>
jmp    3ab6 <main+0x2896>
mov    -0x70(%rbp),%rdi
lea    0x1083(%rip),%rsi
call   10f0 <strpbrk@plt>
mov    -0x70(%rbp),%rcx
sub    %rcx,%rax
mov    %ax,-0xc6(%rbp)
mov    -0xf0(%rbp),%rdi
mov    -0x70(%rbp),%rsi
movswl -0xc6(%rbp),%edx
call   1030 <strncpy@plt>
mov    -0xf0(%rbp),%rax
movswl -0xc6(%rbp),%ecx
movslq %ecx,%rcx
movb   $0x0,(%rax,%rcx,1)
mov    -0x70(%rbp),%rdi
mov    $0x5f,%esi
call   1060 <strchr@plt>
mov    %rax,-0x680(%rbp)
mov    -0x70(%rbp),%rdi
lea    0x1024(%rip),%rsi
call   10f0 <strpbrk@plt>
mov    %rax,%rcx
mov    -0x680(%rbp),%rax
sub    %rcx,%rax
mov    %ax,-0xc6(%rbp)
mov    -0xf8(%rbp),%rax
mov    %rax,-0x678(%rbp)
mov    -0x70(%rbp),%rdi
lea    0xff2(%rip),%rsi
call   10f0 <strpbrk@plt>
mov    -0x678(%rbp),%rdi
mov    %rax,%rsi
movswl -0xc6(%rbp),%edx
call   1030 <strncpy@plt>
mov    -0xf8(%rbp),%rax
movswl -0xc6(%rbp),%ecx
movslq %ecx,%rcx
movb   $0x0,(%rax,%rcx,1)
movw   $0x0,-0xc2(%rbp)
movswl -0xc2(%rbp),%eax
cmp    $0x20,%eax
jge    3ab1 <main+0x2891>
mov    -0x108(%rbp),%rax
movswl -0xc2(%rbp),%ecx
movslq %ecx,%rcx
movswl (%rax,%rcx,2),%eax
cmp    $0xffffffff,%eax
je     3a95 <main+0x2875>
mov    -0x48(%rbp),%rdi
mov    -0xf0(%rbp),%rdx
mov    -0xf8(%rbp),%rcx
mov    -0x108(%rbp),%rax
movswl -0xc2(%rbp),%esi
movslq %esi,%rsi
movswl (%rax,%rsi,2),%r8d
mov    -0x110(%rbp),%rax
movswl -0xc2(%rbp),%esi
movslq %esi,%rsi
movswl (%rax,%rsi,2),%r9d
lea    0xf51(%rip),%rsi
mov    $0x0,%al
call   10a0 <fprintf@plt>
jmp    3a9a <main+0x287a>
mov    -0xc2(%rbp),%ax
add    $0x1,%ax
mov    %ax,-0xc2(%rbp)
jmp    3a1b <main+0x27fb>
jmp    3ab6 <main+0x2896>
jmp    182c <main+0x60c>
mov    -0x40(%rbp),%rdi
call   1050 <fclose@plt>
mov    -0x48(%rbp),%rdi
call   1050 <fclose@plt>
mov    -0x2c(%rbp),%eax
add    $0x928,%rsp
pop    %rbx
pop    %r12
pop    %r13
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    $0x5c8,%rsp
mov    %rsi,%r14
mov    %edi,%ebp
mov    $0x32,%edi
call   1110 <malloc@plt>
mov    %rax,%r12
mov    $0x32,%edi
call   1110 <malloc@plt>
mov    %rax,(%rsp)
mov    $0x32,%edi
call   1110 <malloc@plt>
mov    %rax,%rbx
mov    $0xc8,%edi
call   1110 <malloc@plt>
mov    %rax,0x88(%rsp)
mov    $0xc8,%edi
call   1110 <malloc@plt>
mov    %rax,0x5c0(%rsp)
mov    $0xc8,%edi
call   1110 <malloc@plt>
mov    %rax,0x5b8(%rsp)
mov    $0x1,%edi
call   1110 <malloc@plt>
mov    %rax,0x90(%rsp)
mov    $0x40,%edi
call   1110 <malloc@plt>
mov    %rax,%r13
mov    $0x40,%edi
call   1110 <malloc@plt>
mov    %rax,0x98(%rsp)
mov    $0x10,%edi
call   1110 <malloc@plt>
mov    %rax,0x80(%rsp)
mov    $0x14,%edi
call   1110 <malloc@plt>
mov    %rax,0xc8(%rsp)
mov    $0x14,%edi
call   1110 <malloc@plt>
mov    %rax,0xa0(%rsp)
lea    0x2698(%rip),%rdi
lea    0x1d27(%rip),%rsi
call   1150 <fopen@plt>
test   %rax,%rax
je     1524 <main+0x2c4>
mov    %rax,%r15
lea    0x1d11(%rip),%rsi
lea    0xe(%rsp),%rdx
mov    %rax,%rdi
xor    %eax,%eax
call   10b0 <fscanf@plt>
test   %ax,%ax
je     152d <main+0x2cd>
lea    0x1d02(%rip),%rsi
lea    0xc(%rsp),%rdx
mov    %r15,%rdi
xor    %eax,%eax
call   10b0 <fscanf@plt>
test   %ax,%ax
je     1536 <main+0x2d6>
lea    0x1cf3(%rip),%rsi
lea    0xe0(%rsp),%rdx
mov    %r15,%rdi
xor    %eax,%eax
call   10b0 <fscanf@plt>
test   %ax,%ax
je     153f <main+0x2df>
lea    0x1cde(%rip),%rsi
lea    0xe8(%rsp),%rdx
mov    %r15,%rdi
xor    %eax,%eax
call   10b0 <fscanf@plt>
test   %ax,%ax
je     1548 <main+0x2e8>
lea    0x1ccb(%rip),%rsi
lea    0xa8(%rsp),%rdx
mov    %r15,%rdi
xor    %eax,%eax
call   10b0 <fscanf@plt>
test   %ax,%ax
je     1551 <main+0x2f1>
lea    0x1cc9(%rip),%rsi
lea    0xd8(%rsp),%rdx
mov    %r15,%rdi
xor    %eax,%eax
call   10b0 <fscanf@plt>
test   %ax,%ax
je     155a <main+0x2fa>
lea    0x1cd3(%rip),%rsi
lea    0xd0(%rsp),%rdx
mov    %r15,%rdi
xor    %eax,%eax
call   10b0 <fscanf@plt>
test   %ax,%ax
je     1563 <main+0x303>
mov    %r15,%rdi
call   1070 <fclose@plt>
lea    0x23f4(%rip),%rdi
call   1060 <puts@plt>
movswl 0xe(%rsp),%esi
lea    0x1c10(%rip),%rdi
xor    %eax,%eax
call   1090 <printf@plt>
movswl 0xc(%rsp),%esi
lea    0x1c0d(%rip),%rdi
xor    %eax,%eax
call   1090 <printf@plt>
movsd  0xe0(%rsp),%xmm0
lea    0x1c06(%rip),%rdi
mov    $0x1,%al
call   1090 <printf@plt>
movsd  0xe8(%rsp),%xmm0
lea    0x1bfc(%rip),%rdi
mov    $0x1,%al
call   1090 <printf@plt>
movsd  0xa8(%rsp),%xmm0
lea    0x1bf4(%rip),%rdi
mov    $0x1,%al
call   1090 <printf@plt>
movsd  0xd8(%rsp),%xmm0
lea    0x1bfd(%rip),%rdi
mov    $0x1,%al
call   1090 <printf@plt>
movsd  0xd0(%rsp),%xmm0
lea    0x1c12(%rip),%rdi
mov    $0x1,%al
call   1090 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
cmp    $0x1,%ebp
jg     1586 <main+0x326>
lea    0x1c1c(%rip),%rdi
xor    %eax,%eax
call   1090 <printf@plt>
lea    0x1c34(%rip),%rdi
mov    %r12,%r15
mov    %r12,%rsi
call   1130 <scanf@plt>
jmp    159a <main+0x33a>
lea    0x24a1(%rip),%rdi
jmp    156a <main+0x30a>
lea    0x2477(%rip),%rdi
jmp    156a <main+0x30a>
lea    0x244d(%rip),%rdi
jmp    156a <main+0x30a>
lea    0x2426(%rip),%rdi
jmp    156a <main+0x30a>
lea    0x23fd(%rip),%rdi
jmp    156a <main+0x30a>
lea    0x23c3(%rip),%rdi
jmp    156a <main+0x30a>
lea    0x237d(%rip),%rdi
jmp    156a <main+0x30a>
lea    0x2338(%rip),%rdi
call   1060 <puts@plt>
mov    $0xffffffff,%eax
add    $0x5c8,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret
mov    0x8(%r14),%rsi
mov    %r12,%r15
mov    %r12,%rdi
call   1050 <strcpy@plt>
cmp    $0x2,%ebp
jne    15bc <main+0x35c>
lea    0x22ba(%rip),%rdi
call   1060 <puts@plt>
lea    0x1b9e(%rip),%rdi
mov    0x90(%rsp),%rsi
call   1130 <scanf@plt>
jmp    15cc <main+0x36c>
mov    0x10(%r14),%rax
mov    (%rax),%al
mov    0x90(%rsp),%rcx
mov    %al,(%rcx)
mov    (%rsp),%r12
mov    %r12,%rdi
mov    %r15,%rsi
call   1050 <strcpy@plt>
lea    0x2400(%rip),%rsi
mov    %r12,%rdi
call   1170 <strcat@plt>
mov    %rbx,%rdi
mov    %r15,%rsi
call   1050 <strcpy@plt>
lea    0x1b52(%rip),%rsi
mov    %rbx,%rdi
call   1170 <strcat@plt>
lea    0x1a65(%rip),%rsi
mov    %r12,%rdi
call   1150 <fopen@plt>
test   %rax,%rax
je     1a5f <main+0x7ff>
mov    %rax,%rbp
lea    0x1b4d(%rip),%rsi
mov    %rbx,%rdi
call   1150 <fopen@plt>
mov    %rax,0x78(%rsp)
test   %rax,%rax
je     1a6b <main+0x80b>
lea    0x1b32(%rip),%rsi
mov    %rbp,%rdi
xor    %eax,%eax
call   10b0 <fscanf@plt>
mov    0x90(%rsp),%rax
cmpb   $0x79,(%rax)
jne    1a81 <main+0x821>
lea    0x1e3d(%rip),%rdi
mov    $0x9,%esi
mov    $0x1,%edx
mov    0x78(%rsp),%rbx
mov    %rbx,%rcx
call   1180 <fwrite@plt>
lea    0x1e29(%rip),%r14
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x1,%edx
mov    $0x1,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x2,%edx
mov    $0x2,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x3,%edx
mov    $0x3,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x4,%edx
mov    $0x4,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x5,%edx
mov    $0x5,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x6,%edx
mov    $0x6,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x7,%edx
mov    $0x7,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x8,%edx
mov    $0x8,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x9,%edx
mov    $0x9,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xa,%edx
mov    $0xa,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xb,%edx
mov    $0xb,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xc,%edx
mov    $0xc,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xd,%edx
mov    $0xd,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xe,%edx
mov    $0xe,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xf,%edx
mov    $0xf,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x10,%edx
mov    $0x10,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x11,%edx
mov    $0x11,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x12,%edx
mov    $0x12,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x13,%edx
mov    $0x13,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x14,%edx
mov    $0x14,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x15,%edx
mov    $0x15,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x16,%edx
mov    $0x16,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x17,%edx
mov    $0x17,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x18,%edx
mov    $0x18,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x19,%edx
mov    $0x19,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x1a,%edx
mov    $0x1a,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x1b,%edx
mov    $0x1b,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x1c,%edx
mov    $0x1c,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x1d,%edx
mov    $0x1d,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x1e,%edx
mov    $0x1e,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x1f,%edx
mov    $0x1f,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x20,%edx
mov    $0x20,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
lea    0x1b4d(%rip),%r14
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x1,%edx
mov    $0x1,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x2,%edx
mov    $0x2,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x3,%edx
mov    $0x3,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x4,%edx
mov    $0x4,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x5,%edx
mov    $0x5,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x6,%edx
mov    $0x6,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x7,%edx
mov    $0x7,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x8,%edx
mov    $0x8,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0x9,%edx
mov    $0x9,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    %rbx,%rdi
mov    %r14,%rsi
mov    $0xa,%edx
mov    $0xa,%ecx
xor    %eax,%eax
call   10d0 <fprintf@plt>
mov    $0xa,%edi
mov    %rbx,%rsi
call   10c0 <fputc@plt>
jmp    1a9c <main+0x83c>
lea    0x16f4(%rip),%rdi
mov    %r12,%rsi
jmp    1a75 <main+0x815>
lea    0x16e8(%rip),%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   1090 <printf@plt>
jmp    156f <main+0x30f>
lea    0x1a42(%rip),%rdi
mov    $0xf,%esi
mov    $0x1,%edx
mov    0x78(%rsp),%rcx
call   1180 <fwrite@plt>
mov    0x88(%rsp),%r14
mov    0x80(%rsp),%rbx
mov    %rbp,%rdi
call   10e0 <feof@plt>
test   %rax,%rax
je     1ad2 <main+0x872>
mov    %rbp,%rdi
call   1070 <fclose@plt>
mov    0x78(%rsp),%rdi
call   1070 <fclose@plt>
xor    %eax,%eax
jmp    1574 <main+0x314>
lea    0x2(%r13),%rax
mov    %rax,0x5a8(%rsp)
mov    0x98(%rsp),%rax
lea    0x2(%rax),%rcx
mov    %rcx,0x5a0(%rsp)
lea    0x4(%r13),%rcx
mov    %rcx,0x598(%rsp)
lea    0x4(%rax),%rcx
mov    %rcx,0x590(%rsp)
lea    0x6(%r13),%rcx
mov    %rcx,0x588(%rsp)
lea    0x6(%rax),%rcx
mov    %rcx,0x580(%rsp)
lea    0x8(%r13),%rcx
mov    %rcx,0x578(%rsp)
lea    0x8(%rax),%rcx
mov    %rcx,0x570(%rsp)
lea    0xa(%r13),%rcx
mov    %rcx,0x568(%rsp)
lea    0xa(%rax),%rcx
mov    %rcx,0x560(%rsp)
mov    %r13,%rcx
add    $0x3e,%rcx
mov    %rcx,0x558(%rsp)
mov    %rax,%rcx
add    $0x3e,%rcx
mov    %rcx,0x550(%rsp)
mov    %rbx,%rcx
add    $0xe,%rcx
mov    %rcx,0x548(%rsp)
mov    0xc8(%rsp),%rcx
mov    %rcx,%rdx
add    $0x12,%rdx
mov    %rdx,0x540(%rsp)
mov    0xa0(%rsp),%rdx
mov    %rdx,%rsi
add    $0x12,%rsi
mov    %rsi,0x538(%rsp)
lea    0xc(%r13),%rsi
mov    %rsi,0x530(%rsp)
lea    0xc(%rax),%rsi
mov    %rsi,0x528(%rsp)
lea    0xe(%r13),%rsi
mov    %rsi,0x520(%rsp)
lea    0xe(%rax),%rsi
mov    %rsi,0x518(%rsp)
lea    0x10(%r13),%rsi
mov    %rsi,0x510(%rsp)
lea    0x10(%rax),%rsi
mov    %rsi,0x508(%rsp)
lea    0x12(%r13),%rsi
mov    %rsi,0x500(%rsp)
lea    0x12(%rax),%rsi
mov    %rsi,0x4f8(%rsp)
lea    0x14(%r13),%rsi
mov    %rsi,0x4f0(%rsp)
lea    0x14(%rax),%rsi
mov    %rsi,0x4e8(%rsp)
lea    0x16(%r13),%rsi
mov    %rsi,0x4e0(%rsp)
lea    0x16(%rax),%rsi
mov    %rsi,0x4d8(%rsp)
lea    0x18(%r13),%rsi
mov    %rsi,0x4d0(%rsp)
lea    0x18(%rax),%rsi
mov    %rsi,0x4c8(%rsp)
lea    0x1a(%r13),%rsi
mov    %rsi,0x4c0(%rsp)
lea    0x1a(%rax),%rsi
mov    %rsi,0x4b8(%rsp)
lea    0x1c(%r13),%rsi
mov    %rsi,0x4b0(%rsp)
lea    0x1c(%rax),%rsi
mov    %rsi,0x4a8(%rsp)
lea    0x1e(%r13),%rsi
mov    %rsi,0x4a0(%rsp)
lea    0x1e(%rax),%rsi
mov    %rsi,0x498(%rsp)
lea    0x20(%r13),%rsi
mov    %rsi,0x490(%rsp)
lea    0x20(%rax),%rsi
mov    %rsi,0x488(%rsp)
lea    0x22(%r13),%rsi
mov    %rsi,0x480(%rsp)
lea    0x22(%rax),%rsi
mov    %rsi,0x478(%rsp)
lea    0x24(%r13),%rsi
mov    %rsi,0x470(%rsp)
lea    0x24(%rax),%rsi
mov    %rsi,0x468(%rsp)
lea    0x26(%r13),%rsi
mov    %rsi,0x460(%rsp)
lea    0x26(%rax),%rsi
mov    %rsi,0x458(%rsp)
lea    0x28(%r13),%rsi
mov    %rsi,0x450(%rsp)
lea    0x28(%rax),%rsi
mov    %rsi,0x448(%rsp)
lea    0x2a(%r13),%rsi
mov    %rsi,0x440(%rsp)
lea    0x2a(%rax),%rsi
mov    %rsi,0x438(%rsp)
lea    0x2c(%r13),%rsi
mov    %rsi,0x430(%rsp)
lea    0x2c(%rax),%rsi
mov    %rsi,0x428(%rsp)
lea    0x2e(%r13),%rsi
mov    %rsi,0x420(%rsp)
lea    0x2e(%rax),%rsi
mov    %rsi,0x418(%rsp)
lea    0x30(%r13),%rsi
mov    %rsi,0x410(%rsp)
lea    0x30(%rax),%rsi
mov    %rsi,0x408(%rsp)
lea    0x32(%r13),%rsi
mov    %rsi,0x400(%rsp)
lea    0x32(%rax),%rsi
mov    %rsi,0x3f8(%rsp)
lea    0x34(%r13),%rsi
mov    %rsi,0x3f0(%rsp)
lea    0x34(%rax),%rsi
mov    %rsi,0x3e8(%rsp)
lea    0x36(%r13),%rsi
mov    %rsi,0x3e0(%rsp)
lea    0x36(%rax),%rsi
mov    %rsi,0x3d8(%rsp)
lea    0x38(%r13),%rsi
mov    %rsi,0x3d0(%rsp)
lea    0x38(%rax),%rsi
mov    %rsi,0x3c8(%rsp)
lea    0x3a(%r13),%rsi
mov    %rsi,0x3c0(%rsp)
lea    0x3a(%rax),%rsi
mov    %rsi,0x3b8(%rsp)
lea    0x3c(%r13),%rsi
mov    %rsi,0x3b0(%rsp)
lea    0x3c(%rax),%rax
mov    %rax,0x3a8(%rsp)
lea    0x2(%rbx),%rax
mov    %rax,0x3a0(%rsp)
lea    0x4(%rbx),%rax
mov    %rax,0x398(%rsp)
lea    0x6(%rbx),%rax
mov    %rax,0x390(%rsp)
lea    0x8(%rbx),%rax
mov    %rax,0x388(%rsp)
lea    0xa(%rbx),%rax
mov    %rax,0x380(%rsp)
lea    0xc(%rbx),%rax
mov    %rax,0x378(%rsp)
lea    0x2(%rcx),%rax
mov    %rax,0x370(%rsp)
lea    0x2(%rdx),%rax
mov    %rax,0x368(%rsp)
lea    0x4(%rcx),%rax
mov    %rax,0x360(%rsp)
lea    0x4(%rdx),%rax
mov    %rax,0x358(%rsp)
lea    0x6(%rcx),%rax
mov    %rax,0x350(%rsp)
lea    0x6(%rdx),%rax
mov    %rax,0x348(%rsp)
lea    0x8(%rcx),%rax
mov    %rax,0x340(%rsp)
lea    0x8(%rdx),%rax
mov    %rax,0x338(%rsp)
lea    0xa(%rcx),%rax
mov    %rax,0x330(%rsp)
lea    0xa(%rdx),%rax
mov    %rax,0x328(%rsp)
lea    0xc(%rcx),%rax
mov    %rax,0x320(%rsp)
lea    0xc(%rdx),%rax
mov    %rax,0x318(%rsp)
lea    0xe(%rcx),%rax
mov    %rax,0x310(%rsp)
lea    0xe(%rdx),%rax
mov    %rax,0x308(%rsp)
lea    0x10(%rcx),%rax
mov    %rax,0x300(%rsp)
lea    0x10(%rdx),%rax
mov    %rax,0x2f8(%rsp)
mov    %rbp,0x5b0(%rsp)
jmp    1f44 <main+0xce4>
movswl %ax,%edx
lea    0x172d(%rip),%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   1090 <printf@plt>
mov    0x5b0(%rsp),%rbp
mov    %rbp,%rdi
call   10e0 <feof@plt>
test   %rax,%rax
jne    1ab9 <main+0x859>
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x1588(%rip),%rsi
mov    %r14,%rdx
mov    %r13,%rcx
mov    0xa0(%rsp),%r8
mov    0x5b0(%rsp),%r9
xor    %eax,%eax
push   0x540(%rsp)
push   0x550(%rsp)
push   0x310(%rsp)
push   0x320(%rsp)
push   0x330(%rsp)
push   0x340(%rsp)
push   0x350(%rsp)
push   0x360(%rsp)
push   0x370(%rsp)
push   0x380(%rsp)
push   0x390(%rsp)
push   0x3a0(%rsp)
push   0x3b0(%rsp)
push   0x3c0(%rsp)
push   0x3d0(%rsp)
push   0x3e0(%rsp)
push   0x3f0(%rsp)
push   0x400(%rsp)
push   0x138(%rsp)
push   0x168(%rsp)
push   0x5f0(%rsp)
push   0x428(%rsp)
push   0x438(%rsp)
push   0x448(%rsp)
push   0x458(%rsp)
push   0x468(%rsp)
push   0x478(%rsp)
push   %rbx
push   0x638(%rsp)
push   0x648(%rsp)
push   0x4a0(%rsp)
push   0x4b0(%rsp)
push   0x4c0(%rsp)
push   0x4d0(%rsp)
push   0x4e0(%rsp)
push   0x4f0(%rsp)
push   0x500(%rsp)
push   0x510(%rsp)
push   0x520(%rsp)
push   0x530(%rsp)
push   0x540(%rsp)
push   0x550(%rsp)
push   0x560(%rsp)
push   0x570(%rsp)
push   0x580(%rsp)
push   0x590(%rsp)
push   0x5a0(%rsp)
push   0x5b0(%rsp)
push   0x5c0(%rsp)
push   0x5d0(%rsp)
push   0x5e0(%rsp)
push   0x5f0(%rsp)
push   0x600(%rsp)
push   0x610(%rsp)
push   0x620(%rsp)
push   0x630(%rsp)
push   0x640(%rsp)
push   0x650(%rsp)
push   0x660(%rsp)
push   0x670(%rsp)
push   0x680(%rsp)
push   0x690(%rsp)
push   0x6a0(%rsp)
push   0x6b0(%rsp)
push   0x6c0(%rsp)
push   0x6d0(%rsp)
push   0x6e0(%rsp)
push   0x6f0(%rsp)
push   0x700(%rsp)
push   0x710(%rsp)
push   0x720(%rsp)
push   0x730(%rsp)
push   0x740(%rsp)
push   0x750(%rsp)
push   0x760(%rsp)
push   0x770(%rsp)
push   0x780(%rsp)
push   0x790(%rsp)
push   0x7a0(%rsp)
push   0x7b0(%rsp)
push   0x7e8(%rsp)
push   0x7f8(%rsp)
push   0x808(%rsp)
push   0x818(%rsp)
push   0x828(%rsp)
push   0x838(%rsp)
push   0x848(%rsp)
push   0x858(%rsp)
push   0x868(%rsp)
call   10b0 <fscanf@plt>
add    $0x2d0,%rsp
cmp    $0x5d,%ax
jne    1f17 <main+0xcb7>
movswl 0x2(%rbx),%eax
cvtsi2sd %eax,%xmm0
movsd  0xe07(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%ebp
movswl (%rbx),%r14d
movswl 0x6(%rbx),%eax
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movswl 0x4(%rbx),%r15d
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
mov    %eax,0xb0(%rsp)
movswl 0x8(%rbx),%edx
mov    %edx,0x20(%rsp)
movswl 0xa(%rbx),%eax
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%eax
movswl 0xc(%rbx),%r12d
movswl 0xe(%rbx),%ecx
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
mulsd  %xmm1,%xmm0
cvttsd2si %xmm0,%ecx
movsd  0xa8(%rsp),%xmm0
movsd  %xmm0,(%rsp)
sub    %edx,%r12d
mov    %r12d,%edx
imul   %r12d,%edx
movswl %ax,%ebx
mov    %ebx,0x28(%rsp)
movswl %cx,%eax
sub    %eax,%ebx
mov    %ebx,%eax
imul   %ebx,%eax
add    %edx,%eax
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
call   1160 <sqrt@plt>
cwtl
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  (%rsp),%xmm1
divsd  %xmm0,%xmm1
movsd  %xmm1,(%rsp)
movsd  0xd0(%rsp),%xmm0
movsd  0xd8(%rsp),%xmm1
movsd  0xa8(%rsp),%xmm2
movapd %xmm1,%xmm3
movapd %xmm2,%xmm4
addsd  %xmm2,%xmm2
mulsd  %xmm1,%xmm2
movapd %xmm1,%xmm5
movapd 0xd85(%rip),%xmm1
xorpd  %xmm1,%xmm5
movapd %xmm5,0x10(%rsp)
mulsd  %xmm3,%xmm3
mulsd  %xmm4,%xmm4
addsd  %xmm3,%xmm4
movapd %xmm0,%xmm3
xorpd  %xmm1,%xmm3
movapd %xmm3,0x30(%rsp)
mulsd  %xmm0,%xmm0
subsd  %xmm0,%xmm4
divsd  %xmm2,%xmm4
cvttsd2si %xmm4,%eax
movswl %ax,%edi
call   10a0 <acos@plt>
call   10f0 <sin@plt>
mulsd  0x10(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
movsd  0xa8(%rsp),%xmm2
movsd  %xmm2,0x60(%rsp)
movsd  0xd8(%rsp),%xmm1
movapd %xmm1,%xmm0
movapd %xmm1,%xmm3
movsd  %xmm1,0x50(%rsp)
mulsd  %xmm1,%xmm0
movapd %xmm2,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xd0(%rsp),%xmm0
mulsd  %xmm0,%xmm0
subsd  %xmm0,%xmm1
movapd %xmm2,%xmm0
addsd  %xmm2,%xmm0
mulsd  %xmm3,%xmm0
divsd  %xmm0,%xmm1
cvttsd2si %xmm1,%eax
movswl %ax,%edi
call   10a0 <acos@plt>
call   1140 <cos@plt>
mulsd  0x50(%rsp),%xmm0
movsd  0x60(%rsp),%xmm1
subsd  %xmm0,%xmm1
movsd  0x10(%rsp),%xmm0
divsd  %xmm1,%xmm0
call   1100 <atan@plt>
xorps  %xmm1,%xmm1
cvtsi2sd %ebx,%xmm1
movsd  %xmm0,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %r12d,%xmm0
mov    %ebp,%r12d
divsd  %xmm0,%xmm1
movapd %xmm1,%xmm0
call   1100 <atan@plt>
movsd  %xmm0,0x50(%rsp)
movswl %r12w,%ebp
movswl 0xb0(%rsp),%eax
mov    %ebp,%ecx
sub    %eax,%ecx
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
sub    %r14d,%r15d
xorps  %xmm1,%xmm1
cvtsi2sd %r15d,%xmm1
mov    %r14d,%r15d
divsd  %xmm1,%xmm0
call   1100 <atan@plt>
movapd %xmm0,0xb0(%rsp)
movsd  0x50(%rsp),%xmm2
subsd  %xmm2,%xmm0
movsd  0xe0(%rsp),%xmm1
mulsd  0xbdc(%rip),%xmm1
addsd  %xmm0,%xmm1
movapd %xmm1,0x60(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sdl 0x20(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x10(%rsp),%xmm0
subsd  %xmm2,%xmm0
movsd  %xmm0,0x10(%rsp)
call   1140 <cos@plt>
movapd 0x30(%rsp),%xmm1
divsd  (%rsp),%xmm1
movapd %xmm1,0x30(%rsp)
mulsd  %xmm1,%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x48(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sdl 0x28(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x10(%rsp),%xmm0
call   10f0 <sin@plt>
movapd %xmm0,%xmm2
mulsd  0x30(%rsp),%xmm2
movsd  (%rsp),%xmm0
divsd  0xe8(%rsp),%xmm0
movsd  %xmm0,(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
addsd  0x28(%rsp),%xmm2
movsd  %xmm2,0x20(%rsp)
subsd  0x48(%rsp),%xmm1
movsd  %xmm1,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
movsd  %xmm0,0x28(%rsp)
subsd  %xmm2,%xmm0
mulsd  %xmm0,%xmm0
mulsd  %xmm1,%xmm1
movsd  %xmm1,0x48(%rsp)
addsd  %xmm1,%xmm0
call   1160 <sqrt@plt>
cwtl
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  (%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x20(%rsp),%xmm0
subsd  0x28(%rsp),%xmm0
mulsd  %xmm0,%xmm0
addsd  0x48(%rsp),%xmm0
call   1160 <sqrt@plt>
cwtl
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x10(%rsp),%xmm1
divsd  %xmm0,%xmm1
cvttsd2si %xmm1,%eax
movswl %ax,%edi
call   10a0 <acos@plt>
subsd  0x50(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
call   1140 <cos@plt>
mulsd  0x30(%rsp),%xmm0
addsd  0xaab(%rip),%xmm0
movsd  %xmm0,(%rsp)
movsd  0x10(%rsp),%xmm0
call   10f0 <sin@plt>
mulsd  0x30(%rsp),%xmm0
movsd  0xa95(%rip),%xmm1
subsd  %xmm0,%xmm1
movsd  (%rsp),%xmm2
addsd  0xa8c(%rip),%xmm2
movsd  %xmm2,(%rsp)
movsd  0xa87(%rip),%xmm0
subsd  %xmm1,%xmm0
movsd  %xmm0,0x10(%rsp)
movapd %xmm0,%xmm1
mulsd  %xmm0,%xmm1
movapd %xmm2,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1160 <sqrt@plt>
cwtl
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  (%rsp),%xmm0
divsd  0x10(%rsp),%xmm0
call   1100 <atan@plt>
addsd  0x60(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
call   10f0 <sin@plt>
mulsd  0x30(%rsp),%xmm0
addsd  0xa2f(%rip),%xmm0
movsd  %xmm0,(%rsp)
movsd  0x10(%rsp),%xmm0
call   1140 <cos@plt>
movswl 0xe(%rsp),%eax
xorps  %xmm1,%xmm1
cvtsi2sd %eax,%xmm1
subsd  (%rsp),%xmm1
cvttsd2si %xmm1,%eax
mulsd  0x30(%rsp),%xmm0
movsd  0x9f4(%rip),%xmm1
movswl 0xc(%rsp),%ecx
xorps  %xmm2,%xmm2
cvtsi2sd %ecx,%xmm2
subsd  %xmm0,%xmm1
subsd  %xmm1,%xmm2
cvttsd2si %xmm2,%ecx
movaps 0x60(%rsp),%xmm0
xorps  0xa08(%rip),%xmm0
movaps %xmm0,0x50(%rsp)
cwtl
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x20(%rsp)
movswl %cx,%eax
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x48(%rsp)
xor    %ebp,%ebp
mov    0x98(%rsp),%rbx
mov    0xc8(%rsp),%r14
jmp    26ae <main+0x144e>
nop
movw   $0xffff,0x0(%r13,%rbp,2)
ff
mov    $0xffff,%ax
mov    %ax,(%rbx,%rbp,2)
add    $0x1,%rbp
cmp    $0x20,%rbp
je     278a <main+0x152a>
movzwl 0x0(%r13,%rbp,2),%eax
cmp    $0xffff,%ax
je     2690 <main+0x1430>
cwtl
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movswl (%rbx,%rbp,2),%eax
xorps  %xmm1,%xmm1
cvtsi2sd %eax,%xmm1
mulsd  0x92b(%rip),%xmm1
addsd  0x95b(%rip),%xmm0
movsd  %xmm0,0x30(%rsp)
addsd  0x955(%rip),%xmm1
movsd  %xmm1,0x10(%rsp)
movaps 0x60(%rsp),%xmm0
call   1140 <cos@plt>
movsd  %xmm0,(%rsp)
movapd 0x50(%rsp),%xmm0
call   10f0 <sin@plt>
mulsd  0x10(%rsp),%xmm0
movsd  (%rsp),%xmm1
mulsd  0x30(%rsp),%xmm1
addsd  %xmm0,%xmm1
movsd  %xmm1,(%rsp)
movaps 0x60(%rsp),%xmm0
call   1140 <cos@plt>
movsd  %xmm0,0x28(%rsp)
movapd 0x50(%rsp),%xmm0
call   10f0 <sin@plt>
mulsd  0x30(%rsp),%xmm0
movsd  0x28(%rsp),%xmm1
mulsd  0x10(%rsp),%xmm1
subsd  %xmm0,%xmm1
movsd  (%rsp),%xmm0
addsd  0x8e5(%rip),%xmm0
addsd  0x20(%rsp),%xmm0
addsd  0x8df(%rip),%xmm1
cvttsd2si %xmm0,%eax
addsd  0x48(%rsp),%xmm1
mov    %ax,0x0(%r13,%rbp,2)
cvttsd2si %xmm1,%eax
jmp    269c <main+0x143c>
movsd  0xe0(%rsp),%xmm0
mulsd  0x86d(%rip),%xmm0
movapd 0xb0(%rsp),%xmm1
addsd  %xmm0,%xmm1
movapd %xmm1,0xb0(%rsp)
xorpd  0x8a7(%rip),%xmm1
movapd %xmm1,0x60(%rsp)
movzwl 0xe(%rsp),%eax
sub    %r15d,%eax
movzwl 0xc(%rsp),%ecx
sub    %r12d,%ecx
cwtl
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x28(%rsp)
movswl %cx,%eax
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x20(%rsp)
xor    %ebp,%ebp
mov    0x5c0(%rsp),%r15
mov    0x5b8(%rsp),%r12
mov    0xa0(%rsp),%rdx
jmp    282d <main+0x15cd>
nopl   0x0(%rax)
movw   $0xffff,(%r14,%rbp,2)
mov    $0xffff,%ax
mov    %ax,(%rdx,%rbp,2)
add    $0x1,%rbp
cmp    $0xa,%rbp
je     2915 <main+0x16b5>
movzwl (%r14,%rbp,2),%eax
cmp    $0xffff,%ax
je     2810 <main+0x15b0>
cwtl
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movswl (%rdx,%rbp,2),%eax
xorps  %xmm1,%xmm1
cvtsi2sd %eax,%xmm1
mulsd  0x7ad(%rip),%xmm1
addsd  0x7dd(%rip),%xmm0
movsd  %xmm0,0x30(%rsp)
addsd  0x7d7(%rip),%xmm1
movsd  %xmm1,0x10(%rsp)
movaps 0xb0(%rsp),%xmm0
call   1140 <cos@plt>
movsd  %xmm0,(%rsp)
movapd 0x60(%rsp),%xmm0
call   10f0 <sin@plt>
mulsd  0x10(%rsp),%xmm0
movsd  (%rsp),%xmm1
mulsd  0x30(%rsp),%xmm1
addsd  %xmm0,%xmm1
movsd  %xmm1,(%rsp)
movaps 0xb0(%rsp),%xmm0
call   1140 <cos@plt>
movsd  %xmm0,0x50(%rsp)
movapd 0x60(%rsp),%xmm0
call   10f0 <sin@plt>
mov    0xa0(%rsp),%rdx
mulsd  0x30(%rsp),%xmm0
movsd  0x50(%rsp),%xmm1
mulsd  0x10(%rsp),%xmm1
subsd  %xmm0,%xmm1
movsd  (%rsp),%xmm0
addsd  0x759(%rip),%xmm0
addsd  0x28(%rsp),%xmm0
addsd  0x753(%rip),%xmm1
cvttsd2si %xmm0,%eax
addsd  0x20(%rsp),%xmm1
mov    %ax,(%r14,%rbp,2)
cvttsd2si %xmm1,%eax
jmp    281b <main+0x15bb>
mov    0x90(%rsp),%rax
cmpb   $0x79,(%rax)
jne    2f25 <main+0x1cc5>
movswl 0x0(%r13),%ecx
movswl (%rbx),%r8d
movswl 0x2(%r13),%r9d
movswl 0x2(%rbx),%eax
mov    %rax,(%rsp)
movswl 0x4(%r13),%eax
mov    %rax,0x30(%rsp)
movswl 0x4(%rbx),%eax
mov    %rax,0x10(%rsp)
movswl 0x6(%r13),%eax
mov    %rax,0xb0(%rsp)
movswl 0x6(%rbx),%eax
mov    %rax,0x60(%rsp)
movswl 0x8(%r13),%eax
mov    %rax,0x50(%rsp)
movswl 0x8(%rbx),%eax
mov    %rax,0x28(%rsp)
movswl 0xa(%r13),%eax
mov    %rax,0x20(%rsp)
movswl 0xa(%rbx),%eax
mov    %rax,0x48(%rsp)
movswl 0xc(%r13),%eax
mov    %rax,0x2f0(%rsp)
movswl 0xc(%rbx),%eax
mov    %rax,0x2e8(%rsp)
movswl 0xe(%r13),%eax
mov    %rax,0x2e0(%rsp)
movswl 0xe(%rbx),%eax
mov    %rax,0x2d8(%rsp)
movswl 0x10(%r13),%eax
mov    %rax,0x2d0(%rsp)
movswl 0x10(%rbx),%eax
mov    %rax,0x2c8(%rsp)
movswl 0x12(%r13),%eax
mov    %rax,0x2c0(%rsp)
movswl 0x12(%rbx),%eax
mov    %rax,0x2b8(%rsp)
movswl 0x14(%r13),%eax
mov    %rax,0x2b0(%rsp)
movswl 0x14(%rbx),%eax
mov    %rax,0x2a8(%rsp)
movswl 0x16(%r13),%eax
mov    %rax,0x2a0(%rsp)
movswl 0x16(%rbx),%eax
mov    %rax,0x298(%rsp)
movswl 0x18(%r13),%eax
mov    %rax,0x290(%rsp)
movswl 0x18(%rbx),%eax
mov    %rax,0x288(%rsp)
movswl 0x1a(%r13),%eax
mov    %rax,0x280(%rsp)
movswl 0x1a(%rbx),%eax
mov    %rax,0x278(%rsp)
movswl 0x1c(%r13),%eax
mov    %rax,0x270(%rsp)
movswl 0x1c(%rbx),%eax
mov    %rax,0x268(%rsp)
movswl 0x1e(%r13),%eax
mov    %rax,0x260(%rsp)
movswl 0x1e(%rbx),%eax
mov    %rax,0x258(%rsp)
movswl 0x20(%r13),%eax
mov    %rax,0x250(%rsp)
movswl 0x20(%rbx),%eax
mov    %rax,0x248(%rsp)
movswl 0x22(%r13),%eax
mov    %rax,0x240(%rsp)
movswl 0x22(%rbx),%eax
mov    %rax,0x238(%rsp)
movswl 0x24(%r13),%eax
mov    %rax,0x230(%rsp)
movswl 0x24(%rbx),%eax
mov    %rax,0x228(%rsp)
movswl 0x26(%r13),%eax
mov    %rax,0x220(%rsp)
movswl 0x26(%rbx),%eax
mov    %rax,0x218(%rsp)
movswl 0x28(%r13),%eax
mov    %rax,0x210(%rsp)
movswl 0x28(%rbx),%eax
mov    %rax,0x208(%rsp)
movswl 0x2a(%r13),%eax
mov    %rax,0x200(%rsp)
movswl 0x2a(%rbx),%eax
mov    %rax,0x1f8(%rsp)
movswl 0x2c(%r13),%eax
mov    %rax,0x1f0(%rsp)
movswl 0x2c(%rbx),%eax
mov    %rax,0x1e8(%rsp)
movswl 0x2e(%r13),%eax
mov    %rax,0x1e0(%rsp)
movswl 0x2e(%rbx),%eax
mov    %rax,0x1d8(%rsp)
movswl 0x30(%r13),%eax
mov    %rax,0x1d0(%rsp)
movswl 0x30(%rbx),%eax
mov    %rax,0x1c8(%rsp)
movswl 0x32(%r13),%eax
mov    %rax,0x1c0(%rsp)
movswl 0x32(%rbx),%eax
mov    %rax,0x1b8(%rsp)
movswl 0x34(%r13),%eax
mov    %rax,0x1b0(%rsp)
movswl 0x34(%rbx),%eax
mov    %rax,0x1a8(%rsp)
movswl 0x36(%r13),%eax
mov    %rax,0x1a0(%rsp)
movswl 0x36(%rbx),%eax
mov    %rax,0x198(%rsp)
movswl 0x38(%r13),%eax
mov    %rax,0x190(%rsp)
movswl 0x38(%rbx),%eax
mov    %rax,0x188(%rsp)
movswl 0x3a(%r13),%eax
mov    %rax,0x180(%rsp)
movswl 0x3a(%rbx),%eax
mov    %rax,0x178(%rsp)
movswl 0x3c(%r13),%eax
mov    %rax,0x170(%rsp)
movswl 0x3c(%rbx),%eax
mov    %rax,0x168(%rsp)
movswl 0x3e(%r13),%eax
mov    %rax,0x160(%rsp)
movswl 0x3e(%rbx),%eax
mov    %rax,0x158(%rsp)
movswl (%r14),%eax
mov    %rax,0x150(%rsp)
movswl (%rdx),%eax
mov    %rax,0x148(%rsp)
movswl 0x2(%r14),%eax
mov    %rax,0x140(%rsp)
movswl 0x2(%rdx),%eax
mov    %rax,0x138(%rsp)
movswl 0x4(%r14),%eax
mov    %rax,0x130(%rsp)
movswl 0x4(%rdx),%eax
mov    %rax,0x128(%rsp)
movswl 0x6(%r14),%eax
mov    %rax,0x120(%rsp)
movswl 0x6(%rdx),%eax
mov    %rax,0x118(%rsp)
movswl 0x8(%r14),%eax
mov    %rax,0x110(%rsp)
movswl 0x8(%rdx),%eax
mov    %rax,0x108(%rsp)
movswl 0xa(%r14),%eax
mov    %rax,0x100(%rsp)
movswl 0xa(%rdx),%eax
mov    %rax,0xf8(%rsp)
movswl 0xc(%r14),%eax
mov    %rax,0xf0(%rsp)
movswl 0xc(%rdx),%ebx
mov    %r14,%rax
movswl 0xe(%r14),%r14d
movswl 0xe(%rdx),%r15d
movswl 0x10(%rax),%r10d
movswl 0x10(%rdx),%r11d
movswl 0x12(%rax),%r12d
movswl 0x12(%rdx),%ebp
sub    $0x8,%rsp
mov    0x80(%rsp),%rdi
lea    0x9ea(%rip),%rsi
mov    0x90(%rsp),%rdx
xor    %eax,%eax
push   %rbp
push   %r12
push   %r11
push   %r10
push   %r15
push   %r14
mov    %rdx,%r14
push   %rbx
push   0x130(%rsp)
push   0x140(%rsp)
push   0x150(%rsp)
push   0x160(%rsp)
push   0x170(%rsp)
push   0x180(%rsp)
push   0x190(%rsp)
push   0x1a0(%rsp)
push   0x1b0(%rsp)
push   0x1c0(%rsp)
push   0x1d0(%rsp)
push   0x1e0(%rsp)
push   0x1f0(%rsp)
push   0x200(%rsp)
push   0x210(%rsp)
push   0x220(%rsp)
push   0x230(%rsp)
push   0x240(%rsp)
push   0x250(%rsp)
push   0x260(%rsp)
push   0x270(%rsp)
push   0x280(%rsp)
push   0x290(%rsp)
push   0x2a0(%rsp)
push   0x2b0(%rsp)
push   0x2c0(%rsp)
push   0x2d0(%rsp)
push   0x2e0(%rsp)
push   0x2f0(%rsp)
push   0x300(%rsp)
push   0x310(%rsp)
push   0x320(%rsp)
push   0x330(%rsp)
push   0x340(%rsp)
push   0x350(%rsp)
push   0x360(%rsp)
push   0x370(%rsp)
push   0x380(%rsp)
push   0x390(%rsp)
push   0x3a0(%rsp)
push   0x3b0(%rsp)
push   0x3c0(%rsp)
push   0x3d0(%rsp)
push   0x3e0(%rsp)
push   0x3f0(%rsp)
push   0x400(%rsp)
push   0x410(%rsp)
push   0x420(%rsp)
push   0x430(%rsp)
push   0x440(%rsp)
push   0x450(%rsp)
push   0x460(%rsp)
push   0x470(%rsp)
push   0x480(%rsp)
push   0x490(%rsp)
push   0x4a0(%rsp)
push   0x4b0(%rsp)
push   0x4c0(%rsp)
push   0x4d0(%rsp)
push   0x4e0(%rsp)
push   0x4f0(%rsp)
push   0x500(%rsp)
push   0x510(%rsp)
push   0x520(%rsp)
push   0x530(%rsp)
push   0x290(%rsp)
push   0x270(%rsp)
push   0x280(%rsp)
push   0x2b0(%rsp)
push   0x2c8(%rsp)
push   0x320(%rsp)
push   0x288(%rsp)
push   0x2b0(%rsp)
push   0x288(%rsp)
call   10d0 <fprintf@plt>
add    $0x290,%rsp
mov    0x80(%rsp),%rbx
jmp    1f2b <main+0xccb>
mov    0x88(%rsp),%r14
mov    %r14,%rdi
lea    0x8f4(%rip),%rbx
mov    %rbx,%rsi
call   1120 <strpbrk@plt>
mov    %rax,%rbp
sub    %r14,%rbp
movswl %bp,%edx
mov    %r15,%rdi
mov    %r14,%rsi
call   1040 <strncpy@plt>
movswq %bp,%rax
movb   $0x0,(%r15,%rax,1)
mov    %r14,%rdi
mov    $0x5f,%esi
call   1080 <strchr@plt>
mov    %rax,%rbp
mov    %r14,%rdi
mov    %rbx,%rsi
call   1120 <strpbrk@plt>
sub    %rax,%rbp
movswl %bp,%edx
mov    %r12,%rdi
mov    %rax,%rsi
call   1040 <strncpy@plt>
movswq %bp,%rax
movb   $0x0,(%r12,%rax,1)
xor    %ebp,%ebp
mov    0x80(%rsp),%rbx
jmp    2fae <main+0x1d4e>
nopl   (%rax)
add    $0x1,%rbp
cmp    $0x20,%rbp
je     1f2b <main+0xccb>
movswl 0x0(%r13,%rbp,2),%r8d
cmp    $0xffffffff,%r8d
je     2fa0 <main+0x1d40>
mov    0x98(%rsp),%rax
movswl (%rax,%rbp,2),%r9d
mov    0x78(%rsp),%rdi
lea    0x863(%rip),%rsi
mov    %r15,%rdx
mov    %r12,%rcx
xor    %eax,%eax
call   10d0 <fprintf@plt>
jmp    2fa0 <main+0x1d40>

LLVM IR (-O0):
@.str = [13 x i8] c"settings.txt\00"
@.str.1 = [2 x i8] c"r\00"
@.str.2 = [28 x i8] c"Couldn't open settings.txt\0A\00"
@.str.3 = [16 x i8] c"OverlayX = %hd\0A\00"
@.str.4 = [34 x i8] c"Error reading value of: OverlayX\0A\00"
@.str.5 = [16 x i8] c"OverlayY = %hd\0A\00"
@.str.6 = [34 x i8] c"Error reading value of: OverlayY\0A\00"
@.str.7 = [13 x i8] c"Angle = %lf\0A\00"
@.str.8 = [31 x i8] c"Error reading value of: Angle\0A\00"
@.str.9 = [15 x i8] c"UsScale = %lf\0A\00"
@.str.10 = [33 x i8] c"Error reading value of: UsScale\0A\00"
@.str.11 = [32 x i8] c"distance_btwn_lower_dots = %lf\0A\00"
@.str.12 = [50 x i8] c"Error reading value of: distance_btwn_lower_dots\0A\00"
@.str.13 = [44 x i8] c"tip_of_transducer_to_lower_right_dot = %lf\0A\00"
@.str.14 = [62 x i8] c"Error reading value of: tip_of_transducer_to_lower_right_dot\0A\00"
@.str.15 = [43 x i8] c"tip_of_transducer_to_lower_left_dot = %lf\0A\00"
@.str.16 = [61 x i8] c"Error reading value of: tip_of_transducer_to_lower_left_dot\0A\00"
@.str.17 = [23 x i8] c"Using these settings:\0A\00"
@.str.18 = [2 x i8] c"\0A\00"
@.str.19 = [38 x i8] c"Enter the filename (without '.txt'): \00"
@.str.20 = [3 x i8] c"%s\00"
@.str.21 = [72 x i8] c"Would you like tab-delimited format instead of R/SSANOVA format? (y/n)\0A\00"
@.str.22 = [5 x i8] c".txt\00"
@.str.23 = [12 x i8] c"_output.txt\00"
@.str.24 = [25 x i8] c"Unable to open file: %s\0A\00"
@.str.25 = [2 x i8] c"w\00"
@.str.26 = [813 x i8] c"Filename Raw.R1.X Raw.R1.Y Raw.R2.X Raw.R2.Y Raw.R3.X Raw.R3.Y Raw.R4.X Raw.R4.Y Raw.R5.X Raw.R5.Y Raw.R6.X Raw.R6.Y Raw.R7.X Raw.R7.Y Raw.R8.X Raw.R8.Y Raw.R9.X Raw.R9.Y Raw.R10.X Raw.R10.Y Raw.R11.X Raw.R11.Y Raw.R12.X Raw.R12.Y Raw.R13.X Raw.R13.Y Raw.R14.X Raw.R14.Y Raw.R15.X Raw.R15.Y Raw.R16.X Raw.R16.Y Raw.R17.X Raw.R17.Y Raw.R18.X Raw.R18.Y Raw.R19.X Raw.R19.Y Raw.R20.X Raw.R20.Y Raw.R21.X Raw.R21.Y Raw.R22.X Raw.R22.Y Raw.R23.X Raw.R23.Y Raw.R24.X Raw.R24.Y Raw.R25.X Raw.R25.Y Raw.R26.X Raw.R26.Y Raw.R27.X Raw.R27.Y Raw.R28.X Raw.R28.Y Raw.R29.X Raw.R29.Y Raw.R30.X Raw.R30.Y Raw.R31.X Raw.R31.Y Raw.R32.X Raw.R32.Y UL.x UL.y UR.x UR.y LL.x LL.y LR.x LR.y Aux1.x Aux1.y Aux2.x Aux2.y Aux3.x Aux3.y Aux4.x Aux4.y Aux5.x Aux5.y Aux6.x Aux6.y Aux7.x Aux7.y Aux8.x Aux8.y Aux9.x Aux9.y Aux10.x Aux10.y\00"
@.str.27 = [10 x i8] c"Filename\09\00"
@.str.28 = [11 x i8] c"x.%i\09y.%i\09\00"
@.str.29 = [19 x i8] c"aux.x.%i\09aux.y.%i\09\00"
@.str.30 = [16 x i8] c"word\09token\09X\09Y\0A\00"
@.str.31 = [372 x i8] c"%s\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\0A\00"
@.str.32 = [137 x i8] c"\0AFor the entry \22%s\22, only %d items were read, whereas I was expecting 93. I'm going to skip that line and finish the rest of the file.\0A\0A\00"
@.str.33 = [340 x i8] c"%s\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\0A\00"
@.str.34 = [11 x i8] c"1234567890\00"
@.str.35 = [15 x i8] c"%s\09%s\09%hd\09%hd\0A\00"
define i32 @main(i32 %0, i8** %1) {
%3 = alloca i32
%4 = alloca i32
%5 = alloca i8**
%6 = alloca i32*
%7 = alloca i32*
%8 = alloca i32*
%9 = alloca i8*
%10 = alloca i8*
%11 = alloca i8*
%12 = alloca i8*
%13 = alloca i16
%14 = alloca i16
%15 = alloca i16
%16 = alloca i16
%17 = alloca i16
%18 = alloca i16
%19 = alloca i16
%20 = alloca i16
%21 = alloca i16
%22 = alloca i16
%23 = alloca i16
%24 = alloca i16
%25 = alloca double
%26 = alloca double
%27 = alloca double
%28 = alloca double
%29 = alloca double
%30 = alloca i16
%31 = alloca i16
%32 = alloca double
%33 = alloca i16
%34 = alloca i16
%35 = alloca i16
%36 = alloca double
%37 = alloca double
%38 = alloca double
%39 = alloca double
%40 = alloca i8*
%41 = alloca i8*
%42 = alloca i8*
%43 = alloca i16*
%44 = alloca i16*
%45 = alloca i16*
%46 = alloca i16*
%47 = alloca i16*
%48 = alloca double
%49 = alloca double
%50 = alloca double
%51 = alloca double
%52 = alloca double
%53 = alloca double
%54 = alloca double
%55 = alloca double
%56 = alloca double
%57 = alloca double
%58 = alloca double
%59 = alloca double
%60 = alloca double
%61 = alloca double
%62 = alloca double
%63 = alloca double
%64 = alloca double
%65 = alloca double
%66 = alloca double
%67 = alloca double
store i32 0, i32* %3
store i32 %0, i32* %4
store i8** %1, i8*** %5
%68 = call i64 @malloc(i32 50)
%69 = inttoptr i64 %68 to i8*
store i8* %69, i8** %9
%70 = call i64 @malloc(i32 50)
%71 = inttoptr i64 %70 to i8*
store i8* %71, i8** %10
%72 = call i64 @malloc(i32 50)
%73 = inttoptr i64 %72 to i8*
store i8* %73, i8** %11
%74 = call i64 @malloc(i32 200)
%75 = inttoptr i64 %74 to i8*
store i8* %75, i8** %12
%76 = call i64 @malloc(i32 200)
%77 = inttoptr i64 %76 to i8*
store i8* %77, i8** %40
%78 = call i64 @malloc(i32 200)
%79 = inttoptr i64 %78 to i8*
store i8* %79, i8** %41
%80 = call i64 @malloc(i32 1)
%81 = inttoptr i64 %80 to i8*
store i8* %81, i8** %42
%82 = call i64 @malloc(i32 64)
%83 = inttoptr i64 %82 to i16*
store i16* %83, i16** %43
%84 = call i64 @malloc(i32 64)
%85 = inttoptr i64 %84 to i16*
store i16* %85, i16** %44
%86 = call i64 @malloc(i32 16)
%87 = inttoptr i64 %86 to i16*
store i16* %87, i16** %45
%88 = call i64 @malloc(i32 20)
%89 = inttoptr i64 %88 to i16*
store i16* %89, i16** %46
%90 = call i64 @malloc(i32 20)
%91 = inttoptr i64 %90 to i16*
store i16* %91, i16** %47
%92 = call i32* @fopen(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0))
store i32* %92, i32** %8
%93 = load i32*, i32** %8
%94 = icmp eq i32* %93, null
br i1 %94, label %95, label %97
95: ; preds = %2
%96 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.2, i64 0, i64 0))
store i32 -1, i32* %3
br label %1382
97: ; preds = %2
%98 = load i32*, i32** %8
%99 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %98, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.3, i64 0, i64 0), i16* %23)
%100 = sext i16 %99 to i32
%101 = icmp eq i32 %100, 0
br i1 %101, label %102, label %104
102: ; preds = %97
%103 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.4, i64 0, i64 0))
store i32 -1, i32* %3
br label %1382
104: ; preds = %97
%105 = load i32*, i32** %8
%106 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %105, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.5, i64 0, i64 0), i16* %24)
%107 = sext i16 %106 to i32
%108 = icmp eq i32 %107, 0
br i1 %108, label %109, label %111
109: ; preds = %104
%110 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.6, i64 0, i64 0))
store i32 -1, i32* %3
br label %1382
111: ; preds = %104
%112 = load i32*, i32** %8
%113 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %112, i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.7, i64 0, i64 0), double* %25)
%114 = sext i16 %113 to i32
%115 = icmp eq i32 %114, 0
br i1 %115, label %116, label %118
116: ; preds = %111
%117 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.8, i64 0, i64 0))
store i32 -1, i32* %3
br label %1382
118: ; preds = %111
%119 = load i32*, i32** %8
%120 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %119, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.9, i64 0, i64 0), double* %26)
%121 = sext i16 %120 to i32
%122 = icmp eq i32 %121, 0
br i1 %122, label %123, label %125
123: ; preds = %118
%124 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.10, i64 0, i64 0))
store i32 -1, i32* %3
br label %1382
125: ; preds = %118
%126 = load i32*, i32** %8
%127 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %126, i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.11, i64 0, i64 0), double* %27)
%128 = sext i16 %127 to i32
%129 = icmp eq i32 %128, 0
br i1 %129, label %130, label %132
130: ; preds = %125
%131 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([50 x i8], [50 x i8]* @.str.12, i64 0, i64 0))
store i32 -1, i32* %3
br label %1382
132: ; preds = %125
%133 = load i32*, i32** %8
%134 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %133, i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str.13, i64 0, i64 0), double* %28)
%135 = sext i16 %134 to i32
%136 = icmp eq i32 %135, 0
br i1 %136, label %137, label %139
137: ; preds = %132
%138 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([62 x i8], [62 x i8]* @.str.14, i64 0, i64 0))
store i32 -1, i32* %3
br label %1382
139: ; preds = %132
%140 = load i32*, i32** %8
%141 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %140, i8* getelementptr inbounds ([43 x i8], [43 x i8]* @.str.15, i64 0, i64 0), double* %29)
%142 = sext i16 %141 to i32
%143 = icmp eq i32 %142, 0
br i1 %143, label %144, label %146
144: ; preds = %139
%145 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([61 x i8], [61 x i8]* @.str.16, i64 0, i64 0))
store i32 -1, i32* %3
br label %1382
146: ; preds = %139
%147 = load i32*, i32** %8
%148 = call i32 @fclose(i32* %147)
%149 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.17, i64 0, i64 0))
%150 = load i16, i16* %23
%151 = sext i16 %150 to i32
%152 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.3, i64 0, i64 0), i32 %151)
%153 = load i16, i16* %24
%154 = sext i16 %153 to i32
%155 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.5, i64 0, i64 0), i32 %154)
%156 = load double, double* %25
%157 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.7, i64 0, i64 0), double %156)
%158 = load double, double* %26
%159 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.9, i64 0, i64 0), double %158)
%160 = load double, double* %27
%161 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.11, i64 0, i64 0), double %160)
%162 = load double, double* %28
%163 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str.13, i64 0, i64 0), double %162)
%164 = load double, double* %29
%165 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([43 x i8], [43 x i8]* @.str.15, i64 0, i64 0), double %164)
%166 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.18, i64 0, i64 0))
%167 = load i32, i32* %4
%168 = icmp slt i32 %167, 2
br i1 %168, label %169, label %173
169: ; preds = %146
%170 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([38 x i8], [38 x i8]* @.str.19, i64 0, i64 0))
%171 = load i8*, i8** %9
%172 = call i32 @scanf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.20, i64 0, i64 0), i8* %171)
br label %179
173: ; preds = %146
%174 = load i8*, i8** %9
%175 = load i8**, i8*** %5
%176 = getelementptr inbounds i8*, i8** %175, i64 1
%177 = load i8*, i8** %176
%178 = call i32 @strcpy(i8* %174, i8* %177)
br label %179
179: ; preds = %173, %169
%180 = load i32, i32* %4
%181 = icmp slt i32 %180, 3
br i1 %181, label %182, label %186
182: ; preds = %179
%183 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([72 x i8], [72 x i8]* @.str.21, i64 0, i64 0))
%184 = load i8*, i8** %42
%185 = call i32 @scanf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.20, i64 0, i64 0), i8* %184)
br label %192
186: ; preds = %179
%187 = load i8**, i8*** %5
%188 = getelementptr inbounds i8*, i8** %187, i64 2
%189 = load i8*, i8** %188
%190 = load i8, i8* %189
%191 = load i8*, i8** %42
store i8 %190, i8* %191
br label %192
192: ; preds = %186, %182
%193 = load i8*, i8** %10
%194 = load i8*, i8** %9
%195 = call i32 @strcpy(i8* %193, i8* %194)
%196 = load i8*, i8** %10
%197 = call i32 @strcat(i8* %196, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.22, i64 0, i64 0))
%198 = load i8*, i8** %11
%199 = load i8*, i8** %9
%200 = call i32 @strcpy(i8* %198, i8* %199)
%201 = load i8*, i8** %11
%202 = call i32 @strcat(i8* %201, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.23, i64 0, i64 0))
%203 = load i8*, i8** %10
%204 = call i32* @fopen(i8* %203, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0))
store i32* %204, i32** %6
%205 = load i32*, i32** %6
%206 = icmp eq i32* %205, null
br i1 %206, label %207, label %210
207: ; preds = %192
%208 = load i8*, i8** %10
%209 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.24, i64 0, i64 0), i8* %208)
store i32 -1, i32* %3
br label %1382
210: ; preds = %192
%211 = load i8*, i8** %11
%212 = call i32* @fopen(i8* %211, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.25, i64 0, i64 0))
store i32* %212, i32** %7
%213 = load i32*, i32** %7
%214 = icmp eq i32* %213, null
br i1 %214, label %215, label %218
215: ; preds = %210
%216 = load i8*, i8** %11
%217 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.24, i64 0, i64 0), i8* %216)
store i32 -1, i32* %3
br label %1382
218: ; preds = %210
%219 = load i32*, i32** %6
%220 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %219, i8* getelementptr inbounds ([813 x i8], [813 x i8]* @.str.26, i64 0, i64 0))
store double 3.605000e+02, double* %53
store double 2.670000e+02, double* %54
store double 3.900000e+02, double* %56
store double 4.160000e+02, double* %57
%221 = load i8*, i8** %42
%222 = load i8, i8* %221
%223 = sext i8 %222 to i32
%224 = icmp eq i32 %223, 121
br i1 %224, label %225, label %264
225: ; preds = %218
%226 = load i32*, i32** %7
%227 = call i32 (i32*, i8*, ...) @fprintf(i32* %226, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.27, i64 0, i64 0))
store i16 0, i16* %33
br label %228
228: ; preds = %241, %225
%229 = load i16, i16* %33
%230 = sext i16 %229 to i32
%231 = icmp slt i32 %230, 32
br i1 %231, label %232, label %244
232: ; preds = %228
%233 = load i32*, i32** %7
%234 = load i16, i16* %33
%235 = sext i16 %234 to i32
%236 = add nsw i32 %235, 1
%237 = load i16, i16* %33
%238 = sext i16 %237 to i32
%239 = add nsw i32 %238, 1
%240 = call i32 (i32*, i8*, ...) @fprintf(i32* %233, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 %236, i32 %239)
br label %241
241: ; preds = %232
%242 = load i16, i16* %33
%243 = add i16 %242, 1
store i16 %243, i16* %33
br label %228
244: ; preds = %228
store i16 0, i16* %33
br label %245
245: ; preds = %258, %244
%246 = load i16, i16* %33
%247 = sext i16 %246 to i32
%248 = icmp slt i32 %247, 10
br i1 %248, label %249, label %261
249: ; preds = %245
%250 = load i32*, i32** %7
%251 = load i16, i16* %33
%252 = sext i16 %251 to i32
%253 = add nsw i32 %252, 1
%254 = load i16, i16* %33
%255 = sext i16 %254 to i32
%256 = add nsw i32 %255, 1
%257 = call i32 (i32*, i8*, ...) @fprintf(i32* %250, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 %253, i32 %256)
br label %258
258: ; preds = %249
%259 = load i16, i16* %33
%260 = add i16 %259, 1
store i16 %260, i16* %33
br label %245
261: ; preds = %245
%262 = load i32*, i32** %7
%263 = call i32 (i32*, i8*, ...) @fprintf(i32* %262, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.18, i64 0, i64 0))
br label %267
264: ; preds = %218
%265 = load i32*, i32** %7
%266 = call i32 (i32*, i8*, ...) @fprintf(i32* %265, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.30, i64 0, i64 0))
br label %267
267: ; preds = %264, %261
br label %268
268: ; preds = %1376, %458, %267
%269 = load i32*, i32** %6
%270 = call i64 @feof(i32* %269)
%271 = icmp eq i64 0, %270
br i1 %271, label %272, label %1377
272: ; preds = %268
%273 = load i32*, i32** %6
%274 = load i8*, i8** %12
%275 = load i16*, i16** %43
%276 = load i16*, i16** %44
%277 = load i16*, i16** %43
%278 = getelementptr inbounds i16, i16* %277, i64 1
%279 = load i16*, i16** %44
%280 = getelementptr inbounds i16, i16* %279, i64 1
%281 = load i16*, i16** %43
%282 = getelementptr inbounds i16, i16* %281, i64 2
%283 = load i16*, i16** %44
%284 = getelementptr inbounds i16, i16* %283, i64 2
%285 = load i16*, i16** %43
%286 = getelementptr inbounds i16, i16* %285, i64 3
%287 = load i16*, i16** %44
%288 = getelementptr inbounds i16, i16* %287, i64 3
%289 = load i16*, i16** %43
%290 = getelementptr inbounds i16, i16* %289, i64 4
%291 = load i16*, i16** %44
%292 = getelementptr inbounds i16, i16* %291, i64 4
%293 = load i16*, i16** %43
%294 = getelementptr inbounds i16, i16* %293, i64 5
%295 = load i16*, i16** %44
%296 = getelementptr inbounds i16, i16* %295, i64 5
%297 = load i16*, i16** %43
%298 = getelementptr inbounds i16, i16* %297, i64 6
%299 = load i16*, i16** %44
%300 = getelementptr inbounds i16, i16* %299, i64 6
%301 = load i16*, i16** %43
%302 = getelementptr inbounds i16, i16* %301, i64 7
%303 = load i16*, i16** %44
%304 = getelementptr inbounds i16, i16* %303, i64 7
%305 = load i16*, i16** %43
%306 = getelementptr inbounds i16, i16* %305, i64 8
%307 = load i16*, i16** %44
%308 = getelementptr inbounds i16, i16* %307, i64 8
%309 = load i16*, i16** %43
%310 = getelementptr inbounds i16, i16* %309, i64 9
%311 = load i16*, i16** %44
%312 = getelementptr inbounds i16, i16* %311, i64 9
%313 = load i16*, i16** %43
%314 = getelementptr inbounds i16, i16* %313, i64 10
%315 = load i16*, i16** %44
%316 = getelementptr inbounds i16, i16* %315, i64 10
%317 = load i16*, i16** %43
%318 = getelementptr inbounds i16, i16* %317, i64 11
%319 = load i16*, i16** %44
%320 = getelementptr inbounds i16, i16* %319, i64 11
%321 = load i16*, i16** %43
%322 = getelementptr inbounds i16, i16* %321, i64 12
%323 = load i16*, i16** %44
%324 = getelementptr inbounds i16, i16* %323, i64 12
%325 = load i16*, i16** %43
%326 = getelementptr inbounds i16, i16* %325, i64 13
%327 = load i16*, i16** %44
%328 = getelementptr inbounds i16, i16* %327, i64 13
%329 = load i16*, i16** %43
%330 = getelementptr inbounds i16, i16* %329, i64 14
%331 = load i16*, i16** %44
%332 = getelementptr inbounds i16, i16* %331, i64 14
%333 = load i16*, i16** %43
%334 = getelementptr inbounds i16, i16* %333, i64 15
%335 = load i16*, i16** %44
%336 = getelementptr inbounds i16, i16* %335, i64 15
%337 = load i16*, i16** %43
%338 = getelementptr inbounds i16, i16* %337, i64 16
%339 = load i16*, i16** %44
%340 = getelementptr inbounds i16, i16* %339, i64 16
%341 = load i16*, i16** %43
%342 = getelementptr inbounds i16, i16* %341, i64 17
%343 = load i16*, i16** %44
%344 = getelementptr inbounds i16, i16* %343, i64 17
%345 = load i16*, i16** %43
%346 = getelementptr inbounds i16, i16* %345, i64 18
%347 = load i16*, i16** %44
%348 = getelementptr inbounds i16, i16* %347, i64 18
%349 = load i16*, i16** %43
%350 = getelementptr inbounds i16, i16* %349, i64 19
%351 = load i16*, i16** %44
%352 = getelementptr inbounds i16, i16* %351, i64 19
%353 = load i16*, i16** %43
%354 = getelementptr inbounds i16, i16* %353, i64 20
%355 = load i16*, i16** %44
%356 = getelementptr inbounds i16, i16* %355, i64 20
%357 = load i16*, i16** %43
%358 = getelementptr inbounds i16, i16* %357, i64 21
%359 = load i16*, i16** %44
%360 = getelementptr inbounds i16, i16* %359, i64 21
%361 = load i16*, i16** %43
%362 = getelementptr inbounds i16, i16* %361, i64 22
%363 = load i16*, i16** %44
%364 = getelementptr inbounds i16, i16* %363, i64 22
%365 = load i16*, i16** %43
%366 = getelementptr inbounds i16, i16* %365, i64 23
%367 = load i16*, i16** %44
%368 = getelementptr inbounds i16, i16* %367, i64 23
%369 = load i16*, i16** %43
%370 = getelementptr inbounds i16, i16* %369, i64 24
%371 = load i16*, i16** %44
%372 = getelementptr inbounds i16, i16* %371, i64 24
%373 = load i16*, i16** %43
%374 = getelementptr inbounds i16, i16* %373, i64 25
%375 = load i16*, i16** %44
%376 = getelementptr inbounds i16, i16* %375, i64 25
%377 = load i16*, i16** %43
%378 = getelementptr inbounds i16, i16* %377, i64 26
%379 = load i16*, i16** %44
%380 = getelementptr inbounds i16, i16* %379, i64 26
%381 = load i16*, i16** %43
%382 = getelementptr inbounds i16, i16* %381, i64 27
%383 = load i16*, i16** %44
%384 = getelementptr inbounds i16, i16* %383, i64 27
%385 = load i16*, i16** %43
%386 = getelementptr inbounds i16, i16* %385, i64 28
%387 = load i16*, i16** %44
%388 = getelementptr inbounds i16, i16* %387, i64 28
%389 = load i16*, i16** %43
%390 = getelementptr inbounds i16, i16* %389, i64 29
%391 = load i16*, i16** %44
%392 = getelementptr inbounds i16, i16* %391, i64 29
%393 = load i16*, i16** %43
%394 = getelementptr inbounds i16, i16* %393, i64 30
%395 = load i16*, i16** %44
%396 = getelementptr inbounds i16, i16* %395, i64 30
%397 = load i16*, i16** %43
%398 = getelementptr inbounds i16, i16* %397, i64 31
%399 = load i16*, i16** %44
%400 = getelementptr inbounds i16, i16* %399, i64 31
%401 = load i16*, i16** %45
%402 = load i16*, i16** %45
%403 = getelementptr inbounds i16, i16* %402, i64 1
%404 = load i16*, i16** %45
%405 = getelementptr inbounds i16, i16* %404, i64 2
%406 = load i16*, i16** %45
%407 = getelementptr inbounds i16, i16* %406, i64 3
%408 = load i16*, i16** %45
%409 = getelementptr inbounds i16, i16* %408, i64 4
%410 = load i16*, i16** %45
%411 = getelementptr inbounds i16, i16* %410, i64 5
%412 = load i16*, i16** %45
%413 = getelementptr inbounds i16, i16* %412, i64 6
%414 = load i16*, i16** %45
%415 = getelementptr inbounds i16, i16* %414, i64 7
%416 = load i16*, i16** %46
%417 = load i16*, i16** %47
%418 = load i16*, i16** %46
%419 = getelementptr inbounds i16, i16* %418, i64 1
%420 = load i16*, i16** %47
%421 = getelementptr inbounds i16, i16* %420, i64 1
%422 = load i16*, i16** %46
%423 = getelementptr inbounds i16, i16* %422, i64 2
%424 = load i16*, i16** %47
%425 = getelementptr inbounds i16, i16* %424, i64 2
%426 = load i16*, i16** %46
%427 = getelementptr inbounds i16, i16* %426, i64 3
%428 = load i16*, i16** %47
%429 = getelementptr inbounds i16, i16* %428, i64 3
%430 = load i16*, i16** %46
%431 = getelementptr inbounds i16, i16* %430, i64 4
%432 = load i16*, i16** %47
%433 = getelementptr inbounds i16, i16* %432, i64 4
%434 = load i16*, i16** %46
%435 = getelementptr inbounds i16, i16* %434, i64 5
%436 = load i16*, i16** %47
%437 = getelementptr inbounds i16, i16* %436, i64 5
%438 = load i16*, i16** %46
%439 = getelementptr inbounds i16, i16* %438, i64 6
%440 = load i16*, i16** %47
%441 = getelementptr inbounds i16, i16* %440, i64 6
%442 = load i16*, i16** %46
%443 = getelementptr inbounds i16, i16* %442, i64 7
%444 = load i16*, i16** %47
%445 = getelementptr inbounds i16, i16* %444, i64 7
%446 = load i16*, i16** %46
%447 = getelementptr inbounds i16, i16* %446, i64 8
%448 = load i16*, i16** %47
%449 = getelementptr inbounds i16, i16* %448, i64 8
%450 = load i16*, i16** %46
%451 = getelementptr inbounds i16, i16* %450, i64 9
%452 = load i16*, i16** %47
%453 = getelementptr inbounds i16, i16* %452, i64 9
%454 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %273, i8* getelementptr inbounds ([372 x i8], [372 x i8]* @.str.31, i64 0, i64 0), i8* %274, i16* %275, i16* %276, i16* %278, i16* %280, i16* %282, i16* %284, i16* %286, i16* %288, i16* %290, i16* %292, i16* %294, i16* %296, i16* %298, i16* %300, i16* %302, i16* %304, i16* %306, i16* %308, i16* %310, i16* %312, i16* %314, i16* %316, i16* %318, i16* %320, i16* %322, i16* %324, i16* %326, i16* %328, i16* %330, i16* %332, i16* %334, i16* %336, i16* %338, i16* %340, i16* %342, i16* %344, i16* %346, i16* %348, i16* %350, i16* %352, i16* %354, i16* %356, i16* %358, i16* %360, i16* %362, i16* %364, i16* %366, i16* %368, i16* %370, i16* %372, i16* %374, i16* %376, i16* %378, i16* %380, i16* %382, i16* %384, i16* %386, i16* %388, i16* %390, i16* %392, i16* %394, i16* %396, i16* %398, i16* %400, i16* %401, i16* %403, i16* %405, i16* %407, i16* %409, i16* %411, i16* %413, i16* %415, i16* %416, i16* %417, i16* %419, i16* %421, i16* %423, i16* %425, i16* %427, i16* %429, i16* %431, i16* %433, i16* %435, i16* %437, i16* %439, i16* %441, i16* %443, i16* %445, i16* %447, i16* %449, i16* %451, i16* %453)
store i16 %454, i16* %34
%455 = load i16, i16* %34
%456 = sext i16 %455 to i32
%457 = icmp ne i32 %456, 93
br i1 %457, label %458, label %463
458: ; preds = %272
%459 = load i8*, i8** %12
%460 = load i16, i16* %34
%461 = sext i16 %460 to i32
%462 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([137 x i8], [137 x i8]* @.str.32, i64 0, i64 0), i8* %459, i32 %461)
br label %268
463: ; preds = %272
%464 = load i16*, i16** %45
%465 = getelementptr inbounds i16, i16* %464, i64 0
%466 = load i16, i16* %465
store i16 %466, i16* %14
%467 = load i16*, i16** %45
%468 = getelementptr inbounds i16, i16* %467, i64 1
%469 = load i16, i16* %468
%470 = sext i16 %469 to i32
%471 = sitofp i32 %470 to double
%472 = fmul double %471, 0x3FF1C44444444444
%473 = fptosi double %472 to i16
store i16 %473, i16* %15
%474 = load i16*, i16** %45
%475 = getelementptr inbounds i16, i16* %474, i64 2
%476 = load i16, i16* %475
store i16 %476, i16* %16
%477 = load i16*, i16** %45
%478 = getelementptr inbounds i16, i16* %477, i64 3
%479 = load i16, i16* %478
%480 = sext i16 %479 to i32
%481 = sitofp i32 %480 to double
%482 = fmul double %481, 0x3FF1C44444444444
%483 = fptosi double %482 to i16
store i16 %483, i16* %17
%484 = load i16*, i16** %45
%485 = getelementptr inbounds i16, i16* %484, i64 4
%486 = load i16, i16* %485
store i16 %486, i16* %18
%487 = load i16*, i16** %45
%488 = getelementptr inbounds i16, i16* %487, i64 5
%489 = load i16, i16* %488
%490 = sext i16 %489 to i32
%491 = sitofp i32 %490 to double
%492 = fmul double %491, 0x3FF1C44444444444
%493 = fptosi double %492 to i16
store i16 %493, i16* %19
%494 = load i16*, i16** %45
%495 = getelementptr inbounds i16, i16* %494, i64 6
%496 = load i16, i16* %495
store i16 %496, i16* %20
%497 = load i16*, i16** %45
%498 = getelementptr inbounds i16, i16* %497, i64 7
%499 = load i16, i16* %498
%500 = sext i16 %499 to i32
%501 = sitofp i32 %500 to double
%502 = fmul double %501, 0x3FF1C44444444444
%503 = fptosi double %502 to i16
store i16 %503, i16* %21
%504 = load double, double* %27
%505 = load i16, i16* %20
%506 = sext i16 %505 to i32
%507 = load i16, i16* %18
%508 = sext i16 %507 to i32
%509 = sub nsw i32 %506, %508
%510 = load i16, i16* %20
%511 = sext i16 %510 to i32
%512 = load i16, i16* %18
%513 = sext i16 %512 to i32
%514 = sub nsw i32 %511, %513
%515 = mul nsw i32 %509, %514
%516 = load i16, i16* %19
%517 = sext i16 %516 to i32
%518 = load i16, i16* %21
%519 = sext i16 %518 to i32
%520 = sub nsw i32 %517, %519
%521 = load i16, i16* %19
%522 = sext i16 %521 to i32
%523 = load i16, i16* %21
%524 = sext i16 %523 to i32
%525 = sub nsw i32 %522, %524
%526 = mul nsw i32 %520, %525
%527 = add nsw i32 %515, %526
%528 = sitofp i32 %527 to double
%529 = call signext i16 @sqrt(double %528)
%530 = sext i16 %529 to i32
%531 = sitofp i32 %530 to double
%532 = fdiv double %504, %531
store double %532, double* %52
%533 = load double, double* %29
%534 = load double, double* %52
%535 = fdiv double %533, %534
store double %535, double* %58
%536 = load double, double* %28
%537 = fmul double -1.000000e+00, %536
%538 = load double, double* %27
%539 = load double, double* %27
%540 = load double, double* %28
%541 = load double, double* %28
%542 = fmul double %540, %541
%543 = call double @llvm.fmuladd.f64(double %538, double %539, double %542)
%544 = load double, double* %29
%545 = load double, double* %29
%546 = fneg double %544
%547 = call double @llvm.fmuladd.f64(double %546, double %545, double %543)
%548 = load double, double* %27
%549 = fmul double 2.000000e+00, %548
%550 = load double, double* %28
%551 = fmul double %549, %550
%552 = fdiv double %547, %551
%553 = fptosi double %552 to i16
%554 = call double @acos(i16 signext %553)
%555 = call double @sin(double %554)
%556 = fmul double %537, %555
%557 = load double, double* %27
%558 = load double, double* %28
%559 = load double, double* %27
%560 = load double, double* %27
%561 = load double, double* %28
%562 = load double, double* %28
%563 = fmul double %561, %562
%564 = call double @llvm.fmuladd.f64(double %559, double %560, double %563)
%565 = load double, double* %29
%566 = load double, double* %29
%567 = fneg double %565
%568 = call double @llvm.fmuladd.f64(double %567, double %566, double %564)
%569 = load double, double* %27
%570 = fmul double 2.000000e+00, %569
%571 = load double, double* %28
%572 = fmul double %570, %571
%573 = fdiv double %568, %572
%574 = fptosi double %573 to i16
%575 = call double @acos(i16 signext %574)
%576 = call double @cos(double %575)
%577 = fneg double %558
%578 = call double @llvm.fmuladd.f64(double %577, double %576, double %557)
%579 = fdiv double %556, %578
%580 = call double @atan(double %579)
store double %580, double* %59
%581 = load i16, i16* %19
%582 = sext i16 %581 to i32
%583 = load i16, i16* %21
%584 = sext i16 %583 to i32
%585 = sub nsw i32 %582, %584
%586 = sitofp i32 %585 to double
%587 = load i16, i16* %20
%588 = sext i16 %587 to i32
%589 = load i16, i16* %18
%590 = sext i16 %589 to i32
%591 = sub nsw i32 %588, %590
%592 = sitofp i32 %591 to double
%593 = fdiv double %586, %592
%594 = call double @atan(double %593)
store double %594, double* %55
%595 = load i16, i16* %15
%596 = sext i16 %595 to i32
%597 = load i16, i16* %17
%598 = sext i16 %597 to i32
%599 = sub nsw i32 %596, %598
%600 = sitofp i32 %599 to double
%601 = load i16, i16* %16
%602 = sext i16 %601 to i32
%603 = load i16, i16* %14
%604 = sext i16 %603 to i32
%605 = sub nsw i32 %602, %604
%606 = sitofp i32 %605 to double
%607 = fdiv double %600, %606
%608 = call double @atan(double %607)
store double %608, double* %60
%609 = load double, double* %60
%610 = load double, double* %55
%611 = fsub double %609, %610
store double %611, double* %61
%612 = load double, double* %61
%613 = load double, double* %25
%614 = fneg double %613
%615 = call double @llvm.fmuladd.f64(double %614, double 0xBF91DF46A2529D39, double %612)
store double %615, double* %32
%616 = load i16, i16* %18
%617 = sext i16 %616 to i32
%618 = sitofp i32 %617 to double
%619 = load double, double* %58
%620 = load double, double* %59
%621 = load double, double* %55
%622 = fsub double %620, %621
%623 = call double @cos(double %622)
%624 = fneg double %619
%625 = call double @llvm.fmuladd.f64(double %624, double %623, double %618)
store double %625, double* %50
%626 = load i16, i16* %19
%627 = sext i16 %626 to i32
%628 = sitofp i32 %627 to double
%629 = load double, double* %58
%630 = load double, double* %59
%631 = load double, double* %55
%632 = fsub double %630, %631
%633 = call double @sin(double %632)
%634 = fneg double %629
%635 = call double @llvm.fmuladd.f64(double %634, double %633, double %628)
store double %635, double* %51
%636 = load double, double* %52
%637 = load double, double* %26
%638 = fdiv double %636, %637
%639 = load i16, i16* %14
%640 = sext i16 %639 to i32
%641 = sitofp i32 %640 to double
%642 = load double, double* %50
%643 = fsub double %641, %642
%644 = load i16, i16* %14
%645 = sext i16 %644 to i32
%646 = sitofp i32 %645 to double
%647 = load double, double* %50
%648 = fsub double %646, %647
%649 = load i16, i16* %15
%650 = sext i16 %649 to i32
%651 = sitofp i32 %650 to double
%652 = load double, double* %51
%653 = fsub double %651, %652
%654 = load i16, i16* %15
%655 = sext i16 %654 to i32
%656 = sitofp i32 %655 to double
%657 = load double, double* %51
%658 = fsub double %656, %657
%659 = fmul double %653, %658
%660 = call double @llvm.fmuladd.f64(double %643, double %648, double %659)
%661 = call signext i16 @sqrt(double %660)
%662 = sext i16 %661 to i32
%663 = sitofp i32 %662 to double
%664 = fmul double %638, %663
store double %664, double* %48
%665 = load i16, i16* %14
%666 = sext i16 %665 to i32
%667 = sitofp i32 %666 to double
%668 = load double, double* %50
%669 = fsub double %667, %668
%670 = load i16, i16* %14
%671 = sext i16 %670 to i32
%672 = sitofp i32 %671 to double
%673 = load double, double* %50
%674 = fsub double %672, %673
%675 = load i16, i16* %14
%676 = sext i16 %675 to i32
%677 = sitofp i32 %676 to double
%678 = load double, double* %50
%679 = fsub double %677, %678
%680 = load double, double* %51
%681 = load i16, i16* %15
%682 = sext i16 %681 to i32
%683 = sitofp i32 %682 to double
%684 = fsub double %680, %683
%685 = load double, double* %51
%686 = load i16, i16* %15
%687 = sext i16 %686 to i32
%688 = sitofp i32 %687 to double
%689 = fsub double %685, %688
%690 = fmul double %684, %689
%691 = call double @llvm.fmuladd.f64(double %674, double %679, double %690)
%692 = call signext i16 @sqrt(double %691)
%693 = sext i16 %692 to i32
%694 = sitofp i32 %693 to double
%695 = fdiv double %669, %694
%696 = fptosi double %695 to i16
%697 = call double @acos(i16 signext %696)
%698 = load double, double* %55
%699 = fsub double %697, %698
store double %699, double* %49
%700 = load double, double* %56
%701 = load double, double* %48
%702 = load double, double* %49
%703 = call double @cos(double %702)
%704 = call double @llvm.fmuladd.f64(double %701, double %703, double %700)
store double %704, double* %62
%705 = load double, double* %57
%706 = load double, double* %48
%707 = load double, double* %49
%708 = call double @sin(double %707)
%709 = fneg double %706
%710 = call double @llvm.fmuladd.f64(double %709, double %708, double %705)
store double %710, double* %63
%711 = load double, double* %62
%712 = load double, double* %53
%713 = fsub double %711, %712
%714 = load double, double* %62
%715 = load double, double* %53
%716 = fsub double %714, %715
%717 = load double, double* %54
%718 = load double, double* %63
%719 = fsub double %717, %718
%720 = load double, double* %54
%721 = load double, double* %63
%722 = fsub double %720, %721
%723 = fmul double %719, %722
%724 = call double @llvm.fmuladd.f64(double %713, double %716, double %723)
%725 = call signext i16 @sqrt(double %724)
%726 = sitofp i16 %725 to double
store double %726, double* %64
%727 = load double, double* %62
%728 = load double, double* %53
%729 = fsub double %727, %728
%730 = load double, double* %54
%731 = load double, double* %63
%732 = fsub double %730, %731
%733 = fdiv double %729, %732
%734 = call double @atan(double %733)
store double %734, double* %65
%735 = load double, double* %53
%736 = load double, double* %64
%737 = load double, double* %65
%738 = load double, double* %32
%739 = fadd double %737, %738
%740 = call double @sin(double %739)
%741 = call double @llvm.fmuladd.f64(double %736, double %740, double %735)
store double %741, double* %66
%742 = load double, double* %54
%743 = load double, double* %64
%744 = load double, double* %65
%745 = load double, double* %32
%746 = fadd double %744, %745
%747 = call double @cos(double %746)
%748 = fneg double %743
%749 = call double @llvm.fmuladd.f64(double %748, double %747, double %742)
store double %749, double* %67
%750 = load i16, i16* %23
%751 = sext i16 %750 to i32
%752 = sitofp i32 %751 to double
%753 = load double, double* %66
%754 = fsub double %752, %753
%755 = fptosi double %754 to i16
store i16 %755, i16* %30
%756 = load i16, i16* %24
%757 = sext i16 %756 to i32
%758 = sitofp i32 %757 to double
%759 = load double, double* %67
%760 = fsub double %758, %759
%761 = fptosi double %760 to i16
store i16 %761, i16* %31
%762 = load double, double* %32
%763 = fmul double %762, -1.000000e+00
store double %763, double* %32
store i16 0, i16* %33
br label %764
764: ; preds = %851, %463
%765 = load i16, i16* %33
%766 = sext i16 %765 to i32
%767 = icmp slt i32 %766, 32
br i1 %767, label %768, label %854
768: ; preds = %764
%769 = load i16*, i16** %43
%770 = load i16, i16* %33
%771 = sext i16 %770 to i32
%772 = sext i32 %771 to i64
%773 = getelementptr inbounds i16, i16* %769, i64 %772
%774 = load i16, i16* %773
%775 = sitofp i16 %774 to double
store double %775, double* %36
%776 = load i16*, i16** %44
%777 = load i16, i16* %33
%778 = sext i16 %777 to i32
%779 = sext i32 %778 to i64
%780 = getelementptr inbounds i16, i16* %776, i64 %779
%781 = load i16, i16* %780
%782 = sitofp i16 %781 to double
store double %782, double* %37
%783 = load double, double* %36
%784 = fcmp une double %783, -1.000000e+00
br i1 %784, label %785, label %839
785: ; preds = %768
%786 = load double, double* %37
%787 = fmul double %786, 0x3FF1C44444444444
store double %787, double* %37
%788 = load double, double* %36
%789 = fsub double %788, 3.600000e+02
store double %789, double* %36
%790 = load double, double* %37
%791 = fsub double %790, 2.665000e+02
store double %791, double* %37
%792 = load double, double* %36
%793 = load double, double* %32
%794 = call double @cos(double %793)
%795 = load double, double* %37
%796 = load double, double* %32
%797 = call double @sin(double %796)
%798 = fmul double %795, %797
%799 = call double @llvm.fmuladd.f64(double %792, double %794, double %798)
store double %799, double* %38
%800 = load double, double* %37
%801 = load double, double* %32
%802 = call double @cos(double %801)
%803 = load double, double* %36
%804 = load double, double* %32
%805 = call double @sin(double %804)
%806 = fmul double %803, %805
%807 = fneg double %806
%808 = call double @llvm.fmuladd.f64(double %800, double %802, double %807)
store double %808, double* %39
%809 = load double, double* %38
%810 = fadd double %809, 3.600000e+02
store double %810, double* %36
%811 = load double, double* %39
%812 = fadd double %811, 2.665000e+02
store double %812, double* %37
%813 = load i16, i16* %30
%814 = sext i16 %813 to i32
%815 = sitofp i32 %814 to double
%816 = load double, double* %36
%817 = fadd double %816, %815
store double %817, double* %36
%818 = load i16, i16* %31
%819 = sext i16 %818 to i32
%820 = sitofp i32 %819 to double
%821 = load double, double* %37
%822 = fadd double %821, %820
store double %822, double* %37
%823 = load double, double* %36
%824 = fptosi double %823 to i32
%825 = trunc i32 %824 to i16
%826 = load i16*, i16** %43
%827 = load i16, i16* %33
%828 = sext i16 %827 to i32
%829 = sext i32 %828 to i64
%830 = getelementptr inbounds i16, i16* %826, i64 %829
store i16 %825, i16* %830
%831 = load double, double* %37
%832 = fptosi double %831 to i32
%833 = trunc i32 %832 to i16
%834 = load i16*, i16** %44
%835 = load i16, i16* %33
%836 = sext i16 %835 to i32
%837 = sext i32 %836 to i64
%838 = getelementptr inbounds i16, i16* %834, i64 %837
store i16 %833, i16* %838
br label %850
839: ; preds = %768
%840 = load i16*, i16** %43
%841 = load i16, i16* %33
%842 = sext i16 %841 to i32
%843 = sext i32 %842 to i64
%844 = getelementptr inbounds i16, i16* %840, i64 %843
store i16 -1, i16* %844
%845 = load i16*, i16** %44
%846 = load i16, i16* %33
%847 = sext i16 %846 to i32
%848 = sext i32 %847 to i64
%849 = getelementptr inbounds i16, i16* %845, i64 %848
store i16 -1, i16* %849
br label %850
850: ; preds = %839, %785
br label %851
851: ; preds = %850
%852 = load i16, i16* %33
%853 = add i16 %852, 1
store i16 %853, i16* %33
br label %764
854: ; preds = %764
%855 = load double, double* %60
%856 = load double, double* %25
%857 = fneg double %856
%858 = call double @llvm.fmuladd.f64(double %857, double 0xBF91DF46A2529D39, double %855)
store double %858, double* %32
%859 = load double, double* %32
%860 = fmul double %859, -1.000000e+00
store double %860, double* %32
%861 = load i16, i16* %23
%862 = sext i16 %861 to i32
%863 = load i16, i16* %14
%864 = sext i16 %863 to i32
%865 = sub nsw i32 %862, %864
%866 = trunc i32 %865 to i16
store i16 %866, i16* %30
%867 = load i16, i16* %24
%868 = sext i16 %867 to i32
%869 = load i16, i16* %15
%870 = sext i16 %869 to i32
%871 = sub nsw i32 %868, %870
%872 = trunc i32 %871 to i16
store i16 %872, i16* %31
store i16 0, i16* %33
br label %873
873: ; preds = %960, %854
%874 = load i16, i16* %33
%875 = sext i16 %874 to i32
%876 = icmp slt i32 %875, 10
br i1 %876, label %877, label %963
877: ; preds = %873
%878 = load i16*, i16** %46
%879 = load i16, i16* %33
%880 = sext i16 %879 to i32
%881 = sext i32 %880 to i64
%882 = getelementptr inbounds i16, i16* %878, i64 %881
%883 = load i16, i16* %882
%884 = sitofp i16 %883 to double
store double %884, double* %36
%885 = load i16*, i16** %47
%886 = load i16, i16* %33
%887 = sext i16 %886 to i32
%888 = sext i32 %887 to i64
%889 = getelementptr inbounds i16, i16* %885, i64 %888
%890 = load i16, i16* %889
%891 = sitofp i16 %890 to double
store double %891, double* %37
%892 = load double, double* %36
%893 = fcmp une double %892, -1.000000e+00
br i1 %893, label %894, label %948
894: ; preds = %877
%895 = load double, double* %37
%896 = fmul double %895, 0x3FF1C44444444444
store double %896, double* %37
%897 = load double, double* %36
%898 = fsub double %897, 3.600000e+02
store double %898, double* %36
%899 = load double, double* %37
%900 = fsub double %899, 2.665000e+02
store double %900, double* %37
%901 = load double, double* %36
%902 = load double, double* %32
%903 = call double @cos(double %902)
%904 = load double, double* %37
%905 = load double, double* %32
%906 = call double @sin(double %905)
%907 = fmul double %904, %906
%908 = call double @llvm.fmuladd.f64(double %901, double %903, double %907)
store double %908, double* %38
%909 = load double, double* %37
%910 = load double, double* %32
%911 = call double @cos(double %910)
%912 = load double, double* %36
%913 = load double, double* %32
%914 = call double @sin(double %913)
%915 = fmul double %912, %914
%916 = fneg double %915
%917 = call double @llvm.fmuladd.f64(double %909, double %911, double %916)
store double %917, double* %39
%918 = load double, double* %38
%919 = fadd double %918, 3.600000e+02
store double %919, double* %36
%920 = load double, double* %39
%921 = fadd double %920, 2.665000e+02
store double %921, double* %37
%922 = load i16, i16* %30
%923 = sext i16 %922 to i32
%924 = sitofp i32 %923 to double
%925 = load double, double* %36
%926 = fadd double %925, %924
store double %926, double* %36
%927 = load i16, i16* %31
%928 = sext i16 %927 to i32
%929 = sitofp i32 %928 to double
%930 = load double, double* %37
%931 = fadd double %930, %929
store double %931, double* %37
%932 = load double, double* %36
%933 = fptosi double %932 to i32
%934 = trunc i32 %933 to i16
%935 = load i16*, i16** %46
%936 = load i16, i16* %33
%937 = sext i16 %936 to i32
%938 = sext i32 %937 to i64
%939 = getelementptr inbounds i16, i16* %935, i64 %938
store i16 %934, i16* %939
%940 = load double, double* %37
%941 = fptosi double %940 to i32
%942 = trunc i32 %941 to i16
%943 = load i16*, i16** %47
%944 = load i16, i16* %33
%945 = sext i16 %944 to i32
%946 = sext i32 %945 to i64
%947 = getelementptr inbounds i16, i16* %943, i64 %946
store i16 %942, i16* %947
br label %959
948: ; preds = %877
%949 = load i16*, i16** %46
%950 = load i16, i16* %33
%951 = sext i16 %950 to i32
%952 = sext i32 %951 to i64
%953 = getelementptr inbounds i16, i16* %949, i64 %952
store i16 -1, i16* %953
%954 = load i16*, i16** %47
%955 = load i16, i16* %33
%956 = sext i16 %955 to i32
%957 = sext i32 %956 to i64
%958 = getelementptr inbounds i16, i16* %954, i64 %957
store i16 -1, i16* %958
br label %959
959: ; preds = %948, %894
br label %960
960: ; preds = %959
%961 = load i16, i16* %33
%962 = add i16 %961, 1
store i16 %962, i16* %33
br label %873
963: ; preds = %873
%964 = load i8*, i8** %42
%965 = load i8, i8* %964
%966 = sext i8 %965 to i32
%967 = icmp eq i32 %966, 121
br i1 %967, label %968, label %1304
968: ; preds = %963
%969 = load i32*, i32** %7
%970 = load i8*, i8** %12
%971 = load i16*, i16** %43
%972 = load i16, i16* %971
%973 = sext i16 %972 to i32
%974 = load i16*, i16** %44
%975 = load i16, i16* %974
%976 = sext i16 %975 to i32
%977 = load i16*, i16** %43
%978 = getelementptr inbounds i16, i16* %977, i64 1
%979 = load i16, i16* %978
%980 = sext i16 %979 to i32
%981 = load i16*, i16** %44
%982 = getelementptr inbounds i16, i16* %981, i64 1
%983 = load i16, i16* %982
%984 = sext i16 %983 to i32
%985 = load i16*, i16** %43
%986 = getelementptr inbounds i16, i16* %985, i64 2
%987 = load i16, i16* %986
%988 = sext i16 %987 to i32
%989 = load i16*, i16** %44
%990 = getelementptr inbounds i16, i16* %989, i64 2
%991 = load i16, i16* %990
%992 = sext i16 %991 to i32
%993 = load i16*, i16** %43
%994 = getelementptr inbounds i16, i16* %993, i64 3
%995 = load i16, i16* %994
%996 = sext i16 %995 to i32
%997 = load i16*, i16** %44
%998 = getelementptr inbounds i16, i16* %997, i64 3
%999 = load i16, i16* %998
%1000 = sext i16 %999 to i32
%1001 = load i16*, i16** %43
%1002 = getelementptr inbounds i16, i16* %1001, i64 4
%1003 = load i16, i16* %1002
%1004 = sext i16 %1003 to i32
%1005 = load i16*, i16** %44
%1006 = getelementptr inbounds i16, i16* %1005, i64 4
%1007 = load i16, i16* %1006
%1008 = sext i16 %1007 to i32
%1009 = load i16*, i16** %43
%1010 = getelementptr inbounds i16, i16* %1009, i64 5
%1011 = load i16, i16* %1010
%1012 = sext i16 %1011 to i32
%1013 = load i16*, i16** %44
%1014 = getelementptr inbounds i16, i16* %1013, i64 5
%1015 = load i16, i16* %1014
%1016 = sext i16 %1015 to i32
%1017 = load i16*, i16** %43
%1018 = getelementptr inbounds i16, i16* %1017, i64 6
%1019 = load i16, i16* %1018
%1020 = sext i16 %1019 to i32
%1021 = load i16*, i16** %44
%1022 = getelementptr inbounds i16, i16* %1021, i64 6
%1023 = load i16, i16* %1022
%1024 = sext i16 %1023 to i32
%1025 = load i16*, i16** %43
%1026 = getelementptr inbounds i16, i16* %1025, i64 7
%1027 = load i16, i16* %1026
%1028 = sext i16 %1027 to i32
%1029 = load i16*, i16** %44
%1030 = getelementptr inbounds i16, i16* %1029, i64 7
%1031 = load i16, i16* %1030
%1032 = sext i16 %1031 to i32
%1033 = load i16*, i16** %43
%1034 = getelementptr inbounds i16, i16* %1033, i64 8
%1035 = load i16, i16* %1034
%1036 = sext i16 %1035 to i32
%1037 = load i16*, i16** %44
%1038 = getelementptr inbounds i16, i16* %1037, i64 8
%1039 = load i16, i16* %1038
%1040 = sext i16 %1039 to i32
%1041 = load i16*, i16** %43
%1042 = getelementptr inbounds i16, i16* %1041, i64 9
%1043 = load i16, i16* %1042
%1044 = sext i16 %1043 to i32
%1045 = load i16*, i16** %44
%1046 = getelementptr inbounds i16, i16* %1045, i64 9
%1047 = load i16, i16* %1046
%1048 = sext i16 %1047 to i32
%1049 = load i16*, i16** %43
%1050 = getelementptr inbounds i16, i16* %1049, i64 10
%1051 = load i16, i16* %1050
%1052 = sext i16 %1051 to i32
%1053 = load i16*, i16** %44
%1054 = getelementptr inbounds i16, i16* %1053, i64 10
%1055 = load i16, i16* %1054
%1056 = sext i16 %1055 to i32
%1057 = load i16*, i16** %43
%1058 = getelementptr inbounds i16, i16* %1057, i64 11
%1059 = load i16, i16* %1058
%1060 = sext i16 %1059 to i32
%1061 = load i16*, i16** %44
%1062 = getelementptr inbounds i16, i16* %1061, i64 11
%1063 = load i16, i16* %1062
%1064 = sext i16 %1063 to i32
%1065 = load i16*, i16** %43
%1066 = getelementptr inbounds i16, i16* %1065, i64 12
%1067 = load i16, i16* %1066
%1068 = sext i16 %1067 to i32
%1069 = load i16*, i16** %44
%1070 = getelementptr inbounds i16, i16* %1069, i64 12
%1071 = load i16, i16* %1070
%1072 = sext i16 %1071 to i32
%1073 = load i16*, i16** %43
%1074 = getelementptr inbounds i16, i16* %1073, i64 13
%1075 = load i16, i16* %1074
%1076 = sext i16 %1075 to i32
%1077 = load i16*, i16** %44
%1078 = getelementptr inbounds i16, i16* %1077, i64 13
%1079 = load i16, i16* %1078
%1080 = sext i16 %1079 to i32
%1081 = load i16*, i16** %43
%1082 = getelementptr inbounds i16, i16* %1081, i64 14
%1083 = load i16, i16* %1082
%1084 = sext i16 %1083 to i32
%1085 = load i16*, i16** %44
%1086 = getelementptr inbounds i16, i16* %1085, i64 14
%1087 = load i16, i16* %1086
%1088 = sext i16 %1087 to i32
%1089 = load i16*, i16** %43
%1090 = getelementptr inbounds i16, i16* %1089, i64 15
%1091 = load i16, i16* %1090
%1092 = sext i16 %1091 to i32
%1093 = load i16*, i16** %44
%1094 = getelementptr inbounds i16, i16* %1093, i64 15
%1095 = load i16, i16* %1094
%1096 = sext i16 %1095 to i32
%1097 = load i16*, i16** %43
%1098 = getelementptr inbounds i16, i16* %1097, i64 16
%1099 = load i16, i16* %1098
%1100 = sext i16 %1099 to i32
%1101 = load i16*, i16** %44
%1102 = getelementptr inbounds i16, i16* %1101, i64 16
%1103 = load i16, i16* %1102
%1104 = sext i16 %1103 to i32
%1105 = load i16*, i16** %43
%1106 = getelementptr inbounds i16, i16* %1105, i64 17
%1107 = load i16, i16* %1106
%1108 = sext i16 %1107 to i32
%1109 = load i16*, i16** %44
%1110 = getelementptr inbounds i16, i16* %1109, i64 17
%1111 = load i16, i16* %1110
%1112 = sext i16 %1111 to i32
%1113 = load i16*, i16** %43
%1114 = getelementptr inbounds i16, i16* %1113, i64 18
%1115 = load i16, i16* %1114
%1116 = sext i16 %1115 to i32
%1117 = load i16*, i16** %44
%1118 = getelementptr inbounds i16, i16* %1117, i64 18
%1119 = load i16, i16* %1118
%1120 = sext i16 %1119 to i32
%1121 = load i16*, i16** %43
%1122 = getelementptr inbounds i16, i16* %1121, i64 19
%1123 = load i16, i16* %1122
%1124 = sext i16 %1123 to i32
%1125 = load i16*, i16** %44
%1126 = getelementptr inbounds i16, i16* %1125, i64 19
%1127 = load i16, i16* %1126
%1128 = sext i16 %1127 to i32
%1129 = load i16*, i16** %43
%1130 = getelementptr inbounds i16, i16* %1129, i64 20
%1131 = load i16, i16* %1130
%1132 = sext i16 %1131 to i32
%1133 = load i16*, i16** %44
%1134 = getelementptr inbounds i16, i16* %1133, i64 20
%1135 = load i16, i16* %1134
%1136 = sext i16 %1135 to i32
%1137 = load i16*, i16** %43
%1138 = getelementptr inbounds i16, i16* %1137, i64 21
%1139 = load i16, i16* %1138
%1140 = sext i16 %1139 to i32
%1141 = load i16*, i16** %44
%1142 = getelementptr inbounds i16, i16* %1141, i64 21
%1143 = load i16, i16* %1142
%1144 = sext i16 %1143 to i32
%1145 = load i16*, i16** %43
%1146 = getelementptr inbounds i16, i16* %1145, i64 22
%1147 = load i16, i16* %1146
%1148 = sext i16 %1147 to i32
%1149 = load i16*, i16** %44
%1150 = getelementptr inbounds i16, i16* %1149, i64 22
%1151 = load i16, i16* %1150
%1152 = sext i16 %1151 to i32
%1153 = load i16*, i16** %43
%1154 = getelementptr inbounds i16, i16* %1153, i64 23
%1155 = load i16, i16* %1154
%1156 = sext i16 %1155 to i32
%1157 = load i16*, i16** %44
%1158 = getelementptr inbounds i16, i16* %1157, i64 23
%1159 = load i16, i16* %1158
%1160 = sext i16 %1159 to i32
%1161 = load i16*, i16** %43
%1162 = getelementptr inbounds i16, i16* %1161, i64 24
%1163 = load i16, i16* %1162
%1164 = sext i16 %1163 to i32
%1165 = load i16*, i16** %44
%1166 = getelementptr inbounds i16, i16* %1165, i64 24
%1167 = load i16, i16* %1166
%1168 = sext i16 %1167 to i32
%1169 = load i16*, i16** %43
%1170 = getelementptr inbounds i16, i16* %1169, i64 25
%1171 = load i16, i16* %1170
%1172 = sext i16 %1171 to i32
%1173 = load i16*, i16** %44
%1174 = getelementptr inbounds i16, i16* %1173, i64 25
%1175 = load i16, i16* %1174
%1176 = sext i16 %1175 to i32
%1177 = load i16*, i16** %43
%1178 = getelementptr inbounds i16, i16* %1177, i64 26
%1179 = load i16, i16* %1178
%1180 = sext i16 %1179 to i32
%1181 = load i16*, i16** %44
%1182 = getelementptr inbounds i16, i16* %1181, i64 26
%1183 = load i16, i16* %1182
%1184 = sext i16 %1183 to i32
%1185 = load i16*, i16** %43
%1186 = getelementptr inbounds i16, i16* %1185, i64 27
%1187 = load i16, i16* %1186
%1188 = sext i16 %1187 to i32
%1189 = load i16*, i16** %44
%1190 = getelementptr inbounds i16, i16* %1189, i64 27
%1191 = load i16, i16* %1190
%1192 = sext i16 %1191 to i32
%1193 = load i16*, i16** %43
%1194 = getelementptr inbounds i16, i16* %1193, i64 28
%1195 = load i16, i16* %1194
%1196 = sext i16 %1195 to i32
%1197 = load i16*, i16** %44
%1198 = getelementptr inbounds i16, i16* %1197, i64 28
%1199 = load i16, i16* %1198
%1200 = sext i16 %1199 to i32
%1201 = load i16*, i16** %43
%1202 = getelementptr inbounds i16, i16* %1201, i64 29
%1203 = load i16, i16* %1202
%1204 = sext i16 %1203 to i32
%1205 = load i16*, i16** %44
%1206 = getelementptr inbounds i16, i16* %1205, i64 29
%1207 = load i16, i16* %1206
%1208 = sext i16 %1207 to i32
%1209 = load i16*, i16** %43
%1210 = getelementptr inbounds i16, i16* %1209, i64 30
%1211 = load i16, i16* %1210
%1212 = sext i16 %1211 to i32
%1213 = load i16*, i16** %44
%1214 = getelementptr inbounds i16, i16* %1213, i64 30
%1215 = load i16, i16* %1214
%1216 = sext i16 %1215 to i32
%1217 = load i16*, i16** %43
%1218 = getelementptr inbounds i16, i16* %1217, i64 31
%1219 = load i16, i16* %1218
%1220 = sext i16 %1219 to i32
%1221 = load i16*, i16** %44
%1222 = getelementptr inbounds i16, i16* %1221, i64 31
%1223 = load i16, i16* %1222
%1224 = sext i16 %1223 to i32
%1225 = load i16*, i16** %46
%1226 = load i16, i16* %1225
%1227 = sext i16 %1226 to i32
%1228 = load i16*, i16** %47
%1229 = load i16, i16* %1228
%1230 = sext i16 %1229 to i32
%1231 = load i16*, i16** %46
%1232 = getelementptr inbounds i16, i16* %1231, i64 1
%1233 = load i16, i16* %1232
%1234 = sext i16 %1233 to i32
%1235 = load i16*, i16** %47
%1236 = getelementptr inbounds i16, i16* %1235, i64 1
%1237 = load i16, i16* %1236
%1238 = sext i16 %1237 to i32
%1239 = load i16*, i16** %46
%1240 = getelementptr inbounds i16, i16* %1239, i64 2
%1241 = load i16, i16* %1240
%1242 = sext i16 %1241 to i32
%1243 = load i16*, i16** %47
%1244 = getelementptr inbounds i16, i16* %1243, i64 2
%1245 = load i16, i16* %1244
%1246 = sext i16 %1245 to i32
%1247 = load i16*, i16** %46
%1248 = getelementptr inbounds i16, i16* %1247, i64 3
%1249 = load i16, i16* %1248
%1250 = sext i16 %1249 to i32
%1251 = load i16*, i16** %47
%1252 = getelementptr inbounds i16, i16* %1251, i64 3
%1253 = load i16, i16* %1252
%1254 = sext i16 %1253 to i32
%1255 = load i16*, i16** %46
%1256 = getelementptr inbounds i16, i16* %1255, i64 4
%1257 = load i16, i16* %1256
%1258 = sext i16 %1257 to i32
%1259 = load i16*, i16** %47
%1260 = getelementptr inbounds i16, i16* %1259, i64 4
%1261 = load i16, i16* %1260
%1262 = sext i16 %1261 to i32
%1263 = load i16*, i16** %46
%1264 = getelementptr inbounds i16, i16* %1263, i64 5
%1265 = load i16, i16* %1264
%1266 = sext i16 %1265 to i32
%1267 = load i16*, i16** %47
%1268 = getelementptr inbounds i16, i16* %1267, i64 5
%1269 = load i16, i16* %1268
%1270 = sext i16 %1269 to i32
%1271 = load i16*, i16** %46
%1272 = getelementptr inbounds i16, i16* %1271, i64 6
%1273 = load i16, i16* %1272
%1274 = sext i16 %1273 to i32
%1275 = load i16*, i16** %47
%1276 = getelementptr inbounds i16, i16* %1275, i64 6
%1277 = load i16, i16* %1276
%1278 = sext i16 %1277 to i32
%1279 = load i16*, i16** %46
%1280 = getelementptr inbounds i16, i16* %1279, i64 7
%1281 = load i16, i16* %1280
%1282 = sext i16 %1281 to i32
%1283 = load i16*, i16** %47
%1284 = getelementptr inbounds i16, i16* %1283, i64 7
%1285 = load i16, i16* %1284
%1286 = sext i16 %1285 to i32
%1287 = load i16*, i16** %46
%1288 = getelementptr inbounds i16, i16* %1287, i64 8
%1289 = load i16, i16* %1288
%1290 = sext i16 %1289 to i32
%1291 = load i16*, i16** %47
%1292 = getelementptr inbounds i16, i16* %1291, i64 8
%1293 = load i16, i16* %1292
%1294 = sext i16 %1293 to i32
%1295 = load i16*, i16** %46
%1296 = getelementptr inbounds i16, i16* %1295, i64 9
%1297 = load i16, i16* %1296
%1298 = sext i16 %1297 to i32
%1299 = load i16*, i16** %47
%1300 = getelementptr inbounds i16, i16* %1299, i64 9
%1301 = load i16, i16* %1300
%1302 = sext i16 %1301 to i32
%1303 = call i32 (i32*, i8*, ...) @fprintf(i32* %969, i8* getelementptr inbounds ([340 x i8], [340 x i8]* @.str.33, i64 0, i64 0), i8* %970, i32 %973, i32 %976, i32 %980, i32 %984, i32 %988, i32 %992, i32 %996, i32 %1000, i32 %1004, i32 %1008, i32 %1012, i32 %1016, i32 %1020, i32 %1024, i32 %1028, i32 %1032, i32 %1036, i32 %1040, i32 %1044, i32 %1048, i32 %1052, i32 %1056, i32 %1060, i32 %1064, i32 %1068, i32 %1072, i32 %1076, i32 %1080, i32 %1084, i32 %1088, i32 %1092, i32 %1096, i32 %1100, i32 %1104, i32 %1108, i32 %1112, i32 %1116, i32 %1120, i32 %1124, i32 %1128, i32 %1132, i32 %1136, i32 %1140, i32 %1144, i32 %1148, i32 %1152, i32 %1156, i32 %1160, i32 %1164, i32 %1168, i32 %1172, i32 %1176, i32 %1180, i32 %1184, i32 %1188, i32 %1192, i32 %1196, i32 %1200, i32 %1204, i32 %1208, i32 %1212, i32 %1216, i32 %1220, i32 %1224, i32 %1227, i32 %1230, i32 %1234, i32 %1238, i32 %1242, i32 %1246, i32 %1250, i32 %1254, i32 %1258, i32 %1262, i32 %1266, i32 %1270, i32 %1274, i32 %1278, i32 %1282, i32 %1286, i32 %1290, i32 %1294, i32 %1298, i32 %1302)
br label %1376
1304: ; preds = %963
%1305 = load i8*, i8** %12
%1306 = call i8* @strpbrk(i8* %1305, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.34, i64 0, i64 0))
%1307 = load i8*, i8** %12
%1308 = ptrtoint i8* %1306 to i64
%1309 = ptrtoint i8* %1307 to i64
%1310 = sub i64 %1308, %1309
%1311 = trunc i64 %1310 to i16
store i16 %1311, i16* %35
%1312 = load i8*, i8** %40
%1313 = load i8*, i8** %12
%1314 = load i16, i16* %35
%1315 = call i32 @strncpy(i8* %1312, i8* %1313, i16 signext %1314)
%1316 = load i8*, i8** %40
%1317 = load i16, i16* %35
%1318 = sext i16 %1317 to i32
%1319 = sext i32 %1318 to i64
%1320 = getelementptr inbounds i8, i8* %1316, i64 %1319
store i8 0, i8* %1320
%1321 = load i8*, i8** %12
%1322 = call i8* @strchr(i8* %1321, i8 signext 95)
%1323 = load i8*, i8** %12
%1324 = call i8* @strpbrk(i8* %1323, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.34, i64 0, i64 0))
%1325 = ptrtoint i8* %1322 to i64
%1326 = ptrtoint i8* %1324 to i64
%1327 = sub i64 %1325, %1326
%1328 = trunc i64 %1327 to i16
store i16 %1328, i16* %35
%1329 = load i8*, i8** %41
%1330 = load i8*, i8** %12
%1331 = call i8* @strpbrk(i8* %1330, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.34, i64 0, i64 0))
%1332 = load i16, i16* %35
%1333 = call i32 @strncpy(i8* %1329, i8* %1331, i16 signext %1332)
%1334 = load i8*, i8** %41
%1335 = load i16, i16* %35
%1336 = sext i16 %1335 to i32
%1337 = sext i32 %1336 to i64
%1338 = getelementptr inbounds i8, i8* %1334, i64 %1337
store i8 0, i8* %1338
store i16 0, i16* %33
br label %1339
1339: ; preds = %1372, %1304
%1340 = load i16, i16* %33
%1341 = sext i16 %1340 to i32
%1342 = icmp slt i32 %1341, 32
br i1 %1342, label %1343, label %1375
1343: ; preds = %1339
%1344 = load i16*, i16** %43
%1345 = load i16, i16* %33
%1346 = sext i16 %1345 to i32
%1347 = sext i32 %1346 to i64
%1348 = getelementptr inbounds i16, i16* %1344, i64 %1347
%1349 = load i16, i16* %1348
%1350 = sext i16 %1349 to i32
%1351 = icmp ne i32 %1350, -1
br i1 %1351, label %1352, label %1371
1352: ; preds = %1343
%1353 = load i32*, i32** %7
%1354 = load i8*, i8** %40
%1355 = load i8*, i8** %41
%1356 = load i16*, i16** %43
%1357 = load i16, i16* %33
%1358 = sext i16 %1357 to i32
%1359 = sext i32 %1358 to i64
%1360 = getelementptr inbounds i16, i16* %1356, i64 %1359
%1361 = load i16, i16* %1360
%1362 = sext i16 %1361 to i32
%1363 = load i16*, i16** %44
%1364 = load i16, i16* %33
%1365 = sext i16 %1364 to i32
%1366 = sext i32 %1365 to i64
%1367 = getelementptr inbounds i16, i16* %1363, i64 %1366
%1368 = load i16, i16* %1367
%1369 = sext i16 %1368 to i32
%1370 = call i32 (i32*, i8*, ...) @fprintf(i32* %1353, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.35, i64 0, i64 0), i8* %1354, i8* %1355, i32 %1362, i32 %1369)
br label %1371
1371: ; preds = %1352, %1343
br label %1372
1372: ; preds = %1371
%1373 = load i16, i16* %33
%1374 = add i16 %1373, 1
store i16 %1374, i16* %33
br label %1339
1375: ; preds = %1339
br label %1376
1376: ; preds = %1375, %968
br label %268
1377: ; preds = %268
%1378 = load i32*, i32** %6
%1379 = call i32 @fclose(i32* %1378)
%1380 = load i32*, i32** %7
%1381 = call i32 @fclose(i32* %1380)
br label %1382
1382: ; preds = %1377, %215, %207, %144, %137, %130, %123, %116, %109, %102, %95
%1383 = load i32, i32* %3
ret i32 %1383
}

LLVM IR (-O2):
@.str = [13 x i8] c"settings.txt\00"
@.str.1 = [2 x i8] c"r\00"
@.str.3 = [16 x i8] c"OverlayX = %hd\0A\00"
@.str.5 = [16 x i8] c"OverlayY = %hd\0A\00"
@.str.7 = [13 x i8] c"Angle = %lf\0A\00"
@.str.9 = [15 x i8] c"UsScale = %lf\0A\00"
@.str.11 = [32 x i8] c"distance_btwn_lower_dots = %lf\0A\00"
@.str.13 = [44 x i8] c"tip_of_transducer_to_lower_right_dot = %lf\0A\00"
@.str.15 = [43 x i8] c"tip_of_transducer_to_lower_left_dot = %lf\0A\00"
@.str.19 = [38 x i8] c"Enter the filename (without '.txt'): \00"
@.str.20 = [3 x i8] c"%s\00"
@.str.22 = [5 x i8] c".txt\00"
@.str.23 = [12 x i8] c"_output.txt\00"
@.str.24 = [25 x i8] c"Unable to open file: %s\0A\00"
@.str.25 = [2 x i8] c"w\00"
@.str.26 = [813 x i8] c"Filename Raw.R1.X Raw.R1.Y Raw.R2.X Raw.R2.Y Raw.R3.X Raw.R3.Y Raw.R4.X Raw.R4.Y Raw.R5.X Raw.R5.Y Raw.R6.X Raw.R6.Y Raw.R7.X Raw.R7.Y Raw.R8.X Raw.R8.Y Raw.R9.X Raw.R9.Y Raw.R10.X Raw.R10.Y Raw.R11.X Raw.R11.Y Raw.R12.X Raw.R12.Y Raw.R13.X Raw.R13.Y Raw.R14.X Raw.R14.Y Raw.R15.X Raw.R15.Y Raw.R16.X Raw.R16.Y Raw.R17.X Raw.R17.Y Raw.R18.X Raw.R18.Y Raw.R19.X Raw.R19.Y Raw.R20.X Raw.R20.Y Raw.R21.X Raw.R21.Y Raw.R22.X Raw.R22.Y Raw.R23.X Raw.R23.Y Raw.R24.X Raw.R24.Y Raw.R25.X Raw.R25.Y Raw.R26.X Raw.R26.Y Raw.R27.X Raw.R27.Y Raw.R28.X Raw.R28.Y Raw.R29.X Raw.R29.Y Raw.R30.X Raw.R30.Y Raw.R31.X Raw.R31.Y Raw.R32.X Raw.R32.Y UL.x UL.y UR.x UR.y LL.x LL.y LR.x LR.y Aux1.x Aux1.y Aux2.x Aux2.y Aux3.x Aux3.y Aux4.x Aux4.y Aux5.x Aux5.y Aux6.x Aux6.y Aux7.x Aux7.y Aux8.x Aux8.y Aux9.x Aux9.y Aux10.x Aux10.y\00"
@.str.27 = [10 x i8] c"Filename\09\00"
@.str.28 = [11 x i8] c"x.%i\09y.%i\09\00"
@.str.29 = [19 x i8] c"aux.x.%i\09aux.y.%i\09\00"
@.str.30 = [16 x i8] c"word\09token\09X\09Y\0A\00"
@.str.31 = [372 x i8] c"%s\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\0A\00"
@.str.32 = [137 x i8] c"\0AFor the entry \22%s\22, only %d items were read, whereas I was expecting 93. I'm going to skip that line and finish the rest of the file.\0A\0A\00"
@.str.33 = [340 x i8] c"%s\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\09%hd\0A\00"
@.str.34 = [11 x i8] c"1234567890\00"
@.str.35 = [15 x i8] c"%s\09%s\09%hd\09%hd\0A\00"
@str = [22 x i8] c"Using these settings:\00"
@str.36 = [71 x i8] c"Would you like tab-delimited format instead of R/SSANOVA format? (y/n)\00"
@str.37 = [60 x i8] c"Error reading value of: tip_of_transducer_to_lower_left_dot\00"
@str.38 = [61 x i8] c"Error reading value of: tip_of_transducer_to_lower_right_dot\00"
@str.39 = [49 x i8] c"Error reading value of: distance_btwn_lower_dots\00"
@str.40 = [32 x i8] c"Error reading value of: UsScale\00"
@str.41 = [30 x i8] c"Error reading value of: Angle\00"
@str.42 = [33 x i8] c"Error reading value of: OverlayY\00"
@str.43 = [33 x i8] c"Error reading value of: OverlayX\00"
@str.44 = [27 x i8] c"Couldn't open settings.txt\00"
define i32 @main(i32 %0, i8** nocapture %1) {
%3 = alloca i16
%4 = alloca i16
%5 = alloca double
%6 = alloca double
%7 = alloca double
%8 = alloca double
%9 = alloca double
%10 = tail call i64 @malloc(i32 50)
%11 = inttoptr i64 %10 to i8*
%12 = tail call i64 @malloc(i32 50)
%13 = inttoptr i64 %12 to i8*
%14 = tail call i64 @malloc(i32 50)
%15 = inttoptr i64 %14 to i8*
%16 = tail call i64 @malloc(i32 200)
%17 = inttoptr i64 %16 to i8*
%18 = bitcast i16* %3 to i8*
%19 = bitcast i16* %4 to i8*
%20 = bitcast double* %5 to i8*
%21 = bitcast double* %6 to i8*
%22 = bitcast double* %7 to i8*
%23 = bitcast double* %8 to i8*
%24 = bitcast double* %9 to i8*
%25 = tail call i64 @malloc(i32 200)
%26 = inttoptr i64 %25 to i8*
%27 = tail call i64 @malloc(i32 200)
%28 = inttoptr i64 %27 to i8*
%29 = tail call i64 @malloc(i32 1)
%30 = inttoptr i64 %29 to i8*
%31 = tail call i64 @malloc(i32 64)
%32 = inttoptr i64 %31 to i16*
%33 = tail call i64 @malloc(i32 64)
%34 = inttoptr i64 %33 to i16*
%35 = tail call i64 @malloc(i32 16)
%36 = inttoptr i64 %35 to i16*
%37 = tail call i64 @malloc(i32 20)
%38 = inttoptr i64 %37 to i16*
%39 = tail call i64 @malloc(i32 20)
%40 = inttoptr i64 %39 to i16*
%41 = tail call i32* @fopen(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0))
%42 = icmp eq i32* %41, null
br i1 %42, label %43, label %45
43: ; preds = %2
%44 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([27 x i8], [27 x i8]* @str.44, i64 0, i64 0))
br label %714
45: ; preds = %2
%46 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %41, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.3, i64 0, i64 0), i16* %3)
%47 = icmp eq i16 %46, 0
br i1 %47, label %48, label %50
48: ; preds = %45
%49 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([33 x i8], [33 x i8]* @str.43, i64 0, i64 0))
br label %714
50: ; preds = %45
%51 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %41, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.5, i64 0, i64 0), i16* %4)
%52 = icmp eq i16 %51, 0
br i1 %52, label %53, label %55
53: ; preds = %50
%54 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([33 x i8], [33 x i8]* @str.42, i64 0, i64 0))
br label %714
55: ; preds = %50
%56 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %41, i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.7, i64 0, i64 0), double* %5)
%57 = icmp eq i16 %56, 0
br i1 %57, label %58, label %60
58: ; preds = %55
%59 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([30 x i8], [30 x i8]* @str.41, i64 0, i64 0))
br label %714
60: ; preds = %55
%61 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %41, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.9, i64 0, i64 0), double* %6)
%62 = icmp eq i16 %61, 0
br i1 %62, label %63, label %65
63: ; preds = %60
%64 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([32 x i8], [32 x i8]* @str.40, i64 0, i64 0))
br label %714
65: ; preds = %60
%66 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %41, i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.11, i64 0, i64 0), double* %7)
%67 = icmp eq i16 %66, 0
br i1 %67, label %68, label %70
68: ; preds = %65
%69 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([49 x i8], [49 x i8]* @str.39, i64 0, i64 0))
br label %714
70: ; preds = %65
%71 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %41, i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str.13, i64 0, i64 0), double* %8)
%72 = icmp eq i16 %71, 0
br i1 %72, label %73, label %75
73: ; preds = %70
%74 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([61 x i8], [61 x i8]* @str.38, i64 0, i64 0))
br label %714
75: ; preds = %70
%76 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %41, i8* getelementptr inbounds ([43 x i8], [43 x i8]* @.str.15, i64 0, i64 0), double* %9)
%77 = icmp eq i16 %76, 0
br i1 %77, label %78, label %80
78: ; preds = %75
%79 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([60 x i8], [60 x i8]* @str.37, i64 0, i64 0))
br label %714
80: ; preds = %75
%81 = call i32 @fclose(i32* %41)
%82 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @str, i64 0, i64 0))
%83 = load i16, i16* %3
%84 = sext i16 %83 to i32
%85 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.3, i64 0, i64 0), i32 %84)
%86 = load i16, i16* %4
%87 = sext i16 %86 to i32
%88 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.5, i64 0, i64 0), i32 %87)
%89 = load double, double* %5
%90 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([13 x i8], [13 x i8]* @.str.7, i64 0, i64 0), double %89)
%91 = load double, double* %6
%92 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([15 x i8], [15 x i8]* @.str.9, i64 0, i64 0), double %91)
%93 = load double, double* %7
%94 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([32 x i8], [32 x i8]* @.str.11, i64 0, i64 0), double %93)
%95 = load double, double* %8
%96 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([44 x i8], [44 x i8]* @.str.13, i64 0, i64 0), double %95)
%97 = load double, double* %9
%98 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([43 x i8], [43 x i8]* @.str.15, i64 0, i64 0), double %97)
%99 = call i32 @putchar(i32 10)
%100 = icmp slt i32 %0, 2
br i1 %100, label %101, label %104
101: ; preds = %80
%102 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([38 x i8], [38 x i8]* @.str.19, i64 0, i64 0))
%103 = call i32 @scanf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.20, i64 0, i64 0), i8* %11)
br label %109
104: ; preds = %80
%105 = getelementptr inbounds i8*, i8** %1, i64 1
%106 = load i8*, i8** %105
%107 = call i32 @strcpy(i8* %11, i8* %106)
%108 = icmp eq i32 %0, 2
br i1 %108, label %109, label %112
109: ; preds = %101, %104
%110 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([71 x i8], [71 x i8]* @str.36, i64 0, i64 0))
%111 = call i32 @scanf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.20, i64 0, i64 0), i8* %30)
br label %116
112: ; preds = %104
%113 = getelementptr inbounds i8*, i8** %1, i64 2
%114 = load i8*, i8** %113
%115 = load i8, i8* %114
store i8 %115, i8* %30
br label %116
116: ; preds = %112, %109
%117 = call i32 @strcpy(i8* %13, i8* %11)
%118 = call i32 @strcat(i8* %13, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.22, i64 0, i64 0))
%119 = call i32 @strcpy(i8* %15, i8* %11)
%120 = call i32 @strcat(i8* %15, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.23, i64 0, i64 0))
%121 = call i32* @fopen(i8* %13, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0))
%122 = icmp eq i32* %121, null
br i1 %122, label %123, label %125
123: ; preds = %116
%124 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([25 x i8], [25 x i8]* @.str.24, i64 0, i64 0), i8* %13)
br label %714
125: ; preds = %116
%126 = call i32* @fopen(i8* %15, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.25, i64 0, i64 0))
%127 = icmp eq i32* %126, null
br i1 %127, label %128, label %130
128: ; preds = %125
%129 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([25 x i8], [25 x i8]* @.str.24, i64 0, i64 0), i8* %15)
br label %714
130: ; preds = %125
%131 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %121, i8* getelementptr inbounds ([813 x i8], [813 x i8]* @.str.26, i64 0, i64 0))
%132 = load i8, i8* %30
%133 = icmp eq i8 %132, 121
br i1 %133, label %134, label %179
134: ; preds = %130
%135 = call i64 @fwrite(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.27, i64 0, i64 0), i64 9, i64 1, i32* %126)
%136 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 1, i32 1)
%137 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 2, i32 2)
%138 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 3, i32 3)
%139 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 4, i32 4)
%140 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 5, i32 5)
%141 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 6, i32 6)
%142 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 7, i32 7)
%143 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 8, i32 8)
%144 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 9, i32 9)
%145 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 10, i32 10)
%146 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 11, i32 11)
%147 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 12, i32 12)
%148 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 13, i32 13)
%149 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 14, i32 14)
%150 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 15, i32 15)
%151 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 16, i32 16)
%152 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 17, i32 17)
%153 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 18, i32 18)
%154 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 19, i32 19)
%155 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 20, i32 20)
%156 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 21, i32 21)
%157 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 22, i32 22)
%158 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 23, i32 23)
%159 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 24, i32 24)
%160 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 25, i32 25)
%161 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 26, i32 26)
%162 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 27, i32 27)
%163 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 28, i32 28)
%164 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 29, i32 29)
%165 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 30, i32 30)
%166 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 31, i32 31)
%167 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.28, i64 0, i64 0), i32 32, i32 32)
%168 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 1, i32 1)
%169 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 2, i32 2)
%170 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 3, i32 3)
%171 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 4, i32 4)
%172 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 5, i32 5)
%173 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 6, i32 6)
%174 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 7, i32 7)
%175 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 8, i32 8)
%176 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 9, i32 9)
%177 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.29, i64 0, i64 0), i32 10, i32 10)
%178 = call i32 @fputc(i32 10, i32* %126)
br label %181
179: ; preds = %130
%180 = call i64 @fwrite(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.30, i64 0, i64 0), i64 15, i64 1, i32* %126)
br label %181
181: ; preds = %179, %134
%182 = call i64 @feof(i32* %121)
%183 = icmp eq i64 %182, 0
br i1 %183, label %184, label %711
184: ; preds = %181
%185 = getelementptr inbounds i16, i16* %32, i64 1
%186 = getelementptr inbounds i16, i16* %34, i64 1
%187 = getelementptr inbounds i16, i16* %32, i64 2
%188 = getelementptr inbounds i16, i16* %34, i64 2
%189 = getelementptr inbounds i16, i16* %32, i64 3
%190 = getelementptr inbounds i16, i16* %34, i64 3
%191 = getelementptr inbounds i16, i16* %32, i64 4
%192 = getelementptr inbounds i16, i16* %34, i64 4
%193 = getelementptr inbounds i16, i16* %32, i64 5
%194 = getelementptr inbounds i16, i16* %34, i64 5
%195 = getelementptr inbounds i16, i16* %32, i64 6
%196 = getelementptr inbounds i16, i16* %34, i64 6
%197 = getelementptr inbounds i16, i16* %32, i64 7
%198 = getelementptr inbounds i16, i16* %34, i64 7
%199 = getelementptr inbounds i16, i16* %32, i64 8
%200 = getelementptr inbounds i16, i16* %34, i64 8
%201 = getelementptr inbounds i16, i16* %32, i64 9
%202 = getelementptr inbounds i16, i16* %34, i64 9
%203 = getelementptr inbounds i16, i16* %32, i64 10
%204 = getelementptr inbounds i16, i16* %34, i64 10
%205 = getelementptr inbounds i16, i16* %32, i64 11
%206 = getelementptr inbounds i16, i16* %34, i64 11
%207 = getelementptr inbounds i16, i16* %32, i64 12
%208 = getelementptr inbounds i16, i16* %34, i64 12
%209 = getelementptr inbounds i16, i16* %32, i64 13
%210 = getelementptr inbounds i16, i16* %34, i64 13
%211 = getelementptr inbounds i16, i16* %32, i64 14
%212 = getelementptr inbounds i16, i16* %34, i64 14
%213 = getelementptr inbounds i16, i16* %32, i64 15
%214 = getelementptr inbounds i16, i16* %34, i64 15
%215 = getelementptr inbounds i16, i16* %32, i64 16
%216 = getelementptr inbounds i16, i16* %34, i64 16
%217 = getelementptr inbounds i16, i16* %32, i64 17
%218 = getelementptr inbounds i16, i16* %34, i64 17
%219 = getelementptr inbounds i16, i16* %32, i64 18
%220 = getelementptr inbounds i16, i16* %34, i64 18
%221 = getelementptr inbounds i16, i16* %32, i64 19
%222 = getelementptr inbounds i16, i16* %34, i64 19
%223 = getelementptr inbounds i16, i16* %32, i64 20
%224 = getelementptr inbounds i16, i16* %34, i64 20
%225 = getelementptr inbounds i16, i16* %32, i64 21
%226 = getelementptr inbounds i16, i16* %34, i64 21
%227 = getelementptr inbounds i16, i16* %32, i64 22
%228 = getelementptr inbounds i16, i16* %34, i64 22
%229 = getelementptr inbounds i16, i16* %32, i64 23
%230 = getelementptr inbounds i16, i16* %34, i64 23
%231 = getelementptr inbounds i16, i16* %32, i64 24
%232 = getelementptr inbounds i16, i16* %34, i64 24
%233 = getelementptr inbounds i16, i16* %32, i64 25
%234 = getelementptr inbounds i16, i16* %34, i64 25
%235 = getelementptr inbounds i16, i16* %32, i64 26
%236 = getelementptr inbounds i16, i16* %34, i64 26
%237 = getelementptr inbounds i16, i16* %32, i64 27
%238 = getelementptr inbounds i16, i16* %34, i64 27
%239 = getelementptr inbounds i16, i16* %32, i64 28
%240 = getelementptr inbounds i16, i16* %34, i64 28
%241 = getelementptr inbounds i16, i16* %32, i64 29
%242 = getelementptr inbounds i16, i16* %34, i64 29
%243 = getelementptr inbounds i16, i16* %32, i64 30
%244 = getelementptr inbounds i16, i16* %34, i64 30
%245 = getelementptr inbounds i16, i16* %32, i64 31
%246 = getelementptr inbounds i16, i16* %34, i64 31
%247 = getelementptr inbounds i16, i16* %36, i64 1
%248 = getelementptr inbounds i16, i16* %36, i64 2
%249 = getelementptr inbounds i16, i16* %36, i64 3
%250 = getelementptr inbounds i16, i16* %36, i64 4
%251 = getelementptr inbounds i16, i16* %36, i64 5
%252 = getelementptr inbounds i16, i16* %36, i64 6
%253 = getelementptr inbounds i16, i16* %36, i64 7
%254 = getelementptr inbounds i16, i16* %38, i64 1
%255 = getelementptr inbounds i16, i16* %40, i64 1
%256 = getelementptr inbounds i16, i16* %38, i64 2
%257 = getelementptr inbounds i16, i16* %40, i64 2
%258 = getelementptr inbounds i16, i16* %38, i64 3
%259 = getelementptr inbounds i16, i16* %40, i64 3
%260 = getelementptr inbounds i16, i16* %38, i64 4
%261 = getelementptr inbounds i16, i16* %40, i64 4
%262 = getelementptr inbounds i16, i16* %38, i64 5
%263 = getelementptr inbounds i16, i16* %40, i64 5
%264 = getelementptr inbounds i16, i16* %38, i64 6
%265 = getelementptr inbounds i16, i16* %40, i64 6
%266 = getelementptr inbounds i16, i16* %38, i64 7
%267 = getelementptr inbounds i16, i16* %40, i64 7
%268 = getelementptr inbounds i16, i16* %38, i64 8
%269 = getelementptr inbounds i16, i16* %40, i64 8
%270 = getelementptr inbounds i16, i16* %38, i64 9
%271 = getelementptr inbounds i16, i16* %40, i64 9
br label %272
272: ; preds = %184, %278
%273 = call signext i16 (i32*, i8*, ...) @fscanf(i32* %121, i8* getelementptr inbounds ([372 x i8], [372 x i8]* @.str.31, i64 0, i64 0), i8* %17, i16* %32, i16* %34, i16* %185, i16* %186, i16* %187, i16* %188, i16* %189, i16* %190, i16* %191, i16* %192, i16* %193, i16* %194, i16* %195, i16* %196, i16* %197, i16* %198, i16* %199, i16* %200, i16* %201, i16* %202, i16* %203, i16* %204, i16* %205, i16* %206, i16* %207, i16* %208, i16* %209, i16* %210, i16* %211, i16* %212, i16* %213, i16* %214, i16* %215, i16* %216, i16* %217, i16* %218, i16* %219, i16* %220, i16* %221, i16* %222, i16* %223, i16* %224, i16* %225, i16* %226, i16* %227, i16* %228, i16* %229, i16* %230, i16* %231, i16* %232, i16* %233, i16* %234, i16* %235, i16* %236, i16* %237, i16* %238, i16* %239, i16* %240, i16* %241, i16* %242, i16* %243, i16* %244, i16* %245, i16* %246, i16* %36, i16* %247, i16* %248, i16* %249, i16* %250, i16* %251, i16* %252, i16* %253, i16* %38, i16* %40, i16* %254, i16* %255, i16* %256, i16* %257, i16* %258, i16* %259, i16* %260, i16* %261, i16* %262, i16* %263, i16* %264, i16* %265, i16* %266, i16* %267, i16* %268, i16* %269, i16* %270, i16* %271)
%274 = icmp eq i16 %273, 93
br i1 %274, label %281, label %275
275: ; preds = %272
%276 = sext i16 %273 to i32
%277 = call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([137 x i8], [137 x i8]* @.str.32, i64 0, i64 0), i8* %17, i32 %276)
br label %278
278: ; preds = %708, %508, %275
%279 = call i64 @feof(i32* %121)
%280 = icmp eq i64 %279, 0
br i1 %280, label %272, label %711
281: ; preds = %272
%282 = load i16, i16* %36
%283 = load i16, i16* %247
%284 = sitofp i16 %283 to double
%285 = fmul double %284, 0x3FF1C44444444444
%286 = fptosi double %285 to i16
%287 = load i16, i16* %248
%288 = load i16, i16* %249
%289 = sitofp i16 %288 to double
%290 = fmul double %289, 0x3FF1C44444444444
%291 = fptosi double %290 to i16
%292 = load i16, i16* %250
%293 = load i16, i16* %251
%294 = sitofp i16 %293 to double
%295 = fmul double %294, 0x3FF1C44444444444
%296 = fptosi double %295 to i16
%297 = load i16, i16* %252
%298 = load i16, i16* %253
%299 = sitofp i16 %298 to double
%300 = fmul double %299, 0x3FF1C44444444444
%301 = fptosi double %300 to i16
%302 = load double, double* %7
%303 = sext i16 %297 to i32
%304 = sext i16 %292 to i32
%305 = sub nsw i32 %303, %304
%306 = mul nsw i32 %305, %305
%307 = sext i16 %296 to i32
%308 = sext i16 %301 to i32
%309 = sub nsw i32 %307, %308
%310 = mul nsw i32 %309, %309
%311 = add nuw nsw i32 %310, %306
%312 = sitofp i32 %311 to double
%313 = call signext i16 @sqrt(double %312)
%314 = sitofp i16 %313 to double
%315 = fdiv double %302, %314
%316 = load double, double* %9
%317 = load double, double* %8
%318 = fneg double %317
%319 = load double, double* %7
%320 = fmul double %317, %317
%321 = call double @llvm.fmuladd.f64(double %319, double %319, double %320)
%322 = fneg double %316
%323 = call double @llvm.fmuladd.f64(double %322, double %316, double %321)
%324 = fmul double %319, 2.000000e+00
%325 = fmul double %317, %324
%326 = fdiv double %323, %325
%327 = fptosi double %326 to i16
%328 = call double @acos(i16 signext %327)
%329 = call double @sin(double %328)
%330 = fmul double %329, %318
%331 = load double, double* %7
%332 = load double, double* %8
%333 = fmul double %332, %332
%334 = call double @llvm.fmuladd.f64(double %331, double %331, double %333)
%335 = load double, double* %9
%336 = fneg double %335
%337 = call double @llvm.fmuladd.f64(double %336, double %335, double %334)
%338 = fmul double %331, 2.000000e+00
%339 = fmul double %338, %332
%340 = fdiv double %337, %339
%341 = fptosi double %340 to i16
%342 = call double @acos(i16 signext %341)
%343 = call double @cos(double %342)
%344 = fneg double %332
%345 = call double @llvm.fmuladd.f64(double %344, double %343, double %331)
%346 = fdiv double %330, %345
%347 = call double @atan(double %346)
%348 = sitofp i32 %309 to double
%349 = sitofp i32 %305 to double
%350 = fdiv double %348, %349
%351 = call double @atan(double %350)
%352 = sext i16 %286 to i32
%353 = sext i16 %291 to i32
%354 = sub nsw i32 %352, %353
%355 = sitofp i32 %354 to double
%356 = sext i16 %287 to i32
%357 = sext i16 %282 to i32
%358 = sub nsw i32 %356, %357
%359 = sitofp i32 %358 to double
%360 = fdiv double %355, %359
%361 = call double @atan(double %360)
%362 = fsub double %361, %351
%363 = load double, double* %5
%364 = fneg double %363
%365 = call double @llvm.fmuladd.f64(double %364, double 0xBF91DF46A2529D39, double %362)
%366 = sitofp i16 %292 to double
%367 = fsub double %347, %351
%368 = call double @cos(double %367)
%369 = fdiv double %322, %315
%370 = call double @llvm.fmuladd.f64(double %369, double %368, double %366)
%371 = sitofp i16 %296 to double
%372 = call double @sin(double %367)
%373 = call double @llvm.fmuladd.f64(double %369, double %372, double %371)
%374 = load double, double* %6
%375 = fdiv double %315, %374
%376 = sitofp i16 %282 to double
%377 = fsub double %376, %370
%378 = sitofp i16 %286 to double
%379 = fsub double %378, %373
%380 = fmul double %379, %379
%381 = call double @llvm.fmuladd.f64(double %377, double %377, double %380)
%382 = call signext i16 @sqrt(double %381)
%383 = sitofp i16 %382 to double
%384 = fmul double %375, %383
%385 = fsub double %373, %378
%386 = fmul double %385, %385
%387 = call double @llvm.fmuladd.f64(double %377, double %377, double %386)
%388 = call signext i16 @sqrt(double %387)
%389 = sitofp i16 %388 to double
%390 = fdiv double %377, %389
%391 = fptosi double %390 to i16
%392 = call double @acos(i16 signext %391)
%393 = fsub double %392, %351
%394 = call double @cos(double %393)
%395 = call double @llvm.fmuladd.f64(double %384, double %394, double 3.900000e+02)
%396 = call double @sin(double %393)
%397 = fneg double %384
%398 = call double @llvm.fmuladd.f64(double %397, double %396, double 4.160000e+02)
%399 = fadd double %395, -3.605000e+02
%400 = fsub double 2.670000e+02, %398
%401 = fmul double %400, %400
%402 = call double @llvm.fmuladd.f64(double %399, double %399, double %401)
%403 = call signext i16 @sqrt(double %402)
%404 = sitofp i16 %403 to double
%405 = fdiv double %399, %400
%406 = call double @atan(double %405)
%407 = fadd double %365, %406
%408 = call double @sin(double %407)
%409 = call double @llvm.fmuladd.f64(double %404, double %408, double 3.605000e+02)
%410 = call double @cos(double %407)
%411 = fneg double %404
%412 = call double @llvm.fmuladd.f64(double %411, double %410, double 2.670000e+02)
%413 = load i16, i16* %3
%414 = sitofp i16 %413 to double
%415 = fsub double %414, %409
%416 = fptosi double %415 to i16
%417 = load i16, i16* %4
%418 = sitofp i16 %417 to double
%419 = fsub double %418, %412
%420 = fptosi double %419 to i16
%421 = fneg double %365
%422 = sitofp i16 %416 to double
%423 = sitofp i16 %420 to double
br label %424
424: ; preds = %281, %455
%425 = phi i64 [ 0, %281 ], [ %457, %455 ]
%426 = getelementptr inbounds i16, i16* %32, i64 %425
%427 = load i16, i16* %426
%428 = getelementptr inbounds i16, i16* %34, i64 %425
%429 = icmp eq i16 %427, -1
br i1 %429, label %454, label %430
430: ; preds = %424
%431 = sitofp i16 %427 to double
%432 = load i16, i16* %428
%433 = sitofp i16 %432 to double
%434 = fmul double %433, 0x3FF1C44444444444
%435 = fadd double %431, -3.600000e+02
%436 = fadd double %434, -2.665000e+02
%437 = call double @cos(double %365)
%438 = call double @sin(double %421)
%439 = fmul double %438, %436
%440 = call double @llvm.fmuladd.f64(double %435, double %437, double %439)
%441 = call double @cos(double %365)
%442 = call double @sin(double %421)
%443 = fneg double %435
%444 = fmul double %442, %443
%445 = call double @llvm.fmuladd.f64(double %436, double %441, double %444)
%446 = fadd double %440, 3.600000e+02
%447 = fadd double %445, 2.665000e+02
%448 = fadd double %446, %422
%449 = fadd double %447, %423
%450 = fptosi double %448 to i32
%451 = trunc i32 %450 to i16
store i16 %451, i16* %426
%452 = fptosi double %449 to i32
%453 = trunc i32 %452 to i16
br label %455
454: ; preds = %424
store i16 -1, i16* %426
br label %455
455: ; preds = %430, %454
%456 = phi i16 [ -1, %454 ], [ %453, %430 ]
store i16 %456, i16* %428
%457 = add nuw nsw i64 %425, 1
%458 = icmp eq i64 %457, 32
br i1 %458, label %459, label %424
459: ; preds = %455
%460 = load double, double* %5
%461 = fneg double %460
%462 = call double @llvm.fmuladd.f64(double %461, double 0xBF91DF46A2529D39, double %361)
%463 = fneg double %462
%464 = load i16, i16* %3
%465 = sub i16 %464, %282
%466 = load i16, i16* %4
%467 = sub i16 %466, %286
%468 = sitofp i16 %465 to double
%469 = sitofp i16 %467 to double
br label %470
470: ; preds = %459, %501
%471 = phi i64 [ 0, %459 ], [ %503, %501 ]
%472 = getelementptr inbounds i16, i16* %38, i64 %471
%473 = load i16, i16* %472
%474 = getelementptr inbounds i16, i16* %40, i64 %471
%475 = icmp eq i16 %473, -1
br i1 %475, label %500, label %476
476: ; preds = %470
%477 = sitofp i16 %473 to double
%478 = load i16, i16* %474
%479 = sitofp i16 %478 to double
%480 = fmul double %479, 0x3FF1C44444444444
%481 = fadd double %477, -3.600000e+02
%482 = fadd double %480, -2.665000e+02
%483 = call double @cos(double %462)
%484 = call double @sin(double %463)
%485 = fmul double %484, %482
%486 = call double @llvm.fmuladd.f64(double %481, double %483, double %485)
%487 = call double @cos(double %462)
%488 = call double @sin(double %463)
%489 = fneg double %481
%490 = fmul double %488, %489
%491 = call double @llvm.fmuladd.f64(double %482, double %487, double %490)
%492 = fadd double %486, 3.600000e+02
%493 = fadd double %491, 2.665000e+02
%494 = fadd double %492, %468
%495 = fadd double %493, %469
%496 = fptosi double %494 to i32
%497 = trunc i32 %496 to i16
store i16 %497, i16* %472
%498 = fptosi double %495 to i32
%499 = trunc i32 %498 to i16
br label %501
500: ; preds = %470
store i16 -1, i16* %472
br label %501
501: ; preds = %476, %500
%502 = phi i16 [ -1, %500 ], [ %499, %476 ]
store i16 %502, i16* %474
%503 = add nuw nsw i64 %471, 1
%504 = icmp eq i64 %503, 10
br i1 %504, label %505, label %470
505: ; preds = %501
%506 = load i8, i8* %30
%507 = icmp eq i8 %506, 121
br i1 %507, label %508, label %678
508: ; preds = %505
%509 = load i16, i16* %32
%510 = sext i16 %509 to i32
%511 = load i16, i16* %34
%512 = sext i16 %511 to i32
%513 = load i16, i16* %185
%514 = sext i16 %513 to i32
%515 = load i16, i16* %186
%516 = sext i16 %515 to i32
%517 = load i16, i16* %187
%518 = sext i16 %517 to i32
%519 = load i16, i16* %188
%520 = sext i16 %519 to i32
%521 = load i16, i16* %189
%522 = sext i16 %521 to i32
%523 = load i16, i16* %190
%524 = sext i16 %523 to i32
%525 = load i16, i16* %191
%526 = sext i16 %525 to i32
%527 = load i16, i16* %192
%528 = sext i16 %527 to i32
%529 = load i16, i16* %193
%530 = sext i16 %529 to i32
%531 = load i16, i16* %194
%532 = sext i16 %531 to i32
%533 = load i16, i16* %195
%534 = sext i16 %533 to i32
%535 = load i16, i16* %196
%536 = sext i16 %535 to i32
%537 = load i16, i16* %197
%538 = sext i16 %537 to i32
%539 = load i16, i16* %198
%540 = sext i16 %539 to i32
%541 = load i16, i16* %199
%542 = sext i16 %541 to i32
%543 = load i16, i16* %200
%544 = sext i16 %543 to i32
%545 = load i16, i16* %201
%546 = sext i16 %545 to i32
%547 = load i16, i16* %202
%548 = sext i16 %547 to i32
%549 = load i16, i16* %203
%550 = sext i16 %549 to i32
%551 = load i16, i16* %204
%552 = sext i16 %551 to i32
%553 = load i16, i16* %205
%554 = sext i16 %553 to i32
%555 = load i16, i16* %206
%556 = sext i16 %555 to i32
%557 = load i16, i16* %207
%558 = sext i16 %557 to i32
%559 = load i16, i16* %208
%560 = sext i16 %559 to i32
%561 = load i16, i16* %209
%562 = sext i16 %561 to i32
%563 = load i16, i16* %210
%564 = sext i16 %563 to i32
%565 = load i16, i16* %211
%566 = sext i16 %565 to i32
%567 = load i16, i16* %212
%568 = sext i16 %567 to i32
%569 = load i16, i16* %213
%570 = sext i16 %569 to i32
%571 = load i16, i16* %214
%572 = sext i16 %571 to i32
%573 = load i16, i16* %215
%574 = sext i16 %573 to i32
%575 = load i16, i16* %216
%576 = sext i16 %575 to i32
%577 = load i16, i16* %217
%578 = sext i16 %577 to i32
%579 = load i16, i16* %218
%580 = sext i16 %579 to i32
%581 = load i16, i16* %219
%582 = sext i16 %581 to i32
%583 = load i16, i16* %220
%584 = sext i16 %583 to i32
%585 = load i16, i16* %221
%586 = sext i16 %585 to i32
%587 = load i16, i16* %222
%588 = sext i16 %587 to i32
%589 = load i16, i16* %223
%590 = sext i16 %589 to i32
%591 = load i16, i16* %224
%592 = sext i16 %591 to i32
%593 = load i16, i16* %225
%594 = sext i16 %593 to i32
%595 = load i16, i16* %226
%596 = sext i16 %595 to i32
%597 = load i16, i16* %227
%598 = sext i16 %597 to i32
%599 = load i16, i16* %228
%600 = sext i16 %599 to i32
%601 = load i16, i16* %229
%602 = sext i16 %601 to i32
%603 = load i16, i16* %230
%604 = sext i16 %603 to i32
%605 = load i16, i16* %231
%606 = sext i16 %605 to i32
%607 = load i16, i16* %232
%608 = sext i16 %607 to i32
%609 = load i16, i16* %233
%610 = sext i16 %609 to i32
%611 = load i16, i16* %234
%612 = sext i16 %611 to i32
%613 = load i16, i16* %235
%614 = sext i16 %613 to i32
%615 = load i16, i16* %236
%616 = sext i16 %615 to i32
%617 = load i16, i16* %237
%618 = sext i16 %617 to i32
%619 = load i16, i16* %238
%620 = sext i16 %619 to i32
%621 = load i16, i16* %239
%622 = sext i16 %621 to i32
%623 = load i16, i16* %240
%624 = sext i16 %623 to i32
%625 = load i16, i16* %241
%626 = sext i16 %625 to i32
%627 = load i16, i16* %242
%628 = sext i16 %627 to i32
%629 = load i16, i16* %243
%630 = sext i16 %629 to i32
%631 = load i16, i16* %244
%632 = sext i16 %631 to i32
%633 = load i16, i16* %245
%634 = sext i16 %633 to i32
%635 = load i16, i16* %246
%636 = sext i16 %635 to i32
%637 = load i16, i16* %38
%638 = sext i16 %637 to i32
%639 = load i16, i16* %40
%640 = sext i16 %639 to i32
%641 = load i16, i16* %254
%642 = sext i16 %641 to i32
%643 = load i16, i16* %255
%644 = sext i16 %643 to i32
%645 = load i16, i16* %256
%646 = sext i16 %645 to i32
%647 = load i16, i16* %257
%648 = sext i16 %647 to i32
%649 = load i16, i16* %258
%650 = sext i16 %649 to i32
%651 = load i16, i16* %259
%652 = sext i16 %651 to i32
%653 = load i16, i16* %260
%654 = sext i16 %653 to i32
%655 = load i16, i16* %261
%656 = sext i16 %655 to i32
%657 = load i16, i16* %262
%658 = sext i16 %657 to i32
%659 = load i16, i16* %263
%660 = sext i16 %659 to i32
%661 = load i16, i16* %264
%662 = sext i16 %661 to i32
%663 = load i16, i16* %265
%664 = sext i16 %663 to i32
%665 = load i16, i16* %266
%666 = sext i16 %665 to i32
%667 = load i16, i16* %267
%668 = sext i16 %667 to i32
%669 = load i16, i16* %268
%670 = sext i16 %669 to i32
%671 = load i16, i16* %269
%672 = sext i16 %671 to i32
%673 = load i16, i16* %270
%674 = sext i16 %673 to i32
%675 = load i16, i16* %271
%676 = sext i16 %675 to i32
%677 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([340 x i8], [340 x i8]* @.str.33, i64 0, i64 0), i8* %17, i32 %510, i32 %512, i32 %514, i32 %516, i32 %518, i32 %520, i32 %522, i32 %524, i32 %526, i32 %528, i32 %530, i32 %532, i32 %534, i32 %536, i32 %538, i32 %540, i32 %542, i32 %544, i32 %546, i32 %548, i32 %550, i32 %552, i32 %554, i32 %556, i32 %558, i32 %560, i32 %562, i32 %564, i32 %566, i32 %568, i32 %570, i32 %572, i32 %574, i32 %576, i32 %578, i32 %580, i32 %582, i32 %584, i32 %586, i32 %588, i32 %590, i32 %592, i32 %594, i32 %596, i32 %598, i32 %600, i32 %602, i32 %604, i32 %606, i32 %608, i32 %610, i32 %612, i32 %614, i32 %616, i32 %618, i32 %620, i32 %622, i32 %624, i32 %626, i32 %628, i32 %630, i32 %632, i32 %634, i32 %636, i32 %638, i32 %640, i32 %642, i32 %644, i32 %646, i32 %648, i32 %650, i32 %652, i32 %654, i32 %656, i32 %658, i32 %660, i32 %662, i32 %664, i32 %666, i32 %668, i32 %670, i32 %672, i32 %674, i32 %676)
br label %278
678: ; preds = %505
%679 = call i8* @strpbrk(i8* %17, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.34, i64 0, i64 0))
%680 = ptrtoint i8* %679 to i64
%681 = sub i64 %680, %16
%682 = trunc i64 %681 to i16
%683 = call i32 @strncpy(i8* %26, i8* %17, i16 signext %682)
%684 = shl i64 %681, 48
%685 = ashr exact i64 %684, 48
%686 = getelementptr inbounds i8, i8* %26, i64 %685
store i8 0, i8* %686
%687 = call i8* @strchr(i8* dereferenceable(1) %17, i8 signext 95)
%688 = call i8* @strpbrk(i8* %17, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.34, i64 0, i64 0))
%689 = ptrtoint i8* %687 to i64
%690 = ptrtoint i8* %688 to i64
%691 = sub i64 %689, %690
%692 = trunc i64 %691 to i16
%693 = call i32 @strncpy(i8* %28, i8* %688, i16 signext %692)
%694 = shl i64 %691, 48
%695 = ashr exact i64 %694, 48
%696 = getelementptr inbounds i8, i8* %28, i64 %695
store i8 0, i8* %696
br label %697
697: ; preds = %678, %708
%698 = phi i64 [ 0, %678 ], [ %709, %708 ]
%699 = getelementptr inbounds i16, i16* %32, i64 %698
%700 = load i16, i16* %699
%701 = icmp eq i16 %700, -1
br i1 %701, label %708, label %702
702: ; preds = %697
%703 = sext i16 %700 to i32
%704 = getelementptr inbounds i16, i16* %34, i64 %698
%705 = load i16, i16* %704
%706 = sext i16 %705 to i32
%707 = call i32 (i32*, i8*, ...) @fprintf(i32* %126, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.35, i64 0, i64 0), i8* %26, i8* %28, i32 %703, i32 %706)
br label %708
708: ; preds = %697, %702
%709 = add nuw nsw i64 %698, 1
%710 = icmp eq i64 %709, 32
br i1 %710, label %278, label %697
711: ; preds = %278, %181
%712 = call i32 @fclose(i32* %121)
%713 = call i32 @fclose(i32* %126)
br label %714
714: ; preds = %711, %128, %123, %78, %73, %68, %63, %58, %53, %48, %43
%715 = phi i32 [ -1, %43 ], [ -1, %48 ], [ -1, %53 ], [ -1, %58 ], [ -1, %63 ], [ -1, %68 ], [ -1, %73 ], [ -1, %78 ], [ -1, %123 ], [ -1, %128 ], [ 0, %711 ]
ret i32 %715
}