	.file	"628141.c"
	.intel_syntax noprefix
	.text
	.globl	checker1
	.type	checker1, @function
checker1:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -4[rbp], xmm0
	movss	DWORD PTR -8[rbp], xmm1
	movss	DWORD PTR -12[rbp], xmm2
	movss	DWORD PTR -16[rbp], xmm3
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	movss	xmm0, DWORD PTR -4[rbp]
	comiss	xmm0, DWORD PTR -12[rbp]
	jbe	.L6
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	jmp	.L7
.L6:
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
.L7:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	checker1, .-checker1
	.globl	vchecker1
	.type	vchecker1, @function
vchecker1:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -4[rbp], xmm0
	movss	DWORD PTR -8[rbp], xmm1
	movss	DWORD PTR -12[rbp], xmm2
	movss	DWORD PTR -16[rbp], xmm3
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	movss	xmm0, DWORD PTR -8[rbp]
	comiss	xmm0, DWORD PTR -16[rbp]
	jbe	.L13
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	jmp	.L14
.L13:
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
.L14:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	vchecker1, .-vchecker1
	.globl	vchecker2
	.type	vchecker2, @function
vchecker2:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -4[rbp], xmm0
	movss	DWORD PTR -8[rbp], xmm1
	movss	DWORD PTR -12[rbp], xmm2
	movss	DWORD PTR -16[rbp], xmm3
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	movss	xmm0, DWORD PTR -8[rbp]
	comiss	xmm0, DWORD PTR -16[rbp]
	jbe	.L20
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	jmp	.L21
.L20:
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
.L21:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	vchecker2, .-vchecker2
	.globl	checker2
	.type	checker2, @function
checker2:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -4[rbp], xmm0
	movss	DWORD PTR -8[rbp], xmm1
	movss	DWORD PTR -12[rbp], xmm2
	movss	DWORD PTR -16[rbp], xmm3
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	movss	xmm0, DWORD PTR -4[rbp]
	comiss	xmm0, DWORD PTR -12[rbp]
	jbe	.L27
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	jmp	.L28
.L27:
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
.L28:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	checker2, .-checker2
	.globl	hline
	.type	hline, @function
hline:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	mov	QWORD PTR -56[rbp], r8
	mov	QWORD PTR -64[rbp], r9
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm1, DWORD PTR [rax]
	comiss	xmm0, xmm1
	ja	.L32
	jmp	.L33
