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

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ fprintf(int /*<<< orphan*/, char *, ...);
int /*<<< orphan*/ stderr;
int /*<<< orphan*/ test_dont_continue_past_space();
int /*<<< orphan*/ test_eight_decimals();
int /*<<< orphan*/ test_empty();
int /*<<< orphan*/ test_five_decimals();
int /*<<< orphan*/ test_four_decimals();
int /*<<< orphan*/ test_invalid();
int /*<<< orphan*/ test_minus_one();
int /*<<< orphan*/ test_negative();
int /*<<< orphan*/ test_nine_decimals();
int /*<<< orphan*/ test_no_decimals_with_dot();
int /*<<< orphan*/ test_no_decimals_without_dot();
int /*<<< orphan*/ test_no_timestamp();
int /*<<< orphan*/ test_one_decimal();
int /*<<< orphan*/ test_real_timestamp();
int /*<<< orphan*/ test_seven_decimals();
int /*<<< orphan*/ test_six_decimals();
int /*<<< orphan*/ test_three_decimals();
int /*<<< orphan*/ test_too_long();
int /*<<< orphan*/ test_too_long_zeros();
int /*<<< orphan*/ test_two_decimals();
int /*<<< orphan*/ test_zero_padding();
int main(int argc, char const *argv[]) {
  (void)argc;
  (void)argv;
  {
    fprintf(stderr, "%s: ", "test_nine_decimals");
    test_nine_decimals();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_eight_decimals");
    test_eight_decimals();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_seven_decimals");
    test_seven_decimals();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_six_decimals");
    test_six_decimals();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_five_decimals");
    test_five_decimals();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_four_decimals");
    test_four_decimals();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_three_decimals");
    test_three_decimals();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_two_decimals");
    test_two_decimals();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_one_decimal");
    test_one_decimal();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_zero_padding");
    test_zero_padding();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_no_decimals_with_dot");
    test_no_decimals_with_dot();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_no_decimals_without_dot");
    test_no_decimals_without_dot();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_no_timestamp");
    test_no_timestamp();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_empty");
    test_empty();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_minus_one");
    test_minus_one();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_invalid");
    test_invalid();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_too_long");
    test_too_long();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_too_long_zeros");
    test_too_long_zeros();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_real_timestamp");
    test_real_timestamp();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_dont_continue_past_space");
    test_dont_continue_past_space();
    fprintf(stderr, "PASSED!\n");
  };
  {
    fprintf(stderr, "%s: ", "test_negative");
    test_negative();
    fprintf(stderr, "PASSED!\n");
  };
  fprintf(stderr, "ALL TESTS PASSED!\n");
  return 0;
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
movl   $0x0,-0x4(%rbp)
mov    %edi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    0x2d63(%rip),%rax
mov    (%rax),%edi
lea    0xd7a(%rip),%rsi
lea    0xd78(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1080 <test_nine_decimals@plt>
mov    0x2d3e(%rip),%rax
mov    (%rax),%edi
lea    0xef2(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2d27(%rip),%rax
mov    (%rax),%edi
lea    0xd3e(%rip),%rsi
lea    0xd4f(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1110 <test_eight_decimals@plt>
mov    0x2d02(%rip),%rax
mov    (%rax),%edi
lea    0xeb6(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2ceb(%rip),%rax
mov    (%rax),%edi
lea    0xd02(%rip),%rsi
lea    0xd27(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1100 <test_seven_decimals@plt>
mov    0x2cc6(%rip),%rax
mov    (%rax),%edi
lea    0xe7a(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2caf(%rip),%rax
mov    (%rax),%edi
lea    0xcc6(%rip),%rsi
lea    0xcff(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   10a0 <test_six_decimals@plt>
mov    0x2c8a(%rip),%rax
mov    (%rax),%edi
lea    0xe3e(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2c73(%rip),%rax
mov    (%rax),%edi
lea    0xc8a(%rip),%rsi
lea    0xcd5(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1150 <test_five_decimals@plt>
mov    0x2c4e(%rip),%rax
mov    (%rax),%edi
lea    0xe02(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2c37(%rip),%rax
mov    (%rax),%edi
lea    0xc4e(%rip),%rsi
lea    0xcac(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1140 <test_four_decimals@plt>
mov    0x2c12(%rip),%rax
mov    (%rax),%edi
lea    0xdc6(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2bfb(%rip),%rax
mov    (%rax),%edi
lea    0xc12(%rip),%rsi
lea    0xc83(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1060 <test_three_decimals@plt>
mov    0x2bd6(%rip),%rax
mov    (%rax),%edi
lea    0xd8a(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2bbf(%rip),%rax
mov    (%rax),%edi
lea    0xbd6(%rip),%rsi
lea    0xc5b(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1130 <test_two_decimals@plt>
mov    0x2b9a(%rip),%rax
mov    (%rax),%edi
lea    0xd4e(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2b83(%rip),%rax
mov    (%rax),%edi
lea    0xb9a(%rip),%rsi
lea    0xc31(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   10e0 <test_one_decimal@plt>
mov    0x2b5e(%rip),%rax
mov    (%rax),%edi
lea    0xd12(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2b47(%rip),%rax
mov    (%rax),%edi
lea    0xb5e(%rip),%rsi
lea    0xc06(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1170 <test_zero_padding@plt>
mov    0x2b22(%rip),%rax
mov    (%rax),%edi
lea    0xcd6(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2b0b(%rip),%rax
mov    (%rax),%edi
lea    0xb22(%rip),%rsi
lea    0xbdc(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   10f0 <test_no_decimals_with_dot@plt>
mov    0x2ae6(%rip),%rax
mov    (%rax),%edi
lea    0xc9a(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2acf(%rip),%rax
mov    (%rax),%edi
lea    0xae6(%rip),%rsi
lea    0xbba(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1160 <test_no_decimals_without_dot@plt>
mov    0x2aaa(%rip),%rax
mov    (%rax),%edi
lea    0xc5e(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2a93(%rip),%rax
mov    (%rax),%edi
lea    0xaaa(%rip),%rsi
lea    0xb9b(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   10d0 <test_no_timestamp@plt>
mov    0x2a6e(%rip),%rax
mov    (%rax),%edi
lea    0xc22(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2a57(%rip),%rax
mov    (%rax),%edi
lea    0xa6e(%rip),%rsi
lea    0xb71(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1090 <test_empty@plt>
mov    0x2a32(%rip),%rax
mov    (%rax),%edi
lea    0xbe6(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2a1b(%rip),%rax
mov    (%rax),%edi
lea    0xa32(%rip),%rsi
lea    0xb40(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1050 <test_minus_one@plt>
mov    0x29f6(%rip),%rax
mov    (%rax),%edi
lea    0xbaa(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x29df(%rip),%rax
mov    (%rax),%edi
lea    0x9f6(%rip),%rsi
lea    0xb13(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1070 <test_invalid@plt>
mov    0x29ba(%rip),%rax
mov    (%rax),%edi
lea    0xb6e(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x29a3(%rip),%rax
mov    (%rax),%edi
lea    0x9ba(%rip),%rsi
lea    0xae4(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1180 <test_too_long@plt>
mov    0x297e(%rip),%rax
mov    (%rax),%edi
lea    0xb32(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2967(%rip),%rax
mov    (%rax),%edi
lea    0x97e(%rip),%rsi
lea    0xab6(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1030 <test_too_long_zeros@plt>
mov    0x2942(%rip),%rax
mov    (%rax),%edi
lea    0xaf6(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x292b(%rip),%rax
mov    (%rax),%edi
lea    0x942(%rip),%rsi
lea    0xa8e(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1120 <test_real_timestamp@plt>
mov    0x2906(%rip),%rax
mov    (%rax),%edi
lea    0xaba(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x28ef(%rip),%rax
mov    (%rax),%edi
lea    0x906(%rip),%rsi
lea    0xa66(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   10b0 <test_dont_continue_past_space@plt>
mov    0x28ca(%rip),%rax
mov    (%rax),%edi
lea    0xa7e(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x28b3(%rip),%rax
mov    (%rax),%edi
lea    0x8ca(%rip),%rsi
lea    0xa48(%rip),%rdx
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    $0x0,%al
call   1040 <test_negative@plt>
mov    0x288e(%rip),%rax
mov    (%rax),%edi
lea    0xa42(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
mov    0x2877(%rip),%rax
mov    (%rax),%edi
lea    0xa21(%rip),%rsi
mov    $0x0,%al
call   10c0 <fprintf@plt>
xor    %eax,%eax
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<main>:
push   %r15
push   %r14
push   %rbx
mov    0x2d74(%rip),%rbx
mov    (%rbx),%edi
lea    0xd8b(%rip),%r14
lea    0xd89(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1080 <test_nine_decimals@plt>
mov    (%rbx),%edi
lea    0xf07(%rip),%r15
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xd6f(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1110 <test_eight_decimals@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xd5d(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1100 <test_seven_decimals@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xd4b(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   10a0 <test_six_decimals@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xd37(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1150 <test_five_decimals@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xd24(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1140 <test_four_decimals@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xd11(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1060 <test_three_decimals@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xcff(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1130 <test_two_decimals@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xceb(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   10e0 <test_one_decimal@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xcd6(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1170 <test_zero_padding@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xcc2(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   10f0 <test_no_decimals_with_dot@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xcb6(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1160 <test_no_decimals_without_dot@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xcad(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   10d0 <test_no_timestamp@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xc99(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1090 <test_empty@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xc7e(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1050 <test_minus_one@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xc67(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1070 <test_invalid@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xc4e(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1180 <test_too_long@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xc36(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1030 <test_too_long_zeros@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xc24(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1120 <test_real_timestamp@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xc12(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   10b0 <test_dont_continue_past_space@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xc0a(%rip),%rdx
mov    %r14,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
call   1040 <test_negative@plt>
mov    (%rbx),%edi
mov    %r15,%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
mov    (%rbx),%edi
lea    0xbf2(%rip),%rsi
xor    %eax,%eax
call   10c0 <fprintf@plt>
xor    %eax,%eax
pop    %rbx
pop    %r14
pop    %r15
ret

LLVM IR (-O0):
@stderr = global i32 0
@.str = [5 x i8] c"%s: \00"
@.str.1 = [19 x i8] c"test_nine_decimals\00"
@.str.2 = [9 x i8] c"PASSED!\0A\00"
@.str.3 = [20 x i8] c"test_eight_decimals\00"
@.str.4 = [20 x i8] c"test_seven_decimals\00"
@.str.5 = [18 x i8] c"test_six_decimals\00"
@.str.6 = [19 x i8] c"test_five_decimals\00"
@.str.7 = [19 x i8] c"test_four_decimals\00"
@.str.8 = [20 x i8] c"test_three_decimals\00"
@.str.9 = [18 x i8] c"test_two_decimals\00"
@.str.10 = [17 x i8] c"test_one_decimal\00"
@.str.11 = [18 x i8] c"test_zero_padding\00"
@.str.12 = [26 x i8] c"test_no_decimals_with_dot\00"
@.str.13 = [29 x i8] c"test_no_decimals_without_dot\00"
@.str.14 = [18 x i8] c"test_no_timestamp\00"
@.str.15 = [11 x i8] c"test_empty\00"
@.str.16 = [15 x i8] c"test_minus_one\00"
@.str.17 = [13 x i8] c"test_invalid\00"
@.str.18 = [14 x i8] c"test_too_long\00"
@.str.19 = [20 x i8] c"test_too_long_zeros\00"
@.str.20 = [20 x i8] c"test_real_timestamp\00"
@.str.21 = [30 x i8] c"test_dont_continue_past_space\00"
@.str.22 = [14 x i8] c"test_negative\00"
@.str.23 = [19 x i8] c"ALL TESTS PASSED!\0A\00"
define i32 @main(i32 %0, i8** %1) {
%3 = alloca i32
%4 = alloca i32
%5 = alloca i8**
store i32 0, i32* %3
store i32 %0, i32* %4
store i8** %1, i8*** %5
%6 = load i32, i32* %4
%7 = load i8**, i8*** %5
%8 = load i32, i32* @stderr
%9 = call i32 (i32, i8*, ...) @fprintf(i32 %8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.1, i64 0, i64 0))
%10 = call i32 (...) @test_nine_decimals()
%11 = load i32, i32* @stderr
%12 = call i32 (i32, i8*, ...) @fprintf(i32 %11, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%13 = load i32, i32* @stderr
%14 = call i32 (i32, i8*, ...) @fprintf(i32 %13, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.3, i64 0, i64 0))
%15 = call i32 (...) @test_eight_decimals()
%16 = load i32, i32* @stderr
%17 = call i32 (i32, i8*, ...) @fprintf(i32 %16, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%18 = load i32, i32* @stderr
%19 = call i32 (i32, i8*, ...) @fprintf(i32 %18, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.4, i64 0, i64 0))
%20 = call i32 (...) @test_seven_decimals()
%21 = load i32, i32* @stderr
%22 = call i32 (i32, i8*, ...) @fprintf(i32 %21, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%23 = load i32, i32* @stderr
%24 = call i32 (i32, i8*, ...) @fprintf(i32 %23, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.5, i64 0, i64 0))
%25 = call i32 (...) @test_six_decimals()
%26 = load i32, i32* @stderr
%27 = call i32 (i32, i8*, ...) @fprintf(i32 %26, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%28 = load i32, i32* @stderr
%29 = call i32 (i32, i8*, ...) @fprintf(i32 %28, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.6, i64 0, i64 0))
%30 = call i32 (...) @test_five_decimals()
%31 = load i32, i32* @stderr
%32 = call i32 (i32, i8*, ...) @fprintf(i32 %31, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%33 = load i32, i32* @stderr
%34 = call i32 (i32, i8*, ...) @fprintf(i32 %33, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.7, i64 0, i64 0))
%35 = call i32 (...) @test_four_decimals()
%36 = load i32, i32* @stderr
%37 = call i32 (i32, i8*, ...) @fprintf(i32 %36, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%38 = load i32, i32* @stderr
%39 = call i32 (i32, i8*, ...) @fprintf(i32 %38, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.8, i64 0, i64 0))
%40 = call i32 (...) @test_three_decimals()
%41 = load i32, i32* @stderr
%42 = call i32 (i32, i8*, ...) @fprintf(i32 %41, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%43 = load i32, i32* @stderr
%44 = call i32 (i32, i8*, ...) @fprintf(i32 %43, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.9, i64 0, i64 0))
%45 = call i32 (...) @test_two_decimals()
%46 = load i32, i32* @stderr
%47 = call i32 (i32, i8*, ...) @fprintf(i32 %46, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%48 = load i32, i32* @stderr
%49 = call i32 (i32, i8*, ...) @fprintf(i32 %48, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.10, i64 0, i64 0))
%50 = call i32 (...) @test_one_decimal()
%51 = load i32, i32* @stderr
%52 = call i32 (i32, i8*, ...) @fprintf(i32 %51, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%53 = load i32, i32* @stderr
%54 = call i32 (i32, i8*, ...) @fprintf(i32 %53, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.11, i64 0, i64 0))
%55 = call i32 (...) @test_zero_padding()
%56 = load i32, i32* @stderr
%57 = call i32 (i32, i8*, ...) @fprintf(i32 %56, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%58 = load i32, i32* @stderr
%59 = call i32 (i32, i8*, ...) @fprintf(i32 %58, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.12, i64 0, i64 0))
%60 = call i32 (...) @test_no_decimals_with_dot()
%61 = load i32, i32* @stderr
%62 = call i32 (i32, i8*, ...) @fprintf(i32 %61, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%63 = load i32, i32* @stderr
%64 = call i32 (i32, i8*, ...) @fprintf(i32 %63, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.13, i64 0, i64 0))
%65 = call i32 (...) @test_no_decimals_without_dot()
%66 = load i32, i32* @stderr
%67 = call i32 (i32, i8*, ...) @fprintf(i32 %66, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%68 = load i32, i32* @stderr
%69 = call i32 (i32, i8*, ...) @fprintf(i32 %68, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.14, i64 0, i64 0))
%70 = call i32 (...) @test_no_timestamp()
%71 = load i32, i32* @stderr
%72 = call i32 (i32, i8*, ...) @fprintf(i32 %71, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%73 = load i32, i32* @stderr
%74 = call i32 (i32, i8*, ...) @fprintf(i32 %73, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.15, i64 0, i64 0))
%75 = call i32 (...) @test_empty()
%76 = load i32, i32* @stderr
%77 = call i32 (i32, i8*, ...) @fprintf(i32 %76, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%78 = load i32, i32* @stderr
%79 = call i32 (i32, i8*, ...) @fprintf(i32 %78, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.16, i64 0, i64 0))
%80 = call i32 (...) @test_minus_one()
%81 = load i32, i32* @stderr
%82 = call i32 (i32, i8*, ...) @fprintf(i32 %81, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%83 = load i32, i32* @stderr
%84 = call i32 (i32, i8*, ...) @fprintf(i32 %83, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.17, i64 0, i64 0))
%85 = call i32 (...) @test_invalid()
%86 = load i32, i32* @stderr
%87 = call i32 (i32, i8*, ...) @fprintf(i32 %86, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%88 = load i32, i32* @stderr
%89 = call i32 (i32, i8*, ...) @fprintf(i32 %88, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.18, i64 0, i64 0))
%90 = call i32 (...) @test_too_long()
%91 = load i32, i32* @stderr
%92 = call i32 (i32, i8*, ...) @fprintf(i32 %91, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%93 = load i32, i32* @stderr
%94 = call i32 (i32, i8*, ...) @fprintf(i32 %93, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.19, i64 0, i64 0))
%95 = call i32 (...) @test_too_long_zeros()
%96 = load i32, i32* @stderr
%97 = call i32 (i32, i8*, ...) @fprintf(i32 %96, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%98 = load i32, i32* @stderr
%99 = call i32 (i32, i8*, ...) @fprintf(i32 %98, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.20, i64 0, i64 0))
%100 = call i32 (...) @test_real_timestamp()
%101 = load i32, i32* @stderr
%102 = call i32 (i32, i8*, ...) @fprintf(i32 %101, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%103 = load i32, i32* @stderr
%104 = call i32 (i32, i8*, ...) @fprintf(i32 %103, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.21, i64 0, i64 0))
%105 = call i32 (...) @test_dont_continue_past_space()
%106 = load i32, i32* @stderr
%107 = call i32 (i32, i8*, ...) @fprintf(i32 %106, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%108 = load i32, i32* @stderr
%109 = call i32 (i32, i8*, ...) @fprintf(i32 %108, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.22, i64 0, i64 0))
%110 = call i32 (...) @test_negative()
%111 = load i32, i32* @stderr
%112 = call i32 (i32, i8*, ...) @fprintf(i32 %111, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%113 = load i32, i32* @stderr
%114 = call i32 (i32, i8*, ...) @fprintf(i32 %113, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.23, i64 0, i64 0))
ret i32 0
}

LLVM IR (-O2):
@stderr = global i32 0
@.str = [5 x i8] c"%s: \00"
@.str.1 = [19 x i8] c"test_nine_decimals\00"
@.str.2 = [9 x i8] c"PASSED!\0A\00"
@.str.3 = [20 x i8] c"test_eight_decimals\00"
@.str.4 = [20 x i8] c"test_seven_decimals\00"
@.str.5 = [18 x i8] c"test_six_decimals\00"
@.str.6 = [19 x i8] c"test_five_decimals\00"
@.str.7 = [19 x i8] c"test_four_decimals\00"
@.str.8 = [20 x i8] c"test_three_decimals\00"
@.str.9 = [18 x i8] c"test_two_decimals\00"
@.str.10 = [17 x i8] c"test_one_decimal\00"
@.str.11 = [18 x i8] c"test_zero_padding\00"
@.str.12 = [26 x i8] c"test_no_decimals_with_dot\00"
@.str.13 = [29 x i8] c"test_no_decimals_without_dot\00"
@.str.14 = [18 x i8] c"test_no_timestamp\00"
@.str.15 = [11 x i8] c"test_empty\00"
@.str.16 = [15 x i8] c"test_minus_one\00"
@.str.17 = [13 x i8] c"test_invalid\00"
@.str.18 = [14 x i8] c"test_too_long\00"
@.str.19 = [20 x i8] c"test_too_long_zeros\00"
@.str.20 = [20 x i8] c"test_real_timestamp\00"
@.str.21 = [30 x i8] c"test_dont_continue_past_space\00"
@.str.22 = [14 x i8] c"test_negative\00"
@.str.23 = [19 x i8] c"ALL TESTS PASSED!\0A\00"
define i32 @main(i32 %0, i8** nocapture readnone %1) {
%3 = load i32, i32* @stderr
%4 = tail call i32 (i32, i8*, ...) @fprintf(i32 %3, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.1, i64 0, i64 0))
%5 = tail call i32 (...) @test_nine_decimals()
%6 = load i32, i32* @stderr
%7 = tail call i32 (i32, i8*, ...) @fprintf(i32 %6, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%8 = load i32, i32* @stderr
%9 = tail call i32 (i32, i8*, ...) @fprintf(i32 %8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.3, i64 0, i64 0))
%10 = tail call i32 (...) @test_eight_decimals()
%11 = load i32, i32* @stderr
%12 = tail call i32 (i32, i8*, ...) @fprintf(i32 %11, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%13 = load i32, i32* @stderr
%14 = tail call i32 (i32, i8*, ...) @fprintf(i32 %13, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.4, i64 0, i64 0))
%15 = tail call i32 (...) @test_seven_decimals()
%16 = load i32, i32* @stderr
%17 = tail call i32 (i32, i8*, ...) @fprintf(i32 %16, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%18 = load i32, i32* @stderr
%19 = tail call i32 (i32, i8*, ...) @fprintf(i32 %18, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.5, i64 0, i64 0))
%20 = tail call i32 (...) @test_six_decimals()
%21 = load i32, i32* @stderr
%22 = tail call i32 (i32, i8*, ...) @fprintf(i32 %21, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%23 = load i32, i32* @stderr
%24 = tail call i32 (i32, i8*, ...) @fprintf(i32 %23, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.6, i64 0, i64 0))
%25 = tail call i32 (...) @test_five_decimals()
%26 = load i32, i32* @stderr
%27 = tail call i32 (i32, i8*, ...) @fprintf(i32 %26, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%28 = load i32, i32* @stderr
%29 = tail call i32 (i32, i8*, ...) @fprintf(i32 %28, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.7, i64 0, i64 0))
%30 = tail call i32 (...) @test_four_decimals()
%31 = load i32, i32* @stderr
%32 = tail call i32 (i32, i8*, ...) @fprintf(i32 %31, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%33 = load i32, i32* @stderr
%34 = tail call i32 (i32, i8*, ...) @fprintf(i32 %33, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.8, i64 0, i64 0))
%35 = tail call i32 (...) @test_three_decimals()
%36 = load i32, i32* @stderr
%37 = tail call i32 (i32, i8*, ...) @fprintf(i32 %36, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%38 = load i32, i32* @stderr
%39 = tail call i32 (i32, i8*, ...) @fprintf(i32 %38, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.9, i64 0, i64 0))
%40 = tail call i32 (...) @test_two_decimals()
%41 = load i32, i32* @stderr
%42 = tail call i32 (i32, i8*, ...) @fprintf(i32 %41, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%43 = load i32, i32* @stderr
%44 = tail call i32 (i32, i8*, ...) @fprintf(i32 %43, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.10, i64 0, i64 0))
%45 = tail call i32 (...) @test_one_decimal()
%46 = load i32, i32* @stderr
%47 = tail call i32 (i32, i8*, ...) @fprintf(i32 %46, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%48 = load i32, i32* @stderr
%49 = tail call i32 (i32, i8*, ...) @fprintf(i32 %48, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.11, i64 0, i64 0))
%50 = tail call i32 (...) @test_zero_padding()
%51 = load i32, i32* @stderr
%52 = tail call i32 (i32, i8*, ...) @fprintf(i32 %51, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%53 = load i32, i32* @stderr
%54 = tail call i32 (i32, i8*, ...) @fprintf(i32 %53, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.12, i64 0, i64 0))
%55 = tail call i32 (...) @test_no_decimals_with_dot()
%56 = load i32, i32* @stderr
%57 = tail call i32 (i32, i8*, ...) @fprintf(i32 %56, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%58 = load i32, i32* @stderr
%59 = tail call i32 (i32, i8*, ...) @fprintf(i32 %58, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.13, i64 0, i64 0))
%60 = tail call i32 (...) @test_no_decimals_without_dot()
%61 = load i32, i32* @stderr
%62 = tail call i32 (i32, i8*, ...) @fprintf(i32 %61, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%63 = load i32, i32* @stderr
%64 = tail call i32 (i32, i8*, ...) @fprintf(i32 %63, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.14, i64 0, i64 0))
%65 = tail call i32 (...) @test_no_timestamp()
%66 = load i32, i32* @stderr
%67 = tail call i32 (i32, i8*, ...) @fprintf(i32 %66, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%68 = load i32, i32* @stderr
%69 = tail call i32 (i32, i8*, ...) @fprintf(i32 %68, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.15, i64 0, i64 0))
%70 = tail call i32 (...) @test_empty()
%71 = load i32, i32* @stderr
%72 = tail call i32 (i32, i8*, ...) @fprintf(i32 %71, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%73 = load i32, i32* @stderr
%74 = tail call i32 (i32, i8*, ...) @fprintf(i32 %73, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.16, i64 0, i64 0))
%75 = tail call i32 (...) @test_minus_one()
%76 = load i32, i32* @stderr
%77 = tail call i32 (i32, i8*, ...) @fprintf(i32 %76, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%78 = load i32, i32* @stderr
%79 = tail call i32 (i32, i8*, ...) @fprintf(i32 %78, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.17, i64 0, i64 0))
%80 = tail call i32 (...) @test_invalid()
%81 = load i32, i32* @stderr
%82 = tail call i32 (i32, i8*, ...) @fprintf(i32 %81, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%83 = load i32, i32* @stderr
%84 = tail call i32 (i32, i8*, ...) @fprintf(i32 %83, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.18, i64 0, i64 0))
%85 = tail call i32 (...) @test_too_long()
%86 = load i32, i32* @stderr
%87 = tail call i32 (i32, i8*, ...) @fprintf(i32 %86, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%88 = load i32, i32* @stderr
%89 = tail call i32 (i32, i8*, ...) @fprintf(i32 %88, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.19, i64 0, i64 0))
%90 = tail call i32 (...) @test_too_long_zeros()
%91 = load i32, i32* @stderr
%92 = tail call i32 (i32, i8*, ...) @fprintf(i32 %91, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%93 = load i32, i32* @stderr
%94 = tail call i32 (i32, i8*, ...) @fprintf(i32 %93, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.20, i64 0, i64 0))
%95 = tail call i32 (...) @test_real_timestamp()
%96 = load i32, i32* @stderr
%97 = tail call i32 (i32, i8*, ...) @fprintf(i32 %96, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%98 = load i32, i32* @stderr
%99 = tail call i32 (i32, i8*, ...) @fprintf(i32 %98, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.21, i64 0, i64 0))
%100 = tail call i32 (...) @test_dont_continue_past_space()
%101 = load i32, i32* @stderr
%102 = tail call i32 (i32, i8*, ...) @fprintf(i32 %101, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%103 = load i32, i32* @stderr
%104 = tail call i32 (i32, i8*, ...) @fprintf(i32 %103, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.22, i64 0, i64 0))
%105 = tail call i32 (...) @test_negative()
%106 = load i32, i32* @stderr
%107 = tail call i32 (i32, i8*, ...) @fprintf(i32 %106, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.2, i64 0, i64 0))
%108 = load i32, i32* @stderr
%109 = tail call i32 (i32, i8*, ...) @fprintf(i32 %108, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.23, i64 0, i64 0))
ret i32 0
}