#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 */

/* Variables and functions */
int /*<<< orphan*/ strcpy(char *, char *);
void ffgerr(int status, char *errtext) {
  errtext[0] = '\0';
  if (status >= 0 && status < 300) {
    switch (status) {
    case 0:
      strcpy(errtext, "OK - no error");
      break;
    case 1:
      strcpy(errtext, "non-CFITSIO program error");
      break;
    case 101:
      strcpy(errtext, "same input and output files");
      break;
    case 103:
      strcpy(errtext, "attempt to open too many files");
      break;
    case 104:
      strcpy(errtext, "could not open the named file");
      break;
    case 105:
      strcpy(errtext, "couldn't create the named file");
      break;
    case 106:
      strcpy(errtext, "error writing to FITS file");
      break;
    case 107:
      strcpy(errtext, "tried to move past end of file");
      break;
    case 108:
      strcpy(errtext, "error reading from FITS file");
      break;
    case 110:
      strcpy(errtext, "could not close the file");
      break;
    case 111:
      strcpy(errtext, "array dimensions too big");
      break;
    case 112:
      strcpy(errtext, "cannot write to readonly file");
      break;
    case 113:
      strcpy(errtext, "could not allocate memory");
      break;
    case 114:
      strcpy(errtext, "invalid fitsfile pointer");
      break;
    case 115:
      strcpy(errtext, "NULL input pointer");
      break;
    case 116:
      strcpy(errtext, "error seeking file position");
      break;
    case 121:
      strcpy(errtext, "invalid URL prefix");
      break;
    case 122:
      strcpy(errtext, "too many I/O drivers");
      break;
    case 123:
      strcpy(errtext, "I/O driver init failed");
      break;
    case 124:
      strcpy(errtext, "no I/O driver for this URLtype");
      break;
    case 125:
      strcpy(errtext, "parse error in input file URL");
      break;
    case 126:
      strcpy(errtext, "parse error in range list");
      break;
    case 151:
      strcpy(errtext, "bad argument (shared mem drvr)");
      break;
    case 152:
      strcpy(errtext, "null ptr arg (shared mem drvr)");
      break;
    case 153:
      strcpy(errtext, "no free shared memory handles");
      break;
    case 154:
      strcpy(errtext, "share mem drvr not initialized");
      break;
    case 155:
      strcpy(errtext, "IPC system error (shared mem)");
      break;
    case 156:
      strcpy(errtext, "no memory (shared mem drvr)");
      break;
    case 157:
      strcpy(errtext, "share mem resource deadlock");
      break;
    case 158:
      strcpy(errtext, "lock file open/create failed");
      break;
    case 159:
      strcpy(errtext, "can't resize share mem block");
      break;
    case 201:
      strcpy(errtext, "header already has keywords");
      break;
    case 202:
      strcpy(errtext, "keyword not found in header");
      break;
    case 203:
      strcpy(errtext, "keyword number out of bounds");
      break;
    case 204:
      strcpy(errtext, "keyword value is undefined");
      break;
    case 205:
      strcpy(errtext, "string missing closing quote");
      break;
    case 206:
      strcpy(errtext, "error in indexed keyword name");
      break;
    case 207:
      strcpy(errtext, "illegal character in keyword");
      break;
    case 208:
      strcpy(errtext, "required keywords out of order");
      break;
    case 209:
      strcpy(errtext, "keyword value not positive int");
      break;
    case 210:
      strcpy(errtext, "END keyword not found");
      break;
    case 211:
      strcpy(errtext, "illegal BITPIX keyword value");
      break;
    case 212:
      strcpy(errtext, "illegal NAXIS keyword value");
      break;
    case 213:
      strcpy(errtext, "illegal NAXISn keyword value");
      break;
    case 214:
      strcpy(errtext, "illegal PCOUNT keyword value");
      break;
    case 215:
      strcpy(errtext, "illegal GCOUNT keyword value");
      break;
    case 216:
      strcpy(errtext, "illegal TFIELDS keyword value");
      break;
    case 217:
      strcpy(errtext, "negative table row size");
      break;
    case 218:
      strcpy(errtext, "negative number of rows");
      break;
    case 219:
      strcpy(errtext, "named column not found");
      break;
    case 220:
      strcpy(errtext, "illegal SIMPLE keyword value");
      break;
    case 221:
      strcpy(errtext, "first keyword not SIMPLE");
      break;
    case 222:
      strcpy(errtext, "second keyword not BITPIX");
      break;
    case 223:
      strcpy(errtext, "third keyword not NAXIS");
      break;
    case 224:
      strcpy(errtext, "missing NAXISn keywords");
      break;
    case 225:
      strcpy(errtext, "first keyword not XTENSION");
      break;
    case 226:
      strcpy(errtext, "CHDU not an ASCII table");
      break;
    case 227:
      strcpy(errtext, "CHDU not a binary table");
      break;
    case 228:
      strcpy(errtext, "PCOUNT keyword not found");
      break;
    case 229:
      strcpy(errtext, "GCOUNT keyword not found");
      break;
    case 230:
      strcpy(errtext, "TFIELDS keyword not found");
      break;
    case 231:
      strcpy(errtext, "missing TBCOLn keyword");
      break;
    case 232:
      strcpy(errtext, "missing TFORMn keyword");
      break;
    case 233:
      strcpy(errtext, "CHDU not an IMAGE extension");
      break;
    case 234:
      strcpy(errtext, "illegal TBCOLn keyword value");
      break;
    case 235:
      strcpy(errtext, "CHDU not a table extension");
      break;
    case 236:
      strcpy(errtext, "column exceeds width of table");
      break;
    case 237:
      strcpy(errtext, "more than 1 matching col. name");
      break;
    case 241:
      strcpy(errtext, "row width not = field widths");
      break;
    case 251:
      strcpy(errtext, "unknown FITS extension type");
      break;
    case 252:
      strcpy(errtext, "1st key not SIMPLE or XTENSION");
      break;
    case 253:
      strcpy(errtext, "END keyword is not blank");
      break;
    case 254:
      strcpy(errtext, "Header fill area not blank");
      break;
    case 255:
      strcpy(errtext, "Data fill area invalid");
      break;
    case 261:
      strcpy(errtext, "illegal TFORM format code");
      break;
    case 262:
      strcpy(errtext, "unknown TFORM datatype code");
      break;
    case 263:
      strcpy(errtext, "illegal TDIMn keyword value");
      break;
    case 264:
      strcpy(errtext, "invalid BINTABLE heap pointer");
      break;
    default:
      strcpy(errtext, "unknown error status");
      break;
    }
  } else if (status < 600) {
    switch (status) {
    case 301:
      strcpy(errtext, "illegal HDU number");
      break;
    case 302:
      strcpy(errtext, "column number < 1 or > tfields");
      break;
    case 304:
      strcpy(errtext, "negative byte address");
      break;
    case 306:
      strcpy(errtext, "negative number of elements");
      break;
    case 307:
      strcpy(errtext, "bad first row number");
      break;
    case 308:
      strcpy(errtext, "bad first element number");
      break;
    case 309:
      strcpy(errtext, "not an ASCII (A) column");
      break;
    case 310:
      strcpy(errtext, "not a logical (L) column");
      break;
    case 311:
      strcpy(errtext, "bad ASCII table datatype");
      break;
    case 312:
      strcpy(errtext, "bad binary table datatype");
      break;
    case 314:
      strcpy(errtext, "null value not defined");
      break;
    case 317:
      strcpy(errtext, "not a variable length column");
      break;
    case 320:
      strcpy(errtext, "illegal number of dimensions");
      break;
    case 321:
      strcpy(errtext, "1st pixel no. > last pixel no.");
      break;
    case 322:
      strcpy(errtext, "BSCALE or TSCALn = 0.");
      break;
    case 323:
      strcpy(errtext, "illegal axis length < 1");
      break;
    case 340:
      strcpy(errtext, "not group table");
      break;
    case 341:
      strcpy(errtext, "HDU already member of group");
      break;
    case 342:
      strcpy(errtext, "group member not found");
      break;
    case 343:
      strcpy(errtext, "group not found");
      break;
    case 344:
      strcpy(errtext, "bad group id");
      break;
    case 345:
      strcpy(errtext, "too many HDUs tracked");
      break;
    case 346:
      strcpy(errtext, "HDU alread tracked");
      break;
    case 347:
      strcpy(errtext, "bad Grouping option");
      break;
    case 348:
      strcpy(errtext, "identical pointers (groups)");
      break;
    case 360:
      strcpy(errtext, "malloc failed in parser");
      break;
    case 361:
      strcpy(errtext, "file read error in parser");
      break;
    case 362:
      strcpy(errtext, "null pointer arg (parser)");
      break;
    case 363:
      strcpy(errtext, "empty line (parser)");
      break;
    case 364:
      strcpy(errtext, "cannot unread > 1 line");
      break;
    case 365:
      strcpy(errtext, "parser too deeply nested");
      break;
    case 366:
      strcpy(errtext, "file open failed (parser)");
      break;
    case 367:
      strcpy(errtext, "hit EOF (parser)");
      break;
    case 368:
      strcpy(errtext, "bad argument (parser)");
      break;
    case 369:
      strcpy(errtext, "unexpected token (parser)");
      break;
    case 401:
      strcpy(errtext, "bad int to string conversion");
      break;
    case 402:
      strcpy(errtext, "bad float to string conversion");
      break;
    case 403:
      strcpy(errtext, "keyword value not integer");
      break;
    case 404:
      strcpy(errtext, "keyword value not logical");
      break;
    case 405:
      strcpy(errtext, "keyword value not floating pt");
      break;
    case 406:
      strcpy(errtext, "keyword value not double");
      break;
    case 407:
      strcpy(errtext, "bad string to int conversion");
      break;
    case 408:
      strcpy(errtext, "bad string to float conversion");
      break;
    case 409:
      strcpy(errtext, "bad string to double convert");
      break;
    case 410:
      strcpy(errtext, "illegal datatype code value");
      break;
    case 411:
      strcpy(errtext, "illegal no. of decimals");
      break;
    case 412:
      strcpy(errtext, "datatype conversion overflow");
      break;
    case 413:
      strcpy(errtext, "error compressing image");
      break;
    case 414:
      strcpy(errtext, "error uncompressing image");
      break;
    case 420:
      strcpy(errtext, "bad date or time conversion");
      break;
    case 431:
      strcpy(errtext, "syntax error in expression");
      break;
    case 432:
      strcpy(errtext, "expression result wrong type");
      break;
    case 433:
      strcpy(errtext, "vector result too large");
      break;
    case 434:
      strcpy(errtext, "missing output column");
      break;
    case 435:
      strcpy(errtext, "bad data in parsed column");
      break;
    case 436:
      strcpy(errtext, "output extension of wrong type");
      break;
    case 501:
      strcpy(errtext, "WCS angle too large");
      break;
    case 502:
      strcpy(errtext, "bad WCS coordinate");
      break;
    case 503:
      strcpy(errtext, "error in WCS calculation");
      break;
    case 504:
      strcpy(errtext, "bad WCS projection type");
      break;
    case 505:
      strcpy(errtext, "WCS keywords not found");
      break;
    default:
      strcpy(errtext, "unknown error status");
      break;
    }
  } else {
    strcpy(errtext, "unknown error status");
  }
  return;
}


