	.file	"562150.c"
	.intel_syntax noprefix
	.text
	.globl	numlines
	.bss
	.align 4
	.type	numlines, @object
	.size	numlines, 4
numlines:
	.zero	4
	.globl	numspec
	.align 4
	.type	numspec, @object
	.size	numspec, 4
numspec:
	.zero	4
	.globl	maxnumspec
	.align 4
	.type	maxnumspec, @object
	.size	maxnumspec, 4
maxnumspec:
	.zero	4
	.globl	nspecused
	.align 4
	.type	nspecused, @object
	.size	nspecused, 4
nspecused:
	.zero	4
	.globl	diffusion
	.align 4
	.type	diffusion, @object
	.size	diffusion, 4
diffusion:
	.zero	4
	.globl	t1flag
	.align 4
	.type	t1flag, @object
	.size	t1flag, 4
t1flag:
	.zero	4
	.globl	t2flag
	.align 4
	.type	t2flag, @object
	.size	t2flag, 4
t2flag:
	.zero	4
	.globl	kineticflag
	.align 4
	.type	kineticflag, @object
	.size	kineticflag, 4
kineticflag:
	.zero	4
	.globl	incrflag
	.align 4
	.type	incrflag, @object
	.size	incrflag, 4
incrflag:
	.zero	4
	.globl	listflag
	.align 4
	.type	listflag, @object
	.size	listflag, 4
listflag:
	.zero	4
	.globl	corrflag
	.align 4
	.type	corrflag, @object
	.size	corrflag, 4
corrflag:
	.zero	4
	.globl	NEXTflag
	.align 4
	.type	NEXTflag, @object
	.size	NEXTflag, 4
NEXTflag:
	.zero	4
	.globl	poly0
	.align 4
	.type	poly0, @object
	.size	poly0, 4
poly0:
	.zero	4
	.globl	poly1
	.align 4
	.type	poly1, @object
	.size	poly1, 4
poly1:
	.zero	4
	.globl	poly2
	.align 4
	.type	poly2, @object
	.size	poly2, 4
poly2:
	.zero	4
	.globl	poly3
	.align 4
	.type	poly3, @object
	.size	poly3, 4
poly3:
	.zero	4
	.globl	xa
	.align 32
	.type	xa, @object
	.size	xa, 1024
xa:
	.zero	1024
	.globl	ya
	.align 32
	.type	ya, @object
	.size	ya, 1024
ya:
	.zero	1024
	.globl	x
	.align 8
	.type	x, @object
	.size	x, 8
x:
	.zero	8
	.globl	y
	.align 8
	.type	y, @object
	.size	y, 8
y:
	.zero	8
	.globl	aa0
	.align 8
	.type	aa0, @object
	.size	aa0, 8
aa0:
	.zero	8
	.globl	aa2
	.align 8
	.type	aa2, @object
	.size	aa2, 8
aa2:
	.zero	8
	.globl	aa3
	.align 8
	.type	aa3, @object
	.size	aa3, 8
aa3:
	.zero	8
	.globl	intercept
	.align 8
	.type	intercept, @object
	.size	intercept, 8
intercept:
	.zero	8
	.globl	tau
	.align 8
	.type	tau, @object
	.size	tau, 8
tau:
	.zero	8
	.globl	sigma
	.align 8
	.type	sigma, @object
	.size	sigma, 8
sigma:
	.zero	8
	.globl	stddev
	.align 8
	.type	stddev, @object
	.size	stddev, 8
stddev:
	.zero	8
	.globl	err0
	.align 8
	.type	err0, @object
	.size	err0, 8
err0:
	.zero	8
	.globl	err2
	.align 8
	.type	err2, @object
	.size	err2, 8
err2:
	.zero	8
	.globl	err3
	.align 8
	.type	err3, @object
	.size	err3, 8
err3:
	.zero	8
	.globl	yave
	.align 4
	.type	yave, @object
	.size	yave, 4
yave:
	.zero	4
	.globl	offset
	.align 8
	.type	offset, @object
	.size	offset, 8
offset:
	.zero	8
	.globl	converge
	.align 8
	.type	converge, @object
	.size	converge, 8
converge:
	.zero	8
	.globl	nosolution
	.align 8
	.type	nosolution, @object
	.size	nosolution, 8
nosolution:
	.zero	8
	.globl	a
	.align 32
	.type	a, @object
	.size	a, 32
a:
	.zero	32
	.globl	c
	.align 32
	.type	c, @object
	.size	c, 32
c:
	.zero	32
	.globl	d
	.align 32
	.type	d, @object
	.size	d, 32
d:
	.zero	32
	.globl	err
	.align 32
	.type	err, @object
	.size	err, 32
err:
	.zero	32
	.globl	o
	.align 32
	.type	o, @object
	.size	o, 128
o:
	.zero	128
	.globl	max1
	.align 8
	.type	max1, @object
	.size	max1, 8
max1:
	.zero	8
	.globl	max2
	.align 8
	.type	max2, @object
	.size	max2, 8
max2:
	.zero	8
	.globl	e1
	.align 8
	.type	e1, @object
	.size	e1, 8
e1:
	.zero	8
	.globl	e2
	.align 8
	.type	e2, @object
	.size	e2, 8
e2:
	.zero	8
	.globl	e3
	.align 8
	.type	e3, @object
	.size	e3, 8
e3:
	.zero	8
	.globl	s
	.align 8
	.type	s, @object
	.size	s, 8
s:
	.zero	8
	.globl	s1
	.align 8
	.type	s1, @object
	.size	s1, 8
s1:
	.zero	8
	.globl	a0
	.align 8
	.type	a0, @object
	.size	a0, 8
a0:
	.zero	8
	.globl	a1
	.align 8
	.type	a1, @object
	.size	a1, 8
a1:
	.zero	8
	.globl	a2
	.align 8
	.type	a2, @object
	.size	a2, 8
a2:
	.zero	8
	.globl	f1
	.align 8
	.type	f1, @object
	.size	f1, 8
f1:
	.zero	8
	.globl	f2
	.align 8
	.type	f2, @object
	.size	f2, 8
f2:
	.zero	8
	.globl	v
	.align 8
	.type	v, @object
	.size	v, 8
v:
	.zero	8
	.globl	a3
	.align 8
	.type	a3, @object
	.size	a3, 8
a3:
	.zero	8
	.globl	D1
	.align 8
	.type	D1, @object
	.size	D1, 8
D1:
	.zero	8
	.globl	C0
	.align 8
	.type	C0, @object
	.size	C0, 8
C0:
	.zero	8
	.globl	C1
	.align 8
	.type	C1, @object
	.size	C1, 8
C1:
	.zero	8
	.globl	C2
	.align 8
	.type	C2, @object
	.size	C2, 8
C2:
	.zero	8
	.globl	s0
	.align 32
	.type	s0, @object
	.size	s0, 128
s0:
	.zero	128
	.globl	sy
	.align 32
	.type	sy, @object
	.size	sy, 128
sy:
	.zero	128
	.globl	ss1
	.align 32
	.type	ss1, @object
	.size	ss1, 32
ss1:
	.zero	32
	.globl	ss2
	.align 32
	.type	ss2, @object
	.size	ss2, 32
ss2:
	.zero	32
	.globl	xaxis
	.align 32
	.type	xaxis, @object
	.size	xaxis, 32
xaxis:
	.zero	32
	.globl	yaxis
	.align 32
	.type	yaxis, @object
	.size	yaxis, 32
yaxis:
	.zero	32
	.globl	Nn
	.data
	.align 4
	.type	Nn, @object
	.size	Nn, 4
Nn:
	.long	3
	.globl	exptype
	.bss
	.align 4
	.type	exptype, @object
	.size	exptype, 4
exptype:
	.zero	4
	.globl	regression
	.align 4
	.type	regression, @object
	.size	regression, 4
regression:
	.zero	4
	.globl	cp_analysis
	.align 4
	.type	cp_analysis, @object
	.size	cp_analysis, 4
cp_analysis:
	.zero	4
	.globl	polyflag
	.align 4
	.type	polyflag, @object
	.size	polyflag, 4
polyflag:
	.zero	4
	.globl	line_index
	.align 32
	.type	line_index, @object
	.size	line_index, 512
line_index:
	.zero	512
	.globl	spec_count
	.align 32
	.type	spec_count, @object
	.size	spec_count, 512
spec_count:
	.zero	512
	.text
	.type	freemem, @function
freemem:
.LFB6:
	.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	DWORD PTR -4[rbp], 0
	jmp	.L2
