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

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
scalar_t__ floor(int /*<<< orphan*/);
int /*<<< orphan*/ log10(unsigned long long);
scalar_t__ pow(int, int);
int /*<<< orphan*/ printf(char *, unsigned long long);
int main() {
  unsigned long long large_numbers[100][(50 / 10)] = {
      {3710728753, 3902102798, 7979982208, 3759024651, 135740250},
      {4637693767, 7490009712, 6481248969, 7007805041, 7018260538},
      {7432498619, 9524741059, 4742333095, 1305812372, 6617309629},
      {9194221336, 3574161572, 5224305633, 181107240, 6154908250},
      {2306758820, 7539346171, 1719803104, 2104751377, 8063246676},
      {8926167069, 6623633820, 1363784183, 8368417873, 4361726757},
      {2811287981, 2849979408, 654819315, 9262169127, 5889832738},
      {4427422891, 7432520321, 9235894228, 7679648767, 272189318},
      {4745144573, 6001306439, 911672168, 5684458871, 1603153276},
      {7038648610, 5843025439, 9396198289, 1759366568, 6757934951},
      {6217645714, 1856560629, 5021572231, 9658675507, 9324193331},
      {6490635246, 2741904929, 1014324458, 1382266334, 7944758178},
      {9257586771, 8337217661, 9637515905, 7923972824, 5598838407},
      {5820356532, 5359399008, 4026335689, 4883018945, 8628227828},
      {8018119938, 4826282014, 2781941399, 4056758715, 1170094390},
      {3539866437, 2827112653, 8299872407, 8447305319, 104293586},
      {8651550600, 6295864861, 5320752733, 7195919142, 517255829},
      {7169388870, 7715466499, 1155934876, 353292171, 4970056938},
      {5437007057, 6826684624, 6214956500, 7647178729, 4438377604},
      {5328265410, 8756828443, 1911906346, 9403785521, 7779295145},
      {3612327252, 5000296071, 750825638, 1565671088, 5258350721},
      {4587657617, 2410976447, 3391106072, 1826523687, 7223636045},
      {1742370690, 5851860660, 4482076212, 981328786, 733969412},
      {8114266041, 8086830619, 3284608111, 9106155694, 512689692},
      {5193432545, 1728388641, 9180470492, 9321505864, 2563049483},
      {6246722164, 8435076201, 7279180399, 4469300473, 2956340691},
      {1573244438, 6908125794, 5140890577, 622942919, 7107928209},
      {5503768752, 5678773091, 8625407449, 6984450833, 393682126},
      {1833638482, 5330154686, 1961243487, 6768129753, 4375946515},
      {8038628759, 2878490201, 5216855548, 2871720121, 9257766954},
      {7818283375, 7993103614, 7403568564, 4909552709, 7864797581},
      {1672632010, 436897842, 5535399209, 3183744149, 7806860984},
      {4840309812, 9077791799, 882187953, 2736447567, 5590848030},
      {8708698755, 1392711854, 5170785441, 6185242432, 693150332},
      {5995940689, 5756536782, 1070749269, 6653767632, 6235447210},
      {6979395067, 9652694742, 5977097391, 6669376304, 2633987085},
      {4105268470, 8299085211, 3994273657, 3411618276, 315001271},
      {6537860736, 1501080857, 91499395, 1255702819, 8746004375},
      {3582903531, 7434717326, 9321235781, 5498262974, 2552737307},
      {9495375976, 5105305946, 9660676831, 5657437716, 7401875275},
      {8890280257, 1733229619, 1766687138, 1993181104, 8770190271},
      {2526768027, 6078003013, 6786809925, 2546340106, 1632866526},
      {3627021854, 497705585, 6299465806, 3623799314, 746255962},
      {2407448690, 8231174977, 7923654662, 5724692332, 2810917141},
      {9143028819, 7103288597, 8066697608, 9293863828, 5025333403},
      {3441306557, 8016127815, 9218150055, 6186883646, 8420090470},
      {2305308117, 2816430487, 6237919698, 4248725503, 6638784583},
      {1148769693, 2154902810, 4240201383, 3512446218, 1441773470},
      {6378329949, 636259666, 4985876182, 2122522551, 2486764533},
      {6772018697, 1698544312, 4195724099, 1395900895, 2310058822},
      {9554825530, 263520781, 5322967962, 4948164195, 3868218774},
      {7608532713, 2285723110, 4248034561, 2486769706, 4507995236},
      {3777424253, 5411291684, 2768655389, 2620502491, 326572967},
      {2370191327, 5725675285, 6532482582, 6546309220, 7058596522},
      {2979886027, 2258331913, 1263751473, 4199488953, 4765745501},
      {1849570145, 4879288984, 8568277260, 7771372140, 3798879715},
      {3829820378, 3031473527, 7215803481, 4451349137, 3226651381},
      {3482954382, 9199918180, 2789165224, 3102739225, 1122869539},
      {4095795306, 6405232632, 5380441000, 5965493915, 9879593635},
      {2974615218, 5502371307, 6422551211, 8369380358, 388584903},
      {4169811622, 2072977186, 1582366784, 2468915799, 3532961922},
      {6246795719, 4401269043, 8771072750, 4810239089, 5523597457},
      {2318970677, 2547915061, 5055049539, 2297953090, 1129967519},
      {8618808822, 5875314529, 5840992512, 382900940, 7770775672},
      {1130673970, 8304724483, 8165338735, 234084564, 7058077308},
      {8295917476, 7140363198, 81871290, 1187549131, 547126581},
      {9762333104, 4818386269, 5154563349, 2636657289, 7563400500},
      {4284628018, 3517070527, 8318394258, 8214552122, 7251250327},
      {5512160354, 6981200581, 7621652128, 2765275169, 1296897789},
      {3223819573, 4329339946, 4375019078, 3694576588, 3352399886},
      {7550616496, 5184775180, 7381688378, 6109152735, 7929701337},
      {6217784275, 2192623401, 9423996391, 6804498399, 3173312731},
      {3292418570, 7147349566, 9166746876, 3466091503, 5914677504},
      {9951867143, 235219628, 8948901024, 2332511691, 3619626622},
      {7326746080, 591547471, 8307983928, 6853520694, 6944540724},
      {7684182252, 4674417161, 5140364279, 8227334805, 5556214818},
      {9714261791, 342598647, 2045168939, 8942217982, 6088076852},
      {8778364618, 2799346313, 7677543078, 936333301, 8982642090},
      {1084880252, 1674670883, 2151201858, 8354322381, 2876952786},
      {7132961247, 4782464538, 6369930090, 4931036361, 9763878039},
      {6218407357, 2399794223, 4062353938, 833965132, 7408011116},
      {6662789198, 1488087797, 9418768761, 4423003098, 4490851411},
      {6066182629, 3682836764, 7447792391, 8033511098, 9069790714},
      {8578694408, 9552990653, 6404474255, 7608365997, 6645795096},
      {6602439640, 9905389607, 1201982199, 7604759949, 197230297},
      {6491398268, 32973156, 371200413, 7790378556, 6085089252},
      {1673093931, 9872750275, 4689069037, 753941304, 2652315011},
      {9480937724, 5048795150, 9541009216, 4586375471, 598436791},
      {7863916702, 1187492431, 9957006419, 1796977759, 9028300699},
      {1536871371, 1936614952, 8113058763, 8027841075, 4449733078},
      {4078992311, 5535562561, 1423224232, 5503368544, 2488917353},
      {4488991150, 1440648020, 3690680639, 6067232219, 3204149535},
      {4150312888, 339536053, 2993403680, 697771065, 566631954},
      {8123488067, 3210146739, 585685579, 3458140362, 7822703280},
      {8261657077, 3948327592, 2328459417, 652509451, 2325230608},
      {2291880205, 8777319719, 8394501808, 8807242966, 1980811197},
      {7715854250, 2016545090, 4132458097, 8688277894, 8721859617},
      {7210783843, 5069186155, 4356628840, 6225747369, 2284509516},
      {2084960398, 134001723, 9306716668, 2355524525, 2804609722},
      {5350353422, 6472524250, 8740540755, 9178978126, 4330331690}};
  int remainder = 0, num_digits;
  unsigned long long sum[10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
  unsigned long long tenth_power = (unsigned long long)pow(10, 10);
  for (int j = (50 / 10) - 1; j >= 0; j--) {
    for (int i = 0; i < 100; i++) {
      sum[j] += large_numbers[i][j];
    }
    sum[j] += remainder;
    num_digits = (int)floor(log10(sum[j])) + 1;
    if (j > 0 && num_digits > 10) {
      remainder = (int)(sum[j] / tenth_power);
      sum[j] -= remainder * tenth_power;
    }
  }
  for (int i = 0; i < 5; i++) {
    printf("%010llu ", sum[i]);
  }
  return 0;
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
sub    $0x1030,%rsp
movl   $0x0,-0x4(%rbp)
lea    -0xfb0(%rbp),%rdi
lea    0xe80(%rip),%rsi
mov    $0xfa0,%edx
call   1050 <memcpy@plt>
movl   $0x0,-0xfb4(%rbp)
lea    -0x1010(%rbp),%rdi
xor    %esi,%esi
mov    $0x50,%edx
call   1040 <memset@plt>
mov    $0xa,%esi
mov    %esi,%edi
call   1060 <pow@plt>
mov    %rax,-0x1018(%rbp)
movl   $0x4,-0x101c(%rbp)
cmpl   $0x0,-0x101c(%rbp)
jl     12f1 <main+0x191>
movl   $0x0,-0x1020(%rbp)
cmpl   $0x64,-0x1020(%rbp)
jge    1233 <main+0xd3>
movslq -0x1020(%rbp),%rcx
lea    -0xfb0(%rbp),%rax
imul   $0x28,%rcx,%rcx
add    %rcx,%rax
movslq -0x101c(%rbp),%rcx
mov    (%rax,%rcx,8),%rcx
movslq -0x101c(%rbp),%rax
add    -0x1010(%rbp,%rax,8),%rcx
ff
mov    %rcx,-0x1010(%rbp,%rax,8)
ff
mov    -0x1020(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1020(%rbp)
jmp    11db <main+0x7b>
movslq -0xfb4(%rbp),%rcx
movslq -0x101c(%rbp),%rax
add    -0x1010(%rbp,%rax,8),%rcx
ff
mov    %rcx,-0x1010(%rbp,%rax,8)
ff
movslq -0x101c(%rbp),%rax
mov    -0x1010(%rbp,%rax,8),%rdi
ff
call   1070 <log10@plt>
mov    %eax,%edi
call   1080 <floor@plt>
add    $0x1,%eax
mov    %eax,-0xfb8(%rbp)
cmpl   $0x0,-0x101c(%rbp)
jle    12d8 <main+0x178>
cmpl   $0xa,-0xfb8(%rbp)
jle    12d8 <main+0x178>
movslq -0x101c(%rbp),%rax
mov    -0x1010(%rbp,%rax,8),%rax
ff
xor    %ecx,%ecx
mov    %ecx,%edx
divq   -0x1018(%rbp)
mov    %eax,-0xfb4(%rbp)
movslq -0xfb4(%rbp),%rdx
imul   -0x1018(%rbp),%rdx
ff
movslq -0x101c(%rbp),%rax
mov    -0x1010(%rbp,%rax,8),%rcx
ff
sub    %rdx,%rcx
mov    %rcx,-0x1010(%rbp,%rax,8)
ff
jmp    12dd <main+0x17d>
mov    -0x101c(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x101c(%rbp)
jmp    11c4 <main+0x64>
movl   $0x0,-0x1024(%rbp)
cmpl   $0x5,-0x1024(%rbp)
jge    1337 <main+0x1d7>
movslq -0x1024(%rbp),%rax
mov    -0x1010(%rbp,%rax,8),%rsi
ff
lea    0x1c82(%rip),%rdi
call   1030 <printf@plt>
mov    -0x1024(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1024(%rbp)
jmp    12fb <main+0x19b>
xor    %eax,%eax
add    $0x1030,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<main>:
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x50,%rsp
xorps  %xmm0,%xmm0
movaps %xmm0,0x40(%rsp)
movaps %xmm0,0x30(%rsp)
movaps %xmm0,0x20(%rsp)
movaps %xmm0,0x10(%rsp)
movaps %xmm0,(%rsp)
mov    $0xa,%edi
mov    $0xa,%esi
call   1040 <pow@plt>
mov    %rax,%r14
xor    %ebx,%ebx
mov    $0x4,%r12d
lea    0xf37(%rip),%r13
xor    %r15d,%r15d
nopl   0x0(%rax)
xor    %eax,%eax
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
add    -0xa0(%r13,%rax,1),%rbx
ff
add    -0x78(%r13,%rax,1),%rbx
add    -0x50(%r13,%rax,1),%rbx
add    -0x28(%r13,%rax,1),%rbx
add    0x0(%r13,%rax,1),%rbx
add    $0xc8,%rax
cmp    $0xfa0,%rax
jne    11a0 <main+0x60>
movslq %r15d,%rax
add    %rax,%rbx
mov    %rbx,(%rsp,%r12,8)
mov    %rbx,%rdi
call   1050 <log10@plt>
mov    %eax,%edi
call   1060 <floor@plt>
test   %r12,%r12
je     121e <main+0xde>
cmp    $0x9,%eax
jle    121e <main+0xde>
mov    %rbx,%rax
or     %r14,%rax
shr    $0x20,%rax
je     1206 <main+0xc6>
mov    %rbx,%rax
xor    %edx,%edx
div    %r14
mov    %rax,%r15
jmp    1210 <main+0xd0>
mov    %ebx,%eax
xor    %edx,%edx
div    %r14d
mov    %eax,%r15d
movslq %r15d,%rax
imul   %r14,%rax
sub    %rax,%rbx
mov    %rbx,(%rsp,%r12,8)
add    $0xffffffffffffffff,%r12
jae    1231 <main+0xf1>
mov    (%rsp,%r12,8),%rbx
add    $0xfffffffffffffff8,%r13
jmp    1190 <main+0x50>
mov    (%rsp),%rsi
lea    0x1d64(%rip),%rbx
mov    %rbx,%rdi
call   1030 <printf@plt>
mov    0x8(%rsp),%rsi
mov    %rbx,%rdi
call   1030 <printf@plt>
mov    0x10(%rsp),%rsi
mov    %rbx,%rdi
call   1030 <printf@plt>
mov    0x18(%rsp),%rsi
mov    %rbx,%rdi
call   1030 <printf@plt>
mov    0x20(%rsp),%rsi
mov    %rbx,%rdi
call   1030 <printf@plt>
xor    %eax,%eax
add    $0x50,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
ret

LLVM IR (-O0):
@__const.main.large_numbers = [100 x [5 x i64]] [[5 x i64] [i64 3710728753, i64 3902102798, i64 7979982208, i64 3759024651, i64 135740250], [5 x i64] [i64 4637693767, i64 7490009712, i64 6481248969, i64 7007805041, i64 7018260538], [5 x i64] [i64 7432498619, i64 9524741059, i64 4742333095, i64 1305812372, i64 6617309629], [5 x i64] [i64 9194221336, i64 3574161572, i64 5224305633, i64 181107240, i64 6154908250], [5 x i64] [i64 2306758820, i64 7539346171, i64 1719803104, i64 2104751377, i64 8063246676], [5 x i64] [i64 8926167069, i64 6623633820, i64 1363784183, i64 8368417873, i64 4361726757], [5 x i64] [i64 2811287981, i64 2849979408, i64 654819315, i64 9262169127, i64 5889832738], [5 x i64] [i64 4427422891, i64 7432520321, i64 9235894228, i64 7679648767, i64 272189318], [5 x i64] [i64 4745144573, i64 6001306439, i64 911672168, i64 5684458871, i64 1603153276], [5 x i64] [i64 7038648610, i64 5843025439, i64 9396198289, i64 1759366568, i64 6757934951], [5 x i64] [i64 6217645714, i64 1856560629, i64 5021572231, i64 9658675507, i64 9324193331], [5 x i64] [i64 6490635246, i64 2741904929, i64 1014324458, i64 1382266334, i64 7944758178], [5 x i64] [i64 9257586771, i64 8337217661, i64 9637515905, i64 7923972824, i64 5598838407], [5 x i64] [i64 5820356532, i64 5359399008, i64 4026335689, i64 4883018945, i64 8628227828], [5 x i64] [i64 8018119938, i64 4826282014, i64 2781941399, i64 4056758715, i64 1170094390], [5 x i64] [i64 3539866437, i64 2827112653, i64 8299872407, i64 8447305319, i64 104293586], [5 x i64] [i64 8651550600, i64 6295864861, i64 5320752733, i64 7195919142, i64 517255829], [5 x i64] [i64 7169388870, i64 7715466499, i64 1155934876, i64 353292171, i64 4970056938], [5 x i64] [i64 5437007057, i64 6826684624, i64 6214956500, i64 7647178729, i64 4438377604], [5 x i64] [i64 5328265410, i64 8756828443, i64 1911906346, i64 9403785521, i64 7779295145], [5 x i64] [i64 3612327252, i64 5000296071, i64 750825638, i64 1565671088, i64 5258350721], [5 x i64] [i64 4587657617, i64 2410976447, i64 3391106072, i64 1826523687, i64 7223636045], [5 x i64] [i64 1742370690, i64 5851860660, i64 4482076212, i64 981328786, i64 733969412], [5 x i64] [i64 8114266041, i64 8086830619, i64 3284608111, i64 9106155694, i64 512689692], [5 x i64] [i64 5193432545, i64 1728388641, i64 9180470492, i64 9321505864, i64 2563049483], [5 x i64] [i64 6246722164, i64 8435076201, i64 7279180399, i64 4469300473, i64 2956340691], [5 x i64] [i64 1573244438, i64 6908125794, i64 5140890577, i64 622942919, i64 7107928209], [5 x i64] [i64 5503768752, i64 5678773091, i64 8625407449, i64 6984450833, i64 393682126], [5 x i64] [i64 1833638482, i64 5330154686, i64 1961243487, i64 6768129753, i64 4375946515], [5 x i64] [i64 8038628759, i64 2878490201, i64 5216855548, i64 2871720121, i64 9257766954], [5 x i64] [i64 7818283375, i64 7993103614, i64 7403568564, i64 4909552709, i64 7864797581], [5 x i64] [i64 1672632010, i64 436897842, i64 5535399209, i64 3183744149, i64 7806860984], [5 x i64] [i64 4840309812, i64 9077791799, i64 882187953, i64 2736447567, i64 5590848030], [5 x i64] [i64 8708698755, i64 1392711854, i64 5170785441, i64 6185242432, i64 693150332], [5 x i64] [i64 5995940689, i64 5756536782, i64 1070749269, i64 6653767632, i64 6235447210], [5 x i64] [i64 6979395067, i64 9652694742, i64 5977097391, i64 6669376304, i64 2633987085], [5 x i64] [i64 4105268470, i64 8299085211, i64 3994273657, i64 3411618276, i64 315001271], [5 x i64] [i64 6537860736, i64 1501080857, i64 91499395, i64 1255702819, i64 8746004375], [5 x i64] [i64 3582903531, i64 7434717326, i64 9321235781, i64 5498262974, i64 2552737307], [5 x i64] [i64 9495375976, i64 5105305946, i64 9660676831, i64 5657437716, i64 7401875275], [5 x i64] [i64 8890280257, i64 1733229619, i64 1766687138, i64 1993181104, i64 8770190271], [5 x i64] [i64 2526768027, i64 6078003013, i64 6786809925, i64 2546340106, i64 1632866526], [5 x i64] [i64 3627021854, i64 497705585, i64 6299465806, i64 3623799314, i64 746255962], [5 x i64] [i64 2407448690, i64 8231174977, i64 7923654662, i64 5724692332, i64 2810917141], [5 x i64] [i64 9143028819, i64 7103288597, i64 8066697608, i64 9293863828, i64 5025333403], [5 x i64] [i64 3441306557, i64 8016127815, i64 9218150055, i64 6186883646, i64 8420090470], [5 x i64] [i64 2305308117, i64 2816430487, i64 6237919698, i64 4248725503, i64 6638784583], [5 x i64] [i64 1148769693, i64 2154902810, i64 4240201383, i64 3512446218, i64 1441773470], [5 x i64] [i64 6378329949, i64 636259666, i64 4985876182, i64 2122522551, i64 2486764533], [5 x i64] [i64 6772018697, i64 1698544312, i64 4195724099, i64 1395900895, i64 2310058822], [5 x i64] [i64 9554825530, i64 263520781, i64 5322967962, i64 4948164195, i64 3868218774], [5 x i64] [i64 7608532713, i64 2285723110, i64 4248034561, i64 2486769706, i64 4507995236], [5 x i64] [i64 3777424253, i64 5411291684, i64 2768655389, i64 2620502491, i64 326572967], [5 x i64] [i64 2370191327, i64 5725675285, i64 6532482582, i64 6546309220, i64 7058596522], [5 x i64] [i64 2979886027, i64 2258331913, i64 1263751473, i64 4199488953, i64 4765745501], [5 x i64] [i64 1849570145, i64 4879288984, i64 8568277260, i64 7771372140, i64 3798879715], [5 x i64] [i64 3829820378, i64 3031473527, i64 7215803481, i64 4451349137, i64 3226651381], [5 x i64] [i64 3482954382, i64 9199918180, i64 2789165224, i64 3102739225, i64 1122869539], [5 x i64] [i64 4095795306, i64 6405232632, i64 5380441000, i64 5965493915, i64 9879593635], [5 x i64] [i64 2974615218, i64 5502371307, i64 6422551211, i64 8369380358, i64 388584903], [5 x i64] [i64 4169811622, i64 2072977186, i64 1582366784, i64 2468915799, i64 3532961922], [5 x i64] [i64 6246795719, i64 4401269043, i64 8771072750, i64 4810239089, i64 5523597457], [5 x i64] [i64 2318970677, i64 2547915061, i64 5055049539, i64 2297953090, i64 1129967519], [5 x i64] [i64 8618808822, i64 5875314529, i64 5840992512, i64 382900940, i64 7770775672], [5 x i64] [i64 1130673970, i64 8304724483, i64 8165338735, i64 234084564, i64 7058077308], [5 x i64] [i64 8295917476, i64 7140363198, i64 81871290, i64 1187549131, i64 547126581], [5 x i64] [i64 9762333104, i64 4818386269, i64 5154563349, i64 2636657289, i64 7563400500], [5 x i64] [i64 4284628018, i64 3517070527, i64 8318394258, i64 8214552122, i64 7251250327], [5 x i64] [i64 5512160354, i64 6981200581, i64 7621652128, i64 2765275169, i64 1296897789], [5 x i64] [i64 3223819573, i64 4329339946, i64 4375019078, i64 3694576588, i64 3352399886], [5 x i64] [i64 7550616496, i64 5184775180, i64 7381688378, i64 6109152735, i64 7929701337], [5 x i64] [i64 6217784275, i64 2192623401, i64 9423996391, i64 6804498399, i64 3173312731], [5 x i64] [i64 3292418570, i64 7147349566, i64 9166746876, i64 3466091503, i64 5914677504], [5 x i64] [i64 9951867143, i64 235219628, i64 8948901024, i64 2332511691, i64 3619626622], [5 x i64] [i64 7326746080, i64 591547471, i64 8307983928, i64 6853520694, i64 6944540724], [5 x i64] [i64 7684182252, i64 4674417161, i64 5140364279, i64 8227334805, i64 5556214818], [5 x i64] [i64 9714261791, i64 342598647, i64 2045168939, i64 8942217982, i64 6088076852], [5 x i64] [i64 8778364618, i64 2799346313, i64 7677543078, i64 936333301, i64 8982642090], [5 x i64] [i64 1084880252, i64 1674670883, i64 2151201858, i64 8354322381, i64 2876952786], [5 x i64] [i64 7132961247, i64 4782464538, i64 6369930090, i64 4931036361, i64 9763878039], [5 x i64] [i64 6218407357, i64 2399794223, i64 4062353938, i64 833965132, i64 7408011116], [5 x i64] [i64 6662789198, i64 1488087797, i64 9418768761, i64 4423003098, i64 4490851411], [5 x i64] [i64 6066182629, i64 3682836764, i64 7447792391, i64 8033511098, i64 9069790714], [5 x i64] [i64 8578694408, i64 9552990653, i64 6404474255, i64 7608365997, i64 6645795096], [5 x i64] [i64 6602439640, i64 9905389607, i64 1201982199, i64 7604759949, i64 197230297], [5 x i64] [i64 6491398268, i64 32973156, i64 371200413, i64 7790378556, i64 6085089252], [5 x i64] [i64 1673093931, i64 9872750275, i64 4689069037, i64 753941304, i64 2652315011], [5 x i64] [i64 9480937724, i64 5048795150, i64 9541009216, i64 4586375471, i64 598436791], [5 x i64] [i64 7863916702, i64 1187492431, i64 9957006419, i64 1796977759, i64 9028300699], [5 x i64] [i64 1536871371, i64 1936614952, i64 8113058763, i64 8027841075, i64 4449733078], [5 x i64] [i64 4078992311, i64 5535562561, i64 1423224232, i64 5503368544, i64 2488917353], [5 x i64] [i64 4488991150, i64 1440648020, i64 3690680639, i64 6067232219, i64 3204149535], [5 x i64] [i64 4150312888, i64 339536053, i64 2993403680, i64 697771065, i64 566631954], [5 x i64] [i64 8123488067, i64 3210146739, i64 585685579, i64 3458140362, i64 7822703280], [5 x i64] [i64 8261657077, i64 3948327592, i64 2328459417, i64 652509451, i64 2325230608], [5 x i64] [i64 2291880205, i64 8777319719, i64 8394501808, i64 8807242966, i64 1980811197], [5 x i64] [i64 7715854250, i64 2016545090, i64 4132458097, i64 8688277894, i64 8721859617], [5 x i64] [i64 7210783843, i64 5069186155, i64 4356628840, i64 6225747369, i64 2284509516], [5 x i64] [i64 2084960398, i64 134001723, i64 9306716668, i64 2355524525, i64 2804609722], [5 x i64] [i64 5350353422, i64 6472524250, i64 8740540755, i64 9178978126, i64 4330331690]]
@.str = [9 x i8] c"%010llu \00"
define i32 @main() {
%1 = alloca i32
%2 = alloca [100 x [5 x i64]]
%3 = alloca i32
%4 = alloca i32
%5 = alloca [10 x i64]
%6 = alloca i64
%7 = alloca i32
%8 = alloca i32
%9 = alloca i32
store i32 0, i32* %1
%10 = bitcast [100 x [5 x i64]]* %2 to i8*
store i32 0, i32* %3
%11 = bitcast [10 x i64]* %5 to i8*
%12 = call i64 @pow(i32 10, i32 10)
store i64 %12, i64* %6
store i32 4, i32* %7
br label %13
13: ; preds = %75, %0
%14 = load i32, i32* %7
%15 = icmp sge i32 %14, 0
br i1 %15, label %16, label %78
16: ; preds = %13
store i32 0, i32* %8
br label %17
17: ; preds = %33, %16
%18 = load i32, i32* %8
%19 = icmp slt i32 %18, 100
br i1 %19, label %20, label %36
20: ; preds = %17
%21 = load i32, i32* %8
%22 = sext i32 %21 to i64
%23 = getelementptr inbounds [100 x [5 x i64]], [100 x [5 x i64]]* %2, i64 0, i64 %22
%24 = load i32, i32* %7
%25 = sext i32 %24 to i64
%26 = getelementptr inbounds [5 x i64], [5 x i64]* %23, i64 0, i64 %25
%27 = load i64, i64* %26
%28 = load i32, i32* %7
%29 = sext i32 %28 to i64
%30 = getelementptr inbounds [10 x i64], [10 x i64]* %5, i64 0, i64 %29
%31 = load i64, i64* %30
%32 = add i64 %31, %27
store i64 %32, i64* %30
br label %33
33: ; preds = %20
%34 = load i32, i32* %8
%35 = add nsw i32 %34, 1
store i32 %35, i32* %8
br label %17
36: ; preds = %17
%37 = load i32, i32* %3
%38 = sext i32 %37 to i64
%39 = load i32, i32* %7
%40 = sext i32 %39 to i64
%41 = getelementptr inbounds [10 x i64], [10 x i64]* %5, i64 0, i64 %40
%42 = load i64, i64* %41
%43 = add i64 %42, %38
store i64 %43, i64* %41
%44 = load i32, i32* %7
%45 = sext i32 %44 to i64
%46 = getelementptr inbounds [10 x i64], [10 x i64]* %5, i64 0, i64 %45
%47 = load i64, i64* %46
%48 = call i32 @log10(i64 %47)
%49 = call i64 @floor(i32 %48)
%50 = trunc i64 %49 to i32
%51 = add nsw i32 %50, 1
store i32 %51, i32* %4
%52 = load i32, i32* %7
%53 = icmp sgt i32 %52, 0
br i1 %53, label %54, label %74
54: ; preds = %36
%55 = load i32, i32* %4
%56 = icmp sgt i32 %55, 10
br i1 %56, label %57, label %74
57: ; preds = %54
%58 = load i32, i32* %7
%59 = sext i32 %58 to i64
%60 = getelementptr inbounds [10 x i64], [10 x i64]* %5, i64 0, i64 %59
%61 = load i64, i64* %60
%62 = load i64, i64* %6
%63 = udiv i64 %61, %62
%64 = trunc i64 %63 to i32
store i32 %64, i32* %3
%65 = load i32, i32* %3
%66 = sext i32 %65 to i64
%67 = load i64, i64* %6
%68 = mul i64 %66, %67
%69 = load i32, i32* %7
%70 = sext i32 %69 to i64
%71 = getelementptr inbounds [10 x i64], [10 x i64]* %5, i64 0, i64 %70
%72 = load i64, i64* %71
%73 = sub i64 %72, %68
store i64 %73, i64* %71
br label %74
74: ; preds = %57, %54, %36
br label %75
75: ; preds = %74
%76 = load i32, i32* %7
%77 = add nsw i32 %76, -1
store i32 %77, i32* %7
br label %13
78: ; preds = %13
store i32 0, i32* %9
br label %79
79: ; preds = %88, %78
%80 = load i32, i32* %9
%81 = icmp slt i32 %80, 5
br i1 %81, label %82, label %91
82: ; preds = %79
%83 = load i32, i32* %9
%84 = sext i32 %83 to i64
%85 = getelementptr inbounds [10 x i64], [10 x i64]* %5, i64 0, i64 %84
%86 = load i64, i64* %85
%87 = call i32 @printf(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str, i64 0, i64 0), i64 %86)
br label %88
88: ; preds = %82
%89 = load i32, i32* %9
%90 = add nsw i32 %89, 1
store i32 %90, i32* %9
br label %79
91: ; preds = %79
ret i32 0
}

LLVM IR (-O2):
@__const.main.large_numbers = [100 x [5 x i64]] [[5 x i64] [i64 3710728753, i64 3902102798, i64 7979982208, i64 3759024651, i64 135740250], [5 x i64] [i64 4637693767, i64 7490009712, i64 6481248969, i64 7007805041, i64 7018260538], [5 x i64] [i64 7432498619, i64 9524741059, i64 4742333095, i64 1305812372, i64 6617309629], [5 x i64] [i64 9194221336, i64 3574161572, i64 5224305633, i64 181107240, i64 6154908250], [5 x i64] [i64 2306758820, i64 7539346171, i64 1719803104, i64 2104751377, i64 8063246676], [5 x i64] [i64 8926167069, i64 6623633820, i64 1363784183, i64 8368417873, i64 4361726757], [5 x i64] [i64 2811287981, i64 2849979408, i64 654819315, i64 9262169127, i64 5889832738], [5 x i64] [i64 4427422891, i64 7432520321, i64 9235894228, i64 7679648767, i64 272189318], [5 x i64] [i64 4745144573, i64 6001306439, i64 911672168, i64 5684458871, i64 1603153276], [5 x i64] [i64 7038648610, i64 5843025439, i64 9396198289, i64 1759366568, i64 6757934951], [5 x i64] [i64 6217645714, i64 1856560629, i64 5021572231, i64 9658675507, i64 9324193331], [5 x i64] [i64 6490635246, i64 2741904929, i64 1014324458, i64 1382266334, i64 7944758178], [5 x i64] [i64 9257586771, i64 8337217661, i64 9637515905, i64 7923972824, i64 5598838407], [5 x i64] [i64 5820356532, i64 5359399008, i64 4026335689, i64 4883018945, i64 8628227828], [5 x i64] [i64 8018119938, i64 4826282014, i64 2781941399, i64 4056758715, i64 1170094390], [5 x i64] [i64 3539866437, i64 2827112653, i64 8299872407, i64 8447305319, i64 104293586], [5 x i64] [i64 8651550600, i64 6295864861, i64 5320752733, i64 7195919142, i64 517255829], [5 x i64] [i64 7169388870, i64 7715466499, i64 1155934876, i64 353292171, i64 4970056938], [5 x i64] [i64 5437007057, i64 6826684624, i64 6214956500, i64 7647178729, i64 4438377604], [5 x i64] [i64 5328265410, i64 8756828443, i64 1911906346, i64 9403785521, i64 7779295145], [5 x i64] [i64 3612327252, i64 5000296071, i64 750825638, i64 1565671088, i64 5258350721], [5 x i64] [i64 4587657617, i64 2410976447, i64 3391106072, i64 1826523687, i64 7223636045], [5 x i64] [i64 1742370690, i64 5851860660, i64 4482076212, i64 981328786, i64 733969412], [5 x i64] [i64 8114266041, i64 8086830619, i64 3284608111, i64 9106155694, i64 512689692], [5 x i64] [i64 5193432545, i64 1728388641, i64 9180470492, i64 9321505864, i64 2563049483], [5 x i64] [i64 6246722164, i64 8435076201, i64 7279180399, i64 4469300473, i64 2956340691], [5 x i64] [i64 1573244438, i64 6908125794, i64 5140890577, i64 622942919, i64 7107928209], [5 x i64] [i64 5503768752, i64 5678773091, i64 8625407449, i64 6984450833, i64 393682126], [5 x i64] [i64 1833638482, i64 5330154686, i64 1961243487, i64 6768129753, i64 4375946515], [5 x i64] [i64 8038628759, i64 2878490201, i64 5216855548, i64 2871720121, i64 9257766954], [5 x i64] [i64 7818283375, i64 7993103614, i64 7403568564, i64 4909552709, i64 7864797581], [5 x i64] [i64 1672632010, i64 436897842, i64 5535399209, i64 3183744149, i64 7806860984], [5 x i64] [i64 4840309812, i64 9077791799, i64 882187953, i64 2736447567, i64 5590848030], [5 x i64] [i64 8708698755, i64 1392711854, i64 5170785441, i64 6185242432, i64 693150332], [5 x i64] [i64 5995940689, i64 5756536782, i64 1070749269, i64 6653767632, i64 6235447210], [5 x i64] [i64 6979395067, i64 9652694742, i64 5977097391, i64 6669376304, i64 2633987085], [5 x i64] [i64 4105268470, i64 8299085211, i64 3994273657, i64 3411618276, i64 315001271], [5 x i64] [i64 6537860736, i64 1501080857, i64 91499395, i64 1255702819, i64 8746004375], [5 x i64] [i64 3582903531, i64 7434717326, i64 9321235781, i64 5498262974, i64 2552737307], [5 x i64] [i64 9495375976, i64 5105305946, i64 9660676831, i64 5657437716, i64 7401875275], [5 x i64] [i64 8890280257, i64 1733229619, i64 1766687138, i64 1993181104, i64 8770190271], [5 x i64] [i64 2526768027, i64 6078003013, i64 6786809925, i64 2546340106, i64 1632866526], [5 x i64] [i64 3627021854, i64 497705585, i64 6299465806, i64 3623799314, i64 746255962], [5 x i64] [i64 2407448690, i64 8231174977, i64 7923654662, i64 5724692332, i64 2810917141], [5 x i64] [i64 9143028819, i64 7103288597, i64 8066697608, i64 9293863828, i64 5025333403], [5 x i64] [i64 3441306557, i64 8016127815, i64 9218150055, i64 6186883646, i64 8420090470], [5 x i64] [i64 2305308117, i64 2816430487, i64 6237919698, i64 4248725503, i64 6638784583], [5 x i64] [i64 1148769693, i64 2154902810, i64 4240201383, i64 3512446218, i64 1441773470], [5 x i64] [i64 6378329949, i64 636259666, i64 4985876182, i64 2122522551, i64 2486764533], [5 x i64] [i64 6772018697, i64 1698544312, i64 4195724099, i64 1395900895, i64 2310058822], [5 x i64] [i64 9554825530, i64 263520781, i64 5322967962, i64 4948164195, i64 3868218774], [5 x i64] [i64 7608532713, i64 2285723110, i64 4248034561, i64 2486769706, i64 4507995236], [5 x i64] [i64 3777424253, i64 5411291684, i64 2768655389, i64 2620502491, i64 326572967], [5 x i64] [i64 2370191327, i64 5725675285, i64 6532482582, i64 6546309220, i64 7058596522], [5 x i64] [i64 2979886027, i64 2258331913, i64 1263751473, i64 4199488953, i64 4765745501], [5 x i64] [i64 1849570145, i64 4879288984, i64 8568277260, i64 7771372140, i64 3798879715], [5 x i64] [i64 3829820378, i64 3031473527, i64 7215803481, i64 4451349137, i64 3226651381], [5 x i64] [i64 3482954382, i64 9199918180, i64 2789165224, i64 3102739225, i64 1122869539], [5 x i64] [i64 4095795306, i64 6405232632, i64 5380441000, i64 5965493915, i64 9879593635], [5 x i64] [i64 2974615218, i64 5502371307, i64 6422551211, i64 8369380358, i64 388584903], [5 x i64] [i64 4169811622, i64 2072977186, i64 1582366784, i64 2468915799, i64 3532961922], [5 x i64] [i64 6246795719, i64 4401269043, i64 8771072750, i64 4810239089, i64 5523597457], [5 x i64] [i64 2318970677, i64 2547915061, i64 5055049539, i64 2297953090, i64 1129967519], [5 x i64] [i64 8618808822, i64 5875314529, i64 5840992512, i64 382900940, i64 7770775672], [5 x i64] [i64 1130673970, i64 8304724483, i64 8165338735, i64 234084564, i64 7058077308], [5 x i64] [i64 8295917476, i64 7140363198, i64 81871290, i64 1187549131, i64 547126581], [5 x i64] [i64 9762333104, i64 4818386269, i64 5154563349, i64 2636657289, i64 7563400500], [5 x i64] [i64 4284628018, i64 3517070527, i64 8318394258, i64 8214552122, i64 7251250327], [5 x i64] [i64 5512160354, i64 6981200581, i64 7621652128, i64 2765275169, i64 1296897789], [5 x i64] [i64 3223819573, i64 4329339946, i64 4375019078, i64 3694576588, i64 3352399886], [5 x i64] [i64 7550616496, i64 5184775180, i64 7381688378, i64 6109152735, i64 7929701337], [5 x i64] [i64 6217784275, i64 2192623401, i64 9423996391, i64 6804498399, i64 3173312731], [5 x i64] [i64 3292418570, i64 7147349566, i64 9166746876, i64 3466091503, i64 5914677504], [5 x i64] [i64 9951867143, i64 235219628, i64 8948901024, i64 2332511691, i64 3619626622], [5 x i64] [i64 7326746080, i64 591547471, i64 8307983928, i64 6853520694, i64 6944540724], [5 x i64] [i64 7684182252, i64 4674417161, i64 5140364279, i64 8227334805, i64 5556214818], [5 x i64] [i64 9714261791, i64 342598647, i64 2045168939, i64 8942217982, i64 6088076852], [5 x i64] [i64 8778364618, i64 2799346313, i64 7677543078, i64 936333301, i64 8982642090], [5 x i64] [i64 1084880252, i64 1674670883, i64 2151201858, i64 8354322381, i64 2876952786], [5 x i64] [i64 7132961247, i64 4782464538, i64 6369930090, i64 4931036361, i64 9763878039], [5 x i64] [i64 6218407357, i64 2399794223, i64 4062353938, i64 833965132, i64 7408011116], [5 x i64] [i64 6662789198, i64 1488087797, i64 9418768761, i64 4423003098, i64 4490851411], [5 x i64] [i64 6066182629, i64 3682836764, i64 7447792391, i64 8033511098, i64 9069790714], [5 x i64] [i64 8578694408, i64 9552990653, i64 6404474255, i64 7608365997, i64 6645795096], [5 x i64] [i64 6602439640, i64 9905389607, i64 1201982199, i64 7604759949, i64 197230297], [5 x i64] [i64 6491398268, i64 32973156, i64 371200413, i64 7790378556, i64 6085089252], [5 x i64] [i64 1673093931, i64 9872750275, i64 4689069037, i64 753941304, i64 2652315011], [5 x i64] [i64 9480937724, i64 5048795150, i64 9541009216, i64 4586375471, i64 598436791], [5 x i64] [i64 7863916702, i64 1187492431, i64 9957006419, i64 1796977759, i64 9028300699], [5 x i64] [i64 1536871371, i64 1936614952, i64 8113058763, i64 8027841075, i64 4449733078], [5 x i64] [i64 4078992311, i64 5535562561, i64 1423224232, i64 5503368544, i64 2488917353], [5 x i64] [i64 4488991150, i64 1440648020, i64 3690680639, i64 6067232219, i64 3204149535], [5 x i64] [i64 4150312888, i64 339536053, i64 2993403680, i64 697771065, i64 566631954], [5 x i64] [i64 8123488067, i64 3210146739, i64 585685579, i64 3458140362, i64 7822703280], [5 x i64] [i64 8261657077, i64 3948327592, i64 2328459417, i64 652509451, i64 2325230608], [5 x i64] [i64 2291880205, i64 8777319719, i64 8394501808, i64 8807242966, i64 1980811197], [5 x i64] [i64 7715854250, i64 2016545090, i64 4132458097, i64 8688277894, i64 8721859617], [5 x i64] [i64 7210783843, i64 5069186155, i64 4356628840, i64 6225747369, i64 2284509516], [5 x i64] [i64 2084960398, i64 134001723, i64 9306716668, i64 2355524525, i64 2804609722], [5 x i64] [i64 5350353422, i64 6472524250, i64 8740540755, i64 9178978126, i64 4330331690]]
@.str = [9 x i8] c"%010llu \00"
define i32 @main() {
%1 = alloca [10 x i64]
%2 = bitcast [10 x i64]* %1 to i8*
%3 = tail call i64 @pow(i32 10, i32 10)
br label %4
4: ; preds = %52, %0
%5 = phi i64 [ 0, %0 ], [ %54, %52 ]
%6 = phi i64 [ 4, %0 ], [ %51, %52 ]
%7 = phi i32 [ 0, %0 ], [ %50, %52 ]
%8 = getelementptr inbounds [10 x i64], [10 x i64]* %1, i64 0, i64 %6
br label %18
9: ; preds = %18
%10 = sext i32 %7 to i64
%11 = add i64 %39, %10
store i64 %11, i64* %8
%12 = tail call i32 @log10(i64 %11)
%13 = tail call i64 @floor(i32 %12)
%14 = trunc i64 %13 to i32
%15 = icmp ne i64 %6, 0
%16 = icmp sgt i32 %14, 9
%17 = select i1 %15, i1 %16, i1 false
br i1 %17, label %42, label %49
18: ; preds = %18, %4
%19 = phi i64 [ 0, %4 ], [ %40, %18 ]
%20 = phi i64 [ %5, %4 ], [ %39, %18 ]
%21 = getelementptr inbounds [100 x [5 x i64]], [100 x [5 x i64]]* @__const.main.large_numbers, i64 0, i64 %19, i64 %6
%22 = load i64, i64* %21
%23 = add i64 %20, %22
%24 = add nuw nsw i64 %19, 1
%25 = getelementptr inbounds [100 x [5 x i64]], [100 x [5 x i64]]* @__const.main.large_numbers, i64 0, i64 %24, i64 %6
%26 = load i64, i64* %25
%27 = add i64 %23, %26
%28 = add nuw nsw i64 %19, 2
%29 = getelementptr inbounds [100 x [5 x i64]], [100 x [5 x i64]]* @__const.main.large_numbers, i64 0, i64 %28, i64 %6
%30 = load i64, i64* %29
%31 = add i64 %27, %30
%32 = add nuw nsw i64 %19, 3
%33 = getelementptr inbounds [100 x [5 x i64]], [100 x [5 x i64]]* @__const.main.large_numbers, i64 0, i64 %32, i64 %6
%34 = load i64, i64* %33
%35 = add i64 %31, %34
%36 = add nuw nsw i64 %19, 4
%37 = getelementptr inbounds [100 x [5 x i64]], [100 x [5 x i64]]* @__const.main.large_numbers, i64 0, i64 %36, i64 %6
%38 = load i64, i64* %37
%39 = add i64 %35, %38
%40 = add nuw nsw i64 %19, 5
%41 = icmp eq i64 %40, 100
br i1 %41, label %9, label %18
42: ; preds = %9
%43 = udiv i64 %11, %3
%44 = trunc i64 %43 to i32
%45 = shl i64 %43, 32
%46 = ashr exact i64 %45, 32
%47 = mul i64 %46, %3
%48 = sub i64 %11, %47
store i64 %48, i64* %8
br label %49
49: ; preds = %9, %42
%50 = phi i32 [ %44, %42 ], [ %7, %9 ]
%51 = add nsw i64 %6, -1
br i1 %15, label %52, label %55
52: ; preds = %49
%53 = getelementptr inbounds [10 x i64], [10 x i64]* %1, i64 0, i64 %51
%54 = load i64, i64* %53
br label %4
55: ; preds = %49
%56 = getelementptr inbounds [10 x i64], [10 x i64]* %1, i64 0, i64 0
%57 = load i64, i64* %56
%58 = tail call i32 @printf(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str, i64 0, i64 0), i64 %57)
%59 = getelementptr inbounds [10 x i64], [10 x i64]* %1, i64 0, i64 1
%60 = load i64, i64* %59
%61 = tail call i32 @printf(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str, i64 0, i64 0), i64 %60)
%62 = getelementptr inbounds [10 x i64], [10 x i64]* %1, i64 0, i64 2
%63 = load i64, i64* %62
%64 = tail call i32 @printf(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str, i64 0, i64 0), i64 %63)
%65 = getelementptr inbounds [10 x i64], [10 x i64]* %1, i64 0, i64 3
%66 = load i64, i64* %65
%67 = tail call i32 @printf(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str, i64 0, i64 0), i64 %66)
%68 = getelementptr inbounds [10 x i64], [10 x i64]* %1, i64 0, i64 4
%69 = load i64, i64* %68
%70 = tail call i32 @printf(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str, i64 0, i64 0), i64 %69)
ret i32 0
}