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

/* Forward declarations */

/* Type definitions */
typedef int uint8_t;
typedef int uint64_t;
typedef int uint32_t;
typedef int /*<<< orphan*/ __m128i;

/* Variables and functions */
int /*<<< orphan*/ _mm_and_si128(int /*<<< orphan*/, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_load_si128(int /*<<< orphan*/ *);
int /*<<< orphan*/ _mm_loadu_si128(int /*<<< orphan*/ *);
int /*<<< orphan*/ _mm_packus_epi16(int /*<<< orphan*/, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_set1_epi16(int);
int /*<<< orphan*/ _mm_set1_epi32(int);
int /*<<< orphan*/ _mm_set1_epi64x(int);
int /*<<< orphan*/ _mm_set1_epi8(int);
int /*<<< orphan*/ _mm_set_epi32(int, int, int, int);
int /*<<< orphan*/ _mm_set_epi8(int, int, int, int, int, int, int, int, int,
                                int, int, int, int, int, int,
                                int /*<<< orphan*/);
int /*<<< orphan*/ _mm_setzero_si128();
int /*<<< orphan*/ _mm_slli_epi16(int /*<<< orphan*/, int);
int /*<<< orphan*/ _mm_slli_epi32(int /*<<< orphan*/, int);
int /*<<< orphan*/ _mm_slli_epi64(int /*<<< orphan*/, int);
int /*<<< orphan*/ _mm_slli_si128(int /*<<< orphan*/, int);
int /*<<< orphan*/ _mm_srli_epi16(int /*<<< orphan*/, int);
int /*<<< orphan*/ _mm_srli_epi32(int /*<<< orphan*/, int);
int /*<<< orphan*/ _mm_srli_epi64(int /*<<< orphan*/, int);
int /*<<< orphan*/ _mm_srli_si128(int /*<<< orphan*/, int);
int /*<<< orphan*/ _mm_store_si128(int /*<<< orphan*/ *, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_storeu_si128(int /*<<< orphan*/ *, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_sub_epi16(int /*<<< orphan*/, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_sub_epi32(int /*<<< orphan*/, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_sub_epi64(int /*<<< orphan*/, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_sub_epi8(int /*<<< orphan*/, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_unpackhi_epi8(int /*<<< orphan*/, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_unpacklo_epi8(int /*<<< orphan*/, int /*<<< orphan*/);
int /*<<< orphan*/ _mm_xor_si128(int /*<<< orphan*/, int /*<<< orphan*/);
int *malloc(int);
int /*<<< orphan*/ printf(char *, ...);
int main() {
  uint32_t u32;
  uint64_t u64;
  uint8_t *ui8 = malloc(20), i;
  __m128i a, b, c, d;
  for (i = 0; i < 20; i++)
    ui8[i] = i;
  a = _mm_load_si128((__m128i *)ui8);
  b = _mm_loadu_si128((__m128i *)(ui8 + 1));
  c = _mm_loadu_si128((__m128i *)(ui8 + 2));
  d = _mm_loadu_si128((__m128i *)(ui8 + 3));
  {
    uint8_t blah[16], ii;
    printf("%-20s", "a");
    _mm_storeu_si128((__m128i *)blah, a);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  {
    uint8_t blah[16], ii;
    printf("%-20s", "b");
    _mm_storeu_si128((__m128i *)blah, b);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  {
    uint8_t blah[16], ii;
    printf("%-20s", "c");
    _mm_storeu_si128((__m128i *)blah, c);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  a = _mm_slli_epi16(a, 2);
  b = _mm_slli_epi32(b, 2);
  c = _mm_slli_epi64(c, 2);
  d = _mm_slli_si128(d, 2);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "a sl16");
    _mm_storeu_si128((__m128i *)blah, a);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  {
    uint8_t blah[16], ii;
    printf("%-20s", "b sl32");
    _mm_storeu_si128((__m128i *)blah, b);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  {
    uint8_t blah[16], ii;
    printf("%-20s", "c sl64");
    _mm_storeu_si128((__m128i *)blah, c);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d sl128");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  a = _mm_srli_epi16(a, 2);
  b = _mm_srli_epi32(b, 2);
  c = _mm_srli_epi64(c, 2);
  d = _mm_srli_si128(d, 2);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "a sr16");
    _mm_storeu_si128((__m128i *)blah, a);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  {
    uint8_t blah[16], ii;
    printf("%-20s", "b sr32");
    _mm_storeu_si128((__m128i *)blah, b);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  {
    uint8_t blah[16], ii;
    printf("%-20s", "c sr64");
    _mm_storeu_si128((__m128i *)blah, c);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d sr128");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_xor_si128(a, b);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d = a^b");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_sub_epi8(a, b);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d = a-b epi8");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_sub_epi16(a, b);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d = a-b epi16");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_sub_epi32(a, b);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d = a-b epi32");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_sub_epi64(a, b);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d = a-b epi64");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_set_epi8(15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d set_epi8");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_set_epi32(0x12345678, 0x9abcdef0, 0x12345678, 0x9abcdef0);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d set_epi32");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_set1_epi64x(0xF0F0F0F0F0F0F0F0ULL);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d set1_epi64");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_set1_epi32(0xe2e2e2e2);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d set1_epi32");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_set1_epi16(0xaff3);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d set1_epi16");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_set1_epi8(0xc5);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d set1_epi8");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_packus_epi16(d, d);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d packus_epi16(d,d)");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  c = _mm_unpackhi_epi8(a, d);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "c unpackhi(a,d)");
    _mm_storeu_si128((__m128i *)blah, c);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  b = _mm_unpacklo_epi8(c, a);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "b unpacklo(c,a)");
    _mm_storeu_si128((__m128i *)blah, b);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  d = _mm_and_si128(d, b);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d and(d,b)");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  _mm_store_si128((__m128i *)ui8, a);
  printf("a stored to mem: ");
  for (i = 0; i < 16; i++)
    printf("%u ", ui8[i]);
  printf("\n");
  d = _mm_setzero_si128();
  {
    uint8_t blah[16], ii;
    printf("%-20s", "d setzero");
    _mm_storeu_si128((__m128i *)blah, d);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
  u32 = 0xABCD1234;
  u64 = 0xFEDCBA1291827364ULL;
  c = _mm_set1_epi8(5);
  {
    uint8_t blah[16], ii;
    printf("%-20s", "c");
    _mm_storeu_si128((__m128i *)blah, c);
    for (ii = 0; ii < 16; ii += 1)
      printf("%s%02x", (ii % 4 == 0) ? "   " : " ", blah[15 - ii]);
    printf("\n");
  };
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
sub    $0x990,%rsp
movl   $0x0,-0x4(%rbp)
mov    $0x14,%edi
call   1140 <malloc@plt>
mov    %rax,-0x18(%rbp)
movl   $0x0,-0x1c(%rbp)
cmpl   $0x14,-0x1c(%rbp)
jge    132d <main+0x4d>
mov    -0x1c(%rbp),%edx
mov    -0x18(%rbp),%rax
movslq -0x1c(%rbp),%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1307 <main+0x27>
mov    -0x18(%rbp),%rdi
call   1040 <_mm_load_si128@plt>
mov    %eax,-0x20(%rbp)
mov    -0x18(%rbp),%rdi
add    $0x4,%rdi
call   11c0 <_mm_loadu_si128@plt>
mov    %eax,-0x24(%rbp)
mov    -0x18(%rbp),%rdi
add    $0x8,%rdi
call   11c0 <_mm_loadu_si128@plt>
mov    %eax,-0x28(%rbp)
mov    -0x18(%rbp),%rdi
add    $0xc,%rdi
call   11c0 <_mm_loadu_si128@plt>
mov    %eax,-0x2c(%rbp)
lea    0x1c90(%rip),%rdi
lea    0x1c8f(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x70(%rbp),%rdi
mov    -0x20(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x74(%rbp)
cmpl   $0x10,-0x74(%rbp)
jge    13e5 <main+0x105>
mov    -0x74(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x1c64(%rip),%rsi
lea    0x1c5b(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x74(%rbp),%eax
cltq
mov    -0x70(%rbp,%rax,4),%edx
lea    0x1c38(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x74(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x74(%rbp)
jmp    1391 <main+0xb1>
lea    0x1c27(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    0x1c06(%rip),%rdi
lea    0x1c58(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0xc0(%rbp),%rdi
mov    -0x24(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0xc4(%rbp)
cmpl   $0x10,-0xc4(%rbp)
jge    1487 <main+0x1a7>
mov    -0xc4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x1bce(%rip),%rsi
lea    0x1bc5(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0xc4(%rbp),%eax
cltq
mov    -0xc0(%rbp,%rax,4),%edx
lea    0x1b9c(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0xc4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc4(%rbp)
jmp    1421 <main+0x141>
lea    0x1b85(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    0x1b64(%rip),%rdi
lea    0x1b72(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x110(%rbp),%rdi
mov    -0x28(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x114(%rbp)
cmpl   $0x10,-0x114(%rbp)
jge    1529 <main+0x249>
mov    -0x114(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x1b2c(%rip),%rsi
lea    0x1b23(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x114(%rbp),%eax
cltq
mov    -0x110(%rbp,%rax,4),%edx
lea    0x1afa(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x114(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x114(%rbp)
jmp    14c3 <main+0x1e3>
lea    0x1ae3(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    0x1ac2(%rip),%rdi
lea    0x1ad2(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x160(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x164(%rbp)
cmpl   $0x10,-0x164(%rbp)
jge    15cb <main+0x2eb>
mov    -0x164(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x1a8a(%rip),%rsi
lea    0x1a81(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x164(%rbp),%eax
cltq
mov    -0x160(%rbp,%rax,4),%edx
lea    0x1a58(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x164(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x164(%rbp)
jmp    1565 <main+0x285>
lea    0x1a41(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x20(%rbp),%edi
mov    $0x2,%esi
call   1200 <_mm_slli_epi16@plt>
mov    %eax,-0x20(%rbp)
mov    -0x24(%rbp),%edi
mov    $0x2,%esi
call   1190 <_mm_slli_epi32@plt>
mov    %eax,-0x24(%rbp)
mov    -0x28(%rbp),%edi
mov    $0x2,%esi
call   11f0 <_mm_slli_epi64@plt>
mov    %eax,-0x28(%rbp)
mov    -0x2c(%rbp),%edi
mov    $0x2,%esi
call   11e0 <_mm_slli_si128@plt>
mov    %eax,-0x2c(%rbp)
lea    0x19e0(%rip),%rdi
lea    0x19f2(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x1b0(%rbp),%rdi
mov    -0x20(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x1b4(%rbp)
cmpl   $0x10,-0x1b4(%rbp)
jge    16ad <main+0x3cd>
mov    -0x1b4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x19a8(%rip),%rsi
lea    0x199f(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x1b4(%rbp),%eax
cltq
mov    -0x1b0(%rbp,%rax,4),%edx
lea    0x1976(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x1b4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1b4(%rbp)
jmp    1647 <main+0x367>
lea    0x195f(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    0x193e(%rip),%rdi
lea    0x1957(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x200(%rbp),%rdi
mov    -0x24(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x204(%rbp)
cmpl   $0x10,-0x204(%rbp)
jge    174f <main+0x46f>
mov    -0x204(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x1906(%rip),%rsi
lea    0x18fd(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x204(%rbp),%eax
cltq
mov    -0x200(%rbp,%rax,4),%edx
lea    0x18d4(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x204(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x204(%rbp)
jmp    16e9 <main+0x409>
lea    0x18bd(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    0x189c(%rip),%rdi
lea    0x18bc(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x250(%rbp),%rdi
mov    -0x28(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x254(%rbp)
cmpl   $0x10,-0x254(%rbp)
jge    17f1 <main+0x511>
mov    -0x254(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x1864(%rip),%rsi
lea    0x185b(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x254(%rbp),%eax
cltq
mov    -0x250(%rbp,%rax,4),%edx
lea    0x1832(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x254(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x254(%rbp)
jmp    178b <main+0x4ab>
lea    0x181b(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    0x17fa(%rip),%rdi
lea    0x1821(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x2a0(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x2a4(%rbp)
cmpl   $0x10,-0x2a4(%rbp)
jge    1893 <main+0x5b3>
mov    -0x2a4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x17c2(%rip),%rsi
lea    0x17b9(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x2a4(%rbp),%eax
cltq
mov    -0x2a0(%rbp,%rax,4),%edx
lea    0x1790(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x2a4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x2a4(%rbp)
jmp    182d <main+0x54d>
lea    0x1779(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x20(%rbp),%edi
mov    $0x2,%esi
call   1090 <_mm_srli_epi16@plt>
mov    %eax,-0x20(%rbp)
mov    -0x24(%rbp),%edi
mov    $0x2,%esi
call   11b0 <_mm_srli_epi32@plt>
mov    %eax,-0x24(%rbp)
mov    -0x28(%rbp),%edi
mov    $0x2,%esi
call   10c0 <_mm_srli_epi64@plt>
mov    %eax,-0x28(%rbp)
mov    -0x2c(%rbp),%edi
mov    $0x2,%esi
call   1100 <_mm_srli_si128@plt>
mov    %eax,-0x2c(%rbp)
lea    0x1718(%rip),%rdi
lea    0x1747(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x2f0(%rbp),%rdi
mov    -0x20(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x2f4(%rbp)
cmpl   $0x10,-0x2f4(%rbp)
jge    1975 <main+0x695>
mov    -0x2f4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x16e0(%rip),%rsi
lea    0x16d7(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x2f4(%rbp),%eax
cltq
mov    -0x2f0(%rbp,%rax,4),%edx
lea    0x16ae(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x2f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x2f4(%rbp)
jmp    190f <main+0x62f>
lea    0x1697(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    0x1676(%rip),%rdi
lea    0x16ac(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x340(%rbp),%rdi
mov    -0x24(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x344(%rbp)
cmpl   $0x10,-0x344(%rbp)
jge    1a17 <main+0x737>
mov    -0x344(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x163e(%rip),%rsi
lea    0x1635(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x344(%rbp),%eax
cltq
mov    -0x340(%rbp,%rax,4),%edx
lea    0x160c(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x344(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x344(%rbp)
jmp    19b1 <main+0x6d1>
lea    0x15f5(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    0x15d4(%rip),%rdi
lea    0x1611(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x390(%rbp),%rdi
mov    -0x28(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x394(%rbp)
cmpl   $0x10,-0x394(%rbp)
jge    1ab9 <main+0x7d9>
mov    -0x394(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x159c(%rip),%rsi
lea    0x1593(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x394(%rbp),%eax
cltq
mov    -0x390(%rbp,%rax,4),%edx
lea    0x156a(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x394(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x394(%rbp)
jmp    1a53 <main+0x773>
lea    0x1553(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    0x1532(%rip),%rdi
lea    0x1576(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x3e0(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x3e4(%rbp)
cmpl   $0x10,-0x3e4(%rbp)
jge    1b5b <main+0x87b>
mov    -0x3e4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x14fa(%rip),%rsi
lea    0x14f1(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x3e4(%rbp),%eax
cltq
mov    -0x3e0(%rbp,%rax,4),%edx
lea    0x14c8(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x3e4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3e4(%rbp)
jmp    1af5 <main+0x815>
lea    0x14b1(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x20(%rbp),%edi
mov    -0x24(%rbp),%esi
call   1180 <_mm_xor_si128@plt>
mov    %eax,-0x2c(%rbp)
lea    0x1482(%rip),%rdi
lea    0x14ce(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x430(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x434(%rbp)
cmpl   $0x10,-0x434(%rbp)
jge    1c0b <main+0x92b>
mov    -0x434(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x144a(%rip),%rsi
lea    0x1441(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x434(%rbp),%eax
cltq
mov    -0x430(%rbp,%rax,4),%edx
lea    0x1418(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x434(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x434(%rbp)
jmp    1ba5 <main+0x8c5>
lea    0x1401(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x20(%rbp),%edi
mov    -0x24(%rbp),%esi
call   1160 <_mm_sub_epi8@plt>
mov    %eax,-0x2c(%rbp)
lea    0x13d2(%rip),%rdi
lea    0x1426(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x480(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x484(%rbp)
cmpl   $0x10,-0x484(%rbp)
jge    1cbb <main+0x9db>
mov    -0x484(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x139a(%rip),%rsi
lea    0x1391(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x484(%rbp),%eax
cltq
mov    -0x480(%rbp,%rax,4),%edx
lea    0x1368(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x484(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x484(%rbp)
jmp    1c55 <main+0x975>
lea    0x1351(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x20(%rbp),%edi
mov    -0x24(%rbp),%esi
call   1070 <_mm_sub_epi16@plt>
mov    %eax,-0x2c(%rbp)
lea    0x1322(%rip),%rdi
lea    0x1383(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x4d0(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x4d4(%rbp)
cmpl   $0x10,-0x4d4(%rbp)
jge    1d6b <main+0xa8b>
mov    -0x4d4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x12ea(%rip),%rsi
lea    0x12e1(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x4d4(%rbp),%eax
cltq
mov    -0x4d0(%rbp,%rax,4),%edx
lea    0x12b8(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x4d4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x4d4(%rbp)
jmp    1d05 <main+0xa25>
lea    0x12a1(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x20(%rbp),%edi
mov    -0x24(%rbp),%esi
call   1120 <_mm_sub_epi32@plt>
mov    %eax,-0x2c(%rbp)
lea    0x1272(%rip),%rdi
lea    0x12e1(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x520(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x524(%rbp)
cmpl   $0x10,-0x524(%rbp)
jge    1e1b <main+0xb3b>
mov    -0x524(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x123a(%rip),%rsi
lea    0x1231(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x524(%rbp),%eax
cltq
mov    -0x520(%rbp,%rax,4),%edx
lea    0x1208(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x524(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x524(%rbp)
jmp    1db5 <main+0xad5>
lea    0x11f1(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x20(%rbp),%edi
mov    -0x24(%rbp),%esi
call   10e0 <_mm_sub_epi64@plt>
mov    %eax,-0x2c(%rbp)
lea    0x11c2(%rip),%rdi
lea    0x123f(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x570(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x574(%rbp)
cmpl   $0x10,-0x574(%rbp)
jge    1ecb <main+0xbeb>
mov    -0x574(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x118a(%rip),%rsi
lea    0x1181(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x574(%rbp),%eax
cltq
mov    -0x570(%rbp,%rax,4),%edx
lea    0x1158(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x574(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x574(%rbp)
jmp    1e65 <main+0xb85>
lea    0x1141(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    $0xf,%edi
mov    $0xe,%esi
mov    $0xd,%edx
mov    $0xc,%ecx
mov    $0xb,%r8d
mov    $0xa,%r9d
xor    %eax,%eax
movl   $0x9,(%rsp)
movl   $0x8,0x8(%rsp)
movl   $0x7,0x10(%rsp)
movl   $0x6,0x18(%rsp)
movl   $0x5,0x20(%rsp)
movl   $0x4,0x28(%rsp)
movl   $0x3,0x30(%rsp)
movl   $0x2,0x38(%rsp)
movl   $0x1,0x40(%rsp)
movl   $0x0,0x48(%rsp)
call   1130 <_mm_set_epi8@plt>
mov    %eax,-0x2c(%rbp)
lea    0x10a7(%rip),%rdi
lea    0x1132(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x5c0(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x5c4(%rbp)
cmpl   $0x10,-0x5c4(%rbp)
jge    1fe6 <main+0xd06>
mov    -0x5c4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x106f(%rip),%rsi
lea    0x1066(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x5c4(%rbp),%eax
cltq
mov    -0x5c0(%rbp,%rax,4),%edx
lea    0x103d(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x5c4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x5c4(%rbp)
jmp    1f80 <main+0xca0>
lea    0x1026(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    $0x12345678,%edx
mov    $0x9abcdef0,%ecx
mov    %edx,%edi
mov    %ecx,%esi
call   10a0 <_mm_set_epi32@plt>
mov    %eax,-0x2c(%rbp)
lea    0xfef(%rip),%rdi
lea    0x1085(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x610(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x614(%rbp)
cmpl   $0x10,-0x614(%rbp)
jge    209e <main+0xdbe>
mov    -0x614(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0xfb7(%rip),%rsi
lea    0xfae(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x614(%rbp),%eax
cltq
mov    -0x610(%rbp,%rax,4),%edx
lea    0xf85(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x614(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x614(%rbp)
jmp    2038 <main+0xd58>
lea    0xf6e(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    $0xf0f0f0f0,%edi
call   1170 <_mm_set1_epi64x@plt>
mov    %eax,-0x2c(%rbp)
lea    0xf40(%rip),%rdi
lea    0xfe2(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x660(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x664(%rbp)
cmpl   $0x10,-0x664(%rbp)
jge    214d <main+0xe6d>
mov    -0x664(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0xf08(%rip),%rsi
lea    0xeff(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x664(%rbp),%eax
cltq
mov    -0x660(%rbp,%rax,4),%edx
lea    0xed6(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x664(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x664(%rbp)
jmp    20e7 <main+0xe07>
lea    0xebf(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    $0xe2e2e2e2,%edi
call   1150 <_mm_set1_epi32@plt>
mov    %eax,-0x2c(%rbp)
lea    0xe91(%rip),%rdi
lea    0xf40(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x6b0(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x6b4(%rbp)
cmpl   $0x10,-0x6b4(%rbp)
jge    21fc <main+0xf1c>
mov    -0x6b4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0xe59(%rip),%rsi
lea    0xe50(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x6b4(%rbp),%eax
cltq
mov    -0x6b0(%rbp,%rax,4),%edx
lea    0xe27(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x6b4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x6b4(%rbp)
jmp    2196 <main+0xeb6>
lea    0xe10(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    $0xaff3,%edi
call   10f0 <_mm_set1_epi16@plt>
mov    %eax,-0x2c(%rbp)
lea    0xde2(%rip),%rdi
lea    0xe9e(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x700(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x704(%rbp)
cmpl   $0x10,-0x704(%rbp)
jge    22ab <main+0xfcb>
mov    -0x704(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0xdaa(%rip),%rsi
lea    0xda1(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x704(%rbp),%eax
cltq
mov    -0x700(%rbp,%rax,4),%edx
lea    0xd78(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x704(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x704(%rbp)
jmp    2245 <main+0xf65>
lea    0xd61(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    $0xc5,%edi
call   10b0 <_mm_set1_epi8@plt>
mov    %eax,-0x2c(%rbp)
lea    0xd33(%rip),%rdi
lea    0xdfc(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x750(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x754(%rbp)
cmpl   $0x10,-0x754(%rbp)
jge    235a <main+0x107a>
mov    -0x754(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0xcfb(%rip),%rsi
lea    0xcf2(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x754(%rbp),%eax
cltq
mov    -0x750(%rbp,%rax,4),%edx
lea    0xcc9(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x754(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x754(%rbp)
jmp    22f4 <main+0x1014>
lea    0xcb2(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x2c(%rbp),%edi
mov    -0x2c(%rbp),%esi
call   1060 <_mm_packus_epi16@plt>
mov    %eax,-0x2c(%rbp)
lea    0xc83(%rip),%rdi
lea    0xd58(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x7a0(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x7a4(%rbp)
cmpl   $0x10,-0x7a4(%rbp)
jge    240a <main+0x112a>
mov    -0x7a4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0xc4b(%rip),%rsi
lea    0xc42(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x7a4(%rbp),%eax
cltq
mov    -0x7a0(%rbp,%rax,4),%edx
lea    0xc19(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x7a4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x7a4(%rbp)
jmp    23a4 <main+0x10c4>
lea    0xc02(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x20(%rbp),%edi
mov    -0x2c(%rbp),%esi
call   1050 <_mm_unpackhi_epi8@plt>
mov    %eax,-0x28(%rbp)
lea    0xbd3(%rip),%rdi
lea    0xcbc(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x7f0(%rbp),%rdi
mov    -0x28(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x7f4(%rbp)
cmpl   $0x10,-0x7f4(%rbp)
jge    24ba <main+0x11da>
mov    -0x7f4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0xb9b(%rip),%rsi
lea    0xb92(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x7f4(%rbp),%eax
cltq
mov    -0x7f0(%rbp,%rax,4),%edx
lea    0xb69(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x7f4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x7f4(%rbp)
jmp    2454 <main+0x1174>
lea    0xb52(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x28(%rbp),%edi
mov    -0x20(%rbp),%esi
call   1030 <_mm_unpacklo_epi8@plt>
mov    %eax,-0x24(%rbp)
lea    0xb23(%rip),%rdi
lea    0xc1c(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x840(%rbp),%rdi
mov    -0x24(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x844(%rbp)
cmpl   $0x10,-0x844(%rbp)
jge    256a <main+0x128a>
mov    -0x844(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0xaeb(%rip),%rsi
lea    0xae2(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x844(%rbp),%eax
cltq
mov    -0x840(%rbp,%rax,4),%edx
lea    0xab9(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x844(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x844(%rbp)
jmp    2504 <main+0x1224>
lea    0xaa2(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x2c(%rbp),%edi
mov    -0x24(%rbp),%esi
call   11d0 <_mm_and_si128@plt>
mov    %eax,-0x2c(%rbp)
lea    0xa73(%rip),%rdi
lea    0xb7c(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x890(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x894(%rbp)
cmpl   $0x10,-0x894(%rbp)
jge    261a <main+0x133a>
mov    -0x894(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0xa3b(%rip),%rsi
lea    0xa32(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x894(%rbp),%eax
cltq
mov    -0x890(%rbp,%rax,4),%edx
lea    0xa09(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x894(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x894(%rbp)
jmp    25b4 <main+0x12d4>
lea    0x9f2(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x18(%rbp),%rdi
mov    -0x20(%rbp),%esi
call   1110 <_mm_store_si128@plt>
lea    0xae0(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x10,-0x1c(%rbp)
jge    267a <main+0x139a>
mov    -0x18(%rbp),%rax
movslq -0x1c(%rbp),%rcx
mov    (%rax,%rcx,4),%esi
lea    0xac8(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    2649 <main+0x1369>
lea    0x992(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    $0x0,%al
call   1080 <_mm_setzero_si128@plt>
mov    %eax,-0x2c(%rbp)
lea    0x967(%rip),%rdi
lea    0xa91(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x8e0(%rbp),%rdi
mov    -0x2c(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x8e4(%rbp)
cmpl   $0x10,-0x8e4(%rbp)
jge    2726 <main+0x1446>
mov    -0x8e4(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x92f(%rip),%rsi
lea    0x926(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x8e4(%rbp),%eax
cltq
mov    -0x8e0(%rbp,%rax,4),%edx
lea    0x8fd(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x8e4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8e4(%rbp)
jmp    26c0 <main+0x13e0>
lea    0x8e6(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
movl   $0xabcd1234,-0x8(%rbp)
movl   $0x91827364,-0xc(%rbp)
mov    $0x5,%edi
call   10b0 <_mm_set1_epi8@plt>
mov    %eax,-0x28(%rbp)
lea    0x8aa(%rip),%rdi
lea    0x8b8(%rip),%rsi
mov    $0x0,%al
call   10d0 <printf@plt>
lea    -0x930(%rbp),%rdi
mov    -0x28(%rbp),%esi
call   11a0 <_mm_storeu_si128@plt>
movl   $0x0,-0x934(%rbp)
cmpl   $0x10,-0x934(%rbp)
jge    27e3 <main+0x1503>
mov    -0x934(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
lea    0x872(%rip),%rsi
lea    0x869(%rip),%rax
cmp    $0x0,%edx
cmove  %rax,%rsi
mov    $0xf,%eax
sub    -0x934(%rbp),%eax
cltq
mov    -0x930(%rbp,%rax,4),%edx
lea    0x840(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x934(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x934(%rbp)
jmp    277d <main+0x149d>
lea    0x829(%rip),%rdi
mov    $0x0,%al
call   10d0 <printf@plt>
mov    -0x4(%rbp),%eax
add    $0x990,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<main>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x58,%rsp
mov    $0x14,%edi
call   1150 <malloc@plt>
mov    %rax,0x50(%rsp)
lea    0x4(%rax),%rbx
lea    0x8(%rax),%r15
lea    0xc(%rax),%r14
movaps 0x2ce0(%rip),%xmm0
movups %xmm0,(%rax)
movaps 0x2ce6(%rip),%xmm0
movups %xmm0,0x10(%rax)
movaps 0x2ceb(%rip),%xmm0
movups %xmm0,0x20(%rax)
movaps 0x2cf0(%rip),%xmm0
movups %xmm0,0x30(%rax)
movaps 0x2cf5(%rip),%xmm0
movups %xmm0,0x40(%rax)
mov    %rax,%rdi
call   1050 <_mm_load_si128@plt>
mov    %eax,%ebp
mov    %eax,0x44(%rsp)
mov    %rbx,%rdi
call   11d0 <_mm_loadu_si128@plt>
mov    %eax,%ebx
mov    %eax,0x40(%rsp)
mov    %r15,%rdi
call   11d0 <_mm_loadu_si128@plt>
mov    %eax,%r13d
mov    %r14,%rdi
call   11d0 <_mm_loadu_si128@plt>
mov    %eax,0x4c(%rsp)
lea    0x2cc7(%rip),%r12
lea    0x2cc6(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
lea    0x2ca9(%rip),%r15
lea    0x2ca9(%rip),%rbp
mov    %r15,%rdi
mov    %rbp,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
lea    0x2c93(%rip),%r14
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbp,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbp,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbp,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x2bce(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebx,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbp,%rsi
mov    %rbp,%rbx
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbp,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbp,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbp,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x2a53(%rip),%rsi
mov    %r12,%rdi
mov    %r12,%rbp
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %r13d,%esi
mov    %r13d,%r12d
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x291a(%rip),%rsi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    0x4c(%rsp),%r13d
mov    %r13d,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    0x44(%rsp),%edi
mov    $0x2,%esi
call   1210 <_mm_slli_epi16@plt>
mov    %eax,%ebp
mov    %eax,0x44(%rsp)
mov    0x40(%rsp),%edi
mov    $0x2,%esi
call   11a0 <_mm_slli_epi32@plt>
mov    %eax,0x40(%rsp)
mov    %r12d,%edi
mov    $0x2,%esi
call   1200 <_mm_slli_epi64@plt>
mov    %eax,0x48(%rsp)
mov    %r13d,%edi
mov    $0x2,%esi
call   11f0 <_mm_slli_si128@plt>
mov    %eax,%r12d
lea    0x279b(%rip),%rsi
lea    0x277d(%rip),%rdi
mov    %rdi,%r13
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x2667(%rip),%rsi
mov    %r13,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    0x40(%rsp),%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x2538(%rip),%rsi
mov    %r13,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    0x48(%rsp),%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x2409(%rip),%rsi
mov    %r13,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %r12d,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    0x44(%rsp),%edi
mov    $0x2,%esi
call   10a0 <_mm_srli_epi16@plt>
mov    %eax,%ebp
mov    0x40(%rsp),%edi
mov    $0x2,%esi
call   11c0 <_mm_srli_epi32@plt>
mov    %eax,%r13d
mov    0x48(%rsp),%edi
mov    $0x2,%esi
call   10d0 <_mm_srli_epi64@plt>
mov    %eax,0x4c(%rsp)
mov    %r12d,%edi
mov    $0x2,%esi
call   1110 <_mm_srli_si128@plt>
mov    %eax,0x48(%rsp)
lea    0x2298(%rip),%rsi
lea    0x225d(%rip),%r12
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x2164(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %r13d,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x2036(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    0x4c(%rsp),%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x1f07(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    0x48(%rsp),%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    %ebp,%r12d
mov    %ebp,%edi
mov    %r13d,0x40(%rsp)
mov    %r13d,%esi
call   1190 <_mm_xor_si128@plt>
mov    %eax,%ebp
lea    0x1dc5(%rip),%rsi
lea    0x1d6d(%rip),%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    %r12d,%edi
mov    %r12d,0x44(%rsp)
mov    %r13d,%esi
call   1170 <_mm_sub_epi8@plt>
mov    %eax,%ebp
lea    0x1c83(%rip),%rsi
lea    0x1c23(%rip),%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%r13
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    %r12d,%edi
mov    0x40(%rsp),%ebx
mov    %ebx,%esi
call   1080 <_mm_sub_epi16@plt>
mov    %eax,%ebp
lea    0x1b45(%rip),%rsi
lea    0x1ad8(%rip),%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
mov    %r13,%r12
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    0x44(%rsp),%r13d
mov    %r13d,%edi
mov    %ebx,%esi
call   1130 <_mm_sub_epi32@plt>
mov    %eax,%ebp
lea    0x1a07(%rip),%rsi
lea    0x198c(%rip),%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
mov    %r12,%rbx
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    %r13d,%edi
mov    0x40(%rsp),%esi
call   10f0 <_mm_sub_epi64@plt>
mov    %eax,%ebp
lea    0x18cc(%rip),%rsi
lea    0x1843(%rip),%rdi
mov    %rdi,%r12
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%r13
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0xf,%edi
mov    $0xe,%esi
mov    $0xd,%edx
mov    $0xc,%ecx
mov    $0xb,%r8d
mov    $0xa,%r9d
push   $0x0
push   $0x1
push   $0x2
push   $0x3
push   $0x4
push   $0x5
push   $0x6
push   $0x7
push   $0x8
push   $0x9
call   1140 <_mm_set_epi8@plt>
add    $0x50,%rsp
mov    %eax,%ebp
lea    0x175d(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0x12345678,%edi
mov    $0x9abcdef0,%esi
mov    $0x12345678,%edx
mov    $0x9abcdef0,%ecx
call   10b0 <_mm_set_epi32@plt>
mov    %eax,%ebp
lea    0x1619(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0xf0f0f0f0,%edi
call   1180 <_mm_set1_epi64x@plt>
mov    %eax,%ebp
lea    0x14e5(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0xe2e2e2e2,%edi
call   1160 <_mm_set1_epi32@plt>
mov    %eax,%ebp
lea    0x13b2(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0xaff3,%edi
call   1100 <_mm_set1_epi16@plt>
mov    %eax,%ebp
lea    0x127f(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0xc5,%edi
call   10c0 <_mm_set1_epi8@plt>
mov    %eax,%ebp
lea    0x114c(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    %ebp,%edi
mov    %ebp,%esi
call   1070 <_mm_packus_epi16@plt>
mov    %eax,%ebp
lea    0x1019(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
mov    %ebp,0x40(%rsp)
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %rbx,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    0x44(%rsp),%ebx
mov    %ebx,%edi
mov    %ebp,%esi
call   1060 <_mm_unpackhi_epi8@plt>
mov    %eax,%ebp
lea    0xee6(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    %ebp,%edi
mov    %ebx,%esi
call   1040 <_mm_unpacklo_epi8@plt>
mov    %eax,%ebp
lea    0xdb7(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    0x40(%rsp),%edi
mov    %ebp,%esi
call   11e0 <_mm_and_si128@plt>
mov    %eax,%ebp
lea    0xc86(%rip),%rsi
mov    %r12,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
mov    %r13,%r12
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %r13,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    0x50(%rsp),%rbx
mov    %rbx,%rdi
mov    0x44(%rsp),%esi
call   1120 <_mm_store_si128@plt>
lea    0xb49(%rip),%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rbx),%esi
lea    0xb4b(%rip),%rbp
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x3c(%rbx),%esi
mov    %rbp,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
xor    %eax,%eax
call   1090 <_mm_setzero_si128@plt>
mov    %eax,%ebp
lea    0xa68(%rip),%rsi
lea    0x932(%rip),%r13
mov    %r13,%rdi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0x5,%edi
call   10c0 <_mm_set1_epi8@plt>
mov    %eax,%ebp
mov    %r13,%rdi
lea    0x802(%rip),%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    %rsp,%rdi
mov    %ebp,%esi
call   11b0 <_mm_storeu_si128@plt>
mov    0x3c(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x38(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x34(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x30(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x2c(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x28(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x24(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x20(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x1c(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x18(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x14(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x10(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0xc(%rsp),%edx
mov    %r15,%rdi
mov    %r12,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x8(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    0x4(%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    (%rsp),%edx
mov    %r15,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10e0 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
xor    %eax,%eax
add    $0x58,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
@.str = [6 x i8] c"%-20s\00"
@.str.1 = [2 x i8] c"a\00"
@.str.2 = [7 x i8] c"%s%02x\00"
@.str.3 = [4 x i8] c" \00"
@.str.4 = [2 x i8] c" \00"
@.str.5 = [2 x i8] c"\0A\00"
@.str.6 = [2 x i8] c"b\00"
@.str.7 = [2 x i8] c"c\00"
@.str.8 = [2 x i8] c"d\00"
@.str.9 = [7 x i8] c"a sl16\00"
@.str.10 = [7 x i8] c"b sl32\00"
@.str.11 = [7 x i8] c"c sl64\00"
@.str.12 = [8 x i8] c"d sl128\00"
@.str.13 = [7 x i8] c"a sr16\00"
@.str.14 = [7 x i8] c"b sr32\00"
@.str.15 = [7 x i8] c"c sr64\00"
@.str.16 = [8 x i8] c"d sr128\00"
@.str.17 = [8 x i8] c"d = a^b\00"
@.str.18 = [13 x i8] c"d = a-b epi8\00"
@.str.19 = [14 x i8] c"d = a-b epi16\00"
@.str.20 = [14 x i8] c"d = a-b epi32\00"
@.str.21 = [14 x i8] c"d = a-b epi64\00"
@.str.22 = [11 x i8] c"d set_epi8\00"
@.str.23 = [12 x i8] c"d set_epi32\00"
@.str.24 = [13 x i8] c"d set1_epi64\00"
@.str.25 = [13 x i8] c"d set1_epi32\00"
@.str.26 = [13 x i8] c"d set1_epi16\00"
@.str.27 = [12 x i8] c"d set1_epi8\00"
@.str.28 = [20 x i8] c"d packus_epi16(d,d)\00"
@.str.29 = [16 x i8] c"c unpackhi(a,d)\00"
@.str.30 = [16 x i8] c"b unpacklo(c,a)\00"
@.str.31 = [11 x i8] c"d and(d,b)\00"
@.str.32 = [18 x i8] c"a stored to mem: \00"
@.str.33 = [4 x i8] c"%u \00"
@.str.34 = [10 x i8] c"d setzero\00"
define i32 @main() {
%1 = alloca i32
%2 = alloca i32
%3 = alloca i32
%4 = alloca i32*
%5 = alloca i32
%6 = alloca i32
%7 = alloca i32
%8 = alloca i32
%9 = alloca i32
%10 = alloca [16 x i32]
%11 = alloca i32
%12 = alloca [16 x i32]
%13 = alloca i32
%14 = alloca [16 x i32]
%15 = alloca i32
%16 = alloca [16 x i32]
%17 = alloca i32
%18 = alloca [16 x i32]
%19 = alloca i32
%20 = alloca [16 x i32]
%21 = alloca i32
%22 = alloca [16 x i32]
%23 = alloca i32
%24 = alloca [16 x i32]
%25 = alloca i32
%26 = alloca [16 x i32]
%27 = alloca i32
%28 = alloca [16 x i32]
%29 = alloca i32
%30 = alloca [16 x i32]
%31 = alloca i32
%32 = alloca [16 x i32]
%33 = alloca i32
%34 = alloca [16 x i32]
%35 = alloca i32
%36 = alloca [16 x i32]
%37 = alloca i32
%38 = alloca [16 x i32]
%39 = alloca i32
%40 = alloca [16 x i32]
%41 = alloca i32
%42 = alloca [16 x i32]
%43 = alloca i32
%44 = alloca [16 x i32]
%45 = alloca i32
%46 = alloca [16 x i32]
%47 = alloca i32
%48 = alloca [16 x i32]
%49 = alloca i32
%50 = alloca [16 x i32]
%51 = alloca i32
%52 = alloca [16 x i32]
%53 = alloca i32
%54 = alloca [16 x i32]
%55 = alloca i32
%56 = alloca [16 x i32]
%57 = alloca i32
%58 = alloca [16 x i32]
%59 = alloca i32
%60 = alloca [16 x i32]
%61 = alloca i32
%62 = alloca [16 x i32]
%63 = alloca i32
%64 = alloca [16 x i32]
%65 = alloca i32
%66 = alloca [16 x i32]
%67 = alloca i32
store i32 0, i32* %1
%68 = call i32* @malloc(i32 20)
store i32* %68, i32** %4
store i32 0, i32* %5
br label %69
69: ; preds = %78, %0
%70 = load i32, i32* %5
%71 = icmp slt i32 %70, 20
br i1 %71, label %72, label %81
72: ; preds = %69
%73 = load i32, i32* %5
%74 = load i32*, i32** %4
%75 = load i32, i32* %5
%76 = sext i32 %75 to i64
%77 = getelementptr inbounds i32, i32* %74, i64 %76
store i32 %73, i32* %77
br label %78
78: ; preds = %72
%79 = load i32, i32* %5
%80 = add nsw i32 %79, 1
store i32 %80, i32* %5
br label %69
81: ; preds = %69
%82 = load i32*, i32** %4
%83 = call i32 @_mm_load_si128(i32* %82)
store i32 %83, i32* %6
%84 = load i32*, i32** %4
%85 = getelementptr inbounds i32, i32* %84, i64 1
%86 = call i32 @_mm_loadu_si128(i32* %85)
store i32 %86, i32* %7
%87 = load i32*, i32** %4
%88 = getelementptr inbounds i32, i32* %87, i64 2
%89 = call i32 @_mm_loadu_si128(i32* %88)
store i32 %89, i32* %8
%90 = load i32*, i32** %4
%91 = getelementptr inbounds i32, i32* %90, i64 3
%92 = call i32 @_mm_loadu_si128(i32* %91)
store i32 %92, i32* %9
%93 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0))
%94 = getelementptr inbounds [16 x i32], [16 x i32]* %10, i64 0, i64 0
%95 = load i32, i32* %6
%96 = call i32 @_mm_storeu_si128(i32* %94, i32 %95)
store i32 0, i32* %11
br label %97
97: ; preds = %112, %81
%98 = load i32, i32* %11
%99 = icmp slt i32 %98, 16
br i1 %99, label %100, label %115
100: ; preds = %97
%101 = load i32, i32* %11
%102 = srem i32 %101, 4
%103 = icmp eq i32 %102, 0
%104 = zext i1 %103 to i64
%105 = select i1 %103, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%106 = load i32, i32* %11
%107 = sub nsw i32 15, %106
%108 = sext i32 %107 to i64
%109 = getelementptr inbounds [16 x i32], [16 x i32]* %10, i64 0, i64 %108
%110 = load i32, i32* %109
%111 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %105, i32 %110)
br label %112
112: ; preds = %100
%113 = load i32, i32* %11
%114 = add nsw i32 %113, 1
store i32 %114, i32* %11
br label %97
115: ; preds = %97
%116 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%117 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0))
%118 = getelementptr inbounds [16 x i32], [16 x i32]* %12, i64 0, i64 0
%119 = load i32, i32* %7
%120 = call i32 @_mm_storeu_si128(i32* %118, i32 %119)
store i32 0, i32* %13
br label %121
121: ; preds = %136, %115
%122 = load i32, i32* %13
%123 = icmp slt i32 %122, 16
br i1 %123, label %124, label %139
124: ; preds = %121
%125 = load i32, i32* %13
%126 = srem i32 %125, 4
%127 = icmp eq i32 %126, 0
%128 = zext i1 %127 to i64
%129 = select i1 %127, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%130 = load i32, i32* %13
%131 = sub nsw i32 15, %130
%132 = sext i32 %131 to i64
%133 = getelementptr inbounds [16 x i32], [16 x i32]* %12, i64 0, i64 %132
%134 = load i32, i32* %133
%135 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %129, i32 %134)
br label %136
136: ; preds = %124
%137 = load i32, i32* %13
%138 = add nsw i32 %137, 1
store i32 %138, i32* %13
br label %121
139: ; preds = %121
%140 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%141 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.7, i64 0, i64 0))
%142 = getelementptr inbounds [16 x i32], [16 x i32]* %14, i64 0, i64 0
%143 = load i32, i32* %8
%144 = call i32 @_mm_storeu_si128(i32* %142, i32 %143)
store i32 0, i32* %15
br label %145
145: ; preds = %160, %139
%146 = load i32, i32* %15
%147 = icmp slt i32 %146, 16
br i1 %147, label %148, label %163
148: ; preds = %145
%149 = load i32, i32* %15
%150 = srem i32 %149, 4
%151 = icmp eq i32 %150, 0
%152 = zext i1 %151 to i64
%153 = select i1 %151, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%154 = load i32, i32* %15
%155 = sub nsw i32 15, %154
%156 = sext i32 %155 to i64
%157 = getelementptr inbounds [16 x i32], [16 x i32]* %14, i64 0, i64 %156
%158 = load i32, i32* %157
%159 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %153, i32 %158)
br label %160
160: ; preds = %148
%161 = load i32, i32* %15
%162 = add nsw i32 %161, 1
store i32 %162, i32* %15
br label %145
163: ; preds = %145
%164 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%165 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.8, i64 0, i64 0))
%166 = getelementptr inbounds [16 x i32], [16 x i32]* %16, i64 0, i64 0
%167 = load i32, i32* %9
%168 = call i32 @_mm_storeu_si128(i32* %166, i32 %167)
store i32 0, i32* %17
br label %169
169: ; preds = %184, %163
%170 = load i32, i32* %17
%171 = icmp slt i32 %170, 16
br i1 %171, label %172, label %187
172: ; preds = %169
%173 = load i32, i32* %17
%174 = srem i32 %173, 4
%175 = icmp eq i32 %174, 0
%176 = zext i1 %175 to i64
%177 = select i1 %175, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%178 = load i32, i32* %17
%179 = sub nsw i32 15, %178
%180 = sext i32 %179 to i64
%181 = getelementptr inbounds [16 x i32], [16 x i32]* %16, i64 0, i64 %180
%182 = load i32, i32* %181
%183 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %177, i32 %182)
br label %184
184: ; preds = %172
%185 = load i32, i32* %17
%186 = add nsw i32 %185, 1
store i32 %186, i32* %17
br label %169
187: ; preds = %169
%188 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%189 = load i32, i32* %6
%190 = call i32 @_mm_slli_epi16(i32 %189, i32 2)
store i32 %190, i32* %6
%191 = load i32, i32* %7
%192 = call i32 @_mm_slli_epi32(i32 %191, i32 2)
store i32 %192, i32* %7
%193 = load i32, i32* %8
%194 = call i32 @_mm_slli_epi64(i32 %193, i32 2)
store i32 %194, i32* %8
%195 = load i32, i32* %9
%196 = call i32 @_mm_slli_si128(i32 %195, i32 2)
store i32 %196, i32* %9
%197 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.9, i64 0, i64 0))
%198 = getelementptr inbounds [16 x i32], [16 x i32]* %18, i64 0, i64 0
%199 = load i32, i32* %6
%200 = call i32 @_mm_storeu_si128(i32* %198, i32 %199)
store i32 0, i32* %19
br label %201
201: ; preds = %216, %187
%202 = load i32, i32* %19
%203 = icmp slt i32 %202, 16
br i1 %203, label %204, label %219
204: ; preds = %201
%205 = load i32, i32* %19
%206 = srem i32 %205, 4
%207 = icmp eq i32 %206, 0
%208 = zext i1 %207 to i64
%209 = select i1 %207, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%210 = load i32, i32* %19
%211 = sub nsw i32 15, %210
%212 = sext i32 %211 to i64
%213 = getelementptr inbounds [16 x i32], [16 x i32]* %18, i64 0, i64 %212
%214 = load i32, i32* %213
%215 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %209, i32 %214)
br label %216
216: ; preds = %204
%217 = load i32, i32* %19
%218 = add nsw i32 %217, 1
store i32 %218, i32* %19
br label %201
219: ; preds = %201
%220 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%221 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.10, i64 0, i64 0))
%222 = getelementptr inbounds [16 x i32], [16 x i32]* %20, i64 0, i64 0
%223 = load i32, i32* %7
%224 = call i32 @_mm_storeu_si128(i32* %222, i32 %223)
store i32 0, i32* %21
br label %225
225: ; preds = %240, %219
%226 = load i32, i32* %21
%227 = icmp slt i32 %226, 16
br i1 %227, label %228, label %243
228: ; preds = %225
%229 = load i32, i32* %21
%230 = srem i32 %229, 4
%231 = icmp eq i32 %230, 0
%232 = zext i1 %231 to i64
%233 = select i1 %231, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%234 = load i32, i32* %21
%235 = sub nsw i32 15, %234
%236 = sext i32 %235 to i64
%237 = getelementptr inbounds [16 x i32], [16 x i32]* %20, i64 0, i64 %236
%238 = load i32, i32* %237
%239 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %233, i32 %238)
br label %240
240: ; preds = %228
%241 = load i32, i32* %21
%242 = add nsw i32 %241, 1
store i32 %242, i32* %21
br label %225
243: ; preds = %225
%244 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%245 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.11, i64 0, i64 0))
%246 = getelementptr inbounds [16 x i32], [16 x i32]* %22, i64 0, i64 0
%247 = load i32, i32* %8
%248 = call i32 @_mm_storeu_si128(i32* %246, i32 %247)
store i32 0, i32* %23
br label %249
249: ; preds = %264, %243
%250 = load i32, i32* %23
%251 = icmp slt i32 %250, 16
br i1 %251, label %252, label %267
252: ; preds = %249
%253 = load i32, i32* %23
%254 = srem i32 %253, 4
%255 = icmp eq i32 %254, 0
%256 = zext i1 %255 to i64
%257 = select i1 %255, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%258 = load i32, i32* %23
%259 = sub nsw i32 15, %258
%260 = sext i32 %259 to i64
%261 = getelementptr inbounds [16 x i32], [16 x i32]* %22, i64 0, i64 %260
%262 = load i32, i32* %261
%263 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %257, i32 %262)
br label %264
264: ; preds = %252
%265 = load i32, i32* %23
%266 = add nsw i32 %265, 1
store i32 %266, i32* %23
br label %249
267: ; preds = %249
%268 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%269 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.12, i64 0, i64 0))
%270 = getelementptr inbounds [16 x i32], [16 x i32]* %24, i64 0, i64 0
%271 = load i32, i32* %9
%272 = call i32 @_mm_storeu_si128(i32* %270, i32 %271)
store i32 0, i32* %25
br label %273
273: ; preds = %288, %267
%274 = load i32, i32* %25
%275 = icmp slt i32 %274, 16
br i1 %275, label %276, label %291
276: ; preds = %273
%277 = load i32, i32* %25
%278 = srem i32 %277, 4
%279 = icmp eq i32 %278, 0
%280 = zext i1 %279 to i64
%281 = select i1 %279, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%282 = load i32, i32* %25
%283 = sub nsw i32 15, %282
%284 = sext i32 %283 to i64
%285 = getelementptr inbounds [16 x i32], [16 x i32]* %24, i64 0, i64 %284
%286 = load i32, i32* %285
%287 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %281, i32 %286)
br label %288
288: ; preds = %276
%289 = load i32, i32* %25
%290 = add nsw i32 %289, 1
store i32 %290, i32* %25
br label %273
291: ; preds = %273
%292 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%293 = load i32, i32* %6
%294 = call i32 @_mm_srli_epi16(i32 %293, i32 2)
store i32 %294, i32* %6
%295 = load i32, i32* %7
%296 = call i32 @_mm_srli_epi32(i32 %295, i32 2)
store i32 %296, i32* %7
%297 = load i32, i32* %8
%298 = call i32 @_mm_srli_epi64(i32 %297, i32 2)
store i32 %298, i32* %8
%299 = load i32, i32* %9
%300 = call i32 @_mm_srli_si128(i32 %299, i32 2)
store i32 %300, i32* %9
%301 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.13, i64 0, i64 0))
%302 = getelementptr inbounds [16 x i32], [16 x i32]* %26, i64 0, i64 0
%303 = load i32, i32* %6
%304 = call i32 @_mm_storeu_si128(i32* %302, i32 %303)
store i32 0, i32* %27
br label %305
305: ; preds = %320, %291
%306 = load i32, i32* %27
%307 = icmp slt i32 %306, 16
br i1 %307, label %308, label %323
308: ; preds = %305
%309 = load i32, i32* %27
%310 = srem i32 %309, 4
%311 = icmp eq i32 %310, 0
%312 = zext i1 %311 to i64
%313 = select i1 %311, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%314 = load i32, i32* %27
%315 = sub nsw i32 15, %314
%316 = sext i32 %315 to i64
%317 = getelementptr inbounds [16 x i32], [16 x i32]* %26, i64 0, i64 %316
%318 = load i32, i32* %317
%319 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %313, i32 %318)
br label %320
320: ; preds = %308
%321 = load i32, i32* %27
%322 = add nsw i32 %321, 1
store i32 %322, i32* %27
br label %305
323: ; preds = %305
%324 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%325 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.14, i64 0, i64 0))
%326 = getelementptr inbounds [16 x i32], [16 x i32]* %28, i64 0, i64 0
%327 = load i32, i32* %7
%328 = call i32 @_mm_storeu_si128(i32* %326, i32 %327)
store i32 0, i32* %29
br label %329
329: ; preds = %344, %323
%330 = load i32, i32* %29
%331 = icmp slt i32 %330, 16
br i1 %331, label %332, label %347
332: ; preds = %329
%333 = load i32, i32* %29
%334 = srem i32 %333, 4
%335 = icmp eq i32 %334, 0
%336 = zext i1 %335 to i64
%337 = select i1 %335, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%338 = load i32, i32* %29
%339 = sub nsw i32 15, %338
%340 = sext i32 %339 to i64
%341 = getelementptr inbounds [16 x i32], [16 x i32]* %28, i64 0, i64 %340
%342 = load i32, i32* %341
%343 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %337, i32 %342)
br label %344
344: ; preds = %332
%345 = load i32, i32* %29
%346 = add nsw i32 %345, 1
store i32 %346, i32* %29
br label %329
347: ; preds = %329
%348 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%349 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.15, i64 0, i64 0))
%350 = getelementptr inbounds [16 x i32], [16 x i32]* %30, i64 0, i64 0
%351 = load i32, i32* %8
%352 = call i32 @_mm_storeu_si128(i32* %350, i32 %351)
store i32 0, i32* %31
br label %353
353: ; preds = %368, %347
%354 = load i32, i32* %31
%355 = icmp slt i32 %354, 16
br i1 %355, label %356, label %371
356: ; preds = %353
%357 = load i32, i32* %31
%358 = srem i32 %357, 4
%359 = icmp eq i32 %358, 0
%360 = zext i1 %359 to i64
%361 = select i1 %359, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%362 = load i32, i32* %31
%363 = sub nsw i32 15, %362
%364 = sext i32 %363 to i64
%365 = getelementptr inbounds [16 x i32], [16 x i32]* %30, i64 0, i64 %364
%366 = load i32, i32* %365
%367 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %361, i32 %366)
br label %368
368: ; preds = %356
%369 = load i32, i32* %31
%370 = add nsw i32 %369, 1
store i32 %370, i32* %31
br label %353
371: ; preds = %353
%372 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%373 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.16, i64 0, i64 0))
%374 = getelementptr inbounds [16 x i32], [16 x i32]* %32, i64 0, i64 0
%375 = load i32, i32* %9
%376 = call i32 @_mm_storeu_si128(i32* %374, i32 %375)
store i32 0, i32* %33
br label %377
377: ; preds = %392, %371
%378 = load i32, i32* %33
%379 = icmp slt i32 %378, 16
br i1 %379, label %380, label %395
380: ; preds = %377
%381 = load i32, i32* %33
%382 = srem i32 %381, 4
%383 = icmp eq i32 %382, 0
%384 = zext i1 %383 to i64
%385 = select i1 %383, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%386 = load i32, i32* %33
%387 = sub nsw i32 15, %386
%388 = sext i32 %387 to i64
%389 = getelementptr inbounds [16 x i32], [16 x i32]* %32, i64 0, i64 %388
%390 = load i32, i32* %389
%391 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %385, i32 %390)
br label %392
392: ; preds = %380
%393 = load i32, i32* %33
%394 = add nsw i32 %393, 1
store i32 %394, i32* %33
br label %377
395: ; preds = %377
%396 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%397 = load i32, i32* %6
%398 = load i32, i32* %7
%399 = call i32 @_mm_xor_si128(i32 %397, i32 %398)
store i32 %399, i32* %9
%400 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.17, i64 0, i64 0))
%401 = getelementptr inbounds [16 x i32], [16 x i32]* %34, i64 0, i64 0
%402 = load i32, i32* %9
%403 = call i32 @_mm_storeu_si128(i32* %401, i32 %402)
store i32 0, i32* %35
br label %404
404: ; preds = %419, %395
%405 = load i32, i32* %35
%406 = icmp slt i32 %405, 16
br i1 %406, label %407, label %422
407: ; preds = %404
%408 = load i32, i32* %35
%409 = srem i32 %408, 4
%410 = icmp eq i32 %409, 0
%411 = zext i1 %410 to i64
%412 = select i1 %410, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%413 = load i32, i32* %35
%414 = sub nsw i32 15, %413
%415 = sext i32 %414 to i64
%416 = getelementptr inbounds [16 x i32], [16 x i32]* %34, i64 0, i64 %415
%417 = load i32, i32* %416
%418 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %412, i32 %417)
br label %419
419: ; preds = %407
%420 = load i32, i32* %35
%421 = add nsw i32 %420, 1
store i32 %421, i32* %35
br label %404
422: ; preds = %404
%423 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%424 = load i32, i32* %6
%425 = load i32, i32* %7
%426 = call i32 @_mm_sub_epi8(i32 %424, i32 %425)
store i32 %426, i32* %9
%427 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.18, i64 0, i64 0))
%428 = getelementptr inbounds [16 x i32], [16 x i32]* %36, i64 0, i64 0
%429 = load i32, i32* %9
%430 = call i32 @_mm_storeu_si128(i32* %428, i32 %429)
store i32 0, i32* %37
br label %431
431: ; preds = %446, %422
%432 = load i32, i32* %37
%433 = icmp slt i32 %432, 16
br i1 %433, label %434, label %449
434: ; preds = %431
%435 = load i32, i32* %37
%436 = srem i32 %435, 4
%437 = icmp eq i32 %436, 0
%438 = zext i1 %437 to i64
%439 = select i1 %437, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%440 = load i32, i32* %37
%441 = sub nsw i32 15, %440
%442 = sext i32 %441 to i64
%443 = getelementptr inbounds [16 x i32], [16 x i32]* %36, i64 0, i64 %442
%444 = load i32, i32* %443
%445 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %439, i32 %444)
br label %446
446: ; preds = %434
%447 = load i32, i32* %37
%448 = add nsw i32 %447, 1
store i32 %448, i32* %37
br label %431
449: ; preds = %431
%450 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%451 = load i32, i32* %6
%452 = load i32, i32* %7
%453 = call i32 @_mm_sub_epi16(i32 %451, i32 %452)
store i32 %453, i32* %9
%454 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.19, i64 0, i64 0))
%455 = getelementptr inbounds [16 x i32], [16 x i32]* %38, i64 0, i64 0
%456 = load i32, i32* %9
%457 = call i32 @_mm_storeu_si128(i32* %455, i32 %456)
store i32 0, i32* %39
br label %458
458: ; preds = %473, %449
%459 = load i32, i32* %39
%460 = icmp slt i32 %459, 16
br i1 %460, label %461, label %476
461: ; preds = %458
%462 = load i32, i32* %39
%463 = srem i32 %462, 4
%464 = icmp eq i32 %463, 0
%465 = zext i1 %464 to i64
%466 = select i1 %464, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%467 = load i32, i32* %39
%468 = sub nsw i32 15, %467
%469 = sext i32 %468 to i64
%470 = getelementptr inbounds [16 x i32], [16 x i32]* %38, i64 0, i64 %469
%471 = load i32, i32* %470
%472 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %466, i32 %471)
br label %473
473: ; preds = %461
%474 = load i32, i32* %39
%475 = add nsw i32 %474, 1
store i32 %475, i32* %39
br label %458
476: ; preds = %458
%477 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%478 = load i32, i32* %6
%479 = load i32, i32* %7
%480 = call i32 @_mm_sub_epi32(i32 %478, i32 %479)
store i32 %480, i32* %9
%481 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.20, i64 0, i64 0))
%482 = getelementptr inbounds [16 x i32], [16 x i32]* %40, i64 0, i64 0
%483 = load i32, i32* %9
%484 = call i32 @_mm_storeu_si128(i32* %482, i32 %483)
store i32 0, i32* %41
br label %485
485: ; preds = %500, %476
%486 = load i32, i32* %41
%487 = icmp slt i32 %486, 16
br i1 %487, label %488, label %503
488: ; preds = %485
%489 = load i32, i32* %41
%490 = srem i32 %489, 4
%491 = icmp eq i32 %490, 0
%492 = zext i1 %491 to i64
%493 = select i1 %491, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%494 = load i32, i32* %41
%495 = sub nsw i32 15, %494
%496 = sext i32 %495 to i64
%497 = getelementptr inbounds [16 x i32], [16 x i32]* %40, i64 0, i64 %496
%498 = load i32, i32* %497
%499 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %493, i32 %498)
br label %500
500: ; preds = %488
%501 = load i32, i32* %41
%502 = add nsw i32 %501, 1
store i32 %502, i32* %41
br label %485
503: ; preds = %485
%504 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%505 = load i32, i32* %6
%506 = load i32, i32* %7
%507 = call i32 @_mm_sub_epi64(i32 %505, i32 %506)
store i32 %507, i32* %9
%508 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.21, i64 0, i64 0))
%509 = getelementptr inbounds [16 x i32], [16 x i32]* %42, i64 0, i64 0
%510 = load i32, i32* %9
%511 = call i32 @_mm_storeu_si128(i32* %509, i32 %510)
store i32 0, i32* %43
br label %512
512: ; preds = %527, %503
%513 = load i32, i32* %43
%514 = icmp slt i32 %513, 16
br i1 %514, label %515, label %530
515: ; preds = %512
%516 = load i32, i32* %43
%517 = srem i32 %516, 4
%518 = icmp eq i32 %517, 0
%519 = zext i1 %518 to i64
%520 = select i1 %518, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%521 = load i32, i32* %43
%522 = sub nsw i32 15, %521
%523 = sext i32 %522 to i64
%524 = getelementptr inbounds [16 x i32], [16 x i32]* %42, i64 0, i64 %523
%525 = load i32, i32* %524
%526 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %520, i32 %525)
br label %527
527: ; preds = %515
%528 = load i32, i32* %43
%529 = add nsw i32 %528, 1
store i32 %529, i32* %43
br label %512
530: ; preds = %512
%531 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%532 = call i32 @_mm_set_epi8(i32 15, i32 14, i32 13, i32 12, i32 11, i32 10, i32 9, i32 8, i32 7, i32 6, i32 5, i32 4, i32 3, i32 2, i32 1, i32 0)
store i32 %532, i32* %9
%533 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.22, i64 0, i64 0))
%534 = getelementptr inbounds [16 x i32], [16 x i32]* %44, i64 0, i64 0
%535 = load i32, i32* %9
%536 = call i32 @_mm_storeu_si128(i32* %534, i32 %535)
store i32 0, i32* %45
br label %537
537: ; preds = %552, %530
%538 = load i32, i32* %45
%539 = icmp slt i32 %538, 16
br i1 %539, label %540, label %555
540: ; preds = %537
%541 = load i32, i32* %45
%542 = srem i32 %541, 4
%543 = icmp eq i32 %542, 0
%544 = zext i1 %543 to i64
%545 = select i1 %543, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%546 = load i32, i32* %45
%547 = sub nsw i32 15, %546
%548 = sext i32 %547 to i64
%549 = getelementptr inbounds [16 x i32], [16 x i32]* %44, i64 0, i64 %548
%550 = load i32, i32* %549
%551 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %545, i32 %550)
br label %552
552: ; preds = %540
%553 = load i32, i32* %45
%554 = add nsw i32 %553, 1
store i32 %554, i32* %45
br label %537
555: ; preds = %537
%556 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%557 = call i32 @_mm_set_epi32(i32 305419896, i32 -1698898192, i32 305419896, i32 -1698898192)
store i32 %557, i32* %9
%558 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.23, i64 0, i64 0))
%559 = getelementptr inbounds [16 x i32], [16 x i32]* %46, i64 0, i64 0
%560 = load i32, i32* %9
%561 = call i32 @_mm_storeu_si128(i32* %559, i32 %560)
store i32 0, i32* %47
br label %562
562: ; preds = %577, %555
%563 = load i32, i32* %47
%564 = icmp slt i32 %563, 16
br i1 %564, label %565, label %580
565: ; preds = %562
%566 = load i32, i32* %47
%567 = srem i32 %566, 4
%568 = icmp eq i32 %567, 0
%569 = zext i1 %568 to i64
%570 = select i1 %568, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%571 = load i32, i32* %47
%572 = sub nsw i32 15, %571
%573 = sext i32 %572 to i64
%574 = getelementptr inbounds [16 x i32], [16 x i32]* %46, i64 0, i64 %573
%575 = load i32, i32* %574
%576 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %570, i32 %575)
br label %577
577: ; preds = %565
%578 = load i32, i32* %47
%579 = add nsw i32 %578, 1
store i32 %579, i32* %47
br label %562
580: ; preds = %562
%581 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%582 = call i32 @_mm_set1_epi64x(i32 -252645136)
store i32 %582, i32* %9
%583 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.24, i64 0, i64 0))
%584 = getelementptr inbounds [16 x i32], [16 x i32]* %48, i64 0, i64 0
%585 = load i32, i32* %9
%586 = call i32 @_mm_storeu_si128(i32* %584, i32 %585)
store i32 0, i32* %49
br label %587
587: ; preds = %602, %580
%588 = load i32, i32* %49
%589 = icmp slt i32 %588, 16
br i1 %589, label %590, label %605
590: ; preds = %587
%591 = load i32, i32* %49
%592 = srem i32 %591, 4
%593 = icmp eq i32 %592, 0
%594 = zext i1 %593 to i64
%595 = select i1 %593, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%596 = load i32, i32* %49
%597 = sub nsw i32 15, %596
%598 = sext i32 %597 to i64
%599 = getelementptr inbounds [16 x i32], [16 x i32]* %48, i64 0, i64 %598
%600 = load i32, i32* %599
%601 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %595, i32 %600)
br label %602
602: ; preds = %590
%603 = load i32, i32* %49
%604 = add nsw i32 %603, 1
store i32 %604, i32* %49
br label %587
605: ; preds = %587
%606 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%607 = call i32 @_mm_set1_epi32(i32 -488447262)
store i32 %607, i32* %9
%608 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.25, i64 0, i64 0))
%609 = getelementptr inbounds [16 x i32], [16 x i32]* %50, i64 0, i64 0
%610 = load i32, i32* %9
%611 = call i32 @_mm_storeu_si128(i32* %609, i32 %610)
store i32 0, i32* %51
br label %612
612: ; preds = %627, %605
%613 = load i32, i32* %51
%614 = icmp slt i32 %613, 16
br i1 %614, label %615, label %630
615: ; preds = %612
%616 = load i32, i32* %51
%617 = srem i32 %616, 4
%618 = icmp eq i32 %617, 0
%619 = zext i1 %618 to i64
%620 = select i1 %618, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%621 = load i32, i32* %51
%622 = sub nsw i32 15, %621
%623 = sext i32 %622 to i64
%624 = getelementptr inbounds [16 x i32], [16 x i32]* %50, i64 0, i64 %623
%625 = load i32, i32* %624
%626 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %620, i32 %625)
br label %627
627: ; preds = %615
%628 = load i32, i32* %51
%629 = add nsw i32 %628, 1
store i32 %629, i32* %51
br label %612
630: ; preds = %612
%631 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%632 = call i32 @_mm_set1_epi16(i32 45043)
store i32 %632, i32* %9
%633 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.26, i64 0, i64 0))
%634 = getelementptr inbounds [16 x i32], [16 x i32]* %52, i64 0, i64 0
%635 = load i32, i32* %9
%636 = call i32 @_mm_storeu_si128(i32* %634, i32 %635)
store i32 0, i32* %53
br label %637
637: ; preds = %652, %630
%638 = load i32, i32* %53
%639 = icmp slt i32 %638, 16
br i1 %639, label %640, label %655
640: ; preds = %637
%641 = load i32, i32* %53
%642 = srem i32 %641, 4
%643 = icmp eq i32 %642, 0
%644 = zext i1 %643 to i64
%645 = select i1 %643, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%646 = load i32, i32* %53
%647 = sub nsw i32 15, %646
%648 = sext i32 %647 to i64
%649 = getelementptr inbounds [16 x i32], [16 x i32]* %52, i64 0, i64 %648
%650 = load i32, i32* %649
%651 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %645, i32 %650)
br label %652
652: ; preds = %640
%653 = load i32, i32* %53
%654 = add nsw i32 %653, 1
store i32 %654, i32* %53
br label %637
655: ; preds = %637
%656 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%657 = call i32 @_mm_set1_epi8(i32 197)
store i32 %657, i32* %9
%658 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.27, i64 0, i64 0))
%659 = getelementptr inbounds [16 x i32], [16 x i32]* %54, i64 0, i64 0
%660 = load i32, i32* %9
%661 = call i32 @_mm_storeu_si128(i32* %659, i32 %660)
store i32 0, i32* %55
br label %662
662: ; preds = %677, %655
%663 = load i32, i32* %55
%664 = icmp slt i32 %663, 16
br i1 %664, label %665, label %680
665: ; preds = %662
%666 = load i32, i32* %55
%667 = srem i32 %666, 4
%668 = icmp eq i32 %667, 0
%669 = zext i1 %668 to i64
%670 = select i1 %668, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%671 = load i32, i32* %55
%672 = sub nsw i32 15, %671
%673 = sext i32 %672 to i64
%674 = getelementptr inbounds [16 x i32], [16 x i32]* %54, i64 0, i64 %673
%675 = load i32, i32* %674
%676 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %670, i32 %675)
br label %677
677: ; preds = %665
%678 = load i32, i32* %55
%679 = add nsw i32 %678, 1
store i32 %679, i32* %55
br label %662
680: ; preds = %662
%681 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%682 = load i32, i32* %9
%683 = load i32, i32* %9
%684 = call i32 @_mm_packus_epi16(i32 %682, i32 %683)
store i32 %684, i32* %9
%685 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.28, i64 0, i64 0))
%686 = getelementptr inbounds [16 x i32], [16 x i32]* %56, i64 0, i64 0
%687 = load i32, i32* %9
%688 = call i32 @_mm_storeu_si128(i32* %686, i32 %687)
store i32 0, i32* %57
br label %689
689: ; preds = %704, %680
%690 = load i32, i32* %57
%691 = icmp slt i32 %690, 16
br i1 %691, label %692, label %707
692: ; preds = %689
%693 = load i32, i32* %57
%694 = srem i32 %693, 4
%695 = icmp eq i32 %694, 0
%696 = zext i1 %695 to i64
%697 = select i1 %695, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%698 = load i32, i32* %57
%699 = sub nsw i32 15, %698
%700 = sext i32 %699 to i64
%701 = getelementptr inbounds [16 x i32], [16 x i32]* %56, i64 0, i64 %700
%702 = load i32, i32* %701
%703 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %697, i32 %702)
br label %704
704: ; preds = %692
%705 = load i32, i32* %57
%706 = add nsw i32 %705, 1
store i32 %706, i32* %57
br label %689
707: ; preds = %689
%708 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%709 = load i32, i32* %6
%710 = load i32, i32* %9
%711 = call i32 @_mm_unpackhi_epi8(i32 %709, i32 %710)
store i32 %711, i32* %8
%712 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.29, i64 0, i64 0))
%713 = getelementptr inbounds [16 x i32], [16 x i32]* %58, i64 0, i64 0
%714 = load i32, i32* %8
%715 = call i32 @_mm_storeu_si128(i32* %713, i32 %714)
store i32 0, i32* %59
br label %716
716: ; preds = %731, %707
%717 = load i32, i32* %59
%718 = icmp slt i32 %717, 16
br i1 %718, label %719, label %734
719: ; preds = %716
%720 = load i32, i32* %59
%721 = srem i32 %720, 4
%722 = icmp eq i32 %721, 0
%723 = zext i1 %722 to i64
%724 = select i1 %722, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%725 = load i32, i32* %59
%726 = sub nsw i32 15, %725
%727 = sext i32 %726 to i64
%728 = getelementptr inbounds [16 x i32], [16 x i32]* %58, i64 0, i64 %727
%729 = load i32, i32* %728
%730 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %724, i32 %729)
br label %731
731: ; preds = %719
%732 = load i32, i32* %59
%733 = add nsw i32 %732, 1
store i32 %733, i32* %59
br label %716
734: ; preds = %716
%735 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%736 = load i32, i32* %8
%737 = load i32, i32* %6
%738 = call i32 @_mm_unpacklo_epi8(i32 %736, i32 %737)
store i32 %738, i32* %7
%739 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.30, i64 0, i64 0))
%740 = getelementptr inbounds [16 x i32], [16 x i32]* %60, i64 0, i64 0
%741 = load i32, i32* %7
%742 = call i32 @_mm_storeu_si128(i32* %740, i32 %741)
store i32 0, i32* %61
br label %743
743: ; preds = %758, %734
%744 = load i32, i32* %61
%745 = icmp slt i32 %744, 16
br i1 %745, label %746, label %761
746: ; preds = %743
%747 = load i32, i32* %61
%748 = srem i32 %747, 4
%749 = icmp eq i32 %748, 0
%750 = zext i1 %749 to i64
%751 = select i1 %749, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%752 = load i32, i32* %61
%753 = sub nsw i32 15, %752
%754 = sext i32 %753 to i64
%755 = getelementptr inbounds [16 x i32], [16 x i32]* %60, i64 0, i64 %754
%756 = load i32, i32* %755
%757 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %751, i32 %756)
br label %758
758: ; preds = %746
%759 = load i32, i32* %61
%760 = add nsw i32 %759, 1
store i32 %760, i32* %61
br label %743
761: ; preds = %743
%762 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%763 = load i32, i32* %9
%764 = load i32, i32* %7
%765 = call i32 @_mm_and_si128(i32 %763, i32 %764)
store i32 %765, i32* %9
%766 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.31, i64 0, i64 0))
%767 = getelementptr inbounds [16 x i32], [16 x i32]* %62, i64 0, i64 0
%768 = load i32, i32* %9
%769 = call i32 @_mm_storeu_si128(i32* %767, i32 %768)
store i32 0, i32* %63
br label %770
770: ; preds = %785, %761
%771 = load i32, i32* %63
%772 = icmp slt i32 %771, 16
br i1 %772, label %773, label %788
773: ; preds = %770
%774 = load i32, i32* %63
%775 = srem i32 %774, 4
%776 = icmp eq i32 %775, 0
%777 = zext i1 %776 to i64
%778 = select i1 %776, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%779 = load i32, i32* %63
%780 = sub nsw i32 15, %779
%781 = sext i32 %780 to i64
%782 = getelementptr inbounds [16 x i32], [16 x i32]* %62, i64 0, i64 %781
%783 = load i32, i32* %782
%784 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %778, i32 %783)
br label %785
785: ; preds = %773
%786 = load i32, i32* %63
%787 = add nsw i32 %786, 1
store i32 %787, i32* %63
br label %770
788: ; preds = %770
%789 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%790 = load i32*, i32** %4
%791 = load i32, i32* %6
%792 = call i32 @_mm_store_si128(i32* %790, i32 %791)
%793 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.32, i64 0, i64 0))
store i32 0, i32* %5
br label %794
794: ; preds = %804, %788
%795 = load i32, i32* %5
%796 = icmp slt i32 %795, 16
br i1 %796, label %797, label %807
797: ; preds = %794
%798 = load i32*, i32** %4
%799 = load i32, i32* %5
%800 = sext i32 %799 to i64
%801 = getelementptr inbounds i32, i32* %798, i64 %800
%802 = load i32, i32* %801
%803 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.33, i64 0, i64 0), i32 %802)
br label %804
804: ; preds = %797
%805 = load i32, i32* %5
%806 = add nsw i32 %805, 1
store i32 %806, i32* %5
br label %794
807: ; preds = %794
%808 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%809 = call i32 (...) @_mm_setzero_si128()
store i32 %809, i32* %9
%810 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.34, i64 0, i64 0))
%811 = getelementptr inbounds [16 x i32], [16 x i32]* %64, i64 0, i64 0
%812 = load i32, i32* %9
%813 = call i32 @_mm_storeu_si128(i32* %811, i32 %812)
store i32 0, i32* %65
br label %814
814: ; preds = %829, %807
%815 = load i32, i32* %65
%816 = icmp slt i32 %815, 16
br i1 %816, label %817, label %832
817: ; preds = %814
%818 = load i32, i32* %65
%819 = srem i32 %818, 4
%820 = icmp eq i32 %819, 0
%821 = zext i1 %820 to i64
%822 = select i1 %820, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%823 = load i32, i32* %65
%824 = sub nsw i32 15, %823
%825 = sext i32 %824 to i64
%826 = getelementptr inbounds [16 x i32], [16 x i32]* %64, i64 0, i64 %825
%827 = load i32, i32* %826
%828 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %822, i32 %827)
br label %829
829: ; preds = %817
%830 = load i32, i32* %65
%831 = add nsw i32 %830, 1
store i32 %831, i32* %65
br label %814
832: ; preds = %814
%833 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
store i32 -1412623820, i32* %2
store i32 -1853721756, i32* %3
%834 = call i32 @_mm_set1_epi8(i32 5)
store i32 %834, i32* %8
%835 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.7, i64 0, i64 0))
%836 = getelementptr inbounds [16 x i32], [16 x i32]* %66, i64 0, i64 0
%837 = load i32, i32* %8
%838 = call i32 @_mm_storeu_si128(i32* %836, i32 %837)
store i32 0, i32* %67
br label %839
839: ; preds = %854, %832
%840 = load i32, i32* %67
%841 = icmp slt i32 %840, 16
br i1 %841, label %842, label %857
842: ; preds = %839
%843 = load i32, i32* %67
%844 = srem i32 %843, 4
%845 = icmp eq i32 %844, 0
%846 = zext i1 %845 to i64
%847 = select i1 %845, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0)
%848 = load i32, i32* %67
%849 = sub nsw i32 15, %848
%850 = sext i32 %849 to i64
%851 = getelementptr inbounds [16 x i32], [16 x i32]* %66, i64 0, i64 %850
%852 = load i32, i32* %851
%853 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* %847, i32 %852)
br label %854
854: ; preds = %842
%855 = load i32, i32* %67
%856 = add nsw i32 %855, 1
store i32 %856, i32* %67
br label %839
857: ; preds = %839
%858 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.5, i64 0, i64 0))
%859 = load i32, i32* %1
ret i32 %859
}

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