.L32:
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -12[rbp], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -4[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 16[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 16[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 24[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -48[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 24[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
.L33:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	hline, .-hline
	.globl	hvline
	.type	hvline, @function
hvline:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	mov	QWORD PTR -56[rbp], r8
	mov	QWORD PTR -64[rbp], r9
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm1, DWORD PTR [rax]
	comiss	xmm0, xmm1
	ja	.L37
	jmp	.L38
.L37:
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -12[rbp], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -4[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 16[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 16[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 24[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -48[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 24[rbp]
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
.L38:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	hvline, .-hvline
	.globl	add_num14
	.type	add_num14, @function
add_num14:
.LFB12:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	DWORD PTR -20[rbp], edx
	mov	edi, 16
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR -20[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	add_num14, .-add_num14
	.globl	create_list15
	.type	create_list15, @function
create_list15:
.LFB13:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	edi, 16
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	atoi@PLT
	mov	rdx, QWORD PTR -16[rbp]
	mov	DWORD PTR [rdx], eax
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	create_list15, .-create_list15
	.globl	add_num15
	.type	add_num15, @function
add_num15:
.LFB14:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	edi, 16
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	atoi@PLT
	mov	rdx, QWORD PTR -16[rbp]
	mov	DWORD PTR [rdx], eax
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	add_num15, .-add_num15
	.section	.rodata
.LC0:
	.string	"%d\n"
	.text
	.globl	print_list15
	.type	print_list15, @function
print_list15:
.LFB15:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	jmp	.L46
.L47:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	mov	esi, eax
	lea	rdi, .LC0[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -8[rbp], rax
.L46:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L47
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	print_list15, .-print_list15
	.globl	delete15
	.type	delete15, @function
delete15:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	edx, eax
	jne	.L49
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -48[rbp], rax
	mov	rax, QWORD PTR -48[rbp]
	jmp	.L50
.L49:
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	jne	.L51
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -16[rbp], rax
	jmp	.L52
.L53:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -16[rbp], rax
.L52:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	jne	.L53
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR 8[rax], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -48[rbp]
	jmp	.L50
.L51:
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -8[rbp], rax
	jmp	.L54
.L55:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -8[rbp], rax
.L54:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	cmp	QWORD PTR -40[rbp], rax
	jne	.L55
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -48[rbp]
.L50:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	delete15, .-delete15
	.section	.rodata
.LC1:
	.string	"%d"
.LC2:
	.string	", %d"
	.text
	.globl	getLowest15
	.type	getLowest15, @function
getLowest15:
.LFB17:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -12[rbp], eax
	jmp	.L57
.L58:
	mov	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -12[rbp], eax
	jle	.L57
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -12[rbp], eax
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -8[rbp], rax
.L57:
	mov	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	jne	.L58
	mov	eax, DWORD PTR i.1[rip]
	test	eax, eax
	jne	.L59
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	mov	esi, eax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR i.1[rip]
	add	eax, 1
	mov	DWORD PTR i.1[rip], eax
	jmp	.L60
.L59:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	mov	esi, eax
	lea	rdi, .LC2[rip]
	mov	eax, 0
	call	printf@PLT
.L60:
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	delete15
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	getLowest15, .-getLowest15
	.globl	create_list20
	.type	create_list20, @function
create_list20:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	edi, 1008
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 1000[rax], rdx
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	create_list20, .-create_list20
	.globl	add_list20
	.type	add_list20, @function
add_list20:
.LFB19:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	edi, 1008
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 1000[rax], rdx
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	add_list20, .-add_list20
	.globl	compare_list20
	.type	compare_list20, @function
compare_list20:
.LFB20:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1040
	mov	QWORD PTR -1016[rbp], rdi
	mov	QWORD PTR -1024[rbp], rsi
	mov	QWORD PTR -1032[rbp], rdx
	mov	QWORD PTR -1040[rbp], rcx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	jmp	.L67
.L73:
	lea	rax, -1008[rbp]
	mov	edx, 1000
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	rdx, QWORD PTR -1024[rbp]
	lea	rax, -1008[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	cmp	QWORD PTR -1032[rbp], 0
	jne	.L68
	mov	edi, 1016
	call	malloc@PLT
	mov	QWORD PTR -1040[rbp], rax
	mov	rax, QWORD PTR -1040[rbp]
	lea	rdx, -1008[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	mov	rax, QWORD PTR -1040[rbp]
	mov	rdx, QWORD PTR -1032[rbp]
	mov	QWORD PTR 1008[rax], rdx
	mov	rax, QWORD PTR -1040[rbp]
	mov	QWORD PTR -1032[rbp], rax
	mov	rax, QWORD PTR -1024[rbp]
	mov	rax, QWORD PTR 1000[rax]
	mov	QWORD PTR -1024[rbp], rax
	jmp	.L67
.L68:
	mov	rax, QWORD PTR -1032[rbp]
	mov	QWORD PTR -1040[rbp], rax
	jmp	.L69
.L72:
	mov	rax, QWORD PTR -1040[rbp]
	lea	rdx, -1008[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcasecmp@PLT
	test	eax, eax
	jne	.L70
	mov	rax, QWORD PTR -1024[rbp]
	mov	rax, QWORD PTR 1000[rax]
	mov	QWORD PTR -1024[rbp], rax
	jmp	.L67
.L70:
	mov	rax, QWORD PTR -1040[rbp]
	mov	rax, QWORD PTR 1008[rax]
	test	rax, rax
	jne	.L71
	mov	edi, 1016
	call	malloc@PLT
	mov	QWORD PTR -1040[rbp], rax
	mov	rax, QWORD PTR -1040[rbp]
	lea	rdx, -1008[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	mov	rax, QWORD PTR -1040[rbp]
	mov	rdx, QWORD PTR -1032[rbp]
	mov	QWORD PTR 1008[rax], rdx
	mov	rax, QWORD PTR -1040[rbp]
	mov	QWORD PTR -1032[rbp], rax
	mov	rax, QWORD PTR -1024[rbp]
	mov	rax, QWORD PTR 1000[rax]
	mov	QWORD PTR -1024[rbp], rax
	jmp	.L67
.L71:
	mov	rax, QWORD PTR -1040[rbp]
	mov	rax, QWORD PTR 1008[rax]
	mov	QWORD PTR -1040[rbp], rax
.L69:
	cmp	QWORD PTR -1040[rbp], 0
	jne	.L72
.L67:
	cmp	QWORD PTR -1024[rbp], 0
	jne	.L73
	mov	rax, QWORD PTR -1032[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L75
	call	__stack_chk_fail@PLT
.L75:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	compare_list20, .-compare_list20
	.globl	frequency20
	.type	frequency20, @function
frequency20:
.LFB21:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	QWORD PTR -32[rbp], rcx
	jmp	.L77
.L80:
	cmp	QWORD PTR -32[rbp], 0
	jne	.L78
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -32[rbp], rax
	jmp	.L77
.L78:
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcasecmp@PLT
	test	eax, eax
	jne	.L79
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 1000[rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR 1000[rax], edx
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 1000[rax]
	mov	QWORD PTR -16[rbp], rax
	jmp	.L77
.L79:
	mov	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR 1008[rax]
	mov	QWORD PTR -32[rbp], rax
.L77:
	cmp	QWORD PTR -16[rbp], 0
	jne	.L80
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	frequency20, .-frequency20
	.globl	delete20
	.type	delete20, @function
delete20:
.LFB22:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	rax, QWORD PTR -40[rbp]
	cmp	rax, QWORD PTR -48[rbp]
	jne	.L82
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 1008[rax]
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -48[rbp], rax
	mov	rax, QWORD PTR -48[rbp]
	jmp	.L83
.L82:
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 1008[rax]
	test	rax, rax
	jne	.L84
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 1008[rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -16[rbp], rax
	jmp	.L85
.L86:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 1008[rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 1008[rax]
	mov	QWORD PTR -16[rbp], rax
.L85:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 1008[rax]
	test	rax, rax
	jne	.L86
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR 1008[rax], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -48[rbp]
	jmp	.L83
.L84:
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -8[rbp], rax
	jmp	.L87
.L88:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 1008[rax]
	mov	QWORD PTR -8[rbp], rax
.L87:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 1008[rax]
	cmp	QWORD PTR -40[rbp], rax
	jne	.L88
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR 1008[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 1008[rax], rdx
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -48[rbp]
.L83:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	delete20, .-delete20
	.section	.rodata
.LC3:
	.string	"%s %d"
.LC4:
	.string	", %s %d"
	.text
	.globl	getHighest20
	.type	getHighest20, @function
getHighest20:
.LFB23:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 1000[rax]
	mov	DWORD PTR -12[rbp], eax
	jmp	.L90
.L91:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 1008[rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 1000[rax]
	cmp	DWORD PTR -12[rbp], eax
	jge	.L90
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 1000[rax]
	mov	DWORD PTR -12[rbp], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
.L90:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 1008[rax]
	test	rax, rax
	jne	.L91
	mov	eax, DWORD PTR j.0[rip]
	test	eax, eax
	jne	.L92
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR 1000[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC3[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR j.0[rip]
	add	eax, 1
	mov	DWORD PTR j.0[rip], eax
	jmp	.L93
.L92:
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR 1000[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC4[rip]
	mov	eax, 0
	call	printf@PLT
.L93:
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	delete20
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	getHighest20, .-getHighest20
	.section	.rodata
	.align 8
.LC5:
	.string	"Problem 1: Given a number n, the program will print the number of rightmost 0's of n!."
.LC6:
	.string	"Please enter input n: "
.LC7:
	.string	"%lld"
	.align 8
.LC8:
	.string	"The output is: %lld! has %d rightmost 0's.\n"
	.text
	.globl	Problem1
	.type	Problem1, @function
Problem1:
.LFB24:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -24[rbp], 5
	mov	DWORD PTR -20[rbp], 0
	lea	rdi, .LC5[rip]
	call	puts@PLT
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -16[rbp]
	mov	rsi, rax
	lea	rdi, .LC7[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	jmp	.L96
.L97:
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR -24[rbp]
	movsx	rcx, edx
	cqo
	idiv	rcx
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	add	eax, edx
	mov	DWORD PTR -20[rbp], eax
	mov	edx, DWORD PTR -24[rbp]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	mov	DWORD PTR -24[rbp], eax
.L96:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -16[rbp]
	cmp	rdx, rax
	jle	.L97
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR -20[rbp]
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	mov	eax, 0
	call	printf@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L98
	call	__stack_chk_fail@PLT
.L98:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE24:
	.size	Problem1, .-Problem1
	.section	.rodata
	.align 8
.LC9:
	.string	"Problem 2: Given 4 points ((x1,y1), (x2,y2), (x3,y3), (x4,y4)), \nthe program will determine the intersection of the line segments formed by \n(x1,y1), (x2,y2) and (x3,y3), (x4,y4)."
	.align 8
.LC10:
	.string	"Enter x1,y1,x2,y2,x3,y3,x4,y4: "
.LC11:
	.string	"The output is: "
	.align 8
.LC13:
	.string	"The lines will intersect at (%.3f, %.3f).\n"
.LC14:
	.string	"The lines are coinciding."
.LC15:
	.string	"No intersection."
	.align 8
.LC16:
	.string	"The lines will intersect at (%.3f,%.3f).\n"
	.text
	.globl	Problem2
	.type	Problem2, @function
Problem2:
.LFB25:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 2200
	.cfi_offset 3, -24
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	QWORD PTR -1024[rbp], 0
	mov	QWORD PTR -1016[rbp], 0
	lea	rdx, -1008[rbp]
	mov	eax, 0
	mov	ecx, 123
	mov	rdi, rdx
	rep stosq
	mov	DWORD PTR -2168[rbp], 0
	lea	rdi, .LC9[rip]
	call	puts@PLT
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rdx, QWORD PTR stdin[rip]
	lea	rax, -2032[rbp]
	mov	esi, 1000
	mov	rdi, rax
	call	fgets@PLT
	lea	rax, -2032[rbp]
	mov	rdi, rax
	call	strlen@PLT
	sub	rax, 1
	mov	BYTE PTR -2032[rbp+rax], 0
	mov	DWORD PTR -2164[rbp], 0
	jmp	.L100
.L103:
	lea	rdx, -2032[rbp]
	mov	eax, DWORD PTR -2164[rbp]
	cdqe
	lea	rcx, [rdx+rax]
	lea	rax, -1024[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	rdi, rax
	call	strncat@PLT
	add	DWORD PTR -2164[rbp], 1
.L101:
	mov	eax, DWORD PTR -2164[rbp]
	cdqe
	movzx	eax, BYTE PTR -2032[rbp+rax]
	cmp	al, 44
	je	.L102
	mov	eax, DWORD PTR -2164[rbp]
	movsx	rbx, eax
	lea	rax, -2032[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rbx, rax
	jb	.L103
.L102:
	lea	rax, -1024[rbp]
	mov	rdi, rax
	call	atof@PLT
	cvtsd2ss	xmm0, xmm0
	mov	eax, DWORD PTR -2168[rbp]
	cdqe
	movss	DWORD PTR -2064[rbp+rax*4], xmm0
	add	DWORD PTR -2168[rbp], 1
	lea	rax, -1024[rbp]
	mov	edx, 1000
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	add	DWORD PTR -2164[rbp], 1
.L100:
	mov	eax, DWORD PTR -2164[rbp]
	movsx	rbx, eax
	lea	rax, -2032[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rbx, rax
	jb	.L101
	movss	xmm0, DWORD PTR -2064[rbp]
	movss	DWORD PTR -2128[rbp], xmm0
	movss	xmm0, DWORD PTR -2060[rbp]
	movss	DWORD PTR -2124[rbp], xmm0
	movss	xmm0, DWORD PTR -2056[rbp]
	movss	DWORD PTR -2120[rbp], xmm0
	movss	xmm0, DWORD PTR -2052[rbp]
	movss	DWORD PTR -2116[rbp], xmm0
	movss	xmm0, DWORD PTR -2048[rbp]
	movss	DWORD PTR -2112[rbp], xmm0
	movss	xmm0, DWORD PTR -2044[rbp]
	movss	DWORD PTR -2108[rbp], xmm0
	movss	xmm0, DWORD PTR -2040[rbp]
	movss	DWORD PTR -2104[rbp], xmm0
	movss	xmm0, DWORD PTR -2036[rbp]
	movss	DWORD PTR -2100[rbp], xmm0
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	movss	xmm0, DWORD PTR -2120[rbp]
	subss	xmm0, DWORD PTR -2128[rbp]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L105
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jne	.L105
	movss	xmm0, DWORD PTR -2104[rbp]
	subss	xmm0, DWORD PTR -2112[rbp]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L107
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jne	.L107
	lea	rcx, -2192[rbp]
	lea	rdx, -2200[rbp]
	lea	rsi, -2188[rbp]
	lea	rdi, -2196[rbp]
	movss	xmm2, DWORD PTR -2116[rbp]
	movss	xmm1, DWORD PTR -2120[rbp]
	movss	xmm0, DWORD PTR -2124[rbp]
	mov	eax, DWORD PTR -2128[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	vchecker1
	lea	rcx, -2176[rbp]
	lea	rdx, -2184[rbp]
	lea	rsi, -2172[rbp]
	lea	rdi, -2180[rbp]
	movss	xmm2, DWORD PTR -2100[rbp]
	movss	xmm1, DWORD PTR -2104[rbp]
	movss	xmm0, DWORD PTR -2108[rbp]
	mov	eax, DWORD PTR -2112[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	vchecker2
	lea	r9, -2172[rbp]
	lea	r8, -2180[rbp]
	lea	rcx, -2192[rbp]
	lea	rdx, -2200[rbp]
	lea	rsi, -2188[rbp]
	lea	rax, -2196[rbp]
	lea	rdi, -2176[rbp]
	push	rdi
	lea	rdi, -2184[rbp]
	push	rdi
	mov	rdi, rax
	call	hvline
	add	rsp, 16
	movss	xmm0, DWORD PTR -2196[rbp]
	movss	xmm1, DWORD PTR -2180[rbp]
	ucomiss	xmm0, xmm1
	jp	.L109
	ucomiss	xmm0, xmm1
	jne	.L109
	movss	xmm0, DWORD PTR -2192[rbp]
	movss	xmm1, DWORD PTR -2172[rbp]
	ucomiss	xmm0, xmm1
	jp	.L111
	ucomiss	xmm0, xmm1
	jne	.L111
	movss	xmm0, DWORD PTR -2192[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -2200[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm1
	movq	rax, xmm4
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC13[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L215
.L111:
	movss	xmm0, DWORD PTR -2192[rbp]
	movss	xmm1, DWORD PTR -2176[rbp]
	comiss	xmm0, xmm1
	jb	.L114
	movss	xmm1, DWORD PTR -2192[rbp]
	movss	xmm0, DWORD PTR -2172[rbp]
	comiss	xmm0, xmm1
	jb	.L114
	lea	rdi, .LC14[rip]
	call	puts@PLT
	jmp	.L128
.L114:
	lea	rdi, .LC15[rip]
	call	puts@PLT
	jmp	.L215
.L109:
	lea	rdi, .LC15[rip]
	call	puts@PLT
	jmp	.L215
.L107:
	lea	rcx, -2192[rbp]
	lea	rdx, -2200[rbp]
	lea	rsi, -2188[rbp]
	lea	rdi, -2196[rbp]
	movss	xmm2, DWORD PTR -2116[rbp]
	movss	xmm1, DWORD PTR -2120[rbp]
	movss	xmm0, DWORD PTR -2124[rbp]
	mov	eax, DWORD PTR -2128[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	vchecker1
	lea	rcx, -2176[rbp]
	lea	rdx, -2184[rbp]
	lea	rsi, -2172[rbp]
	lea	rdi, -2180[rbp]
	movss	xmm2, DWORD PTR -2100[rbp]
	movss	xmm1, DWORD PTR -2104[rbp]
	movss	xmm0, DWORD PTR -2108[rbp]
	mov	eax, DWORD PTR -2112[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	checker2
	movss	xmm1, DWORD PTR -2172[rbp]
	movss	xmm0, DWORD PTR -2176[rbp]
	comiss	xmm0, xmm1
	jbe	.L210
	movss	xmm0, DWORD PTR -2176[rbp]
	movss	DWORD PTR -2160[rbp], xmm0
	movss	xmm0, DWORD PTR -2172[rbp]
	movss	DWORD PTR -2156[rbp], xmm0
	jmp	.L120
.L210:
	movss	xmm0, DWORD PTR -2172[rbp]
	movss	DWORD PTR -2160[rbp], xmm0
	movss	xmm0, DWORD PTR -2176[rbp]
	movss	DWORD PTR -2156[rbp], xmm0
.L120:
	movss	xmm0, DWORD PTR -2100[rbp]
	subss	xmm0, DWORD PTR -2108[rbp]
	movss	xmm1, DWORD PTR -2104[rbp]
	subss	xmm1, DWORD PTR -2112[rbp]
	divss	xmm0, xmm1
	movss	DWORD PTR -2092[rbp], xmm0
	movss	xmm0, DWORD PTR -2092[rbp]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -2112[rbp]
	movss	xmm0, DWORD PTR -2108[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -2084[rbp], xmm0
	movss	xmm0, DWORD PTR -2196[rbp]
	movss	DWORD PTR -2080[rbp], xmm0
	movss	xmm0, DWORD PTR -2092[rbp]
	mulss	xmm0, DWORD PTR -2080[rbp]
	movss	xmm1, DWORD PTR -2084[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -2076[rbp], xmm0
	movss	xmm1, DWORD PTR -2192[rbp]
	movss	xmm0, DWORD PTR -2076[rbp]
	comiss	xmm0, xmm1
	jb	.L121
	movss	xmm0, DWORD PTR -2188[rbp]
	comiss	xmm0, DWORD PTR -2076[rbp]
	jb	.L121
	movss	xmm1, DWORD PTR -2184[rbp]
	movss	xmm0, DWORD PTR -2080[rbp]
	comiss	xmm0, xmm1
	jb	.L121
	movss	xmm0, DWORD PTR -2180[rbp]
	comiss	xmm0, DWORD PTR -2080[rbp]
	jb	.L121
	movss	xmm0, DWORD PTR -2160[rbp]
	comiss	xmm0, DWORD PTR -2076[rbp]
	jb	.L121
	movss	xmm0, DWORD PTR -2076[rbp]
	comiss	xmm0, DWORD PTR -2156[rbp]
	jb	.L121
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -2076[rbp]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, DWORD PTR -2080[rbp]
	movq	rax, xmm5
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC13[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L128
.L121:
	lea	rdi, .LC15[rip]
	call	puts@PLT
	jmp	.L215
.L105:
	movss	xmm0, DWORD PTR -2104[rbp]
	subss	xmm0, DWORD PTR -2112[rbp]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L129
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jne	.L129
	lea	rcx, -2192[rbp]
	lea	rdx, -2200[rbp]
	lea	rsi, -2188[rbp]
	lea	rdi, -2196[rbp]
	movss	xmm2, DWORD PTR -2116[rbp]
	movss	xmm1, DWORD PTR -2120[rbp]
	movss	xmm0, DWORD PTR -2124[rbp]
	mov	eax, DWORD PTR -2128[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	checker1
	lea	rcx, -2176[rbp]
	lea	rdx, -2184[rbp]
	lea	rsi, -2172[rbp]
	lea	rdi, -2180[rbp]
	movss	xmm2, DWORD PTR -2100[rbp]
	movss	xmm1, DWORD PTR -2104[rbp]
	movss	xmm0, DWORD PTR -2108[rbp]
	mov	eax, DWORD PTR -2112[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	vchecker2
	movss	xmm1, DWORD PTR -2188[rbp]
	movss	xmm0, DWORD PTR -2192[rbp]
	comiss	xmm0, xmm1
	jbe	.L211
	movss	xmm0, DWORD PTR -2192[rbp]
	movss	DWORD PTR -2152[rbp], xmm0
	movss	xmm0, DWORD PTR -2188[rbp]
	movss	DWORD PTR -2148[rbp], xmm0
	jmp	.L133
.L211:
	movss	xmm0, DWORD PTR -2188[rbp]
	movss	DWORD PTR -2152[rbp], xmm0
	movss	xmm0, DWORD PTR -2192[rbp]
	movss	DWORD PTR -2148[rbp], xmm0
.L133:
	movss	xmm0, DWORD PTR -2116[rbp]
	subss	xmm0, DWORD PTR -2124[rbp]
	movss	xmm1, DWORD PTR -2120[rbp]
	subss	xmm1, DWORD PTR -2128[rbp]
	divss	xmm0, xmm1
	movss	DWORD PTR -2096[rbp], xmm0
	movss	xmm0, DWORD PTR -2096[rbp]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -2128[rbp]
	movss	xmm0, DWORD PTR -2124[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -2088[rbp], xmm0
	movss	xmm0, DWORD PTR -2180[rbp]
	movss	DWORD PTR -2080[rbp], xmm0
	movss	xmm0, DWORD PTR -2096[rbp]
	mulss	xmm0, DWORD PTR -2080[rbp]
	movss	xmm1, DWORD PTR -2088[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -2076[rbp], xmm0
	movss	xmm1, DWORD PTR -2176[rbp]
	movss	xmm0, DWORD PTR -2076[rbp]
	comiss	xmm0, xmm1
	jb	.L134
	movss	xmm0, DWORD PTR -2172[rbp]
	comiss	xmm0, DWORD PTR -2076[rbp]
	jb	.L134
	movss	xmm1, DWORD PTR -2200[rbp]
	movss	xmm0, DWORD PTR -2080[rbp]
	comiss	xmm0, xmm1
	jb	.L134
	movss	xmm0, DWORD PTR -2196[rbp]
	comiss	xmm0, DWORD PTR -2080[rbp]
	jb	.L134
	movss	xmm0, DWORD PTR -2152[rbp]
	comiss	xmm0, DWORD PTR -2076[rbp]
	jb	.L134
	movss	xmm0, DWORD PTR -2076[rbp]
	comiss	xmm0, DWORD PTR -2148[rbp]
	jb	.L134
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -2076[rbp]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, DWORD PTR -2080[rbp]
	movq	rax, xmm6
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC13[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L128
.L134:
	lea	rdi, .LC15[rip]
	call	puts@PLT
	jmp	.L215
.L129:
	movss	xmm0, DWORD PTR -2116[rbp]
	subss	xmm0, DWORD PTR -2124[rbp]
	movss	xmm1, DWORD PTR -2120[rbp]
	subss	xmm1, DWORD PTR -2128[rbp]
	divss	xmm0, xmm1
	movss	DWORD PTR -2096[rbp], xmm0
	movss	xmm0, DWORD PTR -2100[rbp]
	subss	xmm0, DWORD PTR -2108[rbp]
	movss	xmm1, DWORD PTR -2104[rbp]
	subss	xmm1, DWORD PTR -2112[rbp]
	divss	xmm0, xmm1
	movss	DWORD PTR -2092[rbp], xmm0
	movss	xmm0, DWORD PTR -2096[rbp]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -2128[rbp]
	movss	xmm0, DWORD PTR -2124[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -2088[rbp], xmm0
	movss	xmm0, DWORD PTR -2092[rbp]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -2112[rbp]
	movss	xmm0, DWORD PTR -2108[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -2084[rbp], xmm0
	lea	rcx, -2192[rbp]
	lea	rdx, -2200[rbp]
	lea	rsi, -2188[rbp]
	lea	rdi, -2196[rbp]
	movss	xmm2, DWORD PTR -2116[rbp]
	movss	xmm1, DWORD PTR -2120[rbp]
	movss	xmm0, DWORD PTR -2124[rbp]
	mov	eax, DWORD PTR -2128[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	checker1
	lea	rcx, -2176[rbp]
	lea	rdx, -2184[rbp]
	lea	rsi, -2172[rbp]
	lea	rdi, -2180[rbp]
	movss	xmm2, DWORD PTR -2100[rbp]
	movss	xmm1, DWORD PTR -2104[rbp]
	movss	xmm0, DWORD PTR -2108[rbp]
	mov	eax, DWORD PTR -2112[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	checker2
	lea	r9, -2172[rbp]
	lea	r8, -2180[rbp]
	lea	rcx, -2192[rbp]
	lea	rdx, -2200[rbp]
	lea	rsi, -2188[rbp]
	lea	rax, -2196[rbp]
	lea	rdi, -2176[rbp]
	push	rdi
	lea	rdi, -2184[rbp]
	push	rdi
	mov	rdi, rax
	call	hline
	add	rsp, 16
	movss	xmm0, DWORD PTR -2096[rbp]
	ucomiss	xmm0, DWORD PTR -2092[rbp]
	jp	.L142
	movss	xmm0, DWORD PTR -2096[rbp]
	ucomiss	xmm0, DWORD PTR -2092[rbp]
	jne	.L142
	movss	xmm0, DWORD PTR -2088[rbp]
	ucomiss	xmm0, DWORD PTR -2084[rbp]
	jp	.L144
	movss	xmm0, DWORD PTR -2088[rbp]
	ucomiss	xmm0, DWORD PTR -2084[rbp]
	jne	.L144
	movss	xmm0, DWORD PTR -2200[rbp]
	movss	xmm1, DWORD PTR -2196[rbp]
	ucomiss	xmm0, xmm1
	jp	.L146
	ucomiss	xmm0, xmm1
	jne	.L146
	movss	xmm0, DWORD PTR -2192[rbp]
	movss	xmm1, DWORD PTR -2172[rbp]
	ucomiss	xmm0, xmm1
	jp	.L146
	ucomiss	xmm0, xmm1
	jne	.L146
	movss	xmm0, DWORD PTR -2192[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -2200[rbp]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm1
	movq	rax, xmm7
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC13[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L128
.L146:
	movss	xmm0, DWORD PTR -2200[rbp]
	movss	xmm1, DWORD PTR -2184[rbp]
	comiss	xmm0, xmm1
	jb	.L150
	movss	xmm1, DWORD PTR -2200[rbp]
	movss	xmm0, DWORD PTR -2180[rbp]
	comiss	xmm0, xmm1
	jb	.L150
	lea	rdi, .LC14[rip]
	call	puts@PLT
	jmp	.L128
.L150:
	lea	rdi, .LC15[rip]
	call	puts@PLT
	jmp	.L215
.L144:
	lea	rdi, .LC15[rip]
	call	puts@PLT
	jmp	.L215
.L142:
	movss	xmm0, DWORD PTR -2084[rbp]
	subss	xmm0, DWORD PTR -2088[rbp]
	movss	xmm1, DWORD PTR -2096[rbp]
	subss	xmm1, DWORD PTR -2092[rbp]
	divss	xmm0, xmm1
	movss	DWORD PTR -2080[rbp], xmm0
	movss	xmm0, DWORD PTR -2096[rbp]
	mulss	xmm0, DWORD PTR -2080[rbp]
	movss	xmm1, DWORD PTR -2088[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -2076[rbp], xmm0
	movss	xmm1, DWORD PTR -2188[rbp]
	movss	xmm0, DWORD PTR -2192[rbp]
	comiss	xmm0, xmm1
	jbe	.L212
	movss	xmm0, DWORD PTR -2192[rbp]
	movss	DWORD PTR -2144[rbp], xmm0
	movss	xmm0, DWORD PTR -2188[rbp]
	movss	DWORD PTR -2140[rbp], xmm0
	jmp	.L155
.L212:
	movss	xmm0, DWORD PTR -2188[rbp]
	movss	DWORD PTR -2144[rbp], xmm0
	movss	xmm0, DWORD PTR -2192[rbp]
	movss	DWORD PTR -2140[rbp], xmm0
.L155:
	movss	xmm1, DWORD PTR -2172[rbp]
	movss	xmm0, DWORD PTR -2176[rbp]
	comiss	xmm0, xmm1
	jbe	.L213
	movss	xmm0, DWORD PTR -2176[rbp]
	movss	DWORD PTR -2136[rbp], xmm0
	movss	xmm0, DWORD PTR -2172[rbp]
	movss	DWORD PTR -2132[rbp], xmm0
	jmp	.L158
.L213:
	movss	xmm0, DWORD PTR -2172[rbp]
	movss	DWORD PTR -2136[rbp], xmm0
	movss	xmm0, DWORD PTR -2176[rbp]
	movss	DWORD PTR -2132[rbp], xmm0
.L158:
	movss	xmm0, DWORD PTR -2128[rbp]
	comiss	xmm0, DWORD PTR -2120[rbp]
	jbe	.L214
	movss	xmm0, DWORD PTR -2128[rbp]
	movss	DWORD PTR -2072[rbp], xmm0
	movss	xmm0, DWORD PTR -2120[rbp]
	movss	DWORD PTR -2068[rbp], xmm0
	jmp	.L161
.L214:
	movss	xmm0, DWORD PTR -2120[rbp]
	movss	DWORD PTR -2072[rbp], xmm0
	movss	xmm0, DWORD PTR -2128[rbp]
	movss	DWORD PTR -2068[rbp], xmm0
.L161:
	movss	xmm0, DWORD PTR -2196[rbp]
	comiss	xmm0, DWORD PTR -2080[rbp]
	jb	.L162
	movss	xmm1, DWORD PTR -2200[rbp]
	movss	xmm0, DWORD PTR -2080[rbp]
	comiss	xmm0, xmm1
	jb	.L162
	movss	xmm0, DWORD PTR -2180[rbp]
	comiss	xmm0, DWORD PTR -2080[rbp]
	jb	.L162
	movss	xmm1, DWORD PTR -2184[rbp]
	movss	xmm0, DWORD PTR -2080[rbp]
	comiss	xmm0, xmm1
	jb	.L162
	movss	xmm0, DWORD PTR -2144[rbp]
	comiss	xmm0, DWORD PTR -2076[rbp]
	jb	.L162
	movss	xmm0, DWORD PTR -2076[rbp]
	comiss	xmm0, DWORD PTR -2140[rbp]
	jb	.L162
	movss	xmm0, DWORD PTR -2136[rbp]
	comiss	xmm0, DWORD PTR -2076[rbp]
	jb	.L162
	movss	xmm0, DWORD PTR -2076[rbp]
	comiss	xmm0, DWORD PTR -2132[rbp]
	jb	.L162
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -2076[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, DWORD PTR -2080[rbp]
	movq	rax, xmm4
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC16[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L128
.L162:
	lea	rdi, .LC15[rip]
	call	puts@PLT
	jmp	.L215
.L128:
.L215:
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L171
	call	__stack_chk_fail@PLT
.L171:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE25:
	.size	Problem2, .-Problem2
	.section	.rodata
	.align 8
.LC17:
	.string	"Problem 3: Given an input n, the program will print out its prime factorization."
.LC18:
	.string	"The output is: %lld = "
.LC19:
	.string	"^%d"
.LC20:
	.string	" x "
	.text
	.globl	Problem3
	.type	Problem3, @function
Problem3:
.LFB26:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -48[rbp], 0
	mov	DWORD PTR -44[rbp], 0
	lea	rdi, .LC17[rip]
	call	puts@PLT
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -40[rbp]
	mov	rsi, rax
	lea	rdi, .LC7[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	QWORD PTR -16[rbp], 2
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rax
	lea	rdi, .LC18[rip]
	mov	eax, 0
	call	printf@PLT
	mov	QWORD PTR -32[rbp], 2
	jmp	.L217
.L230:
	mov	QWORD PTR -24[rbp], 2
	jmp	.L218
.L221:
	mov	rax, QWORD PTR -32[rbp]
	cqo
	idiv	QWORD PTR -24[rbp]
	mov	rax, rdx
	test	rax, rax
	je	.L232
	add	QWORD PTR -24[rbp], 1
.L218:
	mov	rax, QWORD PTR -32[rbp]
	cqo
	idiv	QWORD PTR -24[rbp]
	cmp	QWORD PTR -24[rbp], rax
	jle	.L221
	jmp	.L220
.L232:
	nop
.L220:
	mov	rax, QWORD PTR -32[rbp]
	cqo
	idiv	QWORD PTR -24[rbp]
	cmp	QWORD PTR -24[rbp], rax
	jle	.L222
	jmp	.L223
.L229:
	mov	rax, QWORD PTR -40[rbp]
	cqo
	idiv	QWORD PTR -32[rbp]
	mov	rax, rdx
	test	rax, rax
	jne	.L233
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -32[rbp]
	jne	.L225
	jmp	.L226
.L227:
	add	DWORD PTR -48[rbp], 1
	mov	rax, QWORD PTR -40[rbp]
	cqo
	idiv	QWORD PTR -32[rbp]
	mov	QWORD PTR -40[rbp], rax
.L226:
	mov	rax, QWORD PTR -40[rbp]
	cqo
	idiv	QWORD PTR -32[rbp]
	mov	rax, rdx
	test	rax, rax
	je	.L227
	cmp	DWORD PTR -44[rbp], 0
	jne	.L228
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	lea	rdi, .LC7[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -44[rbp], 1
.L228:
	cmp	DWORD PTR -48[rbp], 1
	jle	.L223
	mov	eax, DWORD PTR -48[rbp]
	mov	esi, eax
	lea	rdi, .LC19[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L223
.L225:
	mov	DWORD PTR -48[rbp], 0
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -44[rbp], 0
	lea	rdi, .LC20[rip]
	mov	eax, 0
	call	printf@PLT
	nop
.L223:
	mov	rax, QWORD PTR -40[rbp]
	test	rax, rax
	jg	.L229
	jmp	.L222
.L233:
	nop
.L222:
	add	QWORD PTR -32[rbp], 1
.L217:
	cmp	QWORD PTR -32[rbp], 99999
	jle	.L230
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L231
	call	__stack_chk_fail@PLT
.L231:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE26:
	.size	Problem3, .-Problem3
	.section	.rodata
	.align 8
.LC21:
	.string	"Problem 7: Given a number n, all the fractions less than 1, such that n is the denominator, is printed (in lowest terms)."
.LC22:
	.string	"Enter n: "
.LC23:
	.string	"The output is: 1/%d"
.LC24:
	.string	", %d/%d"
	.text
	.globl	Problem7
	.type	Problem7, @function
Problem7:
.LFB27:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 3952
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -8028[rbp], 0
	lea	rdi, .LC21[rip]
	call	puts@PLT
	lea	rdi, .LC22[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -8040[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	DWORD PTR -8036[rbp], 2
	jmp	.L235
.L241:
	mov	DWORD PTR -8032[rbp], 2
	jmp	.L236
.L239:
	mov	eax, DWORD PTR -8036[rbp]
	cdq
	idiv	DWORD PTR -8032[rbp]
	mov	eax, edx
	test	eax, eax
	je	.L252
	add	DWORD PTR -8032[rbp], 1
.L236:
	mov	eax, DWORD PTR -8036[rbp]
	cdq
	idiv	DWORD PTR -8032[rbp]
	cmp	DWORD PTR -8032[rbp], eax
	jle	.L239
	jmp	.L238
.L252:
	nop
.L238:
	mov	eax, DWORD PTR -8036[rbp]
	cdq
	idiv	DWORD PTR -8032[rbp]
	cmp	DWORD PTR -8032[rbp], eax
	jle	.L240
	mov	eax, DWORD PTR -8040[rbp]
	cdq
	idiv	DWORD PTR -8036[rbp]
	mov	eax, edx
	test	eax, eax
	jne	.L240
	mov	eax, DWORD PTR -8028[rbp]
	cdqe
	mov	edx, DWORD PTR -8036[rbp]
	mov	DWORD PTR -8016[rbp+rax*4], edx
	add	DWORD PTR -8028[rbp], 1
.L240:
	add	DWORD PTR -8036[rbp], 1
.L235:
	cmp	DWORD PTR -8036[rbp], 99999
	jle	.L241
	mov	eax, DWORD PTR -8028[rbp]
	mov	DWORD PTR -8020[rbp], eax
	mov	DWORD PTR -8024[rbp], 2
	mov	DWORD PTR -8036[rbp], 0
	jmp	.L242
.L243:
	mov	eax, DWORD PTR -8036[rbp]
	cdqe
	mov	edx, DWORD PTR -8024[rbp]
	mov	DWORD PTR -4016[rbp+rax*4], edx
	add	DWORD PTR -8024[rbp], 1
	add	DWORD PTR -8036[rbp], 1
.L242:
	mov	eax, DWORD PTR -8040[rbp]
	sub	eax, 2
	cmp	DWORD PTR -8036[rbp], eax
	jl	.L243
	mov	eax, DWORD PTR -8040[rbp]
	mov	esi, eax
	lea	rdi, .LC23[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -8036[rbp], 0
	jmp	.L244
.L250:
	mov	DWORD PTR -8028[rbp], 0
	jmp	.L245
.L249:
	mov	eax, DWORD PTR -8036[rbp]
	cdqe
	mov	eax, DWORD PTR -4016[rbp+rax*4]
	mov	edx, DWORD PTR -8028[rbp]
	movsx	rdx, edx
	mov	ecx, DWORD PTR -8016[rbp+rdx*4]
	cdq
	idiv	ecx
	mov	eax, edx
	test	eax, eax
	je	.L253
	mov	eax, DWORD PTR -8028[rbp]
	add	eax, 1
	cmp	DWORD PTR -8020[rbp], eax
	jne	.L248
	mov	edx, DWORD PTR -8040[rbp]
	mov	eax, DWORD PTR -8036[rbp]
	cdqe
	mov	eax, DWORD PTR -4016[rbp+rax*4]
	mov	esi, eax
	lea	rdi, .LC24[rip]
	mov	eax, 0
	call	printf@PLT
.L248:
	add	DWORD PTR -8028[rbp], 1
.L245:
	mov	eax, DWORD PTR -8028[rbp]
	cmp	eax, DWORD PTR -8020[rbp]
	jl	.L249
	jmp	.L247
.L253:
	nop
.L247:
	add	DWORD PTR -8036[rbp], 1
.L244:
	mov	eax, DWORD PTR -8040[rbp]
	sub	eax, 2
	cmp	DWORD PTR -8036[rbp], eax
	jl	.L250
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L251
	call	__stack_chk_fail@PLT
.L251:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	Problem7, .-Problem7
	.section	.rodata
	.align 8
.LC25:
	.string	"Problem 10: Given n, print its resulting roman numeral equivalence."
.LC26:
	.string	"CM"
.LC27:
	.string	"CD"
.LC28:
	.string	"XC"
.LC29:
	.string	"XL"
.LC30:
	.string	"IX"
.LC31:
	.string	"IV"
	.text
	.globl	Problem10
	.type	Problem10, @function
Problem10:
.LFB28:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -16[rbp], 1
	lea	rdi, .LC25[rip]
	call	puts@PLT
	lea	rdi, .LC22[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -20[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 99
	jle	.L255
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 900
	cmp	eax, 99
	ja	.L256
	lea	rdi, .LC26[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L257
.L256:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 499
	jle	.L258
	mov	edi, 68
	call	putchar@PLT
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 599
	jle	.L257
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 899
	jg	.L257
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, 1374389535
	shr	rdx, 32
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	sub	eax, 5
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -16[rbp], 1
	jmp	.L259
.L260:
	mov	edi, 67
	call	putchar@PLT
	add	DWORD PTR -16[rbp], 1
.L259:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -12[rbp]
	jle	.L260
	jmp	.L257
.L258:
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 400
	cmp	eax, 99
	ja	.L261
	lea	rdi, .LC27[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L257
.L261:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 99
	jle	.L257
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, 1374389535
	shr	rdx, 32
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -16[rbp], 1
	jmp	.L262
.L263:
	mov	edi, 67
	call	putchar@PLT
	add	DWORD PTR -16[rbp], 1
.L262:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -12[rbp]
	jle	.L263
.L257:
	mov	edx, DWORD PTR -20[rbp]
	movsx	rax, edx
	imul	rax, rax, 1374389535
	shr	rax, 32
	sar	eax, 5
	mov	ecx, edx
	sar	ecx, 31
	sub	eax, ecx
	imul	ecx, eax, 100
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -20[rbp], eax
.L255:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 9
	jle	.L264
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 90
	cmp	eax, 9
	ja	.L265
	lea	rdi, .LC28[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L266
.L265:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 49
	jle	.L267
	mov	edi, 76
	call	putchar@PLT
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 59
	jle	.L266
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 89
	jg	.L266
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, 1717986919
	shr	rdx, 32
	sar	edx, 2
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	sub	eax, 5
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -16[rbp], 1
	jmp	.L268
.L269:
	mov	edi, 88
	call	putchar@PLT
	add	DWORD PTR -16[rbp], 1
.L268:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -12[rbp]
	jle	.L269
	jmp	.L266
.L267:
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 40
	cmp	eax, 9
	ja	.L270
	lea	rdi, .LC29[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L266
.L270:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 9
	jle	.L266
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, 1717986919
	shr	rdx, 32
	sar	edx, 2
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -16[rbp], 1
	jmp	.L271
.L272:
	mov	edi, 88
	call	putchar@PLT
	add	DWORD PTR -16[rbp], 1
.L271:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -12[rbp]
	jle	.L272
.L266:
	mov	ecx, DWORD PTR -20[rbp]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 2
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	sub	ecx, eax
	mov	edx, ecx
	mov	DWORD PTR -20[rbp], edx
.L264:
	mov	eax, DWORD PTR -20[rbp]
	test	eax, eax
	jle	.L273
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 9
	jne	.L274
	lea	rdi, .LC30[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L273
.L274:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 4
	jle	.L275
	mov	edi, 86
	call	putchar@PLT
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 5
	jle	.L273
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 8
	jg	.L273
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 5
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -16[rbp], 1
	jmp	.L276
.L277:
	mov	edi, 73
	call	putchar@PLT
	add	DWORD PTR -16[rbp], 1
.L276:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -12[rbp]
	jle	.L277
	jmp	.L273
.L275:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, 4
	jne	.L278
	lea	rdi, .LC31[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L273
.L278:
	mov	eax, DWORD PTR -20[rbp]
	test	eax, eax
	jle	.L273
	mov	eax, DWORD PTR -20[rbp]
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -16[rbp], 1
	jmp	.L279
.L280:
	mov	edi, 73
	call	putchar@PLT
	add	DWORD PTR -16[rbp], 1
.L279:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -12[rbp]
	jle	.L280
.L273:
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L281
	call	__stack_chk_fail@PLT
.L281:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	Problem10, .-Problem10
	.section	.rodata
	.align 8
.LC32:
	.string	"Problem 12: Given a peso amount, print out its equivalent standard peso currency using the least number of denominations."
.LC33:
	.string	"Enter a peso amount: "
.LC34:
	.string	"%lf"
.LC35:
	.string	"The output is: %.2lf = "
.LC37:
	.string	"(%d) 1000 "
.LC39:
	.string	"(%d) 500 "
.LC40:
	.string	"+ (%d) 500 "
.LC42:
	.string	"(%d) 200 "
.LC43:
	.string	"+ (%d) 200 "
.LC45:
	.string	"(%d) 100"
.LC46:
	.string	"+ (%d) 100 "
.LC48:
	.string	"(%d) 50 "
.LC49:
	.string	"+ (%d) 50 "
.LC51:
	.string	"(%d) 20 "
.LC52:
	.string	"+ (%d) 20 "
.LC54:
	.string	"(%d) 10 "
.LC55:
	.string	"+ (%d) 10 "
.LC57:
	.string	"(%d) 5 "
.LC58:
	.string	"+ (%d) 5 "
.LC60:
	.string	"(%d) 1 "
.LC61:
	.string	"+ (%d) 1 "
.LC63:
	.string	"(%.0lf) 0.25 "
.LC64:
	.string	"+ (%.0lf) 0.25 "
.LC66:
	.string	"(%.0lf) 0.10 "
.LC67:
	.string	"+ (%.0lf) 0.10 "
.LC69:
	.string	"(%.0lf) 0.05 "
.LC70:
	.string	"+ (%.0lf) 0.05 "
.LC72:
	.string	"(%.0lf) 0.01 "
.LC73:
	.string	"+ (%.0lf) 0.01 "
	.text
	.globl	Problem12
	.type	Problem12, @function
Problem12:
.LFB29:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 96
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -88[rbp], 0
	lea	rdi, .LC32[rip]
	call	puts@PLT
	lea	rdi, .LC33[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -48[rbp]
	mov	rsi, rax
	lea	rdi, .LC34[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	rax, QWORD PTR -48[rbp]
	movq	xmm0, rax
	lea	rdi, .LC35[rip]
	mov	eax, 1
	call	printf@PLT
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC36[rip]
	jb	.L283
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	eax, xmm0
	movsx	rdx, eax
	imul	rdx, rdx, 274877907
	shr	rdx, 32
	sar	edx, 6
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -84[rbp], eax
	mov	eax, DWORD PTR -84[rbp]
	mov	esi, eax
	lea	rdi, .LC37[rip]
	mov	eax, 0
	call	printf@PLT
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -84[rbp]
	imul	eax, eax, 1000
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
	add	DWORD PTR -88[rbp], 1
.L283:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC38[rip]
	jb	.L285
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	eax, xmm0
	movsx	rdx, eax
	imul	rdx, rdx, 274877907
	shr	rdx, 32
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -80[rbp], eax
	cmp	DWORD PTR -88[rbp], 0
	jne	.L287
	mov	eax, DWORD PTR -80[rbp]
	mov	esi, eax
	lea	rdi, .LC39[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L288
.L287:
	mov	eax, DWORD PTR -80[rbp]
	mov	esi, eax
	lea	rdi, .LC40[rip]
	mov	eax, 0
	call	printf@PLT
.L288:
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -80[rbp]
	imul	eax, eax, 500
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L285:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC41[rip]
	jb	.L289
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	eax, xmm0
	movsx	rdx, eax
	imul	rdx, rdx, 1374389535
	shr	rdx, 32
	sar	edx, 6
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -76[rbp], eax
	cmp	DWORD PTR -88[rbp], 0
	jne	.L291
	mov	eax, DWORD PTR -76[rbp]
	mov	esi, eax
	lea	rdi, .LC42[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L292
.L291:
	mov	eax, DWORD PTR -76[rbp]
	mov	esi, eax
	lea	rdi, .LC43[rip]
	mov	eax, 0
	call	printf@PLT
.L292:
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -76[rbp]
	imul	eax, eax, 200
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L289:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC44[rip]
	jb	.L293
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	eax, xmm0
	movsx	rdx, eax
	imul	rdx, rdx, 1374389535
	shr	rdx, 32
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -72[rbp], eax
	cmp	DWORD PTR -88[rbp], 0
	jne	.L295
	mov	eax, DWORD PTR -72[rbp]
	mov	esi, eax
	lea	rdi, .LC45[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L296
.L295:
	mov	eax, DWORD PTR -72[rbp]
	mov	esi, eax
	lea	rdi, .LC46[rip]
	mov	eax, 0
	call	printf@PLT
.L296:
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -72[rbp]
	imul	eax, eax, 100
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L293:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC47[rip]
	jb	.L297
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	eax, xmm0
	movsx	rdx, eax
	imul	rdx, rdx, 1374389535
	shr	rdx, 32
	sar	edx, 4
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -68[rbp], eax
	cmp	DWORD PTR -88[rbp], 0
	jne	.L299
	mov	eax, DWORD PTR -68[rbp]
	mov	esi, eax
	lea	rdi, .LC48[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L300
.L299:
	mov	eax, DWORD PTR -68[rbp]
	mov	esi, eax
	lea	rdi, .LC49[rip]
	mov	eax, 0
	call	printf@PLT
.L300:
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -68[rbp]
	imul	eax, eax, 50
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L297:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC50[rip]
	jb	.L301
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	eax, xmm0
	movsx	rdx, eax
	imul	rdx, rdx, 1717986919
	shr	rdx, 32
	sar	edx, 3
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -64[rbp], eax
	cmp	DWORD PTR -88[rbp], 0
	jne	.L303
	mov	eax, DWORD PTR -64[rbp]
	mov	esi, eax
	lea	rdi, .LC51[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L304
.L303:
	mov	eax, DWORD PTR -64[rbp]
	mov	esi, eax
	lea	rdi, .LC52[rip]
	mov	eax, 0
	call	printf@PLT
.L304:
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -64[rbp]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L301:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC53[rip]
	jb	.L305
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	eax, xmm0
	movsx	rdx, eax
	imul	rdx, rdx, 1717986919
	shr	rdx, 32
	sar	edx, 2
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -60[rbp], eax
	cmp	DWORD PTR -88[rbp], 0
	jne	.L307
	mov	eax, DWORD PTR -60[rbp]
	mov	esi, eax
	lea	rdi, .LC54[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L308
.L307:
	mov	eax, DWORD PTR -60[rbp]
	mov	esi, eax
	lea	rdi, .LC55[rip]
	mov	eax, 0
	call	printf@PLT
.L308:
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -60[rbp]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L305:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC56[rip]
	jb	.L309
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	eax, xmm0
	movsx	rdx, eax
	imul	rdx, rdx, 1717986919
	shr	rdx, 32
	sar	edx
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -56[rbp], eax
	cmp	DWORD PTR -88[rbp], 0
	jne	.L311
	mov	eax, DWORD PTR -56[rbp]
	mov	esi, eax
	lea	rdi, .LC57[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L312
.L311:
	mov	eax, DWORD PTR -56[rbp]
	mov	esi, eax
	lea	rdi, .LC58[rip]
	mov	eax, 0
	call	printf@PLT
.L312:
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -56[rbp]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L309:
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm1, QWORD PTR .LC59[rip]
	comisd	xmm0, xmm1
	jb	.L313
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	eax, xmm0
	mov	DWORD PTR -52[rbp], eax
	cmp	DWORD PTR -88[rbp], 0
	jne	.L315
	mov	eax, DWORD PTR -52[rbp]
	mov	esi, eax
	lea	rdi, .LC60[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L316
.L315:
	mov	eax, DWORD PTR -52[rbp]
	mov	esi, eax
	lea	rdi, .LC61[rip]
	mov	eax, 0
	call	printf@PLT
.L316:
	movsd	xmm0, QWORD PTR -48[rbp]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -52[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L313:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC62[rip]
	jb	.L317
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm1, QWORD PTR .LC62[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -40[rbp], xmm0
	cmp	DWORD PTR -88[rbp], 0
	jne	.L319
	mov	rax, QWORD PTR -40[rbp]
	movq	xmm0, rax
	lea	rdi, .LC63[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L320
.L319:
	mov	rax, QWORD PTR -40[rbp]
	movq	xmm0, rax
	lea	rdi, .LC64[rip]
	mov	eax, 1
	call	printf@PLT
.L320:
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm2, QWORD PTR -40[rbp]
	movsd	xmm1, QWORD PTR .LC62[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L317:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC65[rip]
	jb	.L321
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm1, QWORD PTR .LC65[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	cmp	DWORD PTR -88[rbp], 0
	jne	.L323
	mov	rax, QWORD PTR -32[rbp]
	movq	xmm0, rax
	lea	rdi, .LC66[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L324
.L323:
	mov	rax, QWORD PTR -32[rbp]
	movq	xmm0, rax
	lea	rdi, .LC67[rip]
	mov	eax, 1
	call	printf@PLT
.L324:
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm2, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR .LC65[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L321:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC68[rip]
	jb	.L325
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm1, QWORD PTR .LC68[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -88[rbp], 0
	jne	.L327
	mov	rax, QWORD PTR -24[rbp]
	movq	xmm0, rax
	lea	rdi, .LC69[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -88[rbp], 1
	jmp	.L328
.L327:
	mov	rax, QWORD PTR -24[rbp]
	movq	xmm0, rax
	lea	rdi, .LC70[rip]
	mov	eax, 1
	call	printf@PLT
.L328:
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm2, QWORD PTR -24[rbp]
	movsd	xmm1, QWORD PTR .LC68[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L325:
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, QWORD PTR .LC71[rip]
	jb	.L329
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm1, QWORD PTR .LC71[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	cmp	DWORD PTR -88[rbp], 0
	jne	.L331
	mov	rax, QWORD PTR -16[rbp]
	movq	xmm0, rax
	lea	rdi, .LC72[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L332
.L331:
	mov	rax, QWORD PTR -16[rbp]
	movq	xmm0, rax
	lea	rdi, .LC73[rip]
	mov	eax, 1
	call	printf@PLT
.L332:
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm2, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR .LC71[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
.L329:
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L333
	call	__stack_chk_fail@PLT
.L333:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	Problem12, .-Problem12
	.section	.rodata
	.align 8
.LC74:
	.string	"Problem 14: Given a number in decimal, the program will print out its equivalent number in base b."
.LC75:
	.string	"Enter number: "
.LC76:
	.string	"Enter base: "
	.text
	.globl	Problem14
	.type	Problem14, @function
Problem14:
.LFB30:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	QWORD PTR -24[rbp], 0
	lea	rdi, .LC74[rip]
	call	puts@PLT
	lea	rdi, .LC75[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -32[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC76[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -36[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L348
.L349:
	mov	eax, DWORD PTR -32[rbp]
	mov	ecx, DWORD PTR -36[rbp]
	cdq
	idiv	ecx
	mov	DWORD PTR -28[rbp], edx
	mov	edx, DWORD PTR -28[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	add_num14
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR -32[rbp]
	mov	ecx, DWORD PTR -36[rbp]
	cdq
	idiv	ecx
	mov	DWORD PTR -32[rbp], eax
.L348:
	mov	eax, DWORD PTR -32[rbp]
	test	eax, eax
	jne	.L349
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -16[rbp], rax
	jmp	.L350
.L351:
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	mov	esi, eax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -16[rbp], rax
.L350:
	cmp	QWORD PTR -16[rbp], 0
	jne	.L351
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L352
	call	__stack_chk_fail@PLT
.L352:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	Problem14, .-Problem14
	.section	.rodata
	.align 8
.LC77:
	.string	"Problem 15: Given n numbers, the program will print out the sorted numbers in increasing order."
.LC78:
	.string	"Input n: "
	.align 8
.LC79:
	.string	"Input %d numbers (separated by a comma): "
	.text
	.globl	Problem15
	.type	Problem15, @function
Problem15:
.LFB31:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 2056
	.cfi_offset 3, -24
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	QWORD PTR -1024[rbp], 0
	mov	QWORD PTR -1016[rbp], 0
	lea	rdx, -1008[rbp]
	mov	eax, 0
	mov	ecx, 123
	mov	rdi, rdx
	rep stosq
	mov	QWORD PTR -2048[rbp], 0
	lea	rdi, .LC77[rip]
	call	puts@PLT
	lea	rdi, .LC78[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -2056[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	call	getchar@PLT
	mov	eax, DWORD PTR -2056[rbp]
	mov	esi, eax
	lea	rdi, .LC79[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rdx, QWORD PTR stdin[rip]
	lea	rax, -2032[rbp]
	mov	esi, 1000
	mov	rdi, rax
	call	fgets@PLT
	lea	rax, -2032[rbp]
	mov	rdi, rax
	call	strlen@PLT
	sub	rax, 1
	mov	BYTE PTR -2032[rbp+rax], 0
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -2052[rbp], 0
	jmp	.L354
.L357:
	lea	rdx, -2032[rbp]
	mov	eax, DWORD PTR -2052[rbp]
	cdqe
	lea	rcx, [rdx+rax]
	lea	rax, -1024[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	rdi, rax
	call	strncat@PLT
	add	DWORD PTR -2052[rbp], 1
.L355:
	mov	eax, DWORD PTR -2052[rbp]
	cdqe
	movzx	eax, BYTE PTR -2032[rbp+rax]
	cmp	al, 44
	je	.L356
	mov	eax, DWORD PTR -2052[rbp]
	movsx	rbx, eax
	lea	rax, -2032[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rbx, rax
	jb	.L357
.L356:
	cmp	QWORD PTR -2048[rbp], 0
	jne	.L358
	lea	rdx, -1024[rbp]
	mov	rcx, QWORD PTR -2040[rbp]
	mov	rax, QWORD PTR -2048[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	create_list15
	mov	QWORD PTR -2048[rbp], rax
	lea	rax, -1024[rbp]
	mov	edx, 1000
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	jmp	.L359
.L358:
	lea	rdx, -1024[rbp]
	mov	rcx, QWORD PTR -2040[rbp]
	mov	rax, QWORD PTR -2048[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	add_num15
	mov	QWORD PTR -2048[rbp], rax
	lea	rax, -1024[rbp]
	mov	edx, 1000
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
.L359:
	add	DWORD PTR -2052[rbp], 1
.L354:
	mov	eax, DWORD PTR -2052[rbp]
	movsx	rbx, eax
	lea	rax, -2032[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rbx, rax
	jb	.L355
	jmp	.L361
.L362:
	mov	rax, QWORD PTR -2048[rbp]
	mov	QWORD PTR -2040[rbp], rax
	mov	rdx, QWORD PTR -2040[rbp]
	mov	rax, QWORD PTR -2048[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	getLowest15
	mov	QWORD PTR -2048[rbp], rax
.L361:
	cmp	QWORD PTR -2048[rbp], 0
	jne	.L362
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L363
	call	__stack_chk_fail@PLT
.L363:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	Problem15, .-Problem15
	.section	.rodata
	.align 8
.LC80:
	.string	"Problem 18: Given a string, the program will print out its keypad press equivalent."
.LC81:
	.string	"Enter a sentence: "
	.text
	.globl	Problem18
	.type	Problem18, @function
Problem18:
.LFB32:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 1032
	.cfi_offset 3, -24
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	lea	rdi, .LC80[rip]
	call	puts@PLT
	lea	rdi, .LC81[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rdx, QWORD PTR stdin[rip]
	lea	rax, -1024[rbp]
	mov	esi, 1000
	mov	rdi, rax
	call	fgets@PLT
	lea	rax, -1024[rbp]
	mov	rdi, rax
	call	strlen@PLT
	sub	rax, 1
	mov	BYTE PTR -1024[rbp+rax], 0
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -1032[rbp], 0
	jmp	.L365
.L391:
	mov	eax, DWORD PTR -1032[rbp]
	cdqe
	movzx	eax, BYTE PTR -1024[rbp+rax]
	cmp	al, 32
	jne	.L366
	mov	edi, 48
	call	putchar@PLT
	jmp	.L367
.L366:
	mov	eax, DWORD PTR -1032[rbp]
	cdqe
	movzx	eax, BYTE PTR -1024[rbp+rax]
	movsx	eax, al
	mov	DWORD PTR -1028[rbp], eax
	cmp	DWORD PTR -1028[rbp], 96
	jle	.L368
	cmp	DWORD PTR -1028[rbp], 99
	jg	.L368
	sub	DWORD PTR -1028[rbp], 96
	jmp	.L369
.L370:
	mov	edi, 50
	call	putchar@PLT
	sub	DWORD PTR -1028[rbp], 1
.L369:
	cmp	DWORD PTR -1028[rbp], 0
	jne	.L370
	jmp	.L367
.L368:
	cmp	DWORD PTR -1028[rbp], 99
	jle	.L371
	cmp	DWORD PTR -1028[rbp], 102
	jg	.L371
	sub	DWORD PTR -1028[rbp], 99
	jmp	.L372
.L373:
	mov	edi, 51
	call	putchar@PLT
	sub	DWORD PTR -1028[rbp], 1
.L372:
	cmp	DWORD PTR -1028[rbp], 0
	jne	.L373
	jmp	.L367
.L371:
	cmp	DWORD PTR -1028[rbp], 102
	jle	.L374
	cmp	DWORD PTR -1028[rbp], 105
	jg	.L374
	sub	DWORD PTR -1028[rbp], 102
	jmp	.L375
.L376:
	mov	edi, 52
	call	putchar@PLT
	sub	DWORD PTR -1028[rbp], 1
.L375:
	cmp	DWORD PTR -1028[rbp], 0
	jne	.L376
	jmp	.L367
.L374:
	cmp	DWORD PTR -1028[rbp], 105
	jle	.L377
	cmp	DWORD PTR -1028[rbp], 108
	jg	.L377
	sub	DWORD PTR -1028[rbp], 105
	jmp	.L378
.L379:
	mov	edi, 53
	call	putchar@PLT
	sub	DWORD PTR -1028[rbp], 1
.L378:
	cmp	DWORD PTR -1028[rbp], 0
	jne	.L379
	jmp	.L367
.L377:
	cmp	DWORD PTR -1028[rbp], 108
	jle	.L380
	cmp	DWORD PTR -1028[rbp], 111
	jg	.L380
	sub	DWORD PTR -1028[rbp], 108
	jmp	.L381
.L382:
	mov	edi, 54
	call	putchar@PLT
	sub	DWORD PTR -1028[rbp], 1
.L381:
	cmp	DWORD PTR -1028[rbp], 0
	jne	.L382
	jmp	.L367
.L380:
	cmp	DWORD PTR -1028[rbp], 111
	jle	.L383
	cmp	DWORD PTR -1028[rbp], 115
	jg	.L383
	sub	DWORD PTR -1028[rbp], 111
	jmp	.L384
.L385:
	mov	edi, 55
	call	putchar@PLT
	sub	DWORD PTR -1028[rbp], 1
.L384:
	cmp	DWORD PTR -1028[rbp], 0
	jne	.L385
	jmp	.L367
.L383:
	cmp	DWORD PTR -1028[rbp], 115
	jle	.L386
	cmp	DWORD PTR -1028[rbp], 118
	jg	.L386
	sub	DWORD PTR -1028[rbp], 115
	jmp	.L387
.L388:
	mov	edi, 56
	call	putchar@PLT
	sub	DWORD PTR -1028[rbp], 1
.L387:
	cmp	DWORD PTR -1028[rbp], 0
	jne	.L388
	jmp	.L367
.L386:
	cmp	DWORD PTR -1028[rbp], 118
	jle	.L367
	cmp	DWORD PTR -1028[rbp], 122
	jg	.L367
	sub	DWORD PTR -1028[rbp], 118
	jmp	.L389
.L390:
	mov	edi, 57
	call	putchar@PLT
	sub	DWORD PTR -1028[rbp], 1
.L389:
	cmp	DWORD PTR -1028[rbp], 0
	jne	.L390
	nop
.L367:
	add	DWORD PTR -1032[rbp], 1
.L365:
	mov	eax, DWORD PTR -1032[rbp]
	movsx	rbx, eax
	lea	rax, -1024[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rbx, rax
	jb	.L391
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L392
	call	__stack_chk_fail@PLT
.L392:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	Problem18, .-Problem18
	.section	.rodata
	.align 8
.LC82:
	.string	"Problem 20: Given a sequence of words, the program will sort and print the words with respect to frequency."
.LC83:
	.string	"Enter a series of words: "
	.text
	.globl	Problem20
	.type	Problem20, @function
Problem20:
.LFB33:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 2072
	.cfi_offset 3, -24
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	QWORD PTR -2064[rbp], 0
	mov	QWORD PTR -2056[rbp], 0
	mov	QWORD PTR -1024[rbp], 0
	mov	QWORD PTR -1016[rbp], 0
	lea	rdx, -1008[rbp]
	mov	eax, 0
	mov	ecx, 123
	mov	rdi, rdx
	rep stosq
	lea	rdi, .LC82[rip]
	call	puts@PLT
	lea	rdi, .LC83[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rdx, QWORD PTR stdin[rip]
	lea	rax, -2032[rbp]
	mov	esi, 1000
	mov	rdi, rax
	call	fgets@PLT
	lea	rax, -2032[rbp]
	mov	rdi, rax
	call	strlen@PLT
	sub	rax, 1
	mov	BYTE PTR -2032[rbp+rax], 0
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -2068[rbp], 0
	jmp	.L394
.L397:
	lea	rdx, -2032[rbp]
	mov	eax, DWORD PTR -2068[rbp]
	cdqe
	lea	rcx, [rdx+rax]
	lea	rax, -1024[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	rdi, rax
	call	strncat@PLT
	add	DWORD PTR -2068[rbp], 1
.L395:
	mov	eax, DWORD PTR -2068[rbp]
	cdqe
	movzx	eax, BYTE PTR -2032[rbp+rax]
	cmp	al, 32
	je	.L396
	mov	eax, DWORD PTR -2068[rbp]
	movsx	rbx, eax
	lea	rax, -2032[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rbx, rax
	jb	.L397
.L396:
	cmp	QWORD PTR -2064[rbp], 0
	jne	.L398
	lea	rdx, -1024[rbp]
	mov	rcx, QWORD PTR -2048[rbp]
	mov	rax, QWORD PTR -2064[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	create_list20
	mov	QWORD PTR -2064[rbp], rax
	lea	rax, -1024[rbp]
	mov	edx, 1000
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	jmp	.L399
.L398:
	lea	rdx, -1024[rbp]
	mov	rcx, QWORD PTR -2048[rbp]
	mov	rax, QWORD PTR -2064[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	add_list20
	mov	QWORD PTR -2064[rbp], rax
	lea	rax, -1024[rbp]
	mov	edx, 1000
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
.L399:
	add	DWORD PTR -2068[rbp], 1
.L394:
	mov	eax, DWORD PTR -2068[rbp]
	movsx	rbx, eax
	lea	rax, -2032[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rbx, rax
	jb	.L395
	mov	rax, QWORD PTR -2064[rbp]
	mov	QWORD PTR -2048[rbp], rax
	mov	rcx, QWORD PTR -2040[rbp]
	mov	rdx, QWORD PTR -2056[rbp]
	mov	rsi, QWORD PTR -2048[rbp]
	mov	rax, QWORD PTR -2064[rbp]
	mov	rdi, rax
	call	compare_list20
	mov	QWORD PTR -2056[rbp], rax
	mov	rax, QWORD PTR -2056[rbp]
	mov	QWORD PTR -2040[rbp], rax
	mov	rcx, QWORD PTR -2040[rbp]
	mov	rdx, QWORD PTR -2056[rbp]
	mov	rsi, QWORD PTR -2048[rbp]
	mov	rax, QWORD PTR -2064[rbp]
	mov	rdi, rax
	call	frequency20
	jmp	.L401
.L402:
	mov	rax, QWORD PTR -2056[rbp]
	mov	QWORD PTR -2040[rbp], rax
	mov	rdx, QWORD PTR -2056[rbp]
	mov	rax, QWORD PTR -2040[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	getHighest20
	mov	QWORD PTR -2056[rbp], rax
.L401:
	cmp	QWORD PTR -2056[rbp], 0
	jne	.L402
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L403
	call	__stack_chk_fail@PLT
.L403:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	Problem20, .-Problem20
	.section	.rodata
	.align 8
.LC84:
	.string	"Please enter a program number to test: "
.LC85:
	.string	"not available"
	.text
	.globl	main
	.type	main, @function
main:
.LFB34:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -12[rbp], 0
	jmp	.L405
.L425:
	lea	rdi, .LC84[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -16[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	call	getchar@PLT
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 1
	jne	.L406
	mov	eax, 0
	call	Problem1
	jmp	.L405
.L406:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 2
	jne	.L407
	mov	eax, 0
	call	Problem2
	jmp	.L405
.L407:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 3
	jne	.L408
	mov	eax, 0
	call	Problem3
	jmp	.L405
.L408:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 4
	jne	.L409
	mov	eax, 0
	call	Problem4
	jmp	.L405
.L409:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 5
	jne	.L410
	mov	eax, 0
	call	Problem5
	jmp	.L405
.L410:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 6
	jne	.L411
	mov	eax, 0
	call	Problem6
	jmp	.L405
.L411:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 7
	jne	.L412
	mov	eax, 0
	call	Problem7
	jmp	.L405
.L412:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 8
	jne	.L413
	mov	eax, 0
	call	Problem8
	jmp	.L405
.L413:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 9
	jne	.L414
	mov	eax, 0
	call	Problem9
	jmp	.L405
.L414:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 10
	jne	.L415
	mov	eax, 0
	call	Problem10
	jmp	.L405
.L415:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 11
	jne	.L416
	mov	eax, 0
	call	Problem11
	jmp	.L405
.L416:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 12
	jne	.L417
	mov	eax, 0
	call	Problem12
	jmp	.L405
.L417:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 13
	jne	.L418
	mov	eax, 0
	call	Problem13
	jmp	.L405
.L418:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 14
	jne	.L419
	mov	eax, 0
	call	Problem14
	jmp	.L405
.L419:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 15
	jne	.L420
	mov	eax, 0
	call	Problem15
	jmp	.L405
.L420:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 16
	jne	.L421
	mov	eax, 0
	call	Problem16
	jmp	.L405
.L421:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 17
	jne	.L422
	lea	rdi, .LC85[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L405
.L422:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 18
	jne	.L423
	mov	eax, 0
	call	Problem18
	jmp	.L405
.L423:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 19
	jne	.L424
	mov	eax, 0
	call	Problem19
	jmp	.L405
.L424:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, 20
	jne	.L405
	mov	eax, 0
	call	Problem20
.L405:
	cmp	DWORD PTR -12[rbp], 0
	je	.L425
	mov	eax, 0
	mov	rdx, QWORD PTR -8[rbp]
	sub	rdx, QWORD PTR fs:40
	je	.L427
	call	__stack_chk_fail@PLT
.L427:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE34:
	.size	main, .-main
	.section	.rodata
	.align 8
.LC86:
	.string	"Problem 4: Prints the powerset of the set containing integers 1 - n"
.LC87:
	.string	"\n 1 < n < 1000: "
.LC88:
	.string	", "
	.text
	.globl	Problem4
	.type	Problem4, @function
Problem4:
.LFB35:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 4032
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -4020[rbp], 0
	jmp	.L429
.L430:
	mov	eax, DWORD PTR -4020[rbp]
	cdqe
	mov	DWORD PTR -4016[rbp+rax*4], 0
	add	DWORD PTR -4020[rbp], 1
.L429:
	cmp	DWORD PTR -4020[rbp], 999
	jle	.L430
	lea	rdi, .LC86[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC87[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -4024[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	jmp	.L431
.L432:
	mov	edx, DWORD PTR -4024[rbp]
	lea	rax, -4016[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	printSubset
	lea	rdi, .LC88[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edx, DWORD PTR -4024[rbp]
	lea	rax, -4016[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	addOneBit
.L431:
	mov	edx, DWORD PTR -4024[rbp]
	lea	rax, -4016[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	highestBin
	test	eax, eax
	je	.L432
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L433
	call	__stack_chk_fail@PLT
.L433:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE35:
	.size	Problem4, .-Problem4
	.globl	addOneBit
	.type	addOneBit, @function
addOneBit:
.LFB36:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	add	DWORD PTR -28[rbp], 1
	mov	DWORD PTR -4[rbp], 0
	jmp	.L435
.L439:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	cmp	eax, 1
	jne	.L436
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	DWORD PTR [rax], 0
	jmp	.L440
.L436:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	DWORD PTR [rax], 1
	jmp	.L438
.L440:
	add	DWORD PTR -4[rbp], 1
.L435:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L439
	nop
.L438:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE36:
	.size	addOneBit, .-addOneBit
	.section	.rodata
.LC89:
	.string	"%d, "
	.text
	.globl	printSubset
	.type	printSubset, @function
printSubset:
.LFB37:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	edi, 123
	call	putchar@PLT
	mov	DWORD PTR -4[rbp], 0
	jmp	.L442
.L444:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	cmp	eax, 1
	jne	.L443
	mov	eax, DWORD PTR -4[rbp]
	add	eax, 1
	mov	esi, eax
	lea	rdi, .LC89[rip]
	mov	eax, 0
	call	printf@PLT
.L443:
	add	DWORD PTR -4[rbp], 1
.L442:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L444
	mov	edi, 125
	call	putchar@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE37:
	.size	printSubset, .-printSubset
	.globl	highestBin
	.type	highestBin, @function
highestBin:
.LFB38:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	cmp	eax, 1
	jne	.L446
	mov	eax, 1
	jmp	.L447
.L446:
	mov	eax, 0
.L447:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE38:
	.size	highestBin, .-highestBin
	.section	.rodata
	.align 8
.LC90:
	.string	"Problem 5: Multiplying polynomials."
.LC91:
	.string	"Polynomial 1: "
.LC92:
	.string	"%s"
.LC93:
	.string	"Polynomial 2: "
.LC94:
	.string	"Head 1: "
.LC95:
	.string	"Head 2: "
.LC96:
	.string	"made it to end."
	.text
	.globl	Problem5
	.type	Problem5, @function
Problem5:
.LFB39:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 144
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdi, .LC90[rip]
	call	puts@PLT
	mov	QWORD PTR -136[rbp], 0
	mov	QWORD PTR -128[rbp], 0
	mov	QWORD PTR -120[rbp], 0
	lea	rdi, .LC91[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -112[rbp]
	mov	rsi, rax
	lea	rdi, .LC92[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdx, -112[rbp]
	mov	rax, QWORD PTR -136[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	parseMonoInput
	mov	QWORD PTR -136[rbp], rax
	lea	rdi, .LC93[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -112[rbp]
	mov	rsi, rax
	lea	rdi, .LC92[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdx, -112[rbp]
	mov	rax, QWORD PTR -128[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	parseMonoInput
	mov	QWORD PTR -128[rbp], rax
	mov	rdx, QWORD PTR -120[rbp]
	mov	rcx, QWORD PTR -128[rbp]
	mov	rax, QWORD PTR -136[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	multiply
	mov	QWORD PTR -120[rbp], rax
	lea	rdi, .LC94[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -136[rbp]
	mov	rdi, rax
	call	printMonoList
	mov	edi, 10
	call	putchar@PLT
	lea	rdi, .LC95[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -128[rbp]
	mov	rdi, rax
	call	printMonoList
	mov	edi, 10
	call	putchar@PLT
	lea	rdi, .LC96[rip]
	call	puts@PLT
	mov	rax, QWORD PTR -120[rbp]
	mov	rdi, rax
	call	printMonoList
	mov	rax, QWORD PTR -120[rbp]
	mov	rdi, rax
	call	freeMonoNodes
	mov	rax, QWORD PTR -136[rbp]
	mov	rdi, rax
	call	freeMonoNodes
	mov	rax, QWORD PTR -128[rbp]
	mov	rdi, rax
	call	freeMonoNodes
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L449
	call	__stack_chk_fail@PLT
.L449:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE39:
	.size	Problem5, .-Problem5
	.section	.rodata
.LC97:
	.string	"ay lamo"
	.text
	.globl	parseMonoInput
	.type	parseMonoInput, @function
parseMonoInput:
.LFB40:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	cmp	QWORD PTR -40[rbp], 0
	jne	.L451
	mov	edi, 0
	call	createMonoNode
	mov	QWORD PTR -40[rbp], rax
.L451:
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	strlen@PLT
	lea	rdx, -1[rax]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -32[rbp], 0
	mov	DWORD PTR -28[rbp], 0
	jmp	.L452
.L458:
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	charToDigit
	test	eax, eax
	js	.L453
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	charToDigit
	mov	DWORD PTR -20[rbp], eax
	mov	DWORD PTR -24[rbp], 0
	jmp	.L454
.L455:
	mov	edx, DWORD PTR -20[rbp]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	mov	DWORD PTR -20[rbp], eax
	add	DWORD PTR -24[rbp], 1
.L454:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L455
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -20[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR [rax], edx
	add	DWORD PTR -28[rbp], 1
	jmp	.L456
.L453:
	lea	rdi, .LC97[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 44
	jne	.L457
	add	DWORD PTR -32[rbp], 1
	mov	DWORD PTR -28[rbp], 0
	mov	eax, DWORD PTR -32[rbp]
	mov	edi, eax
	call	createMonoNode
	mov	rdx, QWORD PTR -16[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -16[rbp], rax
	jmp	.L456
.L457:
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	jne	.L456
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	neg	eax
	mov	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR [rax], edx
.L456:
	sub	QWORD PTR -8[rbp], 1
.L452:
	mov	rax, QWORD PTR -8[rbp]
	cmp	rax, QWORD PTR -48[rbp]
	jnb	.L458
	mov	rax, QWORD PTR -40[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE40:
	.size	parseMonoInput, .-parseMonoInput
	.globl	createMonoNode
	.type	createMonoNode, @function
createMonoNode:
.LFB41:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	edi, 16
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -20[rbp]
	mov	DWORD PTR 4[rax], edx
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE41:
	.size	createMonoNode, .-createMonoNode
	.globl	freeMonoNodes
	.type	freeMonoNodes, @function
freeMonoNodes:
.LFB42:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	jmp	.L463
.L464:
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	free@PLT
.L463:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	jne	.L464
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE42:
	.size	freeMonoNodes, .-freeMonoNodes
	.globl	multiply
	.type	multiply, @function
multiply:
.LFB43:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	QWORD PTR -56[rbp], rdx
	jmp	.L466
.L472:
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -8[rbp], rax
	jmp	.L467
.L471:
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 4[rax]
	add	eax, edx
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, eax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
	cmp	QWORD PTR -56[rbp], 0
	jne	.L468
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	createMonoNode
	mov	QWORD PTR -56[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	ecx, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	imul	eax, edx
	lea	edx, [rcx+rax]
	mov	rax, QWORD PTR -56[rbp]
	mov	DWORD PTR [rax], edx
	jmp	.L469
.L468:
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	degreeExists
	test	rax, rax
	je	.L470
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	degreeExists
	mov	esi, DWORD PTR [rax]
	mov	rdx, QWORD PTR -40[rbp]
	mov	ecx, DWORD PTR [rdx]
	mov	rdx, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR [rdx]
	imul	edx, ecx
	add	edx, esi
	mov	DWORD PTR [rax], edx
	jmp	.L469
.L470:
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	createMonoNode
	mov	rdx, QWORD PTR -16[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	ecx, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	imul	eax, edx
	lea	edx, [rcx+rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR [rax], edx
.L469:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -8[rbp], rax
.L467:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L471
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -40[rbp], rax
.L466:
	cmp	QWORD PTR -40[rbp], 0
	jne	.L472
	mov	rax, QWORD PTR -56[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE43:
	.size	multiply, .-multiply
	.globl	degreeExists
	.type	degreeExists, @function
degreeExists:
.LFB44:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	jmp	.L475
.L478:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 4[rax]
	cmp	DWORD PTR -12[rbp], eax
	jne	.L476
	mov	rax, QWORD PTR -8[rbp]
	jmp	.L477
.L476:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -8[rbp], rax
.L475:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L478
	mov	eax, 0
.L477:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE44:
	.size	degreeExists, .-degreeExists
	.globl	charToDigit
	.type	charToDigit, @function
charToDigit:
.LFB45:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], 47
	jle	.L480
	cmp	BYTE PTR -4[rbp], 57
	jg	.L480
	movsx	eax, BYTE PTR -4[rbp]
	sub	eax, 48
	jmp	.L481
.L480:
	mov	eax, -1
.L481:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE45:
	.size	charToDigit, .-charToDigit
	.section	.rodata
.LC98:
	.string	"Elem %d: "
.LC99:
	.string	"(%d, %d) "
	.text
	.globl	printMonoList
	.type	printMonoList, @function
printMonoList:
.LFB46:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -4[rbp], 0
	jmp	.L483
.L485:
	mov	eax, DWORD PTR -4[rbp]
	mov	esi, eax
	lea	rdi, .LC98[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	mov	esi, eax
	lea	rdi, .LC99[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	je	.L484
	lea	rdi, .LC88[rip]
	mov	eax, 0
	call	printf@PLT
.L484:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
	add	DWORD PTR -4[rbp], 1
.L483:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L485
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE46:
	.size	printMonoList, .-printMonoList
	.section	.rodata
	.align 8
.LC100:
	.string	"Problem 6: How many bulbs (0 < n <1 000 000 000) are present, Mr. Mabu?"
.LC101:
	.string	"%ld"
.LC102:
	.string	"Bulb %d is on."
.LC103:
	.string	"Blub %d is off."
	.text
	.globl	Problem6
	.type	Problem6, @function
Problem6:
.LFB47:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -20[rbp], 0
	lea	rdi, .LC100[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -16[rbp]
	mov	rsi, rax
	lea	rdi, .LC101[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	DWORD PTR -24[rbp], 2
	jmp	.L487
.L490:
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR -24[rbp]
	movsx	rcx, edx
	cqo
	idiv	rcx
	mov	rax, rdx
	test	rax, rax
	jne	.L488
	cmp	DWORD PTR -20[rbp], 0
	je	.L489
	mov	DWORD PTR -20[rbp], 0
	jmp	.L488
.L489:
	mov	DWORD PTR -20[rbp], 1
.L488:
	add	DWORD PTR -24[rbp], 1
.L487:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -16[rbp]
	cmp	rdx, rax
	jle	.L490
	cmp	DWORD PTR -20[rbp], 0
	je	.L491
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rax
	lea	rdi, .LC102[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L494
.L491:
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rax
	lea	rdi, .LC103[rip]
	mov	eax, 0
	call	printf@PLT
.L494:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L493
	call	__stack_chk_fail@PLT
.L493:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE47:
	.size	Problem6, .-Problem6
	.section	.rodata
	.align 8
.LC104:
	.string	"Problem 8: Pair of points with the shortest distance."
.LC105:
	.string	"Enter x coordinate: "
.LC106:
	.string	"Enter y coordinate: "
	.align 8
.LC107:
	.string	"Add one more coordinate? Type 0 if no."
	.align 8
.LC109:
	.string	"Pair with the least distance is (%f, %f) and (%f, %f), with a distance %f"
	.text
	.globl	Problem8
	.type	Problem8, @function
Problem8:
.LFB48:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 96
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdi, .LC104[rip]
	call	puts@PLT
	mov	QWORD PTR -72[rbp], 0
	mov	QWORD PTR -64[rbp], 0
.L498:
	lea	rdi, .LC105[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -88[rbp]
	mov	rsi, rax
	lea	rdi, .LC34[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC106[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -80[rbp]
	mov	rsi, rax
	lea	rdi, .LC34[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	cmp	QWORD PTR -72[rbp], 0
	jne	.L496
	movsd	xmm0, QWORD PTR -80[rbp]
	mov	rdx, QWORD PTR -88[rbp]
	mov	rax, QWORD PTR -72[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rdx
	mov	rdi, rax
	call	createPointNodes
	mov	QWORD PTR -72[rbp], rax
	mov	rax, QWORD PTR -72[rbp]
	mov	QWORD PTR -64[rbp], rax
	jmp	.L497
.L496:
	movsd	xmm0, QWORD PTR -80[rbp]
	mov	rdx, QWORD PTR -88[rbp]
	mov	rax, QWORD PTR -64[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rdx
	mov	rdi, rax
	call	createPointNodes
	mov	QWORD PTR -64[rbp], rax
.L497:
	lea	rdi, .LC107[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -92[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	eax, DWORD PTR -92[rbp]
	test	eax, eax
	jne	.L498
	movsd	xmm0, QWORD PTR .LC108[rip]
	movsd	QWORD PTR -56[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	mov	QWORD PTR -48[rbp], rax
	jmp	.L499
.L505:
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR -40[rbp], rax
	jmp	.L500
.L504:
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	getDistance
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	movsd	xmm0, QWORD PTR -56[rbp]
	comisd	xmm0, QWORD PTR -16[rbp]
	jnb	.L501
	movsd	xmm0, QWORD PTR .LC108[rip]
	ucomisd	xmm0, QWORD PTR -56[rbp]
	jp	.L502
	movsd	xmm0, QWORD PTR .LC108[rip]
	ucomisd	xmm0, QWORD PTR -56[rbp]
	jne	.L502
.L501:
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -56[rbp], xmm0
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
.L502:
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR -40[rbp], rax
.L500:
	cmp	QWORD PTR -40[rbp], 0
	jne	.L504
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR -48[rbp], rax
.L499:
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 16[rax]
	test	rax, rax
	jne	.L505
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR [rax]
	movsd	xmm3, QWORD PTR -56[rbp]
	movapd	xmm4, xmm3
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC109[rip]
	mov	eax, 5
	call	printf@PLT
	mov	rax, QWORD PTR -72[rbp]
	mov	rdi, rax
	call	freePoint
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L506
	call	__stack_chk_fail@PLT
.L506:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE48:
	.size	Problem8, .-Problem8
	.globl	freePoint
	.type	freePoint, @function
freePoint:
.LFB49:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	jmp	.L508
.L509:
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	free@PLT
.L508:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 16[rax]
	test	rax, rax
	jne	.L509
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE49:
	.size	freePoint, .-freePoint
	.globl	createPointNodes
	.type	createPointNodes, @function
createPointNodes:
.LFB50:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	QWORD PTR -40[rbp], xmm1
	mov	edi, 24
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR -40[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 16[rax], 0
	cmp	QWORD PTR -24[rbp], 0
	je	.L511
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 16[rax], rdx
.L511:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE50:
	.size	createPointNodes, .-createPointNodes
	.globl	getDistance
	.type	getDistance, @function
getDistance:
.LFB51:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -40[rbp], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -32[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -24[rbp], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	movapd	xmm1, xmm0
	subsd	xmm1, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR -40[rbp]
	subsd	xmm0, QWORD PTR -32[rbp]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	movapd	xmm2, xmm0
	subsd	xmm2, QWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, QWORD PTR -16[rbp]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	movq	rax, xmm1
	movq	xmm0, rax
	call	sqrt@PLT
	movq	rax, xmm0
	mov	QWORD PTR -8[rbp], rax
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE51:
	.size	getDistance, .-getDistance
	.section	.rodata
	.align 8
.LC110:
	.string	"Problem 9: Level of Pascal's Triangle given level n="
	.text
	.globl	Problem9
	.type	Problem9, @function
Problem9:
.LFB52:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdi, .LC110[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -32[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	QWORD PTR -16[rbp], 0
	mov	edi, 16
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR 4[rax], 1
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR 8[rax], 0
	mov	eax, DWORD PTR -32[rbp]
	cmp	eax, 1
	jne	.L516
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	printElementList
	jmp	.L517
.L516:
	mov	DWORD PTR -28[rbp], 1
	jmp	.L518
.L523:
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L519
.L520:
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
.L519:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L520
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L521
.L522:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	ecx, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	add	edx, ecx
	mov	DWORD PTR 4[rax], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
.L521:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	jne	.L522
	mov	edi, 16
	call	malloc@PLT
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	DWORD PTR 4[rax], 1
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR 8[rax], 0
	add	DWORD PTR -28[rbp], 1
.L518:
	mov	eax, DWORD PTR -32[rbp]
	cmp	DWORD PTR -28[rbp], eax
	jl	.L523
.L517:
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	printElementList
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	freeElementNodes
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L524
	call	__stack_chk_fail@PLT
.L524:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE52:
	.size	Problem9, .-Problem9
	.globl	freeElementNodes
	.type	freeElementNodes, @function
freeElementNodes:
.LFB53:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	jmp	.L526
.L527:
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	free@PLT
.L526:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	jne	.L527
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE53:
	.size	freeElementNodes, .-freeElementNodes
	.globl	printElementList
	.type	printElementList, @function
printElementList:
.LFB54:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	jmp	.L529
.L531:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 4[rax]
	mov	esi, eax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	je	.L530
	lea	rdi, .LC88[rip]
	mov	eax, 0
	call	printf@PLT
.L530:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -8[rbp], rax
.L529:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L531
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE54:
	.size	printElementList, .-printElementList
	.section	.rodata
	.align 8
.LC111:
	.string	"Problem 11: Egyptian fraction sum with least operands of real number "
.LC113:
	.string	"1/%d"
	.text
	.globl	Problem11
	.type	Problem11, @function
Problem11:
.LFB55:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdi, .LC111[rip]
	call	puts@PLT
	lea	rax, -24[rbp]
	mov	rsi, rax
	lea	rdi, .LC34[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	DWORD PTR -28[rbp], 2
	jmp	.L533
.L540:
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, DWORD PTR -28[rbp]
	movss	xmm0, DWORD PTR .LC112[rip]
	divss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	comisd	xmm0, QWORD PTR -16[rbp]
	jb	.L534
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR -28[rbp]
	mov	esi, eax
	lea	rdi, .LC113[rip]
	mov	eax, 0
	call	printf@PLT
	movsd	xmm0, QWORD PTR -24[rbp]
	comisd	xmm0, QWORD PTR .LC114[rip]
	jbe	.L534
	movsd	xmm0, QWORD PTR -24[rbp]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jbe	.L534
	lea	rdi, .LC88[rip]
	mov	eax, 0
	call	printf@PLT
.L534:
	add	DWORD PTR -28[rbp], 1
.L533:
	movsd	xmm0, QWORD PTR -24[rbp]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	ja	.L545
	jmp	.L546
.L545:
	movsd	xmm0, QWORD PTR -24[rbp]
	comisd	xmm0, QWORD PTR .LC114[rip]
	ja	.L540
.L546:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L541
	call	__stack_chk_fail@PLT
.L541:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE55:
	.size	Problem11, .-Problem11
	.section	.rodata
.LC116:
	.string	"Problem 13: Big ints."
.LC117:
	.string	"Enter first digit: "
.LC118:
	.string	"Enter second digit: "
.LC119:
	.string	"Result: "
	.text
	.globl	Problem13
	.type	Problem13, @function
Problem13:
.LFB56:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 144
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -132[rbp], 0
	jmp	.L548
.L549:
	mov	eax, DWORD PTR -132[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -132[rbp], edx
	cdqe
	mov	DWORD PTR -128[rbp+rax*4], 0
.L548:
	cmp	DWORD PTR -132[rbp], 20
	jle	.L549
	lea	rdi, .LC116[rip]
	call	puts@PLT
	lea	rdi, .LC117[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -32[rbp]
	mov	rsi, rax
	lea	rdi, .LC92[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdx, -32[rbp]
	lea	rax, -128[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	parseDigits
	lea	rdi, .LC118[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -32[rbp]
	mov	rsi, rax
	lea	rdi, .LC92[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdx, -32[rbp]
	lea	rax, -128[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	parseDigits
	lea	rdi, .LC119[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -128[rbp]
	mov	rdi, rax
	call	printIntResult
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L550
	call	__stack_chk_fail@PLT
.L550:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE56:
	.size	Problem13, .-Problem13
	.globl	parseDigits
	.type	parseDigits, @function
parseDigits:
.LFB57:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR -64[rbp]
	mov	rdi, rax
	call	strlen@PLT
	lea	rdx, -1[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	DWORD PTR -36[rbp], 0
	jmp	.L552
.L554:
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	mov	esi, eax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	charToDigit
	mov	edx, eax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	add	edx, eax
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	charToDigit
	mov	esi, eax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	eax, 9
	jle	.L553
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	lea	edx, -10[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
	add	QWORD PTR -24[rbp], 4
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
.L553:
	add	DWORD PTR -36[rbp], 1
	sub	QWORD PTR -32[rbp], 1
.L552:
	mov	eax, DWORD PTR -36[rbp]
	movsx	rbx, eax
	mov	rax, QWORD PTR -64[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rbx, rax
	jb	.L554
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE57:
	.size	parseDigits, .-parseDigits
	.globl	printIntResult
	.type	printIntResult, @function
printIntResult:
.LFB58:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -4[rbp], 20
	jmp	.L556
.L558:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	je	.L557
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	mov	esi, eax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
.L557:
	sub	DWORD PTR -4[rbp], 1
.L556:
	cmp	DWORD PTR -4[rbp], 0
	jns	.L558
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE58:
	.size	printIntResult, .-printIntResult
	.section	.rodata
	.align 8
.LC120:
	.string	"Problem 16: Most intersected circle."
.LC121:
	.string	"Circle %d:\n"
.LC122:
	.string	"X: "
.LC123:
	.string	"Y: "
.LC124:
	.string	"Radius: "
	.align 8
.LC125:
	.string	"Enter one more circle? Type 0 for no."
	.align 8
.LC126:
	.string	"The circle with the highest intesections is circle %d (x: %f, y: %f, r: %f) with %d collisions."
	.text
	.globl	Problem16
	.type	Problem16, @function
Problem16:
.LFB59:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1648
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdi, .LC120[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -1644[rbp], 0
	jmp	.L560
.L561:
	mov	eax, DWORD PTR -1644[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -1644[rbp], edx
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1592
	mov	DWORD PTR [rax], 0
.L560:
	cmp	DWORD PTR -1644[rbp], 49
	jle	.L561
	mov	DWORD PTR -1644[rbp], 0
	mov	DWORD PTR -1640[rbp], 0
.L563:
	mov	eax, DWORD PTR -1644[rbp]
	add	eax, 1
	mov	esi, eax
	lea	rdi, .LC121[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC122[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdx, -1616[rbp]
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	add	rax, rdx
	mov	rsi, rax
	lea	rdi, .LC34[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC123[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdx, -1616[rbp]
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	add	rax, rdx
	add	rax, 8
	mov	rsi, rax
	lea	rdi, .LC34[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC124[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdx, -1616[rbp]
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	add	rax, 16
	add	rax, rdx
	mov	rsi, rax
	lea	rdi, .LC34[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC125[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -1648[rbp]
	mov	rsi, rax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	add	DWORD PTR -1644[rbp], 1
	add	DWORD PTR -1640[rbp], 1
	mov	eax, DWORD PTR -1648[rbp]
	test	eax, eax
	je	.L562
	cmp	DWORD PTR -1644[rbp], 49
	jle	.L563
.L562:
	mov	DWORD PTR -1632[rbp], 0
	mov	DWORD PTR -1644[rbp], 0
	jmp	.L564
.L571:
	mov	eax, DWORD PTR -1644[rbp]
	add	eax, 1
	mov	DWORD PTR -1636[rbp], eax
	jmp	.L565
.L569:
	mov	eax, DWORD PTR -1636[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	lea	rax, -1616[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	mov	rcx, rax
	lea	rax, -1616[rbp]
	add	rax, rcx
	mov	rsi, rdx
	mov	rdi, rax
	call	getCircleDistance
	movq	rax, xmm0
	mov	QWORD PTR -1624[rbp], rax
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1600
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -1636[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1600
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm1
	comisd	xmm0, QWORD PTR -1624[rbp]
	jb	.L566
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1600
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -1636[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1600
	movsd	xmm1, QWORD PTR [rax]
	subsd	xmm0, xmm1
	cvttsd2si	eax, xmm0
	cdq
	xor	eax, edx
	sub	eax, edx
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR -1624[rbp]
	comisd	xmm0, xmm1
	jb	.L566
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1592
	mov	eax, DWORD PTR [rax]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1592
	mov	DWORD PTR [rax], edx
	mov	eax, DWORD PTR -1636[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1592
	mov	eax, DWORD PTR [rax]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -1636[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1592
	mov	DWORD PTR [rax], edx
.L566:
	add	DWORD PTR -1636[rbp], 1
.L565:
	mov	eax, DWORD PTR -1636[rbp]
	cmp	eax, DWORD PTR -1640[rbp]
	jl	.L569
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1592
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -1632[rbp], eax
	jg	.L570
	mov	eax, DWORD PTR -1644[rbp]
	mov	DWORD PTR -1628[rbp], eax
	mov	eax, DWORD PTR -1644[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1592
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -1632[rbp], eax
.L570:
	add	DWORD PTR -1644[rbp], 1
.L564:
	mov	eax, DWORD PTR -1640[rbp]
	sub	eax, 1
	cmp	DWORD PTR -1644[rbp], eax
	jl	.L571
	mov	eax, DWORD PTR -1628[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1600
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -1628[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1608
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -1628[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1616
	mov	rax, QWORD PTR [rax]
	mov	edx, DWORD PTR -1628[rbp]
	lea	ecx, 1[rdx]
	mov	edx, DWORD PTR -1632[rbp]
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	mov	esi, ecx
	lea	rdi, .LC126[rip]
	mov	eax, 3
	call	printf@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L572
	call	__stack_chk_fail@PLT
.L572:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE59:
	.size	Problem16, .-Problem16
	.globl	getCircleDistance
	.type	getCircleDistance, @function
getCircleDistance:
.LFB60:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -40[rbp], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -32[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -24[rbp], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	movapd	xmm1, xmm0
	subsd	xmm1, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR -40[rbp]
	subsd	xmm0, QWORD PTR -32[rbp]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	movapd	xmm2, xmm0
	subsd	xmm2, QWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, QWORD PTR -16[rbp]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	movq	rax, xmm1
	movq	xmm0, rax
	call	sqrt@PLT
	movq	rax, xmm0
	mov	QWORD PTR -8[rbp], rax
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE60:
	.size	getCircleDistance, .-getCircleDistance
	.section	.rodata
	.align 8
.LC127:
	.string	"Problem 19: Timeblocks and breaks.\n Input: "
	.text
	.globl	Problem19
	.type	Problem19, @function
Problem19:
.LFB61:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1024
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdi, .LC127[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -1008[rbp]
	mov	rsi, rax
	lea	rdi, .LC92[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	QWORD PTR -1024[rbp], 0
	mov	QWORD PTR -1016[rbp], 0
	lea	rdx, -1008[rbp]
	mov	rax, QWORD PTR -1024[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	parseTimeblockInput
	mov	QWORD PTR -1024[rbp], rax
	mov	rdx, QWORD PTR -1024[rbp]
	mov	rax, QWORD PTR -1016[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	getBreaks
	mov	QWORD PTR -1016[rbp], rax
	mov	rax, QWORD PTR -1016[rbp]
	mov	rdi, rax
	call	printSched
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L578
	call	__stack_chk_fail@PLT
.L578:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE61:
	.size	Problem19, .-Problem19
	.globl	parseTimeblockInput
	.type	parseTimeblockInput, @function
parseTimeblockInput:
.LFB62:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	cmp	QWORD PTR -40[rbp], 0
	jne	.L580
	mov	esi, 0
	mov	edi, 0
	mov	eax, 0
	call	createTimeblockNode
	mov	QWORD PTR -40[rbp], rax
.L580:
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	strlen@PLT
	lea	rdx, -1[rax]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -28[rbp], 1
	mov	DWORD PTR -24[rbp], 1
	mov	DWORD PTR -20[rbp], 0
	jmp	.L581
.L590:
	mov	rax, QWORD PTR -48[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	charToDigit
	test	eax, eax
	js	.L582
	mov	edx, DWORD PTR -20[rbp]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -28[rbp], 1
	jne	.L583
	mov	rax, QWORD PTR -48[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	charToDigit
	imul	eax, eax, 60
	add	DWORD PTR -20[rbp], eax
	jmp	.L584
.L583:
	mov	rax, QWORD PTR -48[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	charToDigit
	add	DWORD PTR -20[rbp], eax
	jmp	.L584
.L582:
	mov	rax, QWORD PTR -48[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 112
	jne	.L585
	add	DWORD PTR -20[rbp], 720
	jmp	.L584
.L585:
	mov	rax, QWORD PTR -48[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 58
	jne	.L586
	cmp	DWORD PTR -24[rbp], 1
	jne	.L587
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -20[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR [rax], edx
	jmp	.L588
.L587:
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR 4[rax]
	mov	eax, DWORD PTR -20[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR 4[rax], edx
.L588:
	mov	DWORD PTR -20[rbp], 0
	mov	DWORD PTR -28[rbp], 0
	jmp	.L584
.L586:
	mov	rax, QWORD PTR -48[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	jne	.L589
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -20[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR [rax], edx
	mov	DWORD PTR -20[rbp], 0
	mov	DWORD PTR -24[rbp], 0
	mov	DWORD PTR -28[rbp], 1
	jmp	.L584
.L589:
	mov	rax, QWORD PTR -48[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 44
	jne	.L584
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR 4[rax]
	mov	eax, DWORD PTR -20[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR 4[rax], edx
	mov	esi, 0
	mov	edi, 0
	mov	eax, 0
	call	createTimeblockNode
	mov	rdx, QWORD PTR -16[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -28[rbp], 1
	mov	DWORD PTR -24[rbp], 1
	mov	DWORD PTR -20[rbp], 0
.L584:
	add	QWORD PTR -48[rbp], 1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	cmp	QWORD PTR -48[rbp], rax
	jne	.L581
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR -20[rbp]
	mov	DWORD PTR 4[rax], edx
	mov	DWORD PTR -20[rbp], 0
.L581:
	mov	rax, QWORD PTR -48[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	jbe	.L590
	mov	rax, QWORD PTR -40[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE62:
	.size	parseTimeblockInput, .-parseTimeblockInput
	.globl	getBreaks
	.type	getBreaks, @function
getBreaks:
.LFB63:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -24[rbp], 480
	mov	DWORD PTR -20[rbp], 1200
.L601:
	mov	edx, DWORD PTR -24[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	isBetweenList
	mov	QWORD PTR -8[rbp], rax
	jmp	.L593
.L594:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 4[rax]
	mov	DWORD PTR -24[rbp], eax
	mov	edx, DWORD PTR -24[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	isBetweenList
	mov	QWORD PTR -8[rbp], rax
.L593:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L594
	mov	edx, DWORD PTR -20[rbp]
	mov	ecx, DWORD PTR -24[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	isBetweenBreak
	mov	QWORD PTR -8[rbp], rax
	jmp	.L595
.L596:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -20[rbp], eax
	mov	edx, DWORD PTR -20[rbp]
	mov	ecx, DWORD PTR -24[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	isBetweenBreak
	mov	QWORD PTR -8[rbp], rax
.L595:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L596
	cmp	QWORD PTR -40[rbp], 0
	jne	.L597
	mov	edx, DWORD PTR -20[rbp]
	mov	eax, DWORD PTR -24[rbp]
	mov	esi, edx
	mov	edi, eax
	mov	eax, 0
	call	createTimeblockNode
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	appendToList
	jmp	.L598
.L597:
	mov	edx, DWORD PTR -20[rbp]
	mov	eax, DWORD PTR -24[rbp]
	mov	esi, edx
	mov	edi, eax
	mov	eax, 0
	call	createTimeblockNode
	mov	rdx, QWORD PTR -40[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -40[rbp], rax
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	appendToList
.L598:
	mov	rax, QWORD PTR -40[rbp]
	mov	eax, DWORD PTR 4[rax]
	mov	DWORD PTR -24[rbp], eax
	mov	DWORD PTR -20[rbp], 1200
	cmp	DWORD PTR -24[rbp], 1200
	je	.L604
	jmp	.L601
.L604:
	nop
	mov	rax, QWORD PTR -16[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE63:
	.size	getBreaks, .-getBreaks
	.globl	isBetweenList
	.type	isBetweenList, @function
isBetweenList:
.LFB64:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	jmp	.L606
.L609:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -12[rbp], eax
	jl	.L607
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 4[rax]
	cmp	DWORD PTR -12[rbp], eax
	jge	.L607
	mov	rax, QWORD PTR -8[rbp]
	jmp	.L608
.L607:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -8[rbp], rax
.L606:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L609
	mov	rax, QWORD PTR -8[rbp]
.L608:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE64:
	.size	isBetweenList, .-isBetweenList
	.globl	isBetweenBreak
	.type	isBetweenBreak, @function
isBetweenBreak:
.LFB65:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	mov	DWORD PTR -16[rbp], edx
	jmp	.L611
.L614:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -16[rbp], eax
	jle	.L612
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -12[rbp], eax
	jge	.L612
	mov	rax, QWORD PTR -8[rbp]
	jmp	.L613
.L612:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -8[rbp], rax
.L611:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L614
	mov	rax, QWORD PTR -8[rbp]
.L613:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE65:
	.size	isBetweenBreak, .-isBetweenBreak
	.globl	appendToList
	.type	appendToList, @function
appendToList:
.LFB66:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	jmp	.L616
.L617:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -8[rbp], rax
.L616:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	jne	.L617
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	mov	esi, edx
	mov	edi, eax
	mov	eax, 0
	call	createTimeblockNode
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	QWORD PTR 8[rax], rdx
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE66:
	.size	appendToList, .-appendToList
	.globl	createTimeblockNode
	.type	createTimeblockNode, @function
createTimeblockNode:
.LFB67:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	DWORD PTR -24[rbp], esi
	mov	edi, 16
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -20[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -24[rbp]
	mov	DWORD PTR 4[rax], edx
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE67:
	.size	createTimeblockNode, .-createTimeblockNode
	.section	.rodata
.LC128:
	.string	"(%d - %d) "
	.text
	.globl	printTimeblockList
	.type	printTimeblockList, @function
printTimeblockList:
.LFB68:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -4[rbp], 0
	jmp	.L621
.L623:
	mov	eax, DWORD PTR -4[rbp]
	mov	esi, eax
	lea	rdi, .LC98[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	mov	esi, eax
	lea	rdi, .LC128[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	je	.L622
	lea	rdi, .LC88[rip]
	mov	eax, 0
	call	printf@PLT
.L622:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
	add	DWORD PTR -4[rbp], 1
.L621:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L623
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE68:
	.size	printTimeblockList, .-printTimeblockList
	.section	.rodata
.LC129:
	.string	":%d"
	.text
	.globl	printSched
	.type	printSched, @function
printSched:
.LFB69:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	jmp	.L625
.L635:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -12[rbp], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 4[rax]
	mov	DWORD PTR -8[rbp], eax
	mov	DWORD PTR -4[rbp], 0
	cmp	DWORD PTR -12[rbp], 720
	jle	.L626
	mov	DWORD PTR -4[rbp], 1
	sub	DWORD PTR -12[rbp], 720
.L626:
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	esi, eax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	edx, edx, 60
	sub	eax, edx
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	je	.L627
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, eax
	lea	rdi, .LC129[rip]
	mov	eax, 0
	call	printf@PLT
.L627:
	cmp	DWORD PTR -4[rbp], 1
	jne	.L628
	mov	edi, 112
	call	putchar@PLT
	jmp	.L629
.L628:
	mov	edi, 97
	call	putchar@PLT
.L629:
	mov	edi, 45
	call	putchar@PLT
	cmp	DWORD PTR -8[rbp], 720
	jle	.L630
	mov	DWORD PTR -4[rbp], 1
	sub	DWORD PTR -8[rbp], 720
.L630:
	mov	eax, DWORD PTR -8[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	esi, eax
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -8[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	edx, edx, 60
	sub	eax, edx
	mov	DWORD PTR -8[rbp], eax
	cmp	DWORD PTR -8[rbp], 0
	je	.L631
	mov	eax, DWORD PTR -8[rbp]
	mov	esi, eax
	lea	rdi, .LC129[rip]
	mov	eax, 0
	call	printf@PLT
.L631:
	cmp	DWORD PTR -4[rbp], 1
	jne	.L632
	mov	edi, 112
	call	putchar@PLT
	jmp	.L633
.L632:
	mov	edi, 97
	call	putchar@PLT
.L633:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	je	.L634
	mov	edi, 44
	call	putchar@PLT
.L634:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
.L625:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L635
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE69:
	.size	printSched, .-printSched
	.local	i.1
	.comm	i.1,4,4
	.local	j.0
	.comm	j.0,4,4
	.section	.rodata
	.align 8
.LC36:
	.long	0
	.long	1083129856
	.align 8
.LC38:
	.long	0
	.long	1082081280
	.align 8
.LC41:
	.long	0
	.long	1080623104
	.align 8
.LC44:
	.long	0
	.long	1079574528
	.align 8
.LC47:
	.long	0
	.long	1078525952
	.align 8
.LC50:
	.long	0
	.long	1077149696
	.align 8
.LC53:
	.long	0
	.long	1076101120
	.align 8
.LC56:
	.long	0
	.long	1075052544
	.align 8
.LC59:
	.long	0
	.long	1072693248
	.align 8
.LC62:
	.long	0
	.long	1070596096
	.align 8
.LC65:
	.long	-1717986918
	.long	1069128089
	.align 8
.LC68:
	.long	-1717986918
	.long	1068079513
	.align 8
.LC71:
	.long	1202590843
	.long	1065646817
	.align 8
.LC108:
	.long	0
	.long	-1074790400
	.align 4
.LC112:
	.long	1065353216
	.align 8
.LC114:
	.long	-536870912
	.long	1058682594
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"628141.c"
	.text
	.global	__aeabi_fcmpgt
	.align	2
	.global	checker1
	.syntax unified
	.arm
	.fpu softvfp
	.type	checker1, %function
checker1:
	@ args = 16, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]	@ float
	str	r1, [fp, #-12]	@ float
	str	r2, [fp, #-16]	@ float
	str	r3, [fp, #-20]	@ float
	ldr	r1, [fp, #-16]	@ float
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L6
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	b	.L7
.L6:
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
.L7:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	checker1, .-checker1
	.align	2
	.global	vchecker1
	.syntax unified
	.arm
	.fpu softvfp
	.type	vchecker1, %function
vchecker1:
	@ args = 16, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]	@ float
	str	r1, [fp, #-12]	@ float
	str	r2, [fp, #-16]	@ float
	str	r3, [fp, #-20]	@ float
	ldr	r1, [fp, #-20]	@ float
	ldr	r0, [fp, #-12]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L13
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	b	.L14
.L13:
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
.L14:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vchecker1, .-vchecker1
	.align	2
	.global	vchecker2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vchecker2, %function
vchecker2:
	@ args = 16, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]	@ float
	str	r1, [fp, #-12]	@ float
	str	r2, [fp, #-16]	@ float
	str	r3, [fp, #-20]	@ float
	ldr	r1, [fp, #-20]	@ float
	ldr	r0, [fp, #-12]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L20
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	b	.L21
.L20:
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
.L21:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vchecker2, .-vchecker2
	.align	2
	.global	checker2
	.syntax unified
	.arm
	.fpu softvfp
	.type	checker2, %function
checker2:
	@ args = 16, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]	@ float
	str	r1, [fp, #-12]	@ float
	str	r2, [fp, #-16]	@ float
	str	r3, [fp, #-20]	@ float
	ldr	r1, [fp, #-16]	@ float
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L27
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	b	.L28
.L27:
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
.L28:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	checker2, .-checker2
	.align	2
	.global	hline
	.syntax unified
	.arm
	.fpu softvfp
	.type	hline, %function
hline:
	@ args = 16, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #4]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L32
	b	.L33
.L32:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-20]	@ float
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-32]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-12]	@ float
	ldr	r3, [fp, #-36]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-8]	@ float
	ldr	r3, [fp, #4]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-24]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-28]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-32]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-36]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
.L33:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	hline, .-hline
	.align	2
	.global	hvline
	.syntax unified
	.arm
	.fpu softvfp
	.type	hvline, %function
hvline:
	@ args = 16, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #8]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L37
	b	.L38
.L37:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-20]	@ float
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-32]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-12]	@ float
	ldr	r3, [fp, #-36]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-8]	@ float
	ldr	r3, [fp, #4]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-24]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-28]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-32]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r2, [fp, #-12]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-36]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-8]	@ float
	str	r2, [r3]	@ float
.L38:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	hvline, .-hvline
	.align	2
	.global	add_num14
	.syntax unified
	.arm
	.fpu softvfp
	.type	add_num14, %function
add_num14:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r0, #8
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	add_num14, .-add_num14
	.align	2
	.global	create_list15
	.syntax unified
	.arm
	.fpu softvfp
	.type	create_list15, %function
create_list15:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r0, #8
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r0, [fp, #-16]
	bl	atoi
	mov	r2, r0
	ldr	r3, [fp, #-12]
	str	r2, [r3]
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	create_list15, .-create_list15
	.align	2
	.global	add_num15
	.syntax unified
	.arm
	.fpu softvfp
	.type	add_num15, %function
add_num15:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r0, #8
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r0, [fp, #-16]
	bl	atoi
	mov	r2, r0
	ldr	r3, [fp, #-12]
	str	r2, [r3]
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	add_num15, .-add_num15
	.section	.rodata
	.align	2
.LC0:
	.ascii	"%d\012\000"
	.text
	.align	2
	.global	print_list15
	.syntax unified
	.arm
	.fpu softvfp
	.type	print_list15, %function
print_list15:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	b	.L46
.L47:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L48
	bl	printf
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-8]
.L46:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L47
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L49:
	.align	2
.L48:
	.word	.LC0
	.size	print_list15, .-print_list15
	.align	2
	.global	delete15
	.syntax unified
	.arm
	.fpu softvfp
	.type	delete15, %function
delete15:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r3, [fp, #-24]
	ldr	r2, [r3]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]
	cmp	r2, r3
	bne	.L51
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-28]
	b	.L52
.L51:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
	cmp	r3, #0
	bne	.L53
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-12]
	b	.L54
.L55:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-12]
.L54:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	cmp	r3, #0
	bne	.L55
	ldr	r3, [fp, #-12]
	mov	r2, #0
	str	r2, [r3, #4]
	ldr	r0, [fp, #-16]
	bl	free
	ldr	r3, [fp, #-28]
	b	.L52
.L53:
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-8]
	b	.L56
.L57:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-8]
.L56:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	bne	.L57
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	str	r2, [r3, #4]
	ldr	r0, [fp, #-24]
	bl	free
	ldr	r3, [fp, #-28]
.L52:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	delete15, .-delete15
	.section	.rodata
	.align	2
.LC1:
	.ascii	"%d\000"
	.align	2
.LC2:
	.ascii	", %d\000"
	.text
	.align	2
	.global	getLowest15
	.syntax unified
	.arm
	.fpu softvfp
	.type	getLowest15, %function
getLowest15:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	b	.L59
.L60:
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	ble	.L59
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-12]
.L59:
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #4]
	cmp	r3, #0
	bne	.L60
	ldr	r3, .L64
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L61
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L64+4
	bl	printf
	ldr	r3, .L64
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L64
	str	r3, [r2]
	b	.L62
.L61:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L64+8
	bl	printf
.L62:
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-12]
	bl	delete15
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L65:
	.align	2
.L64:
	.word	i.6554
	.word	.LC1
	.word	.LC2
	.size	getLowest15, .-getLowest15
	.align	2
	.global	create_list20
	.syntax unified
	.arm
	.fpu softvfp
	.type	create_list20, %function
create_list20:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r0, #1004
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	strcpy
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #1000]
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	create_list20, .-create_list20
	.align	2
	.global	add_list20
	.syntax unified
	.arm
	.fpu softvfp
	.type	add_list20, %function
add_list20:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r0, #1004
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	strcpy
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #1000]
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	add_list20, .-add_list20
	.section	.rodata
	.align	2
.LC3:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	compare_list20
	.syntax unified
	.arm
	.fpu softvfp
	.type	compare_list20, %function
compare_list20:
	@ args = 0, pretend = 0, frame = 1024
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #1024
	str	r0, [fp, #-1016]
	str	r1, [fp, #-1020]
	str	r2, [fp, #-1024]
	str	r3, [fp, #-1028]
	ldr	r3, .L80
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	b	.L71
.L77:
	sub	r3, fp, #1008
	mov	r2, #1000
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-1020]
	sub	r3, fp, #1008
	mov	r1, r2
	mov	r0, r3
	bl	strcpy
	ldr	r3, [fp, #-1024]
	cmp	r3, #0
	bne	.L72
	mov	r0, #1008
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-1028]
	ldr	r3, [fp, #-1028]
	sub	r2, fp, #1008
	mov	r1, r2
	mov	r0, r3
	bl	strcpy
	ldr	r3, [fp, #-1028]
	ldr	r2, [fp, #-1024]
	str	r2, [r3, #1004]
	ldr	r3, [fp, #-1028]
	str	r3, [fp, #-1024]
	ldr	r3, [fp, #-1020]
	ldr	r3, [r3, #1000]
	str	r3, [fp, #-1020]
	b	.L71
.L72:
	ldr	r3, [fp, #-1024]
	str	r3, [fp, #-1028]
	b	.L73
.L76:
	ldr	r3, [fp, #-1028]
	sub	r2, fp, #1008
	mov	r1, r2
	mov	r0, r3
	bl	strcasecmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L74
	ldr	r3, [fp, #-1020]
	ldr	r3, [r3, #1000]
	str	r3, [fp, #-1020]
	b	.L71
.L74:
	ldr	r3, [fp, #-1028]
	ldr	r3, [r3, #1004]
	cmp	r3, #0
	bne	.L75
	mov	r0, #1008
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-1028]
	ldr	r3, [fp, #-1028]
	sub	r2, fp, #1008
	mov	r1, r2
	mov	r0, r3
	bl	strcpy
	ldr	r3, [fp, #-1028]
	ldr	r2, [fp, #-1024]
	str	r2, [r3, #1004]
	ldr	r3, [fp, #-1028]
	str	r3, [fp, #-1024]
	ldr	r3, [fp, #-1020]
	ldr	r3, [r3, #1000]
	str	r3, [fp, #-1020]
	b	.L71
.L75:
	ldr	r3, [fp, #-1028]
	ldr	r3, [r3, #1004]
	str	r3, [fp, #-1028]
.L73:
	ldr	r3, [fp, #-1028]
	cmp	r3, #0
	bne	.L76
.L71:
	ldr	r3, [fp, #-1020]
	cmp	r3, #0
	bne	.L77
	ldr	r3, [fp, #-1024]
	ldr	r2, .L80
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L79
	bl	__stack_chk_fail
.L79:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L81:
	.align	2
.L80:
	.word	.LC3
	.size	compare_list20, .-compare_list20
	.align	2
	.global	frequency20
	.syntax unified
	.arm
	.fpu softvfp
	.type	frequency20, %function
frequency20:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	str	r3, [fp, #-20]
	b	.L83
.L86:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L84
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-20]
	b	.L83
.L84:
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-20]
	mov	r1, r2
	mov	r0, r3
	bl	strcasecmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L85
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #1000]
	add	r2, r3, #1
	ldr	r3, [fp, #-20]
	str	r2, [r3, #1000]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #1000]
	str	r3, [fp, #-12]
	b	.L83
.L85:
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #1004]
	str	r3, [fp, #-20]
.L83:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L86
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	frequency20, .-frequency20
	.align	2
	.global	delete20
	.syntax unified
	.arm
	.fpu softvfp
	.type	delete20, %function
delete20:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	bne	.L88
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #1004]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-28]
	b	.L89
.L88:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #1004]
	cmp	r3, #0
	bne	.L90
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #1004]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-12]
	b	.L91
.L92:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #1004]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #1004]
	str	r3, [fp, #-12]
.L91:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #1004]
	cmp	r3, #0
	bne	.L92
	ldr	r3, [fp, #-12]
	mov	r2, #0
	str	r2, [r3, #1004]
	ldr	r0, [fp, #-16]
	bl	free
	ldr	r3, [fp, #-28]
	b	.L89
.L90:
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-8]
	b	.L93
.L94:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #1004]
	str	r3, [fp, #-8]
.L93:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #1004]
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	bne	.L94
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #1004]
	ldr	r3, [fp, #-8]
	str	r2, [r3, #1004]
	ldr	r0, [fp, #-24]
	bl	free
	ldr	r3, [fp, #-28]
.L89:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	delete20, .-delete20
	.section	.rodata
	.align	2
.LC4:
	.ascii	"%s %d\000"
	.align	2
.LC5:
	.ascii	", %s %d\000"
	.text
	.align	2
	.global	getHighest20
	.syntax unified
	.arm
	.fpu softvfp
	.type	getHighest20, %function
getHighest20:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #1000]
	str	r3, [fp, #-8]
	b	.L96
.L97:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #1004]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #1000]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	bge	.L96
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #1000]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-12]
.L96:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #1004]
	cmp	r3, #0
	bne	.L97
	ldr	r3, .L101
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L98
	ldr	r1, [fp, #-12]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #1000]
	mov	r2, r3
	ldr	r0, .L101+4
	bl	printf
	ldr	r3, .L101
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L101
	str	r3, [r2]
	b	.L99
.L98:
	ldr	r1, [fp, #-12]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #1000]
	mov	r2, r3
	ldr	r0, .L101+8
	bl	printf
.L99:
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-12]
	bl	delete20
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L102:
	.align	2
.L101:
	.word	j.6616
	.word	.LC4
	.word	.LC5
	.size	getHighest20, .-getHighest20
	.section	.rodata
	.align	2
.LC6:
	.ascii	"Problem 1: Given a number n, the program will print"
	.ascii	" the number of rightmost 0's of n!.\000"
	.align	2
.LC7:
	.ascii	"Please enter input n: \000"
	.align	2
.LC8:
	.ascii	"%lld\000"
	.global	__aeabi_ldivmod
	.align	2
.LC9:
	.ascii	"The output is: %lld! has %d rightmost 0's.\012\000"
	.align	2
.LC10:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem1
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem1, %function
Problem1:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	ldr	r3, .L107
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #5
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-24]
	ldr	r0, .L107+4
	bl	puts
	ldr	r0, .L107+8
	bl	printf
	sub	r3, fp, #20
	mov	r1, r3
	ldr	r0, .L107+12
	bl	__isoc99_scanf
	b	.L104
.L105:
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	mov	r2, r3
	asr	r3, r2, #31
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r2, [fp, #-28]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	str	r3, [fp, #-28]
.L104:
	ldr	r3, [fp, #-28]
	mov	r2, r3
	asr	r3, r2, #31
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L105
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-24]
	str	r1, [sp]
	ldr	r0, .L107+16
	bl	printf
	nop
	ldr	r3, .L107
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L106
	bl	__stack_chk_fail
.L106:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L108:
	.align	2
.L107:
	.word	.LC10
	.word	.LC6
	.word	.LC7
	.word	.LC8
	.word	.LC9
	.size	Problem1, .-Problem1
	.section	.rodata
	.align	2
.LC11:
	.ascii	"Problem 2: Given 4 points ((x1,y1), (x2,y2), (x3,y3"
	.ascii	"), (x4,y4)), \012the program will determine the int"
	.ascii	"ersection of the line segments formed by \012(x1,y1"
	.ascii	"), (x2,y2) and (x3,y3), (x4,y4).\000"
	.align	2
.LC12:
	.ascii	"Enter x1,y1,x2,y2,x3,y3,x4,y4: \000"
	.global	__aeabi_d2f
	.align	2
.LC13:
	.ascii	"The output is: \000"
	.global	__aeabi_fsub
	.global	__aeabi_fcmpeq
	.global	__aeabi_f2d
	.align	2
.LC14:
	.ascii	"The lines will intersect at (%.3f, %.3f).\012\000"
	.global	__aeabi_fcmpge
	.global	__aeabi_fcmple
	.align	2
.LC15:
	.ascii	"The lines are coinciding.\000"
	.align	2
.LC16:
	.ascii	"No intersection.\000"
	.global	__aeabi_fcmplt
	.global	__aeabi_fdiv
	.global	__aeabi_fmul
	.global	__aeabi_fadd
	.align	2
.LC17:
	.ascii	"The lines will intersect at (%.3f,%.3f).\012\000"
	.align	2
.LC18:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem2, %function
Problem2:
	@ args = 0, pretend = 0, frame = 2176
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #2192
	ldr	r3, .L233
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-1016]
	sub	r3, fp, #1012
	mov	r2, #996
	mov	r1, #0
	mov	r0, r3
	bl	memset
	mov	r3, #0
	str	r3, [fp, #-2152]
	ldr	r0, .L233+4
	bl	puts
	ldr	r0, .L233+8
	bl	printf
	ldr	r3, .L233+12
	ldr	r2, [r3]
	sub	r3, fp, #2000
	sub	r3, r3, #12
	sub	r3, r3, #4
	mov	r1, #1000
	mov	r0, r3
	bl	fgets
	sub	r3, fp, #2000
	sub	r3, r3, #12
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	sub	r2, fp, #12
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3, #-2004]
	mov	r3, #0
	str	r3, [fp, #-2148]
	b	.L110
.L113:
	sub	r3, fp, #2000
	sub	r3, r3, #12
	sub	r3, r3, #4
	ldr	r2, [fp, #-2148]
	add	r1, r3, r2
	sub	r3, fp, #1016
	mov	r2, #1
	mov	r0, r3
	bl	strncat
	ldr	r3, [fp, #-2148]
	add	r3, r3, #1
	str	r3, [fp, #-2148]
.L111:
	sub	r3, fp, #2000
	sub	r3, r3, #12
	sub	r3, r3, #4
	ldr	r2, [fp, #-2148]
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #44
	beq	.L112
	sub	r3, fp, #2000
	sub	r3, r3, #12
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-2148]
	cmp	r2, r3
	bhi	.L113
.L112:
	sub	r3, fp, #1016
	mov	r0, r3
	bl	atof
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r2, r0
	ldr	r3, [fp, #-2152]
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-2036]	@ float
	ldr	r3, [fp, #-2152]
	add	r3, r3, #1
	str	r3, [fp, #-2152]
	sub	r3, fp, #1016
	mov	r2, #1000
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-2148]
	add	r3, r3, #1
	str	r3, [fp, #-2148]
.L110:
	sub	r3, fp, #2000
	sub	r3, r3, #12
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-2148]
	cmp	r2, r3
	bhi	.L111
	ldr	r3, [fp, #-2048]	@ float
	str	r3, [fp, #-2112]	@ float
	ldr	r3, [fp, #-2044]	@ float
	str	r3, [fp, #-2108]	@ float
	ldr	r3, [fp, #-2040]	@ float
	str	r3, [fp, #-2104]	@ float
	ldr	r3, [fp, #-2036]	@ float
	str	r3, [fp, #-2100]	@ float
	ldr	r3, [fp, #-2032]	@ float
	str	r3, [fp, #-2096]	@ float
	ldr	r3, [fp, #-2028]	@ float
	str	r3, [fp, #-2092]	@ float
	ldr	r3, [fp, #-2024]	@ float
	str	r3, [fp, #-2088]	@ float
	ldr	r3, [fp, #-2020]	@ float
	str	r3, [fp, #-2084]	@ float
	ldr	r0, .L233+16
	bl	printf
	ldr	r1, [fp, #-2112]	@ float
	ldr	r0, [fp, #-2104]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L220
	ldr	r1, [fp, #-2096]	@ float
	ldr	r0, [fp, #-2088]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L221
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	ldr	r3, [fp, #-2100]	@ float
	ldr	r2, [fp, #-2104]	@ float
	ldr	r1, [fp, #-2108]	@ float
	ldr	r0, [fp, #-2112]	@ float
	bl	vchecker1
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	ldr	r3, [fp, #-2084]	@ float
	ldr	r2, [fp, #-2088]	@ float
	ldr	r1, [fp, #-2092]	@ float
	ldr	r0, [fp, #-2096]	@ float
	bl	vchecker2
	sub	r1, fp, #2160
	sub	r1, r1, #12
	sub	r1, r1, #4
	sub	r2, fp, #2160
	sub	r2, r2, #12
	sub	r2, r2, #12
	sub	ip, fp, #2160
	sub	ip, ip, #12
	sub	r0, fp, #2160
	sub	r0, r0, #12
	sub	r0, r0, #8
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	mov	r3, r1
	mov	r1, ip
	bl	hvline
	ldr	r3, [fp, #-2180]	@ float
	ldr	r2, [fp, #-2164]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L222
	ldr	r3, [fp, #-2176]	@ float
	ldr	r2, [fp, #-2156]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L223
	ldr	r3, [fp, #-2184]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-2176]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L233+20
	bl	printf
	b	.L232
.L223:
	ldr	r3, [fp, #-2176]	@ float
	ldr	r2, [fp, #-2160]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L124
	ldr	r3, [fp, #-2176]	@ float
	ldr	r2, [fp, #-2156]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L124
	ldr	r0, .L233+24
	bl	puts
	b	.L138
.L124:
	ldr	r0, .L233+28
	bl	puts
	b	.L232
.L222:
	ldr	r0, .L233+28
	bl	puts
	b	.L232
.L221:
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	ldr	r3, [fp, #-2100]	@ float
	ldr	r2, [fp, #-2104]	@ float
	ldr	r1, [fp, #-2108]	@ float
	ldr	r0, [fp, #-2112]	@ float
	bl	vchecker1
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	ldr	r3, [fp, #-2084]	@ float
	ldr	r2, [fp, #-2088]	@ float
	ldr	r1, [fp, #-2092]	@ float
	ldr	r0, [fp, #-2096]	@ float
	bl	checker2
	ldr	r3, [fp, #-2156]	@ float
	ldr	r2, [fp, #-2160]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L224
	ldr	r3, [fp, #-2160]	@ float
	str	r3, [fp, #-2144]	@ float
	ldr	r3, [fp, #-2156]	@ float
	str	r3, [fp, #-2140]	@ float
	b	.L130
.L224:
	ldr	r3, [fp, #-2156]	@ float
	str	r3, [fp, #-2144]	@ float
	ldr	r3, [fp, #-2160]	@ float
	str	r3, [fp, #-2140]	@ float
.L130:
	ldr	r1, [fp, #-2092]	@ float
	ldr	r0, [fp, #-2084]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r4, r3
	ldr	r1, [fp, #-2096]	@ float
	ldr	r0, [fp, #-2088]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-2076]	@ float
	ldr	r1, [fp, #-2096]	@ float
	ldr	r0, [fp, #-2076]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-2092]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-2068]	@ float
	ldr	r3, [fp, #-2180]	@ float
	str	r3, [fp, #-2064]	@ float
	ldr	r1, [fp, #-2064]	@ float
	ldr	r0, [fp, #-2076]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-2068]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-2060]	@ float
	ldr	r3, [fp, #-2176]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L131
	ldr	r3, [fp, #-2172]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L131
	ldr	r3, [fp, #-2168]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L131
	ldr	r3, [fp, #-2164]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L131
	ldr	r1, [fp, #-2144]	@ float
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L131
	ldr	r1, [fp, #-2140]	@ float
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L131
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L233+20
	bl	printf
	b	.L138
.L131:
	ldr	r0, .L233+28
	bl	puts
	b	.L232
.L220:
	ldr	r1, [fp, #-2096]	@ float
	ldr	r0, [fp, #-2088]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L225
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	ldr	r3, [fp, #-2100]	@ float
	ldr	r2, [fp, #-2104]	@ float
	ldr	r1, [fp, #-2108]	@ float
	ldr	r0, [fp, #-2112]	@ float
	bl	checker1
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	ldr	r3, [fp, #-2084]	@ float
	ldr	r2, [fp, #-2088]	@ float
	ldr	r1, [fp, #-2092]	@ float
	ldr	r0, [fp, #-2096]	@ float
	bl	vchecker2
	ldr	r3, [fp, #-2172]	@ float
	ldr	r2, [fp, #-2176]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L226
	ldr	r3, [fp, #-2176]	@ float
	str	r3, [fp, #-2136]	@ float
	ldr	r3, [fp, #-2172]	@ float
	str	r3, [fp, #-2132]	@ float
	b	.L143
.L226:
	ldr	r3, [fp, #-2172]	@ float
	str	r3, [fp, #-2136]	@ float
	ldr	r3, [fp, #-2176]	@ float
	str	r3, [fp, #-2132]	@ float
.L143:
	ldr	r1, [fp, #-2108]	@ float
	ldr	r0, [fp, #-2100]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r4, r3
	ldr	r1, [fp, #-2112]	@ float
	ldr	r0, [fp, #-2104]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-2080]	@ float
	ldr	r1, [fp, #-2112]	@ float
	ldr	r0, [fp, #-2080]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-2108]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-2072]	@ float
	ldr	r3, [fp, #-2164]	@ float
	str	r3, [fp, #-2064]	@ float
	ldr	r1, [fp, #-2064]	@ float
	ldr	r0, [fp, #-2080]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-2072]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-2060]	@ float
	ldr	r3, [fp, #-2160]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L144
	ldr	r3, [fp, #-2156]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L144
	ldr	r3, [fp, #-2184]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L144
	ldr	r3, [fp, #-2180]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L144
	ldr	r1, [fp, #-2136]	@ float
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L144
	ldr	r1, [fp, #-2132]	@ float
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L144
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L233+20
	bl	printf
	b	.L138
.L144:
	ldr	r0, .L233+28
	bl	puts
	b	.L232
.L225:
	ldr	r1, [fp, #-2108]	@ float
	ldr	r0, [fp, #-2100]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r4, r3
	ldr	r1, [fp, #-2112]	@ float
	ldr	r0, [fp, #-2104]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-2080]	@ float
	ldr	r1, [fp, #-2092]	@ float
	ldr	r0, [fp, #-2084]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r4, r3
	ldr	r1, [fp, #-2096]	@ float
	ldr	r0, [fp, #-2088]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-2076]	@ float
	ldr	r1, [fp, #-2112]	@ float
	ldr	r0, [fp, #-2080]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-2108]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-2072]	@ float
	ldr	r1, [fp, #-2096]	@ float
	ldr	r0, [fp, #-2076]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-2092]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-2068]	@ float
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2160
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	ldr	r3, [fp, #-2100]	@ float
	ldr	r2, [fp, #-2104]	@ float
	ldr	r1, [fp, #-2108]	@ float
	ldr	r0, [fp, #-2112]	@ float
	bl	checker1
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	ldr	r3, [fp, #-2084]	@ float
	ldr	r2, [fp, #-2088]	@ float
	ldr	r1, [fp, #-2092]	@ float
	ldr	r0, [fp, #-2096]	@ float
	bl	checker2
	sub	r1, fp, #2160
	sub	r1, r1, #12
	sub	r1, r1, #4
	sub	r2, fp, #2160
	sub	r2, r2, #12
	sub	r2, r2, #12
	sub	ip, fp, #2160
	sub	ip, ip, #12
	sub	r0, fp, #2160
	sub	r0, r0, #12
	sub	r0, r0, #8
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #4
	str	r3, [sp, #12]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp, #8]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	str	r3, [sp, #4]
	sub	r3, fp, #2144
	sub	r3, r3, #12
	sub	r3, r3, #8
	str	r3, [sp]
	mov	r3, r1
	mov	r1, ip
	bl	hline
	ldr	r1, [fp, #-2076]	@ float
	ldr	r0, [fp, #-2080]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L227
	ldr	r1, [fp, #-2068]	@ float
	ldr	r0, [fp, #-2072]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L228
	ldr	r3, [fp, #-2184]	@ float
	ldr	r2, [fp, #-2180]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L156
	ldr	r3, [fp, #-2176]	@ float
	ldr	r2, [fp, #-2156]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L156
	ldr	r3, [fp, #-2184]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-2176]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L233+20
	bl	printf
	b	.L138
.L156:
	ldr	r3, [fp, #-2184]	@ float
	ldr	r2, [fp, #-2168]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L160
	ldr	r3, [fp, #-2184]	@ float
	ldr	r2, [fp, #-2164]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L160
	ldr	r0, .L233+24
	bl	puts
	b	.L138
.L160:
	ldr	r0, .L233+28
	bl	puts
	b	.L232
.L228:
	ldr	r0, .L233+28
	bl	puts
	b	.L232
.L227:
	ldr	r1, [fp, #-2072]	@ float
	ldr	r0, [fp, #-2068]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r4, r3
	ldr	r1, [fp, #-2076]	@ float
	ldr	r0, [fp, #-2080]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-2064]	@ float
	ldr	r1, [fp, #-2064]	@ float
	ldr	r0, [fp, #-2080]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-2072]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-2060]	@ float
	ldr	r3, [fp, #-2172]	@ float
	ldr	r2, [fp, #-2176]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L229
	ldr	r3, [fp, #-2176]	@ float
	str	r3, [fp, #-2128]	@ float
	ldr	r3, [fp, #-2172]	@ float
	str	r3, [fp, #-2124]	@ float
	b	.L165
.L229:
	ldr	r3, [fp, #-2172]	@ float
	str	r3, [fp, #-2128]	@ float
	ldr	r3, [fp, #-2176]	@ float
	str	r3, [fp, #-2124]	@ float
.L165:
	ldr	r3, [fp, #-2156]	@ float
	ldr	r2, [fp, #-2160]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L230
	ldr	r3, [fp, #-2160]	@ float
	str	r3, [fp, #-2120]	@ float
	ldr	r3, [fp, #-2156]	@ float
	str	r3, [fp, #-2116]	@ float
	b	.L168
.L230:
	ldr	r3, [fp, #-2156]	@ float
	str	r3, [fp, #-2120]	@ float
	ldr	r3, [fp, #-2160]	@ float
	str	r3, [fp, #-2116]	@ float
.L168:
	ldr	r1, [fp, #-2104]	@ float
	ldr	r0, [fp, #-2112]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L231
	ldr	r3, [fp, #-2112]	@ float
	str	r3, [fp, #-2056]	@ float
	ldr	r3, [fp, #-2104]	@ float
	str	r3, [fp, #-2052]	@ float
	b	.L171
.L231:
	ldr	r3, [fp, #-2104]	@ float
	str	r3, [fp, #-2056]	@ float
	ldr	r3, [fp, #-2112]	@ float
	str	r3, [fp, #-2052]	@ float
.L171:
	ldr	r3, [fp, #-2180]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L172
	ldr	r3, [fp, #-2184]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L172
	ldr	r3, [fp, #-2164]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L172
	ldr	r3, [fp, #-2168]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L172
	ldr	r1, [fp, #-2128]	@ float
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L172
	ldr	r1, [fp, #-2124]	@ float
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L172
	ldr	r1, [fp, #-2120]	@ float
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L172
	ldr	r1, [fp, #-2116]	@ float
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L172
	ldr	r0, [fp, #-2064]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-2060]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L233+32
	bl	printf
	b	.L138
.L172:
	ldr	r0, .L233+28
	bl	puts
	b	.L232
.L138:
.L232:
	nop
	ldr	r3, .L233
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L181
	bl	__stack_chk_fail
.L181:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L234:
	.align	2
.L233:
	.word	.LC18
	.word	.LC11
	.word	.LC12
	.word	stdin
	.word	.LC13
	.word	.LC14
	.word	.LC15
	.word	.LC16
	.word	.LC17
	.size	Problem2, .-Problem2
	.section	.rodata
	.align	2
.LC19:
	.ascii	"Problem 3: Given an input n, the program will print"
	.ascii	" out its prime factorization.\000"
	.align	2
.LC20:
	.ascii	"The output is: %lld = \000"
	.align	2
.LC21:
	.ascii	"^%d\000"
	.align	2
.LC22:
	.ascii	" x \000"
	.align	2
.LC23:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem3
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem3, %function
Problem3:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #48
	ldr	r3, .L253
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-68]
	mov	r3, #0
	str	r3, [fp, #-64]
	ldr	r0, .L253+4
	bl	puts
	ldr	r0, .L253+8
	bl	printf
	sub	r3, fp, #60
	mov	r1, r3
	ldr	r0, .L253+12
	bl	__isoc99_scanf
	mov	r2, #2
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	ldr	r0, .L253+16
	bl	printf
	mov	r2, #2
	mov	r3, #0
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	b	.L236
.L249:
	mov	r2, #2
	mov	r3, #0
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	b	.L237
.L240:
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_ldivmod
	orrs	r3, r2, r3
	beq	.L251
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	adds	r4, r2, #1
	adc	r5, r3, #0
	str	r4, [fp, #-44]
	str	r5, [fp, #-40]
.L237:
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L240
	b	.L239
.L251:
	nop
.L239:
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L241
	b	.L242
.L248:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_ldivmod
	orrs	r3, r2, r3
	bne	.L252
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	cmp	r1, r3
	cmpeq	r0, r2
	bne	.L244
	b	.L245
.L246:
	ldr	r3, [fp, #-68]
	add	r3, r3, #1
	str	r3, [fp, #-68]
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L245:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_ldivmod
	orrs	r3, r2, r3
	beq	.L246
	ldr	r3, [fp, #-64]
	cmp	r3, #0
	bne	.L247
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	ldr	r0, .L253+12
	bl	printf
	ldr	r3, [fp, #-64]
	add	r3, r3, #1
	str	r3, [fp, #-64]
.L247:
	ldr	r3, [fp, #-68]
	cmp	r3, #1
	ble	.L242
	ldr	r1, [fp, #-68]
	ldr	r0, .L253+20
	bl	printf
	b	.L242
.L244:
	mov	r3, #0
	str	r3, [fp, #-68]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-64]
	ldr	r0, .L253+24
	bl	printf
	nop
.L242:
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	cmp	r2, #1
	sbcs	r3, r3, #0
	bge	.L248
	b	.L241
.L252:
	nop
.L241:
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	adds	r6, r2, #1
	adc	r7, r3, #0
	str	r6, [fp, #-52]
	str	r7, [fp, #-48]
.L236:
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	ldr	r0, .L253+28
	mov	r1, #0
	cmp	r2, r0
	sbcs	r3, r3, r1
	blt	.L249
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L253
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L250
	bl	__stack_chk_fail
.L250:
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
.L254:
	.align	2
.L253:
	.word	.LC23
	.word	.LC19
	.word	.LC7
	.word	.LC8
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.word	100000
	.size	Problem3, .-Problem3
	.section	.rodata
	.align	2
.LC24:
	.ascii	"Problem 7: Given a number n, all the fractions less"
	.ascii	" than 1, such that n is the denominator, is printed"
	.ascii	" (in lowest terms).\000"
	.align	2
.LC25:
	.ascii	"Enter n: \000"
	.global	__aeabi_idivmod
	.global	__aeabi_idiv
	.align	2
.LC26:
	.ascii	"The output is: 1/%d\000"
	.align	2
.LC27:
	.ascii	", %d/%d\000"
	.align	2
.LC28:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem7
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem7, %function
Problem7:
	@ args = 0, pretend = 0, frame = 8032
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8000
	sub	sp, sp, #32
	ldr	r3, .L275
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-3920]
	ldr	r0, .L275+4
	bl	puts
	ldr	r0, .L275+8
	bl	printf
	sub	r3, fp, #8000
	sub	r3, r3, #4
	sub	r3, r3, #28
	mov	r1, r3
	ldr	r0, .L275+12
	bl	__isoc99_scanf
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #2
	str	r3, [r2, #-3928]
	b	.L256
.L262:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #2
	str	r3, [r2, #-3924]
	b	.L257
.L260:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r3, [r3, #-3928]
	ldr	r1, [r2, #-3924]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	beq	.L273
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3924]
	add	r3, r3, #1
	str	r3, [r2, #-3924]
.L257:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r1, [r2, #-3924]
	ldr	r0, [r3, #-3928]
	bl	__aeabi_idiv
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3924]
	cmp	r3, r2
	ble	.L260
	b	.L259
.L273:
	nop
.L259:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r1, [r2, #-3924]
	ldr	r0, [r3, #-3928]
	bl	__aeabi_idiv
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3924]
	cmp	r3, r2
	ble	.L261
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3932]
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r1, [r2, #-3928]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L261
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3920]
	lsl	r3, r3, #2
	add	r3, r2, r3
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r2, [r2, #-3928]
	str	r2, [r3, #-3908]
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3920]
	add	r3, r3, #1
	str	r3, [r2, #-3920]
.L261:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3928]
	add	r3, r3, #1
	str	r3, [r2, #-3928]
.L256:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3928]
	ldr	r2, .L275+16
	cmp	r3, r2
	blt	.L262
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3920]
	str	r3, [r2, #-3912]
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #2
	str	r3, [r2, #-3916]
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-3928]
	b	.L263
.L264:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3928]
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r2, [r2, #-3916]
	str	r2, [r3, #-4004]
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3916]
	add	r3, r3, #1
	str	r3, [r2, #-3916]
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3928]
	add	r3, r3, #1
	str	r3, [r2, #-3928]
.L263:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3932]
	sub	r3, r3, #2
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r2, [r2, #-3928]
	cmp	r2, r3
	blt	.L264
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3932]
	mov	r1, r3
	ldr	r0, .L275+20
	bl	printf
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-3928]
	b	.L265
.L271:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-3920]
	b	.L266
.L270:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3928]
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r2, [r3, #-4004]
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3920]
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r3, [r3, #-3908]
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	beq	.L274
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3920]
	add	r3, r3, #1
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r2, [r2, #-3912]
	cmp	r2, r3
	bne	.L269
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3928]
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-4004]
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r2, [r2, #-3932]
	mov	r1, r3
	ldr	r0, .L275+24
	bl	printf
.L269:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3920]
	add	r3, r3, #1
	str	r3, [r2, #-3920]
.L266:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r2, [r2, #-3920]
	ldr	r3, [r3, #-3912]
	cmp	r2, r3
	blt	.L270
	b	.L268
.L274:
	nop
.L268:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3928]
	add	r3, r3, #1
	str	r3, [r2, #-3928]
.L265:
	sub	r3, fp, #4096
	sub	r3, r3, #4
	ldr	r3, [r3, #-3932]
	sub	r3, r3, #2
	sub	r2, fp, #4096
	sub	r2, r2, #4
	ldr	r2, [r2, #-3928]
	cmp	r2, r3
	blt	.L271
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L275
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L272
	bl	__stack_chk_fail
.L272:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L276:
	.align	2
.L275:
	.word	.LC28
	.word	.LC24
	.word	.LC25
	.word	.LC1
	.word	100000
	.word	.LC26
	.word	.LC27
	.size	Problem7, .-Problem7
	.section	.rodata
	.align	2
.LC29:
	.ascii	"Problem 10: Given n, print its resulting roman nume"
	.ascii	"ral equivalence.\000"
	.align	2
.LC30:
	.ascii	"CM\000"
	.align	2
.LC31:
	.ascii	"CD\000"
	.align	2
.LC32:
	.ascii	"XC\000"
	.align	2
.LC33:
	.ascii	"XL\000"
	.align	2
.LC34:
	.ascii	"IX\000"
	.align	2
.LC35:
	.ascii	"IV\000"
	.align	2
.LC36:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem10
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem10, %function
Problem10:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L305
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #1
	str	r3, [fp, #-16]
	ldr	r0, .L305+4
	bl	puts
	ldr	r0, .L305+8
	bl	printf
	sub	r3, fp, #20
	mov	r1, r3
	ldr	r0, .L305+12
	bl	__isoc99_scanf
	ldr	r0, .L305+16
	bl	printf
	ldr	r3, [fp, #-20]
	cmp	r3, #99
	ble	.L278
	ldr	r3, [fp, #-20]
	sub	r3, r3, #900
	cmp	r3, #99
	bhi	.L279
	ldr	r0, .L305+20
	bl	printf
	b	.L280
.L279:
	ldr	r3, [fp, #-20]
	cmp	r3, #500
	blt	.L281
	mov	r0, #68
	bl	putchar
	ldr	r3, [fp, #-20]
	cmp	r3, #600
	blt	.L280
	ldr	r3, [fp, #-20]
	cmp	r3, #900
	bge	.L280
	ldr	r3, [fp, #-20]
	ldr	r2, .L305+24
	smull	r1, r2, r3, r2
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	sub	r3, r3, #5
	str	r3, [fp, #-12]
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L282
.L283:
	mov	r0, #67
	bl	putchar
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L282:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	ble	.L283
	b	.L280
.L281:
	ldr	r3, [fp, #-20]
	sub	r3, r3, #400
	cmp	r3, #99
	bhi	.L284
	ldr	r0, .L305+28
	bl	printf
	b	.L280
.L284:
	ldr	r3, [fp, #-20]
	cmp	r3, #99
	ble	.L280
	ldr	r3, [fp, #-20]
	ldr	r2, .L305+24
	smull	r1, r2, r3, r2
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-12]
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L285
.L286:
	mov	r0, #67
	bl	putchar
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L285:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	ble	.L286
.L280:
	ldr	r1, [fp, #-20]
	ldr	r3, .L305+24
	smull	r2, r3, r1, r3
	asr	r2, r3, #5
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, r1, r3
	str	r2, [fp, #-20]
.L278:
	ldr	r3, [fp, #-20]
	cmp	r3, #9
	ble	.L287
	ldr	r3, [fp, #-20]
	sub	r3, r3, #90
	cmp	r3, #9
	bhi	.L288
	ldr	r0, .L305+32
	bl	printf
	b	.L289
.L288:
	ldr	r3, [fp, #-20]
	cmp	r3, #49
	ble	.L290
	mov	r0, #76
	bl	putchar
	ldr	r3, [fp, #-20]
	cmp	r3, #59
	ble	.L289
	ldr	r3, [fp, #-20]
	cmp	r3, #89
	bgt	.L289
	ldr	r3, [fp, #-20]
	ldr	r2, .L305+36
	smull	r1, r2, r3, r2
	asr	r2, r2, #2
	asr	r3, r3, #31
	sub	r3, r2, r3
	sub	r3, r3, #5
	str	r3, [fp, #-12]
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L291
.L292:
	mov	r0, #88
	bl	putchar
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L291:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	ble	.L292
	b	.L289
.L290:
	ldr	r3, [fp, #-20]
	sub	r3, r3, #40
	cmp	r3, #9
	bhi	.L293
	ldr	r0, .L305+40
	bl	printf
	b	.L289
.L293:
	ldr	r3, [fp, #-20]
	cmp	r3, #9
	ble	.L289
	ldr	r3, [fp, #-20]
	ldr	r2, .L305+36
	smull	r1, r2, r3, r2
	asr	r2, r2, #2
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-12]
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L294
.L295:
	mov	r0, #88
	bl	putchar
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L294:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	ble	.L295
.L289:
	ldr	r1, [fp, #-20]
	ldr	r3, .L305+36
	smull	r2, r3, r1, r3
	asr	r2, r3, #2
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	sub	r2, r1, r3
	str	r2, [fp, #-20]
.L287:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	ble	.L296
	ldr	r3, [fp, #-20]
	cmp	r3, #9
	bne	.L297
	ldr	r0, .L305+44
	bl	printf
	b	.L296
.L297:
	ldr	r3, [fp, #-20]
	cmp	r3, #4
	ble	.L298
	mov	r0, #86
	bl	putchar
	ldr	r3, [fp, #-20]
	cmp	r3, #5
	ble	.L296
	ldr	r3, [fp, #-20]
	cmp	r3, #8
	bgt	.L296
	ldr	r3, [fp, #-20]
	sub	r3, r3, #5
	str	r3, [fp, #-12]
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L299
.L300:
	mov	r0, #73
	bl	putchar
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L299:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	ble	.L300
	b	.L296
.L298:
	ldr	r3, [fp, #-20]
	cmp	r3, #4
	bne	.L301
	ldr	r0, .L305+48
	bl	printf
	b	.L296
.L301:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	ble	.L296
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-12]
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L302
.L303:
	mov	r0, #73
	bl	putchar
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L302:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	ble	.L303
.L296:
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L305
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L304
	bl	__stack_chk_fail
.L304:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L306:
	.align	2
.L305:
	.word	.LC36
	.word	.LC29
	.word	.LC25
	.word	.LC1
	.word	.LC13
	.word	.LC30
	.word	1374389535
	.word	.LC31
	.word	.LC32
	.word	1717986919
	.word	.LC33
	.word	.LC34
	.word	.LC35
	.size	Problem10, .-Problem10
	.section	.rodata
	.align	2
.LC37:
	.ascii	"Problem 12: Given a peso amount, print out its equi"
	.ascii	"valent standard peso currency using the least numbe"
	.ascii	"r of denominations.\000"
	.align	2
.LC38:
	.ascii	"Enter a peso amount: \000"
	.align	2
.LC39:
	.ascii	"%lf\000"
	.align	2
.LC40:
	.ascii	"The output is: %.2lf = \000"
	.global	__aeabi_dcmpge
	.global	__aeabi_d2iz
	.align	2
.LC41:
	.ascii	"(%d) 1000 \000"
	.global	__aeabi_i2d
	.global	__aeabi_dsub
	.align	2
.LC42:
	.ascii	"(%d) 500 \000"
	.align	2
.LC43:
	.ascii	"+ (%d) 500 \000"
	.align	2
.LC44:
	.ascii	"(%d) 200 \000"
	.align	2
.LC45:
	.ascii	"+ (%d) 200 \000"
	.align	2
.LC46:
	.ascii	"(%d) 100\000"
	.align	2
.LC47:
	.ascii	"+ (%d) 100 \000"
	.align	2
.LC48:
	.ascii	"(%d) 50 \000"
	.align	2
.LC49:
	.ascii	"+ (%d) 50 \000"
	.align	2
.LC50:
	.ascii	"(%d) 20 \000"
	.align	2
.LC51:
	.ascii	"+ (%d) 20 \000"
	.align	2
.LC52:
	.ascii	"(%d) 10 \000"
	.align	2
.LC53:
	.ascii	"+ (%d) 10 \000"
	.align	2
.LC54:
	.ascii	"(%d) 5 \000"
	.align	2
.LC55:
	.ascii	"+ (%d) 5 \000"
	.align	2
.LC56:
	.ascii	"(%d) 1 \000"
	.align	2
.LC57:
	.ascii	"+ (%d) 1 \000"
	.global	__aeabi_ddiv
	.align	2
.LC58:
	.ascii	"(%.0lf) 0.25 \000"
	.align	2
.LC59:
	.ascii	"+ (%.0lf) 0.25 \000"
	.global	__aeabi_dmul
	.align	2
.LC60:
	.ascii	"(%.0lf) 0.10 \000"
	.align	2
.LC61:
	.ascii	"+ (%.0lf) 0.10 \000"
	.align	2
.LC62:
	.ascii	"(%.0lf) 0.05 \000"
	.align	2
.LC63:
	.ascii	"+ (%.0lf) 0.05 \000"
	.align	2
.LC64:
	.ascii	"(%.0lf) 0.01 \000"
	.align	2
.LC65:
	.ascii	"+ (%.0lf) 0.01 \000"
	.align	2
.LC66:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem12
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem12, %function
Problem12:
	@ args = 0, pretend = 0, frame = 88
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #88
	ldr	r3, .L372
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-100]
	ldr	r0, .L372+4
	bl	puts
	ldr	r0, .L372+8
	bl	printf
	sub	r3, fp, #60
	mov	r1, r3
	ldr	r0, .L372+12
	bl	__isoc99_scanf
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	ldr	r0, .L372+16
	bl	printf
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+20
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L308
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	ldr	r2, .L372+24
	smull	r1, r2, r3, r2
	asr	r2, r2, #6
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-96]
	ldr	r1, [fp, #-96]
	ldr	r0, .L372+28
	bl	printf
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, [fp, #-96]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
.L308:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+32
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L310
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	ldr	r2, .L372+24
	smull	r1, r2, r3, r2
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-92]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L312
	ldr	r1, [fp, #-92]
	ldr	r0, .L372+36
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L313
.L312:
	ldr	r1, [fp, #-92]
	ldr	r0, .L372+40
	bl	printf
.L313:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, [fp, #-92]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L310:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+44
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L314
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	ldr	r2, .L372+48
	smull	r1, r2, r3, r2
	asr	r2, r2, #6
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-88]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L316
	ldr	r1, [fp, #-88]
	ldr	r0, .L372+52
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L317
.L316:
	ldr	r1, [fp, #-88]
	ldr	r0, .L372+56
	bl	printf
.L317:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, [fp, #-88]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L314:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+60
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L318
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	ldr	r2, .L372+48
	smull	r1, r2, r3, r2
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-84]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L320
	ldr	r1, [fp, #-84]
	ldr	r0, .L372+64
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L321
.L320:
	ldr	r1, [fp, #-84]
	ldr	r0, .L372+68
	bl	printf
.L321:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, [fp, #-84]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L318:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+72
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L322
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	ldr	r2, .L372+48
	smull	r1, r2, r3, r2
	asr	r2, r2, #4
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-80]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L324
	ldr	r1, [fp, #-80]
	ldr	r0, .L372+76
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L325
.L324:
	ldr	r1, [fp, #-80]
	ldr	r0, .L372+80
	bl	printf
.L325:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, [fp, #-80]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L322:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+84
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L326
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	ldr	r2, .L372+88
	smull	r1, r2, r3, r2
	asr	r2, r2, #3
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-76]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L328
	ldr	r1, [fp, #-76]
	ldr	r0, .L372+92
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L329
.L328:
	ldr	r1, [fp, #-76]
	ldr	r0, .L372+96
	bl	printf
.L329:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, [fp, #-76]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L326:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+100
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L330
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	ldr	r2, .L372+88
	smull	r1, r2, r3, r2
	asr	r2, r2, #2
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-72]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L332
	ldr	r1, [fp, #-72]
	ldr	r0, .L372+104
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L333
.L332:
	ldr	r1, [fp, #-72]
	ldr	r0, .L372+108
	bl	printf
.L333:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, [fp, #-72]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L330:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+112
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L334
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	ldr	r2, .L372+88
	smull	r1, r2, r3, r2
	asr	r2, r2, #1
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-68]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L336
	ldr	r1, [fp, #-68]
	ldr	r0, .L372+116
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L337
.L336:
	ldr	r1, [fp, #-68]
	ldr	r0, .L372+120
	bl	printf
.L337:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, [fp, #-68]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L334:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+124
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L338
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-64]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L340
	ldr	r1, [fp, #-64]
	ldr	r0, .L372+128
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L341
.L340:
	ldr	r1, [fp, #-64]
	ldr	r0, .L372+132
	bl	printf
.L341:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r0, [fp, #-64]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L338:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+136
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L342
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L372+136
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L344
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	ldr	r0, .L372+140
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L345
.L344:
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	ldr	r0, .L372+144
	bl	printf
.L345:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	mov	r2, #0
	ldr	r3, .L372+136
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L342:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	ldr	r2, .L372+148
	ldr	r3, .L372+152
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L346
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	ldr	r2, .L372+148
	ldr	r3, .L372+152
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L348
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	ldr	r0, .L372+156
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L349
.L348:
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	ldr	r0, .L372+160
	bl	printf
.L349:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, .L372+148
	ldr	r3, .L372+152
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L346:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	ldr	r2, .L372+148
	ldr	r3, .L372+164
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L350
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	ldr	r2, .L372+148
	ldr	r3, .L372+164
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L352
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	ldr	r0, .L372+168
	bl	printf
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
	b	.L353
.L352:
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	ldr	r0, .L372+172
	bl	printf
.L353:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, .L372+148
	ldr	r3, .L372+164
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L350:
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	ldr	r2, .L372+176
	ldr	r3, .L372+180
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L354
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	ldr	r2, .L372+176
	ldr	r3, .L372+180
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	bne	.L356
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	ldr	r0, .L372+184
	bl	printf
	b	.L357
.L356:
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	ldr	r0, .L372+188
	bl	printf
.L357:
	sub	r5, fp, #60
	ldmia	r5, {r4-r5}
	ldr	r2, .L372+176
	ldr	r3, .L372+180
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
.L354:
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L372
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L358
	bl	__stack_chk_fail
.L358:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L373:
	.align	2
.L372:
	.word	.LC66
	.word	.LC37
	.word	.LC38
	.word	.LC39
	.word	.LC40
	.word	1083129856
	.word	274877907
	.word	.LC41
	.word	1082081280
	.word	.LC42
	.word	.LC43
	.word	1080623104
	.word	1374389535
	.word	.LC44
	.word	.LC45
	.word	1079574528
	.word	.LC46
	.word	.LC47
	.word	1078525952
	.word	.LC48
	.word	.LC49
	.word	1077149696
	.word	1717986919
	.word	.LC50
	.word	.LC51
	.word	1076101120
	.word	.LC52
	.word	.LC53
	.word	1075052544
	.word	.LC54
	.word	.LC55
	.word	1072693248
	.word	.LC56
	.word	.LC57
	.word	1070596096
	.word	.LC58
	.word	.LC59
	.word	-1717986918
	.word	1069128089
	.word	.LC60
	.word	.LC61
	.word	1068079513
	.word	.LC62
	.word	.LC63
	.word	1202590843
	.word	1065646817
	.word	.LC64
	.word	.LC65
	.size	Problem12, .-Problem12
	.section	.rodata
	.align	2
.LC67:
	.ascii	"Problem 14: Given a number in decimal, the program "
	.ascii	"will print out its equivalent number in base b.\000"
	.align	2
.LC68:
	.ascii	"Enter number: \000"
	.align	2
.LC69:
	.ascii	"Enter base: \000"
	.align	2
.LC70:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem14
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem14, %function
Problem14:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	ldr	r3, .L380
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-20]
	ldr	r0, .L380+4
	bl	puts
	ldr	r0, .L380+8
	bl	printf
	sub	r3, fp, #24
	mov	r1, r3
	ldr	r0, .L380+12
	bl	__isoc99_scanf
	ldr	r0, .L380+16
	bl	printf
	sub	r3, fp, #28
	mov	r1, r3
	ldr	r0, .L380+12
	bl	__isoc99_scanf
	ldr	r0, .L380+20
	bl	printf
	b	.L375
.L376:
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-28]
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	str	r3, [fp, #-12]
	ldr	r2, [fp, #-12]
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-20]
	bl	add_num14
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-28]
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_idiv
	mov	r3, r0
	str	r3, [fp, #-24]
.L375:
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bne	.L376
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-16]
	b	.L377
.L378:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L380+12
	bl	printf
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
.L377:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L378
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L380
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L379
	bl	__stack_chk_fail
.L379:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L381:
	.align	2
.L380:
	.word	.LC70
	.word	.LC67
	.word	.LC68
	.word	.LC1
	.word	.LC69
	.word	.LC13
	.size	Problem14, .-Problem14
	.section	.rodata
	.align	2
.LC71:
	.ascii	"Problem 15: Given n numbers, the program will print"
	.ascii	" out the sorted numbers in increasing order.\000"
	.align	2
.LC72:
	.ascii	"Input n: \000"
	.align	2
.LC73:
	.ascii	"Input %d numbers (separated by a comma): \000"
	.align	2
.LC74:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem15
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem15, %function
Problem15:
	@ args = 0, pretend = 0, frame = 2024
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #2016
	sub	sp, sp, #8
	ldr	r3, .L393
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-1008]
	sub	r3, fp, #1004
	mov	r2, #996
	mov	r1, #0
	mov	r0, r3
	bl	memset
	mov	r3, #0
	str	r3, [fp, #-2016]
	ldr	r0, .L393+4
	bl	puts
	ldr	r0, .L393+8
	bl	printf
	sub	r3, fp, #2016
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r1, r3
	ldr	r0, .L393+12
	bl	__isoc99_scanf
	bl	getchar
	ldr	r3, [fp, #-2024]
	mov	r1, r3
	ldr	r0, .L393+16
	bl	printf
	ldr	r3, .L393+20
	ldr	r2, [r3]
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r1, #1000
	mov	r0, r3
	bl	fgets
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3, #-2004]
	ldr	r0, .L393+24
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-2020]
	b	.L383
.L386:
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	ldr	r2, [fp, #-2020]
	add	r1, r3, r2
	sub	r3, fp, #1008
	mov	r2, #1
	mov	r0, r3
	bl	strncat
	ldr	r3, [fp, #-2020]
	add	r3, r3, #1
	str	r3, [fp, #-2020]
.L384:
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	ldr	r2, [fp, #-2020]
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #44
	beq	.L385
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-2020]
	cmp	r2, r3
	bhi	.L386
.L385:
	ldr	r3, [fp, #-2016]
	cmp	r3, #0
	bne	.L387
	sub	r3, fp, #1008
	mov	r2, r3
	ldr	r1, [fp, #-2012]
	ldr	r0, [fp, #-2016]
	bl	create_list15
	str	r0, [fp, #-2016]
	sub	r3, fp, #1008
	mov	r2, #1000
	mov	r1, #0
	mov	r0, r3
	bl	memset
	b	.L388
.L387:
	sub	r3, fp, #1008
	mov	r2, r3
	ldr	r1, [fp, #-2012]
	ldr	r0, [fp, #-2016]
	bl	add_num15
	str	r0, [fp, #-2016]
	sub	r3, fp, #1008
	mov	r2, #1000
	mov	r1, #0
	mov	r0, r3
	bl	memset
.L388:
	ldr	r3, [fp, #-2020]
	add	r3, r3, #1
	str	r3, [fp, #-2020]
.L383:
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-2020]
	cmp	r2, r3
	bhi	.L384
	b	.L390
.L391:
	ldr	r3, [fp, #-2016]
	str	r3, [fp, #-2012]
	ldr	r1, [fp, #-2012]
	ldr	r0, [fp, #-2016]
	bl	getLowest15
	str	r0, [fp, #-2016]
.L390:
	ldr	r3, [fp, #-2016]
	cmp	r3, #0
	bne	.L391
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L393
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L392
	bl	__stack_chk_fail
.L392:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L394:
	.align	2
.L393:
	.word	.LC74
	.word	.LC71
	.word	.LC72
	.word	.LC1
	.word	.LC73
	.word	stdin
	.word	.LC13
	.size	Problem15, .-Problem15
	.section	.rodata
	.align	2
.LC75:
	.ascii	"Problem 18: Given a string, the program will print "
	.ascii	"out its keypad press equivalent.\000"
	.align	2
.LC76:
	.ascii	"Enter a sentence: \000"
	.align	2
.LC77:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem18
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem18, %function
Problem18:
	@ args = 0, pretend = 0, frame = 1016
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #1016
	ldr	r3, .L424
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r0, .L424+4
	bl	puts
	ldr	r0, .L424+8
	bl	printf
	ldr	r3, .L424+12
	ldr	r2, [r3]
	sub	r3, fp, #1008
	mov	r1, #1000
	mov	r0, r3
	bl	fgets
	sub	r3, fp, #1008
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3, #-1004]
	ldr	r0, .L424+16
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-1016]
	b	.L396
.L422:
	sub	r2, fp, #1008
	ldr	r3, [fp, #-1016]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #32
	bne	.L397
	mov	r0, #48
	bl	putchar
	b	.L398
.L397:
	sub	r2, fp, #1008
	ldr	r3, [fp, #-1016]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	str	r3, [fp, #-1012]
	ldr	r3, [fp, #-1012]
	cmp	r3, #96
	ble	.L399
	ldr	r3, [fp, #-1012]
	cmp	r3, #99
	bgt	.L399
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #96
	str	r3, [fp, #-1012]
	b	.L400
.L401:
	mov	r0, #50
	bl	putchar
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #1
	str	r3, [fp, #-1012]
.L400:
	ldr	r3, [fp, #-1012]
	cmp	r3, #0
	bne	.L401
	b	.L398
.L399:
	ldr	r3, [fp, #-1012]
	cmp	r3, #99
	ble	.L402
	ldr	r3, [fp, #-1012]
	cmp	r3, #102
	bgt	.L402
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #99
	str	r3, [fp, #-1012]
	b	.L403
.L404:
	mov	r0, #51
	bl	putchar
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #1
	str	r3, [fp, #-1012]
.L403:
	ldr	r3, [fp, #-1012]
	cmp	r3, #0
	bne	.L404
	b	.L398
.L402:
	ldr	r3, [fp, #-1012]
	cmp	r3, #102
	ble	.L405
	ldr	r3, [fp, #-1012]
	cmp	r3, #105
	bgt	.L405
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #102
	str	r3, [fp, #-1012]
	b	.L406
.L407:
	mov	r0, #52
	bl	putchar
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #1
	str	r3, [fp, #-1012]
.L406:
	ldr	r3, [fp, #-1012]
	cmp	r3, #0
	bne	.L407
	b	.L398
.L405:
	ldr	r3, [fp, #-1012]
	cmp	r3, #105
	ble	.L408
	ldr	r3, [fp, #-1012]
	cmp	r3, #108
	bgt	.L408
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #105
	str	r3, [fp, #-1012]
	b	.L409
.L410:
	mov	r0, #53
	bl	putchar
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #1
	str	r3, [fp, #-1012]
.L409:
	ldr	r3, [fp, #-1012]
	cmp	r3, #0
	bne	.L410
	b	.L398
.L408:
	ldr	r3, [fp, #-1012]
	cmp	r3, #108
	ble	.L411
	ldr	r3, [fp, #-1012]
	cmp	r3, #111
	bgt	.L411
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #108
	str	r3, [fp, #-1012]
	b	.L412
.L413:
	mov	r0, #54
	bl	putchar
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #1
	str	r3, [fp, #-1012]
.L412:
	ldr	r3, [fp, #-1012]
	cmp	r3, #0
	bne	.L413
	b	.L398
.L411:
	ldr	r3, [fp, #-1012]
	cmp	r3, #111
	ble	.L414
	ldr	r3, [fp, #-1012]
	cmp	r3, #115
	bgt	.L414
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #111
	str	r3, [fp, #-1012]
	b	.L415
.L416:
	mov	r0, #55
	bl	putchar
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #1
	str	r3, [fp, #-1012]
.L415:
	ldr	r3, [fp, #-1012]
	cmp	r3, #0
	bne	.L416
	b	.L398
.L414:
	ldr	r3, [fp, #-1012]
	cmp	r3, #115
	ble	.L417
	ldr	r3, [fp, #-1012]
	cmp	r3, #118
	bgt	.L417
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #115
	str	r3, [fp, #-1012]
	b	.L418
.L419:
	mov	r0, #56
	bl	putchar
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #1
	str	r3, [fp, #-1012]
.L418:
	ldr	r3, [fp, #-1012]
	cmp	r3, #0
	bne	.L419
	b	.L398
.L417:
	ldr	r3, [fp, #-1012]
	cmp	r3, #118
	ble	.L398
	ldr	r3, [fp, #-1012]
	cmp	r3, #122
	bgt	.L398
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #118
	str	r3, [fp, #-1012]
	b	.L420
.L421:
	mov	r0, #57
	bl	putchar
	ldr	r3, [fp, #-1012]
	sub	r3, r3, #1
	str	r3, [fp, #-1012]
.L420:
	ldr	r3, [fp, #-1012]
	cmp	r3, #0
	bne	.L421
	nop
.L398:
	ldr	r3, [fp, #-1016]
	add	r3, r3, #1
	str	r3, [fp, #-1016]
.L396:
	sub	r3, fp, #1008
	mov	r0, r3
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-1016]
	cmp	r2, r3
	bhi	.L422
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L424
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L423
	bl	__stack_chk_fail
.L423:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L425:
	.align	2
.L424:
	.word	.LC77
	.word	.LC75
	.word	.LC76
	.word	stdin
	.word	.LC13
	.size	Problem18, .-Problem18
	.section	.rodata
	.align	2
.LC78:
	.ascii	"Problem 20: Given a sequence of words, the program "
	.ascii	"will sort and print the words with respect to frequ"
	.ascii	"ency.\000"
	.align	2
.LC79:
	.ascii	"Enter a series of words: \000"
	.align	2
.LC80:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem20
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem20, %function
Problem20:
	@ args = 0, pretend = 0, frame = 2024
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #2016
	sub	sp, sp, #8
	ldr	r3, .L437
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-2028]
	mov	r3, #0
	str	r3, [fp, #-2024]
	mov	r3, #0
	str	r3, [fp, #-1008]
	sub	r3, fp, #1004
	mov	r2, #996
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r0, .L437+4
	bl	puts
	ldr	r0, .L437+8
	bl	printf
	ldr	r3, .L437+12
	ldr	r2, [r3]
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r1, #1000
	mov	r0, r3
	bl	fgets
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3, #-2004]
	ldr	r0, .L437+16
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-2020]
	b	.L427
.L430:
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	ldr	r2, [fp, #-2020]
	add	r1, r3, r2
	sub	r3, fp, #1008
	mov	r2, #1
	mov	r0, r3
	bl	strncat
	ldr	r3, [fp, #-2020]
	add	r3, r3, #1
	str	r3, [fp, #-2020]
.L428:
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	ldr	r2, [fp, #-2020]
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #32
	beq	.L429
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-2020]
	cmp	r2, r3
	bhi	.L430
.L429:
	ldr	r3, [fp, #-2028]
	cmp	r3, #0
	bne	.L431
	sub	r3, fp, #1008
	mov	r2, r3
	ldr	r1, [fp, #-2016]
	ldr	r0, [fp, #-2028]
	bl	create_list20
	str	r0, [fp, #-2028]
	sub	r3, fp, #1008
	mov	r2, #1000
	mov	r1, #0
	mov	r0, r3
	bl	memset
	b	.L432
.L431:
	sub	r3, fp, #1008
	mov	r2, r3
	ldr	r1, [fp, #-2016]
	ldr	r0, [fp, #-2028]
	bl	add_list20
	str	r0, [fp, #-2028]
	sub	r3, fp, #1008
	mov	r2, #1000
	mov	r1, #0
	mov	r0, r3
	bl	memset
.L432:
	ldr	r3, [fp, #-2020]
	add	r3, r3, #1
	str	r3, [fp, #-2020]
.L427:
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-2020]
	cmp	r2, r3
	bhi	.L428
	ldr	r3, [fp, #-2028]
	str	r3, [fp, #-2016]
	ldr	r3, [fp, #-2012]
	ldr	r2, [fp, #-2024]
	ldr	r1, [fp, #-2016]
	ldr	r0, [fp, #-2028]
	bl	compare_list20
	str	r0, [fp, #-2024]
	ldr	r3, [fp, #-2024]
	str	r3, [fp, #-2012]
	ldr	r3, [fp, #-2012]
	ldr	r2, [fp, #-2024]
	ldr	r1, [fp, #-2016]
	ldr	r0, [fp, #-2028]
	bl	frequency20
	b	.L434
.L435:
	ldr	r3, [fp, #-2024]
	str	r3, [fp, #-2012]
	ldr	r1, [fp, #-2024]
	ldr	r0, [fp, #-2012]
	bl	getHighest20
	str	r0, [fp, #-2024]
.L434:
	ldr	r3, [fp, #-2024]
	cmp	r3, #0
	bne	.L435
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L437
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L436
	bl	__stack_chk_fail
.L436:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L438:
	.align	2
.L437:
	.word	.LC80
	.word	.LC78
	.word	.LC79
	.word	stdin
	.word	.LC13
	.size	Problem20, .-Problem20
	.section	.rodata
	.align	2
.LC81:
	.ascii	"Please enter a program number to test: \000"
	.align	2
.LC82:
	.ascii	"not available\000"
	.align	2
.LC83:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L463
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L440
.L460:
	ldr	r0, .L463+4
	bl	printf
	sub	r3, fp, #16
	mov	r1, r3
	ldr	r0, .L463+8
	bl	__isoc99_scanf
	bl	getchar
	ldr	r3, [fp, #-16]
	cmp	r3, #1
	bne	.L441
	bl	Problem1
	b	.L440
.L441:
	ldr	r3, [fp, #-16]
	cmp	r3, #2
	bne	.L442
	bl	Problem2
	b	.L440
.L442:
	ldr	r3, [fp, #-16]
	cmp	r3, #3
	bne	.L443
	bl	Problem3
	b	.L440
.L443:
	ldr	r3, [fp, #-16]
	cmp	r3, #4
	bne	.L444
	bl	Problem4
	b	.L440
.L444:
	ldr	r3, [fp, #-16]
	cmp	r3, #5
	bne	.L445
	bl	Problem5
	b	.L440
.L445:
	ldr	r3, [fp, #-16]
	cmp	r3, #6
	bne	.L446
	bl	Problem6
	b	.L440
.L446:
	ldr	r3, [fp, #-16]
	cmp	r3, #7
	bne	.L447
	bl	Problem7
	b	.L440
.L447:
	ldr	r3, [fp, #-16]
	cmp	r3, #8
	bne	.L448
	bl	Problem8
	b	.L440
.L448:
	ldr	r3, [fp, #-16]
	cmp	r3, #9
	bne	.L449
	bl	Problem9
	b	.L440
.L449:
	ldr	r3, [fp, #-16]
	cmp	r3, #10
	bne	.L450
	bl	Problem10
	b	.L440
.L450:
	ldr	r3, [fp, #-16]
	cmp	r3, #11
	bne	.L451
	bl	Problem11
	b	.L440
.L451:
	ldr	r3, [fp, #-16]
	cmp	r3, #12
	bne	.L452
	bl	Problem12
	b	.L440
.L452:
	ldr	r3, [fp, #-16]
	cmp	r3, #13
	bne	.L453
	bl	Problem13
	b	.L440
.L453:
	ldr	r3, [fp, #-16]
	cmp	r3, #14
	bne	.L454
	bl	Problem14
	b	.L440
.L454:
	ldr	r3, [fp, #-16]
	cmp	r3, #15
	bne	.L455
	bl	Problem15
	b	.L440
.L455:
	ldr	r3, [fp, #-16]
	cmp	r3, #16
	bne	.L456
	bl	Problem16
	b	.L440
.L456:
	ldr	r3, [fp, #-16]
	cmp	r3, #17
	bne	.L457
	ldr	r0, .L463+12
	bl	printf
	b	.L440
.L457:
	ldr	r3, [fp, #-16]
	cmp	r3, #18
	bne	.L458
	bl	Problem18
	b	.L440
.L458:
	ldr	r3, [fp, #-16]
	cmp	r3, #19
	bne	.L459
	bl	Problem19
	b	.L440
.L459:
	ldr	r3, [fp, #-16]
	cmp	r3, #20
	bne	.L440
	bl	Problem20
.L440:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L460
	mov	r3, #0
	ldr	r2, .L463
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L462
	bl	__stack_chk_fail
.L462:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L464:
	.align	2
.L463:
	.word	.LC83
	.word	.LC81
	.word	.LC1
	.word	.LC82
	.size	main, .-main
	.section	.rodata
	.align	2
.LC84:
	.ascii	"Problem 4: Prints the powerset of the set containin"
	.ascii	"g integers 1 - n\000"
	.align	2
.LC85:
	.ascii	"\012 1 < n < 1000: \000"
	.align	2
.LC86:
	.ascii	", \000"
	.align	2
.LC87:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem4
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem4, %function
Problem4:
	@ args = 0, pretend = 0, frame = 4016
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #4016
	ldr	r3, .L471
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-4012]
	b	.L466
.L467:
	ldr	r3, [fp, #-4012]
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-4004]
	ldr	r3, [fp, #-4012]
	add	r3, r3, #1
	str	r3, [fp, #-4012]
.L466:
	ldr	r3, [fp, #-4012]
	cmp	r3, #1000
	blt	.L467
	ldr	r0, .L471+4
	bl	printf
	ldr	r0, .L471+8
	bl	printf
	sub	r3, fp, #4000
	sub	r3, r3, #4
	sub	r3, r3, #12
	mov	r1, r3
	ldr	r0, .L471+12
	bl	__isoc99_scanf
	b	.L468
.L469:
	ldr	r2, [fp, #-4016]
	sub	r3, fp, #4000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r1, r2
	mov	r0, r3
	bl	printSubset
	ldr	r0, .L471+16
	bl	printf
	ldr	r2, [fp, #-4016]
	sub	r3, fp, #4000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r1, r2
	mov	r0, r3
	bl	addOneBit
.L468:
	ldr	r2, [fp, #-4016]
	sub	r3, fp, #4000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r1, r2
	mov	r0, r3
	bl	highestBin
	mov	r3, r0
	cmp	r3, #0
	beq	.L469
	nop
	ldr	r3, .L471
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L470
	bl	__stack_chk_fail
.L470:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L472:
	.align	2
.L471:
	.word	.LC87
	.word	.LC84
	.word	.LC85
	.word	.LC1
	.word	.LC86
	.size	Problem4, .-Problem4
	.align	2
	.global	addOneBit
	.syntax unified
	.arm
	.fpu softvfp
	.type	addOneBit, %function
addOneBit:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L474
.L478:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L475
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3]
	b	.L479
.L475:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	mov	r2, #1
	str	r2, [r3]
	b	.L477
.L479:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L474:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	blt	.L478
	nop
.L477:
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	addOneBit, .-addOneBit
	.section	.rodata
	.align	2
.LC88:
	.ascii	"%d, \000"
	.text
	.align	2
	.global	printSubset
	.syntax unified
	.arm
	.fpu softvfp
	.type	printSubset, %function
printSubset:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	mov	r0, #123
	bl	putchar
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L481
.L483:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L482
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r1, r3
	ldr	r0, .L484
	bl	printf
.L482:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L481:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	blt	.L483
	mov	r0, #125
	bl	putchar
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L485:
	.align	2
.L484:
	.word	.LC88
	.size	printSubset, .-printSubset
	.align	2
	.global	highestBin
	.syntax unified
	.arm
	.fpu softvfp
	.type	highestBin, %function
highestBin:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-8]
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L487
	mov	r3, #1
	b	.L488
.L487:
	mov	r3, #0
.L488:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	highestBin, .-highestBin
	.section	.rodata
	.align	2
.LC89:
	.ascii	"Problem 5: Multiplying polynomials.\000"
	.align	2
.LC90:
	.ascii	"Polynomial 1: \000"
	.align	2
.LC91:
	.ascii	"%s\000"
	.align	2
.LC92:
	.ascii	"Polynomial 2: \000"
	.align	2
.LC93:
	.ascii	"Head 1: \000"
	.align	2
.LC94:
	.ascii	"Head 2: \000"
	.align	2
.LC95:
	.ascii	"made it to end.\000"
	.align	2
.LC96:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem5
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem5, %function
Problem5:
	@ args = 0, pretend = 0, frame = 120
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #120
	ldr	r3, .L491
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r0, .L491+4
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-120]
	mov	r3, #0
	str	r3, [fp, #-116]
	mov	r3, #0
	str	r3, [fp, #-112]
	ldr	r0, .L491+8
	bl	printf
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, .L491+12
	bl	__isoc99_scanf
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, [fp, #-120]
	bl	parseMonoInput
	str	r0, [fp, #-120]
	ldr	r0, .L491+16
	bl	printf
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, .L491+12
	bl	__isoc99_scanf
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, [fp, #-116]
	bl	parseMonoInput
	str	r0, [fp, #-116]
	ldr	r2, [fp, #-112]
	ldr	r1, [fp, #-116]
	ldr	r0, [fp, #-120]
	bl	multiply
	str	r0, [fp, #-112]
	ldr	r0, .L491+20
	bl	printf
	ldr	r0, [fp, #-120]
	bl	printMonoList
	mov	r0, #10
	bl	putchar
	ldr	r0, .L491+24
	bl	printf
	ldr	r0, [fp, #-116]
	bl	printMonoList
	mov	r0, #10
	bl	putchar
	ldr	r0, .L491+28
	bl	puts
	ldr	r0, [fp, #-112]
	bl	printMonoList
	ldr	r0, [fp, #-112]
	bl	freeMonoNodes
	ldr	r0, [fp, #-120]
	bl	freeMonoNodes
	ldr	r0, [fp, #-116]
	bl	freeMonoNodes
	nop
	ldr	r3, .L491
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L490
	bl	__stack_chk_fail
.L490:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L492:
	.align	2
.L491:
	.word	.LC96
	.word	.LC89
	.word	.LC90
	.word	.LC91
	.word	.LC92
	.word	.LC93
	.word	.LC94
	.word	.LC95
	.size	Problem5, .-Problem5
	.section	.rodata
	.align	2
.LC97:
	.ascii	"ay lamo\000"
	.text
	.align	2
	.global	parseMonoInput
	.syntax unified
	.arm
	.fpu softvfp
	.type	parseMonoInput, %function
parseMonoInput:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L494
	mov	r0, #0
	bl	createMonoNode
	str	r0, [fp, #-32]
.L494:
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-28]
	ldr	r0, [fp, #-36]
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L495
.L501:
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	charToDigit
	mov	r3, r0
	cmp	r3, #0
	blt	.L496
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	charToDigit
	str	r0, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L497
.L498:
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L497:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	blt	.L498
	ldr	r3, [fp, #-28]
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	add	r2, r2, r3
	ldr	r3, [fp, #-28]
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
	b	.L499
.L496:
	ldr	r0, .L503
	bl	printf
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #44
	bne	.L500
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-20]
	bl	createMonoNode
	mov	r2, r0
	ldr	r3, [fp, #-28]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-28]
	b	.L499
.L500:
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	bne	.L499
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]
	rsb	r2, r3, #0
	ldr	r3, [fp, #-28]
	str	r2, [r3]
.L499:
	ldr	r3, [fp, #-24]
	sub	r3, r3, #1
	str	r3, [fp, #-24]
.L495:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	bcs	.L501
	ldr	r3, [fp, #-32]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L504:
	.align	2
.L503:
	.word	.LC97
	.size	parseMonoInput, .-parseMonoInput
	.align	2
	.global	createMonoNode
	.syntax unified
	.arm
	.fpu softvfp
	.type	createMonoNode, %function
createMonoNode:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r0, #12
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-16]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	createMonoNode, .-createMonoNode
	.align	2
	.global	freeMonoNodes
	.syntax unified
	.arm
	.fpu softvfp
	.type	freeMonoNodes, %function
freeMonoNodes:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	b	.L508
.L509:
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-8]
	bl	free
.L508:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	bne	.L509
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	freeMonoNodes, .-freeMonoNodes
	.align	2
	.global	multiply
	.syntax unified
	.arm
	.fpu softvfp
	.type	multiply, %function
multiply:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	b	.L511
.L517:
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-12]
	b	.L512
.L516:
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r1, [fp, #-8]
	ldr	r0, .L519
	bl	printf
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L513
	ldr	r0, [fp, #-8]
	bl	createMonoNode
	str	r0, [fp, #-32]
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-32]
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	ldr	r1, [fp, #-12]
	ldr	r1, [r1]
	mul	r3, r1, r3
	add	r2, r2, r3
	ldr	r3, [fp, #-32]
	str	r2, [r3]
	b	.L514
.L513:
	ldr	r1, [fp, #-8]
	ldr	r0, [fp, #-32]
	bl	degreeExists
	mov	r3, r0
	cmp	r3, #0
	beq	.L515
	ldr	r1, [fp, #-8]
	ldr	r0, [fp, #-32]
	bl	degreeExists
	mov	r3, r0
	ldr	r1, [r3]
	ldr	r2, [fp, #-24]
	ldr	r2, [r2]
	ldr	r0, [fp, #-12]
	ldr	r0, [r0]
	mul	r2, r0, r2
	add	r2, r1, r2
	str	r2, [r3]
	b	.L514
.L515:
	ldr	r0, [fp, #-8]
	bl	createMonoNode
	mov	r2, r0
	ldr	r3, [fp, #-16]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	ldr	r1, [fp, #-12]
	ldr	r1, [r1]
	mul	r3, r1, r3
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
.L514:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-12]
.L512:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L516
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-24]
.L511:
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bne	.L517
	ldr	r3, [fp, #-32]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L520:
	.align	2
.L519:
	.word	.LC1
	.size	multiply, .-multiply
	.align	2
	.global	degreeExists
	.syntax unified
	.arm
	.fpu softvfp
	.type	degreeExists, %function
degreeExists:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	b	.L522
.L525:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	bne	.L523
	ldr	r3, [fp, #-8]
	b	.L524
.L523:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-8]
.L522:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L525
	mov	r3, #0
.L524:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	degreeExists, .-degreeExists
	.align	2
	.global	charToDigit
	.syntax unified
	.arm
	.fpu softvfp
	.type	charToDigit, %function
charToDigit:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #47
	bls	.L527
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #57
	bhi	.L527
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	sub	r3, r3, #48
	b	.L528
.L527:
	mvn	r3, #0
.L528:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	charToDigit, .-charToDigit
	.section	.rodata
	.align	2
.LC98:
	.ascii	"Elem %d: \000"
	.align	2
.LC99:
	.ascii	"(%d, %d) \000"
	.text
	.align	2
	.global	printMonoList
	.syntax unified
	.arm
	.fpu softvfp
	.type	printMonoList, %function
printMonoList:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L530
.L532:
	ldr	r1, [fp, #-8]
	ldr	r0, .L533
	bl	printf
	ldr	r3, [fp, #-16]
	ldr	r1, [r3]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	mov	r2, r3
	ldr	r0, .L533+4
	bl	printf
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	beq	.L531
	ldr	r0, .L533+8
	bl	printf
.L531:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L530:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L532
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L534:
	.align	2
.L533:
	.word	.LC98
	.word	.LC99
	.word	.LC86
	.size	printMonoList, .-printMonoList
	.section	.rodata
	.align	2
.LC100:
	.ascii	"Problem 6: How many bulbs (0 < n <1 000 000 000) ar"
	.ascii	"e present, Mr. Mabu?\000"
	.align	2
.LC101:
	.ascii	"%ld\000"
	.align	2
.LC102:
	.ascii	"Bulb %d is on.\000"
	.align	2
.LC103:
	.ascii	"Blub %d is off.\000"
	.align	2
.LC104:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem6
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem6, %function
Problem6:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L544
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-12]
	ldr	r0, .L544+4
	bl	printf
	sub	r3, fp, #20
	mov	r1, r3
	ldr	r0, .L544+8
	bl	__isoc99_scanf
	mov	r3, #2
	str	r3, [fp, #-16]
	b	.L536
.L539:
	ldr	r3, [fp, #-20]
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L537
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L538
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L537
.L538:
	mov	r3, #1
	str	r3, [fp, #-12]
.L537:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L536:
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	ble	.L539
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L540
	ldr	r3, [fp, #-20]
	mov	r1, r3
	ldr	r0, .L544+12
	bl	printf
	b	.L543
.L540:
	ldr	r3, [fp, #-20]
	mov	r1, r3
	ldr	r0, .L544+16
	bl	printf
.L543:
	nop
	ldr	r3, .L544
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L542
	bl	__stack_chk_fail
.L542:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L545:
	.align	2
.L544:
	.word	.LC104
	.word	.LC100
	.word	.LC101
	.word	.LC102
	.word	.LC103
	.size	Problem6, .-Problem6
	.section	.rodata
	.align	2
.LC105:
	.ascii	"Problem 8: Pair of points with the shortest distanc"
	.ascii	"e.\000"
	.align	2
.LC106:
	.ascii	"Enter x coordinate: \000"
	.align	2
.LC107:
	.ascii	"Enter y coordinate: \000"
	.align	2
.LC108:
	.ascii	"Add one more coordinate? Type 0 if no.\000"
	.global	__aeabi_dcmple
	.global	__aeabi_dcmpeq
	.align	2
.LC109:
	.ascii	"Pair with the least distance is (%f, %f) and (%f, %"
	.ascii	"f), with a distance %f\000"
	.align	2
.LC110:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem8
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem8, %function
Problem8:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #104
	ldr	r3, .L558
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	ldr	r0, .L558+4
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-92]
	mov	r3, #0
	str	r3, [fp, #-88]
.L549:
	ldr	r0, .L558+8
	bl	printf
	sub	r3, fp, #68
	mov	r1, r3
	ldr	r0, .L558+12
	bl	__isoc99_scanf
	ldr	r0, .L558+16
	bl	printf
	sub	r3, fp, #60
	mov	r1, r3
	ldr	r0, .L558+12
	bl	__isoc99_scanf
	ldr	r3, [fp, #-92]
	cmp	r3, #0
	bne	.L547
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-92]
	bl	createPointNodes
	str	r0, [fp, #-92]
	ldr	r3, [fp, #-92]
	str	r3, [fp, #-88]
	b	.L548
.L547:
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-88]
	bl	createPointNodes
	str	r0, [fp, #-88]
.L548:
	ldr	r0, .L558+20
	bl	printf
	sub	r3, fp, #96
	mov	r1, r3
	ldr	r0, .L558+24
	bl	__isoc99_scanf
	ldr	r3, [fp, #-96]
	cmp	r3, #0
	bne	.L549
	mov	r2, #0
	ldr	r3, .L558+28
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-92]
	str	r3, [fp, #-84]
	b	.L550
.L556:
	ldr	r3, [fp, #-84]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-80]
	b	.L551
.L555:
	ldr	r1, [fp, #-80]
	ldr	r0, [fp, #-84]
	bl	getDistance
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L552
	mov	r2, #0
	ldr	r3, .L558+28
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L553
.L552:
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-84]
	str	r3, [fp, #-76]
	ldr	r3, [fp, #-80]
	str	r3, [fp, #-72]
.L553:
	ldr	r3, [fp, #-80]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-80]
.L551:
	ldr	r3, [fp, #-80]
	cmp	r3, #0
	bne	.L555
	ldr	r3, [fp, #-84]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-84]
.L550:
	ldr	r3, [fp, #-84]
	ldr	r3, [r3, #16]
	cmp	r3, #0
	bne	.L556
	ldr	r3, [fp, #-76]
	ldmia	r3, {r8-r9}
	ldr	r3, [fp, #-76]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-72]
	ldmia	r1, {r0-r1}
	ldr	ip, [fp, #-72]
	add	r5, ip, #8
	ldmia	r5, {r4-r5}
	sub	r7, fp, #52
	ldmia	r7, {r6-r7}
	str	r6, [sp, #24]
	str	r7, [sp, #28]
	str	r4, [sp, #16]
	str	r5, [sp, #20]
	str	r0, [sp, #8]
	str	r1, [sp, #12]
	stm	sp, {r2-r3}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L558+32
	bl	printf
	ldr	r0, [fp, #-92]
	bl	freePoint
	nop
	ldr	r3, .L558
	ldr	r2, [r3]
	ldr	r3, [fp, #-32]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L557
	bl	__stack_chk_fail
.L557:
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L559:
	.align	2
.L558:
	.word	.LC110
	.word	.LC105
	.word	.LC106
	.word	.LC39
	.word	.LC107
	.word	.LC108
	.word	.LC1
	.word	-1074790400
	.word	.LC109
	.size	Problem8, .-Problem8
	.align	2
	.global	freePoint
	.syntax unified
	.arm
	.fpu softvfp
	.type	freePoint, %function
freePoint:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	b	.L561
.L562:
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-8]
	bl	free
.L561:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #16]
	cmp	r3, #0
	bne	.L562
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	freePoint, .-freePoint
	.align	2
	.global	createPointNodes
	.syntax unified
	.arm
	.fpu softvfp
	.type	createPointNodes, %function
createPointNodes:
	@ args = 8, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r0, #24
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r1, [fp, #-8]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r1, [fp, #-8]
	ldmib	fp, {r2-r3}
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L564
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #16]
.L564:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	createPointNodes, .-createPointNodes
	.global	__aeabi_dadd
	.align	2
	.global	getDistance
	.syntax unified
	.arm
	.fpu softvfp
	.type	getDistance, %function
getDistance:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #48
	str	r0, [fp, #-64]
	str	r1, [fp, #-68]
	ldr	r3, [fp, #-64]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #-68]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-64]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-68]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
	.size	getDistance, .-getDistance
	.section	.rodata
	.align	2
.LC111:
	.ascii	"Problem 9: Level of Pascal's Triangle given level n"
	.ascii	"=\000"
	.align	2
.LC112:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem9
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem9, %function
Problem9:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	ldr	r3, .L578
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r0, .L578+4
	bl	printf
	sub	r3, fp, #24
	mov	r1, r3
	ldr	r0, .L578+8
	bl	__isoc99_scanf
	mov	r3, #0
	str	r3, [fp, #-12]
	mov	r0, #12
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	mov	r2, #1
	str	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	mov	r2, #0
	str	r2, [r3, #8]
	ldr	r3, [fp, #-24]
	cmp	r3, #1
	bne	.L569
	ldr	r0, [fp, #-12]
	bl	printElementList
	b	.L570
.L569:
	mov	r3, #1
	str	r3, [fp, #-20]
	b	.L571
.L576:
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-16]
	b	.L572
.L573:
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-16]
.L572:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L573
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-16]
	b	.L574
.L575:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	ldr	r1, [r3, #4]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	add	r2, r1, r2
	str	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-16]
.L574:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	bne	.L575
	mov	r0, #12
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	mov	r2, #1
	str	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	mov	r2, #0
	str	r2, [r3, #8]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L571:
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	blt	.L576
.L570:
	ldr	r0, [fp, #-12]
	bl	printElementList
	ldr	r0, [fp, #-12]
	bl	freeElementNodes
	nop
	ldr	r3, .L578
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L577
	bl	__stack_chk_fail
.L577:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L579:
	.align	2
.L578:
	.word	.LC112
	.word	.LC111
	.word	.LC1
	.size	Problem9, .-Problem9
	.align	2
	.global	freeElementNodes
	.syntax unified
	.arm
	.fpu softvfp
	.type	freeElementNodes, %function
freeElementNodes:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	b	.L581
.L582:
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-8]
	bl	free
.L581:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	bne	.L582
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	freeElementNodes, .-freeElementNodes
	.align	2
	.global	printElementList
	.syntax unified
	.arm
	.fpu softvfp
	.type	printElementList, %function
printElementList:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	b	.L584
.L586:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	mov	r1, r3
	ldr	r0, .L587
	bl	printf
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	beq	.L585
	ldr	r0, .L587+4
	bl	printf
.L585:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-8]
.L584:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L586
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L588:
	.align	2
.L587:
	.word	.LC1
	.word	.LC86
	.size	printElementList, .-printElementList
	.section	.rodata
	.align	2
.LC113:
	.ascii	"Problem 11: Egyptian fraction sum with least operan"
	.ascii	"ds of real number \000"
	.global	__aeabi_i2f
	.align	2
.LC114:
	.ascii	"1/%d\000"
	.global	__aeabi_dcmpgt
	.align	2
.LC115:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem11
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem11, %function
Problem11:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	ldr	r3, .L604
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r0, .L604+4
	bl	puts
	sub	r3, fp, #28
	mov	r1, r3
	ldr	r0, .L604+8
	bl	__isoc99_scanf
	mov	r3, #2
	str	r3, [fp, #-32]
	b	.L590
.L597:
	ldr	r0, [fp, #-32]
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, #1065353216
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L591
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r1, [fp, #-32]
	ldr	r0, .L604+12
	bl	printf
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	mov	r2, #-536870912
	ldr	r3, .L604+16
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L591
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L591
	ldr	r0, .L604+20
	bl	printf
.L591:
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L590:
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L602
	b	.L603
.L602:
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	mov	r2, #-536870912
	ldr	r3, .L604+16
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L597
.L603:
	nop
	ldr	r3, .L604
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L598
	bl	__stack_chk_fail
.L598:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L605:
	.align	2
.L604:
	.word	.LC115
	.word	.LC113
	.word	.LC39
	.word	.LC114
	.word	1058682594
	.word	.LC86
	.size	Problem11, .-Problem11
	.section	.rodata
	.align	2
.LC116:
	.ascii	"Problem 13: Big ints.\000"
	.align	2
.LC117:
	.ascii	"Enter first digit: \000"
	.align	2
.LC118:
	.ascii	"Enter second digit: \000"
	.align	2
.LC119:
	.ascii	"Result: \000"
	.align	2
.LC120:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem13
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem13, %function
Problem13:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	ldr	r3, .L610
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-116]
	b	.L607
.L608:
	ldr	r3, [fp, #-116]
	add	r2, r3, #1
	str	r2, [fp, #-116]
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-108]
.L607:
	ldr	r3, [fp, #-116]
	cmp	r3, #20
	ble	.L608
	ldr	r0, .L610+4
	bl	puts
	ldr	r0, .L610+8
	bl	printf
	sub	r3, fp, #28
	mov	r1, r3
	ldr	r0, .L610+12
	bl	__isoc99_scanf
	sub	r2, fp, #28
	sub	r3, fp, #112
	mov	r1, r2
	mov	r0, r3
	bl	parseDigits
	ldr	r0, .L610+16
	bl	printf
	sub	r3, fp, #28
	mov	r1, r3
	ldr	r0, .L610+12
	bl	__isoc99_scanf
	sub	r2, fp, #28
	sub	r3, fp, #112
	mov	r1, r2
	mov	r0, r3
	bl	parseDigits
	ldr	r0, .L610+20
	bl	printf
	sub	r3, fp, #112
	mov	r0, r3
	bl	printIntResult
	nop
	ldr	r3, .L610
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L609
	bl	__stack_chk_fail
.L609:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L611:
	.align	2
.L610:
	.word	.LC120
	.word	.LC116
	.word	.LC117
	.word	.LC91
	.word	.LC118
	.word	.LC119
	.size	Problem13, .-Problem13
	.align	2
	.global	parseDigits
	.syntax unified
	.arm
	.fpu softvfp
	.type	parseDigits, %function
parseDigits:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r0, [fp, #-28]
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L613
.L615:
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L616
	bl	printf
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	charToDigit
	mov	r2, r0
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	charToDigit
	mov	r3, r0
	mov	r1, r3
	ldr	r0, .L616
	bl	printf
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	cmp	r3, #9
	ble	.L614
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	sub	r2, r3, #10
	ldr	r3, [fp, #-8]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	add	r3, r3, #4
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	add	r2, r3, #1
	ldr	r3, [fp, #-8]
	str	r2, [r3]
.L614:
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	sub	r3, r3, #1
	str	r3, [fp, #-16]
.L613:
	ldr	r0, [fp, #-28]
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	bhi	.L615
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L617:
	.align	2
.L616:
	.word	.LC1
	.size	parseDigits, .-parseDigits
	.align	2
	.global	printIntResult
	.syntax unified
	.arm
	.fpu softvfp
	.type	printIntResult, %function
printIntResult:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, #20
	str	r3, [fp, #-8]
	b	.L619
.L621:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L620
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L622
	bl	printf
.L620:
	ldr	r3, [fp, #-8]
	sub	r3, r3, #1
	str	r3, [fp, #-8]
.L619:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bge	.L621
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L623:
	.align	2
.L622:
	.word	.LC1
	.size	printIntResult, .-printIntResult
	.section	.rodata
	.align	2
.LC121:
	.ascii	"Problem 16: Most intersected circle.\000"
	.align	2
.LC122:
	.ascii	"Circle %d:\012\000"
	.align	2
.LC123:
	.ascii	"X: \000"
	.align	2
.LC124:
	.ascii	"Y: \000"
	.align	2
.LC125:
	.ascii	"Radius: \000"
	.align	2
.LC126:
	.ascii	"Enter one more circle? Type 0 for no.\000"
	.align	2
.LC127:
	.ascii	"The circle with the highest intesections is circle "
	.ascii	"%d (x: %f, y: %f, r: %f) with %d collisions.\000"
	.align	2
.LC128:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem16
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem16, %function
Problem16:
	@ args = 0, pretend = 0, frame = 1640
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #1664
	ldr	r3, .L640
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r0, .L640+4
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-1648]
	b	.L625
.L626:
	ldr	r3, [fp, #-1648]
	add	r2, r3, #1
	str	r2, [fp, #-1648]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-1584]
.L625:
	ldr	r3, [fp, #-1648]
	cmp	r3, #49
	ble	.L626
	mov	r3, #0
	str	r3, [fp, #-1648]
	mov	r3, #0
	str	r3, [fp, #-1644]
.L628:
	ldr	r3, [fp, #-1648]
	add	r3, r3, #1
	mov	r1, r3
	ldr	r0, .L640+8
	bl	printf
	ldr	r0, .L640+12
	bl	printf
	sub	r3, fp, #1600
	sub	r3, r3, #12
	sub	r3, r3, #8
	ldr	r2, [fp, #-1648]
	lsl	r2, r2, #5
	add	r3, r3, r2
	mov	r1, r3
	ldr	r0, .L640+16
	bl	__isoc99_scanf
	ldr	r0, .L640+20
	bl	printf
	sub	r3, fp, #1600
	sub	r3, r3, #12
	sub	r3, r3, #8
	ldr	r2, [fp, #-1648]
	lsl	r2, r2, #5
	add	r2, r2, #8
	add	r3, r3, r2
	mov	r1, r3
	ldr	r0, .L640+16
	bl	__isoc99_scanf
	ldr	r0, .L640+24
	bl	printf
	sub	r3, fp, #1600
	sub	r3, r3, #12
	sub	r3, r3, #8
	ldr	r2, [fp, #-1648]
	lsl	r2, r2, #5
	add	r2, r2, #16
	add	r3, r3, r2
	mov	r1, r3
	ldr	r0, .L640+16
	bl	__isoc99_scanf
	ldr	r0, .L640+28
	bl	printf
	sub	r3, fp, #1632
	sub	r3, r3, #12
	sub	r3, r3, #8
	mov	r1, r3
	ldr	r0, .L640+32
	bl	__isoc99_scanf
	ldr	r3, [fp, #-1648]
	add	r3, r3, #1
	str	r3, [fp, #-1648]
	ldr	r3, [fp, #-1644]
	add	r3, r3, #1
	str	r3, [fp, #-1644]
	ldr	r3, [fp, #-1652]
	cmp	r3, #0
	beq	.L627
	ldr	r3, [fp, #-1648]
	cmp	r3, #49
	ble	.L628
.L627:
	mov	r3, #0
	str	r3, [fp, #-1636]
	mov	r3, #0
	str	r3, [fp, #-1648]
	b	.L629
.L636:
	ldr	r3, [fp, #-1648]
	add	r3, r3, #1
	str	r3, [fp, #-1640]
	b	.L630
.L634:
	ldr	r3, [fp, #-1648]
	lsl	r2, r3, #5
	sub	r3, fp, #1600
	sub	r3, r3, #12
	sub	r3, r3, #8
	add	r0, r3, r2
	ldr	r3, [fp, #-1640]
	lsl	r2, r3, #5
	sub	r3, fp, #1600
	sub	r3, r3, #12
	sub	r3, r3, #8
	add	r3, r3, r2
	mov	r1, r3
	bl	getCircleDistance
	str	r0, [fp, #-1628]
	str	r1, [fp, #-1624]
	ldr	r3, [fp, #-1648]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #1584
	sub	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1640]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #1584
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-1628]
	ldr	r1, [fp, #-1624]
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L631
	ldr	r3, [fp, #-1648]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #1584
	sub	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1640]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #1584
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	cmp	r3, #0
	rsblt	r3, r3, #0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-1628]
	ldr	r1, [fp, #-1624]
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L631
	ldr	r3, [fp, #-1648]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-1584]
	add	r2, r3, #1
	ldr	r3, [fp, #-1648]
	lsl	r3, r3, #5
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-1584]
	ldr	r3, [fp, #-1640]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-1584]
	add	r2, r3, #1
	ldr	r3, [fp, #-1640]
	lsl	r3, r3, #5
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-1584]
.L631:
	ldr	r3, [fp, #-1640]
	add	r3, r3, #1
	str	r3, [fp, #-1640]
.L630:
	ldr	r2, [fp, #-1640]
	ldr	r3, [fp, #-1644]
	cmp	r2, r3
	blt	.L634
	ldr	r3, [fp, #-1648]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-1584]
	ldr	r2, [fp, #-1636]
	cmp	r2, r3
	bgt	.L635
	ldr	r3, [fp, #-1648]
	str	r3, [fp, #-1632]
	ldr	r3, [fp, #-1648]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-1584]
	str	r3, [fp, #-1636]
.L635:
	ldr	r3, [fp, #-1648]
	add	r3, r3, #1
	str	r3, [fp, #-1648]
.L629:
	ldr	r3, [fp, #-1644]
	sub	r3, r3, #1
	ldr	r2, [fp, #-1648]
	cmp	r2, r3
	blt	.L636
	ldr	r3, [fp, #-1632]
	add	lr, r3, #1
	ldr	r3, [fp, #-1632]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #1600
	sub	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-1632]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #1600
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1632]
	lsl	r3, r3, #5
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #1584
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	ip, [fp, #-1636]
	str	ip, [sp, #16]
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r0-r1}
	mov	r2, r4
	mov	r3, r5
	mov	r1, lr
	ldr	r0, .L640+36
	bl	printf
	nop
	ldr	r3, .L640
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L637
	bl	__stack_chk_fail
.L637:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L641:
	.align	2
.L640:
	.word	.LC128
	.word	.LC121
	.word	.LC122
	.word	.LC123
	.word	.LC39
	.word	.LC124
	.word	.LC125
	.word	.LC126
	.word	.LC1
	.word	.LC127
	.size	Problem16, .-Problem16
	.align	2
	.global	getCircleDistance
	.syntax unified
	.arm
	.fpu softvfp
	.type	getCircleDistance, %function
getCircleDistance:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #48
	str	r0, [fp, #-64]
	str	r1, [fp, #-68]
	ldr	r3, [fp, #-64]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #-68]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-64]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-68]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
	.size	getCircleDistance, .-getCircleDistance
	.section	.rodata
	.align	2
.LC129:
	.ascii	"Problem 19: Timeblocks and breaks.\012 Input: \000"
	.align	2
.LC130:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	Problem19
	.syntax unified
	.arm
	.fpu softvfp
	.type	Problem19, %function
Problem19:
	@ args = 0, pretend = 0, frame = 1016
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #1016
	ldr	r3, .L646
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r0, .L646+4
	bl	printf
	sub	r3, fp, #1008
	mov	r1, r3
	ldr	r0, .L646+8
	bl	__isoc99_scanf
	mov	r3, #0
	str	r3, [fp, #-1016]
	mov	r3, #0
	str	r3, [fp, #-1012]
	sub	r3, fp, #1008
	mov	r1, r3
	ldr	r0, [fp, #-1016]
	bl	parseTimeblockInput
	str	r0, [fp, #-1016]
	ldr	r1, [fp, #-1016]
	ldr	r0, [fp, #-1012]
	bl	getBreaks
	str	r0, [fp, #-1012]
	ldr	r0, [fp, #-1012]
	bl	printSched
	nop
	ldr	r3, .L646
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L645
	bl	__stack_chk_fail
.L645:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L647:
	.align	2
.L646:
	.word	.LC130
	.word	.LC129
	.word	.LC91
	.size	Problem19, .-Problem19
	.align	2
	.global	parseTimeblockInput
	.syntax unified
	.arm
	.fpu softvfp
	.type	parseTimeblockInput, %function
parseTimeblockInput:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L649
	mov	r1, #0
	mov	r0, #0
	bl	createTimeblockNode
	str	r0, [fp, #-32]
.L649:
	ldr	r0, [fp, #-36]
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-24]
	mov	r3, #1
	str	r3, [fp, #-20]
	mov	r3, #1
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L650
.L659:
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	charToDigit
	mov	r3, r0
	cmp	r3, #0
	blt	.L651
	ldr	r2, [fp, #-12]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-20]
	cmp	r3, #1
	bne	.L652
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	charToDigit
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	b	.L653
.L652:
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	charToDigit
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	b	.L653
.L651:
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #112
	bne	.L654
	ldr	r3, [fp, #-12]
	add	r3, r3, #720
	str	r3, [fp, #-12]
	b	.L653
.L654:
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #58
	bne	.L655
	ldr	r3, [fp, #-16]
	cmp	r3, #1
	bne	.L656
	ldr	r3, [fp, #-24]
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3]
	b	.L657
.L656:
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3, #4]
.L657:
	mov	r3, #0
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L653
.L655:
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	bne	.L658
	ldr	r3, [fp, #-24]
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-16]
	mov	r3, #1
	str	r3, [fp, #-20]
	b	.L653
.L658:
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #44
	bne	.L653
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3, #4]
	mov	r1, #0
	mov	r0, #0
	bl	createTimeblockNode
	mov	r2, r0
	ldr	r3, [fp, #-24]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-24]
	mov	r3, #1
	str	r3, [fp, #-20]
	mov	r3, #1
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-12]
.L653:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bne	.L650
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-12]
	str	r2, [r3, #4]
	mov	r3, #0
	str	r3, [fp, #-12]
.L650:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-8]
	cmp	r2, r3
	bls	.L659
	ldr	r3, [fp, #-32]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	parseTimeblockInput, .-parseTimeblockInput
	.align	2
	.global	getBreaks
	.syntax unified
	.arm
	.fpu softvfp
	.type	getBreaks, %function
getBreaks:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	mov	r3, #480
	str	r3, [fp, #-20]
	mov	r3, #1200
	str	r3, [fp, #-16]
.L670:
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-28]
	bl	isBetweenList
	str	r0, [fp, #-8]
	b	.L662
.L663:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-20]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-28]
	bl	isBetweenList
	str	r0, [fp, #-8]
.L662:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L663
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-28]
	bl	isBetweenBreak
	str	r0, [fp, #-8]
	b	.L664
.L665:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-28]
	bl	isBetweenBreak
	str	r0, [fp, #-8]
.L664:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L665
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bne	.L666
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-20]
	bl	createTimeblockNode
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-12]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-28]
	bl	appendToList
	b	.L667
.L666:
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-20]
	bl	createTimeblockNode
	mov	r2, r0
	ldr	r3, [fp, #-24]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-24]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-28]
	bl	appendToList
.L667:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-20]
	mov	r3, #1200
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-20]
	cmp	r3, #1200
	beq	.L673
	b	.L670
.L673:
	nop
	ldr	r3, [fp, #-12]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	getBreaks, .-getBreaks
	.align	2
	.global	isBetweenList
	.syntax unified
	.arm
	.fpu softvfp
	.type	isBetweenList, %function
isBetweenList:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	b	.L675
.L678:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	blt	.L676
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	bge	.L676
	ldr	r3, [fp, #-8]
	b	.L677
.L676:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-8]
.L675:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L678
	ldr	r3, [fp, #-8]
.L677:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	isBetweenList, .-isBetweenList
	.align	2
	.global	isBetweenBreak
	.syntax unified
	.arm
	.fpu softvfp
	.type	isBetweenBreak, %function
isBetweenBreak:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	b	.L680
.L683:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	ble	.L681
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	bge	.L681
	ldr	r3, [fp, #-8]
	b	.L682
.L681:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-8]
.L680:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L683
	ldr	r3, [fp, #-8]
.L682:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	isBetweenBreak, .-isBetweenBreak
	.align	2
	.global	appendToList
	.syntax unified
	.arm
	.fpu softvfp
	.type	appendToList, %function
appendToList:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	b	.L685
.L686:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-8]
.L685:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	bne	.L686
	ldr	r3, [fp, #-12]
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	mov	r1, r3
	mov	r0, r2
	bl	createTimeblockNode
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-12]
	str	r2, [r3, #8]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	appendToList, .-appendToList
	.align	2
	.global	createTimeblockNode
	.syntax unified
	.arm
	.fpu softvfp
	.type	createTimeblockNode, %function
createTimeblockNode:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	mov	r0, #12
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-20]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	createTimeblockNode, .-createTimeblockNode
	.section	.rodata
	.align	2
.LC131:
	.ascii	"(%d - %d) \000"
	.text
	.align	2
	.global	printTimeblockList
	.syntax unified
	.arm
	.fpu softvfp
	.type	printTimeblockList, %function
printTimeblockList:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L690
.L692:
	ldr	r1, [fp, #-8]
	ldr	r0, .L693
	bl	printf
	ldr	r3, [fp, #-16]
	ldr	r1, [r3]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	mov	r2, r3
	ldr	r0, .L693+4
	bl	printf
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	beq	.L691
	ldr	r0, .L693+8
	bl	printf
.L691:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L690:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L692
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L694:
	.align	2
.L693:
	.word	.LC98
	.word	.LC131
	.word	.LC86
	.size	printTimeblockList, .-printTimeblockList
	.section	.rodata
	.align	2
.LC132:
	.ascii	":%d\000"
	.text
	.align	2
	.global	printSched
	.syntax unified
	.arm
	.fpu softvfp
	.type	printSched, %function
printSched:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	b	.L696
.L706:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	cmp	r3, #720
	ble	.L697
	mov	r3, #1
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	sub	r3, r3, #720
	str	r3, [fp, #-16]
.L697:
	ldr	r3, [fp, #-16]
	ldr	r2, .L707
	smull	r1, r2, r3, r2
	add	r2, r2, r3
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	mov	r1, r3
	ldr	r0, .L707+4
	bl	printf
	ldr	r2, [fp, #-16]
	ldr	r3, .L707
	smull	r1, r3, r2, r3
	add	r3, r3, r2
	asr	r1, r3, #5
	asr	r3, r2, #31
	sub	r1, r1, r3
	mov	r3, r1
	lsl	r3, r3, #4
	sub	r3, r3, r1
	lsl	r3, r3, #2
	sub	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L698
	ldr	r1, [fp, #-16]
	ldr	r0, .L707+8
	bl	printf
.L698:
	ldr	r3, [fp, #-8]
	cmp	r3, #1
	bne	.L699
	mov	r0, #112
	bl	putchar
	b	.L700
.L699:
	mov	r0, #97
	bl	putchar
.L700:
	mov	r0, #45
	bl	putchar
	ldr	r3, [fp, #-12]
	cmp	r3, #720
	ble	.L701
	mov	r3, #1
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #720
	str	r3, [fp, #-12]
.L701:
	ldr	r3, [fp, #-12]
	ldr	r2, .L707
	smull	r1, r2, r3, r2
	add	r2, r2, r3
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	mov	r1, r3
	ldr	r0, .L707+4
	bl	printf
	ldr	r2, [fp, #-12]
	ldr	r3, .L707
	smull	r1, r3, r2, r3
	add	r3, r3, r2
	asr	r1, r3, #5
	asr	r3, r2, #31
	sub	r1, r1, r3
	mov	r3, r1
	lsl	r3, r3, #4
	sub	r3, r3, r1
	lsl	r3, r3, #2
	sub	r3, r2, r3
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L702
	ldr	r1, [fp, #-12]
	ldr	r0, .L707+8
	bl	printf
.L702:
	ldr	r3, [fp, #-8]
	cmp	r3, #1
	bne	.L703
	mov	r0, #112
	bl	putchar
	b	.L704
.L703:
	mov	r0, #97
	bl	putchar
.L704:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	beq	.L705
	mov	r0, #44
	bl	putchar
.L705:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	str	r3, [fp, #-24]
.L696:
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bne	.L706
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L708:
	.align	2
.L707:
	.word	-2004318071
	.word	.LC1
	.word	.LC132
	.size	printSched, .-printSched
	.local	i.6554
	.comm	i.6554,4,4
	.local	j.6616
	.comm	j.6616,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