.L5:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L3
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	free@PLT
.L3:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ya[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L4
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ya[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	free@PLT
.L4:
	add	DWORD PTR -4[rbp], 1
.L2:
	mov	eax, DWORD PTR numlines[rip]
	cmp	DWORD PTR -4[rbp], eax
	jl	.L5
	mov	rax, QWORD PTR x[rip]
	test	rax, rax
	je	.L6
	mov	rax, QWORD PTR x[rip]
	mov	rdi, rax
	call	free@PLT
.L6:
	mov	rax, QWORD PTR y[rip]
	test	rax, rax
	je	.L7
	mov	rax, QWORD PTR y[rip]
	mov	rdi, rax
	call	free@PLT
.L7:
	mov	rax, QWORD PTR intercept[rip]
	test	rax, rax
	je	.L8
	mov	rax, QWORD PTR intercept[rip]
	mov	rdi, rax
	call	free@PLT
.L8:
	mov	rax, QWORD PTR aa0[rip]
	test	rax, rax
	je	.L9
	mov	rax, QWORD PTR aa0[rip]
	mov	rdi, rax
	call	free@PLT
.L9:
	mov	rax, QWORD PTR aa2[rip]
	test	rax, rax
	je	.L10
	mov	rax, QWORD PTR aa2[rip]
	mov	rdi, rax
	call	free@PLT
.L10:
	mov	rax, QWORD PTR aa3[rip]
	test	rax, rax
	je	.L11
	mov	rax, QWORD PTR aa3[rip]
	mov	rdi, rax
	call	free@PLT
.L11:
	mov	rax, QWORD PTR stddev[rip]
	test	rax, rax
	je	.L12
	mov	rax, QWORD PTR stddev[rip]
	mov	rdi, rax
	call	free@PLT
.L12:
	mov	rax, QWORD PTR err0[rip]
	test	rax, rax
	je	.L13
	mov	rax, QWORD PTR err0[rip]
	mov	rdi, rax
	call	free@PLT
.L13:
	mov	rax, QWORD PTR err2[rip]
	test	rax, rax
	je	.L14
	mov	rax, QWORD PTR err2[rip]
	mov	rdi, rax
	call	free@PLT
.L14:
	mov	rax, QWORD PTR err3[rip]
	test	rax, rax
	je	.L15
	mov	rax, QWORD PTR err3[rip]
	mov	rdi, rax
	call	free@PLT
.L15:
	mov	rax, QWORD PTR sigma[rip]
	test	rax, rax
	je	.L16
	mov	rax, QWORD PTR sigma[rip]
	mov	rdi, rax
	call	free@PLT
.L16:
	mov	rax, QWORD PTR converge[rip]
	test	rax, rax
	je	.L17
	mov	rax, QWORD PTR converge[rip]
	mov	rdi, rax
	call	free@PLT
.L17:
	mov	rax, QWORD PTR nosolution[rip]
	test	rax, rax
	je	.L19
	mov	rax, QWORD PTR nosolution[rip]
	mov	rdi, rax
	call	free@PLT
.L19:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	freemem, .-freemem
	.section	.rodata
.LC0:
	.string	"%lf"
	.align 8
.LC1:
	.string	"magic: can't convert \"%s\" to a real value, zero assummed\n"
	.text
	.globl	stringReal
	.type	stringReal, @function
stringReal:
.LFB7:
	.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	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	cmp	eax, 1
	jne	.L21
	movsd	xmm0, QWORD PTR -16[rbp]
	jmp	.L23
.L21:
	mov	rax, QWORD PTR stderr[rip]
	mov	rdx, QWORD PTR -24[rbp]
	lea	rsi, .LC1[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	pxor	xmm0, xmm0
.L23:
	movq	rax, xmm0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L24
	call	__stack_chk_fail@PLT
.L24:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	stringReal, .-stringReal
	.globl	isReal
	.type	isReal, @function
isReal:
.LFB8:
	.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	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	cmp	eax, 1
	jne	.L26
	mov	eax, 1
	jmp	.L28
.L26:
	mov	eax, 0
.L28:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L29
	call	__stack_chk_fail@PLT
.L29:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	isReal, .-isReal
	.globl	msubt
	.type	msubt, @function
msubt:
.LFB9:
	.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
	movsd	QWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 1
	jne	.L31
	movsd	xmm0, QWORD PTR a0[rip]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR a1[rip]
	movapd	xmm3, xmm0
	divsd	xmm3, xmm1
	movq	rax, xmm3
	movq	xmm0, rax
	call	exp@PLT
	movsd	xmm1, QWORD PTR -32[rbp]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR a2[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR a0[rip]
	addsd	xmm0, xmm1
	jmp	.L32
.L31:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 2
	je	.L33
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 7
	jne	.L34
.L33:
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR a1[rip]
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	exp@PLT
	movsd	xmm1, QWORD PTR a0[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR a2[rip]
	addsd	xmm0, xmm1
	jmp	.L32
.L34:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 10
	jne	.L35
	movsd	xmm0, QWORD PTR a0[rip]
	jmp	.L32
.L35:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 5
	jne	.L36
	movsd	xmm0, QWORD PTR a1[rip]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR a0[rip]
	addsd	xmm0, xmm1
	jmp	.L32
.L36:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 6
	jne	.L37
	movsd	xmm0, QWORD PTR a1[rip]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR a0[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR a2[rip]
	mulsd	xmm0, QWORD PTR -24[rbp]
	mulsd	xmm0, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	jmp	.L32
.L37:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 9
	jne	.L38
	movsd	xmm0, QWORD PTR a1[rip]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR a0[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR a2[rip]
	mulsd	xmm0, QWORD PTR -24[rbp]
	mulsd	xmm0, QWORD PTR -24[rbp]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR a3[rip]
	mulsd	xmm0, QWORD PTR -24[rbp]
	mulsd	xmm0, QWORD PTR -24[rbp]
	mulsd	xmm0, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	jmp	.L32
.L38:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 8
	jne	.L39
	movsd	xmm2, QWORD PTR a3[rip]
	movsd	QWORD PTR -32[rbp], xmm2
	movsd	xmm0, QWORD PTR a3[rip]
	movsd	xmm1, QWORD PTR a0[rip]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR a1[rip]
	movapd	xmm5, xmm0
	divsd	xmm5, xmm1
	movq	rax, xmm5
	movq	xmm0, rax
	call	exp@PLT
	mulsd	xmm0, QWORD PTR -40[rbp]
	movsd	xmm2, QWORD PTR -32[rbp]
	subsd	xmm2, xmm0
	movsd	QWORD PTR -32[rbp], xmm2
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR a2[rip]
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	exp@PLT
	movsd	xmm1, QWORD PTR -32[rbp]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR a0[rip]
	addsd	xmm0, xmm1
	jmp	.L32
.L39:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 3
	jne	.L40
	movsd	xmm0, QWORD PTR C1[rip]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR C0[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR C2[rip]
	mulsd	xmm0, QWORD PTR -24[rbp]
	mulsd	xmm0, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	eax, DWORD PTR Nn[rip]
	cmp	eax, 1
	jne	.L41
	movsd	xmm1, QWORD PTR a0[rip]
	movsd	xmm0, QWORD PTR a0[rip]
	mulsd	xmm0, xmm1
	mulsd	xmm0, QWORD PTR -24[rbp]
	mulsd	xmm0, QWORD PTR -24[rbp]
	jmp	.L32
.L41:
	movsd	xmm0, QWORD PTR D1[rip]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	mulsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	call	exp@PLT
	movsd	xmm1, QWORD PTR a0[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	xmm0, QWORD PTR a1[rip]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR D1[rip]
	mulsd	xmm0, xmm1
	movapd	xmm7, xmm0
	mulsd	xmm7, QWORD PTR -8[rbp]
	movq	rax, xmm7
	movq	xmm0, rax
	call	exp@PLT
	movsd	xmm1, QWORD PTR a2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, QWORD PTR -32[rbp]
	jmp	.L32
.L40:
	movsd	xmm0, QWORD PTR a0[rip]
	movsd	xmm1, QWORD PTR a2[rip]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR a1[rip]
	movapd	xmm4, xmm0
	divsd	xmm4, xmm1
	movq	rax, xmm4
	movq	xmm0, rax
	call	exp@PLT
	movsd	xmm1, QWORD PTR -32[rbp]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR a2[rip]
	addsd	xmm0, xmm1
.L32:
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	msubt, .-msubt
	.section	.rodata
	.align 8
.LC4:
	.string	"expfit: cannot allocate buffer memory"
	.text
	.globl	prepare_workspace
	.type	prepare_workspace, @function
prepare_workspace:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR maxnumspec[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR x[rip], rax
	mov	eax, DWORD PTR maxnumspec[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR y[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR intercept[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR aa0[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR tau[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR aa2[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR aa3[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR sigma[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR stddev[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR err0[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR err2[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR err3[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR converge[rip], rax
	mov	eax, DWORD PTR numlines[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR nosolution[rip], rax
	mov	rax, QWORD PTR x[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR y[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR aa0[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR aa2[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR intercept[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR tau[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR sigma[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR converge[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR nosolution[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR stddev[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR err0[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR err2[rip]
	test	rax, rax
	je	.L43
	mov	rax, QWORD PTR err3[rip]
	test	rax, rax
	jne	.L44
.L43:
	lea	rdi, .LC4[rip]
	call	puts@PLT
	mov	eax, 1
	jmp	.L45
.L44:
	mov	eax, 0
.L45:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	prepare_workspace, .-prepare_workspace
	.section	.rodata
.LC5:
	.string	"%s %s %d %s %s %s\n"
	.align 8
.LC6:
	.string	"expfit: problem on line %d of input\n"
.LC7:
	.string	"%s %s\n"
.LC8:
	.string	"%d"
.LC9:
	.string	"%d %s %s\n"
.LC10:
	.string	"%[^\n]\n"
.LC11:
	.string	"%d %d %s %s\n"
.LC12:
	.string	"%d %d\n"
.LC13:
	.string	"%s %d\n"
.LC14:
	.string	"\n"
.LC15:
	.string	"##numlines=%d l=%d\n"
.LC16:
	.string	"%f %f\n"
	.text
	.globl	readparams
	.type	readparams, @function
readparams:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 208
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR s0[rip], 0
	mov	BYTE PTR sy[rip], 0
	mov	DWORD PTR -180[rbp], 1
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	jne	.L47
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	je	.L47
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 8
	je	.L47
	lea	rdi, -144[rbp]
	lea	rsi, -144[rbp]
	lea	rdx, -144[rbp]
	lea	rax, -144[rbp]
	sub	rsp, 8
	lea	rcx, -144[rbp]
	push	rcx
	mov	r9, rdi
	mov	r8, rsi
	lea	rcx, numspec[rip]
	mov	rsi, rax
	lea	rdi, .LC5[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	add	rsp, 16
	cmp	eax, 6
	je	.L48
	mov	eax, DWORD PTR -180[rbp]
	mov	esi, eax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 1
	jmp	.L77
.L48:
	mov	DWORD PTR numlines[rip], 1
	mov	DWORD PTR -192[rbp], 0
	jmp	.L50
.L51:
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	lea	rcx, s0[rip]
	movzx	edx, BYTE PTR -197[rbp]
	mov	BYTE PTR [rax+rcx], dl
	add	DWORD PTR -192[rbp], 1
.L50:
	call	getchar@PLT
	mov	BYTE PTR -197[rbp], al
	cmp	BYTE PTR -197[rbp], 10
	jne	.L51
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	lea	rdx, s0[rip]
	mov	BYTE PTR [rax+rdx], 0
	add	DWORD PTR -180[rbp], 1
	lea	rdx, ss2[rip]
	lea	rsi, ss1[rip]
	lea	rdi, .LC7[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	add	DWORD PTR -180[rbp], 1
	jmp	.L52
.L47:
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L53
	lea	rsi, numlines[rip]
	lea	rdi, .LC8[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	test	eax, eax
	je	.L54
	lea	rcx, yaxis[rip]
	lea	rdx, xaxis[rip]
	lea	rsi, numspec[rip]
	lea	rdi, .LC9[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	cmp	eax, 3
	je	.L55
	mov	esi, 1
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 1
	jmp	.L77
.L55:
	movabs	rax, 7308344291047272270
	mov	QWORD PTR s0[rip], rax
	mov	BYTE PTR s0[rip+8], 0
	mov	QWORD PTR sy[rip], rax
	mov	BYTE PTR sy[rip+8], 0
	jmp	.L52
.L54:
	lea	rsi, s0[rip]
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	add	DWORD PTR -180[rbp], 1
	lea	rsi, numlines[rip]
	lea	rdi, .LC8[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	test	eax, eax
	je	.L56
	lea	rcx, yaxis[rip]
	lea	rdx, xaxis[rip]
	lea	rsi, numspec[rip]
	lea	rdi, .LC9[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	cmp	eax, 3
	je	.L57
	mov	esi, 1
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 1
	jmp	.L77
.L57:
	movabs	rax, 7308344291047272270
	mov	QWORD PTR sy[rip], rax
	mov	BYTE PTR sy[rip+8], 0
	jmp	.L52
.L56:
	lea	rsi, sy[rip]
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	add	DWORD PTR -180[rbp], 1
	lea	r8, yaxis[rip]
	lea	rcx, xaxis[rip]
	lea	rdx, numspec[rip]
	lea	rsi, numlines[rip]
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	cmp	eax, 4
	je	.L52
	mov	eax, DWORD PTR -180[rbp]
	mov	esi, eax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 1
	jmp	.L77
.L53:
	lea	rdx, numspec[rip]
	lea	rsi, numlines[rip]
	lea	rdi, .LC12[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	cmp	eax, 2
	je	.L52
	mov	eax, DWORD PTR -180[rbp]
	mov	esi, eax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 1
	jmp	.L77
.L52:
	mov	eax, DWORD PTR numspec[rip]
	mov	DWORD PTR maxnumspec[rip], eax
	add	DWORD PTR -180[rbp], 1
	mov	DWORD PTR -188[rbp], 0
	jmp	.L58
.L71:
	mov	eax, DWORD PTR maxnumspec[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	rcx, rax
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	QWORD PTR [rdx+rax], rcx
	mov	eax, DWORD PTR maxnumspec[rip]
	cdqe
	sal	rax, 2
	mov	rdi, rax
	call	malloc@PLT
	mov	rcx, rax
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ya[rip]
	mov	QWORD PTR [rdx+rax], rcx
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L59
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ya[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	jne	.L60
.L59:
	lea	rdi, .LC4[rip]
	call	puts@PLT
	mov	eax, 1
	jmp	.L77
.L60:
	mov	eax, DWORD PTR numspec[rip]
	mov	edx, DWORD PTR -188[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*4]
	lea	rdx, spec_count[rip]
	mov	DWORD PTR [rcx+rdx], eax
	mov	DWORD PTR NEXTflag[rip], 0
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L61
	lea	rax, -196[rbp]
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	cmp	eax, 1
	jne	.L62
	mov	eax, DWORD PTR -196[rbp]
	mov	edx, DWORD PTR -188[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*4]
	lea	rdx, line_index[rip]
	mov	DWORD PTR [rcx+rdx], eax
	jmp	.L63
.L62:
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, spec_count[rip]
	add	rdx, rax
	lea	rax, -176[rbp]
	mov	rsi, rax
	lea	rdi, .LC13[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, line_index[rip]
	add	rax, rdx
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	DWORD PTR NEXTflag[rip], 1
.L63:
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, spec_count[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	DWORD PTR numspec[rip], eax
	jmp	.L64
.L61:
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	je	.L65
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 8
	jne	.L66
.L65:
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, line_index[rip]
	add	rax, rdx
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	jmp	.L64
.L66:
	mov	eax, DWORD PTR -188[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, line_index[rip]
	mov	DWORD PTR [rdx+rax], ecx
.L64:
	lea	rdi, .LC14[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	test	eax, eax
	je	.L67
	mov	eax, DWORD PTR numlines[rip]
	mov	edx, DWORD PTR -180[rbp]
	mov	esi, eax
	lea	rdi, .LC15[rip]
	mov	eax, 0
	call	printf@PLT
.L67:
	add	DWORD PTR -180[rbp], 1
	mov	DWORD PTR -184[rbp], 0
	jmp	.L68
.L70:
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ya[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -184[rbp]
	cdqe
	sal	rax, 2
	add	rdx, rax
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rcx, QWORD PTR [rcx+rax]
	mov	eax, DWORD PTR -184[rbp]
	cdqe
	sal	rax, 2
	add	rax, rcx
	mov	rsi, rax
	lea	rdi, .LC16[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	cmp	eax, 2
	je	.L69
	mov	eax, DWORD PTR -180[rbp]
	mov	esi, eax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 1
	jmp	.L77
.L69:
	add	DWORD PTR -180[rbp], 1
	add	DWORD PTR -184[rbp], 1
.L68:
	mov	eax, DWORD PTR numspec[rip]
	cmp	DWORD PTR -184[rbp], eax
	jl	.L70
	add	DWORD PTR -188[rbp], 1
.L58:
	mov	eax, DWORD PTR numlines[rip]
	cmp	DWORD PTR -188[rbp], eax
	jl	.L71
	mov	eax, DWORD PTR kineticflag[rip]
	test	eax, eax
	je	.L72
	mov	DWORD PTR -188[rbp], 0
	jmp	.L73
.L76:
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR offset[rip]
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rax, QWORD PTR [rdx+rax]
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	DWORD PTR -184[rbp], 1
	jmp	.L74
.L75:
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -184[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -184[rbp]
	cdqe
	sal	rax, 2
	sub	rax, 4
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movsd	xmm0, QWORD PTR offset[rip]
	addsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -184[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -184[rbp], 1
.L74:
	mov	eax, DWORD PTR numspec[rip]
	cmp	DWORD PTR -184[rbp], eax
	jl	.L75
	add	DWORD PTR -188[rbp], 1
.L73:
	mov	eax, DWORD PTR numlines[rip]
	cmp	DWORD PTR -188[rbp], eax
	jl	.L76
.L72:
	mov	eax, 0
.L77:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L78
	call	__stack_chk_fail@PLT
.L78:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	readparams, .-readparams
	.section	.rodata
.LC17:
	.string	"peak    std deviation of fit"
.LC18:
	.string	"   mean"
.LC19:
	.string	"     a0            a1"
.LC20:
	.string	"            a2"
.LC21:
	.string	"           a3"
	.align 8
.LC22:
	.string	"peak             tau         error"
	.align 8
.LC23:
	.string	"peak             T2          error"
	.align 8
.LC24:
	.string	"peak             T1          error"
.LC25:
	.string	"        a0          a2"
	.align 8
.LC27:
	.string	"%4d %16.4g %12.4g  solution not found\n"
.LC28:
	.string	"%4d %16.4g %12.4g\n"
.LC29:
	.string	"%4d %16.4g %12.4g"
.LC30:
	.string	"%12.4g %11.4g"
.LC31:
	.string	"%4d %16.4g"
.LC32:
	.string	" %12.4g"
.LC33:
	.string	"  %12.4g"
	.align 8
.LC34:
	.string	"%4d %16.4g %12.4g  stopped at %d iterations\n"
	.align 8
.LC35:
	.string	"%4d %16.4g          stopped at %d iterations\n"
	.text
	.globl	writeparams
	.type	writeparams, @function
writeparams:
.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, 16
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	je	.L80
	lea	rdi, .LC17[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L81
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	je	.L82
	lea	rdi, .LC18[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L83
.L82:
	lea	rdi, .LC19[rip]
	mov	eax, 0
	call	printf@PLT
.L83:
	mov	eax, DWORD PTR poly2[rip]
	test	eax, eax
	jne	.L84
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	je	.L85
.L84:
	lea	rdi, .LC20[rip]
	mov	eax, 0
	call	printf@PLT
.L85:
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	je	.L81
	lea	rdi, .LC21[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L81
.L80:
	mov	eax, DWORD PTR kineticflag[rip]
	test	eax, eax
	je	.L86
	lea	rdi, .LC22[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L81
.L86:
	mov	eax, DWORD PTR t2flag[rip]
	test	eax, eax
	je	.L87
	lea	rdi, .LC23[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L81
.L87:
	lea	rdi, .LC24[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L81
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 7
	jne	.L81
	lea	rdi, .LC25[rip]
	mov	eax, 0
	call	printf@PLT
.L81:
	mov	edi, 10
	call	putchar@PLT
	mov	DWORD PTR -4[rbp], 0
	jmp	.L88
.L102:
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	jne	.L89
	mov	rdx, QWORD PTR sigma[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC26[rip]
	andps	xmm0, xmm1
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	movss	xmm2, DWORD PTR .LC26[rip]
	andps	xmm1, xmm2
	comiss	xmm0, xmm1
	jbe	.L89
	mov	rdx, QWORD PTR nosolution[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], 1
.L89:
	mov	rdx, QWORD PTR nosolution[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	je	.L91
	mov	rdx, QWORD PTR sigma[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm1
	movq	rdx, xmm3
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	lea	rax, line_index[rip]
	mov	eax, DWORD PTR [rcx+rax]
	movapd	xmm1, xmm0
	movq	xmm0, rdx
	mov	esi, eax
	lea	rdi, .LC27[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L92
.L91:
	mov	rdx, QWORD PTR converge[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	je	.L93
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	je	.L94
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR stddev[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm1
	movq	rdx, xmm4
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	lea	rax, line_index[rip]
	mov	eax, DWORD PTR [rcx+rax]
	movapd	xmm1, xmm0
	movq	xmm0, rdx
	mov	esi, eax
	lea	rdi, .LC28[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L92
.L94:
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	jne	.L95
	mov	rdx, QWORD PTR sigma[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm1
	movq	rdx, xmm5
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	lea	rax, line_index[rip]
	mov	eax, DWORD PTR [rcx+rax]
	movapd	xmm1, xmm0
	movq	xmm0, rdx
	mov	esi, eax
	lea	rdi, .LC29[rip]
	mov	eax, 2
	call	printf@PLT
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L96
	mov	rdx, QWORD PTR aa2[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm1
	movq	rax, xmm6
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC30[rip]
	mov	eax, 2
	call	printf@PLT
.L96:
	mov	edi, 10
	call	putchar@PLT
	jmp	.L92
.L95:
	mov	rdx, QWORD PTR stddev[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm0
	movq	rdx, xmm7
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	lea	rax, line_index[rip]
	mov	eax, DWORD PTR [rcx+rax]
	movq	xmm0, rdx
	mov	esi, eax
	lea	rdi, .LC31[rip]
	mov	eax, 1
	call	printf@PLT
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L97
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movq	rax, xmm2
	movq	xmm0, rax
	lea	rdi, .LC32[rip]
	mov	eax, 1
	call	printf@PLT
	mov	eax, DWORD PTR poly1[rip]
	test	eax, eax
	jne	.L98
	mov	eax, DWORD PTR poly2[rip]
	test	eax, eax
	jne	.L98
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	je	.L99
.L98:
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movq	rax, xmm3
	movq	xmm0, rax
	lea	rdi, .LC33[rip]
	mov	eax, 1
	call	printf@PLT
.L99:
	mov	eax, DWORD PTR poly1[rip]
	test	eax, eax
	jne	.L100
	mov	rdx, QWORD PTR aa2[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	lea	rdi, .LC33[rip]
	mov	eax, 1
	call	printf@PLT
.L100:
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	je	.L97
	mov	rdx, QWORD PTR aa3[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC32[rip]
	mov	eax, 1
	call	printf@PLT
.L97:
	mov	edi, 10
	call	putchar@PLT
	jmp	.L92
.L93:
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	jne	.L101
	mov	rdx, QWORD PTR sigma[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm1
	movq	rcx, xmm6
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, line_index[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	edx, 64
	movapd	xmm1, xmm0
	movq	xmm0, rcx
	mov	esi, eax
	lea	rdi, .LC34[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L92
.L101:
	mov	rdx, QWORD PTR stddev[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm0
	movq	rcx, xmm7
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, line_index[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	edx, 64
	movq	xmm0, rcx
	mov	esi, eax
	lea	rdi, .LC35[rip]
	mov	eax, 1
	call	printf@PLT
.L92:
	add	DWORD PTR -4[rbp], 1
.L88:
	mov	eax, DWORD PTR numlines[rip]
	cmp	DWORD PTR -4[rbp], eax
	jl	.L102
	mov	eax, 1
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	writeparams, .-writeparams
	.section	.rodata
.LC37:
	.string	"\npeak number %d\n"
	.align 8
.LC38:
	.string	"Mean =%8.4g  Standard Deviation =%8.4g\n"
	.align 8
.LC39:
	.string	"Coefficients:        a0= %10.3g  a1= %13.6g\n"
	.align 8
.LC40:
	.string	"Standard deviation:      %10.3g      %13.6g\n"
	.align 8
.LC41:
	.string	"Coefficients:        a0= %10.3g  a1= %13.6g  a2= %10g\n"
	.align 8
.LC42:
	.string	"Standard deviation:      %10.3g      %13.6g      %10g\n"
.LC43:
	.string	" tau = %12.3g    "
.LC44:
	.string	" T2 = %12.3g     "
	.align 8
.LC45:
	.string	"\n\n   Sinf=%.1f  S0=%.1f  Tch=%.5f  T1rho=%.3f\n\n"
	.align 8
.LC46:
	.string	"\n     a0=%.4g   a1=%.4g   a2=%.4g   a3=%.4g\n"
	.align 8
.LC47:
	.string	"\n     a0=%.4g   a1=%.4g   a2=%.4g   \n"
.LC48:
	.string	" T1 = %12.3g     "
.LC49:
	.string	" error = %12.3g"
.LC50:
	.string	"solution not found"
.LC51:
	.string	"results after %d iterations\n"
	.align 8
.LC52:
	.string	"%11s %12s   calculated   difference\n"
	.align 8
.LC53:
	.string	"      time       observed   calculated   difference"
.LC54:
	.string	"%12.4g %12.3g %12.3g %12.3g\n"
	.text
	.globl	printpeakdata
	.type	printpeakdata, @function
printpeakdata:
.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	DWORD PTR -20[rbp], edi
	mov	DWORD PTR -24[rbp], esi
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	eax, DWORD PTR corrflag[rip]
	test	eax, eax
	je	.L106
	movsd	xmm0, QWORD PTR .LC36[rip]
	movsd	QWORD PTR -8[rbp], xmm0
.L106:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, line_index[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	esi, eax
	lea	rdi, .LC37[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	je	.L107
	mov	rdx, QWORD PTR stddev[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm1
	movq	rax, xmm5
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC38[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L108
.L107:
	mov	eax, DWORD PTR poly1[rip]
	test	eax, eax
	je	.L109
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm1
	movq	rax, xmm6
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC39[rip]
	mov	eax, 2
	call	printf@PLT
	mov	rdx, QWORD PTR sigma[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR err0[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm1
	movq	rax, xmm7
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC40[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L108
.L109:
	mov	eax, DWORD PTR diffusion[rip]
	test	eax, eax
	jne	.L110
	mov	eax, DWORD PTR poly2[rip]
	test	eax, eax
	je	.L111
.L110:
	mov	rdx, QWORD PTR aa2[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm2, DWORD PTR [rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm2
	movq	rax, xmm5
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC41[rip]
	mov	eax, 3
	call	printf@PLT
	mov	rdx, QWORD PTR err2[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rdx, QWORD PTR sigma[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR err0[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm2, DWORD PTR [rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm2
	movq	rax, xmm6
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC42[rip]
	mov	eax, 3
	call	printf@PLT
	jmp	.L108
.L111:
	mov	eax, DWORD PTR kineticflag[rip]
	test	eax, eax
	je	.L112
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm0
	movq	rax, xmm7
	movq	xmm0, rax
	lea	rdi, .LC43[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L108
.L112:
	mov	eax, DWORD PTR t2flag[rip]
	test	eax, eax
	je	.L113
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC44[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L108
.L113:
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	je	.L114
	mov	rdx, QWORD PTR aa2[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rdx, QWORD PTR aa3[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm3
	movq	rax, xmm6
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC45[rip]
	mov	eax, 4
	call	printf@PLT
	jmp	.L108
.L114:
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	je	.L115
	mov	rdx, QWORD PTR aa3[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rdx, QWORD PTR aa2[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm3
	movq	rax, xmm7
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC46[rip]
	mov	eax, 4
	call	printf@PLT
	jmp	.L108
.L115:
	mov	eax, DWORD PTR poly2[rip]
	test	eax, eax
	je	.L116
	mov	rdx, QWORD PTR aa2[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm2, DWORD PTR [rax]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm2
	movq	rax, xmm4
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC47[rip]
	mov	eax, 3
	call	printf@PLT
	jmp	.L108
.L116:
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC48[rip]
	mov	eax, 1
	call	printf@PLT
.L108:
	mov	eax, DWORD PTR diffusion[rip]
	test	eax, eax
	jne	.L117
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	jne	.L117
	mov	rdx, QWORD PTR sigma[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm0
	movq	rax, xmm6
	movq	xmm0, rax
	lea	rdi, .LC49[rip]
	mov	eax, 1
	call	printf@PLT
.L117:
	mov	edi, 10
	call	putchar@PLT
	mov	rdx, QWORD PTR nosolution[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	je	.L118
	lea	rdi, .LC50[rip]
	call	puts@PLT
	jmp	.L119
.L118:
	mov	rdx, QWORD PTR converge[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	jne	.L119
	mov	esi, 64
	lea	rdi, .LC51[rip]
	mov	eax, 0
	call	printf@PLT
.L119:
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	je	.L120
	lea	rdx, ss2[rip]
	lea	rsi, ss1[rip]
	lea	rdi, .LC52[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L121
.L120:
	lea	rdi, .LC53[rip]
	call	puts@PLT
.L121:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L122
.L123:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	addsd	xmm0, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR x[rip]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ya[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rdx, rax
	mov	rcx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -12[rbp], 1
.L122:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, spec_count[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cmp	DWORD PTR -12[rbp], eax
	jl	.L123
	mov	DWORD PTR -12[rbp], 0
	jmp	.L124
.L125:
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a0[rip], xmm0
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a1[rip], xmm0
	mov	rdx, QWORD PTR aa2[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a2[rip], xmm0
	mov	rdx, QWORD PTR aa3[rip]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a3[rip], xmm0
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movsd	QWORD PTR -32[rbp], xmm4
	mov	rdx, QWORD PTR x[rip]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm0
	movq	rax, xmm7
	movq	xmm0, rax
	mov	eax, 1
	call	msubt
	movsd	xmm4, QWORD PTR -32[rbp]
	subsd	xmm4, xmm0
	movsd	QWORD PTR -32[rbp], xmm4
	mov	rdx, QWORD PTR x[rip]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	mov	eax, 1
	call	msubt
	movq	rdx, xmm0
	mov	rcx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rcx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rcx, QWORD PTR x[rip]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rcx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm1
	movq	rax, xmm6
	movsd	xmm3, QWORD PTR -32[rbp]
	movq	xmm2, rdx
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC54[rip]
	mov	eax, 4
	call	printf@PLT
	add	DWORD PTR -12[rbp], 1
.L124:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -24[rbp]
	jl	.L125
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	printpeakdata, .-printpeakdata
	.globl	initial_values
	.type	initial_values, @function
initial_values:
.LFB14:
	.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, 40
	.cfi_offset 3, -24
	pxor	xmm0, xmm0
	movsd	QWORD PTR -24[rbp], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR a[rip+24], xmm0
	movsd	xmm0, QWORD PTR .LC55[rip]
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC56[rip]
	movsd	QWORD PTR -32[rbp], xmm0
	mov	DWORD PTR -48[rbp], 0
	mov	DWORD PTR -44[rbp], 0
	mov	ebx, 0
	jmp	.L127
.L133:
	mov	rdx, QWORD PTR x[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	comisd	xmm0, xmm1
	jbe	.L128
	mov	rdx, QWORD PTR x[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR -40[rbp], xmm0
	mov	DWORD PTR -48[rbp], ebx
.L128:
	mov	rdx, QWORD PTR x[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR -32[rbp]
	jbe	.L130
	mov	rdx, QWORD PTR x[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR -32[rbp], xmm0
	mov	DWORD PTR -44[rbp], ebx
.L130:
	mov	eax, DWORD PTR corrflag[rip]
	test	eax, eax
	je	.L132
	mov	eax, DWORD PTR kineticflag[rip]
	test	eax, eax
	jne	.L132
	mov	rdx, QWORD PTR x[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC36[rip]
	addsd	xmm0, xmm1
	mov	rdx, QWORD PTR x[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
.L132:
	add	ebx, 1
.L127:
	mov	eax, DWORD PTR numspec[rip]
	cmp	ebx, eax
	jl	.L133
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	je	.L134
	movsd	xmm0, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR .LC57[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip+16], xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	addsd	xmm0, xmm0
	movsd	QWORD PTR a[rip+8], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -24[rbp], xmm0
	jmp	.L135
.L134:
	mov	eax, DWORD PTR diffusion[rip]
	test	eax, eax
	je	.L136
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR .LC57[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip], xmm0
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR a[rip+8], xmm0
	movsd	xmm0, QWORD PTR a[rip]
	movsd	QWORD PTR a[rip+16], xmm0
	jmp	.L135
.L136:
	mov	eax, DWORD PTR poly1[rip]
	test	eax, eax
	jne	.L137
	mov	eax, DWORD PTR poly2[rip]
	test	eax, eax
	jne	.L137
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	je	.L138
.L137:
	movsd	xmm0, QWORD PTR -32[rbp]
	subsd	xmm0, QWORD PTR -40[rbp]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC60[rip]
	comisd	xmm0, xmm1
	jbe	.L194
	pxor	xmm0, xmm0
	movsd	QWORD PTR a[rip+8], xmm0
	jmp	.L141
.L194:
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	subss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR -32[rbp]
	subsd	xmm1, QWORD PTR -40[rbp]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip+8], xmm0
.L141:
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR a[rip+8]
	mulsd	xmm1, QWORD PTR -40[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR a[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L142
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jne	.L142
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR .LC61[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip], xmm0
.L142:
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	divsd	xmm0, QWORD PTR -32[rbp]
	divsd	xmm0, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR .LC57[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip+16], xmm0
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	je	.L144
	movsd	xmm0, QWORD PTR a[rip+16]
	divsd	xmm0, QWORD PTR -32[rbp]
	movsd	QWORD PTR a[rip+24], xmm0
	movsd	xmm0, QWORD PTR a[rip+24]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L145
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jne	.L145
	movsd	xmm0, QWORD PTR .LC62[rip]
	movsd	QWORD PTR a[rip+24], xmm0
.L145:
	movsd	xmm0, QWORD PTR a[rip+8]
	movsd	xmm1, QWORD PTR .LC63[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip+8], xmm0
	movsd	xmm0, QWORD PTR a[rip+16]
	movsd	xmm1, QWORD PTR .LC63[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip+16], xmm0
.L144:
	movsd	xmm0, QWORD PTR a[rip+16]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L147
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jne	.L147
	movsd	xmm0, QWORD PTR .LC64[rip]
	movsd	QWORD PTR a[rip+16], xmm0
.L147:
	movsd	xmm0, QWORD PTR a[rip+8]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L135
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jne	.L135
	movsd	xmm0, QWORD PTR .LC65[rip]
	movsd	QWORD PTR a[rip+8], xmm0
	jmp	.L135
.L138:
	mov	eax, DWORD PTR kineticflag[rip]
	test	eax, eax
	jne	.L151
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 7
	jne	.L152
.L151:
	mov	eax, DWORD PTR incrflag[rip]
	test	eax, eax
	jne	.L153
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 7
	jne	.L154
.L153:
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a[rip+16], xmm0
	movsd	xmm1, QWORD PTR a[rip+16]
	movsd	xmm0, QWORD PTR .LC66[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	jmp	.L155
.L154:
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a[rip+16], xmm0
	movsd	xmm1, QWORD PTR a[rip+16]
	movsd	xmm0, QWORD PTR .LC67[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
.L155:
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	comiss	xmm0, xmm1
	jbe	.L195
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	subss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a[rip], xmm0
	jmp	.L135
.L195:
	movsd	xmm0, QWORD PTR a[rip+16]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsd	QWORD PTR a[rip], xmm0
	jmp	.L135
.L152:
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a[rip], xmm0
	mov	eax, DWORD PTR t2flag[rip]
	test	eax, eax
	je	.L159
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR .LC63[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip+16], xmm0
	jmp	.L160
.L159:
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a[rip+16], xmm0
	movsd	xmm1, QWORD PTR a[rip+16]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L160
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm0, xmm0
	comiss	xmm0, xmm1
	jbe	.L160
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC69[rip]
	xorps	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a[rip+16], xmm0
.L160:
	movsd	xmm0, QWORD PTR a[rip]
	movsd	xmm2, QWORD PTR a[rip+16]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR .LC67[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR a[rip+16]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
.L135:
	movsd	xmm0, QWORD PTR -32[rbp]
	addsd	xmm0, xmm0
	movsd	QWORD PTR max2[rip], xmm0
	movsd	xmm0, QWORD PTR .LC55[rip]
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC56[rip]
	movsd	QWORD PTR -32[rbp], xmm0
	mov	DWORD PTR -48[rbp], 0
	pxor	xmm0, xmm0
	movss	DWORD PTR yave[rip], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR s[rip], xmm0
	mov	ebx, 0
	jmp	.L163
.L168:
	mov	rdx, QWORD PTR y[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	subsd	xmm0, QWORD PTR -24[rbp]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	comisd	xmm0, xmm1
	jbe	.L164
	mov	rdx, QWORD PTR y[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	subsd	xmm0, QWORD PTR -24[rbp]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm0, xmm1
	movsd	QWORD PTR -40[rbp], xmm0
	mov	DWORD PTR -48[rbp], ebx
.L164:
	mov	rdx, QWORD PTR y[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC26[rip]
	andps	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR -32[rbp]
	jbe	.L166
	mov	rdx, QWORD PTR y[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC26[rip]
	andps	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR -32[rbp], xmm0
.L166:
	mov	rdx, QWORD PTR y[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	movss	xmm0, DWORD PTR yave[rip]
	addss	xmm0, xmm1
	movss	DWORD PTR yave[rip], xmm0
	add	ebx, 1
.L163:
	mov	eax, DWORD PTR numspec[rip]
	cmp	ebx, eax
	jl	.L168
	movss	xmm0, DWORD PTR yave[rip]
	mov	eax, DWORD PTR numspec[rip]
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, eax
	divss	xmm0, xmm1
	movss	DWORD PTR yave[rip], xmm0
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	je	.L169
	pxor	xmm0, xmm0
	movsd	QWORD PTR s[rip], xmm0
	mov	ebx, 0
	jmp	.L170
.L171:
	mov	rdx, QWORD PTR y[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	xmm2, DWORD PTR yave[rip]
	movaps	xmm1, xmm0
	subss	xmm1, xmm2
	mov	rdx, QWORD PTR y[rip]
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	xmm2, DWORD PTR yave[rip]
	subss	xmm0, xmm2
	mulss	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR s[rip]
	addsd	xmm0, xmm1
	movsd	QWORD PTR s[rip], xmm0
	add	ebx, 1
.L170:
	mov	eax, DWORD PTR numspec[rip]
	cmp	ebx, eax
	jl	.L171
	movsd	xmm0, QWORD PTR s[rip]
	mov	eax, DWORD PTR numspec[rip]
	sub	eax, 1
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	sqrt@PLT
	movq	rax, xmm0
	mov	QWORD PTR s[rip], rax
	movss	xmm0, DWORD PTR yave[rip]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a0[rip], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR a1[rip], xmm0
	movsd	xmm0, QWORD PTR a0[rip]
	movsd	QWORD PTR a[rip], xmm0
	movsd	xmm0, QWORD PTR a1[rip]
	movsd	QWORD PTR a[rip+8], xmm0
	jmp	.L196
.L169:
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	je	.L173
	movsd	xmm1, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR .LC70[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR a[rip+24], xmm0
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a[rip], xmm0
	jmp	.L174
.L173:
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	jne	.L174
	mov	rdx, QWORD PTR x[rip]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a[rip+8], xmm0
	movsd	xmm1, QWORD PTR a[rip+8]
	movsd	xmm0, QWORD PTR max2[rip]
	movsd	xmm2, QWORD PTR .LC63[rip]
	divsd	xmm0, xmm2
	comisd	xmm0, xmm1
	jbe	.L174
	movsd	xmm0, QWORD PTR max2[rip]
	movsd	xmm1, QWORD PTR .LC63[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip+8], xmm0
.L174:
	movsd	xmm1, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR .LC63[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR max1[rip], xmm0
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	jne	.L196
	movsd	xmm0, QWORD PTR a[rip+16]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L176
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jne	.L176
	movsd	xmm0, QWORD PTR .LC64[rip]
	movsd	QWORD PTR a[rip+16], xmm0
.L176:
	movsd	xmm0, QWORD PTR a[rip]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L196
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	je	.L193
	jmp	.L196
.L193:
	movsd	xmm0, QWORD PTR a[rip+16]
	movsd	xmm1, QWORD PTR .LC71[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip], xmm0
.L196:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	initial_values, .-initial_values
	.globl	invertmatrix
	.type	invertmatrix, @function
invertmatrix:
.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, 160
	mov	QWORD PTR -152[rbp], rdi
	mov	QWORD PTR -160[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -136[rbp], 0
	jmp	.L198
.L201:
	mov	DWORD PTR -132[rbp], 0
	jmp	.L199
.L200:
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -152[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rcx+rax*8]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -132[rbp], 1
.L199:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -132[rbp], eax
	jl	.L200
	add	DWORD PTR -136[rbp], 1
.L198:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -136[rbp], eax
	jl	.L201
	mov	DWORD PTR -132[rbp], 0
	jmp	.L202
.L203:
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	mov	edx, DWORD PTR -132[rbp]
	mov	DWORD PTR -96[rbp+rax*4], edx
	add	DWORD PTR -132[rbp], 1
.L202:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -132[rbp], eax
	jl	.L203
	mov	DWORD PTR -136[rbp], 0
	jmp	.L204
.L217:
	mov	eax, DWORD PTR -136[rbp]
	mov	DWORD PTR -128[rbp], eax
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	movsd	QWORD PTR -112[rbp], xmm0
	mov	eax, DWORD PTR -136[rbp]
	sub	eax, 1
	mov	DWORD PTR -124[rbp], eax
	mov	eax, DWORD PTR -136[rbp]
	add	eax, 1
	mov	DWORD PTR -116[rbp], eax
	mov	eax, DWORD PTR -116[rbp]
	mov	DWORD PTR -132[rbp], eax
	jmp	.L205
.L208:
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	movsd	QWORD PTR -104[rbp], xmm0
	movsd	xmm0, QWORD PTR -104[rbp]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -112[rbp]
	movq	xmm2, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm2
	comisd	xmm0, xmm1
	jbe	.L206
	mov	eax, DWORD PTR -132[rbp]
	mov	DWORD PTR -128[rbp], eax
	movsd	xmm0, QWORD PTR -104[rbp]
	movsd	QWORD PTR -112[rbp], xmm0
.L206:
	add	DWORD PTR -132[rbp], 1
.L205:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -132[rbp], eax
	jl	.L208
	mov	DWORD PTR -132[rbp], 0
	jmp	.L209
.L210:
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	QWORD PTR -48[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rcx+rax*8]
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	divsd	xmm0, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	divsd	xmm0, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	QWORD PTR -80[rbp+rax*8], xmm0
	add	DWORD PTR -132[rbp], 1
.L209:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -132[rbp], eax
	jl	.L210
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	movsd	xmm0, QWORD PTR .LC72[rip]
	divsd	xmm0, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	mov	eax, DWORD PTR -96[rbp+rax*4]
	mov	DWORD PTR -132[rbp], eax
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	mov	edx, DWORD PTR -96[rbp+rax*4]
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	mov	DWORD PTR -96[rbp+rax*4], edx
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	mov	edx, DWORD PTR -132[rbp]
	mov	DWORD PTR -96[rbp+rax*4], edx
	mov	DWORD PTR -128[rbp], 0
	jmp	.L211
.L216:
	mov	eax, DWORD PTR -136[rbp]
	cmp	eax, DWORD PTR -128[rbp]
	je	.L212
	mov	DWORD PTR -132[rbp], 0
	jmp	.L213
.L215:
	mov	eax, DWORD PTR -136[rbp]
	cmp	eax, DWORD PTR -132[rbp]
	je	.L214
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	xmm2, QWORD PTR -80[rbp+rax*8]
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -48[rbp+rax*8]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
.L214:
	add	DWORD PTR -132[rbp], 1
.L213:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -132[rbp], eax
	jl	.L215
.L212:
	add	DWORD PTR -128[rbp], 1
.L211:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -128[rbp], eax
	jl	.L216
	add	DWORD PTR -136[rbp], 1
.L204:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -136[rbp], eax
	jl	.L217
	mov	DWORD PTR -136[rbp], 0
	jmp	.L218
.L225:
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	mov	eax, DWORD PTR -96[rbp+rax*4]
	cmp	DWORD PTR -136[rbp], eax
	je	.L219
	mov	eax, DWORD PTR -136[rbp]
	add	eax, 1
	mov	DWORD PTR -132[rbp], eax
	jmp	.L220
.L224:
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	mov	eax, DWORD PTR -96[rbp+rax*4]
	cmp	DWORD PTR -136[rbp], eax
	jne	.L221
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	mov	eax, DWORD PTR -96[rbp+rax*4]
	mov	DWORD PTR -120[rbp], eax
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	mov	edx, DWORD PTR -96[rbp+rax*4]
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	mov	DWORD PTR -96[rbp+rax*4], edx
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	mov	edx, DWORD PTR -120[rbp]
	mov	DWORD PTR -96[rbp+rax*4], edx
	mov	DWORD PTR -124[rbp], 0
	jmp	.L222
.L223:
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -124[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -124[rbp]
	cdqe
	movsd	QWORD PTR -48[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -136[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -124[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rcx+rax*8]
	mov	eax, DWORD PTR -124[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -160[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -124[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	mov	eax, DWORD PTR -124[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -124[rbp], 1
.L222:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -124[rbp], eax
	jl	.L223
.L221:
	add	DWORD PTR -132[rbp], 1
.L220:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -132[rbp], eax
	jl	.L224
.L219:
	add	DWORD PTR -136[rbp], 1
.L218:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -136[rbp], eax
	jl	.L225
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L226
	call	__stack_chk_fail@PLT
.L226:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	invertmatrix, .-invertmatrix
	.section	.rodata
.LC74:
	.string	"diag=%g\n"
.LC76:
	.string	"detv=%g\n"
	.text
	.globl	det
	.type	det, @function
det:
.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, 192
	mov	QWORD PTR -184[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -184[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -160[rbp], xmm0
	movsd	xmm0, QWORD PTR -160[rbp]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC73[rip]
	comisd	xmm0, xmm1
	jbe	.L251
	mov	eax, 1
	jmp	.L245
.L251:
	mov	DWORD PTR -176[rbp], 0
	jmp	.L232
.L235:
	mov	DWORD PTR -172[rbp], 0
	jmp	.L233
.L234:
	mov	eax, DWORD PTR -176[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -184[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -172[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	divsd	xmm0, QWORD PTR -160[rbp]
	mov	eax, DWORD PTR -172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -144[rbp+rax*8], xmm0
	add	DWORD PTR -172[rbp], 1
.L233:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -172[rbp], eax
	jl	.L234
	add	DWORD PTR -176[rbp], 1
.L232:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -176[rbp], eax
	jl	.L235
	mov	eax, DWORD PTR Nn[rip]
	cmp	eax, 2
	jne	.L236
	movsd	xmm0, QWORD PTR -104[rbp]
	movsd	QWORD PTR -168[rbp], xmm0
	jmp	.L237
.L236:
	movsd	xmm1, QWORD PTR -104[rbp]
	movsd	xmm0, QWORD PTR -64[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -168[rbp], xmm0
	mov	eax, DWORD PTR Nn[rip]
	cmp	eax, 4
	jne	.L237
	movsd	xmm0, QWORD PTR -24[rbp]
	movsd	xmm1, QWORD PTR -168[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -168[rbp], xmm0
.L237:
	movsd	xmm0, QWORD PTR -168[rbp]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC73[rip]
	comisd	xmm0, xmm1
	jbe	.L252
	mov	rax, QWORD PTR -168[rbp]
	movq	xmm0, rax
	lea	rdi, .LC74[rip]
	mov	eax, 1
	call	printf@PLT
	mov	eax, 1
	jmp	.L245
.L252:
	mov	eax, DWORD PTR Nn[rip]
	cmp	eax, 2
	jne	.L240
	movsd	xmm1, QWORD PTR -136[rbp]
	movsd	xmm0, QWORD PTR -112[rbp]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -168[rbp]
	subsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC73[rip]
	comisd	xmm0, xmm1
	jbe	.L253
	mov	eax, 1
	jmp	.L245
.L253:
	mov	eax, 0
	jmp	.L245
.L240:
	movsd	xmm1, QWORD PTR -96[rbp]
	movsd	xmm0, QWORD PTR -72[rbp]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -168[rbp]
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR -112[rbp]
	movsd	xmm3, QWORD PTR -136[rbp]
	movsd	xmm1, QWORD PTR -64[rbp]
	mulsd	xmm1, xmm3
	movsd	xmm4, QWORD PTR -72[rbp]
	movsd	xmm3, QWORD PTR -128[rbp]
	mulsd	xmm3, xmm4
	subsd	xmm1, xmm3
	mulsd	xmm2, xmm1
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm2, QWORD PTR -80[rbp]
	movsd	xmm3, QWORD PTR -136[rbp]
	movsd	xmm0, QWORD PTR -96[rbp]
	mulsd	xmm0, xmm3
	movsd	xmm4, QWORD PTR -104[rbp]
	movsd	xmm3, QWORD PTR -128[rbp]
	mulsd	xmm3, xmm4
	subsd	xmm0, xmm3
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	movsd	QWORD PTR -152[rbp], xmm0
	movsd	xmm0, QWORD PTR -168[rbp]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC75[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -152[rbp]
	movq	xmm2, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm2
	comisd	xmm0, xmm1
	jbe	.L254
	mov	rax, QWORD PTR -152[rbp]
	movq	xmm0, rax
	lea	rdi, .LC76[rip]
	mov	eax, 1
	call	printf@PLT
	mov	eax, 1
	jmp	.L245
.L254:
	mov	eax, 0
.L245:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L246
	call	__stack_chk_fail@PLT
.L246:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	det, .-det
	.section	.rodata
.LC82:
	.string	"Problem With Determinant\n"
.LC85:
	.string	"NUMBER ERROR"
	.text
	.globl	calc_params
	.type	calc_params, @function
calc_params:
.LFB17:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 176
	.cfi_offset 14, -24
	.cfi_offset 13, -32
	.cfi_offset 12, -40
	.cfi_offset 3, -48
	mov	DWORD PTR -196[rbp], edi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -40[rbp], rax
	xor	eax, eax
	movsd	xmm0, QWORD PTR .LC72[rip]
	movsd	QWORD PTR -192[rbp], xmm0
	movsd	xmm0, QWORD PTR a[rip+8]
	movsd	QWORD PTR -184[rbp], xmm0
	mov	r14d, 0
	movsd	xmm0, QWORD PTR .LC77[rip]
	movsd	QWORD PTR e3[rip], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR s1[rip], xmm0
.L325:
	pxor	xmm0, xmm0
	movsd	QWORD PTR s[rip], xmm0
	mov	r12d, 0
	jmp	.L256
.L259:
	movsx	rax, r12d
	lea	rdx, 0[0+rax*8]
	lea	rax, c[rip]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	ebx, 0
	jmp	.L257
.L258:
	movsx	rdx, ebx
	movsx	rax, r12d
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -176[rbp+rax*8], xmm0
	add	ebx, 1
.L257:
	mov	eax, DWORD PTR Nn[rip]
	cmp	ebx, eax
	jl	.L258
	add	r12d, 1
.L256:
	mov	eax, DWORD PTR Nn[rip]
	cmp	r12d, eax
	jl	.L259
	movsd	xmm0, QWORD PTR a[rip]
	movsd	QWORD PTR a0[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip+8]
	movsd	QWORD PTR a1[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip+16]
	movsd	QWORD PTR a2[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip+24]
	movsd	QWORD PTR a3[rip], xmm0
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	jne	.L260
	movsd	xmm0, QWORD PTR a0[rip]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR max1[rip]
	mulsd	xmm1, QWORD PTR -192[rbp]
	comisd	xmm0, xmm1
	jbe	.L261
	movsd	xmm0, QWORD PTR a0[rip]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jbe	.L350
	movsd	xmm0, QWORD PTR max1[rip]
	mulsd	xmm0, QWORD PTR -192[rbp]
	movsd	QWORD PTR a0[rip], xmm0
	jmp	.L261
.L350:
	movsd	xmm1, QWORD PTR a0[rip]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L261
	movsd	xmm0, QWORD PTR -192[rbp]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR max1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR a0[rip], xmm0
.L261:
	movsd	xmm0, QWORD PTR a2[rip]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR max1[rip]
	mulsd	xmm1, QWORD PTR -192[rbp]
	comisd	xmm0, xmm1
	jbe	.L266
	movsd	xmm0, QWORD PTR a2[rip]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jbe	.L351
	movsd	xmm0, QWORD PTR max1[rip]
	mulsd	xmm0, QWORD PTR -192[rbp]
	movsd	QWORD PTR a2[rip], xmm0
	jmp	.L266
.L351:
	movsd	xmm1, QWORD PTR a2[rip]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L266
	movsd	xmm0, QWORD PTR -192[rbp]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR max1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR a2[rip], xmm0
.L266:
	movsd	xmm1, QWORD PTR a1[rip]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L352
	mov	eax, DWORD PTR t1flag[rip]
	test	eax, eax
	jne	.L273
	mov	eax, DWORD PTR t2flag[rip]
	test	eax, eax
	jne	.L273
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 7
	jne	.L274
.L273:
	movsd	xmm0, QWORD PTR -184[rbp]
	divsd	xmm0, QWORD PTR -192[rbp]
	movsd	QWORD PTR a1[rip], xmm0
	movsd	xmm0, QWORD PTR -192[rbp]
	addsd	xmm0, xmm0
	movsd	QWORD PTR -192[rbp], xmm0
	movsd	xmm0, QWORD PTR a1[rip]
	movsd	QWORD PTR a[rip+8], xmm0
	jmp	.L277
.L274:
	movsd	xmm0, QWORD PTR a1[rip]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR max2[rip]
	movsd	xmm2, QWORD PTR .LC78[rip]
	divsd	xmm0, xmm2
	comisd	xmm0, xmm1
	jbe	.L277
	movsd	xmm0, QWORD PTR max2[rip]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC78[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a1[rip], xmm0
	jmp	.L277
.L352:
	movsd	xmm0, QWORD PTR max2[rip]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -192[rbp]
	movsd	xmm0, QWORD PTR a1[rip]
	comisd	xmm0, xmm1
	jbe	.L277
	movsd	xmm0, QWORD PTR max2[rip]
	mulsd	xmm0, QWORD PTR -192[rbp]
	movsd	QWORD PTR a1[rip], xmm0
	jmp	.L277
.L260:
	mov	eax, DWORD PTR diffusion[rip]
	test	eax, eax
	je	.L279
	movsd	xmm1, QWORD PTR a0[rip]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L279
	movsd	xmm0, QWORD PTR a[rip+16]
	movsd	xmm1, QWORD PTR .LC63[rip]
	divsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm0, xmm1
	movsd	QWORD PTR a[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip]
	movsd	QWORD PTR a0[rip], xmm0
	jmp	.L277
.L279:
	mov	eax, DWORD PTR diffusion[rip]
	test	eax, eax
	je	.L281
	movsd	xmm1, QWORD PTR a1[rip]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L281
	movsd	xmm0, QWORD PTR .LC78[rip]
	movsd	QWORD PTR a[rip+8], xmm0
	movsd	xmm0, QWORD PTR a[rip+8]
	movsd	QWORD PTR a1[rip], xmm0
	jmp	.L277
.L281:
	mov	eax, DWORD PTR diffusion[rip]
	test	eax, eax
	je	.L283
	movsd	xmm1, QWORD PTR a2[rip]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L283
	movsd	xmm0, QWORD PTR a[rip]
	movsd	xmm1, QWORD PTR .LC63[rip]
	divsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm0, xmm1
	movsd	QWORD PTR a[rip+16], xmm0
	movsd	xmm0, QWORD PTR a[rip+16]
	movsd	QWORD PTR a2[rip], xmm0
	jmp	.L277
.L283:
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	je	.L277
	movsd	xmm1, QWORD PTR a2[rip]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L285
	movsd	xmm0, QWORD PTR .LC72[rip]
	movsd	QWORD PTR a2[rip], xmm0
.L285:
	movsd	xmm1, QWORD PTR a1[rip]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L353
	movsd	xmm0, QWORD PTR a2[rip]
	movsd	xmm1, QWORD PTR .LC61[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a1[rip], xmm0
	jmp	.L289
.L353:
	movsd	xmm0, QWORD PTR a2[rip]
	movsd	xmm2, QWORD PTR .LC79[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR a1[rip]
	comisd	xmm0, xmm1
	jbe	.L289
	movsd	xmm0, QWORD PTR a1[rip]
	movsd	xmm1, QWORD PTR .LC79[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a2[rip], xmm0
.L289:
	movsd	xmm0, QWORD PTR a[rip+8]
	movsd	xmm1, QWORD PTR a1[rip]
	ucomisd	xmm0, xmm1
	jp	.L291
	comisd	xmm0, xmm1
.L291:
	movsd	xmm0, QWORD PTR a1[rip]
	movsd	QWORD PTR a[rip+8], xmm0
	movsd	xmm0, QWORD PTR a[rip+16]
	movsd	QWORD PTR a2[rip], xmm0
.L277:
	mov	r12d, 0
	jmp	.L292
.L301:
	mov	rdx, QWORD PTR x[rip]
	movsx	rax, r12d
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movq	rax, xmm3
	movq	xmm0, rax
	mov	eax, 1
	call	msubt
	movq	rax, xmm0
	mov	QWORD PTR f1[rip], rax
	movsd	xmm0, QWORD PTR f1[rip]
	mov	rdx, QWORD PTR y[rip]
	movsx	rax, r12d
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	cvtss2sd	xmm1, xmm1
	subsd	xmm0, xmm1
	movsd	QWORD PTR v[rip], xmm0
	movsd	xmm1, QWORD PTR v[rip]
	movsd	xmm0, QWORD PTR v[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR s[rip]
	addsd	xmm0, xmm1
	movsd	QWORD PTR s[rip], xmm0
	mov	ebx, 0
	jmp	.L293
.L300:
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR e2[rip]
	mulsd	xmm0, xmm1
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR a[rip]
	movsd	QWORD PTR a0[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip+8]
	movsd	QWORD PTR a1[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip+16]
	movsd	QWORD PTR a2[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip+24]
	movsd	QWORD PTR a3[rip], xmm0
	mov	rdx, QWORD PTR x[rip]
	movsx	rax, r12d
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	mov	eax, 1
	call	msubt
	movq	rax, xmm0
	mov	QWORD PTR f2[rip], rax
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR e2[rip]
	divsd	xmm0, xmm1
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR a[rip]
	movsd	QWORD PTR a0[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip+8]
	movsd	QWORD PTR a1[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip+16]
	movsd	QWORD PTR a2[rip], xmm0
	movsd	xmm0, QWORD PTR a[rip+24]
	movsd	QWORD PTR a3[rip], xmm0
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC75[rip]
	comisd	xmm0, xmm1
	jbe	.L354
	movsd	xmm0, QWORD PTR f2[rip]
	movsd	xmm1, QWORD PTR f1[rip]
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR e1[rip]
	movsd	xmm1, QWORD PTR .LC75[rip]
	mulsd	xmm1, xmm2
	divsd	xmm0, xmm1
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, d[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L296
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, d[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, d[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	jmp	.L296
.L354:
	movsd	xmm0, QWORD PTR f2[rip]
	movsd	xmm1, QWORD PTR f1[rip]
	subsd	xmm0, xmm1
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR e1[rip]
	mulsd	xmm1, xmm2
	divsd	xmm0, xmm1
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, d[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
.L296:
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, c[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, d[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR v[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, c[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	r13d, 0
	jmp	.L298
.L299:
	movsx	rdx, r13d
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movsd	xmm1, QWORD PTR -176[rbp+rax*8]
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, d[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsx	rax, r13d
	lea	rdx, 0[0+rax*8]
	lea	rax, d[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	movsx	rdx, r13d
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -176[rbp+rax*8], xmm0
	movsx	rdx, r13d
	movsx	rax, ebx
	sal	rax, 2
	add	rax, rdx
	movsd	xmm0, QWORD PTR -176[rbp+rax*8]
	movsx	rdx, ebx
	movsx	rax, r13d
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -176[rbp+rax*8], xmm0
	add	r13d, 1
.L298:
	cmp	r13d, ebx
	jle	.L299
	add	ebx, 1
.L293:
	mov	eax, DWORD PTR Nn[rip]
	cmp	ebx, eax
	jl	.L300
	add	r12d, 1
.L292:
	mov	eax, DWORD PTR numspec[rip]
	cmp	r12d, eax
	jl	.L301
	movsd	xmm0, QWORD PTR s[rip]
	mov	eax, DWORD PTR nspecused[rip]
	mov	edx, DWORD PTR Nn[rip]
	sub	eax, edx
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	sqrt@PLT
	movq	rax, xmm0
	mov	QWORD PTR s[rip], rax
	movsd	xmm0, QWORD PTR s1[rip]
	movsd	xmm1, QWORD PTR s[rip]
	subsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm2, QWORD PTR s[rip]
	movsd	xmm0, QWORD PTR .LC80[rip]
	mulsd	xmm0, xmm2
	comisd	xmm0, xmm1
	jnb	.L302
	movsd	xmm1, QWORD PTR s[rip]
	movsd	xmm0, QWORD PTR s[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC75[rip]
	comisd	xmm0, xmm1
	jb	.L303
.L302:
	cmp	r14d, 4
	jle	.L305
	mov	eax, 0
	jmp	.L326
.L305:
	movsd	xmm1, QWORD PTR -192[rbp]
	movsd	xmm0, QWORD PTR .LC81[rip]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -192[rbp], xmm0
.L303:
	add	r14d, 1
	cmp	r14d, 64
	jle	.L307
	mov	eax, 1
	jmp	.L326
.L307:
	mov	eax, DWORD PTR Nn[rip]
	cmp	eax, 1
	je	.L308
	lea	rax, -176[rbp]
	mov	rdi, rax
	mov	eax, 0
	call	det
	test	eax, eax
	je	.L308
	mov	rdx, QWORD PTR nosolution[rip]
	mov	eax, DWORD PTR -196[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], 1
	lea	rdi, .LC82[rip]
	call	puts@PLT
	mov	eax, 0
	jmp	.L326
.L308:
	movsd	xmm0, QWORD PTR s1[rip]
	movsd	xmm1, QWORD PTR s[rip]
	comisd	xmm0, xmm1
	jbe	.L309
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR e3[rip], xmm0
.L309:
	movsd	xmm0, QWORD PTR s[rip]
	movsd	QWORD PTR s1[rip], xmm0
	lea	rax, -176[rbp]
	lea	rsi, o[rip]
	mov	rdi, rax
	mov	eax, 0
	call	invertmatrix
	mov	r12d, 0
	jmp	.L311
.L314:
	mov	ebx, 0
	jmp	.L312
.L313:
	movsx	rax, r12d
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsx	rdx, ebx
	movsx	rax, r12d
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, o[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, c[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR e3[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsx	rax, r12d
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	ebx, 1
.L312:
	mov	eax, DWORD PTR Nn[rip]
	cmp	ebx, eax
	jl	.L313
	add	r12d, 1
.L311:
	mov	eax, DWORD PTR Nn[rip]
	cmp	r12d, eax
	jl	.L314
	mov	r12d, 0
	jmp	.L315
.L318:
	movsx	rax, r12d
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR .LC83[rip]
	comisd	xmm0, xmm1
	seta	al
	xor	eax, 1
	test	al, al
	jne	.L316
	movsx	rax, r12d
	lea	rdx, 0[0+rax*8]
	lea	rax, a[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	comisd	xmm0, QWORD PTR .LC84[rip]
	seta	al
	xor	eax, 1
	test	al, al
	je	.L317
.L316:
	lea	rdi, .LC85[rip]
	call	puts@PLT
	mov	eax, 1
	jmp	.L326
.L317:
	add	r12d, 1
.L315:
	mov	eax, DWORD PTR Nn[rip]
	cmp	r12d, eax
	jl	.L318
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	jne	.L319
	movsd	xmm1, QWORD PTR a[rip+8]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L319
	movsd	xmm0, QWORD PTR a[rip+8]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR max2[rip]
	movsd	xmm2, QWORD PTR .LC78[rip]
	divsd	xmm0, xmm2
	comisd	xmm0, xmm1
	jbe	.L319
	movsd	xmm0, QWORD PTR max2[rip]
	movq	xmm1, QWORD PTR .LC3[rip]
	xorpd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC78[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR a[rip+8], xmm0
.L319:
	movsd	xmm1, QWORD PTR e3[rip]
	movsd	xmm0, QWORD PTR .LC72[rip]
	comisd	xmm0, xmm1
	jbe	.L322
	movsd	xmm0, QWORD PTR e3[rip]
	addsd	xmm0, xmm0
	movsd	QWORD PTR e3[rip], xmm0
	movsd	xmm0, QWORD PTR e3[rip]
	movsd	xmm1, QWORD PTR .LC72[rip]
	comisd	xmm0, xmm1
	jbe	.L322
	movsd	xmm0, QWORD PTR .LC72[rip]
	movsd	QWORD PTR e3[rip], xmm0
.L322:
	jmp	.L325
.L326:
	mov	rcx, QWORD PTR -40[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L327
	call	__stack_chk_fail@PLT
.L327:
	add	rsp, 176
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	calc_params, .-calc_params
	.section	.rodata
	.align 8
.LC86:
	.string	"Four Real Arguments Must Follow 'diffusion'\n"
	.text
	.type	error1, @function
error1:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 44
	mov	esi, 1
	lea	rdi, .LC86[rip]
	call	fwrite@PLT
	mov	edi, 1
	call	exit@PLT
	.cfi_endproc
.LFE18:
	.size	error1, .-error1
	.section	.rodata
	.align 8
.LC87:
	.string	"For usage of expfit, see /vnmr/manual/expfit"
.LC88:
	.string	"T1"
.LC89:
	.string	"T2"
.LC90:
	.string	"kinetics"
.LC91:
	.string	"increment"
.LC92:
	.string	"diffusion"
.LC93:
	.string	"poly0"
.LC94:
	.string	"poly1"
.LC95:
	.string	"poly2"
.LC96:
	.string	"poly3"
.LC97:
	.string	"exp"
.LC98:
	.string	"list"
.LC99:
	.string	"regression"
.LC100:
	.string	"contact_time"
.LC101:
	.string	"cp_analysis"
.LC102:
	.string	"corr"
	.align 8
.LC103:
	.string	"Four Real Arguments Must Follow 'kinetics' or 'increment'"
.LC104:
	.string	"Mean of Data"
.LC105:
	.string	"Linear"
.LC106:
	.string	"Quadratic"
.LC107:
	.string	"Cubic"
.LC108:
	.string	"Two component diffusion"
.LC109:
	.string	"\nContact time"
.LC110:
	.string	"Exponential"
.LC111:
	.string	" data analysis:"
.LC112:
	.string	"No Title"
	.align 8
.LC113:
	.string	"expfit: not enough spectra, at least %1d are needed.\n"
.LC114:
	.string	"expfit: no lines in input"
.LC116:
	.string	"w+"
.LC117:
	.string	"expfit: cannot open file %s\n"
.LC118:
	.string	"exp %d regression\n"
.LC119:
	.string	"exp %d\n"
.LC120:
	.string	"%g  %g  %g  %g\n"
.LC121:
	.string	"%5d %5d %s %s\n"
.LC122:
	.string	"%5d %5d\n"
.LC123:
	.string	"%s\n"
.LC124:
	.string	"      NEXT   %12d\n"
.LC125:
	.string	"%d %12g %12g %12g"
.LC126:
	.string	" %12g"
.LC127:
	.string	"Correlation Table:"
.LC128:
	.string	"%10.4f"
.LC129:
	.string	"%10.4f\n"
.LC130:
	.string	"%12g %12g\n"
	.text
	.globl	main
	.type	main, @function
main:
.LFB19:
	.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, 488
	.cfi_offset 3, -24
	mov	DWORD PTR -468[rbp], edi
	mov	QWORD PTR -480[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -440[rbp], 0
	jmp	.L357
.L358:
	mov	eax, DWORD PTR -440[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	QWORD PTR [rdx+rax], 0
	mov	eax, DWORD PTR -440[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ya[rip]
	mov	QWORD PTR [rdx+rax], 0
	add	DWORD PTR -440[rbp], 1
.L357:
	cmp	DWORD PTR -440[rbp], 127
	jle	.L358
	mov	QWORD PTR x[rip], 0
	mov	QWORD PTR y[rip], 0
	mov	DWORD PTR -448[rbp], 0
	mov	DWORD PTR t1flag[rip], 1
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR kineticflag[rip], 0
	mov	DWORD PTR diffusion[rip], 0
	mov	DWORD PTR cp_analysis[rip], 0
	mov	DWORD PTR incrflag[rip], 0
	mov	DWORD PTR listflag[rip], 0
	mov	DWORD PTR corrflag[rip], 0
	mov	DWORD PTR poly1[rip], 0
	mov	DWORD PTR poly2[rip], 0
	mov	DWORD PTR poly3[rip], 0
	mov	DWORD PTR -456[rbp], 1
	pxor	xmm0, xmm0
	movsd	QWORD PTR offset[rip], xmm0
	mov	BYTE PTR -288[rbp], 0
	cmp	DWORD PTR -468[rbp], 1
	jg	.L360
	lea	rdi, .LC87[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L391:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC88[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L361
	mov	DWORD PTR t1flag[rip], 1
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR kineticflag[rip], 0
	mov	DWORD PTR exptype[rip], 0
	jmp	.L362
.L361:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC89[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L363
	mov	DWORD PTR t2flag[rip], 1
	mov	DWORD PTR t1flag[rip], 0
	mov	DWORD PTR kineticflag[rip], 0
	mov	DWORD PTR exptype[rip], 0
	jmp	.L362
.L363:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC90[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L364
	mov	DWORD PTR kineticflag[rip], 1
	mov	DWORD PTR t1flag[rip], 1
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR exptype[rip], 2
	jmp	.L362
.L364:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC91[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L365
	mov	DWORD PTR incrflag[rip], 1
	mov	DWORD PTR kineticflag[rip], 1
	mov	DWORD PTR t1flag[rip], 1
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR exptype[rip], 1
	jmp	.L362
.L365:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC92[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L366
	mov	DWORD PTR diffusion[rip], 1
	mov	DWORD PTR t1flag[rip], 0
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR kineticflag[rip], 0
	mov	DWORD PTR exptype[rip], 3
	mov	DWORD PTR Nn[rip], 3
	add	DWORD PTR -448[rbp], 1
	mov	eax, DWORD PTR -456[rbp]
	add	eax, 4
	cmp	DWORD PTR -468[rbp], eax
	jg	.L367
	mov	eax, 0
	call	error1
.L367:
	add	DWORD PTR -456[rbp], 1
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	isReal
	test	eax, eax
	je	.L368
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	stringReal
	movq	rax, xmm0
	mov	QWORD PTR D1[rip], rax
	jmp	.L369
.L368:
	mov	eax, 0
	call	error1
.L369:
	add	DWORD PTR -456[rbp], 1
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	isReal
	test	eax, eax
	je	.L370
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	stringReal
	movq	rax, xmm0
	mov	QWORD PTR C0[rip], rax
	jmp	.L371
.L370:
	mov	eax, 0
	call	error1
.L371:
	add	DWORD PTR -456[rbp], 1
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	isReal
	test	eax, eax
	je	.L372
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	stringReal
	movq	rax, xmm0
	mov	QWORD PTR C1[rip], rax
	jmp	.L373
.L372:
	mov	eax, 0
	call	error1
.L373:
	add	DWORD PTR -456[rbp], 1
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	isReal
	test	eax, eax
	je	.L374
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	stringReal
	movq	rax, xmm0
	mov	QWORD PTR C2[rip], rax
	jmp	.L362
.L374:
	mov	eax, 0
	call	error1
	jmp	.L362
.L366:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC93[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L375
	mov	DWORD PTR poly0[rip], 1
	mov	DWORD PTR diffusion[rip], 0
	mov	DWORD PTR t1flag[rip], 0
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR kineticflag[rip], 0
	mov	DWORD PTR exptype[rip], 10
	mov	DWORD PTR Nn[rip], 1
	jmp	.L362
.L375:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC94[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L376
	mov	DWORD PTR poly1[rip], 1
	mov	DWORD PTR diffusion[rip], 0
	mov	DWORD PTR t1flag[rip], 0
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR kineticflag[rip], 0
	mov	DWORD PTR exptype[rip], 5
	mov	DWORD PTR Nn[rip], 2
	jmp	.L362
.L376:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC95[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L377
	mov	DWORD PTR poly2[rip], 1
	mov	DWORD PTR diffusion[rip], 0
	mov	DWORD PTR t1flag[rip], 0
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR kineticflag[rip], 0
	mov	DWORD PTR exptype[rip], 6
	jmp	.L362
.L377:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC96[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L378
	mov	DWORD PTR poly3[rip], 1
	mov	DWORD PTR diffusion[rip], 0
	mov	DWORD PTR t1flag[rip], 0
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR kineticflag[rip], 0
	mov	DWORD PTR exptype[rip], 9
	mov	DWORD PTR Nn[rip], 4
	jmp	.L362
.L378:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC97[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L379
	mov	DWORD PTR exptype[rip], 7
	mov	DWORD PTR diffusion[rip], 0
	mov	DWORD PTR t1flag[rip], 0
	mov	DWORD PTR t2flag[rip], 0
	mov	DWORD PTR kineticflag[rip], 0
	jmp	.L362
.L379:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC98[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L380
	mov	DWORD PTR listflag[rip], 1
	jmp	.L362
.L380:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC99[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L381
	mov	DWORD PTR regression[rip], 1
	jmp	.L362
.L381:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC100[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L382
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC101[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L383
.L382:
	mov	DWORD PTR cp_analysis[rip], 1
	mov	DWORD PTR exptype[rip], 8
	mov	DWORD PTR Nn[rip], 4
	jmp	.L362
.L383:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 99
	je	.L384
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC102[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L385
.L384:
	mov	DWORD PTR corrflag[rip], 1
	jmp	.L362
.L385:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 47
	jne	.L386
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	lea	rax, -288[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	rdx, rax
	lea	rax, -288[rbp]
	add	rax, rdx
	mov	WORD PTR [rax], 47
	jmp	.L362
.L386:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rbx, QWORD PTR [rax]
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	strlen@PLT
	sub	rax, 1
	add	rax, rbx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 93
	je	.L387
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rbx, QWORD PTR [rax]
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	strlen@PLT
	sub	rax, 1
	add	rax, rbx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 58
	jne	.L388
.L387:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	lea	rax, -288[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	jmp	.L362
.L388:
	mov	eax, DWORD PTR kineticflag[rip]
	test	eax, eax
	je	.L362
	add	DWORD PTR -448[rbp], 1
	cmp	DWORD PTR -448[rbp], 1
	jne	.L389
	mov	eax, DWORD PTR -456[rbp]
	add	eax, 3
	cmp	DWORD PTR -468[rbp], eax
	jg	.L389
	lea	rdi, .LC103[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L389:
	mov	eax, DWORD PTR -456[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -480[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	stringReal
	movq	rax, xmm0
	mov	QWORD PTR -424[rbp], rax
	cmp	DWORD PTR -448[rbp], 0
	jle	.L390
	cmp	DWORD PTR -448[rbp], 3
	jg	.L390
	movsd	xmm0, QWORD PTR offset[rip]
	addsd	xmm0, QWORD PTR -424[rbp]
	movsd	QWORD PTR offset[rip], xmm0
	jmp	.L362
.L390:
	cmp	DWORD PTR -448[rbp], 4
	jne	.L362
	movsd	xmm0, QWORD PTR offset[rip]
	mulsd	xmm0, QWORD PTR -424[rbp]
	movsd	QWORD PTR offset[rip], xmm0
.L362:
	add	DWORD PTR -456[rbp], 1
.L360:
	mov	eax, DWORD PTR -456[rbp]
	cmp	eax, DWORD PTR -468[rbp]
	jl	.L391
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	jne	.L392
	mov	eax, DWORD PTR poly1[rip]
	test	eax, eax
	jne	.L392
	mov	eax, DWORD PTR poly2[rip]
	test	eax, eax
	jne	.L392
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	jne	.L392
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	jne	.L392
	mov	eax, DWORD PTR diffusion[rip]
	test	eax, eax
	je	.L393
.L392:
	mov	eax, 1
	jmp	.L394
.L393:
	mov	eax, 0
.L394:
	mov	DWORD PTR polyflag[rip], eax
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L395
	mov	eax, DWORD PTR exptype[rip]
	test	eax, eax
	jne	.L395
	mov	DWORD PTR exptype[rip], 7
.L395:
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	je	.L396
	lea	rdi, .LC104[rip]
	call	puts@PLT
	jmp	.L397
.L396:
	mov	eax, DWORD PTR poly1[rip]
	test	eax, eax
	je	.L398
	lea	rdi, .LC105[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L399
.L398:
	mov	eax, DWORD PTR poly2[rip]
	test	eax, eax
	je	.L400
	lea	rdi, .LC106[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L399
.L400:
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	je	.L401
	lea	rdi, .LC107[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L399
.L401:
	mov	eax, DWORD PTR diffusion[rip]
	test	eax, eax
	je	.L402
	lea	rdi, .LC108[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L399
.L402:
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	je	.L403
	lea	rdi, .LC109[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L399
.L403:
	lea	rdi, .LC110[rip]
	mov	eax, 0
	call	printf@PLT
.L399:
	lea	rdi, .LC111[rip]
	call	puts@PLT
.L397:
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	je	.L404
	mov	edi, 10
	call	putchar@PLT
.L404:
	mov	eax, 0
	call	readparams
	test	eax, eax
	je	.L405
	mov	rax, QWORD PTR xa[rip]
	test	rax, rax
	je	.L406
	mov	rax, QWORD PTR xa[rip]
	mov	rdi, rax
	call	free@PLT
.L406:
	mov	rax, QWORD PTR ya[rip]
	test	rax, rax
	je	.L407
	mov	rax, QWORD PTR ya[rip]
	mov	rdi, rax
	call	free@PLT
.L407:
	mov	eax, 1
	jmp	.L475
.L405:
	movzx	eax, BYTE PTR s0[rip]
	test	al, al
	je	.L409
	lea	rsi, .LC112[rip]
	lea	rdi, s0[rip]
	call	strcmp@PLT
	test	eax, eax
	je	.L409
	lea	rdi, s0[rip]
	call	puts@PLT
.L409:
	mov	edi, 10
	call	putchar@PLT
	mov	eax, 0
	call	prepare_workspace
	test	eax, eax
	je	.L410
	mov	eax, 0
	call	freemem
	mov	eax, 1
	jmp	.L475
.L410:
	mov	eax, DWORD PTR numspec[rip]
	mov	DWORD PTR nspecused[rip], eax
	mov	edx, DWORD PTR nspecused[rip]
	mov	eax, DWORD PTR Nn[rip]
	cmp	edx, eax
	jg	.L411
	mov	eax, DWORD PTR Nn[rip]
	add	eax, 1
	mov	esi, eax
	lea	rdi, .LC113[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 0
	call	freemem
	mov	eax, 1
	jmp	.L475
.L411:
	mov	eax, DWORD PTR numlines[rip]
	test	eax, eax
	jg	.L412
	lea	rdi, .LC114[rip]
	call	puts@PLT
	mov	eax, 0
	call	freemem
	mov	eax, 1
	jmp	.L475
.L412:
	movsd	xmm0, QWORD PTR .LC115[rip]
	movsd	QWORD PTR e1[rip], xmm0
	movsd	xmm1, QWORD PTR e1[rip]
	movsd	xmm0, QWORD PTR .LC72[rip]
	addsd	xmm0, xmm1
	movsd	QWORD PTR e2[rip], xmm0
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	rdx, rax
	lea	rax, -288[rbp]
	add	rax, rdx
	movabs	rcx, 3343212960320417377
	mov	QWORD PTR [rax], rcx
	mov	DWORD PTR 8[rax], 7632239
	lea	rax, -288[rbp]
	lea	rsi, .LC116[rip]
	mov	rdi, rax
	call	fopen@PLT
	mov	QWORD PTR -432[rbp], rax
	cmp	QWORD PTR -432[rbp], 0
	jne	.L413
	lea	rax, -288[rbp]
	mov	rsi, rax
	lea	rdi, .LC117[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 0
	call	freemem
	mov	eax, 1
	jmp	.L475
.L413:
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L414
	mov	edx, DWORD PTR exptype[rip]
	mov	rax, QWORD PTR -432[rbp]
	lea	rsi, .LC118[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	jmp	.L415
.L414:
	mov	edx, DWORD PTR exptype[rip]
	mov	rax, QWORD PTR -432[rbp]
	lea	rsi, .LC119[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L415:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 3
	jne	.L416
	movsd	xmm2, QWORD PTR C2[rip]
	movsd	xmm1, QWORD PTR C1[rip]
	movsd	xmm0, QWORD PTR C0[rip]
	mov	rdx, QWORD PTR D1[rip]
	mov	rax, QWORD PTR -432[rbp]
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rdx
	lea	rsi, .LC120[rip]
	mov	rdi, rax
	mov	eax, 4
	call	fprintf@PLT
.L416:
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L417
	mov	ecx, DWORD PTR maxnumspec[rip]
	mov	edx, DWORD PTR numlines[rip]
	mov	rax, QWORD PTR -432[rbp]
	lea	r9, yaxis[rip]
	lea	r8, xaxis[rip]
	lea	rsi, .LC121[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	jmp	.L418
.L417:
	mov	ecx, DWORD PTR numspec[rip]
	mov	edx, DWORD PTR numlines[rip]
	mov	rax, QWORD PTR -432[rbp]
	lea	rsi, .LC122[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L418:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 7
	jne	.L419
	lea	rax, -416[rbp]
	movabs	rbx, 8389754680828262469
	movabs	rsi, 7022344664207090025
	mov	QWORD PTR [rax], rbx
	mov	QWORD PTR 8[rax], rsi
	movabs	rbx, 7598550502702203168
	mov	QWORD PTR 16[rax], rbx
	mov	WORD PTR 24[rax], 115
	jmp	.L420
.L419:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 10
	jne	.L421
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L420
	lea	rax, -416[rbp]
	movabs	rcx, 8388366761911935300
	mov	QWORD PTR [rax], rcx
	mov	DWORD PTR 8[rax], 1699553384
	mov	WORD PTR 12[rax], 28257
	mov	BYTE PTR 14[rax], 0
	jmp	.L420
.L421:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 5
	jne	.L422
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L423
	lea	rax, -416[rbp]
	movabs	rbx, 4909049356472969548
	movabs	rsi, 7809644454832338017
	mov	QWORD PTR [rax], rbx
	mov	QWORD PTR 8[rax], rsi
	mov	DWORD PTR 16[rax], 1936290681
	mov	BYTE PTR 20[rax], 0
	jmp	.L420
.L423:
	lea	rax, -416[rbp]
	movabs	rbx, 8028074758830975300
	movabs	rsi, 7872618077809549422
	mov	QWORD PTR [rax], rbx
	mov	QWORD PTR 8[rax], rsi
	movabs	rbx, 2982900783829838960
	movabs	rsi, 8462636606614107680
	mov	QWORD PTR 16[rax], rbx
	mov	QWORD PTR 24[rax], rsi
	movabs	rbx, 7233188126479708769
	mov	QWORD PTR 32[rax], rbx
	mov	DWORD PTR 40[rax], 1953391977
	mov	WORD PTR 44[rax], 10537
	mov	BYTE PTR 46[rax], 0
	jmp	.L420
.L422:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 3
	je	.L424
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 6
	jne	.L425
.L424:
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L426
	lea	rax, -416[rbp]
	movabs	rcx, 7598805615219144017
	movabs	rbx, 4692857964196012131
	mov	QWORD PTR [rax], rcx
	mov	QWORD PTR 8[rax], rbx
	movabs	rcx, 32485567001026926
	mov	QWORD PTR 16[rax], rcx
	jmp	.L420
.L426:
	lea	rax, -416[rbp]
	movabs	rcx, 8028074758830975300
	movabs	rbx, 8247625154747506798
	mov	QWORD PTR [rax], rcx
	mov	QWORD PTR 8[rax], rbx
	mov	DWORD PTR 16[rax], 1852140901
	mov	WORD PTR 20[rax], 116
	jmp	.L420
.L425:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 9
	jne	.L428
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L420
	lea	rax, -416[rbp]
	movabs	rcx, 7008762531437245763
	movabs	rbx, 8749475302240969076
	mov	QWORD PTR [rax], rcx
	mov	QWORD PTR 8[rax], rbx
	mov	DWORD PTR 16[rax], 7563635
	jmp	.L420
.L428:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 2
	je	.L429
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 1
	jne	.L430
.L429:
	lea	rax, -416[rbp]
	movabs	rcx, 8314605285694925131
	movabs	rbx, 7310034283591453984
	mov	QWORD PTR [rax], rcx
	mov	QWORD PTR 8[rax], rbx
	mov	DWORD PTR 16[rax], 1953391981
	mov	BYTE PTR 20[rax], 0
	jmp	.L420
.L430:
	mov	eax, DWORD PTR exptype[rip]
	test	eax, eax
	jne	.L431
	mov	eax, DWORD PTR t1flag[rip]
	test	eax, eax
	je	.L432
	lea	rax, -416[rbp]
	movabs	rcx, 7957702728445079892
	movabs	rbx, 4909042759470706277
	mov	QWORD PTR [rax], rcx
	mov	QWORD PTR 8[rax], rbx
	movabs	rbx, 7809644454832338017
	mov	QWORD PTR 16[rax], rbx
	mov	DWORD PTR 24[rax], 1936290681
	mov	BYTE PTR 28[rax], 0
	jmp	.L420
.L432:
	mov	eax, DWORD PTR t2flag[rip]
	test	eax, eax
	je	.L420
	lea	rax, -416[rbp]
	movabs	rcx, 7957702728445080148
	movabs	rbx, 4909042759470706277
	mov	QWORD PTR [rax], rcx
	mov	QWORD PTR 8[rax], rbx
	movabs	rcx, 7809644454832338017
	mov	QWORD PTR 16[rax], rcx
	mov	DWORD PTR 24[rax], 1936290681
	mov	BYTE PTR 28[rax], 0
	jmp	.L420
.L431:
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 8
	jne	.L433
	lea	rax, -416[rbp]
	movabs	rcx, 2338603376728502083
	movabs	rbx, 8386058887071885652
	mov	QWORD PTR [rax], rcx
	mov	QWORD PTR 8[rax], rbx
	movabs	rbx, 8320800952261091425
	mov	QWORD PTR 16[rax], rbx
	mov	WORD PTR 24[rax], 29545
	mov	BYTE PTR 26[rax], 0
	jmp	.L420
.L433:
	mov	eax, DWORD PTR polyflag[rip]
	test	eax, eax
	jne	.L434
	mov	eax, DWORD PTR exptype[rip]
	cmp	eax, 7
	jne	.L420
.L434:
	movzx	eax, BYTE PTR s0[rip]
	test	al, al
	je	.L420
	lea	rax, -416[rbp]
	lea	rsi, s0[rip]
	mov	rdi, rax
	call	strcpy@PLT
	mov	BYTE PTR s0[rip], 0
.L420:
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L435
	movzx	eax, BYTE PTR -416[rbp]
	test	al, al
	jne	.L435
	lea	rax, -416[rbp]
	movabs	rcx, 7308344291047272270
	mov	QWORD PTR [rax], rcx
	mov	BYTE PTR 8[rax], 0
.L435:
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	jne	.L436
	lea	rax, -416[rbp]
	lea	rsi, .LC112[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L437
.L436:
	lea	rdx, -416[rbp]
	mov	rax, QWORD PTR -432[rbp]
	lea	rsi, .LC123[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L437:
	mov	eax, DWORD PTR regression[rip]
	test	eax, eax
	je	.L438
	mov	rax, QWORD PTR -432[rbp]
	lea	rdx, s0[rip]
	lea	rsi, .LC123[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rax, QWORD PTR -432[rbp]
	lea	rdx, sy[rip]
	lea	rsi, .LC123[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L438:
	mov	DWORD PTR -452[rbp], 0
	jmp	.L439
.L470:
	mov	rax, QWORD PTR -432[rbp]
	mov	rsi, rax
	mov	edi, 10
	call	fputc@PLT
	mov	eax, DWORD PTR NEXTflag[rip]
	test	eax, eax
	je	.L440
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, spec_count[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	DWORD PTR numspec[rip], eax
	mov	edx, DWORD PTR numspec[rip]
	mov	rax, QWORD PTR -432[rbp]
	lea	rsi, .LC124[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L440:
	mov	DWORD PTR -440[rbp], 0
	jmp	.L441
.L442:
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, xa[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -440[rbp]
	cdqe
	sal	rax, 2
	add	rdx, rax
	mov	rcx, QWORD PTR x[rip]
	mov	eax, DWORD PTR -440[rbp]
	cdqe
	sal	rax, 2
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ya[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -440[rbp]
	cdqe
	sal	rax, 2
	add	rdx, rax
	mov	rcx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -440[rbp]
	cdqe
	sal	rax, 2
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -440[rbp], 1
.L441:
	mov	eax, DWORD PTR numspec[rip]
	cmp	DWORD PTR -440[rbp], eax
	jl	.L442
	mov	eax, 0
	call	initial_values
	mov	rdx, QWORD PTR nosolution[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], 0
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	jne	.L443
	mov	eax, DWORD PTR -452[rbp]
	mov	edi, eax
	mov	eax, 0
	call	calc_params
	test	eax, eax
	je	.L443
	mov	rdx, QWORD PTR converge[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], 0
	jmp	.L444
.L443:
	mov	rdx, QWORD PTR converge[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], 1
.L444:
	mov	eax, DWORD PTR Nn[rip]
	cmp	eax, 2
	jg	.L445
	pxor	xmm0, xmm0
	movsd	QWORD PTR a2[rip], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR err[rip+16], xmm0
.L445:
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, line_index[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	DWORD PTR -444[rbp], eax
	cmp	DWORD PTR -444[rbp], 0
	jne	.L446
	mov	eax, DWORD PTR -452[rbp]
	add	eax, 1
	mov	DWORD PTR -444[rbp], eax
.L446:
	movsd	xmm0, QWORD PTR s[rip]
	mov	rdx, QWORD PTR stddev[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	je	.L447
	mov	rdx, QWORD PTR stddev[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR a1[rip], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR err[rip+8], xmm0
.L447:
	movsd	xmm1, QWORD PTR a2[rip]
	movsd	xmm0, QWORD PTR a1[rip]
	mov	rcx, QWORD PTR a0[rip]
	mov	edx, DWORD PTR -444[rbp]
	mov	rax, QWORD PTR -432[rbp]
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rcx
	lea	rsi, .LC125[rip]
	mov	rdi, rax
	mov	eax, 3
	call	fprintf@PLT
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	jne	.L448
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	je	.L449
.L448:
	mov	rdx, QWORD PTR a3[rip]
	mov	rax, QWORD PTR -432[rbp]
	movq	xmm0, rdx
	lea	rsi, .LC126[rip]
	mov	rdi, rax
	mov	eax, 1
	call	fprintf@PLT
.L449:
	mov	rax, QWORD PTR -432[rbp]
	mov	rsi, rax
	mov	edi, 10
	call	fputc@PLT
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	je	.L450
	movsd	xmm0, QWORD PTR s[rip]
	mov	rdx, QWORD PTR sigma[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	jmp	.L451
.L450:
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	jne	.L451
	movsd	xmm0, QWORD PTR o[rip+40]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	sqrt@PLT
	movsd	xmm1, QWORD PTR s[rip]
	mulsd	xmm0, xmm1
	mov	rdx, QWORD PTR sigma[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
.L451:
	mov	eax, DWORD PTR poly0[rip]
	test	eax, eax
	jne	.L452
	mov	DWORD PTR -440[rbp], 0
	jmp	.L453
.L454:
	mov	eax, DWORD PTR -440[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, o[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movq	xmm1, QWORD PTR .LC59[rip]
	andpd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	sqrt@PLT
	movsd	xmm1, QWORD PTR s[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -440[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, err[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -440[rbp], 1
.L453:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -440[rbp], eax
	jl	.L454
.L452:
	movsd	xmm0, QWORD PTR err[rip]
	mov	rdx, QWORD PTR err0[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	movsd	xmm0, QWORD PTR err[rip+16]
	mov	rdx, QWORD PTR err2[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR Nn[rip]
	cmp	eax, 4
	jne	.L455
	movsd	xmm0, QWORD PTR err[rip+24]
	mov	rdx, QWORD PTR err3[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
.L455:
	movsd	xmm0, QWORD PTR a0[rip]
	mov	rdx, QWORD PTR aa0[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	movsd	xmm0, QWORD PTR a1[rip]
	mov	rdx, QWORD PTR tau[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	movsd	xmm0, QWORD PTR a2[rip]
	mov	rdx, QWORD PTR aa2[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR poly3[rip]
	test	eax, eax
	jne	.L456
	mov	eax, DWORD PTR cp_analysis[rip]
	test	eax, eax
	je	.L457
.L456:
	movsd	xmm0, QWORD PTR a3[rip]
	mov	rdx, QWORD PTR aa3[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
.L457:
	mov	eax, DWORD PTR incrflag[rip]
	test	eax, eax
	je	.L458
	movsd	xmm1, QWORD PTR a0[rip]
	movsd	xmm0, QWORD PTR a2[rip]
	addsd	xmm0, xmm1
	mov	rdx, QWORD PTR intercept[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	jmp	.L459
.L458:
	mov	eax, DWORD PTR kineticflag[rip]
	test	eax, eax
	je	.L460
	movsd	xmm0, QWORD PTR a2[rip]
	mov	rdx, QWORD PTR intercept[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	jmp	.L459
.L460:
	movsd	xmm0, QWORD PTR a0[rip]
	mov	rdx, QWORD PTR intercept[rip]
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
.L459:
	mov	eax, DWORD PTR Nn[rip]
	cmp	eax, 1
	jle	.L461
	mov	eax, DWORD PTR numlines[rip]
	cmp	eax, 2
	jg	.L461
	mov	eax, DWORD PTR listflag[rip]
	test	eax, eax
	jne	.L461
	mov	eax, DWORD PTR diffusion[rip]
	test	eax, eax
	jne	.L462
	mov	eax, DWORD PTR poly1[rip]
	test	eax, eax
	jne	.L462
	mov	eax, DWORD PTR poly2[rip]
	test	eax, eax
	je	.L461
.L462:
	mov	DWORD PTR -440[rbp], 0
	jmp	.L463
.L467:
	cmp	DWORD PTR -440[rbp], 0
	jne	.L464
	lea	rdi, .LC127[rip]
	call	puts@PLT
.L464:
	mov	eax, DWORD PTR -440[rbp]
	mov	esi, eax
	lea	rdi, .LC8[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -436[rbp], 0
	jmp	.L465
.L466:
	mov	eax, DWORD PTR -436[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -440[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, o[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -488[rbp], xmm4
	mov	eax, DWORD PTR -440[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, o[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -436[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, o[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movq	rax, xmm1
	movq	xmm0, rax
	call	sqrt@PLT
	movsd	xmm4, QWORD PTR -488[rbp]
	divsd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	lea	rdi, .LC128[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -436[rbp], 1
.L465:
	mov	eax, DWORD PTR -436[rbp]
	cmp	eax, DWORD PTR -440[rbp]
	jl	.L466
	mov	rax, QWORD PTR .LC72[rip]
	movq	xmm0, rax
	lea	rdi, .LC129[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -440[rbp], 1
.L463:
	mov	eax, DWORD PTR Nn[rip]
	cmp	DWORD PTR -440[rbp], eax
	jl	.L467
	mov	edi, 10
	call	putchar@PLT
.L461:
	mov	DWORD PTR -436[rbp], 0
	jmp	.L468
.L469:
	mov	rdx, QWORD PTR y[rip]
	mov	eax, DWORD PTR -436[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR x[rip]
	mov	eax, DWORD PTR -436[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm1
	movq	rdx, xmm5
	mov	rax, QWORD PTR -432[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rdx
	lea	rsi, .LC130[rip]
	mov	rdi, rax
	mov	eax, 2
	call	fprintf@PLT
	add	DWORD PTR -436[rbp], 1
.L468:
	mov	eax, DWORD PTR numspec[rip]
	cmp	DWORD PTR -436[rbp], eax
	jl	.L469
	add	DWORD PTR -452[rbp], 1
.L439:
	mov	eax, DWORD PTR numlines[rip]
	cmp	DWORD PTR -452[rbp], eax
	jl	.L470
	mov	rax, QWORD PTR -432[rbp]
	mov	rdi, rax
	call	fclose@PLT
	mov	eax, 0
	call	writeparams
	test	eax, eax
	je	.L471
	mov	eax, DWORD PTR listflag[rip]
	test	eax, eax
	je	.L472
	mov	DWORD PTR -452[rbp], 0
	jmp	.L473
.L474:
	mov	eax, DWORD PTR -452[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, spec_count[rip]
	mov	edx, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -452[rbp]
	mov	esi, edx
	mov	edi, eax
	call	printpeakdata
	add	DWORD PTR -452[rbp], 1
.L473:
	mov	eax, DWORD PTR numlines[rip]
	cmp	DWORD PTR -452[rbp], eax
	jl	.L474
.L472:
	mov	eax, 0
	call	freemem
	mov	eax, 1
	jmp	.L475
.L471:
	mov	eax, 0
	call	freemem
	mov	eax, 0
.L475:
	mov	rbx, QWORD PTR -24[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L476
	call	__stack_chk_fail@PLT
.L476:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	main, .-main
	.section	.rodata
	.align 16
.LC3:
	.long	0
	.long	-2147483648
	.long	0
	.long	0
	.align 16
.LC26:
	.long	2147483647
	.long	0
	.long	0
	.long	0
	.align 8
.LC36:
	.long	-343597384
	.long	1067366481
	.align 8
.LC55:
	.long	-1257935337
	.long	1184086197
	.align 8
.LC56:
	.long	-1257935337
	.long	-963397451
	.align 8
.LC57:
	.long	0
	.long	1073741824
	.align 8
.LC58:
	.long	0
	.long	1071644672
	.align 16
.LC59:
	.long	-1
	.long	2147483647
	.long	0
	.long	0
	.align 8
.LC60:
	.long	0
	.long	1093567616
	.align 8
.LC61:
	.long	0
	.long	1079574528
	.align 8
.LC62:
	.long	-500134854
	.long	1044740494
	.align 8
.LC63:
	.long	0
	.long	1076101120
	.align 8
.LC64:
	.long	-1598689907
	.long	1051772663
	.align 8
.LC65:
	.long	-350469331
	.long	1058682594
	.align 8
.LC66:
	.long	-1030792151
	.long	1071917301
	.align 8
.LC67:
	.long	2061584302
	.long	1071099412
	.align 16
.LC69:
	.long	-2147483648
	.long	0
	.long	0
	.long	0
	.align 8
.LC70:
	.long	858993459
	.long	1072902963
	.align 8
.LC71:
	.long	0
	.long	1083129856
	.align 8
.LC72:
	.long	0
	.long	1072693248
	.align 8
.LC73:
	.long	1255454751
	.long	898494074
	.align 8
.LC75:
	.long	-170230311
	.long	985592528
	.align 8
.LC77:
	.long	0
	.long	1070596096
	.align 8
.LC78:
	.long	0
	.long	1075052544
	.align 8
.LC79:
	.long	0
	.long	1074790400
	.align 8
.LC80:
	.long	-755914244
	.long	1062232653
	.align 8
.LC81:
	.long	-1717986918
	.long	1069128089
	.align 8
.LC83:
	.long	-981572454
	.long	1246829326
	.align 8
.LC84:
	.long	-981572454
	.long	-900654322
	.align 8
.LC115:
	.long	1202590843
	.long	1064598241
	.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	"562150.c"
	.text
	.comm	numlines,4,4
	.comm	numspec,4,4
	.comm	maxnumspec,4,4
	.comm	nspecused,4,4
	.comm	diffusion,4,4
	.comm	t1flag,4,4
	.comm	t2flag,4,4
	.comm	kineticflag,4,4
	.comm	incrflag,4,4
	.comm	listflag,4,4
	.comm	corrflag,4,4
	.global	NEXTflag
	.bss
	.align	2
	.type	NEXTflag, %object
	.size	NEXTflag, 4
NEXTflag:
	.space	4
	.global	poly0
	.align	2
	.type	poly0, %object
	.size	poly0, 4
poly0:
	.space	4
	.global	poly1
	.align	2
	.type	poly1, %object
	.size	poly1, 4
poly1:
	.space	4
	.global	poly2
	.align	2
	.type	poly2, %object
	.size	poly2, 4
poly2:
	.space	4
	.global	poly3
	.align	2
	.type	poly3, %object
	.size	poly3, 4
poly3:
	.space	4
	.comm	xa,512,4
	.comm	ya,512,4
	.comm	x,4,4
	.comm	y,4,4
	.comm	aa0,4,4
	.comm	aa2,4,4
	.comm	aa3,4,4
	.comm	intercept,4,4
	.comm	tau,4,4
	.comm	sigma,4,4
	.comm	stddev,4,4
	.comm	err0,4,4
	.comm	err2,4,4
	.comm	err3,4,4
	.comm	yave,4,4
	.comm	offset,8,8
	.comm	converge,4,4
	.comm	nosolution,4,4
	.comm	a,32,8
	.comm	c,32,8
	.comm	d,32,8
	.comm	err,32,8
	.comm	o,128,8
	.comm	max1,8,8
	.comm	max2,8,8
	.comm	e1,8,8
	.comm	e2,8,8
	.comm	e3,8,8
	.comm	s,8,8
	.comm	s1,8,8
	.comm	a0,8,8
	.comm	a1,8,8
	.comm	a2,8,8
	.comm	f1,8,8
	.comm	f2,8,8
	.comm	v,8,8
	.global	a3
	.align	3
	.type	a3, %object
	.size	a3, 8
a3:
	.space	8
	.comm	D1,8,8
	.comm	C0,8,8
	.comm	C1,8,8
	.comm	C2,8,8
	.comm	s0,128,4
	.comm	sy,128,4
	.comm	ss1,32,4
	.comm	ss2,32,4
	.comm	xaxis,32,4
	.comm	yaxis,32,4
	.global	Nn
	.data
	.align	2
	.type	Nn, %object
	.size	Nn, 4
Nn:
	.word	3
	.global	exptype
	.bss
	.align	2
	.type	exptype, %object
	.size	exptype, 4
exptype:
	.space	4
	.global	regression
	.align	2
	.type	regression, %object
	.size	regression, 4
regression:
	.space	4
	.global	cp_analysis
	.align	2
	.type	cp_analysis, %object
	.size	cp_analysis, 4
cp_analysis:
	.space	4
	.global	polyflag
	.align	2
	.type	polyflag, %object
	.size	polyflag, 4
polyflag:
	.space	4
	.comm	line_index,512,4
	.comm	spec_count,512,4
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	freemem, %function
freemem:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L2
.L5:
	ldr	r2, .L20
	ldr	r3, [fp, #-8]
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L3
	ldr	r2, .L20
	ldr	r3, [fp, #-8]
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	free
.L3:
	ldr	r2, .L20+4
	ldr	r3, [fp, #-8]
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L4
	ldr	r2, .L20+4
	ldr	r3, [fp, #-8]
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	free
.L4:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L2:
	ldr	r3, .L20+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	blt	.L5
	ldr	r3, .L20+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L6
	ldr	r3, .L20+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L6:
	ldr	r3, .L20+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L7
	ldr	r3, .L20+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L7:
	ldr	r3, .L20+20
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L8
	ldr	r3, .L20+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L8:
	ldr	r3, .L20+24
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L9
	ldr	r3, .L20+24
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L9:
	ldr	r3, .L20+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L10
	ldr	r3, .L20+28
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L10:
	ldr	r3, .L20+32
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L11
	ldr	r3, .L20+32
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L11:
	ldr	r3, .L20+36
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L12
	ldr	r3, .L20+36
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L12:
	ldr	r3, .L20+40
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L13
	ldr	r3, .L20+40
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L13:
	ldr	r3, .L20+44
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L14
	ldr	r3, .L20+44
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L14:
	ldr	r3, .L20+48
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L15
	ldr	r3, .L20+48
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L15:
	ldr	r3, .L20+52
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L16
	ldr	r3, .L20+52
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L16:
	ldr	r3, .L20+56
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L17
	ldr	r3, .L20+56
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L17:
	ldr	r3, .L20+60
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L19
	ldr	r3, .L20+60
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L19:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L21:
	.align	2
.L20:
	.word	xa
	.word	ya
	.word	numlines
	.word	x
	.word	y
	.word	intercept
	.word	aa0
	.word	aa2
	.word	aa3
	.word	stddev
	.word	err0
	.word	err2
	.word	err3
	.word	sigma
	.word	converge
	.word	nosolution
	.size	freemem, .-freemem
	.section	.rodata
	.align	2
.LC0:
	.ascii	"%lf\000"
	.align	2
.LC1:
	.ascii	"magic: can't convert \"%s\" to a real value, zero a"
	.ascii	"ssummed\012\000"
	.align	2
.LC2:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	stringReal
	.syntax unified
	.arm
	.fpu softvfp
	.type	stringReal, %function
stringReal:
	@ 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]
	ldr	r3, .L27
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #20
	mov	r2, r3
	ldr	r1, .L27+4
	ldr	r0, [fp, #-24]
	bl	__isoc99_sscanf
	mov	r3, r0
	cmp	r3, #1
	bne	.L23
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	b	.L25
.L23:
	ldr	r3, .L27+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-24]
	ldr	r1, .L27+12
	mov	r0, r3
	bl	fprintf
	mov	r2, #0
	mov	r3, #0
.L25:
	ldr	r1, .L27
	ldr	r0, [r1]
	ldr	r1, [fp, #-8]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L26
	bl	__stack_chk_fail
.L26:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L28:
	.align	2
.L27:
	.word	.LC2
	.word	.LC0
	.word	stderr
	.word	.LC1
	.size	stringReal, .-stringReal
	.section	.rodata
	.align	2
.LC3:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	isReal
	.syntax unified
	.arm
	.fpu softvfp
	.type	isReal, %function
isReal:
	@ 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]
	ldr	r3, .L34
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #20
	mov	r2, r3
	ldr	r1, .L34+4
	ldr	r0, [fp, #-24]
	bl	__isoc99_sscanf
	mov	r3, r0
	cmp	r3, #1
	bne	.L30
	mov	r3, #1
	b	.L32
.L30:
	mov	r3, #0
.L32:
	ldr	r2, .L34
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L33
	bl	__stack_chk_fail
.L33:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L35:
	.align	2
.L34:
	.word	.LC3
	.word	.LC0
	.size	isReal, .-isReal
	.global	__aeabi_ddiv
	.global	__aeabi_dmul
	.global	__aeabi_dadd
	.global	__aeabi_dsub
	.align	2
	.global	msubt
	.syntax unified
	.arm
	.fpu softvfp
	.type	msubt, %function
msubt:
	@ args = 0, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #56
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	ldr	r3, .L48
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L37
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-52]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-44]
	str	r3, [fp, #-60]
	ldr	r3, [fp, #-40]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-56]
	ldr	r3, .L48+8
	ldmia	r3, {r2-r3}
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	exp
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L48+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L38
.L37:
	ldr	r3, .L48
	ldr	r3, [r3]
	cmp	r3, #2
	beq	.L39
	ldr	r3, .L48
	ldr	r3, [r3]
	cmp	r3, #7
	bne	.L40
.L39:
	ldr	r4, [fp, #-44]
	ldr	r3, [fp, #-40]
	eor	r5, r3, #-2147483648
	ldr	r3, .L48+8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	exp
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L48+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L38
.L40:
	ldr	r3, .L48
	ldr	r3, [r3]
	cmp	r3, #10
	bne	.L41
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	b	.L38
.L41:
	ldr	r3, .L48
	ldr	r3, [r3]
	cmp	r3, #5
	bne	.L42
	ldr	r3, .L48+8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L38
.L42:
	ldr	r3, .L48
	ldr	r3, [r3]
	cmp	r3, #6
	bne	.L43
	ldr	r3, .L48+8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L48+12
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L38
.L43:
	ldr	r3, .L48
	ldr	r3, [r3]
	cmp	r3, #9
	bne	.L44
	ldr	r3, .L48+8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L48+12
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	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	r4, r2
	mov	r5, r3
	ldr	r3, .L48+16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L38
.L44:
	ldr	r3, .L48
	ldr	r3, [r3]
	cmp	r3, #8
	bne	.L45
	ldr	r3, .L48+16
	ldmia	r3, {r4-r5}
	ldr	r3, .L48+16
	ldmia	r3, {r0-r1}
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-44]
	str	r3, [fp, #-68]
	ldr	r3, [fp, #-40]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-64]
	ldr	r3, .L48+8
	ldmia	r3, {r2-r3}
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	exp
	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_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r8, [fp, #-44]
	ldr	r3, [fp, #-40]
	eor	r9, r3, #-2147483648
	ldr	r3, .L48+12
	ldmia	r3, {r2-r3}
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	exp
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L38
.L45:
	ldr	r3, .L48
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L46
	ldr	r3, .L48+20
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L48+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L48+28
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, .L48+32
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L47
	ldr	r3, .L48+4
	ldmia	r3, {r0-r1}
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	b	.L38
.L47:
	ldr	r3, .L48+36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-76]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-72]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #76
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	exp
	ldr	r3, .L48+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L48+8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-84]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-80]
	ldr	r3, .L48+36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #84
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	exp
	ldr	r3, .L48+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L38
.L46:
	ldr	r3, .L48+4
	ldmia	r3, {r0-r1}
	ldr	r3, .L48+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r6, [fp, #-44]
	ldr	r3, [fp, #-40]
	eor	r7, r3, #-2147483648
	ldr	r3, .L48+8
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	exp
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L48+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
.L38:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L49:
	.align	2
.L48:
	.word	exptype
	.word	a0
	.word	a1
	.word	a2
	.word	a3
	.word	C1
	.word	C0
	.word	C2
	.word	Nn
	.word	D1
	.size	msubt, .-msubt
	.section	.rodata
	.align	2
.LC4:
	.ascii	"expfit: cannot allocate buffer memory\000"
	.text
	.align	2
	.global	prepare_workspace
	.syntax unified
	.arm
	.fpu softvfp
	.type	prepare_workspace, %function
prepare_workspace:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L54
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+4
	str	r2, [r3]
	ldr	r3, .L54
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+8
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+16
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+20
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+24
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+28
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+32
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+36
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+40
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+44
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+48
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+52
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+56
	str	r2, [r3]
	ldr	r3, .L54+12
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L54+60
	str	r2, [r3]
	ldr	r3, .L54+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+20
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+24
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+36
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+56
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+60
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+40
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+44
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+48
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L51
	ldr	r3, .L54+52
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L52
.L51:
	ldr	r0, .L54+64
	bl	puts
	mov	r3, #1
	b	.L53
.L52:
	mov	r3, #0
.L53:
	mov	r0, r3
	pop	{fp, pc}
.L55:
	.align	2
.L54:
	.word	maxnumspec
	.word	x
	.word	y
	.word	numlines
	.word	intercept
	.word	aa0
	.word	tau
	.word	aa2
	.word	aa3
	.word	sigma
	.word	stddev
	.word	err0
	.word	err2
	.word	err3
	.word	converge
	.word	nosolution
	.word	.LC4
	.size	prepare_workspace, .-prepare_workspace
	.section	.rodata
	.align	2
.LC5:
	.ascii	"%s %s %d %s %s %s\012\000"
	.align	2
.LC6:
	.ascii	"expfit: problem on line %d of input\012\000"
	.align	2
.LC7:
	.ascii	"%s %s\012\000"
	.align	2
.LC8:
	.ascii	"%d\000"
	.align	2
.LC9:
	.ascii	"%d %s %s\012\000"
	.align	2
.LC10:
	.ascii	"No Title\000"
	.align	2
.LC11:
	.ascii	"%[^\012]\012\000"
	.align	2
.LC12:
	.ascii	"%d %d %s %s\012\000"
	.align	2
.LC13:
	.ascii	"%d %d\012\000"
	.align	2
.LC14:
	.ascii	"%s %d\012\000"
	.align	2
.LC15:
	.ascii	"\012\000"
	.align	2
.LC16:
	.ascii	"##numlines=%d l=%d\012\000"
	.align	2
.LC17:
	.ascii	"%f %f\012\000"
	.global	__aeabi_f2d
	.global	__aeabi_d2f
	.align	2
.LC18:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	readparams
	.syntax unified
	.arm
	.fpu softvfp
	.type	readparams, %function
readparams:
	@ args = 0, pretend = 0, frame = 176
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #192
	ldr	r3, .L89
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, .L89+4
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L89+8
	mov	r2, #0
	strb	r2, [r3]
	mov	r3, #1
	str	r3, [fp, #-168]
	ldr	r3, .L89+12
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L57
	ldr	r3, .L89+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L57
	ldr	r3, .L89+20
	ldr	r3, [r3]
	cmp	r3, #8
	beq	.L57
	sub	r2, fp, #144
	sub	r1, fp, #144
	sub	r3, fp, #144
	str	r3, [sp, #8]
	sub	r3, fp, #144
	str	r3, [sp, #4]
	sub	r3, fp, #144
	str	r3, [sp]
	ldr	r3, .L89+24
	ldr	r0, .L89+28
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #6
	beq	.L58
	ldr	r1, [fp, #-168]
	ldr	r0, .L89+32
	bl	printf
	mov	r3, #1
	b	.L87
.L58:
	ldr	r3, .L89+36
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-180]
	b	.L60
.L61:
	ldr	r2, .L89+4
	ldr	r3, [fp, #-180]
	add	r3, r2, r3
	ldrb	r2, [fp, #-185]
	strb	r2, [r3]
	ldr	r3, [fp, #-180]
	add	r3, r3, #1
	str	r3, [fp, #-180]
.L60:
	bl	getchar
	mov	r3, r0
	strb	r3, [fp, #-185]
	ldrb	r3, [fp, #-185]	@ zero_extendqisi2
	cmp	r3, #10
	bne	.L61
	ldr	r2, .L89+4
	ldr	r3, [fp, #-180]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
	ldr	r2, .L89+40
	ldr	r1, .L89+44
	ldr	r0, .L89+48
	bl	__isoc99_scanf
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
	b	.L62
.L57:
	ldr	r3, .L89+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L63
	ldr	r1, .L89+36
	ldr	r0, .L89+52
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #0
	beq	.L64
	ldr	r3, .L89+56
	ldr	r2, .L89+60
	ldr	r1, .L89+24
	ldr	r0, .L89+64
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #3
	beq	.L65
	mov	r1, #1
	ldr	r0, .L89+32
	bl	printf
	mov	r3, #1
	b	.L87
.L65:
	ldr	r2, .L89+4
	ldr	r3, .L89+68
	mov	r0, r2
	mov	r1, r3
	mov	r3, #9
	mov	r2, r3
	bl	memcpy
	ldr	r2, .L89+8
	ldr	r3, .L89+68
	mov	r0, r2
	mov	r1, r3
	mov	r3, #9
	mov	r2, r3
	bl	memcpy
	b	.L62
.L64:
	ldr	r1, .L89+4
	ldr	r0, .L89+72
	bl	__isoc99_scanf
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
	ldr	r1, .L89+36
	ldr	r0, .L89+52
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #0
	beq	.L66
	ldr	r3, .L89+56
	ldr	r2, .L89+60
	ldr	r1, .L89+24
	ldr	r0, .L89+64
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #3
	beq	.L67
	mov	r1, #1
	ldr	r0, .L89+32
	bl	printf
	mov	r3, #1
	b	.L87
.L67:
	ldr	r2, .L89+8
	ldr	r3, .L89+68
	mov	r0, r2
	mov	r1, r3
	mov	r3, #9
	mov	r2, r3
	bl	memcpy
	b	.L62
.L66:
	ldr	r1, .L89+8
	ldr	r0, .L89+72
	bl	__isoc99_scanf
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
	ldr	r3, .L89+56
	str	r3, [sp]
	ldr	r3, .L89+60
	ldr	r2, .L89+24
	ldr	r1, .L89+36
	ldr	r0, .L89+76
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #4
	beq	.L62
	ldr	r1, [fp, #-168]
	ldr	r0, .L89+32
	bl	printf
	mov	r3, #1
	b	.L87
.L63:
	ldr	r2, .L89+24
	ldr	r1, .L89+36
	ldr	r0, .L89+80
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #2
	beq	.L62
	ldr	r1, [fp, #-168]
	ldr	r0, .L89+32
	bl	printf
	mov	r3, #1
	b	.L87
.L62:
	ldr	r3, .L89+24
	ldr	r3, [r3]
	ldr	r2, .L89+84
	str	r3, [r2]
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
	mov	r3, #0
	str	r3, [fp, #-176]
	b	.L68
.L81:
	ldr	r3, .L89+84
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L89+88
	ldr	r3, [fp, #-176]
	str	r1, [r2, r3, lsl #2]
	ldr	r3, .L89+84
	ldr	r3, [r3]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L89+92
	ldr	r3, [fp, #-176]
	str	r1, [r2, r3, lsl #2]
	ldr	r2, .L89+88
	ldr	r3, [fp, #-176]
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L69
	ldr	r2, .L89+92
	ldr	r3, [fp, #-176]
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	bne	.L70
.L69:
	ldr	r0, .L89+96
	bl	puts
	mov	r3, #1
	b	.L87
.L70:
	ldr	r3, .L89+24
	ldr	r2, [r3]
	ldr	r1, .L89+100
	ldr	r3, [fp, #-176]
	str	r2, [r1, r3, lsl #2]
	ldr	r3, .L89+104
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L89+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L71
	sub	r3, fp, #184
	mov	r1, r3
	ldr	r0, .L89+52
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #1
	bne	.L72
	ldr	r2, [fp, #-184]
	ldr	r1, .L89+108
	ldr	r3, [fp, #-176]
	str	r2, [r1, r3, lsl #2]
	b	.L73
.L72:
	ldr	r3, [fp, #-176]
	lsl	r3, r3, #2
	ldr	r2, .L89+100
	add	r2, r3, r2
	sub	r3, fp, #164
	mov	r1, r3
	ldr	r0, .L89+112
	bl	__isoc99_scanf
	ldr	r3, [fp, #-176]
	lsl	r3, r3, #2
	ldr	r2, .L89+108
	add	r3, r3, r2
	mov	r1, r3
	ldr	r0, .L89+52
	bl	__isoc99_scanf
	ldr	r3, .L89+104
	mov	r2, #1
	str	r2, [r3]
.L73:
	ldr	r2, .L89+100
	ldr	r3, [fp, #-176]
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, .L89+24
	str	r3, [r2]
	b	.L74
.L71:
	ldr	r3, .L89+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L75
	ldr	r3, .L89+20
	ldr	r3, [r3]
	cmp	r3, #8
	bne	.L76
.L75:
	ldr	r3, [fp, #-176]
	lsl	r3, r3, #2
	ldr	r2, .L89+108
	add	r3, r3, r2
	mov	r1, r3
	ldr	r0, .L89+52
	bl	__isoc99_scanf
	b	.L74
.L76:
	ldr	r3, [fp, #-176]
	add	r2, r3, #1
	ldr	r1, .L89+108
	ldr	r3, [fp, #-176]
	str	r2, [r1, r3, lsl #2]
.L74:
	ldr	r0, .L89+116
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #0
	beq	.L77
	ldr	r3, .L89+36
	ldr	r3, [r3]
	ldr	r2, [fp, #-168]
	mov	r1, r3
	ldr	r0, .L89+120
	bl	printf
.L77:
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
	mov	r3, #0
	str	r3, [fp, #-172]
	b	.L78
.L80:
	ldr	r2, .L89+88
	ldr	r3, [fp, #-176]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #2
	add	r1, r2, r3
	ldr	r2, .L89+92
	ldr	r3, [fp, #-176]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, r3
	ldr	r0, .L89+124
	bl	__isoc99_scanf
	mov	r3, r0
	cmp	r3, #2
	beq	.L79
	ldr	r1, [fp, #-168]
	ldr	r0, .L89+32
	bl	printf
	mov	r3, #1
	b	.L87
.L79:
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	str	r3, [fp, #-172]
.L78:
	ldr	r3, .L89+24
	ldr	r3, [r3]
	ldr	r2, [fp, #-172]
	cmp	r2, r3
	blt	.L80
	ldr	r3, [fp, #-176]
	add	r3, r3, #1
	str	r3, [fp, #-176]
.L68:
	ldr	r3, .L89+36
	ldr	r3, [r3]
	ldr	r2, [fp, #-176]
	cmp	r2, r3
	blt	.L81
	ldr	r3, .L89+128
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L82
	mov	r3, #0
	str	r3, [fp, #-176]
	b	.L83
.L86:
	ldr	r2, .L89+88
	ldr	r3, [fp, #-176]
	ldr	r3, [r2, r3, lsl #2]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r3, .L89+132
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L89+88
	ldr	r3, [fp, #-176]
	ldr	r4, [r2, r3, lsl #2]
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	mov	r3, #1
	str	r3, [fp, #-172]
	b	.L84
.L85:
	ldr	r2, .L89+88
	ldr	r3, [fp, #-176]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r2, .L89+88
	ldr	r3, [fp, #-176]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-172]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r3, .L89+132
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	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
	ldr	r2, .L89+88
	ldr	r3, [fp, #-176]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #2
	add	r4, r2, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	str	r3, [fp, #-172]
.L84:
	ldr	r3, .L89+24
	ldr	r3, [r3]
	ldr	r2, [fp, #-172]
	cmp	r2, r3
	blt	.L85
	ldr	r3, [fp, #-176]
	add	r3, r3, #1
	str	r3, [fp, #-176]
.L83:
	ldr	r3, .L89+36
	ldr	r3, [r3]
	ldr	r2, [fp, #-176]
	cmp	r2, r3
	blt	.L86
.L82:
	mov	r3, #0
.L87:
	ldr	r2, .L89
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L88
	bl	__stack_chk_fail
.L88:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L90:
	.align	2
.L89:
	.word	.LC18
	.word	s0
	.word	sy
	.word	regression
	.word	polyflag
	.word	exptype
	.word	numspec
	.word	.LC5
	.word	.LC6
	.word	numlines
	.word	ss2
	.word	ss1
	.word	.LC7
	.word	.LC8
	.word	yaxis
	.word	xaxis
	.word	.LC9
	.word	.LC10
	.word	.LC11
	.word	.LC12
	.word	.LC13
	.word	maxnumspec
	.word	xa
	.word	ya
	.word	.LC4
	.word	spec_count
	.word	NEXTflag
	.word	line_index
	.word	.LC14
	.word	.LC15
	.word	.LC16
	.word	.LC17
	.word	kineticflag
	.word	offset
	.size	readparams, .-readparams
	.section	.rodata
	.align	2
.LC19:
	.ascii	"peak    std deviation of fit\000"
	.align	2
.LC20:
	.ascii	"   mean\000"
	.align	2
.LC21:
	.ascii	"     a0            a1\000"
	.align	2
.LC22:
	.ascii	"            a2\000"
	.align	2
.LC23:
	.ascii	"           a3\000"
	.align	2
.LC24:
	.ascii	"peak             tau         error\000"
	.align	2
.LC25:
	.ascii	"peak             T2          error\000"
	.align	2
.LC26:
	.ascii	"peak             T1          error\000"
	.align	2
.LC27:
	.ascii	"        a0          a2\000"
	.global	__aeabi_fcmpgt
	.align	2
.LC28:
	.ascii	"%4d %16.4g %12.4g  solution not found\012\000"
	.align	2
.LC29:
	.ascii	"%4d %16.4g %12.4g\012\000"
	.align	2
.LC30:
	.ascii	"%4d %16.4g %12.4g\000"
	.align	2
.LC31:
	.ascii	"%12.4g %11.4g\000"
	.align	2
.LC32:
	.ascii	"%4d %16.4g\000"
	.align	2
.LC33:
	.ascii	" %12.4g\000"
	.align	2
.LC34:
	.ascii	"  %12.4g\000"
	.align	2
.LC35:
	.ascii	"%4d %16.4g %12.4g  stopped at %d iterations\012\000"
	.align	2
.LC36:
	.ascii	"%4d %16.4g          stopped at %d iterations\012\000"
	.text
	.align	2
	.global	writeparams
	.syntax unified
	.arm
	.fpu softvfp
	.type	writeparams, %function
writeparams:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #28
	ldr	r3, .L117
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L92
	ldr	r0, .L117+4
	bl	printf
	ldr	r3, .L117+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L93
	ldr	r3, .L117+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L94
	ldr	r0, .L117+16
	bl	printf
	b	.L95
.L94:
	ldr	r0, .L117+20
	bl	printf
.L95:
	ldr	r3, .L117+24
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L96
	ldr	r3, .L117+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L97
.L96:
	ldr	r0, .L117+32
	bl	printf
.L97:
	ldr	r3, .L117+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L93
	ldr	r0, .L117+36
	bl	printf
	b	.L93
.L92:
	ldr	r3, .L117+40
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L98
	ldr	r0, .L117+44
	bl	printf
	b	.L93
.L98:
	ldr	r3, .L117+48
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L99
	ldr	r0, .L117+52
	bl	printf
	b	.L93
.L99:
	ldr	r0, .L117+56
	bl	printf
	ldr	r3, .L117+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L93
	ldr	r3, .L117+60
	ldr	r3, [r3]
	cmp	r3, #7
	bne	.L93
	ldr	r0, .L117+64
	bl	printf
.L93:
	mov	r0, #10
	bl	putchar
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L100
.L114:
	ldr	r3, .L117
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L101
	ldr	r3, .L117+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	bic	r0, r3, #-2147483648
	ldr	r3, .L117+72
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r1, r3
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L101
	ldr	r3, .L117+76
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #1
	str	r2, [r3]
.L101:
	ldr	r3, .L117+76
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L103
	ldr	r2, .L117+80
	ldr	r3, [fp, #-24]
	ldr	r6, [r2, r3, lsl #2]
	ldr	r3, .L117+72
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L117+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, r6
	ldr	r0, .L117+84
	bl	printf
	b	.L104
.L103:
	ldr	r3, .L117+88
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L105
	ldr	r3, .L117+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L106
	ldr	r2, .L117+80
	ldr	r3, [fp, #-24]
	ldr	r6, [r2, r3, lsl #2]
	ldr	r3, .L117+92
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L117+96
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, r6
	ldr	r0, .L117+100
	bl	printf
	b	.L104
.L106:
	ldr	r3, .L117
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L107
	ldr	r2, .L117+80
	ldr	r3, [fp, #-24]
	ldr	r6, [r2, r3, lsl #2]
	ldr	r3, .L117+72
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L117+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, r6
	ldr	r0, .L117+104
	bl	printf
	ldr	r3, .L117+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L108
	ldr	r3, .L117+96
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L117+108
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ 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, .L117+112
	bl	printf
.L108:
	mov	r0, #10
	bl	putchar
	b	.L104
.L107:
	ldr	r2, .L117+80
	ldr	r3, [fp, #-24]
	ldr	r4, [r2, r3, lsl #2]
	ldr	r3, .L117+92
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r1, r4
	ldr	r0, .L117+116
	bl	printf
	ldr	r3, .L117+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L109
	ldr	r3, .L117+96
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L117+120
	bl	printf
	ldr	r3, .L117+124
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L110
	ldr	r3, .L117+24
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L110
	ldr	r3, .L117+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L111
.L110:
	ldr	r3, .L117+72
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L117+128
	bl	printf
.L111:
	ldr	r3, .L117+124
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L112
	ldr	r3, .L117+108
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L117+128
	bl	printf
.L112:
	ldr	r3, .L117+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L109
	ldr	r3, .L117+132
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L117+120
	bl	printf
.L109:
	mov	r0, #10
	bl	putchar
	b	.L104
.L105:
	ldr	r3, .L117
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L113
	ldr	r2, .L117+80
	ldr	r3, [fp, #-24]
	ldr	r6, [r2, r3, lsl #2]
	ldr	r3, .L117+72
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L117+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r1, #64
	str	r1, [sp, #8]
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, r6
	ldr	r0, .L117+136
	bl	printf
	b	.L104
.L113:
	ldr	r2, .L117+80
	ldr	r3, [fp, #-24]
	ldr	r4, [r2, r3, lsl #2]
	ldr	r3, .L117+92
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r1, #64
	str	r1, [sp]
	mov	r1, r4
	ldr	r0, .L117+140
	bl	printf
.L104:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L100:
	ldr	r3, .L117+144
	ldr	r3, [r3]
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	blt	.L114
	mov	r3, #1
	mov	r0, r3
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L118:
	.align	2
.L117:
	.word	polyflag
	.word	.LC19
	.word	regression
	.word	poly0
	.word	.LC20
	.word	.LC21
	.word	poly2
	.word	poly3
	.word	.LC22
	.word	.LC23
	.word	kineticflag
	.word	.LC24
	.word	t2flag
	.word	.LC25
	.word	.LC26
	.word	exptype
	.word	.LC27
	.word	sigma
	.word	tau
	.word	nosolution
	.word	line_index
	.word	.LC28
	.word	converge
	.word	stddev
	.word	aa0
	.word	.LC29
	.word	.LC30
	.word	aa2
	.word	.LC31
	.word	.LC32
	.word	.LC33
	.word	poly1
	.word	.LC34
	.word	aa3
	.word	.LC35
	.word	.LC36
	.word	numlines
	.size	writeparams, .-writeparams
	.section	.rodata
	.align	2
.LC37:
	.ascii	"\012peak number %d\012\000"
	.align	2
.LC38:
	.ascii	"Mean =%8.4g  Standard Deviation =%8.4g\012\000"
	.align	2
.LC39:
	.ascii	"Coefficients:        a0= %10.3g  a1= %13.6g\012\000"
	.align	2
.LC40:
	.ascii	"Standard deviation:      %10.3g      %13.6g\012\000"
	.align	2
.LC41:
	.ascii	"Coefficients:        a0= %10.3g  a1= %13.6g  a2= %1"
	.ascii	"0g\012\000"
	.align	2
.LC42:
	.ascii	"Standard deviation:      %10.3g      %13.6g      %1"
	.ascii	"0g\012\000"
	.align	2
.LC43:
	.ascii	" tau = %12.3g    \000"
	.align	2
.LC44:
	.ascii	" T2 = %12.3g     \000"
	.align	2
.LC45:
	.ascii	"\012\012   Sinf=%.1f  S0=%.1f  Tch=%.5f  T1rho=%.3f"
	.ascii	"\012\012\000"
	.align	2
.LC46:
	.ascii	"\012     a0=%.4g   a1=%.4g   a2=%.4g   a3=%.4g\012\000"
	.align	2
.LC47:
	.ascii	"\012     a0=%.4g   a1=%.4g   a2=%.4g   \012\000"
	.align	2
.LC48:
	.ascii	" T1 = %12.3g     \000"
	.align	2
.LC49:
	.ascii	" error = %12.3g\000"
	.align	2
.LC50:
	.ascii	"solution not found\000"
	.align	2
.LC51:
	.ascii	"results after %d iterations\012\000"
	.align	2
.LC52:
	.ascii	"%11s %12s   calculated   difference\012\000"
	.align	2
.LC53:
	.ascii	"      time       observed   calculated   difference"
	.ascii	"\000"
	.align	2
.LC54:
	.ascii	"%12.4g %12.3g %12.3g %12.3g\012\000"
	.text
	.align	2
	.global	printpeakdata
	.syntax unified
	.arm
	.fpu softvfp
	.type	printpeakdata, %function
printpeakdata:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #56
	str	r0, [fp, #-48]
	str	r1, [fp, #-52]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, .L140
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L120
	ldr	r2, .L140+4
	ldr	r3, .L140+8
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
.L120:
	ldr	r2, .L140+12
	ldr	r3, [fp, #-48]
	ldr	r3, [r2, r3, lsl #2]
	mov	r1, r3
	ldr	r0, .L140+16
	bl	printf
	ldr	r3, .L140+20
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L121
	ldr	r3, .L140+24
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L140+28
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ 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, .L140+32
	bl	printf
	b	.L122
.L121:
	ldr	r3, .L140+36
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L123
	ldr	r3, .L140+24
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L140+40
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ 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, .L140+44
	bl	printf
	ldr	r3, .L140+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L140+52
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ 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, .L140+56
	bl	printf
	b	.L122
.L123:
	ldr	r3, .L140+60
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L124
	ldr	r3, .L140+64
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L125
.L124:
	ldr	r3, .L140+24
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, .L140+40
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L140+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L140+72
	bl	printf
	ldr	r3, .L140+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, .L140+52
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L140+76
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L140+80
	bl	printf
	b	.L122
.L125:
	ldr	r3, .L140+84
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L126
	ldr	r3, .L140+40
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L140+88
	bl	printf
	b	.L122
.L126:
	ldr	r3, .L140+92
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L127
	ldr	r3, .L140+40
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L140+96
	bl	printf
	b	.L122
.L127:
	ldr	r3, .L140+100
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L128
	ldr	r3, .L140+24
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, .L140+104
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L140+40
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, .L140+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L140+108
	bl	printf
	b	.L122
.L128:
	ldr	r3, .L140+112
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L129
	ldr	r3, .L140+24
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, .L140+40
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L140+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, .L140+104
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L140+116
	bl	printf
	b	.L122
.L129:
	ldr	r3, .L140+64
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L130
	ldr	r3, .L140+24
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, .L140+40
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L140+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L140+120
	bl	printf
	b	.L122
.L130:
	ldr	r3, .L140+40
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L140+124
	bl	printf
.L122:
	ldr	r3, .L140+60
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L131
	ldr	r3, .L140+128
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L131
	ldr	r3, .L140+52
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L140+132
	bl	printf
.L131:
	mov	r0, #10
	bl	putchar
	ldr	r3, .L140+136
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L132
	ldr	r0, .L140+140
	bl	puts
	b	.L133
.L132:
	ldr	r3, .L140+144
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L133
	mov	r1, #64
	ldr	r0, .L140+148
	bl	printf
.L133:
	ldr	r3, .L140+128
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L134
	ldr	r2, .L140+152
	ldr	r1, .L140+156
	ldr	r0, .L140+160
	bl	printf
	b	.L135
.L134:
	ldr	r0, .L140+164
	bl	puts
.L135:
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L136
.L137:
	ldr	r2, .L140+168
	ldr	r3, [fp, #-48]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L140+172
	ldr	r2, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r4, r2, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r2, .L140+176
	ldr	r3, [fp, #-48]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, .L140+180
	ldr	r1, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L136:
	ldr	r2, .L140+184
	ldr	r3, [fp, #-48]
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, [fp, #-40]
	cmp	r2, r3
	blt	.L137
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L138
.L139:
	ldr	r3, .L140+24
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L140+188
	stm	r1, {r2-r3}
	ldr	r3, .L140+40
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L140+192
	stm	r1, {r2-r3}
	ldr	r3, .L140+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L140+196
	stm	r1, {r2-r3}
	ldr	r3, .L140+104
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L140+200
	stm	r1, {r2-r3}
	ldr	r3, .L140+172
	ldr	r2, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, .L140+180
	ldr	r2, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L140+172
	ldr	r2, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	msubt
	mov	r6, r0
	mov	r7, r1
	ldr	r3, .L140+180
	ldr	r2, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	str	r0, [fp, #-60]
	str	r1, [fp, #-56]
	ldr	r3, .L140+172
	ldr	r2, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	msubt
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L140+204
	bl	printf
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L138:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-52]
	cmp	r2, r3
	blt	.L139
	nop
	nop
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L141:
	.align	2
.L140:
	.word	corrflag
	.word	-343597384
	.word	1067366481
	.word	line_index
	.word	.LC37
	.word	poly0
	.word	aa0
	.word	stddev
	.word	.LC38
	.word	poly1
	.word	tau
	.word	.LC39
	.word	err0
	.word	sigma
	.word	.LC40
	.word	diffusion
	.word	poly2
	.word	aa2
	.word	.LC41
	.word	err2
	.word	.LC42
	.word	kineticflag
	.word	.LC43
	.word	t2flag
	.word	.LC44
	.word	cp_analysis
	.word	aa3
	.word	.LC45
	.word	poly3
	.word	.LC46
	.word	.LC47
	.word	.LC48
	.word	polyflag
	.word	.LC49
	.word	nosolution
	.word	.LC50
	.word	converge
	.word	.LC51
	.word	ss2
	.word	ss1
	.word	.LC52
	.word	.LC53
	.word	xa
	.word	x
	.word	ya
	.word	y
	.word	spec_count
	.word	a0
	.word	a1
	.word	a2
	.word	a3
	.word	.LC54
	.size	printpeakdata, .-printpeakdata
	.global	__aeabi_dcmpgt
	.global	__aeabi_dcmplt
	.global	__aeabi_fsub
	.global	__aeabi_dcmpeq
	.global	__aeabi_fcmplt
	.global	__aeabi_fadd
	.global	__aeabi_i2f
	.global	__aeabi_fdiv
	.global	__aeabi_fmul
	.global	__aeabi_i2d
	.align	2
	.global	initial_values
	.syntax unified
	.arm
	.fpu softvfp
	.type	initial_values, %function
initial_values:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #40
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r1, .L213
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r2, .L213+4
	ldr	r3, .L213+8
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r2, .L213+4
	ldr	r3, .L213+12
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-60]
	mov	r3, #0
	str	r3, [fp, #-56]
	mov	r4, #0
	b	.L143
.L149:
	ldr	r3, .L213+16
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L144
	ldr	r3, .L213+16
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	str	r4, [fp, #-60]
.L144:
	ldr	r3, .L213+16
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L146
	ldr	r3, .L213+16
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	str	r4, [fp, #-56]
.L146:
	ldr	r3, .L213+20
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L148
	ldr	r3, .L213+24
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L148
	ldr	r3, .L213+16
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L213+28
	ldr	r3, .L213+32
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L213+16
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r5, r2, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r5]	@ float
.L148:
	add	r4, r4, #1
.L143:
	ldr	r3, .L213+36
	ldr	r3, [r3]
	cmp	r4, r3
	blt	.L149
	ldr	r3, .L213+40
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L150
	mov	r2, #0
	mov	r3, #1073741824
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	b	.L151
.L150:
	ldr	r3, .L213+44
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L152
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	mov	r3, #1073741824
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	stm	r1, {r2-r3}
	ldr	r1, .L213
	mov	r2, #0
	ldr	r3, .L213+52
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, .L213
	ldmia	r3, {r2-r3}
	ldr	r1, .L213
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	b	.L151
.L152:
	ldr	r3, .L213+56
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L153
	ldr	r3, .L213+60
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L153
	ldr	r3, .L213+64
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L154
.L153:
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-68]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-64]
	mov	r2, #0
	ldr	r3, .L213+68
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L210
	ldr	r1, .L213
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	b	.L157
.L210:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #8]
	str	r3, [r1, #12]
.L157:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L213
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	stm	r1, {r2-r3}
	ldr	r3, .L213
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L158
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L213+72
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	stm	r1, {r2-r3}
.L158:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	mov	r3, #1073741824
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, .L213+64
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L160
	ldr	r3, .L213
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r3, .L213
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L161
	ldr	r1, .L213
	ldr	r2, .L213+76
	ldr	r3, .L213+80
	str	r2, [r1, #24]
	str	r3, [r1, #28]
.L161:
	ldr	r3, .L213
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L213+84
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, .L213
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L213+84
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #16]
	str	r3, [r1, #20]
.L160:
	ldr	r3, .L213
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L163
	ldr	r1, .L213
	ldr	r2, .L213+88
	ldr	r3, .L213+92
	str	r2, [r1, #16]
	str	r3, [r1, #20]
.L163:
	ldr	r3, .L213
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L151
	ldr	r1, .L213
	ldr	r2, .L213+96
	ldr	r3, .L213+100
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	b	.L151
.L154:
	ldr	r3, .L213+24
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L167
	ldr	r3, .L213+104
	ldr	r3, [r3]
	cmp	r3, #7
	bne	.L168
.L167:
	ldr	r3, .L213+108
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L169
	ldr	r3, .L213+104
	ldr	r3, [r3]
	cmp	r3, #7
	bne	.L170
.L169:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, .L213
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r2, .L213+112
	ldr	r3, .L213+116
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	b	.L171
.L170:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, .L213
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r2, .L213+120
	ldr	r3, .L213+124
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
.L171:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L211
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	stm	r1, {r2-r3}
	b	.L151
.L211:
	ldr	r3, .L213
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r6, r2
	eor	r7, r3, #-2147483648
	ldr	r3, .L213
	stm	r3, {r6-r7}
	b	.L151
.L168:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	stm	r1, {r2-r3}
	ldr	r3, .L213+128
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L175
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L213+84
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	b	.L176
.L175:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, .L213
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L176
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L176
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	eor	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #16]
	str	r3, [r1, #20]
.L176:
	ldr	r3, .L213
	ldmia	r3, {r0-r1}
	ldr	r3, .L213
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L213+120
	ldr	r3, .L213+124
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L213
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
.L151:
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213+132
	stm	r1, {r2-r3}
	ldr	r2, .L213+4
	ldr	r3, .L213+8
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r2, .L213+4
	ldr	r3, .L213+12
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-60]
	ldr	r3, .L213+136
	mov	r2, #0
	str	r2, [r3]	@ float
	ldr	r1, .L213+140
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	mov	r4, #0
	b	.L179
.L184:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	bic	r9, r3, #-2147483648
	mov	r2, r8
	mov	r3, r9
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L180
	ldr	r3, .L213+48
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r1, r2
	str	r1, [fp, #-52]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-48]
	str	r4, [fp, #-60]
.L180:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L182
	ldr	r3, .L213+48
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
.L182:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	ldr	r2, .L213+136
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L213+136
	str	r2, [r3]	@ float
	add	r4, r4, #1
.L179:
	ldr	r3, .L213+36
	ldr	r3, [r3]
	cmp	r4, r3
	blt	.L184
	ldr	r3, .L213+136
	ldr	r4, [r3]	@ float
	ldr	r3, .L213+36
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L213+136
	str	r2, [r3]	@ float
	ldr	r3, .L213+144
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L185
	ldr	r1, .L213+140
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	mov	r4, #0
	b	.L186
.L187:
	ldr	r3, .L213+48
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	ldr	r2, .L213+136
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r5, r3
	ldr	r3, .L213+48
	ldr	r2, [r3]
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	ldr	r2, .L213+136
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r3, .L213+140
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213+140
	stm	r1, {r2-r3}
	add	r4, r4, #1
.L186:
	ldr	r3, .L213+36
	ldr	r3, [r3]
	cmp	r4, r3
	blt	.L187
	ldr	r3, .L213+140
	ldmia	r3, {r4-r5}
	ldr	r3, .L213+36
	ldr	r3, [r3]
	sub	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213+140
	stm	r1, {r2-r3}
	ldr	r3, .L213+136
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213+148
	stm	r1, {r2-r3}
	ldr	r1, .L213+152
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L213+148
	ldmia	r3, {r2-r3}
	ldr	r1, .L213
	stm	r1, {r2-r3}
	ldr	r3, .L213+152
	ldmia	r3, {r2-r3}
	ldr	r1, .L213
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	b	.L212
.L185:
	ldr	r3, .L213+40
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L189
	ldr	r2, .L213+156
	ldr	r3, .L213+160
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r3, .L213+48
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	stm	r1, {r2-r3}
	b	.L190
.L189:
	ldr	r3, .L213+164
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L190
	ldr	r3, .L213+16
	ldr	r2, [r3]
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, .L213
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, .L213+132
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L213+84
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L190
	ldr	r3, .L213+132
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L213+84
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	str	r2, [r1, #8]
	str	r3, [r1, #12]
.L190:
	mov	r2, #0
	ldr	r3, .L213+84
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213+168
	stm	r1, {r2-r3}
	ldr	r3, .L213+40
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L212
	ldr	r3, .L213
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L192
	ldr	r1, .L213
	ldr	r2, .L213+88
	ldr	r3, .L213+92
	str	r2, [r1, #16]
	str	r3, [r1, #20]
.L192:
	ldr	r3, .L213
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L209
	b	.L212
.L209:
	ldr	r3, .L213
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L213+172
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L213
	stm	r1, {r2-r3}
.L212:
	nop
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L214:
	.align	2
.L213:
	.word	a
	.word	-1257935337
	.word	1184086197
	.word	-963397451
	.word	x
	.word	corrflag
	.word	kineticflag
	.word	-343597384
	.word	1067366481
	.word	numspec
	.word	cp_analysis
	.word	diffusion
	.word	y
	.word	1071644672
	.word	poly1
	.word	poly2
	.word	poly3
	.word	1093567616
	.word	1079574528
	.word	-500134854
	.word	1044740494
	.word	1076101120
	.word	-1598689907
	.word	1051772663
	.word	-350469331
	.word	1058682594
	.word	exptype
	.word	incrflag
	.word	-1030792151
	.word	1071917301
	.word	2061584302
	.word	1071099412
	.word	t2flag
	.word	max2
	.word	yave
	.word	s
	.word	poly0
	.word	a0
	.word	a1
	.word	858993459
	.word	1072902963
	.word	polyflag
	.word	max1
	.word	1083129856
	.size	initial_values, .-initial_values
	.section	.rodata
	.align	2
.LC55:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	invertmatrix
	.syntax unified
	.arm
	.fpu softvfp
	.type	invertmatrix, %function
invertmatrix:
	@ args = 0, pretend = 0, frame = 144
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	add	fp, sp, #32
	sub	sp, sp, #148
	str	r0, [fp, #-168]
	str	r1, [fp, #-172]
	ldr	r3, .L246
	ldr	r3, [r3]
	str	r3, [fp, #-40]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-164]
	b	.L216
.L219:
	mov	r3, #0
	str	r3, [fp, #-160]
	b	.L217
.L218:
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-168]
	add	r2, r2, r3
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r1, [fp, #-172]
	add	r0, r1, r3
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-160]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-160]
	add	r3, r3, #1
	str	r3, [fp, #-160]
.L217:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-160]
	cmp	r2, r3
	blt	.L218
	ldr	r3, [fp, #-164]
	add	r3, r3, #1
	str	r3, [fp, #-164]
.L216:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-164]
	cmp	r2, r3
	blt	.L219
	mov	r3, #0
	str	r3, [fp, #-160]
	b	.L220
.L221:
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #2
	sub	r2, fp, #36
	add	r3, r2, r3
	ldr	r2, [fp, #-160]
	str	r2, [r3, #-88]
	ldr	r3, [fp, #-160]
	add	r3, r3, #1
	str	r3, [fp, #-160]
.L220:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-160]
	cmp	r2, r3
	blt	.L221
	mov	r3, #0
	str	r3, [fp, #-164]
	b	.L222
.L235:
	ldr	r3, [fp, #-164]
	str	r3, [fp, #-156]
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r2, r2, r3
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-140]
	str	r3, [fp, #-136]
	ldr	r3, [fp, #-164]
	sub	r3, r3, #1
	str	r3, [fp, #-152]
	ldr	r3, [fp, #-164]
	add	r3, r3, #1
	str	r3, [fp, #-144]
	ldr	r3, [fp, #-144]
	str	r3, [fp, #-160]
	b	.L223
.L226:
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r2, r2, r3
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-132]
	str	r3, [fp, #-128]
	ldr	r4, [fp, #-132]
	ldr	r3, [fp, #-128]
	bic	r5, r3, #-2147483648
	ldr	r6, [fp, #-140]
	ldr	r3, [fp, #-136]
	bic	r7, r3, #-2147483648
	mov	r2, r6
	mov	r3, r7
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L224
	ldr	r3, [fp, #-160]
	str	r3, [fp, #-156]
	sub	r3, fp, #132
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-140]
	str	r3, [fp, #-136]
.L224:
	ldr	r3, [fp, #-160]
	add	r3, r3, #1
	str	r3, [fp, #-160]
.L223:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-160]
	cmp	r2, r3
	blt	.L226
	mov	r3, #0
	str	r3, [fp, #-160]
	b	.L227
.L228:
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r2, r2, r3
	ldr	r3, [fp, #-156]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-160]
	lsl	r1, r1, #3
	sub	r0, fp, #36
	add	r1, r0, r1
	sub	r1, r1, #40
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r2, r2, r3
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #5
	ldr	r1, [fp, #-172]
	add	r0, r1, r3
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-156]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #3
	sub	r2, fp, #36
	add	r3, r2, r3
	sub	r3, r3, #40
	ldmia	r3, {r2-r3}
	mov	r8, r2
	eor	r9, r3, #-2147483648
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r10, r2, r3
	sub	r3, fp, #140
	ldmia	r3, {r2-r3}
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-164]
	lsl	r1, r1, #3
	add	r1, r10, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r2, r2, r3
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r10, r2, r3
	sub	r3, fp, #140
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-160]
	lsl	r1, r1, #3
	add	r1, r10, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r2, r2, r3
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-160]
	lsl	r1, r1, #3
	sub	r0, fp, #36
	add	r1, r0, r1
	sub	r1, r1, #72
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-160]
	add	r3, r3, #1
	str	r3, [fp, #-160]
.L227:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-160]
	cmp	r2, r3
	blt	.L228
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r10, r2, r3
	sub	r3, fp, #140
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L246+8
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-164]
	lsl	r1, r1, #3
	add	r1, r10, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #2
	sub	r2, fp, #36
	add	r3, r2, r3
	ldr	r3, [r3, #-88]
	str	r3, [fp, #-160]
	ldr	r3, [fp, #-156]
	lsl	r3, r3, #2
	sub	r2, fp, #36
	add	r3, r2, r3
	ldr	r2, [r3, #-88]
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #2
	sub	r1, fp, #36
	add	r3, r1, r3
	str	r2, [r3, #-88]
	ldr	r3, [fp, #-156]
	lsl	r3, r3, #2
	sub	r2, fp, #36
	add	r3, r2, r3
	ldr	r2, [fp, #-160]
	str	r2, [r3, #-88]
	mov	r3, #0
	str	r3, [fp, #-156]
	b	.L229
.L234:
	ldr	r2, [fp, #-164]
	ldr	r3, [fp, #-156]
	cmp	r2, r3
	beq	.L230
	mov	r3, #0
	str	r3, [fp, #-160]
	b	.L231
.L233:
	ldr	r2, [fp, #-164]
	ldr	r3, [fp, #-160]
	cmp	r2, r3
	beq	.L232
	ldr	r3, [fp, #-156]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r2, r2, r3
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-180]
	str	r3, [fp, #-176]
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #3
	sub	r1, fp, #36
	add	r3, r1, r3
	sub	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-156]
	lsl	r3, r3, #3
	sub	ip, fp, #36
	add	r3, ip, r3
	sub	r3, r3, #40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-156]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r10, r2, r3
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-160]
	lsl	r1, r1, #3
	add	r1, r10, r1
	stm	r1, {r2-r3}
.L232:
	ldr	r3, [fp, #-160]
	add	r3, r3, #1
	str	r3, [fp, #-160]
.L231:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-160]
	cmp	r2, r3
	blt	.L233
.L230:
	ldr	r3, [fp, #-156]
	add	r3, r3, #1
	str	r3, [fp, #-156]
.L229:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-156]
	cmp	r2, r3
	blt	.L234
	ldr	r3, [fp, #-164]
	add	r3, r3, #1
	str	r3, [fp, #-164]
.L222:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-164]
	cmp	r2, r3
	blt	.L235
	mov	r3, #0
	str	r3, [fp, #-164]
	b	.L236
.L243:
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #2
	sub	r2, fp, #36
	add	r3, r2, r3
	ldr	r3, [r3, #-88]
	ldr	r2, [fp, #-164]
	cmp	r2, r3
	beq	.L237
	ldr	r3, [fp, #-164]
	add	r3, r3, #1
	str	r3, [fp, #-160]
	b	.L238
.L242:
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #2
	sub	r2, fp, #36
	add	r3, r2, r3
	ldr	r3, [r3, #-88]
	ldr	r2, [fp, #-164]
	cmp	r2, r3
	bne	.L239
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #2
	sub	r2, fp, #36
	add	r3, r2, r3
	ldr	r3, [r3, #-88]
	str	r3, [fp, #-148]
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #2
	sub	r2, fp, #36
	add	r3, r2, r3
	ldr	r2, [r3, #-88]
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #2
	sub	r1, fp, #36
	add	r3, r1, r3
	str	r2, [r3, #-88]
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #2
	sub	r2, fp, #36
	add	r3, r2, r3
	ldr	r2, [fp, #-148]
	str	r2, [r3, #-88]
	mov	r3, #0
	str	r3, [fp, #-152]
	b	.L240
.L241:
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r2, r2, r3
	ldr	r3, [fp, #-152]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-152]
	lsl	r1, r1, #3
	sub	r0, fp, #36
	add	r1, r0, r1
	sub	r1, r1, #40
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r2, r2, r3
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r1, [fp, #-172]
	add	r0, r1, r3
	ldr	r3, [fp, #-152]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-152]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-160]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-172]
	add	r0, r2, r3
	ldr	r3, [fp, #-152]
	lsl	r3, r3, #3
	sub	r2, fp, #36
	add	r3, r2, r3
	sub	r3, r3, #40
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-152]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-152]
	add	r3, r3, #1
	str	r3, [fp, #-152]
.L240:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-152]
	cmp	r2, r3
	blt	.L241
.L239:
	ldr	r3, [fp, #-160]
	add	r3, r3, #1
	str	r3, [fp, #-160]
.L238:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-160]
	cmp	r2, r3
	blt	.L242
.L237:
	ldr	r3, [fp, #-164]
	add	r3, r3, #1
	str	r3, [fp, #-164]
.L236:
	ldr	r3, .L246+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-164]
	cmp	r2, r3
	blt	.L243
	nop
	ldr	r3, .L246
	ldr	r2, [r3]
	ldr	r3, [fp, #-40]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L244
	bl	__stack_chk_fail
.L244:
	sub	sp, fp, #32
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L247:
	.align	2
.L246:
	.word	.LC55
	.word	Nn
	.word	1072693248
	.size	invertmatrix, .-invertmatrix
	.section	.rodata
	.align	2
.LC56:
	.ascii	"diag=%g\012\000"
	.align	2
.LC57:
	.ascii	"detv=%g\012\000"
	.align	2
.LC58:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	det
	.syntax unified
	.arm
	.fpu softvfp
	.type	det, %function
det:
	@ args = 0, pretend = 0, frame = 192
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #192
	str	r0, [fp, #-200]
	ldr	r3, .L275
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	ldr	r3, [fp, #-200]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-180]
	str	r3, [fp, #-176]
	ldr	r4, [fp, #-180]
	ldr	r3, [fp, #-176]
	bic	r5, r3, #-2147483648
	ldr	r2, .L275+4
	ldr	r3, .L275+8
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L271
	mov	r3, #1
	b	.L265
.L271:
	mov	r3, #0
	str	r3, [fp, #-196]
	b	.L252
.L255:
	mov	r3, #0
	str	r3, [fp, #-192]
	b	.L253
.L254:
	ldr	r3, [fp, #-196]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-200]
	add	r2, r2, r3
	ldr	r3, [fp, #-192]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-196]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-192]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #28
	add	r1, r0, r1
	sub	r1, r1, #136
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-192]
	add	r3, r3, #1
	str	r3, [fp, #-192]
.L253:
	ldr	r3, .L275+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-192]
	cmp	r2, r3
	blt	.L254
	ldr	r3, [fp, #-196]
	add	r3, r3, #1
	str	r3, [fp, #-196]
.L252:
	ldr	r3, .L275+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-196]
	cmp	r2, r3
	blt	.L255
	ldr	r3, .L275+12
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L256
	sub	r3, fp, #124
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-188]
	str	r3, [fp, #-184]
	b	.L257
.L256:
	sub	r1, fp, #124
	ldmia	r1, {r0-r1}
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-188]
	str	r3, [fp, #-184]
	ldr	r3, .L275+12
	ldr	r3, [r3]
	cmp	r3, #4
	bne	.L257
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	sub	r1, fp, #188
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-188]
	str	r3, [fp, #-184]
.L257:
	ldr	r6, [fp, #-188]
	ldr	r3, [fp, #-184]
	bic	r7, r3, #-2147483648
	ldr	r2, .L275+4
	ldr	r3, .L275+8
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L272
	sub	r3, fp, #188
	ldmia	r3, {r2-r3}
	ldr	r0, .L275+16
	bl	printf
	mov	r3, #1
	b	.L265
.L272:
	ldr	r3, .L275+12
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L260
	sub	r1, fp, #156
	ldmia	r1, {r0-r1}
	sub	r3, fp, #132
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #188
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	bic	r9, r3, #-2147483648
	ldr	r2, .L275+4
	ldr	r3, .L275+8
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L273
	mov	r3, #1
	b	.L265
.L273:
	mov	r3, #0
	b	.L265
.L260:
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #188
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	sub	r5, fp, #132
	ldmia	r5, {r4-r5}
	sub	r1, fp, #156
	ldmia	r1, {r0-r1}
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	sub	r3, fp, #148
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	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	r0, r8
	mov	r1, r9
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	sub	r5, fp, #100
	ldmia	r5, {r4-r5}
	sub	r1, fp, #156
	ldmia	r1, {r0-r1}
	sub	r3, fp, #116
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r1, fp, #124
	ldmia	r1, {r0-r1}
	sub	r3, fp, #148
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	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	r0, r8
	mov	r1, r9
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-172]
	str	r3, [fp, #-168]
	ldr	r3, [fp, #-188]
	str	r3, [fp, #-212]
	ldr	r3, [fp, #-184]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-208]
	ldr	r2, .L275+20
	ldr	r3, .L275+24
	sub	r1, fp, #212
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-172]
	str	r3, [fp, #-220]
	ldr	r3, [fp, #-168]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-216]
	sub	r3, fp, #220
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L274
	sub	r3, fp, #172
	ldmia	r3, {r2-r3}
	ldr	r0, .L275+28
	bl	printf
	mov	r3, #1
	b	.L265
.L274:
	mov	r3, #0
.L265:
	ldr	r2, .L275
	ldr	r1, [r2]
	ldr	r2, [fp, #-32]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L266
	bl	__stack_chk_fail
.L266:
	mov	r0, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L276:
	.align	2
.L275:
	.word	.LC58
	.word	1255454751
	.word	898494074
	.word	Nn
	.word	.LC56
	.word	-170230311
	.word	985592528
	.word	.LC57
	.size	det, .-det
	.global	__aeabi_dcmple
	.section	.rodata
	.align	2
.LC59:
	.ascii	"Problem With Determinant\012\000"
	.align	2
.LC60:
	.ascii	"NUMBER ERROR\000"
	.align	2
.LC61:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	calc_params
	.syntax unified
	.arm
	.fpu softvfp
	.type	calc_params, %function
calc_params:
	@ args = 0, pretend = 0, frame = 264
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #264
	str	r0, [fp, #-184]
	ldr	r3, .L379
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r2, #0
	ldr	r3, .L379+4
	str	r2, [fp, #-180]
	str	r3, [fp, #-176]
	ldr	r3, .L379+8
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-172]
	str	r3, [fp, #-168]
	mov	r9, #0
	ldr	r1, .L379+12
	mov	r2, #0
	ldr	r3, .L379+16
	stm	r1, {r2-r3}
	ldr	r1, .L379+20
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
.L349:
	ldr	r1, .L379+24
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	mov	r8, #0
	b	.L278
.L281:
	ldr	r2, .L379+28
	lsl	r3, r8, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	mov	r5, #0
	b	.L279
.L280:
	lsl	r3, r8, #2
	add	r3, r3, r5
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	add	r5, r5, #1
.L279:
	ldr	r3, .L379+192
	ldr	r3, [r3]
	cmp	r5, r3
	blt	.L280
	add	r8, r8, #1
.L278:
	ldr	r3, .L379+192
	ldr	r3, [r3]
	cmp	r8, r3
	blt	.L281
	ldr	r3, .L379+8
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+32
	stm	r1, {r2-r3}
	ldr	r3, .L379+8
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+36
	stm	r1, {r2-r3}
	ldr	r3, .L379+8
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+40
	stm	r1, {r2-r3}
	ldr	r3, .L379+8
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+44
	stm	r1, {r2-r3}
	ldr	r3, .L379+196
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L282
	ldr	r3, .L379+32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-196]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-192]
	ldr	r3, .L379+48
	ldmia	r3, {r0-r1}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #196
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L283
	ldr	r3, .L379+32
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L374
	ldr	r3, .L379+48
	ldmia	r3, {r0-r1}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+32
	stm	r3, {r0-r1}
	b	.L283
.L374:
	ldr	r3, .L379+32
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L283
	ldr	r3, [fp, #-180]
	str	r3, [fp, #-204]
	ldr	r3, [fp, #-176]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-200]
	ldr	r3, .L379+48
	ldmia	r3, {r2-r3}
	sub	r1, fp, #204
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+32
	stm	r3, {r0-r1}
.L283:
	ldr	r3, .L379+40
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-212]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-208]
	ldr	r3, .L379+48
	ldmia	r3, {r0-r1}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #212
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L288
	ldr	r3, .L379+40
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L375
	ldr	r3, .L379+48
	ldmia	r3, {r0-r1}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+40
	stm	r3, {r0-r1}
	b	.L288
.L375:
	ldr	r3, .L379+40
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L288
	ldr	r3, [fp, #-180]
	str	r3, [fp, #-220]
	ldr	r3, [fp, #-176]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-216]
	ldr	r3, .L379+48
	ldmia	r3, {r2-r3}
	sub	r1, fp, #220
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+40
	stm	r3, {r0-r1}
.L288:
	ldr	r3, .L379+36
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L376
	ldr	r3, .L379+52
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L295
	ldr	r3, .L379+56
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L295
	ldr	r3, .L379+60
	ldr	r3, [r3]
	cmp	r3, #7
	bne	.L296
.L295:
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	sub	r1, fp, #172
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+36
	stm	r3, {r0-r1}
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-180]
	str	r3, [fp, #-176]
	ldr	r3, .L379+36
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+8
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	b	.L299
.L296:
	ldr	r3, .L379+36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-228]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-224]
	ldr	r3, .L379+200
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L379+204
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #228
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L299
	ldr	r3, .L379+200
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-236]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-232]
	mov	r2, #0
	ldr	r3, .L379+204
	sub	r1, fp, #236
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+36
	stm	r3, {r0-r1}
	b	.L299
.L376:
	ldr	r3, .L379+200
	ldmia	r3, {r0-r1}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L299
	ldr	r3, .L379+200
	ldmia	r3, {r0-r1}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+36
	stm	r3, {r0-r1}
	b	.L299
.L282:
	ldr	r3, .L379+64
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L301
	ldr	r3, .L379+32
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L301
	ldr	r3, .L379+8
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L379+68
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-244]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-240]
	ldr	r3, .L379+8
	sub	r2, fp, #244
	ldmia	r2, {r1-r2}
	stm	r3, {r1-r2}
	ldr	r3, .L379+8
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+32
	stm	r1, {r2-r3}
	b	.L299
.L301:
	ldr	r3, .L379+64
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L303
	ldr	r3, .L379+36
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L303
	ldr	r1, .L379+8
	mov	r2, #0
	ldr	r3, .L379+204
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, .L379+8
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+36
	stm	r1, {r2-r3}
	b	.L299
.L303:
	ldr	r3, .L379+64
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L305
	ldr	r3, .L379+40
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L305
	ldr	r3, .L379+8
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L379+68
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-252]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-248]
	ldr	r3, .L379+8
	sub	r2, fp, #252
	ldmia	r2, {r1-r2}
	str	r1, [r3, #16]
	str	r2, [r3, #20]
	ldr	r3, .L379+8
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+40
	stm	r1, {r2-r3}
	b	.L299
.L305:
	ldr	r3, .L379+72
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L299
	ldr	r3, .L379+40
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L307
	ldr	r1, .L379+40
	mov	r2, #0
	ldr	r3, .L379+4
	stm	r1, {r2-r3}
.L307:
	ldr	r3, .L379+36
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L377
	ldr	r3, .L379+40
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L379+76
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+36
	stm	r3, {r0-r1}
	b	.L311
.L377:
	ldr	r3, .L379+40
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L379+80
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L311
	ldr	r3, .L379+36
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L379+80
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+40
	stm	r3, {r0-r1}
.L311:
	ldr	r3, .L379+8
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, .L379+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	ldr	r3, .L379+36
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+8
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, .L379+8
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+40
	stm	r1, {r2-r3}
.L299:
	mov	r8, #0
	b	.L314
.L323:
	ldr	r3, .L379+84
	ldr	r2, [r3]
	mov	r3, r8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	msubt
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L379+88
	stm	r1, {r2-r3}
	ldr	r3, .L379+88
	ldmia	r3, {r4-r5}
	ldr	r3, .L379+92
	ldr	r2, [r3]
	mov	r3, r8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+96
	stm	r3, {r0-r1}
	ldr	r3, .L379+96
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+96
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+24
	stm	r3, {r0-r1}
	mov	r5, #0
	b	.L315
.L322:
	ldr	r2, .L379+8
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+100
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L379+8
	lsl	r3, r5, #3
	add	r3, r2, r3
	stm	r3, {r0-r1}
	ldr	r3, .L379+8
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+32
	stm	r1, {r2-r3}
	ldr	r3, .L379+8
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+36
	stm	r1, {r2-r3}
	ldr	r3, .L379+8
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+40
	stm	r1, {r2-r3}
	ldr	r3, .L379+8
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+44
	stm	r1, {r2-r3}
	ldr	r3, .L379+84
	ldr	r2, [r3]
	mov	r3, r8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	msubt
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L379+104
	stm	r1, {r2-r3}
	ldr	r2, .L379+8
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+100
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L379+8
	lsl	r3, r5, #3
	add	r3, r2, r3
	stm	r3, {r0-r1}
	ldr	r3, .L379+8
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+32
	stm	r1, {r2-r3}
	ldr	r3, .L379+8
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+36
	stm	r1, {r2-r3}
	ldr	r3, .L379+8
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+40
	stm	r1, {r2-r3}
	ldr	r3, .L379+8
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+44
	stm	r1, {r2-r3}
	ldr	r2, .L379+8
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-260]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-256]
	ldr	r2, .L379+108
	ldr	r3, .L379+112
	sub	r1, fp, #260
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L378
	ldr	r3, .L379+104
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+88
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, .L379+116
	ldmia	r3, {r0-r1}
	ldr	r2, .L379+108
	ldr	r3, .L379+112
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L379+120
	lsl	r3, r5, #3
	add	r3, r2, r3
	stm	r3, {r0-r1}
	ldr	r2, .L379+8
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L318
	ldr	r2, .L379+120
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-268]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-264]
	ldr	r2, .L379+120
	lsl	r3, r5, #3
	add	r3, r2, r3
	sub	r2, fp, #268
	ldmia	r2, {r1-r2}
	stm	r3, {r1-r2}
	b	.L318
.L378:
	ldr	r3, .L379+104
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+88
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r2, .L379+8
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+116
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L379+120
	lsl	r3, r5, #3
	add	r3, r2, r3
	stm	r3, {r0-r1}
.L318:
	ldr	r2, .L379+28
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	ldr	r2, .L379+120
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+96
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L379+28
	lsl	r3, r5, #3
	add	r3, r2, r3
	stm	r3, {r0-r1}
	mov	r4, #0
	b	.L320
.L321:
	lsl	r3, r5, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #136
	ldmia	r3, {r6-r7}
	ldr	r2, .L379+120
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, .L379+120
	lsl	r3, r4, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	lsl	r3, r5, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #136
	stm	r3, {r0-r1}
	lsl	r3, r5, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #136
	ldmia	r3, {r0-r1}
	lsl	r3, r4, #2
	add	r3, r3, r5
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #136
	stm	r3, {r0-r1}
	add	r4, r4, #1
.L320:
	cmp	r4, r5
	ble	.L321
	add	r5, r5, #1
.L315:
	ldr	r3, .L379+192
	ldr	r3, [r3]
	cmp	r5, r3
	blt	.L322
	add	r8, r8, #1
.L314:
	ldr	r3, .L379+124
	ldr	r3, [r3]
	cmp	r8, r3
	blt	.L323
	ldr	r3, .L379+24
	ldmia	r3, {r4-r5}
	ldr	r3, .L379+128
	ldr	r2, [r3]
	ldr	r3, .L379+192
	ldr	r3, [r3]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L379+24
	stm	r1, {r2-r3}
	ldr	r3, .L379+20
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-276]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-272]
	ldr	r3, .L379+24
	ldmia	r3, {r0-r1}
	ldr	r2, .L379+132
	ldr	r3, .L379+136
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #276
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L324
	ldr	r3, .L379+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L379+108
	ldr	r3, .L379+112
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L325
.L324:
	cmp	r9, #4
	ble	.L327
	mov	r3, #0
	b	.L350
.L327:
	ldr	r2, .L379+140
	ldr	r3, .L379+144
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-180]
	str	r3, [fp, #-176]
.L325:
	add	r9, r9, #1
	cmp	r9, #64
	ble	.L329
	mov	r3, #1
	b	.L350
.L329:
	ldr	r3, .L379+192
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L330
	sub	r3, fp, #164
	mov	r0, r3
	bl	det
	mov	r3, r0
	cmp	r3, #0
	beq	.L330
	ldr	r3, .L379+148
	ldr	r2, [r3]
	ldr	r3, [fp, #-184]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #1
	str	r2, [r3]
	ldr	r0, .L379+152
	bl	puts
	mov	r3, #0
	b	.L350
.L380:
	.align	2
.L379:
	.word	.LC61
	.word	1072693248
	.word	a
	.word	e3
	.word	1070596096
	.word	s1
	.word	s
	.word	c
	.word	a0
	.word	a1
	.word	a2
	.word	a3
	.word	max1
	.word	t1flag
	.word	t2flag
	.word	exptype
	.word	diffusion
	.word	1076101120
	.word	cp_analysis
	.word	1079574528
	.word	1074790400
	.word	x
	.word	f1
	.word	y
	.word	v
	.word	e2
	.word	f2
	.word	-170230311
	.word	985592528
	.word	e1
	.word	d
	.word	numspec
	.word	nspecused
	.word	-755914244
	.word	1062232653
	.word	-1717986918
	.word	1069128089
	.word	nosolution
	.word	.LC59
	.word	1071644672
	.word	s
	.word	s1
	.word	o
	.word	c
	.word	1246829326
	.word	-981572454
	.word	-900654322
	.word	.LC60
	.word	Nn
	.word	polyflag
	.word	max2
	.word	1075052544
	.word	a
	.word	e3
	.word	1072693248
	.word	.LC61
.L330:
	ldr	r3, .L379+164
	ldmia	r3, {r0-r1}
	ldr	r3, .L379+160
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L331
	ldr	r1, .L379+212
	mov	r2, #0
	ldr	r3, .L379+156
	stm	r1, {r2-r3}
.L331:
	ldr	r3, .L379+160
	ldmia	r3, {r2-r3}
	ldr	r1, .L379+164
	stm	r1, {r2-r3}
	sub	r3, fp, #164
	ldr	r1, .L379+168
	mov	r0, r3
	bl	invertmatrix
	mov	r8, #0
	b	.L333
.L336:
	mov	r5, #0
	b	.L334
.L335:
	ldr	r2, .L379+208
	lsl	r3, r8, #3
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	ldr	r2, .L379+168
	lsl	r3, r8, #2
	add	r3, r3, r5
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, .L379+172
	lsl	r3, r5, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+212
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L379+208
	lsl	r3, r8, #3
	add	r3, r2, r3
	stm	r3, {r0-r1}
	add	r5, r5, #1
.L334:
	ldr	r3, .L379+192
	ldr	r3, [r3]
	cmp	r5, r3
	blt	.L335
	add	r8, r8, #1
.L333:
	ldr	r3, .L379+192
	ldr	r3, [r3]
	cmp	r8, r3
	blt	.L336
	mov	r8, #0
	b	.L337
.L342:
	ldr	r2, .L379+208
	lsl	r3, r8, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r3, #1
	mov	r4, r3
	ldr	r2, .L379+180
	ldr	r3, .L379+176
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L338
	mov	r3, #0
	mov	r4, r3
.L338:
	and	r3, r4, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	bne	.L339
	ldr	r2, .L379+208
	lsl	r3, r8, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r3, #1
	mov	r4, r3
	ldr	r2, .L379+180
	ldr	r3, .L379+184
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L340
	mov	r3, #0
	mov	r4, r3
.L340:
	and	r3, r4, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L341
.L339:
	ldr	r0, .L379+188
	bl	puts
	mov	r3, #1
	b	.L350
.L341:
	add	r8, r8, #1
.L337:
	ldr	r3, .L379+192
	ldr	r3, [r3]
	cmp	r8, r3
	blt	.L342
	ldr	r3, .L379+196
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L343
	ldr	r3, .L379+208
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L343
	ldr	r3, .L379+208
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-284]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-280]
	ldr	r3, .L379+200
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L379+204
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #284
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L343
	ldr	r3, .L379+200
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-292]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-288]
	mov	r2, #0
	ldr	r3, .L379+204
	sub	r1, fp, #292
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+208
	str	r0, [r3, #8]
	str	r1, [r3, #12]
.L343:
	ldr	r3, .L379+212
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L379+216
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L346
	ldr	r3, .L379+212
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L379+212
	stm	r3, {r0-r1}
	ldr	r3, .L379+212
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L379+216
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L346
	ldr	r1, .L379+212
	mov	r2, #0
	ldr	r3, .L379+216
	stm	r1, {r2-r3}
.L346:
	b	.L349
.L350:
	ldr	r2, .L379+220
	ldr	r1, [r2]
	ldr	r2, [fp, #-32]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L351
	bl	__stack_chk_fail
.L351:
	mov	r0, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
	.size	calc_params, .-calc_params
	.section	.rodata
	.align	2
.LC62:
	.ascii	"Four Real Arguments Must Follow 'diffusion'\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	error1, %function
error1:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L382
	ldr	r3, [r3]
	mov	r2, #44
	mov	r1, #1
	ldr	r0, .L382+4
	bl	fwrite
	mov	r0, #1
	bl	exit
.L383:
	.align	2
.L382:
	.word	stderr
	.word	.LC62
	.size	error1, .-error1
	.section	.rodata
	.align	2
.LC63:
	.ascii	"For usage of expfit, see /vnmr/manual/expfit\000"
	.align	2
.LC64:
	.ascii	"T1\000"
	.align	2
.LC65:
	.ascii	"T2\000"
	.align	2
.LC66:
	.ascii	"kinetics\000"
	.align	2
.LC67:
	.ascii	"increment\000"
	.align	2
.LC68:
	.ascii	"diffusion\000"
	.align	2
.LC69:
	.ascii	"poly0\000"
	.align	2
.LC70:
	.ascii	"poly1\000"
	.align	2
.LC71:
	.ascii	"poly2\000"
	.align	2
.LC72:
	.ascii	"poly3\000"
	.align	2
.LC73:
	.ascii	"exp\000"
	.align	2
.LC74:
	.ascii	"list\000"
	.align	2
.LC75:
	.ascii	"regression\000"
	.align	2
.LC76:
	.ascii	"contact_time\000"
	.align	2
.LC77:
	.ascii	"cp_analysis\000"
	.align	2
.LC78:
	.ascii	"corr\000"
	.align	2
.LC79:
	.ascii	"/\000"
	.align	2
.LC80:
	.ascii	"Four Real Arguments Must Follow 'kinetics' or 'incr"
	.ascii	"ement'\000"
	.align	2
.LC81:
	.ascii	"Mean of Data\000"
	.align	2
.LC82:
	.ascii	"Linear\000"
	.align	2
.LC83:
	.ascii	"Quadratic\000"
	.align	2
.LC84:
	.ascii	"Cubic\000"
	.align	2
.LC85:
	.ascii	"Two component diffusion\000"
	.align	2
.LC86:
	.ascii	"\012Contact time\000"
	.align	2
.LC87:
	.ascii	"Exponential\000"
	.align	2
.LC88:
	.ascii	" data analysis:\000"
	.align	2
.LC89:
	.ascii	"expfit: not enough spectra, at least %1d are needed"
	.ascii	".\012\000"
	.align	2
.LC90:
	.ascii	"expfit: no lines in input\000"
	.align	2
.LC91:
	.ascii	"analyze.out\000"
	.align	2
.LC92:
	.ascii	"w+\000"
	.align	2
.LC93:
	.ascii	"expfit: cannot open file %s\012\000"
	.align	2
.LC94:
	.ascii	"exp %d regression\012\000"
	.align	2
.LC95:
	.ascii	"exp %d\012\000"
	.align	2
.LC96:
	.ascii	"%g  %g  %g  %g\012\000"
	.align	2
.LC97:
	.ascii	"%5d %5d %s %s\012\000"
	.align	2
.LC98:
	.ascii	"%5d %5d\012\000"
	.align	2
.LC99:
	.ascii	"Exponential Data Analysis\000"
	.align	2
.LC100:
	.ascii	"Data with Mean\000"
	.align	2
.LC101:
	.ascii	"Linear Data Analysis\000"
	.align	2
.LC102:
	.ascii	"Diffusion (Ln(Amplitude) vs (Square(Gradient))\000"
	.align	2
.LC103:
	.ascii	"Quadratic Data Analysis\000"
	.align	2
.LC104:
	.ascii	"Diffusion Measurement\000"
	.align	2
.LC105:
	.ascii	"Cubic Data Analysis\000"
	.align	2
.LC106:
	.ascii	"Kinetics Measurement\000"
	.align	2
.LC107:
	.ascii	"T1 Exponential Data Analysis\000"
	.align	2
.LC108:
	.ascii	"T2 Exponential Data Analysis\000"
	.align	2
.LC109:
	.ascii	"Contact Time Data Analysis\000"
	.align	2
.LC110:
	.ascii	"%s\012\000"
	.align	2
.LC111:
	.ascii	"      NEXT   %12d\012\000"
	.align	2
.LC112:
	.ascii	"%d %12g %12g %12g\000"
	.align	2
.LC113:
	.ascii	" %12g\000"
	.align	2
.LC114:
	.ascii	"Correlation Table:\000"
	.align	2
.LC115:
	.ascii	"%10.4f\000"
	.align	2
.LC116:
	.ascii	"%10.4f\012\000"
	.align	2
.LC117:
	.ascii	"%12g %12g\012\000"
	.align	2
.LC118:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 448
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #472
	str	r0, [fp, #-464]
	str	r1, [fp, #-468]
	ldr	r3, .L505
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-440]
	b	.L385
.L386:
	ldr	r2, .L505+4
	ldr	r3, [fp, #-440]
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	ldr	r2, .L505+8
	ldr	r3, [fp, #-440]
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	ldr	r3, [fp, #-440]
	add	r3, r3, #1
	str	r3, [fp, #-440]
.L385:
	ldr	r3, [fp, #-440]
	cmp	r3, #127
	ble	.L386
	ldr	r3, .L505+12
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+16
	mov	r2, #0
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-448]
	ldr	r3, .L505+20
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+32
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+36
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+40
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+44
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+48
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+52
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+56
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+60
	mov	r2, #0
	str	r2, [r3]
	mov	r3, #1
	str	r3, [fp, #-456]
	ldr	r1, .L505+64
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	mov	r3, #0
	strb	r3, [fp, #-288]
	ldr	r3, [fp, #-464]
	cmp	r3, #1
	bgt	.L388
	ldr	r0, .L505+68
	bl	puts
	mov	r0, #1
	bl	exit
.L419:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+72
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L389
	ldr	r3, .L505+20
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #0
	str	r2, [r3]
	b	.L390
.L389:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+76
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L391
	ldr	r3, .L505+24
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+20
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #0
	str	r2, [r3]
	b	.L390
.L391:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+80
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L392
	ldr	r3, .L505+28
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+20
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #2
	str	r2, [r3]
	b	.L390
.L392:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+84
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L393
	ldr	r3, .L505+40
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+20
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #1
	str	r2, [r3]
	b	.L390
.L393:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+88
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L394
	ldr	r3, .L505+32
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+20
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #3
	str	r2, [r3]
	ldr	r3, .L505+496
	mov	r2, #3
	str	r2, [r3]
	ldr	r3, [fp, #-448]
	add	r3, r3, #1
	str	r3, [fp, #-448]
	ldr	r3, [fp, #-456]
	add	r3, r3, #4
	ldr	r2, [fp, #-464]
	cmp	r2, r3
	bgt	.L395
	bl	error1
.L395:
	ldr	r3, [fp, #-456]
	add	r3, r3, #1
	str	r3, [fp, #-456]
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	isReal
	mov	r3, r0
	cmp	r3, #0
	beq	.L396
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	stringReal
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L505+92
	stm	r1, {r2-r3}
	b	.L397
.L396:
	bl	error1
.L397:
	ldr	r3, [fp, #-456]
	add	r3, r3, #1
	str	r3, [fp, #-456]
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	isReal
	mov	r3, r0
	cmp	r3, #0
	beq	.L398
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	stringReal
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L505+96
	stm	r1, {r2-r3}
	b	.L399
.L398:
	bl	error1
.L399:
	ldr	r3, [fp, #-456]
	add	r3, r3, #1
	str	r3, [fp, #-456]
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	isReal
	mov	r3, r0
	cmp	r3, #0
	beq	.L400
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	stringReal
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L505+100
	stm	r1, {r2-r3}
	b	.L401
.L400:
	bl	error1
.L401:
	ldr	r3, [fp, #-456]
	add	r3, r3, #1
	str	r3, [fp, #-456]
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	isReal
	mov	r3, r0
	cmp	r3, #0
	beq	.L402
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	stringReal
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L505+104
	stm	r1, {r2-r3}
	b	.L390
.L402:
	bl	error1
	b	.L390
.L394:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+108
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L403
	ldr	r3, .L505+384
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+32
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+20
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #10
	str	r2, [r3]
	ldr	r3, .L505+496
	mov	r2, #1
	str	r2, [r3]
	b	.L390
.L403:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+112
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L404
	ldr	r3, .L505+52
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+32
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+20
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #5
	str	r2, [r3]
	ldr	r3, .L505+496
	mov	r2, #2
	str	r2, [r3]
	b	.L390
.L404:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+116
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L405
	ldr	r3, .L505+56
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+32
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+20
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #6
	str	r2, [r3]
	b	.L390
.L405:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+120
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L406
	ldr	r3, .L505+60
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+32
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+20
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #9
	str	r2, [r3]
	ldr	r3, .L505+496
	mov	r2, #4
	str	r2, [r3]
	b	.L390
.L406:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+124
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L407
	ldr	r3, .L505+316
	mov	r2, #7
	str	r2, [r3]
	ldr	r3, .L505+32
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+20
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+28
	mov	r2, #0
	str	r2, [r3]
	b	.L390
.L407:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+128
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L408
	ldr	r3, .L505+44
	mov	r2, #1
	str	r2, [r3]
	b	.L390
.L408:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+132
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L409
	ldr	r3, .L505+324
	mov	r2, #1
	str	r2, [r3]
	b	.L390
.L409:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+136
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L410
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+140
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L411
.L410:
	ldr	r3, .L505+36
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L505+316
	mov	r2, #8
	str	r2, [r3]
	ldr	r3, .L505+496
	mov	r2, #4
	str	r2, [r3]
	b	.L390
.L411:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #99
	beq	.L412
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L505+144
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L413
.L412:
	ldr	r3, .L505+48
	mov	r2, #1
	str	r2, [r3]
	b	.L390
.L413:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #47
	bne	.L414
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r2, [r3]
	sub	r3, fp, #288
	mov	r1, r2
	mov	r0, r3
	bl	strcpy
	sub	r3, fp, #288
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #288
	add	r3, r3, r2
	ldr	r2, .L505+148
	mov	r0, r3
	mov	r1, r2
	mov	r3, #2
	mov	r2, r3
	bl	memcpy
	b	.L390
.L414:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r4, [r3]
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	add	r3, r4, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #93
	beq	.L415
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r4, [r3]
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	add	r3, r4, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #58
	bne	.L416
.L415:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r2, [r3]
	sub	r3, fp, #288
	mov	r1, r2
	mov	r0, r3
	bl	strcpy
	b	.L390
.L416:
	ldr	r3, .L505+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L390
	ldr	r3, [fp, #-448]
	add	r3, r3, #1
	str	r3, [fp, #-448]
	ldr	r3, [fp, #-448]
	cmp	r3, #1
	bne	.L417
	ldr	r3, [fp, #-456]
	add	r3, r3, #3
	ldr	r2, [fp, #-464]
	cmp	r2, r3
	bgt	.L417
	ldr	r0, .L505+152
	bl	puts
	mov	r0, #1
	bl	exit
.L417:
	ldr	r3, [fp, #-456]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-468]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	stringReal
	str	r0, [fp, #-428]
	str	r1, [fp, #-424]
	ldr	r3, [fp, #-448]
	cmp	r3, #0
	ble	.L418
	ldr	r3, [fp, #-448]
	cmp	r3, #3
	bgt	.L418
	ldr	r3, .L505+64
	ldmia	r3, {r0-r1}
	sub	r3, fp, #428
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L505+64
	stm	r1, {r2-r3}
	b	.L390
.L418:
	ldr	r3, [fp, #-448]
	cmp	r3, #4
	bne	.L390
	ldr	r3, .L505+64
	ldmia	r3, {r0-r1}
	sub	r3, fp, #428
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L505+64
	stm	r1, {r2-r3}
.L390:
	ldr	r3, [fp, #-456]
	add	r3, r3, #1
	str	r3, [fp, #-456]
.L388:
	ldr	r2, [fp, #-456]
	ldr	r3, [fp, #-464]
	cmp	r2, r3
	blt	.L419
	ldr	r3, .L505+384
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L420
	ldr	r3, .L505+52
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L420
	ldr	r3, .L505+56
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L420
	ldr	r3, .L505+60
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L420
	ldr	r3, .L505+36
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L420
	ldr	r3, .L505+32
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L421
.L420:
	mov	r3, #1
	b	.L422
.L421:
	mov	r3, #0
.L422:
	ldr	r2, .L505+312
	str	r3, [r2]
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L423
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L423
	ldr	r3, .L505+316
	mov	r2, #7
	str	r2, [r3]
.L423:
	ldr	r3, .L505+384
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L424
	ldr	r0, .L505+156
	bl	puts
	b	.L425
.L424:
	ldr	r3, .L505+52
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L426
	ldr	r0, .L505+160
	bl	printf
	b	.L427
.L426:
	ldr	r3, .L505+56
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L428
	ldr	r0, .L505+164
	bl	printf
	b	.L427
.L428:
	ldr	r3, .L505+60
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L429
	ldr	r0, .L505+168
	bl	printf
	b	.L427
.L429:
	ldr	r3, .L505+32
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L430
	ldr	r0, .L505+172
	bl	printf
	b	.L427
.L430:
	ldr	r3, .L505+36
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L431
	ldr	r0, .L505+176
	bl	printf
	b	.L427
.L431:
	ldr	r0, .L505+180
	bl	printf
.L427:
	ldr	r0, .L505+184
	bl	puts
.L425:
	ldr	r3, .L505+36
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L432
	mov	r0, #10
	bl	putchar
.L432:
	bl	readparams
	mov	r3, r0
	cmp	r3, #0
	beq	.L433
	ldr	r3, .L505+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L434
	ldr	r3, .L505+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L434:
	ldr	r3, .L505+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L435
	ldr	r3, .L505+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L435:
	mov	r3, #1
	b	.L503
.L433:
	ldr	r3, .L505+328
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L437
	ldr	r1, .L505+320
	ldr	r0, .L505+328
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L437
	ldr	r0, .L505+328
	bl	puts
.L437:
	mov	r0, #10
	bl	putchar
	bl	prepare_workspace
	mov	r3, r0
	cmp	r3, #0
	beq	.L438
	bl	freemem
	mov	r3, #1
	b	.L503
.L438:
	ldr	r3, .L505+512
	ldr	r3, [r3]
	ldr	r2, .L505+188
	str	r3, [r2]
	ldr	r3, .L505+188
	ldr	r2, [r3]
	ldr	r3, .L505+496
	ldr	r3, [r3]
	cmp	r2, r3
	bgt	.L439
	ldr	r3, .L505+496
	ldr	r3, [r3]
	add	r3, r3, #1
	mov	r1, r3
	ldr	r0, .L505+192
	bl	printf
	bl	freemem
	mov	r3, #1
	b	.L503
.L439:
	ldr	r3, .L505+524
	ldr	r3, [r3]
	cmp	r3, #0
	bgt	.L440
	ldr	r0, .L505+196
	bl	puts
	bl	freemem
	mov	r3, #1
	b	.L503
.L440:
	ldr	r1, .L505+200
	ldr	r2, .L505+204
	ldr	r3, .L505+208
	stm	r1, {r2-r3}
	ldr	r3, .L505+200
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L505+488
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L505+212
	stm	r1, {r2-r3}
	sub	r3, fp, #288
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #288
	add	r3, r3, r2
	ldr	r2, .L505+216
	mov	r0, r3
	mov	r1, r2
	mov	r3, #12
	mov	r2, r3
	bl	memcpy
	sub	r3, fp, #288
	ldr	r1, .L505+220
	mov	r0, r3
	bl	fopen
	str	r0, [fp, #-432]
	ldr	r3, [fp, #-432]
	cmp	r3, #0
	bne	.L441
	sub	r3, fp, #288
	mov	r1, r3
	ldr	r0, .L505+224
	bl	printf
	bl	freemem
	mov	r3, #1
	b	.L503
.L441:
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L442
	ldr	r3, .L505+316
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r1, .L505+228
	ldr	r0, [fp, #-432]
	bl	fprintf
	b	.L443
.L442:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r1, .L505+232
	ldr	r0, [fp, #-432]
	bl	fprintf
.L443:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L444
	ldr	r3, .L505+92
	ldmia	r3, {r3-r4}
	str	r3, [fp, #-476]
	str	r4, [fp, #-472]
	ldr	r3, .L505+96
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+100
	ldmia	r1, {r0-r1}
	ldr	ip, .L505+104
	ldmia	ip, {r4-r5}
	str	r4, [sp, #16]
	str	r5, [sp, #20]
	str	r0, [sp, #8]
	str	r1, [sp, #12]
	stm	sp, {r2-r3}
	sub	r3, fp, #476
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+236
	ldr	r0, [fp, #-432]
	bl	fprintf
.L444:
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L445
	ldr	r3, .L505+524
	ldr	r2, [r3]
	ldr	r3, .L505+240
	ldr	r3, [r3]
	ldr	r1, .L505+244
	str	r1, [sp, #4]
	ldr	r1, .L505+248
	str	r1, [sp]
	ldr	r1, .L505+252
	ldr	r0, [fp, #-432]
	bl	fprintf
	b	.L446
.L445:
	ldr	r3, .L505+524
	ldr	r2, [r3]
	ldr	r3, .L505+512
	ldr	r3, [r3]
	ldr	r1, .L505+256
	ldr	r0, [fp, #-432]
	bl	fprintf
.L446:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #7
	bne	.L447
	sub	r3, fp, #416
	ldr	r2, .L505+260
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1, r2}
	stmia	ip!, {r0, r1}
	strh	r2, [ip]	@ movhi
	b	.L448
.L447:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #10
	bne	.L449
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L448
	sub	r3, fp, #416
	ldr	r2, .L505+264
	mov	ip, r3
	mov	r3, r2
	ldm	r3, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2}
	strh	r3, [ip]	@ movhi
	add	ip, ip, #2
	lsr	r3, r3, #16
	strb	r3, [ip]
	b	.L448
.L506:
	.align	2
.L505:
	.word	.LC118
	.word	xa
	.word	ya
	.word	x
	.word	y
	.word	t1flag
	.word	t2flag
	.word	kineticflag
	.word	diffusion
	.word	cp_analysis
	.word	incrflag
	.word	listflag
	.word	corrflag
	.word	poly1
	.word	poly2
	.word	poly3
	.word	offset
	.word	.LC63
	.word	.LC64
	.word	.LC65
	.word	.LC66
	.word	.LC67
	.word	.LC68
	.word	D1
	.word	C0
	.word	C1
	.word	C2
	.word	.LC69
	.word	.LC70
	.word	.LC71
	.word	.LC72
	.word	.LC73
	.word	.LC74
	.word	.LC75
	.word	.LC76
	.word	.LC77
	.word	.LC78
	.word	.LC79
	.word	.LC80
	.word	.LC81
	.word	.LC82
	.word	.LC83
	.word	.LC84
	.word	.LC85
	.word	.LC86
	.word	.LC87
	.word	.LC88
	.word	nspecused
	.word	.LC89
	.word	.LC90
	.word	e1
	.word	1202590843
	.word	1064598241
	.word	e2
	.word	.LC91
	.word	.LC92
	.word	.LC93
	.word	.LC94
	.word	.LC95
	.word	.LC96
	.word	maxnumspec
	.word	yaxis
	.word	xaxis
	.word	.LC97
	.word	.LC98
	.word	.LC99
	.word	.LC100
	.word	.LC101
	.word	.LC102
	.word	.LC103
	.word	.LC104
	.word	.LC105
	.word	.LC106
	.word	t1flag
	.word	.LC107
	.word	t2flag
	.word	.LC108
	.word	.LC109
	.word	polyflag
	.word	exptype
	.word	.LC10
	.word	regression
	.word	s0
	.word	sy
	.word	.LC110
	.word	NEXTflag
	.word	.LC111
	.word	xa
	.word	ya
	.word	nosolution
	.word	converge
	.word	line_index
	.word	stddev
	.word	.LC112
	.word	.LC113
	.word	sigma
	.word	poly0
	.word	s
	.word	err0
	.word	err2
	.word	err
	.word	err3
	.word	aa0
	.word	a1
	.word	tau
	.word	aa2
	.word	poly3
	.word	cp_analysis
	.word	a3
	.word	aa3
	.word	incrflag
	.word	kineticflag
	.word	a2
	.word	a0
	.word	intercept
	.word	diffusion
	.word	poly1
	.word	poly2
	.word	.LC114
	.word	.LC8
	.word	o
	.word	.LC115
	.word	1072693248
	.word	.LC116
	.word	Nn
	.word	x
	.word	y
	.word	.LC117
	.word	numspec
	.word	listflag
	.word	spec_count
	.word	numlines
	.word	.LC118
.L449:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #5
	bne	.L450
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L451
	sub	r3, fp, #416
	ldr	r2, .L505+268
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1}
	str	r0, [ip]
	add	ip, ip, #4
	strb	r1, [ip]
	b	.L448
.L451:
	sub	r3, fp, #416
	ldr	r2, .L505+272
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2}
	strh	r3, [ip]	@ movhi
	add	ip, ip, #2
	lsr	r3, r3, #16
	strb	r3, [ip]
	b	.L448
.L450:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L452
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #6
	bne	.L453
.L452:
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L454
	sub	r3, fp, #416
	ldr	r2, .L505+276
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1}
	stm	ip, {r0, r1}
	b	.L448
.L454:
	sub	r3, fp, #416
	ldr	r2, .L505+280
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1}
	str	r0, [ip]
	add	ip, ip, #4
	strh	r1, [ip]	@ movhi
	b	.L448
.L453:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #9
	bne	.L456
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L448
	sub	r3, fp, #416
	ldr	r2, .L505+284
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldr	r3, [lr]
	str	r3, [ip]
	b	.L448
.L456:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #2
	beq	.L457
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L458
.L457:
	sub	r3, fp, #416
	ldr	r2, .L505+288
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1}
	str	r0, [ip]
	add	ip, ip, #4
	strb	r1, [ip]
	b	.L448
.L458:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L459
	ldr	r3, .L505+292
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L460
	sub	r3, fp, #416
	ldr	r2, .L505+296
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2}
	strb	r3, [ip]
	b	.L448
.L460:
	ldr	r3, .L505+300
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L448
	sub	r3, fp, #416
	ldr	r2, .L505+304
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2}
	strb	r3, [ip]
	b	.L448
.L459:
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #8
	bne	.L461
	sub	r3, fp, #416
	ldr	r2, .L505+308
	mov	ip, r3
	mov	lr, r2
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1, r2}
	stmia	ip!, {r0, r1}
	strh	r2, [ip]	@ movhi
	add	ip, ip, #2
	lsr	r3, r2, #16
	strb	r3, [ip]
	b	.L448
.L461:
	ldr	r3, .L505+312
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L462
	ldr	r3, .L505+316
	ldr	r3, [r3]
	cmp	r3, #7
	bne	.L448
.L462:
	ldr	r3, .L505+328
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L448
	sub	r3, fp, #416
	ldr	r1, .L505+328
	mov	r0, r3
	bl	strcpy
	ldr	r3, .L505+328
	mov	r2, #0
	strb	r2, [r3]
.L448:
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L463
	ldrb	r3, [fp, #-416]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L463
	sub	r3, fp, #416
	ldr	r2, .L505+320
	ldm	r2, {r0, r1, r2}
	stmia	r3!, {r0, r1}
	strb	r2, [r3]
.L463:
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L464
	sub	r3, fp, #416
	ldr	r1, .L505+320
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L465
.L464:
	sub	r3, fp, #416
	mov	r2, r3
	ldr	r1, .L505+336
	ldr	r0, [fp, #-432]
	bl	fprintf
.L465:
	ldr	r3, .L505+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L466
	ldr	r2, .L505+328
	ldr	r1, .L505+336
	ldr	r0, [fp, #-432]
	bl	fprintf
	ldr	r2, .L505+332
	ldr	r1, .L505+336
	ldr	r0, [fp, #-432]
	bl	fprintf
.L466:
	mov	r3, #0
	str	r3, [fp, #-452]
	b	.L467
.L498:
	ldr	r1, [fp, #-432]
	mov	r0, #10
	bl	fputc
	ldr	r3, .L505+340
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L468
	ldr	r2, .L505+520
	ldr	r3, [fp, #-452]
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, .L505+512
	str	r3, [r2]
	ldr	r3, .L505+512
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r1, .L505+344
	ldr	r0, [fp, #-432]
	bl	fprintf
.L468:
	mov	r3, #0
	str	r3, [fp, #-440]
	b	.L469
.L470:
	ldr	r2, .L505+348
	ldr	r3, [fp, #-452]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-440]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, .L505+500
	ldr	r1, [r3]
	ldr	r3, [fp, #-440]
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r2, .L505+352
	ldr	r3, [fp, #-452]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-440]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, .L505+504
	ldr	r1, [r3]
	ldr	r3, [fp, #-440]
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-440]
	add	r3, r3, #1
	str	r3, [fp, #-440]
.L469:
	ldr	r3, .L505+512
	ldr	r3, [r3]
	ldr	r2, [fp, #-440]
	cmp	r2, r3
	blt	.L470
	bl	initial_values
	ldr	r3, .L505+356
	ldr	r2, [r3]
	ldr	r3, [fp, #-452]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L505+384
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L471
	ldr	r0, [fp, #-452]
	bl	calc_params
	mov	r3, r0
	cmp	r3, #0
	beq	.L471
	ldr	r3, .L505+360
	ldr	r2, [r3]
	ldr	r3, [fp, #-452]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3]
	b	.L472
.L471:
	ldr	r3, .L505+360
	ldr	r2, [r3]
	ldr	r3, [fp, #-452]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #1
	str	r2, [r3]
.L472:
	ldr	r3, .L505+496
	ldr	r3, [r3]
	cmp	r3, #2
	bgt	.L473
	ldr	r1, .L505+448
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L505+400
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #16]
	str	r3, [r1, #20]
.L473:
	ldr	r2, .L505+364
	ldr	r3, [fp, #-452]
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-444]
	ldr	r3, [fp, #-444]
	cmp	r3, #0
	bne	.L474
	ldr	r3, [fp, #-452]
	add	r3, r3, #1
	str	r3, [fp, #-444]
.L474:
	ldr	r3, .L505+388
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+368
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, .L505+384
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L475
	ldr	r3, .L505+368
	ldr	r2, [r3]
	ldr	r3, [fp, #-452]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L505+412
	stm	r1, {r2-r3}
	ldr	r1, .L505+400
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #8]
	str	r3, [r1, #12]
.L475:
	ldr	r3, .L505+452
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+412
	ldmia	r1, {r0-r1}
	ldr	ip, .L505+448
	ldmia	ip, {r4-r5}
	str	r4, [sp, #16]
	str	r5, [sp, #20]
	str	r0, [sp, #8]
	str	r1, [sp, #12]
	stm	sp, {r2-r3}
	ldr	r2, [fp, #-444]
	ldr	r1, .L505+372
	ldr	r0, [fp, #-432]
	bl	fprintf
	ldr	r3, .L505+428
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L476
	ldr	r3, .L505+424
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L477
.L476:
	ldr	r3, .L505+432
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+376
	ldr	r0, [fp, #-432]
	bl	fprintf
.L477:
	ldr	r1, [fp, #-432]
	mov	r0, #10
	bl	fputc
	ldr	r3, .L505+428
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L478
	ldr	r3, .L505+388
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+380
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	b	.L479
.L478:
	ldr	r3, .L505+384
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L479
	ldr	r3, .L505+480
	add	r3, r3, #40
	ldmia	r3, {r2-r3}
	mov	r6, r2
	bic	r7, r3, #-2147483648
	mov	r0, r6
	mov	r1, r7
	bl	sqrt
	ldr	r3, .L505+388
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L505+380
	ldr	r2, [r3]
	ldr	r3, [fp, #-452]
	lsl	r3, r3, #2
	add	r4, r2, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
.L479:
	ldr	r3, .L505+384
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L480
	mov	r3, #0
	str	r3, [fp, #-440]
	b	.L481
.L482:
	ldr	r1, .L505+480
	ldr	r2, [fp, #-440]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r8, r2
	bic	r9, r3, #-2147483648
	mov	r0, r8
	mov	r1, r9
	bl	sqrt
	ldr	r3, .L505+388
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L505+400
	ldr	r1, [fp, #-440]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-440]
	add	r3, r3, #1
	str	r3, [fp, #-440]
.L481:
	ldr	r3, .L505+496
	ldr	r3, [r3]
	ldr	r2, [fp, #-440]
	cmp	r2, r3
	blt	.L482
.L480:
	ldr	r3, .L505+400
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+392
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, .L505+400
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+396
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, .L505+496
	ldr	r3, [r3]
	cmp	r3, #4
	bne	.L483
	ldr	r3, .L505+400
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+404
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
.L483:
	ldr	r3, .L505+452
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+408
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, .L505+412
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+416
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, .L505+448
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+420
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, .L505+424
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L484
	ldr	r3, .L505+428
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L485
.L484:
	ldr	r3, .L505+432
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+436
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
.L485:
	ldr	r3, .L505+440
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L486
	ldr	r3, .L505+452
	ldmia	r3, {r0-r1}
	ldr	r3, .L505+448
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L505+456
	ldr	r2, [r3]
	ldr	r3, [fp, #-452]
	lsl	r3, r3, #2
	add	r4, r2, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	b	.L487
.L486:
	ldr	r3, .L505+444
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L488
	ldr	r3, .L505+448
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+456
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
	b	.L487
.L488:
	ldr	r3, .L505+452
	ldmia	r3, {r2-r3}
	ldr	r1, .L505+456
	ldr	r0, [r1]
	ldr	r1, [fp, #-452]
	lsl	r1, r1, #2
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4]	@ float
.L487:
	ldr	r3, .L505+496
	ldr	r3, [r3]
	cmp	r3, #1
	ble	.L489
	ldr	r3, .L505+524
	ldr	r3, [r3]
	cmp	r3, #2
	bgt	.L489
	ldr	r3, .L505+516
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L489
	ldr	r3, .L505+460
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L490
	ldr	r3, .L505+464
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L490
	ldr	r3, .L505+468
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L489
.L490:
	mov	r3, #0
	str	r3, [fp, #-440]
	b	.L491
.L495:
	ldr	r3, [fp, #-440]
	cmp	r3, #0
	bne	.L492
	ldr	r0, .L505+472
	bl	puts
.L492:
	ldr	r1, [fp, #-440]
	ldr	r0, .L505+476
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-436]
	b	.L493
.L494:
	ldr	r1, .L505+480
	ldr	r3, [fp, #-440]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-436]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L505+480
	ldr	r2, [fp, #-440]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	ldr	ip, .L505+480
	ldr	r2, [fp, #-436]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L505+484
	bl	printf
	ldr	r3, [fp, #-436]
	add	r3, r3, #1
	str	r3, [fp, #-436]
.L493:
	ldr	r2, [fp, #-436]
	ldr	r3, [fp, #-440]
	cmp	r2, r3
	blt	.L494
	mov	r2, #0
	ldr	r3, .L505+488
	ldr	r0, .L505+492
	bl	printf
	ldr	r3, [fp, #-440]
	add	r3, r3, #1
	str	r3, [fp, #-440]
.L491:
	ldr	r3, .L505+496
	ldr	r3, [r3]
	ldr	r2, [fp, #-440]
	cmp	r2, r3
	blt	.L495
	mov	r0, #10
	bl	putchar
.L489:
	mov	r3, #0
	str	r3, [fp, #-436]
	b	.L496
.L497:
	ldr	r3, .L505+500
	ldr	r2, [r3]
	ldr	r3, [fp, #-436]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L505+504
	ldr	r2, [r3]
	ldr	r3, [fp, #-436]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r1, .L505+508
	ldr	r0, [fp, #-432]
	bl	fprintf
	ldr	r3, [fp, #-436]
	add	r3, r3, #1
	str	r3, [fp, #-436]
.L496:
	ldr	r3, .L505+512
	ldr	r3, [r3]
	ldr	r2, [fp, #-436]
	cmp	r2, r3
	blt	.L497
	ldr	r3, [fp, #-452]
	add	r3, r3, #1
	str	r3, [fp, #-452]
.L467:
	ldr	r3, .L505+524
	ldr	r3, [r3]
	ldr	r2, [fp, #-452]
	cmp	r2, r3
	blt	.L498
	ldr	r0, [fp, #-432]
	bl	fclose
	bl	writeparams
	mov	r3, r0
	cmp	r3, #0
	beq	.L499
	ldr	r3, .L505+516
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L500
	mov	r3, #0
	str	r3, [fp, #-452]
	b	.L501
.L502:
	ldr	r2, .L505+520
	ldr	r3, [fp, #-452]
	ldr	r3, [r2, r3, lsl #2]
	mov	r1, r3
	ldr	r0, [fp, #-452]
	bl	printpeakdata
	ldr	r3, [fp, #-452]
	add	r3, r3, #1
	str	r3, [fp, #-452]
.L501:
	ldr	r3, .L505+524
	ldr	r3, [r3]
	ldr	r2, [fp, #-452]
	cmp	r2, r3
	blt	.L502
.L500:
	bl	freemem
	mov	r3, #1
	b	.L503
.L499:
	bl	freemem
	mov	r3, #0
.L503:
	ldr	r2, .L505+528
	ldr	r1, [r2]
	ldr	r2, [fp, #-32]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L504
	bl	__stack_chk_fail
.L504:
	mov	r0, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
	.size	main, .-main
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