x86 assembly (clang, -O0):
<ffgerr>:
push   %rbp
mov    %rsp,%rbp
sub    $0x20,%rsp
mov    %edi,-0x4(%rbp)
mov    %rsi,-0x10(%rbp)
mov    -0x10(%rbp),%rax
movb   $0x0,(%rax)
cmpl   $0x0,-0x4(%rbp)
jl     17df <ffgerr+0x6cf>
cmpl   $0x12c,-0x4(%rbp)
jge    17df <ffgerr+0x6cf>
mov    -0x4(%rbp),%eax
mov    %rax,-0x18(%rbp)
sub    $0x108,%rax
ja     17ca <ffgerr+0x6ba>
mov    -0x18(%rbp),%rax
lea    0x11d9(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
mov    -0x10(%rbp),%rdi
lea    0x15e9(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x15e2(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x15e7(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x15ee(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x15f8(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1601(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x160b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1611(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x161b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1623(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1627(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x162b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1634(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1639(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x163d(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x163b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1642(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1640(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1640(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1642(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x164c(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1655(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x165a(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1664(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x166e(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1677(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1681(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x168a(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1691(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1698(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16a0(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16a8(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16af(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16b6(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16be(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16c4(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16cc(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16d5(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16dd(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16e7(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16f1(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16f2(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x16fa(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1701(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1709(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1711(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1719(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1722(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1725(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1728(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x172a(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1732(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1736(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x173b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x173e(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1741(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1747(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x174a(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x174d(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1751(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1755(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x175a(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x175c(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x175e(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1765(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x176d(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1773(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x177c(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1786(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x178e(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x1795(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x179f(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x17a3(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x17a9(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x17ab(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x17b0(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x17b7(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x17be(%rip),%rsi
call   1030 <strcpy@plt>
jmp    17da <ffgerr+0x6ca>
mov    -0x10(%rbp),%rdi
lea    0x17c7(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d44 <ffgerr+0xc34>
cmpl   $0x258,-0x4(%rbp)
jge    1d2f <ffgerr+0xc1f>
mov    -0x4(%rbp),%eax
add    $0xfffffed3,%eax
mov    %eax,%ecx
mov    %rcx,-0x20(%rbp)
sub    $0xcc,%eax
ja     1d1a <ffgerr+0xc0a>
mov    -0x20(%rbp),%rax
lea    0x7f0(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
mov    -0x10(%rbp),%rdi
lea    0x178d(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x178b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1795(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1796(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x179d(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x179d(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17a1(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17a4(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17a8(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17ac(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17b1(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17b3(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17bb(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17c3(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17cd(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17ce(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17d1(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17cc(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17d3(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17d5(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17d0(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17c8(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17c9(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17c7(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17c6(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17cd(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17d0(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17d5(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17da(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17d9(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17db(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17df(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17e4(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17e0(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17e1(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17e6(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17ee(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17f8(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x17fd(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1802(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x180b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x180f(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1817(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1821(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1829(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1830(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1833(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x183b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x183e(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1843(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x184a(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1850(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1858(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x185b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x185c(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1861(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x186b(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x186a(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1868(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x186c(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x186f(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d2a <ffgerr+0xc1a>
mov    -0x10(%rbp),%rdi
lea    0x1277(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d3f <ffgerr+0xc2f>
mov    -0x10(%rbp),%rdi
lea    0x1262(%rip),%rsi
call   1030 <strcpy@plt>
jmp    1d44 <ffgerr+0xc34>
add    $0x20,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<ffgerr>:
mov    %rsi,%rax
movb   $0x0,(%rsi)
cmp    $0x12b,%edi
ja     114e <ffgerr+0x3e>
cmp    $0x108,%edi
ja     119c <ffgerr+0x8c>
lea    0x162b(%rip),%rsi
mov    %edi,%ecx
lea    0x11fe(%rip),%rdx
movslq (%rdx,%rcx,4),%rcx
add    %rdx,%rcx
jmp    *%rcx
lea    0x1620(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1e47(%rip),%rcx
cmp    $0x257,%edi
jg     1191 <ffgerr+0x81>
add    $0xfffffed3,%edi
cmp    $0xcc,%edi
ja     1191 <ffgerr+0x81>
lea    0x1e3f(%rip),%rsi
lea    0xe87(%rip),%rdx
movslq (%rdx,%rdi,4),%rdi
add    %rdx,%rdi
jmp    *%rdi
lea    0x1e3b(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
mov    %rcx,%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1df9(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x15ce(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x15db(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x15eb(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x15fa(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x160a(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1616(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1626(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1634(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x163e(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1648(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1657(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1662(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x166c(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1670(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x167d(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1681(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1687(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x168f(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x169f(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x16ae(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x16b9(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x16c9(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x16d9(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x16e8(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x16f8(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1707(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1714(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1721(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x172f(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x173d(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x174a(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1757(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1765(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1771(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x177f(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x178e(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x179c(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x17ac(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x17bc(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x17c3(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x17d1(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x17de(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x17ec(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x17fa(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1808(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1817(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1820(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1829(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1831(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x183f(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1849(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1854(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x185d(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1866(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1872(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x187b(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1884(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x188e(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1898(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x18a3(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x18ab(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x18b3(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x18c0(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x18ce(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x18da(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x18e9(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x18f9(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1907(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1914(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1924(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x192e(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x193a(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1942(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x194d(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x195a(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1967(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x19bd(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x19c4(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x19d1(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x19d7(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x19e1(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x19ea(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x19f4(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x19fe(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a09(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a11(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a1f(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a2d(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a3d(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a44(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a4d(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a4e(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a5b(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a63(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a64(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a62(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a69(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a6d(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a72(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a7f(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a88(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a93(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1a9e(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1aa3(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1aab(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1ab5(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1ac0(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1ac2(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1ac9(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1ad4(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1ae2(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1af2(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1afd(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b08(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b17(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b21(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b2f(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b3f(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b4d(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b5a(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b63(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b71(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b7a(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b85(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b92(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1b9e(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1bac(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1bb5(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1bbc(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1bc7(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1bd7(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1bdc(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1be0(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1bea(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>
lea    0x1bf3(%rip),%rsi
mov    %rax,%rdi
jmp    1030 <strcpy@plt>

LLVM IR (-O0):
@.str = [14 x i8] c"OK - no error\00"
@.str.1 = [26 x i8] c"non-CFITSIO program error\00"
@.str.2 = [28 x i8] c"same input and output files\00"
@.str.3 = [31 x i8] c"attempt to open too many files\00"
@.str.4 = [30 x i8] c"could not open the named file\00"
@.str.5 = [31 x i8] c"couldn't create the named file\00"
@.str.6 = [27 x i8] c"error writing to FITS file\00"
@.str.7 = [31 x i8] c"tried to move past end of file\00"
@.str.8 = [29 x i8] c"error reading from FITS file\00"
@.str.9 = [25 x i8] c"could not close the file\00"
@.str.10 = [25 x i8] c"array dimensions too big\00"
@.str.11 = [30 x i8] c"cannot write to file\00"
@.str.12 = [26 x i8] c"could not allocate memory\00"
@.str.13 = [25 x i8] c"invalid fitsfile pointer\00"
@.str.14 = [19 x i8] c"NULL input pointer\00"
@.str.15 = [28 x i8] c"error seeking file position\00"
@.str.16 = [19 x i8] c"invalid URL prefix\00"
@.str.17 = [21 x i8] c"too many I/O drivers\00"
@.str.18 = [23 x i8] c"I/O driver init failed\00"
@.str.19 = [31 x i8] c"no I/O driver for this URLtype\00"
@.str.20 = [30 x i8] c"parse error in input file URL\00"
@.str.21 = [26 x i8] c"parse error in range list\00"
@.str.22 = [31 x i8] c"bad argument (shared mem drvr)\00"
@.str.23 = [31 x i8] c"null ptr arg (shared mem drvr)\00"
@.str.24 = [30 x i8] c"no free shared memory handles\00"
@.str.25 = [31 x i8] c"share mem drvr not initialized\00"
@.str.26 = [30 x i8] c"IPC system error (shared mem)\00"
@.str.27 = [28 x i8] c"no memory (shared mem drvr)\00"
@.str.28 = [28 x i8] c"share mem resource deadlock\00"
@.str.29 = [29 x i8] c"lock file open/create failed\00"
@.str.30 = [29 x i8] c"can't resize share mem block\00"
@.str.31 = [28 x i8] c"header already has keywords\00"
@.str.32 = [28 x i8] c"keyword not found in header\00"
@.str.33 = [29 x i8] c"keyword number out of bounds\00"
@.str.34 = [27 x i8] c"keyword value is undefined\00"
@.str.35 = [29 x i8] c"string missing closing quote\00"
@.str.36 = [30 x i8] c"error in indexed keyword name\00"
@.str.37 = [29 x i8] c"illegal character in keyword\00"
@.str.38 = [31 x i8] c"required keywords out of order\00"
@.str.39 = [31 x i8] c"keyword value not positive int\00"
@.str.40 = [22 x i8] c"END keyword not found\00"
@.str.41 = [29 x i8] c"illegal BITPIX keyword value\00"
@.str.42 = [28 x i8] c"illegal NAXIS keyword value\00"
@.str.43 = [29 x i8] c"illegal NAXISn keyword value\00"
@.str.44 = [29 x i8] c"illegal PCOUNT keyword value\00"
@.str.45 = [29 x i8] c"illegal GCOUNT keyword value\00"
@.str.46 = [30 x i8] c"illegal TFIELDS keyword value\00"
@.str.47 = [24 x i8] c"negative table row size\00"
@.str.48 = [24 x i8] c"negative number of rows\00"
@.str.49 = [23 x i8] c"named column not found\00"
@.str.50 = [29 x i8] c"illegal SIMPLE keyword value\00"
@.str.51 = [25 x i8] c"first keyword not SIMPLE\00"
@.str.52 = [26 x i8] c"second keyword not BITPIX\00"
@.str.53 = [24 x i8] c"third keyword not NAXIS\00"
@.str.54 = [24 x i8] c"missing NAXISn keywords\00"
@.str.55 = [27 x i8] c"first keyword not XTENSION\00"
@.str.56 = [24 x i8] c"CHDU not an ASCII table\00"
@.str.57 = [24 x i8] c"CHDU not a binary table\00"
@.str.58 = [25 x i8] c"PCOUNT keyword not found\00"
@.str.59 = [25 x i8] c"GCOUNT keyword not found\00"
@.str.60 = [26 x i8] c"TFIELDS keyword not found\00"
@.str.61 = [23 x i8] c"missing TBCOLn keyword\00"
@.str.62 = [23 x i8] c"missing TFORMn keyword\00"
@.str.63 = [28 x i8] c"CHDU not an IMAGE extension\00"
@.str.64 = [29 x i8] c"illegal TBCOLn keyword value\00"
@.str.65 = [27 x i8] c"CHDU not a table extension\00"
@.str.66 = [30 x i8] c"column exceeds width of table\00"
@.str.67 = [31 x i8] c"more than 1 matching col. name\00"
@.str.68 = [29 x i8] c"row width not = field widths\00"
@.str.69 = [28 x i8] c"unknown FITS extension type\00"
@.str.70 = [31 x i8] c"1st key not SIMPLE or XTENSION\00"
@.str.71 = [25 x i8] c"END keyword is not blank\00"
@.str.72 = [27 x i8] c"Header fill area not blank\00"
@.str.73 = [23 x i8] c"Data fill area invalid\00"
@.str.74 = [26 x i8] c"illegal TFORM format code\00"
@.str.75 = [28 x i8] c"unknown TFORM datatype code\00"
@.str.76 = [28 x i8] c"illegal TDIMn keyword value\00"
@.str.77 = [30 x i8] c"invalid BINTABLE heap pointer\00"
@.str.78 = [21 x i8] c"unknown error status\00"
@.str.79 = [19 x i8] c"illegal HDU number\00"
@.str.80 = [31 x i8] c"column number < 1 or > tfields\00"
@.str.81 = [22 x i8] c"negative byte address\00"
@.str.82 = [28 x i8] c"negative number of elements\00"
@.str.83 = [21 x i8] c"bad first row number\00"
@.str.84 = [25 x i8] c"bad first element number\00"
@.str.85 = [24 x i8] c"not an ASCII (A) column\00"
@.str.86 = [25 x i8] c"not a logical (L) column\00"
@.str.87 = [25 x i8] c"bad ASCII table datatype\00"
@.str.88 = [26 x i8] c"bad binary table datatype\00"
@.str.89 = [23 x i8] c"null value not defined\00"
@.str.90 = [29 x i8] c"not a variable length column\00"
@.str.91 = [29 x i8] c"illegal number of dimensions\00"
@.str.92 = [31 x i8] c"1st pixel no. > last pixel no.\00"
@.str.93 = [22 x i8] c"BSCALE or TSCALn = 0.\00"
@.str.94 = [24 x i8] c"illegal axis length < 1\00"
@.str.95 = [16 x i8] c"not group table\00"
@.str.96 = [28 x i8] c"HDU already member of group\00"
@.str.97 = [23 x i8] c"group member not found\00"
@.str.98 = [16 x i8] c"group not found\00"
@.str.99 = [13 x i8] c"bad group id\00"
@.str.100 = [22 x i8] c"too many HDUs tracked\00"
@.str.101 = [19 x i8] c"HDU alread tracked\00"
@.str.102 = [20 x i8] c"bad Grouping option\00"
@.str.103 = [28 x i8] c"identical pointers (groups)\00"
@.str.104 = [24 x i8] c"malloc failed in parser\00"
@.str.105 = [26 x i8] c"file read error in parser\00"
@.str.106 = [26 x i8] c"null pointer arg (parser)\00"
@.str.107 = [20 x i8] c"empty line (parser)\00"
@.str.108 = [23 x i8] c"cannot unread > 1 line\00"
@.str.109 = [25 x i8] c"parser too deeply nested\00"
@.str.110 = [26 x i8] c"file open failed (parser)\00"
@.str.111 = [17 x i8] c"hit EOF (parser)\00"
@.str.112 = [22 x i8] c"bad argument (parser)\00"
@.str.113 = [26 x i8] c"unexpected token (parser)\00"
@.str.114 = [29 x i8] c"bad int to string conversion\00"
@.str.115 = [31 x i8] c"bad float to string conversion\00"
@.str.116 = [26 x i8] c"keyword value not integer\00"
@.str.117 = [26 x i8] c"keyword value not logical\00"
@.str.118 = [30 x i8] c"keyword value not floating pt\00"
@.str.119 = [25 x i8] c"keyword value not double\00"
@.str.120 = [29 x i8] c"bad string to int conversion\00"
@.str.121 = [31 x i8] c"bad string to float conversion\00"
@.str.122 = [29 x i8] c"bad string to double convert\00"
@.str.123 = [28 x i8] c"illegal datatype code value\00"
@.str.124 = [24 x i8] c"illegal no. of decimals\00"
@.str.125 = [29 x i8] c"datatype conversion overflow\00"
@.str.126 = [24 x i8] c"error compressing image\00"
@.str.127 = [26 x i8] c"error uncompressing image\00"
@.str.128 = [28 x i8] c"bad date or time conversion\00"
@.str.129 = [27 x i8] c"syntax error in expression\00"
@.str.130 = [29 x i8] c"expression result wrong type\00"
@.str.131 = [24 x i8] c"vector result too large\00"
@.str.132 = [22 x i8] c"missing output column\00"
@.str.133 = [26 x i8] c"bad data in parsed column\00"
@.str.134 = [31 x i8] c"output extension of wrong type\00"
@.str.135 = [20 x i8] c"WCS angle too large\00"
@.str.136 = [19 x i8] c"bad WCS coordinate\00"
@.str.137 = [25 x i8] c"error in WCS calculation\00"
@.str.138 = [24 x i8] c"bad WCS projection type\00"
@.str.139 = [23 x i8] c"WCS keywords not found\00"
define void @ffgerr(i32 %0, i8* %1) {
%3 = alloca i32
%4 = alloca i8*
store i32 %0, i32* %3
store i8* %1, i8** %4
%5 = load i8*, i8** %4
%6 = getelementptr inbounds i8, i8* %5, i64 0
store i8 0, i8* %6
%7 = load i32, i32* %3
%8 = icmp sge i32 %7, 0
br i1 %8, label %9, label %252
9: ; preds = %2
%10 = load i32, i32* %3
%11 = icmp slt i32 %10, 300
br i1 %11, label %12, label %252
12: ; preds = %9
%13 = load i32, i32* %3
switch i32 %13, label %248 [
i32 0, label %14
i32 1, label %17
i32 101, label %20
i32 103, label %23
i32 104, label %26
i32 105, label %29
i32 106, label %32
i32 107, label %35
i32 108, label %38
i32 110, label %41
i32 111, label %44
i32 112, label %47
i32 113, label %50
i32 114, label %53
i32 115, label %56
i32 116, label %59
i32 121, label %62
i32 122, label %65
i32 123, label %68
i32 124, label %71
i32 125, label %74
i32 126, label %77
i32 151, label %80
i32 152, label %83
i32 153, label %86
i32 154, label %89
i32 155, label %92
i32 156, label %95
i32 157, label %98
i32 158, label %101
i32 159, label %104
i32 201, label %107
i32 202, label %110
i32 203, label %113
i32 204, label %116
i32 205, label %119
i32 206, label %122
i32 207, label %125
i32 208, label %128
i32 209, label %131
i32 210, label %134
i32 211, label %137
i32 212, label %140
i32 213, label %143
i32 214, label %146
i32 215, label %149
i32 216, label %152
i32 217, label %155
i32 218, label %158
i32 219, label %161
i32 220, label %164
i32 221, label %167
i32 222, label %170
i32 223, label %173
i32 224, label %176
i32 225, label %179
i32 226, label %182
i32 227, label %185
i32 228, label %188
i32 229, label %191
i32 230, label %194
i32 231, label %197
i32 232, label %200
i32 233, label %203
i32 234, label %206
i32 235, label %209
i32 236, label %212
i32 237, label %215
i32 241, label %218
i32 251, label %221
i32 252, label %224
i32 253, label %227
i32 254, label %230
i32 255, label %233
i32 261, label %236
i32 262, label %239
i32 263, label %242
i32 264, label %245
]
14: ; preds = %12
%15 = load i8*, i8** %4
%16 = call i32 @strcpy(i8* %15, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str, i64 0, i64 0))
br label %251
17: ; preds = %12
%18 = load i8*, i8** %4
%19 = call i32 @strcpy(i8* %18, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.1, i64 0, i64 0))
br label %251
20: ; preds = %12
%21 = load i8*, i8** %4
%22 = call i32 @strcpy(i8* %21, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.2, i64 0, i64 0))
br label %251
23: ; preds = %12
%24 = load i8*, i8** %4
%25 = call i32 @strcpy(i8* %24, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.3, i64 0, i64 0))
br label %251
26: ; preds = %12
%27 = load i8*, i8** %4
%28 = call i32 @strcpy(i8* %27, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.4, i64 0, i64 0))
br label %251
29: ; preds = %12
%30 = load i8*, i8** %4
%31 = call i32 @strcpy(i8* %30, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.5, i64 0, i64 0))
br label %251
32: ; preds = %12
%33 = load i8*, i8** %4
%34 = call i32 @strcpy(i8* %33, i8* getelementptr inbounds ([27 x i8], [27 x i8]* @.str.6, i64 0, i64 0))
br label %251
35: ; preds = %12
%36 = load i8*, i8** %4
%37 = call i32 @strcpy(i8* %36, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.7, i64 0, i64 0))
br label %251
38: ; preds = %12
%39 = load i8*, i8** %4
%40 = call i32 @strcpy(i8* %39, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.8, i64 0, i64 0))
br label %251
41: ; preds = %12
%42 = load i8*, i8** %4
%43 = call i32 @strcpy(i8* %42, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.9, i64 0, i64 0))
br label %251
44: ; preds = %12
%45 = load i8*, i8** %4
%46 = call i32 @strcpy(i8* %45, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.10, i64 0, i64 0))
br label %251
47: ; preds = %12
%48 = load i8*, i8** %4
%49 = call i32 @strcpy(i8* %48, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.11, i64 0, i64 0))
br label %251
50: ; preds = %12
%51 = load i8*, i8** %4
%52 = call i32 @strcpy(i8* %51, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.12, i64 0, i64 0))
br label %251
53: ; preds = %12
%54 = load i8*, i8** %4
%55 = call i32 @strcpy(i8* %54, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.13, i64 0, i64 0))
br label %251
56: ; preds = %12
%57 = load i8*, i8** %4
%58 = call i32 @strcpy(i8* %57, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.14, i64 0, i64 0))
br label %251
59: ; preds = %12
%60 = load i8*, i8** %4
%61 = call i32 @strcpy(i8* %60, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.15, i64 0, i64 0))
br label %251
62: ; preds = %12
%63 = load i8*, i8** %4
%64 = call i32 @strcpy(i8* %63, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.16, i64 0, i64 0))
br label %251
65: ; preds = %12
%66 = load i8*, i8** %4
%67 = call i32 @strcpy(i8* %66, i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.17, i64 0, i64 0))
br label %251
68: ; preds = %12
%69 = load i8*, i8** %4
%70 = call i32 @strcpy(i8* %69, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.18, i64 0, i64 0))
br label %251
71: ; preds = %12
%72 = load i8*, i8** %4
%73 = call i32 @strcpy(i8* %72, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.19, i64 0, i64 0))
br label %251
74: ; preds = %12
%75 = load i8*, i8** %4
%76 = call i32 @strcpy(i8* %75, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.20, i64 0, i64 0))
br label %251
77: ; preds = %12
%78 = load i8*, i8** %4
%79 = call i32 @strcpy(i8* %78, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.21, i64 0, i64 0))
br label %251
80: ; preds = %12
%81 = load i8*, i8** %4
%82 = call i32 @strcpy(i8* %81, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.22, i64 0, i64 0))
br label %251
83: ; preds = %12
%84 = load i8*, i8** %4
%85 = call i32 @strcpy(i8* %84, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.23, i64 0, i64 0))
br label %251
86: ; preds = %12
%87 = load i8*, i8** %4
%88 = call i32 @strcpy(i8* %87, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.24, i64 0, i64 0))
br label %251
89: ; preds = %12
%90 = load i8*, i8** %4
%91 = call i32 @strcpy(i8* %90, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.25, i64 0, i64 0))
br label %251
92: ; preds = %12
%93 = load i8*, i8** %4
%94 = call i32 @strcpy(i8* %93, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.26, i64 0, i64 0))
br label %251
95: ; preds = %12
%96 = load i8*, i8** %4
%97 = call i32 @strcpy(i8* %96, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.27, i64 0, i64 0))
br label %251
98: ; preds = %12
%99 = load i8*, i8** %4
%100 = call i32 @strcpy(i8* %99, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.28, i64 0, i64 0))
br label %251
101: ; preds = %12
%102 = load i8*, i8** %4
%103 = call i32 @strcpy(i8* %102, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.29, i64 0, i64 0))
br label %251
104: ; preds = %12
%105 = load i8*, i8** %4
%106 = call i32 @strcpy(i8* %105, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.30, i64 0, i64 0))
br label %251
107: ; preds = %12
%108 = load i8*, i8** %4
%109 = call i32 @strcpy(i8* %108, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.31, i64 0, i64 0))
br label %251
110: ; preds = %12
%111 = load i8*, i8** %4
%112 = call i32 @strcpy(i8* %111, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.32, i64 0, i64 0))
br label %251
113: ; preds = %12
%114 = load i8*, i8** %4
%115 = call i32 @strcpy(i8* %114, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.33, i64 0, i64 0))
br label %251
116: ; preds = %12
%117 = load i8*, i8** %4
%118 = call i32 @strcpy(i8* %117, i8* getelementptr inbounds ([27 x i8], [27 x i8]* @.str.34, i64 0, i64 0))
br label %251
119: ; preds = %12
%120 = load i8*, i8** %4
%121 = call i32 @strcpy(i8* %120, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.35, i64 0, i64 0))
br label %251
122: ; preds = %12
%123 = load i8*, i8** %4
%124 = call i32 @strcpy(i8* %123, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.36, i64 0, i64 0))
br label %251
125: ; preds = %12
%126 = load i8*, i8** %4
%127 = call i32 @strcpy(i8* %126, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.37, i64 0, i64 0))
br label %251
128: ; preds = %12
%129 = load i8*, i8** %4
%130 = call i32 @strcpy(i8* %129, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.38, i64 0, i64 0))
br label %251
131: ; preds = %12
%132 = load i8*, i8** %4
%133 = call i32 @strcpy(i8* %132, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.39, i64 0, i64 0))
br label %251
134: ; preds = %12
%135 = load i8*, i8** %4
%136 = call i32 @strcpy(i8* %135, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.40, i64 0, i64 0))
br label %251
137: ; preds = %12
%138 = load i8*, i8** %4
%139 = call i32 @strcpy(i8* %138, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.41, i64 0, i64 0))
br label %251
140: ; preds = %12
%141 = load i8*, i8** %4
%142 = call i32 @strcpy(i8* %141, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.42, i64 0, i64 0))
br label %251
143: ; preds = %12
%144 = load i8*, i8** %4
%145 = call i32 @strcpy(i8* %144, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.43, i64 0, i64 0))
br label %251
146: ; preds = %12
%147 = load i8*, i8** %4
%148 = call i32 @strcpy(i8* %147, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.44, i64 0, i64 0))
br label %251
149: ; preds = %12
%150 = load i8*, i8** %4
%151 = call i32 @strcpy(i8* %150, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.45, i64 0, i64 0))
br label %251
152: ; preds = %12
%153 = load i8*, i8** %4
%154 = call i32 @strcpy(i8* %153, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.46, i64 0, i64 0))
br label %251
155: ; preds = %12
%156 = load i8*, i8** %4
%157 = call i32 @strcpy(i8* %156, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.47, i64 0, i64 0))
br label %251
158: ; preds = %12
%159 = load i8*, i8** %4
%160 = call i32 @strcpy(i8* %159, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.48, i64 0, i64 0))
br label %251
161: ; preds = %12
%162 = load i8*, i8** %4
%163 = call i32 @strcpy(i8* %162, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.49, i64 0, i64 0))
br label %251
164: ; preds = %12
%165 = load i8*, i8** %4
%166 = call i32 @strcpy(i8* %165, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.50, i64 0, i64 0))
br label %251
167: ; preds = %12
%168 = load i8*, i8** %4
%169 = call i32 @strcpy(i8* %168, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.51, i64 0, i64 0))
br label %251
170: ; preds = %12
%171 = load i8*, i8** %4
%172 = call i32 @strcpy(i8* %171, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.52, i64 0, i64 0))
br label %251
173: ; preds = %12
%174 = load i8*, i8** %4
%175 = call i32 @strcpy(i8* %174, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.53, i64 0, i64 0))
br label %251
176: ; preds = %12
%177 = load i8*, i8** %4
%178 = call i32 @strcpy(i8* %177, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.54, i64 0, i64 0))
br label %251
179: ; preds = %12
%180 = load i8*, i8** %4
%181 = call i32 @strcpy(i8* %180, i8* getelementptr inbounds ([27 x i8], [27 x i8]* @.str.55, i64 0, i64 0))
br label %251
182: ; preds = %12
%183 = load i8*, i8** %4
%184 = call i32 @strcpy(i8* %183, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.56, i64 0, i64 0))
br label %251
185: ; preds = %12
%186 = load i8*, i8** %4
%187 = call i32 @strcpy(i8* %186, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.57, i64 0, i64 0))
br label %251
188: ; preds = %12
%189 = load i8*, i8** %4
%190 = call i32 @strcpy(i8* %189, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.58, i64 0, i64 0))
br label %251
191: ; preds = %12
%192 = load i8*, i8** %4
%193 = call i32 @strcpy(i8* %192, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.59, i64 0, i64 0))
br label %251
194: ; preds = %12
%195 = load i8*, i8** %4
%196 = call i32 @strcpy(i8* %195, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.60, i64 0, i64 0))
br label %251
197: ; preds = %12
%198 = load i8*, i8** %4
%199 = call i32 @strcpy(i8* %198, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.61, i64 0, i64 0))
br label %251
200: ; preds = %12
%201 = load i8*, i8** %4
%202 = call i32 @strcpy(i8* %201, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.62, i64 0, i64 0))
br label %251
203: ; preds = %12
%204 = load i8*, i8** %4
%205 = call i32 @strcpy(i8* %204, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.63, i64 0, i64 0))
br label %251
206: ; preds = %12
%207 = load i8*, i8** %4
%208 = call i32 @strcpy(i8* %207, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.64, i64 0, i64 0))
br label %251
209: ; preds = %12
%210 = load i8*, i8** %4
%211 = call i32 @strcpy(i8* %210, i8* getelementptr inbounds ([27 x i8], [27 x i8]* @.str.65, i64 0, i64 0))
br label %251
212: ; preds = %12
%213 = load i8*, i8** %4
%214 = call i32 @strcpy(i8* %213, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.66, i64 0, i64 0))
br label %251
215: ; preds = %12
%216 = load i8*, i8** %4
%217 = call i32 @strcpy(i8* %216, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.67, i64 0, i64 0))
br label %251
218: ; preds = %12
%219 = load i8*, i8** %4
%220 = call i32 @strcpy(i8* %219, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.68, i64 0, i64 0))
br label %251
221: ; preds = %12
%222 = load i8*, i8** %4
%223 = call i32 @strcpy(i8* %222, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.69, i64 0, i64 0))
br label %251
224: ; preds = %12
%225 = load i8*, i8** %4
%226 = call i32 @strcpy(i8* %225, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.70, i64 0, i64 0))
br label %251
227: ; preds = %12
%228 = load i8*, i8** %4
%229 = call i32 @strcpy(i8* %228, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.71, i64 0, i64 0))
br label %251
230: ; preds = %12
%231 = load i8*, i8** %4
%232 = call i32 @strcpy(i8* %231, i8* getelementptr inbounds ([27 x i8], [27 x i8]* @.str.72, i64 0, i64 0))
br label %251
233: ; preds = %12
%234 = load i8*, i8** %4
%235 = call i32 @strcpy(i8* %234, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.73, i64 0, i64 0))
br label %251
236: ; preds = %12
%237 = load i8*, i8** %4
%238 = call i32 @strcpy(i8* %237, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.74, i64 0, i64 0))
br label %251
239: ; preds = %12
%240 = load i8*, i8** %4
%241 = call i32 @strcpy(i8* %240, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.75, i64 0, i64 0))
br label %251
242: ; preds = %12
%243 = load i8*, i8** %4
%244 = call i32 @strcpy(i8* %243, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.76, i64 0, i64 0))
br label %251
245: ; preds = %12
%246 = load i8*, i8** %4
%247 = call i32 @strcpy(i8* %246, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.77, i64 0, i64 0))
br label %251
248: ; preds = %12
%249 = load i8*, i8** %4
%250 = call i32 @strcpy(i8* %249, i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.78, i64 0, i64 0))
br label %251
251: ; preds = %248, %245, %242, %239, %236, %233, %230, %227, %224, %221, %218, %215, %212, %209, %206, %203, %200, %197, %194, %191, %188, %185, %182, %179, %176, %173, %170, %167, %164, %161, %158, %155, %152, %149, %146, %143, %140, %137, %134, %131, %128, %125, %122, %119, %116, %113, %110, %107, %104, %101, %98, %95, %92, %89, %86, %83, %80, %77, %74, %71, %68, %65, %62, %59, %56, %53, %50, %47, %44, %41, %38, %35, %32, %29, %26, %23, %20, %17, %14
br label %448
252: ; preds = %9, %2
%253 = load i32, i32* %3
%254 = icmp slt i32 %253, 600
br i1 %254, label %255, label %444
255: ; preds = %252
%256 = load i32, i32* %3
switch i32 %256, label %440 [
i32 301, label %257
i32 302, label %260
i32 304, label %263
i32 306, label %266
i32 307, label %269
i32 308, label %272
i32 309, label %275
i32 310, label %278
i32 311, label %281
i32 312, label %284
i32 314, label %287
i32 317, label %290
i32 320, label %293
i32 321, label %296
i32 322, label %299
i32 323, label %302
i32 340, label %305
i32 341, label %308
i32 342, label %311
i32 343, label %314
i32 344, label %317
i32 345, label %320
i32 346, label %323
i32 347, label %326
i32 348, label %329
i32 360, label %332
i32 361, label %335
i32 362, label %338
i32 363, label %341
i32 364, label %344
i32 365, label %347
i32 366, label %350
i32 367, label %353
i32 368, label %356
i32 369, label %359
i32 401, label %362
i32 402, label %365
i32 403, label %368
i32 404, label %371
i32 405, label %374
i32 406, label %377
i32 407, label %380
i32 408, label %383
i32 409, label %386
i32 410, label %389
i32 411, label %392
i32 412, label %395
i32 413, label %398
i32 414, label %401
i32 420, label %404
i32 431, label %407
i32 432, label %410
i32 433, label %413
i32 434, label %416
i32 435, label %419
i32 436, label %422
i32 501, label %425
i32 502, label %428
i32 503, label %431
i32 504, label %434
i32 505, label %437
]
257: ; preds = %255
%258 = load i8*, i8** %4
%259 = call i32 @strcpy(i8* %258, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.79, i64 0, i64 0))
br label %443
260: ; preds = %255
%261 = load i8*, i8** %4
%262 = call i32 @strcpy(i8* %261, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.80, i64 0, i64 0))
br label %443
263: ; preds = %255
%264 = load i8*, i8** %4
%265 = call i32 @strcpy(i8* %264, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.81, i64 0, i64 0))
br label %443
266: ; preds = %255
%267 = load i8*, i8** %4
%268 = call i32 @strcpy(i8* %267, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.82, i64 0, i64 0))
br label %443
269: ; preds = %255
%270 = load i8*, i8** %4
%271 = call i32 @strcpy(i8* %270, i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.83, i64 0, i64 0))
br label %443
272: ; preds = %255
%273 = load i8*, i8** %4
%274 = call i32 @strcpy(i8* %273, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.84, i64 0, i64 0))
br label %443
275: ; preds = %255
%276 = load i8*, i8** %4
%277 = call i32 @strcpy(i8* %276, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.85, i64 0, i64 0))
br label %443
278: ; preds = %255
%279 = load i8*, i8** %4
%280 = call i32 @strcpy(i8* %279, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.86, i64 0, i64 0))
br label %443
281: ; preds = %255
%282 = load i8*, i8** %4
%283 = call i32 @strcpy(i8* %282, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.87, i64 0, i64 0))
br label %443
284: ; preds = %255
%285 = load i8*, i8** %4
%286 = call i32 @strcpy(i8* %285, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.88, i64 0, i64 0))
br label %443
287: ; preds = %255
%288 = load i8*, i8** %4
%289 = call i32 @strcpy(i8* %288, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.89, i64 0, i64 0))
br label %443
290: ; preds = %255
%291 = load i8*, i8** %4
%292 = call i32 @strcpy(i8* %291, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.90, i64 0, i64 0))
br label %443
293: ; preds = %255
%294 = load i8*, i8** %4
%295 = call i32 @strcpy(i8* %294, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.91, i64 0, i64 0))
br label %443
296: ; preds = %255
%297 = load i8*, i8** %4
%298 = call i32 @strcpy(i8* %297, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.92, i64 0, i64 0))
br label %443
299: ; preds = %255
%300 = load i8*, i8** %4
%301 = call i32 @strcpy(i8* %300, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.93, i64 0, i64 0))
br label %443
302: ; preds = %255
%303 = load i8*, i8** %4
%304 = call i32 @strcpy(i8* %303, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.94, i64 0, i64 0))
br label %443
305: ; preds = %255
%306 = load i8*, i8** %4
%307 = call i32 @strcpy(i8* %306, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.95, i64 0, i64 0))
br label %443
308: ; preds = %255
%309 = load i8*, i8** %4
%310 = call i32 @strcpy(i8* %309, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.96, i64 0, i64 0))
br label %443
311: ; preds = %255
%312 = load i8*, i8** %4
%313 = call i32 @strcpy(i8* %312, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.97, i64 0, i64 0))
br label %443
314: ; preds = %255
%315 = load i8*, i8** %4
%316 = call i32 @strcpy(i8* %315, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.98, i64 0, i64 0))
br label %443
317: ; preds = %255
%318 = load i8*, i8** %4
%319 = call i32 @strcpy(i8* %318, i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.99, i64 0, i64 0))
br label %443
320: ; preds = %255
%321 = load i8*, i8** %4
%322 = call i32 @strcpy(i8* %321, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.100, i64 0, i64 0))
br label %443
323: ; preds = %255
%324 = load i8*, i8** %4
%325 = call i32 @strcpy(i8* %324, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.101, i64 0, i64 0))
br label %443
326: ; preds = %255
%327 = load i8*, i8** %4
%328 = call i32 @strcpy(i8* %327, i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.102, i64 0, i64 0))
br label %443
329: ; preds = %255
%330 = load i8*, i8** %4
%331 = call i32 @strcpy(i8* %330, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.103, i64 0, i64 0))
br label %443
332: ; preds = %255
%333 = load i8*, i8** %4
%334 = call i32 @strcpy(i8* %333, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.104, i64 0, i64 0))
br label %443
335: ; preds = %255
%336 = load i8*, i8** %4
%337 = call i32 @strcpy(i8* %336, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.105, i64 0, i64 0))
br label %443
338: ; preds = %255
%339 = load i8*, i8** %4
%340 = call i32 @strcpy(i8* %339, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.106, i64 0, i64 0))
br label %443
341: ; preds = %255
%342 = load i8*, i8** %4
%343 = call i32 @strcpy(i8* %342, i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.107, i64 0, i64 0))
br label %443
344: ; preds = %255
%345 = load i8*, i8** %4
%346 = call i32 @strcpy(i8* %345, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.108, i64 0, i64 0))
br label %443
347: ; preds = %255
%348 = load i8*, i8** %4
%349 = call i32 @strcpy(i8* %348, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.109, i64 0, i64 0))
br label %443
350: ; preds = %255
%351 = load i8*, i8** %4
%352 = call i32 @strcpy(i8* %351, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.110, i64 0, i64 0))
br label %443
353: ; preds = %255
%354 = load i8*, i8** %4
%355 = call i32 @strcpy(i8* %354, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.111, i64 0, i64 0))
br label %443
356: ; preds = %255
%357 = load i8*, i8** %4
%358 = call i32 @strcpy(i8* %357, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.112, i64 0, i64 0))
br label %443
359: ; preds = %255
%360 = load i8*, i8** %4
%361 = call i32 @strcpy(i8* %360, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.113, i64 0, i64 0))
br label %443
362: ; preds = %255
%363 = load i8*, i8** %4
%364 = call i32 @strcpy(i8* %363, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.114, i64 0, i64 0))
br label %443
365: ; preds = %255
%366 = load i8*, i8** %4
%367 = call i32 @strcpy(i8* %366, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.115, i64 0, i64 0))
br label %443
368: ; preds = %255
%369 = load i8*, i8** %4
%370 = call i32 @strcpy(i8* %369, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.116, i64 0, i64 0))
br label %443
371: ; preds = %255
%372 = load i8*, i8** %4
%373 = call i32 @strcpy(i8* %372, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.117, i64 0, i64 0))
br label %443
374: ; preds = %255
%375 = load i8*, i8** %4
%376 = call i32 @strcpy(i8* %375, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.118, i64 0, i64 0))
br label %443
377: ; preds = %255
%378 = load i8*, i8** %4
%379 = call i32 @strcpy(i8* %378, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.119, i64 0, i64 0))
br label %443
380: ; preds = %255
%381 = load i8*, i8** %4
%382 = call i32 @strcpy(i8* %381, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.120, i64 0, i64 0))
br label %443
383: ; preds = %255
%384 = load i8*, i8** %4
%385 = call i32 @strcpy(i8* %384, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.121, i64 0, i64 0))
br label %443
386: ; preds = %255
%387 = load i8*, i8** %4
%388 = call i32 @strcpy(i8* %387, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.122, i64 0, i64 0))
br label %443
389: ; preds = %255
%390 = load i8*, i8** %4
%391 = call i32 @strcpy(i8* %390, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.123, i64 0, i64 0))
br label %443
392: ; preds = %255
%393 = load i8*, i8** %4
%394 = call i32 @strcpy(i8* %393, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.124, i64 0, i64 0))
br label %443
395: ; preds = %255
%396 = load i8*, i8** %4
%397 = call i32 @strcpy(i8* %396, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.125, i64 0, i64 0))
br label %443
398: ; preds = %255
%399 = load i8*, i8** %4
%400 = call i32 @strcpy(i8* %399, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.126, i64 0, i64 0))
br label %443
401: ; preds = %255
%402 = load i8*, i8** %4
%403 = call i32 @strcpy(i8* %402, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.127, i64 0, i64 0))
br label %443
404: ; preds = %255
%405 = load i8*, i8** %4
%406 = call i32 @strcpy(i8* %405, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.128, i64 0, i64 0))
br label %443
407: ; preds = %255
%408 = load i8*, i8** %4
%409 = call i32 @strcpy(i8* %408, i8* getelementptr inbounds ([27 x i8], [27 x i8]* @.str.129, i64 0, i64 0))
br label %443
410: ; preds = %255
%411 = load i8*, i8** %4
%412 = call i32 @strcpy(i8* %411, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.130, i64 0, i64 0))
br label %443
413: ; preds = %255
%414 = load i8*, i8** %4
%415 = call i32 @strcpy(i8* %414, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.131, i64 0, i64 0))
br label %443
416: ; preds = %255
%417 = load i8*, i8** %4
%418 = call i32 @strcpy(i8* %417, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.132, i64 0, i64 0))
br label %443
419: ; preds = %255
%420 = load i8*, i8** %4
%421 = call i32 @strcpy(i8* %420, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.133, i64 0, i64 0))
br label %443
422: ; preds = %255
%423 = load i8*, i8** %4
%424 = call i32 @strcpy(i8* %423, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.134, i64 0, i64 0))
br label %443
425: ; preds = %255
%426 = load i8*, i8** %4
%427 = call i32 @strcpy(i8* %426, i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.135, i64 0, i64 0))
br label %443
428: ; preds = %255
%429 = load i8*, i8** %4
%430 = call i32 @strcpy(i8* %429, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.136, i64 0, i64 0))
br label %443
431: ; preds = %255
%432 = load i8*, i8** %4
%433 = call i32 @strcpy(i8* %432, i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.137, i64 0, i64 0))
br label %443
434: ; preds = %255
%435 = load i8*, i8** %4
%436 = call i32 @strcpy(i8* %435, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.138, i64 0, i64 0))
br label %443
437: ; preds = %255
%438 = load i8*, i8** %4
%439 = call i32 @strcpy(i8* %438, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.139, i64 0, i64 0))
br label %443
440: ; preds = %255
%441 = load i8*, i8** %4
%442 = call i32 @strcpy(i8* %441, i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.78, i64 0, i64 0))
br label %443
443: ; preds = %440, %437, %434, %431, %428, %425, %422, %419, %416, %413, %410, %407, %404, %401, %398, %395, %392, %389, %386, %383, %380, %377, %374, %371, %368, %365, %362, %359, %356, %353, %350, %347, %344, %341, %338, %335, %332, %329, %326, %323, %320, %317, %314, %311, %308, %305, %302, %299, %296, %293, %290, %287, %284, %281, %278, %275, %272, %269, %266, %263, %260, %257
br label %447
444: ; preds = %252
%445 = load i8*, i8** %4
%446 = call i32 @strcpy(i8* %445, i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.78, i64 0, i64 0))
br label %447
447: ; preds = %444, %443
br label %448
448: ; preds = %447, %251
ret void
}

LLVM IR (-O2):
@.str = [14 x i8] c"OK - no error\00"
@.str.1 = [26 x i8] c"non-CFITSIO program error\00"
@.str.2 = [28 x i8] c"same input and output files\00"
@.str.3 = [31 x i8] c"attempt to open too many files\00"
@.str.4 = [30 x i8] c"could not open the named file\00"
@.str.5 = [31 x i8] c"couldn't create the named file\00"
@.str.6 = [27 x i8] c"error writing to FITS file\00"
@.str.7 = [31 x i8] c"tried to move past end of file\00"
@.str.8 = [29 x i8] c"error reading from FITS file\00"
@.str.9 = [25 x i8] c"could not close the file\00"
@.str.10 = [25 x i8] c"array dimensions too big\00"
@.str.11 = [30 x i8] c"cannot write to file\00"
@.str.12 = [26 x i8] c"could not allocate memory\00"
@.str.13 = [25 x i8] c"invalid fitsfile pointer\00"
@.str.14 = [19 x i8] c"NULL input pointer\00"
@.str.15 = [28 x i8] c"error seeking file position\00"
@.str.16 = [19 x i8] c"invalid URL prefix\00"
@.str.17 = [21 x i8] c"too many I/O drivers\00"
@.str.18 = [23 x i8] c"I/O driver init failed\00"
@.str.19 = [31 x i8] c"no I/O driver for this URLtype\00"
@.str.20 = [30 x i8] c"parse error in input file URL\00"
@.str.21 = [26 x i8] c"parse error in range list\00"
@.str.22 = [31 x i8] c"bad argument (shared mem drvr)\00"
@.str.23 = [31 x i8] c"null ptr arg (shared mem drvr)\00"
@.str.24 = [30 x i8] c"no free shared memory handles\00"
@.str.25 = [31 x i8] c"share mem drvr not initialized\00"
@.str.26 = [30 x i8] c"IPC system error (shared mem)\00"
@.str.27 = [28 x i8] c"no memory (shared mem drvr)\00"
@.str.28 = [28 x i8] c"share mem resource deadlock\00"
@.str.29 = [29 x i8] c"lock file open/create failed\00"
@.str.30 = [29 x i8] c"can't resize share mem block\00"
@.str.31 = [28 x i8] c"header already has keywords\00"
@.str.32 = [28 x i8] c"keyword not found in header\00"
@.str.33 = [29 x i8] c"keyword number out of bounds\00"
@.str.34 = [27 x i8] c"keyword value is undefined\00"
@.str.35 = [29 x i8] c"string missing closing quote\00"
@.str.36 = [30 x i8] c"error in indexed keyword name\00"
@.str.37 = [29 x i8] c"illegal character in keyword\00"
@.str.38 = [31 x i8] c"required keywords out of order\00"
@.str.39 = [31 x i8] c"keyword value not positive int\00"
@.str.40 = [22 x i8] c"END keyword not found\00"
@.str.41 = [29 x i8] c"illegal BITPIX keyword value\00"
@.str.42 = [28 x i8] c"illegal NAXIS keyword value\00"
@.str.43 = [29 x i8] c"illegal NAXISn keyword value\00"
@.str.44 = [29 x i8] c"illegal PCOUNT keyword value\00"
@.str.45 = [29 x i8] c"illegal GCOUNT keyword value\00"
@.str.46 = [30 x i8] c"illegal TFIELDS keyword value\00"
@.str.47 = [24 x i8] c"negative table row size\00"
@.str.48 = [24 x i8] c"negative number of rows\00"
@.str.49 = [23 x i8] c"named column not found\00"
@.str.50 = [29 x i8] c"illegal SIMPLE keyword value\00"
@.str.51 = [25 x i8] c"first keyword not SIMPLE\00"
@.str.52 = [26 x i8] c"second keyword not BITPIX\00"
@.str.53 = [24 x i8] c"third keyword not NAXIS\00"
@.str.54 = [24 x i8] c"missing NAXISn keywords\00"
@.str.55 = [27 x i8] c"first keyword not XTENSION\00"
@.str.56 = [24 x i8] c"CHDU not an ASCII table\00"
@.str.57 = [24 x i8] c"CHDU not a binary table\00"
@.str.58 = [25 x i8] c"PCOUNT keyword not found\00"
@.str.59 = [25 x i8] c"GCOUNT keyword not found\00"
@.str.60 = [26 x i8] c"TFIELDS keyword not found\00"
@.str.61 = [23 x i8] c"missing TBCOLn keyword\00"
@.str.62 = [23 x i8] c"missing TFORMn keyword\00"
@.str.63 = [28 x i8] c"CHDU not an IMAGE extension\00"
@.str.64 = [29 x i8] c"illegal TBCOLn keyword value\00"
@.str.65 = [27 x i8] c"CHDU not a table extension\00"
@.str.66 = [30 x i8] c"column exceeds width of table\00"
@.str.67 = [31 x i8] c"more than 1 matching col. name\00"
@.str.68 = [29 x i8] c"row width not = field widths\00"
@.str.69 = [28 x i8] c"unknown FITS extension type\00"
@.str.70 = [31 x i8] c"1st key not SIMPLE or XTENSION\00"
@.str.71 = [25 x i8] c"END keyword is not blank\00"
@.str.72 = [27 x i8] c"Header fill area not blank\00"
@.str.73 = [23 x i8] c"Data fill area invalid\00"
@.str.74 = [26 x i8] c"illegal TFORM format code\00"
@.str.75 = [28 x i8] c"unknown TFORM datatype code\00"
@.str.76 = [28 x i8] c"illegal TDIMn keyword value\00"
@.str.77 = [30 x i8] c"invalid BINTABLE heap pointer\00"
@.str.78 = [21 x i8] c"unknown error status\00"
@.str.79 = [19 x i8] c"illegal HDU number\00"
@.str.80 = [31 x i8] c"column number < 1 or > tfields\00"
@.str.81 = [22 x i8] c"negative byte address\00"
@.str.82 = [28 x i8] c"negative number of elements\00"
@.str.83 = [21 x i8] c"bad first row number\00"
@.str.84 = [25 x i8] c"bad first element number\00"
@.str.85 = [24 x i8] c"not an ASCII (A) column\00"
@.str.86 = [25 x i8] c"not a logical (L) column\00"
@.str.87 = [25 x i8] c"bad ASCII table datatype\00"
@.str.88 = [26 x i8] c"bad binary table datatype\00"
@.str.89 = [23 x i8] c"null value not defined\00"
@.str.90 = [29 x i8] c"not a variable length column\00"
@.str.91 = [29 x i8] c"illegal number of dimensions\00"
@.str.92 = [31 x i8] c"1st pixel no. > last pixel no.\00"
@.str.93 = [22 x i8] c"BSCALE or TSCALn = 0.\00"
@.str.94 = [24 x i8] c"illegal axis length < 1\00"
@.str.95 = [16 x i8] c"not group table\00"
@.str.96 = [28 x i8] c"HDU already member of group\00"
@.str.97 = [23 x i8] c"group member not found\00"
@.str.98 = [16 x i8] c"group not found\00"
@.str.99 = [13 x i8] c"bad group id\00"
@.str.100 = [22 x i8] c"too many HDUs tracked\00"
@.str.101 = [19 x i8] c"HDU alread tracked\00"
@.str.102 = [20 x i8] c"bad Grouping option\00"
@.str.103 = [28 x i8] c"identical pointers (groups)\00"
@.str.104 = [24 x i8] c"malloc failed in parser\00"
@.str.105 = [26 x i8] c"file read error in parser\00"
@.str.106 = [26 x i8] c"null pointer arg (parser)\00"
@.str.107 = [20 x i8] c"empty line (parser)\00"
@.str.108 = [23 x i8] c"cannot unread > 1 line\00"
@.str.109 = [25 x i8] c"parser too deeply nested\00"
@.str.110 = [26 x i8] c"file open failed (parser)\00"
@.str.111 = [17 x i8] c"hit EOF (parser)\00"
@.str.112 = [22 x i8] c"bad argument (parser)\00"
@.str.113 = [26 x i8] c"unexpected token (parser)\00"
@.str.114 = [29 x i8] c"bad int to string conversion\00"
@.str.115 = [31 x i8] c"bad float to string conversion\00"
@.str.116 = [26 x i8] c"keyword value not integer\00"
@.str.117 = [26 x i8] c"keyword value not logical\00"
@.str.118 = [30 x i8] c"keyword value not floating pt\00"
@.str.119 = [25 x i8] c"keyword value not double\00"
@.str.120 = [29 x i8] c"bad string to int conversion\00"
@.str.121 = [31 x i8] c"bad string to float conversion\00"
@.str.122 = [29 x i8] c"bad string to double convert\00"
@.str.123 = [28 x i8] c"illegal datatype code value\00"
@.str.124 = [24 x i8] c"illegal no. of decimals\00"
@.str.125 = [29 x i8] c"datatype conversion overflow\00"
@.str.126 = [24 x i8] c"error compressing image\00"
@.str.127 = [26 x i8] c"error uncompressing image\00"
@.str.128 = [28 x i8] c"bad date or time conversion\00"
@.str.129 = [27 x i8] c"syntax error in expression\00"
@.str.130 = [29 x i8] c"expression result wrong type\00"
@.str.131 = [24 x i8] c"vector result too large\00"
@.str.132 = [22 x i8] c"missing output column\00"
@.str.133 = [26 x i8] c"bad data in parsed column\00"
@.str.134 = [31 x i8] c"output extension of wrong type\00"
@.str.135 = [20 x i8] c"WCS angle too large\00"
@.str.136 = [19 x i8] c"bad WCS coordinate\00"
@.str.137 = [25 x i8] c"error in WCS calculation\00"
@.str.138 = [24 x i8] c"bad WCS projection type\00"
@.str.139 = [23 x i8] c"WCS keywords not found\00"
define void @ffgerr(i32 %0, i8* %1) {
store i8 0, i8* %1
%3 = icmp ult i32 %0, 300
br i1 %3, label %4, label %83
4: ; preds = %2
switch i32 %0, label %82 [
i32 0, label %147
i32 1, label %5
i32 101, label %6
i32 103, label %7
i32 104, label %8
i32 105, label %9
i32 106, label %10
i32 107, label %11
i32 108, label %12
i32 110, label %13
i32 111, label %14
i32 112, label %15
i32 113, label %16
i32 114, label %17
i32 115, label %18
i32 116, label %19
i32 121, label %20
i32 122, label %21
i32 123, label %22
i32 124, label %23
i32 125, label %24
i32 126, label %25
i32 151, label %26
i32 152, label %27
i32 153, label %28
i32 154, label %29
i32 155, label %30
i32 156, label %31
i32 157, label %32
i32 158, label %33
i32 159, label %34
i32 201, label %35
i32 202, label %36
i32 203, label %37
i32 204, label %38
i32 205, label %39
i32 206, label %40
i32 207, label %41
i32 208, label %42
i32 209, label %43
i32 210, label %44
i32 211, label %45
i32 212, label %46
i32 213, label %47
i32 214, label %48
i32 215, label %49
i32 216, label %50
i32 217, label %51
i32 218, label %52
i32 219, label %53
i32 220, label %54
i32 221, label %55
i32 222, label %56
i32 223, label %57
i32 224, label %58
i32 225, label %59
i32 226, label %60
i32 227, label %61
i32 228, label %62
i32 229, label %63
i32 230, label %64
i32 231, label %65
i32 232, label %66
i32 233, label %67
i32 234, label %68
i32 235, label %69
i32 236, label %70
i32 237, label %71
i32 241, label %72
i32 251, label %73
i32 252, label %74
i32 253, label %75
i32 254, label %76
i32 255, label %77
i32 261, label %78
i32 262, label %79
i32 263, label %80
i32 264, label %81
]
5: ; preds = %4
br label %147
6: ; preds = %4
br label %147
7: ; preds = %4
br label %147
8: ; preds = %4
br label %147
9: ; preds = %4
br label %147
10: ; preds = %4
br label %147
11: ; preds = %4
br label %147
12: ; preds = %4
br label %147
13: ; preds = %4
br label %147
14: ; preds = %4
br label %147
15: ; preds = %4
br label %147
16: ; preds = %4
br label %147
17: ; preds = %4
br label %147
18: ; preds = %4
br label %147
19: ; preds = %4
br label %147
20: ; preds = %4
br label %147
21: ; preds = %4
br label %147
22: ; preds = %4
br label %147
23: ; preds = %4
br label %147
24: ; preds = %4
br label %147
25: ; preds = %4
br label %147
26: ; preds = %4
br label %147
27: ; preds = %4
br label %147
28: ; preds = %4
br label %147
29: ; preds = %4
br label %147
30: ; preds = %4
br label %147
31: ; preds = %4
br label %147
32: ; preds = %4
br label %147
33: ; preds = %4
br label %147
34: ; preds = %4
br label %147
35: ; preds = %4
br label %147
36: ; preds = %4
br label %147
37: ; preds = %4
br label %147
38: ; preds = %4
br label %147
39: ; preds = %4
br label %147
40: ; preds = %4
br label %147
41: ; preds = %4
br label %147
42: ; preds = %4
br label %147
43: ; preds = %4
br label %147
44: ; preds = %4
br label %147
45: ; preds = %4
br label %147
46: ; preds = %4
br label %147
47: ; preds = %4
br label %147
48: ; preds = %4
br label %147
49: ; preds = %4
br label %147
50: ; preds = %4
br label %147
51: ; preds = %4
br label %147
52: ; preds = %4
br label %147
53: ; preds = %4
br label %147
54: ; preds = %4
br label %147
55: ; preds = %4
br label %147
56: ; preds = %4
br label %147
57: ; preds = %4
br label %147
58: ; preds = %4
br label %147
59: ; preds = %4
br label %147
60: ; preds = %4
br label %147
61: ; preds = %4
br label %147
62: ; preds = %4
br label %147
63: ; preds = %4
br label %147
64: ; preds = %4
br label %147
65: ; preds = %4
br label %147
66: ; preds = %4
br label %147
67: ; preds = %4
br label %147
68: ; preds = %4
br label %147
69: ; preds = %4
br label %147
70: ; preds = %4
br label %147
71: ; preds = %4
br label %147
72: ; preds = %4
br label %147
73: ; preds = %4
br label %147
74: ; preds = %4
br label %147
75: ; preds = %4
br label %147
76: ; preds = %4
br label %147
77: ; preds = %4
br label %147
78: ; preds = %4
br label %147
79: ; preds = %4
br label %147
80: ; preds = %4
br label %147
81: ; preds = %4
br label %147
82: ; preds = %4
br label %147
83: ; preds = %2
%84 = icmp slt i32 %0, 600
br i1 %84, label %85, label %147
85: ; preds = %83
switch i32 %0, label %146 [
i32 301, label %147
i32 302, label %86
i32 304, label %87
i32 306, label %88
i32 307, label %89
i32 308, label %90
i32 309, label %91
i32 310, label %92
i32 311, label %93
i32 312, label %94
i32 314, label %95
i32 317, label %96
i32 320, label %97
i32 321, label %98
i32 322, label %99
i32 323, label %100
i32 340, label %101
i32 341, label %102
i32 342, label %103
i32 343, label %104
i32 344, label %105
i32 345, label %106
i32 346, label %107
i32 347, label %108
i32 348, label %109
i32 360, label %110
i32 361, label %111
i32 362, label %112
i32 363, label %113
i32 364, label %114
i32 365, label %115
i32 366, label %116
i32 367, label %117
i32 368, label %118
i32 369, label %119
i32 401, label %120
i32 402, label %121
i32 403, label %122
i32 404, label %123
i32 405, label %124
i32 406, label %125
i32 407, label %126
i32 408, label %127
i32 409, label %128
i32 410, label %129
i32 411, label %130
i32 412, label %131
i32 413, label %132
i32 414, label %133
i32 420, label %134
i32 431, label %135
i32 432, label %136
i32 433, label %137
i32 434, label %138
i32 435, label %139
i32 436, label %140
i32 501, label %141
i32 502, label %142
i32 503, label %143
i32 504, label %144
i32 505, label %145
]
86: ; preds = %85
br label %147
87: ; preds = %85
br label %147
88: ; preds = %85
br label %147
89: ; preds = %85
br label %147
90: ; preds = %85
br label %147
91: ; preds = %85
br label %147
92: ; preds = %85
br label %147
93: ; preds = %85
br label %147
94: ; preds = %85
br label %147
95: ; preds = %85
br label %147
96: ; preds = %85
br label %147
97: ; preds = %85
br label %147
98: ; preds = %85
br label %147
99: ; preds = %85
br label %147
100: ; preds = %85
br label %147
101: ; preds = %85
br label %147
102: ; preds = %85
br label %147
103: ; preds = %85
br label %147
104: ; preds = %85
br label %147
105: ; preds = %85
br label %147
106: ; preds = %85
br label %147
107: ; preds = %85
br label %147
108: ; preds = %85
br label %147
109: ; preds = %85
br label %147
110: ; preds = %85
br label %147
111: ; preds = %85
br label %147
112: ; preds = %85
br label %147
113: ; preds = %85
br label %147
114: ; preds = %85
br label %147
115: ; preds = %85
br label %147
116: ; preds = %85
br label %147
117: ; preds = %85
br label %147
118: ; preds = %85
br label %147
119: ; preds = %85
br label %147
120: ; preds = %85
br label %147
121: ; preds = %85
br label %147
122: ; preds = %85
br label %147
123: ; preds = %85
br label %147
124: ; preds = %85
br label %147
125: ; preds = %85
br label %147
126: ; preds = %85
br label %147
127: ; preds = %85
br label %147
128: ; preds = %85
br label %147
129: ; preds = %85
br label %147
130: ; preds = %85
br label %147
131: ; preds = %85
br label %147
132: ; preds = %85
br label %147
133: ; preds = %85
br label %147
134: ; preds = %85
br label %147
135: ; preds = %85
br label %147
136: ; preds = %85
br label %147
137: ; preds = %85
br label %147
138: ; preds = %85
br label %147
139: ; preds = %85
br label %147
140: ; preds = %85
br label %147
141: ; preds = %85
br label %147
142: ; preds = %85
br label %147
143: ; preds = %85
br label %147
144: ; preds = %85
br label %147
145: ; preds = %85
br label %147
146: ; preds = %85
br label %147
147: ; preds = %83, %85, %4, %146, %145, %144, %143, %142, %141, %140, %139, %138, %137, %136, %135, %134, %133, %132, %131, %130, %129, %128, %127, %126, %125, %124, %123, %122, %121, %120, %119, %118, %117, %116, %115, %114, %113, %112, %111, %110, %109, %108, %107, %106, %105, %104, %103, %102, %101, %100, %99, %98, %97, %96, %95, %94, %93, %92, %91, %90, %89, %88, %87, %86, %5, %6, %7, %8, %9, %10, %11, %12, %13, %14, %15, %16, %17, %18, %19, %20, %21, %22, %23, %24, %25, %26, %27, %28, %29, %30, %31, %32, %33, %34, %35, %36, %37, %38, %39, %40, %41, %42, %43, %44, %45, %46, %47, %48, %49, %50, %51, %52, %53, %54, %55, %56, %57, %58, %59, %60, %61, %62, %63, %64, %65, %66, %67, %68, %69, %70, %71, %72, %73, %74, %75, %76, %77, %78, %79, %80, %81, %82
%148 = phi i8* [ getelementptr inbounds ([21 x i8], [21 x i8]* @.str.78, i64 0, i64 0), %146 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.139, i64 0, i64 0), %145 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.138, i64 0, i64 0), %144 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.137, i64 0, i64 0), %143 ], [ getelementptr inbounds ([19 x i8], [19 x i8]* @.str.136, i64 0, i64 0), %142 ], [ getelementptr inbounds ([20 x i8], [20 x i8]* @.str.135, i64 0, i64 0), %141 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.134, i64 0, i64 0), %140 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.133, i64 0, i64 0), %139 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.132, i64 0, i64 0), %138 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.131, i64 0, i64 0), %137 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.130, i64 0, i64 0), %136 ], [ getelementptr inbounds ([27 x i8], [27 x i8]* @.str.129, i64 0, i64 0), %135 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.128, i64 0, i64 0), %134 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.127, i64 0, i64 0), %133 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.126, i64 0, i64 0), %132 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.125, i64 0, i64 0), %131 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.124, i64 0, i64 0), %130 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.123, i64 0, i64 0), %129 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.122, i64 0, i64 0), %128 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.121, i64 0, i64 0), %127 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.120, i64 0, i64 0), %126 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.119, i64 0, i64 0), %125 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.118, i64 0, i64 0), %124 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.117, i64 0, i64 0), %123 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.116, i64 0, i64 0), %122 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.115, i64 0, i64 0), %121 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.114, i64 0, i64 0), %120 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.113, i64 0, i64 0), %119 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.112, i64 0, i64 0), %118 ], [ getelementptr inbounds ([17 x i8], [17 x i8]* @.str.111, i64 0, i64 0), %117 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.110, i64 0, i64 0), %116 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.109, i64 0, i64 0), %115 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.108, i64 0, i64 0), %114 ], [ getelementptr inbounds ([20 x i8], [20 x i8]* @.str.107, i64 0, i64 0), %113 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.106, i64 0, i64 0), %112 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.105, i64 0, i64 0), %111 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.104, i64 0, i64 0), %110 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.103, i64 0, i64 0), %109 ], [ getelementptr inbounds ([20 x i8], [20 x i8]* @.str.102, i64 0, i64 0), %108 ], [ getelementptr inbounds ([19 x i8], [19 x i8]* @.str.101, i64 0, i64 0), %107 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.100, i64 0, i64 0), %106 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.99, i64 0, i64 0), %105 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.98, i64 0, i64 0), %104 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.97, i64 0, i64 0), %103 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.96, i64 0, i64 0), %102 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.95, i64 0, i64 0), %101 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.94, i64 0, i64 0), %100 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.93, i64 0, i64 0), %99 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.92, i64 0, i64 0), %98 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.91, i64 0, i64 0), %97 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.90, i64 0, i64 0), %96 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.89, i64 0, i64 0), %95 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.88, i64 0, i64 0), %94 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.87, i64 0, i64 0), %93 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.86, i64 0, i64 0), %92 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.85, i64 0, i64 0), %91 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.84, i64 0, i64 0), %90 ], [ getelementptr inbounds ([21 x i8], [21 x i8]* @.str.83, i64 0, i64 0), %89 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.82, i64 0, i64 0), %88 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.81, i64 0, i64 0), %87 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.80, i64 0, i64 0), %86 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.1, i64 0, i64 0), %5 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.2, i64 0, i64 0), %6 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.3, i64 0, i64 0), %7 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.4, i64 0, i64 0), %8 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.5, i64 0, i64 0), %9 ], [ getelementptr inbounds ([27 x i8], [27 x i8]* @.str.6, i64 0, i64 0), %10 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.7, i64 0, i64 0), %11 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.8, i64 0, i64 0), %12 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.9, i64 0, i64 0), %13 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.10, i64 0, i64 0), %14 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.11, i64 0, i64 0), %15 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.12, i64 0, i64 0), %16 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.13, i64 0, i64 0), %17 ], [ getelementptr inbounds ([19 x i8], [19 x i8]* @.str.14, i64 0, i64 0), %18 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.15, i64 0, i64 0), %19 ], [ getelementptr inbounds ([19 x i8], [19 x i8]* @.str.16, i64 0, i64 0), %20 ], [ getelementptr inbounds ([21 x i8], [21 x i8]* @.str.17, i64 0, i64 0), %21 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.18, i64 0, i64 0), %22 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.19, i64 0, i64 0), %23 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.20, i64 0, i64 0), %24 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.21, i64 0, i64 0), %25 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.22, i64 0, i64 0), %26 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.23, i64 0, i64 0), %27 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.24, i64 0, i64 0), %28 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.25, i64 0, i64 0), %29 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.26, i64 0, i64 0), %30 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.27, i64 0, i64 0), %31 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.28, i64 0, i64 0), %32 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.29, i64 0, i64 0), %33 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.30, i64 0, i64 0), %34 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.31, i64 0, i64 0), %35 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.32, i64 0, i64 0), %36 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.33, i64 0, i64 0), %37 ], [ getelementptr inbounds ([27 x i8], [27 x i8]* @.str.34, i64 0, i64 0), %38 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.35, i64 0, i64 0), %39 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.36, i64 0, i64 0), %40 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.37, i64 0, i64 0), %41 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.38, i64 0, i64 0), %42 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.39, i64 0, i64 0), %43 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.40, i64 0, i64 0), %44 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.41, i64 0, i64 0), %45 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.42, i64 0, i64 0), %46 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.43, i64 0, i64 0), %47 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.44, i64 0, i64 0), %48 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.45, i64 0, i64 0), %49 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.46, i64 0, i64 0), %50 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.47, i64 0, i64 0), %51 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.48, i64 0, i64 0), %52 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.49, i64 0, i64 0), %53 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.50, i64 0, i64 0), %54 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.51, i64 0, i64 0), %55 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.52, i64 0, i64 0), %56 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.53, i64 0, i64 0), %57 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.54, i64 0, i64 0), %58 ], [ getelementptr inbounds ([27 x i8], [27 x i8]* @.str.55, i64 0, i64 0), %59 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.56, i64 0, i64 0), %60 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.57, i64 0, i64 0), %61 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.58, i64 0, i64 0), %62 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.59, i64 0, i64 0), %63 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.60, i64 0, i64 0), %64 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.61, i64 0, i64 0), %65 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.62, i64 0, i64 0), %66 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.63, i64 0, i64 0), %67 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.64, i64 0, i64 0), %68 ], [ getelementptr inbounds ([27 x i8], [27 x i8]* @.str.65, i64 0, i64 0), %69 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.66, i64 0, i64 0), %70 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.67, i64 0, i64 0), %71 ], [ getelementptr inbounds ([29 x i8], [29 x i8]* @.str.68, i64 0, i64 0), %72 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.69, i64 0, i64 0), %73 ], [ getelementptr inbounds ([31 x i8], [31 x i8]* @.str.70, i64 0, i64 0), %74 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str.71, i64 0, i64 0), %75 ], [ getelementptr inbounds ([27 x i8], [27 x i8]* @.str.72, i64 0, i64 0), %76 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.73, i64 0, i64 0), %77 ], [ getelementptr inbounds ([26 x i8], [26 x i8]* @.str.74, i64 0, i64 0), %78 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.75, i64 0, i64 0), %79 ], [ getelementptr inbounds ([28 x i8], [28 x i8]* @.str.76, i64 0, i64 0), %80 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.77, i64 0, i64 0), %81 ], [ getelementptr inbounds ([21 x i8], [21 x i8]* @.str.78, i64 0, i64 0), %82 ], [ getelementptr inbounds ([14 x i8], [14 x i8]* @.str, i64 0, i64 0), %4 ], [ getelementptr inbounds ([19 x i8], [19 x i8]* @.str.79, i64 0, i64 0), %85 ], [ getelementptr inbounds ([21 x i8], [21 x i8]* @.str.78, i64 0, i64 0), %83 ]
%149 = tail call i32 @strcpy(i8* %1, i8* %148)
ret void
}