// File: BenLangmead[P]bowtie/./timer.h
// Function: logTime(std::ostream&, bool)
static inline void logTime(std::ostream& os, bool nl = true) {
	struct tm *current;
	time_t now;
	time(&now);
	current = localtime(&now);
	std::ostringstream oss;
	oss << setfill('0') << setw(2)
	    << current->tm_hour << ":"
	    << setfill('0') << setw(2)
	    << current->tm_min << ":"
	    << setfill('0') << setw(2)
	    << current->tm_sec;
	if(nl) oss << std::endl;
	os << oss.str().c_str();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x270, %rsp            # imm = 0x270
movb %sil, %al
movq %rdi, -0x8(%rbp)
andb $0x1, %al
movb %al, -0x9(%rbp)
leaq -0x20(%rbp), %rdi
movq %rdi, -0x1f0(%rbp)
callq 0x5310
movq -0x1f0(%rbp), %rdi
callq 0x5250
movq %rax, -0x18(%rbp)
leaq -0x198(%rbp), %rdi
callq 0x5540
movl $0x30, %edi
callq 0x2ae60
movb %al, -0x1e1(%rbp)
jmp 0xdfb5
movb -0x1e1(%rbp), %al
movb %al, -0x199(%rbp)
movzbl -0x199(%rbp), %esi
leaq -0x198(%rbp), %rdi
callq 0x5670
movq %rax, -0x1f8(%rbp)
jmp 0xdfdd
movl $0x2, %edi
callq 0x2ae80
movl %eax, -0x1fc(%rbp)
jmp 0xdfef
movq -0x1f8(%rbp), %rdi
movl -0x1fc(%rbp), %eax
movl %eax, -0x1b0(%rbp)
movl -0x1b0(%rbp), %esi
callq 0x5480
movq %rax, -0x208(%rbp)
jmp 0xe016
movq -0x208(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x8(%rax), %esi
callq 0x5750
movq %rax, -0x210(%rbp)
jmp 0xe032
movq -0x210(%rbp), %rdi
leaq 0x3274a(%rip), %rsi     # 0x4078a
callq 0x5360
movq %rax, -0x218(%rbp)
jmp 0xe04e
movl $0x30, %edi
callq 0x2ae60
movb %al, -0x219(%rbp)
jmp 0xe060
movq -0x218(%rbp), %rdi
movb -0x219(%rbp), %al
movb %al, -0x1b1(%rbp)
movzbl -0x1b1(%rbp), %esi
callq 0x5670
movq %rax, -0x228(%rbp)
jmp 0xe088
movl $0x2, %edi
callq 0x2ae80
movl %eax, -0x22c(%rbp)
jmp 0xe09a
movq -0x228(%rbp), %rdi
movl -0x22c(%rbp), %eax
movl %eax, -0x1b8(%rbp)
movl -0x1b8(%rbp), %esi
callq 0x5480
movq %rax, -0x238(%rbp)
jmp 0xe0c1
movq -0x238(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x4(%rax), %esi
callq 0x5750
movq %rax, -0x240(%rbp)
jmp 0xe0dd
movq -0x240(%rbp), %rdi
leaq 0x3269f(%rip), %rsi     # 0x4078a
callq 0x5360
movq %rax, -0x248(%rbp)
jmp 0xe0f9
movl $0x30, %edi
callq 0x2ae60
movb %al, -0x249(%rbp)
jmp 0xe10b
movq -0x248(%rbp), %rdi
movb -0x249(%rbp), %al
movb %al, -0x1b9(%rbp)
movzbl -0x1b9(%rbp), %esi
callq 0x5670
movq %rax, -0x258(%rbp)
jmp 0xe133
movl $0x2, %edi
callq 0x2ae80
movl %eax, -0x25c(%rbp)
jmp 0xe145
movq -0x258(%rbp), %rdi
movl -0x25c(%rbp), %eax
movl %eax, -0x1c0(%rbp)
movl -0x1c0(%rbp), %esi
callq 0x5480
movq %rax, -0x268(%rbp)
jmp 0xe16c
movq -0x268(%rbp), %rdi
movq -0x18(%rbp), %rax
movl (%rax), %esi
callq 0x5750
jmp 0xe180
testb $0x1, -0x9(%rbp)
je 0xe1b1
movq 0x3bdf3(%rip), %rsi     # 0x49f80
leaq -0x198(%rbp), %rdi
callq 0x53c0
jmp 0xe19b
jmp 0xe1b1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a8(%rbp)
movl %eax, -0x1ac(%rbp)
jmp 0xe22d
movq -0x8(%rbp), %rax
movq %rax, -0x270(%rbp)
leaq -0x1e0(%rbp), %rdi
leaq -0x198(%rbp), %rsi
callq 0x53a0
jmp 0xe1d1
leaq -0x1e0(%rbp), %rdi
callq 0x5150
movq -0x270(%rbp), %rdi
movq %rax, %rsi
callq 0x5360
jmp 0xe1ee
leaq -0x1e0(%rbp), %rdi
callq 0x5888
leaq -0x198(%rbp), %rdi
callq 0x50d0
addq $0x270, %rsp            # imm = 0x270
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a8(%rbp)
movl %eax, -0x1ac(%rbp)
leaq -0x1e0(%rbp), %rdi
callq 0x5888
leaq -0x198(%rbp), %rdi
callq 0x50d0
movq -0x1a8(%rbp), %rdi
callq 0x5760
nopw %cs:(%rax,%rax)