	.file	"140765490.c"
	.intel_syntax noprefix
	.text
	.globl	grid_points
	.bss
	.align 8
	.type	grid_points, @object
	.size	grid_points, 12
grid_points:
	.zero	12
	.globl	timeron
	.align 4
	.type	timeron, @object
	.size	timeron, 4
timeron:
	.zero	4
	.globl	fjac
	.align 32
	.type	fjac, @object
	.size	fjac, 5000
fjac:
	.zero	5000
	.globl	njac
	.align 32
	.type	njac, @object
	.size	njac, 5000
njac:
	.zero	5000
	.globl	lhs
	.align 32
	.type	lhs, @object
	.size	lhs, 15000
lhs:
	.zero	15000
	.globl	tmp1
	.align 8
	.type	tmp1, @object
	.size	tmp1, 8
tmp1:
	.zero	8
	.globl	tmp2
	.align 8
	.type	tmp2, @object
	.size	tmp2, 8
tmp2:
	.zero	8
	.globl	tmp3
	.align 8
	.type	tmp3, @object
	.size	tmp3, 8
tmp3:
	.zero	8
	.globl	tx1
	.align 8
	.type	tx1, @object
	.size	tx1, 8
tx1:
	.zero	8
	.globl	tx2
	.align 8
	.type	tx2, @object
	.size	tx2, 8
tx2:
	.zero	8
	.globl	tx3
	.align 8
	.type	tx3, @object
	.size	tx3, 8
tx3:
	.zero	8
	.globl	ty1
	.align 8
	.type	ty1, @object
	.size	ty1, 8
ty1:
	.zero	8
	.globl	ty2
	.align 8
	.type	ty2, @object
	.size	ty2, 8
ty2:
	.zero	8
	.globl	ty3
	.align 8
	.type	ty3, @object
	.size	ty3, 8
ty3:
	.zero	8
	.globl	tz1
	.align 8
	.type	tz1, @object
	.size	tz1, 8
tz1:
	.zero	8
	.globl	tz2
	.align 8
	.type	tz2, @object
	.size	tz2, 8
tz2:
	.zero	8
	.globl	tz3
	.align 8
	.type	tz3, @object
	.size	tz3, 8
tz3:
	.zero	8
	.globl	dx1
	.align 8
	.type	dx1, @object
	.size	dx1, 8
dx1:
	.zero	8
	.globl	dx2
	.align 8
	.type	dx2, @object
	.size	dx2, 8
dx2:
	.zero	8
	.globl	dx3
	.align 8
	.type	dx3, @object
	.size	dx3, 8
dx3:
	.zero	8
	.globl	dx4
	.align 8
	.type	dx4, @object
	.size	dx4, 8
dx4:
	.zero	8
	.globl	dx5
	.align 8
	.type	dx5, @object
	.size	dx5, 8
dx5:
	.zero	8
	.globl	dy1
	.align 8
	.type	dy1, @object
	.size	dy1, 8
dy1:
	.zero	8
	.globl	dy2
	.align 8
	.type	dy2, @object
	.size	dy2, 8
dy2:
	.zero	8
	.globl	dy3
	.align 8
	.type	dy3, @object
	.size	dy3, 8
dy3:
	.zero	8
	.globl	dy4
	.align 8
	.type	dy4, @object
	.size	dy4, 8
dy4:
	.zero	8
	.globl	dy5
	.align 8
	.type	dy5, @object
	.size	dy5, 8
dy5:
	.zero	8
	.globl	dz1
	.align 8
	.type	dz1, @object
	.size	dz1, 8
dz1:
	.zero	8
	.globl	dz2
	.align 8
	.type	dz2, @object
	.size	dz2, 8
dz2:
	.zero	8
	.globl	dz3
	.align 8
	.type	dz3, @object
	.size	dz3, 8
dz3:
	.zero	8
	.globl	dz4
	.align 8
	.type	dz4, @object
	.size	dz4, 8
dz4:
	.zero	8
	.globl	dz5
	.align 8
	.type	dz5, @object
	.size	dz5, 8
dz5:
	.zero	8
	.globl	dssp
	.align 8
	.type	dssp, @object
	.size	dssp, 8
dssp:
	.zero	8
	.globl	dt
	.align 8
	.type	dt, @object
	.size	dt, 8
dt:
	.zero	8
	.globl	ce
	.align 32
	.type	ce, @object
	.size	ce, 520
ce:
	.zero	520
	.globl	dxmax
	.align 8
	.type	dxmax, @object
	.size	dxmax, 8
dxmax:
	.zero	8
	.globl	dymax
	.align 8
	.type	dymax, @object
	.size	dymax, 8
dymax:
	.zero	8
	.globl	dzmax
	.align 8
	.type	dzmax, @object
	.size	dzmax, 8
dzmax:
	.zero	8
	.globl	xxcon1
	.align 8
	.type	xxcon1, @object
	.size	xxcon1, 8
xxcon1:
	.zero	8
	.globl	xxcon2
	.align 8
	.type	xxcon2, @object
	.size	xxcon2, 8
xxcon2:
	.zero	8
	.globl	xxcon3
	.align 8
	.type	xxcon3, @object
	.size	xxcon3, 8
xxcon3:
	.zero	8
	.globl	xxcon4
	.align 8
	.type	xxcon4, @object
	.size	xxcon4, 8
xxcon4:
	.zero	8
	.globl	xxcon5
	.align 8
	.type	xxcon5, @object
	.size	xxcon5, 8
xxcon5:
	.zero	8
	.globl	dx1tx1
	.align 8
	.type	dx1tx1, @object
	.size	dx1tx1, 8
dx1tx1:
	.zero	8
	.globl	dx2tx1
	.align 8
	.type	dx2tx1, @object
	.size	dx2tx1, 8
dx2tx1:
	.zero	8
	.globl	dx3tx1
	.align 8
	.type	dx3tx1, @object
	.size	dx3tx1, 8
dx3tx1:
	.zero	8
	.globl	dx4tx1
	.align 8
	.type	dx4tx1, @object
	.size	dx4tx1, 8
dx4tx1:
	.zero	8
	.globl	dx5tx1
	.align 8
	.type	dx5tx1, @object
	.size	dx5tx1, 8
dx5tx1:
	.zero	8
	.globl	yycon1
	.align 8
	.type	yycon1, @object
	.size	yycon1, 8
yycon1:
	.zero	8
	.globl	yycon2
	.align 8
	.type	yycon2, @object
	.size	yycon2, 8
yycon2:
	.zero	8
	.globl	yycon3
	.align 8
	.type	yycon3, @object
	.size	yycon3, 8
yycon3:
	.zero	8
	.globl	yycon4
	.align 8
	.type	yycon4, @object
	.size	yycon4, 8
yycon4:
	.zero	8
	.globl	yycon5
	.align 8
	.type	yycon5, @object
	.size	yycon5, 8
yycon5:
	.zero	8
	.globl	dy1ty1
	.align 8
	.type	dy1ty1, @object
	.size	dy1ty1, 8
dy1ty1:
	.zero	8
	.globl	dy2ty1
	.align 8
	.type	dy2ty1, @object
	.size	dy2ty1, 8
dy2ty1:
	.zero	8
	.globl	dy3ty1
	.align 8
	.type	dy3ty1, @object
	.size	dy3ty1, 8
dy3ty1:
	.zero	8
	.globl	dy4ty1
	.align 8
	.type	dy4ty1, @object
	.size	dy4ty1, 8
dy4ty1:
	.zero	8
	.globl	dy5ty1
	.align 8
	.type	dy5ty1, @object
	.size	dy5ty1, 8
dy5ty1:
	.zero	8
	.globl	zzcon1
	.align 8
	.type	zzcon1, @object
	.size	zzcon1, 8
zzcon1:
	.zero	8
	.globl	zzcon2
	.align 8
	.type	zzcon2, @object
	.size	zzcon2, 8
zzcon2:
	.zero	8
	.globl	zzcon3
	.align 8
	.type	zzcon3, @object
	.size	zzcon3, 8
zzcon3:
	.zero	8
	.globl	zzcon4
	.align 8
	.type	zzcon4, @object
	.size	zzcon4, 8
zzcon4:
	.zero	8
	.globl	zzcon5
	.align 8
	.type	zzcon5, @object
	.size	zzcon5, 8
zzcon5:
	.zero	8
	.globl	dz1tz1
	.align 8
	.type	dz1tz1, @object
	.size	dz1tz1, 8
dz1tz1:
	.zero	8
	.globl	dz2tz1
	.align 8
	.type	dz2tz1, @object
	.size	dz2tz1, 8
dz2tz1:
	.zero	8
	.globl	dz3tz1
	.align 8
	.type	dz3tz1, @object
	.size	dz3tz1, 8
dz3tz1:
	.zero	8
	.globl	dz4tz1
	.align 8
	.type	dz4tz1, @object
	.size	dz4tz1, 8
dz4tz1:
	.zero	8
	.globl	dz5tz1
	.align 8
	.type	dz5tz1, @object
	.size	dz5tz1, 8
dz5tz1:
	.zero	8
	.globl	dnxm1
	.align 8
	.type	dnxm1, @object
	.size	dnxm1, 8
dnxm1:
	.zero	8
	.globl	dnym1
	.align 8
	.type	dnym1, @object
	.size	dnym1, 8
dnym1:
	.zero	8
	.globl	dnzm1
	.align 8
	.type	dnzm1, @object
	.size	dnzm1, 8
dnzm1:
	.zero	8
	.globl	c1c2
	.align 8
	.type	c1c2, @object
	.size	c1c2, 8
c1c2:
	.zero	8
	.globl	c1c5
	.align 8
	.type	c1c5, @object
	.size	c1c5, 8
c1c5:
	.zero	8
	.globl	c3c4
	.align 8
	.type	c3c4, @object
	.size	c3c4, 8
c3c4:
	.zero	8
	.globl	c1345
	.align 8
	.type	c1345, @object
	.size	c1345, 8
c1345:
	.zero	8
	.globl	conz1
	.align 8
	.type	conz1, @object
	.size	conz1, 8
conz1:
	.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	c3
	.align 8
	.type	c3, @object
	.size	c3, 8
c3:
	.zero	8
	.globl	c4
	.align 8
	.type	c4, @object
	.size	c4, 8
c4:
	.zero	8
	.globl	c5
	.align 8
	.type	c5, @object
	.size	c5, 8
c5:
	.zero	8
	.globl	c4dssp
	.align 8
	.type	c4dssp, @object
	.size	c4dssp, 8
c4dssp:
	.zero	8
	.globl	c5dssp
	.align 8
	.type	c5dssp, @object
	.size	c5dssp, 8
c5dssp:
	.zero	8
	.globl	dtdssp
	.align 8
	.type	dtdssp, @object
	.size	dtdssp, 8
dtdssp:
	.zero	8
	.globl	dttx1
	.align 8
	.type	dttx1, @object
	.size	dttx1, 8
dttx1:
	.zero	8
	.globl	dttx2
	.align 8
	.type	dttx2, @object
	.size	dttx2, 8
dttx2:
	.zero	8
	.globl	dtty1
	.align 8
	.type	dtty1, @object
	.size	dtty1, 8
dtty1:
	.zero	8
	.globl	dtty2
	.align 8
	.type	dtty2, @object
	.size	dtty2, 8
dtty2:
	.zero	8
	.globl	dttz1
	.align 8
	.type	dttz1, @object
	.size	dttz1, 8
dttz1:
	.zero	8
	.globl	dttz2
	.align 8
	.type	dttz2, @object
	.size	dttz2, 8
dttz2:
	.zero	8
	.globl	c2dttx1
	.align 8
	.type	c2dttx1, @object
	.size	c2dttx1, 8
c2dttx1:
	.zero	8
	.globl	c2dtty1
	.align 8
	.type	c2dtty1, @object
	.size	c2dtty1, 8
c2dtty1:
	.zero	8
	.globl	c2dttz1
	.align 8
	.type	c2dttz1, @object
	.size	c2dttz1, 8
c2dttz1:
	.zero	8
	.globl	comz1
	.align 8
	.type	comz1, @object
	.size	comz1, 8
comz1:
	.zero	8
	.globl	comz4
	.align 8
	.type	comz4, @object
	.size	comz4, 8
comz4:
	.zero	8
	.globl	comz5
	.align 8
	.type	comz5, @object
	.size	comz5, 8
comz5:
	.zero	8
	.globl	comz6
	.align 8
	.type	comz6, @object
	.size	comz6, 8
comz6:
	.zero	8
	.globl	c3c4tx3
	.align 8
	.type	c3c4tx3, @object
	.size	c3c4tx3, 8
c3c4tx3:
	.zero	8
	.globl	c3c4ty3
	.align 8
	.type	c3c4ty3, @object
	.size	c3c4ty3, 8
c3c4ty3:
	.zero	8
	.globl	c3c4tz3
	.align 8
	.type	c3c4tz3, @object
	.size	c3c4tz3, 8
c3c4tz3:
	.zero	8
	.globl	c2iv
	.align 8
	.type	c2iv, @object
	.size	c2iv, 8
c2iv:
	.zero	8
	.globl	con43
	.align 8
	.type	con43, @object
	.size	con43, 8
con43:
	.zero	8
	.globl	con16
	.align 8
	.type	con16, @object
	.size	con16, 8
con16:
	.zero	8
	.globl	us
	.align 32
	.type	us, @object
	.size	us, 120000
us:
	.zero	120000
	.globl	vs
	.align 32
	.type	vs, @object
	.size	vs, 120000
vs:
	.zero	120000
	.globl	ws
	.align 32
	.type	ws, @object
	.size	ws, 120000
ws:
	.zero	120000
	.globl	qs
	.align 32
	.type	qs, @object
	.size	qs, 120000
qs:
	.zero	120000
	.globl	rho_i
	.align 32
	.type	rho_i, @object
	.size	rho_i, 120000
rho_i:
	.zero	120000
	.globl	square
	.align 32
	.type	square, @object
	.size	square, 120000
square:
	.zero	120000
	.globl	forcing
	.align 32
	.type	forcing, @object
	.size	forcing, 600000
forcing:
	.zero	600000
	.globl	u
	.align 32
	.type	u, @object
	.size	u, 600000
u:
	.zero	600000
	.globl	rhs
	.align 32
	.type	rhs, @object
	.size	rhs, 600000
rhs:
	.zero	600000
	.globl	cuf
	.align 32
	.type	cuf, @object
	.size	cuf, 200
cuf:
	.zero	200
	.globl	q
	.align 32
	.type	q, @object
	.size	q, 200
q:
	.zero	200
	.globl	ue
	.align 32
	.type	ue, @object
	.size	ue, 1000
ue:
	.zero	1000
	.globl	buf
	.align 32
	.type	buf, @object
	.size	buf, 1000
buf:
	.zero	1000
	.globl	cycleval
	.align 4
	.type	cycleval, @object
	.size	cycleval, 4
cycleval:
	.zero	4
	.globl	iotimer_addr
	.align 8
	.type	iotimer_addr, @object
	.size	iotimer_addr, 8
iotimer_addr:
	.zero	8
	.globl	base_counter
	.align 8
	.type	base_counter, @object
	.size	base_counter, 8
base_counter:
	.zero	8
	.globl	resolution
	.align 8
	.type	resolution, @object
	.size	resolution, 8
resolution:
	.zero	8
	.text
	.globl	wtime
	.type	wtime, @function
wtime:
.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, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, -32[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	gettimeofday@PLT
	mov	eax, DWORD PTR sec.0[rip]
	test	eax, eax
	jns	.L2
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR sec.0[rip], eax
.L2:
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR sec.0[rip]
	movsx	rdx, edx
	sub	rax, rdx
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, rax
	mov	rax, QWORD PTR -24[rbp]
	pxor	xmm2, xmm2
	cvtsi2sd	xmm2, rax
	movsd	xmm0, QWORD PTR .LC0[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	rax, QWORD PTR -40[rbp]
	movsd	QWORD PTR [rax], xmm0
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L3
	call	__stack_chk_fail@PLT
.L3:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	wtime, .-wtime
	.type	elapsed_time, @function
elapsed_time:
.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, 16
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, -16[rbp]
	mov	rdi, rax
	call	wtime
	movsd	xmm0, QWORD PTR -16[rbp]
	movq	rax, xmm0
	mov	rdx, QWORD PTR -8[rbp]
	sub	rdx, QWORD PTR fs:40
	je	.L6
	call	__stack_chk_fail@PLT
.L6:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	elapsed_time, .-elapsed_time
	.local	start
	.comm	start,512,32
	.local	elapsed
	.comm	elapsed,512,32
	.globl	timer_clear
	.type	timer_clear, @function
timer_clear:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, elapsed[rip]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	timer_clear, .-timer_clear
	.globl	timer_start
	.type	timer_start, @function
timer_start:
.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, 16
	mov	DWORD PTR -4[rbp], edi
	call	elapsed_time
	movq	rax, xmm0
	mov	edx, DWORD PTR -4[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	lea	rdx, start[rip]
	mov	QWORD PTR [rcx+rdx], rax
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	timer_start, .-timer_start
	.globl	timer_stop
	.type	timer_stop, @function
timer_stop:
.LFB10:
	.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
	call	elapsed_time
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, start[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR -16[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, elapsed[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, elapsed[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	timer_stop, .-timer_stop
	.globl	timer_read
	.type	timer_read, @function
timer_read:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, elapsed[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	timer_read, .-timer_read
	.section	.rodata
.LC2:
	.string	"r"
.LC3:
	.string	"timer.flag"
.LC4:
	.string	"total"
.LC5:
	.string	"rhsx"
.LC6:
	.string	"rhsy"
.LC7:
	.string	"rhsz"
.LC8:
	.string	"rhs"
.LC9:
	.string	"xsolve"
.LC10:
	.string	"ysolve"
.LC11:
	.string	"zsolve"
.LC12:
	.string	"redist1"
.LC13:
	.string	"redist2"
.LC14:
	.string	"add"
	.align 8
.LC15:
	.string	"\n\n NAS Parallel Benchmarks (NPB3.3-SER-C) - BT Benchmark\n"
.LC16:
	.string	"inputbt.data"
	.align 8
.LC17:
	.string	" Reading from input file inputbt.data"
.LC18:
	.string	"%d"
.LC19:
	.string	"%lf"
.LC20:
	.string	"%d%d%d\n"
	.align 8
.LC21:
	.string	" No input file inputbt.data. Using compiled defaults"
.LC23:
	.string	" Size: %4dx%4dx%4d\n"
	.align 8
.LC24:
	.string	" Iterations: %4d    dt: %10.6f\n"
.LC25:
	.string	" %d, %d, %d\n"
	.align 8
.LC26:
	.string	" Problem size too big for compiled array sizes"
.LC27:
	.string	" Time step %4d\n"
.LC32:
	.string	"BT"
.LC33:
	.string	"(none)"
.LC34:
	.string	"-O3 -mcmodel=medium"
.LC35:
	.string	"-g -Wall -O3 -mcmodel=medium"
.LC36:
	.string	"-I../common"
.LC37:
	.string	"-lm"
.LC38:
	.string	"$(CC)"
.LC39:
	.string	"gcc"
.LC40:
	.string	"12 Jul 2017"
.LC41:
	.string	"3.3.1"
.LC42:
	.string	"          floating point"
.LC44:
	.string	"  SECTION   Time (secs)"
.LC46:
	.string	"  %-8s:%9.3f  (%6.2f%%)\n"
.LC47:
	.string	"sub-rhs"
.LC48:
	.string	"    --> %8s:%9.3f  (%6.2f%%)\n"
.LC49:
	.string	"rest-rhs"
.LC50:
	.string	"sub-zsol"
.LC51:
	.string	"redist"
	.text
	.globl	main
	.type	main, @function
main:
.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, 304
	mov	DWORD PTR -292[rbp], edi
	mov	QWORD PTR -304[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rsi, .LC2[rip]
	lea	rdi, .LC3[rip]
	call	fopen@PLT
	mov	QWORD PTR -240[rbp], rax
	cmp	QWORD PTR -240[rbp], 0
	je	.L13
	mov	DWORD PTR timeron[rip], 1
	lea	rax, .LC4[rip]
	mov	QWORD PTR -104[rbp], rax
	lea	rax, .LC5[rip]
	mov	QWORD PTR -96[rbp], rax
	lea	rax, .LC6[rip]
	mov	QWORD PTR -88[rbp], rax
	lea	rax, .LC7[rip]
	mov	QWORD PTR -80[rbp], rax
	lea	rax, .LC8[rip]
	mov	QWORD PTR -72[rbp], rax
	lea	rax, .LC9[rip]
	mov	QWORD PTR -64[rbp], rax
	lea	rax, .LC10[rip]
	mov	QWORD PTR -56[rbp], rax
	lea	rax, .LC11[rip]
	mov	QWORD PTR -48[rbp], rax
	lea	rax, .LC12[rip]
	mov	QWORD PTR -40[rbp], rax
	lea	rax, .LC13[rip]
	mov	QWORD PTR -32[rbp], rax
	lea	rax, .LC14[rip]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -240[rbp]
	mov	rdi, rax
	call	fclose@PLT
	jmp	.L14
.L13:
	mov	DWORD PTR timeron[rip], 0
.L14:
	lea	rdi, .LC15[rip]
	call	puts@PLT
	lea	rsi, .LC2[rip]
	lea	rdi, .LC16[rip]
	call	fopen@PLT
	mov	QWORD PTR -240[rbp], rax
	cmp	QWORD PTR -240[rbp], 0
	je	.L15
	lea	rdi, .LC17[rip]
	call	puts@PLT
	lea	rdx, -276[rbp]
	mov	rax, QWORD PTR -240[rbp]
	lea	rsi, .LC18[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_fscanf@PLT
	mov	DWORD PTR -260[rbp], eax
	nop
.L16:
	mov	rax, QWORD PTR -240[rbp]
	mov	rdi, rax
	call	fgetc@PLT
	cmp	eax, 10
	jne	.L16
	mov	rax, QWORD PTR -240[rbp]
	lea	rdx, dt[rip]
	lea	rsi, .LC19[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_fscanf@PLT
	mov	DWORD PTR -260[rbp], eax
	nop
.L17:
	mov	rax, QWORD PTR -240[rbp]
	mov	rdi, rax
	call	fgetc@PLT
	cmp	eax, 10
	jne	.L17
	mov	rax, QWORD PTR -240[rbp]
	lea	r8, grid_points[rip+8]
	lea	rcx, grid_points[rip+4]
	lea	rdx, grid_points[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_fscanf@PLT
	mov	DWORD PTR -260[rbp], eax
	mov	rax, QWORD PTR -240[rbp]
	mov	rdi, rax
	call	fclose@PLT
	jmp	.L18
.L15:
	lea	rdi, .LC21[rip]
	call	puts@PLT
	mov	DWORD PTR -276[rbp], 200
	movsd	xmm0, QWORD PTR .LC22[rip]
	movsd	QWORD PTR dt[rip], xmm0
	mov	DWORD PTR grid_points[rip], 24
	mov	DWORD PTR grid_points[rip+4], 24
	mov	DWORD PTR grid_points[rip+8], 24
.L18:
	mov	ecx, DWORD PTR grid_points[rip+8]
	mov	edx, DWORD PTR grid_points[rip+4]
	mov	eax, DWORD PTR grid_points[rip]
	mov	esi, eax
	lea	rdi, .LC23[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rdx, QWORD PTR dt[rip]
	mov	eax, DWORD PTR -276[rbp]
	movq	xmm0, rdx
	mov	esi, eax
	lea	rdi, .LC24[rip]
	mov	eax, 1
	call	printf@PLT
	mov	edi, 10
	call	putchar@PLT
	mov	eax, DWORD PTR grid_points[rip]
	cmp	eax, 24
	jg	.L19
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	eax, 24
	jg	.L19
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	eax, 24
	jle	.L20
.L19:
	mov	ecx, DWORD PTR grid_points[rip+8]
	mov	edx, DWORD PTR grid_points[rip+4]
	mov	eax, DWORD PTR grid_points[rip]
	mov	esi, eax
	lea	rdi, .LC25[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC26[rip]
	call	puts@PLT
	mov	eax, 0
	jmp	.L43
.L20:
	mov	eax, 0
	call	set_constants
	mov	DWORD PTR -268[rbp], 1
	jmp	.L22
.L23:
	mov	eax, DWORD PTR -268[rbp]
	mov	edi, eax
	call	timer_clear
	add	DWORD PTR -268[rbp], 1
.L22:
	cmp	DWORD PTR -268[rbp], 11
	jle	.L23
	mov	eax, 0
	call	initialize
	mov	eax, 0
	call	exact_rhs
	mov	eax, 0
	call	adi
	mov	eax, 0
	call	initialize
	mov	DWORD PTR -268[rbp], 1
	jmp	.L24
.L25:
	mov	eax, DWORD PTR -268[rbp]
	mov	edi, eax
	call	timer_clear
	add	DWORD PTR -268[rbp], 1
.L24:
	cmp	DWORD PTR -268[rbp], 11
	jle	.L25
	mov	edi, 1
	call	timer_start
	mov	DWORD PTR -264[rbp], 1
	jmp	.L26
.L29:
	mov	ecx, DWORD PTR -264[rbp]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 3
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	sub	ecx, eax
	mov	edx, ecx
	test	edx, edx
	je	.L27
	cmp	DWORD PTR -264[rbp], 1
	jne	.L28
.L27:
	mov	eax, DWORD PTR -264[rbp]
	mov	esi, eax
	lea	rdi, .LC27[rip]
	mov	eax, 0
	call	printf@PLT
.L28:
	mov	eax, 0
	call	adi
	add	DWORD PTR -264[rbp], 1
.L26:
	mov	eax, DWORD PTR -276[rbp]
	cmp	DWORD PTR -264[rbp], eax
	jle	.L29
	mov	edi, 1
	call	timer_stop
	mov	edi, 1
	call	timer_read
	movq	rax, xmm0
	mov	QWORD PTR -248[rbp], rax
	mov	eax, DWORD PTR -276[rbp]
	lea	rdx, -272[rbp]
	lea	rcx, -277[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	verify
	mov	eax, DWORD PTR grid_points[rip]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	mov	eax, DWORD PTR grid_points[rip+4]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR grid_points[rip+8]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -232[rbp], xmm0
	mov	edx, DWORD PTR grid_points[rip]
	mov	eax, DWORD PTR grid_points[rip+4]
	add	edx, eax
	mov	eax, DWORD PTR grid_points[rip+8]
	add	eax, edx
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	xmm1, QWORD PTR .LC28[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -224[rbp], xmm0
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -248[rbp]
	jp	.L45
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -248[rbp]
	je	.L47
.L45:
	mov	eax, DWORD PTR -276[rbp]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC0[rip]
	movapd	xmm2, xmm1
	mulsd	xmm2, xmm0
	movsd	xmm1, QWORD PTR -232[rbp]
	movsd	xmm0, QWORD PTR .LC29[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -224[rbp]
	movapd	xmm3, xmm0
	mulsd	xmm3, xmm0
	movsd	xmm0, QWORD PTR .LC30[rip]
	mulsd	xmm0, xmm3
	subsd	xmm1, xmm0
	movsd	xmm3, QWORD PTR -224[rbp]
	movsd	xmm0, QWORD PTR .LC31[rip]
	mulsd	xmm0, xmm3
	addsd	xmm0, xmm1
	mulsd	xmm0, xmm2
	divsd	xmm0, QWORD PTR -248[rbp]
	movsd	QWORD PTR -256[rbp], xmm0
	jmp	.L32
.L47:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -256[rbp], xmm0
.L32:
	mov	edi, DWORD PTR -272[rbp]
	mov	r9d, DWORD PTR -276[rbp]
	mov	r10d, DWORD PTR grid_points[rip+8]
	mov	ecx, DWORD PTR grid_points[rip+4]
	mov	edx, DWORD PTR grid_points[rip]
	movzx	eax, BYTE PTR -277[rbp]
	movsx	eax, al
	movsd	xmm0, QWORD PTR -256[rbp]
	mov	rsi, QWORD PTR -248[rbp]
	sub	rsp, 8
	lea	r8, .LC33[rip]
	push	r8
	lea	r8, .LC34[rip]
	push	r8
	lea	r8, .LC35[rip]
	push	r8
	lea	r8, .LC36[rip]
	push	r8
	lea	r8, .LC37[rip]
	push	r8
	lea	r8, .LC38[rip]
	push	r8
	lea	r8, .LC39[rip]
	push	r8
	lea	r8, .LC40[rip]
	push	r8
	lea	r8, .LC41[rip]
	push	r8
	push	rdi
	lea	rdi, .LC42[rip]
	push	rdi
	movapd	xmm1, xmm0
	movq	xmm0, rsi
	mov	r8d, r10d
	mov	esi, eax
	lea	rdi, .LC32[rip]
	call	print_results
	add	rsp, 96
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L33
	mov	DWORD PTR -268[rbp], 1
	jmp	.L34
.L35:
	mov	eax, DWORD PTR -268[rbp]
	mov	edi, eax
	call	timer_read
	movq	rax, xmm0
	mov	edx, DWORD PTR -268[rbp]
	movsx	rdx, edx
	mov	QWORD PTR -208[rbp+rdx*8], rax
	add	DWORD PTR -268[rbp], 1
.L34:
	cmp	DWORD PTR -268[rbp], 11
	jle	.L35
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -248[rbp]
	jp	.L36
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -248[rbp]
	jne	.L36
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR -248[rbp], xmm0
.L36:
	lea	rdi, .LC44[rip]
	call	puts@PLT
	mov	DWORD PTR -268[rbp], 1
	jmp	.L38
.L42:
	mov	eax, DWORD PTR -268[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -208[rbp+rax*8]
	movsd	xmm0, QWORD PTR .LC45[rip]
	mulsd	xmm0, xmm1
	divsd	xmm0, QWORD PTR -248[rbp]
	mov	eax, DWORD PTR -268[rbp]
	cdqe
	mov	rdx, QWORD PTR -208[rbp+rax*8]
	mov	eax, DWORD PTR -268[rbp]
	cdqe
	mov	rax, QWORD PTR -112[rbp+rax*8]
	movapd	xmm1, xmm0
	movq	xmm0, rdx
	mov	rsi, rax
	lea	rdi, .LC46[rip]
	mov	eax, 2
	call	printf@PLT
	cmp	DWORD PTR -268[rbp], 5
	jne	.L39
	movsd	xmm1, QWORD PTR -192[rbp]
	movsd	xmm0, QWORD PTR -184[rbp]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -176[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm1, QWORD PTR -216[rbp]
	movsd	xmm0, QWORD PTR .LC45[rip]
	mulsd	xmm0, xmm1
	divsd	xmm0, QWORD PTR -248[rbp]
	mov	rax, QWORD PTR -216[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rsi, .LC47[rip]
	lea	rdi, .LC48[rip]
	mov	eax, 2
	call	printf@PLT
	movsd	xmm0, QWORD PTR -168[rbp]
	subsd	xmm0, QWORD PTR -216[rbp]
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm1, QWORD PTR -216[rbp]
	movsd	xmm0, QWORD PTR .LC45[rip]
	mulsd	xmm0, xmm1
	divsd	xmm0, QWORD PTR -248[rbp]
	mov	rax, QWORD PTR -216[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rsi, .LC49[rip]
	lea	rdi, .LC48[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L40
.L39:
	cmp	DWORD PTR -268[rbp], 8
	jne	.L41
	movsd	xmm0, QWORD PTR -144[rbp]
	movsd	xmm1, QWORD PTR -136[rbp]
	subsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -128[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm1, QWORD PTR -216[rbp]
	movsd	xmm0, QWORD PTR .LC45[rip]
	mulsd	xmm0, xmm1
	divsd	xmm0, QWORD PTR -248[rbp]
	mov	rax, QWORD PTR -216[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rsi, .LC50[rip]
	lea	rdi, .LC48[rip]
	mov	eax, 2
	call	printf@PLT
	jmp	.L40
.L41:
	cmp	DWORD PTR -268[rbp], 10
	jne	.L40
	movsd	xmm1, QWORD PTR -136[rbp]
	movsd	xmm0, QWORD PTR -128[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm1, QWORD PTR -216[rbp]
	movsd	xmm0, QWORD PTR .LC45[rip]
	mulsd	xmm0, xmm1
	divsd	xmm0, QWORD PTR -248[rbp]
	mov	rax, QWORD PTR -216[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rsi, .LC51[rip]
	lea	rdi, .LC48[rip]
	mov	eax, 2
	call	printf@PLT
.L40:
	add	DWORD PTR -268[rbp], 1
.L38:
	cmp	DWORD PTR -268[rbp], 11
	jle	.L42
.L33:
	mov	eax, 0
.L43:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L44
	call	__stack_chk_fail@PLT
.L44:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	main, .-main
	.globl	add
	.type	add, @function
add:
.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, 16
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L49
	mov	edi, 11
	call	timer_start
.L49:
	mov	DWORD PTR -8[rbp], 1
	jmp	.L50
.L57:
	mov	DWORD PTR -12[rbp], 1
	jmp	.L51
.L56:
	mov	DWORD PTR -16[rbp], 1
	jmp	.L52
.L55:
	mov	DWORD PTR -4[rbp], 0
	jmp	.L53
.L54:
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -4[rbp], 1
.L53:
	cmp	DWORD PTR -4[rbp], 4
	jle	.L54
	add	DWORD PTR -16[rbp], 1
.L52:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -16[rbp], eax
	jl	.L55
	add	DWORD PTR -12[rbp], 1
.L51:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -12[rbp], eax
	jl	.L56
	add	DWORD PTR -8[rbp], 1
.L50:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -8[rbp], eax
	jl	.L57
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L59
	mov	edi, 11
	call	timer_stop
.L59:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	add, .-add
	.globl	adi
	.type	adi, @function
adi:
.LFB14:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 0
	call	compute_rhs
	mov	eax, 0
	call	x_solve
	mov	eax, 0
	call	y_solve
	mov	eax, 0
	call	z_solve
	mov	eax, 0
	call	add
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	adi, .-adi
	.globl	error_norm
	.type	error_norm, @function
error_norm:
.LFB15:
	.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, 136
	.cfi_offset 3, -24
	mov	QWORD PTR -136[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -104[rbp], 0
	jmp	.L62
.L63:
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -104[rbp], 1
.L62:
	cmp	DWORD PTR -104[rbp], 4
	jle	.L63
	mov	DWORD PTR -108[rbp], 0
	jmp	.L64
.L71:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -108[rbp]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -96[rbp], xmm0
	mov	DWORD PTR -112[rbp], 0
	jmp	.L65
.L70:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -112[rbp]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -88[rbp], xmm0
	mov	DWORD PTR -116[rbp], 0
	jmp	.L66
.L69:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -116[rbp]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -80[rbp], xmm0
	lea	rdx, -64[rbp]
	movsd	xmm1, QWORD PTR -96[rbp]
	movsd	xmm0, QWORD PTR -88[rbp]
	mov	rax, QWORD PTR -80[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -104[rbp], 0
	jmp	.L67
.L68:
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -64[rbp+rax*8]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -72[rbp], xmm0
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR -72[rbp]
	mulsd	xmm0, xmm0
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -104[rbp], 1
.L67:
	cmp	DWORD PTR -104[rbp], 4
	jle	.L68
	add	DWORD PTR -116[rbp], 1
.L66:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -116[rbp], eax
	jl	.L69
	add	DWORD PTR -112[rbp], 1
.L65:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -112[rbp], eax
	jl	.L70
	add	DWORD PTR -108[rbp], 1
.L64:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -108[rbp], eax
	jl	.L71
	mov	DWORD PTR -104[rbp], 0
	jmp	.L72
.L75:
	mov	DWORD PTR -100[rbp], 0
	jmp	.L73
.L74:
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -100[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, grid_points[rip]
	mov	eax, DWORD PTR [rdx+rax]
	sub	eax, 2
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	divsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -100[rbp], 1
.L73:
	cmp	DWORD PTR -100[rbp], 2
	jle	.L74
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	edx, DWORD PTR -104[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -136[rbp]
	lea	rbx, [rcx+rdx]
	movq	xmm0, rax
	call	sqrt@PLT
	movq	rax, xmm0
	mov	QWORD PTR [rbx], rax
	add	DWORD PTR -104[rbp], 1
.L72:
	cmp	DWORD PTR -104[rbp], 4
	jle	.L75
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L76
	call	__stack_chk_fail@PLT
.L76:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	error_norm, .-error_norm
	.globl	rhs_norm
	.type	rhs_norm, @function
rhs_norm:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	QWORD PTR -56[rbp], rdi
	mov	DWORD PTR -28[rbp], 0
	jmp	.L78
.L79:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -28[rbp], 1
.L78:
	cmp	DWORD PTR -28[rbp], 4
	jle	.L79
	mov	DWORD PTR -36[rbp], 1
	jmp	.L80
.L87:
	mov	DWORD PTR -40[rbp], 1
	jmp	.L81
.L86:
	mov	DWORD PTR -44[rbp], 1
	jmp	.L82
.L85:
	mov	DWORD PTR -28[rbp], 0
	jmp	.L83
.L84:
	mov	eax, DWORD PTR -28[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -40[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -44[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -36[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR -24[rbp]
	mulsd	xmm0, xmm0
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -28[rbp], 1
.L83:
	cmp	DWORD PTR -28[rbp], 4
	jle	.L84
	add	DWORD PTR -44[rbp], 1
.L82:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -44[rbp], eax
	jl	.L85
	add	DWORD PTR -40[rbp], 1
.L81:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -40[rbp], eax
	jl	.L86
	add	DWORD PTR -36[rbp], 1
.L80:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -36[rbp], eax
	jl	.L87
	mov	DWORD PTR -28[rbp], 0
	jmp	.L88
.L91:
	mov	DWORD PTR -32[rbp], 0
	jmp	.L89
.L90:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, grid_points[rip]
	mov	eax, DWORD PTR [rdx+rax]
	sub	eax, 2
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	divsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -32[rbp], 1
.L89:
	cmp	DWORD PTR -32[rbp], 2
	jle	.L90
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	edx, DWORD PTR -28[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -56[rbp]
	lea	rbx, [rcx+rdx]
	movq	xmm0, rax
	call	sqrt@PLT
	movq	rax, xmm0
	mov	QWORD PTR [rbx], rax
	add	DWORD PTR -28[rbp], 1
.L88:
	cmp	DWORD PTR -28[rbp], 4
	jle	.L91
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	rhs_norm, .-rhs_norm
	.globl	exact_rhs
	.type	exact_rhs, @function
exact_rhs:
.LFB17:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	add	rsp, -128
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -108[rbp], 0
	jmp	.L93
.L100:
	mov	DWORD PTR -112[rbp], 0
	jmp	.L94
.L99:
	mov	DWORD PTR -116[rbp], 0
	jmp	.L95
.L98:
	mov	DWORD PTR -120[rbp], 0
	jmp	.L96
.L97:
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L96:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L97
	add	DWORD PTR -116[rbp], 1
.L95:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -116[rbp], eax
	jl	.L98
	add	DWORD PTR -112[rbp], 1
.L94:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -112[rbp], eax
	jl	.L99
	add	DWORD PTR -108[rbp], 1
.L93:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -108[rbp], eax
	jl	.L100
	mov	DWORD PTR -108[rbp], 1
	jmp	.L101
.L120:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -108[rbp]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -64[rbp], xmm0
	mov	DWORD PTR -112[rbp], 1
	jmp	.L102
.L119:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -112[rbp]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -80[rbp], xmm0
	mov	DWORD PTR -116[rbp], 0
	jmp	.L103
.L108:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -116[rbp]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -72[rbp], xmm0
	lea	rdx, -48[rbp]
	movsd	xmm1, QWORD PTR -64[rbp]
	movsd	xmm0, QWORD PTR -80[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -120[rbp], 0
	jmp	.L104
.L105:
	mov	eax, DWORD PTR -120[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L104:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L105
	movsd	xmm1, QWORD PTR -48[rbp]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -56[rbp], xmm0
	mov	DWORD PTR -120[rbp], 1
	jmp	.L106
.L107:
	mov	eax, DWORD PTR -120[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	mulsd	xmm0, QWORD PTR -56[rbp]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, buf[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L106:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L107
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -116[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC52[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -116[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -116[rbp], 1
.L103:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -116[rbp], eax
	jl	.L108
	mov	DWORD PTR -116[rbp], 1
	jmp	.L109
.L110:
	mov	eax, DWORD PTR -116[rbp]
	sub	eax, 1
	mov	DWORD PTR -88[rbp], eax
	mov	eax, DWORD PTR -116[rbp]
	add	eax, 1
	mov	DWORD PTR -84[rbp], eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, forcing[rip]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx1tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, forcing[rip]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movapd	xmm3, xmm1
	subsd	xmm3, xmm4
	movsd	xmm1, QWORD PTR c2[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mulsd	xmm3, xmm2
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm5, QWORD PTR [rdx+rax]
	movapd	xmm4, xmm2
	subsd	xmm4, xmm5
	movsd	xmm2, QWORD PTR c2[rip]
	mulsd	xmm2, xmm4
	addsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx2tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+8]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx3tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+16]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx4tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+24]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR c1[rip]
	mulsd	xmm1, xmm3
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	xmm3, QWORD PTR c2[rip]
	mulsd	xmm3, xmm4
	subsd	xmm1, xmm3
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR c1[rip]
	mulsd	xmm2, xmm4
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm5, QWORD PTR [rdx+rax]
	movsd	xmm4, QWORD PTR c2[rip]
	mulsd	xmm4, xmm5
	subsd	xmm2, xmm4
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR xxcon3[rip]
	movsd	xmm0, QWORD PTR .LC52[rip]
	movapd	xmm3, xmm1
	mulsd	xmm3, xmm0
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm1
	mulsd	xmm0, xmm3
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon4[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon5[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx5tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+32]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -116[rbp], 1
.L109:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -116[rbp], eax
	jl	.L110
	mov	DWORD PTR -120[rbp], 0
	jmp	.L111
.L112:
	mov	DWORD PTR -116[rbp], 1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	DWORD PTR -116[rbp], 2
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC55[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L111:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L112
	mov	DWORD PTR -116[rbp], 3
	jmp	.L113
.L116:
	mov	DWORD PTR -120[rbp], 0
	jmp	.L114
.L115:
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L114:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L115
	add	DWORD PTR -116[rbp], 1
.L113:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 3
	cmp	DWORD PTR -116[rbp], eax
	jl	.L116
	mov	DWORD PTR -120[rbp], 0
	jmp	.L117
.L118:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 3
	mov	DWORD PTR -116[rbp], eax
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 2
	mov	DWORD PTR -116[rbp], eax
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -116[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L117:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L118
	add	DWORD PTR -112[rbp], 1
.L102:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -112[rbp], eax
	jl	.L119
	add	DWORD PTR -108[rbp], 1
.L101:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -108[rbp], eax
	jl	.L120
	mov	DWORD PTR -108[rbp], 1
	jmp	.L121
.L140:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -108[rbp]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -64[rbp], xmm0
	mov	DWORD PTR -116[rbp], 1
	jmp	.L122
.L139:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -116[rbp]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -72[rbp], xmm0
	mov	DWORD PTR -112[rbp], 0
	jmp	.L123
.L128:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -112[rbp]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -80[rbp], xmm0
	lea	rdx, -48[rbp]
	movsd	xmm1, QWORD PTR -64[rbp]
	movsd	xmm0, QWORD PTR -80[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -120[rbp], 0
	jmp	.L124
.L125:
	mov	eax, DWORD PTR -120[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L124:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L125
	movsd	xmm1, QWORD PTR -48[rbp]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -56[rbp], xmm0
	mov	DWORD PTR -120[rbp], 1
	jmp	.L126
.L127:
	mov	eax, DWORD PTR -120[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	mulsd	xmm0, QWORD PTR -56[rbp]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, buf[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L126:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L127
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -112[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -112[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC52[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -112[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -112[rbp], 1
.L123:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -112[rbp], eax
	jl	.L128
	mov	DWORD PTR -112[rbp], 1
	jmp	.L129
.L130:
	mov	eax, DWORD PTR -112[rbp]
	sub	eax, 1
	mov	DWORD PTR -96[rbp], eax
	mov	eax, DWORD PTR -112[rbp]
	add	eax, 1
	mov	DWORD PTR -92[rbp], eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, forcing[rip]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy1ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, forcing[rip]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy2ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+8]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movapd	xmm3, xmm1
	subsd	xmm3, xmm4
	movsd	xmm1, QWORD PTR c2[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mulsd	xmm3, xmm2
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm5, QWORD PTR [rdx+rax]
	movapd	xmm4, xmm2
	subsd	xmm4, xmm5
	movsd	xmm2, QWORD PTR c2[rip]
	mulsd	xmm2, xmm4
	addsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy3ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+16]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy4ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+24]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR c1[rip]
	mulsd	xmm1, xmm3
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	xmm3, QWORD PTR c2[rip]
	mulsd	xmm3, xmm4
	subsd	xmm1, xmm3
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR c1[rip]
	mulsd	xmm2, xmm4
	mov	eax, DWORD PTR -96[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm5, QWORD PTR [rdx+rax]
	movsd	xmm4, QWORD PTR c2[rip]
	mulsd	xmm4, xmm5
	subsd	xmm2, xmm4
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR yycon3[rip]
	movsd	xmm0, QWORD PTR .LC52[rip]
	movapd	xmm3, xmm1
	mulsd	xmm3, xmm0
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm1
	mulsd	xmm0, xmm3
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon4[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon5[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy5ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+32]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -112[rbp], 1
.L129:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -112[rbp], eax
	jl	.L130
	mov	DWORD PTR -120[rbp], 0
	jmp	.L131
.L132:
	mov	DWORD PTR -112[rbp], 1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	DWORD PTR -112[rbp], 2
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC55[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L131:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L132
	mov	DWORD PTR -112[rbp], 3
	jmp	.L133
.L136:
	mov	DWORD PTR -120[rbp], 0
	jmp	.L134
.L135:
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L134:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L135
	add	DWORD PTR -112[rbp], 1
.L133:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 3
	cmp	DWORD PTR -112[rbp], eax
	jl	.L136
	mov	DWORD PTR -120[rbp], 0
	jmp	.L137
.L138:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 3
	mov	DWORD PTR -112[rbp], eax
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 2
	mov	DWORD PTR -112[rbp], eax
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -112[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L137:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L138
	add	DWORD PTR -116[rbp], 1
.L122:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -116[rbp], eax
	jl	.L139
	add	DWORD PTR -108[rbp], 1
.L121:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -108[rbp], eax
	jl	.L140
	mov	DWORD PTR -112[rbp], 1
	jmp	.L141
.L160:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -112[rbp]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -80[rbp], xmm0
	mov	DWORD PTR -116[rbp], 1
	jmp	.L142
.L159:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -116[rbp]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -72[rbp], xmm0
	mov	DWORD PTR -108[rbp], 0
	jmp	.L143
.L148:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -108[rbp]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -64[rbp], xmm0
	lea	rdx, -48[rbp]
	movsd	xmm1, QWORD PTR -64[rbp]
	movsd	xmm0, QWORD PTR -80[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -120[rbp], 0
	jmp	.L144
.L145:
	mov	eax, DWORD PTR -120[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L144:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L145
	movsd	xmm1, QWORD PTR -48[rbp]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -56[rbp], xmm0
	mov	DWORD PTR -120[rbp], 1
	jmp	.L146
.L147:
	mov	eax, DWORD PTR -120[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	mulsd	xmm0, QWORD PTR -56[rbp]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, buf[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L146:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L147
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC52[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -108[rbp], 1
.L143:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -108[rbp], eax
	jl	.L148
	mov	DWORD PTR -108[rbp], 1
	jmp	.L149
.L150:
	mov	eax, DWORD PTR -108[rbp]
	sub	eax, 1
	mov	DWORD PTR -104[rbp], eax
	mov	eax, DWORD PTR -108[rbp]
	add	eax, 1
	mov	DWORD PTR -100[rbp], eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, forcing[rip]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz1tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, forcing[rip]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz2tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+8]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz3tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+16]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -100[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movapd	xmm3, xmm1
	subsd	xmm3, xmm4
	movsd	xmm1, QWORD PTR c2[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mulsd	xmm3, xmm2
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm5, QWORD PTR [rdx+rax]
	movapd	xmm4, xmm2
	subsd	xmm4, xmm5
	movsd	xmm2, QWORD PTR c2[rip]
	mulsd	xmm2, xmm4
	addsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz4tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+24]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR c1[rip]
	mulsd	xmm1, xmm3
	mov	eax, DWORD PTR -100[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	xmm3, QWORD PTR c2[rip]
	mulsd	xmm3, xmm4
	subsd	xmm1, xmm3
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+24]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR c1[rip]
	mulsd	xmm2, xmm4
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, q[rip]
	movsd	xmm5, QWORD PTR [rdx+rax]
	movsd	xmm4, QWORD PTR c2[rip]
	mulsd	xmm4, xmm5
	subsd	xmm2, xmm4
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	movapd	xmm2, xmm0
	subsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR zzcon3[rip]
	movsd	xmm0, QWORD PTR .LC52[rip]
	movapd	xmm3, xmm1
	mulsd	xmm3, xmm0
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm1
	mulsd	xmm0, xmm3
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -100[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, cuf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon4[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, buf[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon5[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -100[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -104[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ue[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz5tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -116[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, forcing[rip+32]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -108[rbp], 1
.L149:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -108[rbp], eax
	jl	.L150
	mov	DWORD PTR -120[rbp], 0
	jmp	.L151
.L152:
	mov	DWORD PTR -108[rbp], 1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	DWORD PTR -108[rbp], 2
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC55[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L151:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L152
	mov	DWORD PTR -108[rbp], 3
	jmp	.L153
.L156:
	mov	DWORD PTR -120[rbp], 0
	jmp	.L154
.L155:
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L154:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L155
	add	DWORD PTR -108[rbp], 1
.L153:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 3
	cmp	DWORD PTR -108[rbp], eax
	jl	.L156
	mov	DWORD PTR -120[rbp], 0
	jmp	.L157
.L158:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 3
	mov	DWORD PTR -108[rbp], eax
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 2
	mov	DWORD PTR -108[rbp], eax
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -108[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -120[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ue[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L157:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L158
	add	DWORD PTR -116[rbp], 1
.L142:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -116[rbp], eax
	jl	.L159
	add	DWORD PTR -112[rbp], 1
.L141:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -112[rbp], eax
	jl	.L160
	mov	DWORD PTR -108[rbp], 1
	jmp	.L161
.L168:
	mov	DWORD PTR -112[rbp], 1
	jmp	.L162
.L167:
	mov	DWORD PTR -116[rbp], 1
	jmp	.L163
.L166:
	mov	DWORD PTR -120[rbp], 0
	jmp	.L164
.L165:
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm0, xmm1
	mov	eax, DWORD PTR -120[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -116[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -108[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -120[rbp], 1
.L164:
	cmp	DWORD PTR -120[rbp], 4
	jle	.L165
	add	DWORD PTR -116[rbp], 1
.L163:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -116[rbp], eax
	jl	.L166
	add	DWORD PTR -112[rbp], 1
.L162:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -112[rbp], eax
	jl	.L167
	add	DWORD PTR -108[rbp], 1
.L161:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -108[rbp], eax
	jl	.L168
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L169
	call	__stack_chk_fail@PLT
.L169:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	exact_rhs, .-exact_rhs
	.globl	exact_solution
	.type	exact_solution, @function
exact_solution:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -24[rbp], xmm0
	movsd	QWORD PTR -32[rbp], xmm1
	movsd	QWORD PTR -40[rbp], xmm2
	mov	QWORD PTR -48[rbp], rdi
	mov	DWORD PTR -4[rbp], 0
	jmp	.L171
.L172:
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+32]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+56]
	movsd	xmm4, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+80]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, QWORD PTR -24[rbp]
	addsd	xmm0, xmm4
	mulsd	xmm0, QWORD PTR -24[rbp]
	addsd	xmm0, xmm3
	mulsd	xmm0, QWORD PTR -24[rbp]
	addsd	xmm0, xmm2
	mulsd	xmm0, QWORD PTR -24[rbp]
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+40]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+64]
	movsd	xmm4, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+88]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, QWORD PTR -32[rbp]
	addsd	xmm0, xmm4
	mulsd	xmm0, QWORD PTR -32[rbp]
	addsd	xmm0, xmm3
	mulsd	xmm0, QWORD PTR -32[rbp]
	addsd	xmm0, xmm2
	mulsd	xmm0, QWORD PTR -32[rbp]
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+48]
	movsd	xmm3, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+72]
	movsd	xmm4, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, ce[rip+96]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, QWORD PTR -40[rbp]
	addsd	xmm0, xmm4
	mulsd	xmm0, QWORD PTR -40[rbp]
	addsd	xmm0, xmm3
	mulsd	xmm0, QWORD PTR -40[rbp]
	addsd	xmm0, xmm2
	mulsd	xmm0, QWORD PTR -40[rbp]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -4[rbp], 1
.L171:
	cmp	DWORD PTR -4[rbp], 4
	jle	.L172
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	exact_solution, .-exact_solution
	.globl	initialize
	.type	initialize, @function
initialize:
.LFB19:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 384
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -372[rbp], 0
	jmp	.L174
.L181:
	mov	DWORD PTR -376[rbp], 0
	jmp	.L175
.L180:
	mov	DWORD PTR -380[rbp], 0
	jmp	.L176
.L179:
	mov	DWORD PTR -368[rbp], 0
	jmp	.L177
.L178:
	mov	eax, DWORD PTR -368[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -380[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -372[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -368[rbp], 1
.L177:
	cmp	DWORD PTR -368[rbp], 4
	jle	.L178
	add	DWORD PTR -380[rbp], 1
.L176:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -380[rbp], eax
	jl	.L179
	add	DWORD PTR -376[rbp], 1
.L175:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -376[rbp], eax
	jl	.L180
	add	DWORD PTR -372[rbp], 1
.L174:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -372[rbp], eax
	jl	.L181
	mov	DWORD PTR -372[rbp], 0
	jmp	.L182
.L195:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -372[rbp]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -336[rbp], xmm0
	mov	DWORD PTR -376[rbp], 0
	jmp	.L183
.L194:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -376[rbp]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -344[rbp], xmm0
	mov	DWORD PTR -380[rbp], 0
	jmp	.L184
.L193:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -380[rbp]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -352[rbp], xmm0
	mov	DWORD PTR -364[rbp], 0
	jmp	.L185
.L186:
	lea	rcx, -256[rbp]
	mov	eax, DWORD PTR -364[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	sub	rax, rdx
	sal	rax, 3
	lea	rdx, [rcx+rax]
	pxor	xmm3, xmm3
	cvtsi2sd	xmm3, DWORD PTR -364[rbp]
	movq	rax, xmm3
	movsd	xmm1, QWORD PTR -336[rbp]
	movsd	xmm0, QWORD PTR -344[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	add	DWORD PTR -364[rbp], 1
.L185:
	cmp	DWORD PTR -364[rbp], 1
	jle	.L186
	mov	DWORD PTR -360[rbp], 0
	jmp	.L187
.L188:
	lea	rcx, -256[rbp]
	mov	eax, DWORD PTR -360[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	sub	rax, rdx
	sal	rax, 3
	add	rax, 40
	lea	rdx, [rcx+rax]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR -360[rbp]
	movsd	xmm1, QWORD PTR -336[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	add	DWORD PTR -360[rbp], 1
.L187:
	cmp	DWORD PTR -360[rbp], 1
	jle	.L188
	mov	DWORD PTR -356[rbp], 0
	jmp	.L189
.L190:
	lea	rcx, -256[rbp]
	mov	eax, DWORD PTR -356[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	sub	rax, rdx
	sal	rax, 3
	add	rax, 80
	lea	rdx, [rcx+rax]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -356[rbp]
	movsd	xmm0, QWORD PTR -344[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	add	DWORD PTR -356[rbp], 1
.L189:
	cmp	DWORD PTR -356[rbp], 1
	jle	.L190
	mov	DWORD PTR -368[rbp], 0
	jmp	.L191
.L192:
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	add	rax, 15
	movsd	xmm0, QWORD PTR -256[rbp+rax*8]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -352[rbp]
	movsd	xmm0, QWORD PTR .LC43[rip]
	movapd	xmm2, xmm0
	subsd	xmm2, QWORD PTR -352[rbp]
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -256[rbp+rax*8]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	movsd	QWORD PTR -328[rbp], xmm0
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	add	rax, 20
	movsd	xmm0, QWORD PTR -256[rbp+rax*8]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -344[rbp]
	movsd	xmm0, QWORD PTR .LC43[rip]
	movapd	xmm2, xmm0
	subsd	xmm2, QWORD PTR -344[rbp]
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	add	rax, 5
	movsd	xmm0, QWORD PTR -256[rbp+rax*8]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	movsd	QWORD PTR -320[rbp], xmm0
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	add	rax, 25
	movsd	xmm0, QWORD PTR -256[rbp+rax*8]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -336[rbp]
	movsd	xmm0, QWORD PTR .LC43[rip]
	movapd	xmm2, xmm0
	subsd	xmm2, QWORD PTR -336[rbp]
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	add	rax, 10
	movsd	xmm0, QWORD PTR -256[rbp+rax*8]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	movsd	QWORD PTR -312[rbp], xmm0
	movsd	xmm0, QWORD PTR -328[rbp]
	addsd	xmm0, QWORD PTR -320[rbp]
	addsd	xmm0, QWORD PTR -312[rbp]
	movsd	xmm1, QWORD PTR -328[rbp]
	mulsd	xmm1, QWORD PTR -320[rbp]
	subsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -328[rbp]
	mulsd	xmm1, QWORD PTR -312[rbp]
	subsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -320[rbp]
	movapd	xmm2, xmm1
	mulsd	xmm2, QWORD PTR -312[rbp]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR -328[rbp]
	mulsd	xmm0, QWORD PTR -320[rbp]
	mulsd	xmm0, QWORD PTR -312[rbp]
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -368[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -380[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -372[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -368[rbp], 1
.L191:
	cmp	DWORD PTR -368[rbp], 4
	jle	.L192
	add	DWORD PTR -380[rbp], 1
.L184:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -380[rbp], eax
	jl	.L193
	add	DWORD PTR -376[rbp], 1
.L183:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -376[rbp], eax
	jl	.L194
	add	DWORD PTR -372[rbp], 1
.L182:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -372[rbp], eax
	jl	.L195
	mov	DWORD PTR -380[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -352[rbp], xmm0
	mov	DWORD PTR -372[rbp], 0
	jmp	.L196
.L201:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -372[rbp]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -336[rbp], xmm0
	mov	DWORD PTR -376[rbp], 0
	jmp	.L197
.L200:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -376[rbp]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -344[rbp], xmm0
	lea	rdx, -304[rbp]
	movsd	xmm1, QWORD PTR -336[rbp]
	movsd	xmm0, QWORD PTR -344[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -368[rbp], 0
	jmp	.L198
.L199:
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -304[rbp+rax*8]
	mov	eax, DWORD PTR -368[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -380[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -372[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -368[rbp], 1
.L198:
	cmp	DWORD PTR -368[rbp], 4
	jle	.L199
	add	DWORD PTR -376[rbp], 1
.L197:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -376[rbp], eax
	jl	.L200
	add	DWORD PTR -372[rbp], 1
.L196:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -372[rbp], eax
	jl	.L201
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	mov	DWORD PTR -380[rbp], eax
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR -352[rbp], xmm0
	mov	DWORD PTR -372[rbp], 0
	jmp	.L202
.L207:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -372[rbp]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -336[rbp], xmm0
	mov	DWORD PTR -376[rbp], 0
	jmp	.L203
.L206:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -376[rbp]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -344[rbp], xmm0
	lea	rdx, -304[rbp]
	movsd	xmm1, QWORD PTR -336[rbp]
	movsd	xmm0, QWORD PTR -344[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -368[rbp], 0
	jmp	.L204
.L205:
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -304[rbp+rax*8]
	mov	eax, DWORD PTR -368[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -380[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -372[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -368[rbp], 1
.L204:
	cmp	DWORD PTR -368[rbp], 4
	jle	.L205
	add	DWORD PTR -376[rbp], 1
.L203:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -376[rbp], eax
	jl	.L206
	add	DWORD PTR -372[rbp], 1
.L202:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -372[rbp], eax
	jl	.L207
	mov	DWORD PTR -376[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -344[rbp], xmm0
	mov	DWORD PTR -372[rbp], 0
	jmp	.L208
.L213:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -372[rbp]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -336[rbp], xmm0
	mov	DWORD PTR -380[rbp], 0
	jmp	.L209
.L212:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -380[rbp]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -352[rbp], xmm0
	lea	rdx, -304[rbp]
	movsd	xmm1, QWORD PTR -336[rbp]
	movsd	xmm0, QWORD PTR -344[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -368[rbp], 0
	jmp	.L210
.L211:
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -304[rbp+rax*8]
	mov	eax, DWORD PTR -368[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -380[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -372[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -368[rbp], 1
.L210:
	cmp	DWORD PTR -368[rbp], 4
	jle	.L211
	add	DWORD PTR -380[rbp], 1
.L209:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -380[rbp], eax
	jl	.L212
	add	DWORD PTR -372[rbp], 1
.L208:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -372[rbp], eax
	jl	.L213
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	mov	DWORD PTR -376[rbp], eax
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR -344[rbp], xmm0
	mov	DWORD PTR -372[rbp], 0
	jmp	.L214
.L219:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -372[rbp]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -336[rbp], xmm0
	mov	DWORD PTR -380[rbp], 0
	jmp	.L215
.L218:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -380[rbp]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -352[rbp], xmm0
	lea	rdx, -304[rbp]
	movsd	xmm1, QWORD PTR -336[rbp]
	movsd	xmm0, QWORD PTR -344[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -368[rbp], 0
	jmp	.L216
.L217:
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -304[rbp+rax*8]
	mov	eax, DWORD PTR -368[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -380[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -372[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -368[rbp], 1
.L216:
	cmp	DWORD PTR -368[rbp], 4
	jle	.L217
	add	DWORD PTR -380[rbp], 1
.L215:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -380[rbp], eax
	jl	.L218
	add	DWORD PTR -372[rbp], 1
.L214:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -372[rbp], eax
	jl	.L219
	mov	DWORD PTR -372[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -336[rbp], xmm0
	mov	DWORD PTR -376[rbp], 0
	jmp	.L220
.L225:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -376[rbp]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -344[rbp], xmm0
	mov	DWORD PTR -380[rbp], 0
	jmp	.L221
.L224:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -380[rbp]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -352[rbp], xmm0
	lea	rdx, -304[rbp]
	movsd	xmm1, QWORD PTR -336[rbp]
	movsd	xmm0, QWORD PTR -344[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -368[rbp], 0
	jmp	.L222
.L223:
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -304[rbp+rax*8]
	mov	eax, DWORD PTR -368[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -380[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -372[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -368[rbp], 1
.L222:
	cmp	DWORD PTR -368[rbp], 4
	jle	.L223
	add	DWORD PTR -380[rbp], 1
.L221:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -380[rbp], eax
	jl	.L224
	add	DWORD PTR -376[rbp], 1
.L220:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -376[rbp], eax
	jl	.L225
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	mov	DWORD PTR -372[rbp], eax
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR -336[rbp], xmm0
	mov	DWORD PTR -376[rbp], 0
	jmp	.L226
.L231:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -376[rbp]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -344[rbp], xmm0
	mov	DWORD PTR -380[rbp], 0
	jmp	.L227
.L230:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -380[rbp]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -352[rbp], xmm0
	lea	rdx, -304[rbp]
	movsd	xmm1, QWORD PTR -336[rbp]
	movsd	xmm0, QWORD PTR -344[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rdi, rdx
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	exact_solution
	mov	DWORD PTR -368[rbp], 0
	jmp	.L228
.L229:
	mov	eax, DWORD PTR -368[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -304[rbp+rax*8]
	mov	eax, DWORD PTR -368[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -380[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -372[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -368[rbp], 1
.L228:
	cmp	DWORD PTR -368[rbp], 4
	jle	.L229
	add	DWORD PTR -380[rbp], 1
.L227:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -380[rbp], eax
	jl	.L230
	add	DWORD PTR -376[rbp], 1
.L226:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -376[rbp], eax
	jl	.L231
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L232
	call	__stack_chk_fail@PLT
.L232:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	initialize, .-initialize
	.globl	lhsinit
	.type	lhsinit, @function
lhsinit:
.LFB20:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	eax, DWORD PTR -28[rbp]
	mov	DWORD PTR -4[rbp], eax
	mov	DWORD PTR -8[rbp], 0
	jmp	.L234
.L237:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L235
.L236:
	mov	rdx, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rsi
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	rdx, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rsi
	add	rax, 25
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	rdx, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rsi
	add	rax, 50
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rdx, rax, 600
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rsi
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rcx+rax*8], xmm0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rdx, rax, 600
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rsi
	add	rax, 25
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rcx+rax*8], xmm0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rdx, rax, 600
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rsi
	add	rax, 50
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rcx+rax*8], xmm0
	add	DWORD PTR -12[rbp], 1
.L235:
	cmp	DWORD PTR -12[rbp], 4
	jle	.L236
	add	DWORD PTR -8[rbp], 1
.L234:
	cmp	DWORD PTR -8[rbp], 4
	jle	.L237
	mov	DWORD PTR -12[rbp], 0
	jmp	.L238
.L239:
	mov	rcx, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	add	rax, rcx
	add	rax, 200
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rdx, rax, 600
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	add	rax, rcx
	add	rax, 200
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -12[rbp], 1
.L238:
	cmp	DWORD PTR -12[rbp], 4
	jle	.L239
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	lhsinit, .-lhsinit
	.globl	compute_rhs
	.type	compute_rhs, @function
compute_rhs:
.LFB21:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 96
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L241
	mov	edi, 5
	call	timer_start
.L241:
	mov	DWORD PTR -88[rbp], 0
	jmp	.L242
.L247:
	mov	DWORD PTR -92[rbp], 0
	jmp	.L243
.L246:
	mov	DWORD PTR -96[rbp], 0
	jmp	.L244
.L245:
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC52[rip]
	mulsd	xmm0, xmm1
	mulsd	xmm0, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -96[rbp], 1
.L244:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -96[rbp], eax
	jl	.L245
	add	DWORD PTR -92[rbp], 1
.L243:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -92[rbp], eax
	jl	.L246
	add	DWORD PTR -88[rbp], 1
.L242:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -88[rbp], eax
	jl	.L247
	mov	DWORD PTR -88[rbp], 0
	jmp	.L248
.L255:
	mov	DWORD PTR -92[rbp], 0
	jmp	.L249
.L254:
	mov	DWORD PTR -96[rbp], 0
	jmp	.L250
.L253:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L251
.L252:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, forcing[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L251:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L252
	add	DWORD PTR -96[rbp], 1
.L250:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	DWORD PTR -96[rbp], eax
	jl	.L253
	add	DWORD PTR -92[rbp], 1
.L249:
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	DWORD PTR -92[rbp], eax
	jl	.L254
	add	DWORD PTR -88[rbp], 1
.L248:
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	DWORD PTR -88[rbp], eax
	jl	.L255
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L256
	mov	edi, 2
	call	timer_start
.L256:
	mov	DWORD PTR -88[rbp], 1
	jmp	.L257
.L280:
	mov	DWORD PTR -92[rbp], 1
	jmp	.L258
.L261:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L259
.L260:
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -32[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -16[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx1tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx2tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	movapd	xmm1, xmm2
	movsd	xmm2, QWORD PTR xxcon2[rip]
	movsd	xmm0, QWORD PTR con43[rip]
	mulsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR -32[rbp]
	movapd	xmm3, xmm0
	addsd	xmm3, xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm3
	addsd	xmm0, QWORD PTR -16[rbp]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -16[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	subsd	xmm1, xmm3
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm4, QWORD PTR [rax]
	movapd	xmm3, xmm1
	subsd	xmm3, xmm4
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm3, xmm1
	movsd	xmm1, QWORD PTR c2[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+8]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx3tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -16[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+16]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx4tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -16[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+24]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+32]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dx5tx1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon3[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -32[rbp]
	addsd	xmm0, xmm0
	mulsd	xmm0, QWORD PTR -32[rbp]
	subsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	mulsd	xmm0, xmm0
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon4[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm3, xmm0
	addsd	xmm3, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm3
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm3
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR xxcon5[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR c1[rip]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR c2[rip]
	mulsd	xmm2, xmm3
	subsd	xmm1, xmm2
	mulsd	xmm1, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	movsd	xmm2, QWORD PTR c1[rip]
	mulsd	xmm2, xmm3
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	xmm3, QWORD PTR c2[rip]
	mulsd	xmm3, xmm4
	subsd	xmm2, xmm3
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -16[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tx2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+32]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -96[rbp], 1
.L259:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L260
	add	DWORD PTR -92[rbp], 1
.L258:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L261
	mov	DWORD PTR -92[rbp], 1
	jmp	.L262
.L267:
	mov	DWORD PTR -96[rbp], 1
	mov	DWORD PTR -84[rbp], 0
	jmp	.L263
.L264:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, 2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L263:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L264
	mov	DWORD PTR -96[rbp], 2
	mov	DWORD PTR -84[rbp], 0
	jmp	.L265
.L266:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC55[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, 2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L265:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L266
	add	DWORD PTR -92[rbp], 1
.L262:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L267
	mov	DWORD PTR -92[rbp], 1
	jmp	.L268
.L273:
	mov	DWORD PTR -96[rbp], 3
	jmp	.L269
.L272:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L270
.L271:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, -2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, 2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L270:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L271
	add	DWORD PTR -96[rbp], 1
.L269:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 3
	cmp	DWORD PTR -96[rbp], eax
	jl	.L272
	add	DWORD PTR -92[rbp], 1
.L268:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L273
	mov	DWORD PTR -92[rbp], 1
	jmp	.L274
.L279:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 3
	mov	DWORD PTR -96[rbp], eax
	mov	DWORD PTR -84[rbp], 0
	jmp	.L275
.L276:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, -2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L275:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L276
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 2
	mov	DWORD PTR -96[rbp], eax
	mov	DWORD PTR -84[rbp], 0
	jmp	.L277
.L278:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, -2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L277:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L278
	add	DWORD PTR -92[rbp], 1
.L274:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L279
	add	DWORD PTR -88[rbp], 1
.L257:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -88[rbp], eax
	jl	.L280
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L281
	mov	edi, 2
	call	timer_stop
.L281:
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L282
	mov	edi, 3
	call	timer_start
.L282:
	mov	DWORD PTR -88[rbp], 1
	jmp	.L283
.L310:
	mov	DWORD PTR -92[rbp], 1
	jmp	.L284
.L287:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L285
.L286:
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -56[rbp], xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -48[rbp], xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -40[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rsi, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rsi, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy1ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy2ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -40[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+8]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy3ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	movapd	xmm1, xmm2
	movsd	xmm2, QWORD PTR yycon2[rip]
	movsd	xmm0, QWORD PTR con43[rip]
	mulsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR -56[rbp]
	movapd	xmm3, xmm0
	addsd	xmm3, xmm0
	movsd	xmm0, QWORD PTR -48[rbp]
	subsd	xmm0, xmm3
	addsd	xmm0, QWORD PTR -40[rbp]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -40[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	subsd	xmm1, xmm3
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm4, QWORD PTR [rax]
	movapd	xmm3, xmm1
	subsd	xmm3, xmm4
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm3, xmm1
	movsd	xmm1, QWORD PTR c2[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+16]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy4ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -40[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+24]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+32]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dy5ty1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon3[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR -48[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -56[rbp]
	addsd	xmm0, xmm0
	mulsd	xmm0, QWORD PTR -56[rbp]
	subsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	mulsd	xmm0, xmm0
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon4[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm3, xmm0
	addsd	xmm3, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm3
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm3
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR yycon5[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR c1[rip]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR c2[rip]
	mulsd	xmm2, xmm3
	subsd	xmm1, xmm2
	mulsd	xmm1, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -92[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	movsd	xmm2, QWORD PTR c1[rip]
	mulsd	xmm2, xmm3
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	xmm3, QWORD PTR c2[rip]
	mulsd	xmm3, xmm4
	subsd	xmm2, xmm3
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -40[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR ty2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+32]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -96[rbp], 1
.L285:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L286
	add	DWORD PTR -92[rbp], 1
.L284:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L287
	mov	DWORD PTR -92[rbp], 1
	mov	DWORD PTR -96[rbp], 1
	jmp	.L288
.L291:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L289
.L290:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L289:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L290
	add	DWORD PTR -96[rbp], 1
.L288:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L291
	mov	DWORD PTR -92[rbp], 2
	mov	DWORD PTR -96[rbp], 1
	jmp	.L292
.L295:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L293
.L294:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC55[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L293:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L294
	add	DWORD PTR -96[rbp], 1
.L292:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L295
	mov	DWORD PTR -92[rbp], 3
	jmp	.L296
.L301:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L297
.L300:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L298
.L299:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L298:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L299
	add	DWORD PTR -96[rbp], 1
.L297:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L300
	add	DWORD PTR -92[rbp], 1
.L296:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 3
	cmp	DWORD PTR -92[rbp], eax
	jl	.L301
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 3
	mov	DWORD PTR -92[rbp], eax
	mov	DWORD PTR -96[rbp], 1
	jmp	.L302
.L305:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L303
.L304:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L303:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L304
	add	DWORD PTR -96[rbp], 1
.L302:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L305
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 2
	mov	DWORD PTR -92[rbp], eax
	mov	DWORD PTR -96[rbp], 1
	jmp	.L306
.L309:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L307
.L308:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L307:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L308
	add	DWORD PTR -96[rbp], 1
.L306:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L309
	add	DWORD PTR -88[rbp], 1
.L283:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -88[rbp], eax
	jl	.L310
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L311
	mov	edi, 3
	call	timer_stop
.L311:
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L312
	mov	edi, 4
	call	timer_start
.L312:
	mov	DWORD PTR -88[rbp], 1
	jmp	.L313
.L318:
	mov	DWORD PTR -92[rbp], 1
	jmp	.L314
.L317:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L315
.L316:
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -80[rbp], xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -72[rbp], xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, ws[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -64[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	movsx	rcx, ecx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	movsx	rcx, ecx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz1tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz2tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, us[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -72[rbp]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -64[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+8]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz3tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, vs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon2[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -72[rbp]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -64[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+16]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz4tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	movapd	xmm1, xmm2
	movsd	xmm2, QWORD PTR zzcon2[rip]
	movsd	xmm0, QWORD PTR con43[rip]
	mulsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR -80[rbp]
	movapd	xmm3, xmm0
	addsd	xmm3, xmm0
	movsd	xmm0, QWORD PTR -72[rbp]
	subsd	xmm0, xmm3
	addsd	xmm0, QWORD PTR -64[rbp]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -72[rbp]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -64[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	subsd	xmm1, xmm3
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm4, QWORD PTR [rax]
	movapd	xmm3, xmm1
	subsd	xmm3, xmm4
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm3, xmm1
	movsd	xmm1, QWORD PTR c2[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+24]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+32]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR dz5tz1[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm0, xmm0
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon3[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR -72[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -80[rbp]
	addsd	xmm0, xmm0
	mulsd	xmm0, QWORD PTR -80[rbp]
	subsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -64[rbp]
	mulsd	xmm0, xmm0
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon4[rip]
	mulsd	xmm0, xmm1
	addsd	xmm2, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm3, xmm0
	addsd	xmm3, xmm0
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm3
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm3
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR zzcon5[rip]
	mulsd	xmm0, xmm1
	addsd	xmm0, xmm2
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR c1[rip]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR c2[rip]
	mulsd	xmm2, xmm3
	subsd	xmm1, xmm2
	mulsd	xmm1, QWORD PTR -72[rbp]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	movsd	xmm2, QWORD PTR c1[rip]
	mulsd	xmm2, xmm3
	mov	eax, DWORD PTR -88[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm4, QWORD PTR [rdx+rax]
	movsd	xmm3, QWORD PTR c2[rip]
	mulsd	xmm3, xmm4
	subsd	xmm2, xmm3
	movapd	xmm3, xmm2
	mulsd	xmm3, QWORD PTR -64[rbp]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tz2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -96[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, rhs[rip+32]
	add	rax, rdx
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -96[rbp], 1
.L315:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L316
	add	DWORD PTR -92[rbp], 1
.L314:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L317
	add	DWORD PTR -88[rbp], 1
.L313:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -88[rbp], eax
	jl	.L318
	mov	DWORD PTR -88[rbp], 1
	mov	DWORD PTR -92[rbp], 1
	jmp	.L319
.L324:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L320
.L323:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L321
.L322:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm2
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L321:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L322
	add	DWORD PTR -96[rbp], 1
.L320:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L323
	add	DWORD PTR -92[rbp], 1
.L319:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L324
	mov	DWORD PTR -88[rbp], 2
	mov	DWORD PTR -92[rbp], 1
	jmp	.L325
.L330:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L326
.L329:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L327
.L328:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC55[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L327:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L328
	add	DWORD PTR -96[rbp], 1
.L326:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L329
	add	DWORD PTR -92[rbp], 1
.L325:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L330
	mov	DWORD PTR -88[rbp], 3
	jmp	.L331
.L338:
	mov	DWORD PTR -92[rbp], 1
	jmp	.L332
.L337:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L333
.L336:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L334
.L335:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L334:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L335
	add	DWORD PTR -96[rbp], 1
.L333:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L336
	add	DWORD PTR -92[rbp], 1
.L332:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L337
	add	DWORD PTR -88[rbp], 1
.L331:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 3
	cmp	DWORD PTR -88[rbp], eax
	jl	.L338
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 3
	mov	DWORD PTR -88[rbp], eax
	mov	DWORD PTR -92[rbp], 1
	jmp	.L339
.L344:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L340
.L343:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L341
.L342:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC56[rip]
	mulsd	xmm1, xmm3
	addsd	xmm1, xmm2
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L341:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L342
	add	DWORD PTR -96[rbp], 1
.L340:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L343
	add	DWORD PTR -92[rbp], 1
.L339:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L344
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 2
	mov	DWORD PTR -88[rbp], eax
	mov	DWORD PTR -92[rbp], 1
	jmp	.L345
.L350:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L346
.L349:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L347
.L348:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -2[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -88[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm2, QWORD PTR .LC54[rip]
	mulsd	xmm3, xmm2
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, u[rip]
	movsd	xmm3, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR .LC53[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR dssp[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L347:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L348
	add	DWORD PTR -96[rbp], 1
.L346:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L349
	add	DWORD PTR -92[rbp], 1
.L345:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L350
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L351
	mov	edi, 4
	call	timer_stop
.L351:
	mov	DWORD PTR -88[rbp], 1
	jmp	.L352
.L359:
	mov	DWORD PTR -92[rbp], 1
	jmp	.L353
.L358:
	mov	DWORD PTR -96[rbp], 1
	jmp	.L354
.L357:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L355
.L356:
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR dt[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -96[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -88[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -84[rbp], 1
.L355:
	cmp	DWORD PTR -84[rbp], 4
	jle	.L356
	add	DWORD PTR -96[rbp], 1
.L354:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -96[rbp], eax
	jl	.L357
	add	DWORD PTR -92[rbp], 1
.L353:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L358
	add	DWORD PTR -88[rbp], 1
.L352:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -88[rbp], eax
	jl	.L359
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L361
	mov	edi, 5
	call	timer_stop
.L361:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	compute_rhs, .-compute_rhs
	.globl	set_constants
	.type	set_constants, @function
set_constants:
.LFB22:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR ce[rip], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+8], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+16], xmm0
	movsd	xmm0, QWORD PTR .LC54[rip]
	movsd	QWORD PTR ce[rip+24], xmm0
	movsd	xmm0, QWORD PTR .LC53[rip]
	movsd	QWORD PTR ce[rip+32], xmm0
	movsd	xmm0, QWORD PTR .LC28[rip]
	movsd	QWORD PTR ce[rip+40], xmm0
	movsd	xmm0, QWORD PTR .LC52[rip]
	movsd	QWORD PTR ce[rip+48], xmm0
	movsd	xmm0, QWORD PTR .LC59[rip]
	movsd	QWORD PTR ce[rip+56], xmm0
	movsd	xmm0, QWORD PTR .LC60[rip]
	movsd	QWORD PTR ce[rip+64], xmm0
	movsd	xmm0, QWORD PTR .LC61[rip]
	movsd	QWORD PTR ce[rip+72], xmm0
	movsd	xmm0, QWORD PTR .LC52[rip]
	movsd	QWORD PTR ce[rip+80], xmm0
	movsd	xmm0, QWORD PTR .LC62[rip]
	movsd	QWORD PTR ce[rip+88], xmm0
	movsd	xmm0, QWORD PTR .LC63[rip]
	movsd	QWORD PTR ce[rip+96], xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR ce[rip+104], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+112], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+120], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+128], xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR ce[rip+136], xmm0
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR ce[rip+144], xmm0
	movsd	xmm0, QWORD PTR .LC28[rip]
	movsd	QWORD PTR ce[rip+152], xmm0
	movsd	xmm0, QWORD PTR .LC60[rip]
	movsd	QWORD PTR ce[rip+160], xmm0
	movsd	xmm0, QWORD PTR .LC61[rip]
	movsd	QWORD PTR ce[rip+168], xmm0
	movsd	xmm0, QWORD PTR .LC59[rip]
	movsd	QWORD PTR ce[rip+176], xmm0
	movsd	xmm0, QWORD PTR .LC62[rip]
	movsd	QWORD PTR ce[rip+184], xmm0
	movsd	xmm0, QWORD PTR .LC63[rip]
	movsd	QWORD PTR ce[rip+192], xmm0
	movsd	xmm0, QWORD PTR .LC52[rip]
	movsd	QWORD PTR ce[rip+200], xmm0
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR ce[rip+208], xmm0
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR ce[rip+216], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+224], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+232], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+240], xmm0
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR ce[rip+248], xmm0
	movsd	xmm0, QWORD PTR .LC28[rip]
	movsd	QWORD PTR ce[rip+256], xmm0
	movsd	xmm0, QWORD PTR .LC64[rip]
	movsd	QWORD PTR ce[rip+264], xmm0
	movsd	xmm0, QWORD PTR .LC61[rip]
	movsd	QWORD PTR ce[rip+272], xmm0
	movsd	xmm0, QWORD PTR .LC65[rip]
	movsd	QWORD PTR ce[rip+280], xmm0
	movsd	xmm0, QWORD PTR .LC63[rip]
	movsd	QWORD PTR ce[rip+288], xmm0
	movsd	xmm0, QWORD PTR .LC52[rip]
	movsd	QWORD PTR ce[rip+296], xmm0
	movsd	xmm0, QWORD PTR .LC62[rip]
	movsd	QWORD PTR ce[rip+304], xmm0
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR ce[rip+312], xmm0
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR ce[rip+320], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+328], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+336], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR ce[rip+344], xmm0
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR ce[rip+352], xmm0
	movsd	xmm0, QWORD PTR .LC28[rip]
	movsd	QWORD PTR ce[rip+360], xmm0
	movsd	xmm0, QWORD PTR .LC61[rip]
	movsd	QWORD PTR ce[rip+368], xmm0
	movsd	xmm0, QWORD PTR .LC65[rip]
	movsd	QWORD PTR ce[rip+376], xmm0
	movsd	xmm0, QWORD PTR .LC64[rip]
	movsd	QWORD PTR ce[rip+384], xmm0
	movsd	xmm0, QWORD PTR .LC66[rip]
	movsd	QWORD PTR ce[rip+392], xmm0
	movsd	xmm0, QWORD PTR .LC67[rip]
	movsd	QWORD PTR ce[rip+400], xmm0
	movsd	xmm0, QWORD PTR .LC63[rip]
	movsd	QWORD PTR ce[rip+408], xmm0
	movsd	xmm0, QWORD PTR .LC53[rip]
	movsd	QWORD PTR ce[rip+416], xmm0
	movsd	xmm0, QWORD PTR .LC54[rip]
	movsd	QWORD PTR ce[rip+424], xmm0
	movsd	xmm0, QWORD PTR .LC28[rip]
	movsd	QWORD PTR ce[rip+432], xmm0
	movsd	xmm0, QWORD PTR .LC58[rip]
	movsd	QWORD PTR ce[rip+440], xmm0
	movsd	xmm0, QWORD PTR .LC67[rip]
	movsd	QWORD PTR ce[rip+448], xmm0
	movsd	xmm0, QWORD PTR .LC62[rip]
	movsd	QWORD PTR ce[rip+456], xmm0
	movsd	xmm0, QWORD PTR .LC63[rip]
	movsd	QWORD PTR ce[rip+464], xmm0
	movsd	xmm0, QWORD PTR .LC65[rip]
	movsd	QWORD PTR ce[rip+472], xmm0
	movsd	xmm0, QWORD PTR .LC64[rip]
	movsd	QWORD PTR ce[rip+480], xmm0
	movsd	xmm0, QWORD PTR .LC61[rip]
	movsd	QWORD PTR ce[rip+488], xmm0
	movsd	xmm0, QWORD PTR .LC67[rip]
	movsd	QWORD PTR ce[rip+496], xmm0
	movsd	xmm0, QWORD PTR .LC63[rip]
	movsd	QWORD PTR ce[rip+504], xmm0
	movsd	xmm0, QWORD PTR .LC66[rip]
	movsd	QWORD PTR ce[rip+512], xmm0
	movsd	xmm0, QWORD PTR .LC68[rip]
	movsd	QWORD PTR c1[rip], xmm0
	movsd	xmm0, QWORD PTR .LC62[rip]
	movsd	QWORD PTR c2[rip], xmm0
	movsd	xmm0, QWORD PTR .LC67[rip]
	movsd	QWORD PTR c3[rip], xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR c4[rip], xmm0
	movsd	xmm0, QWORD PTR .LC68[rip]
	movsd	QWORD PTR c5[rip], xmm0
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR dnxm1[rip], xmm0
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR dnym1[rip], xmm0
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR dnzm1[rip], xmm0
	movsd	xmm1, QWORD PTR c1[rip]
	movsd	xmm0, QWORD PTR c2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR c1c2[rip], xmm0
	movsd	xmm1, QWORD PTR c1[rip]
	movsd	xmm0, QWORD PTR c5[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR c1c5[rip], xmm0
	movsd	xmm1, QWORD PTR c3[rip]
	movsd	xmm0, QWORD PTR c4[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR c3c4[rip], xmm0
	movsd	xmm1, QWORD PTR c1c5[rip]
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR c1345[rip], xmm0
	movsd	xmm1, QWORD PTR c1c5[rip]
	movsd	xmm0, QWORD PTR .LC43[rip]
	subsd	xmm0, xmm1
	movsd	QWORD PTR conz1[rip], xmm0
	movsd	xmm1, QWORD PTR dnxm1[rip]
	movsd	xmm0, QWORD PTR dnxm1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR tx1[rip], xmm0
	movsd	xmm0, QWORD PTR dnxm1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR tx2[rip], xmm0
	movsd	xmm1, QWORD PTR dnxm1[rip]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR tx3[rip], xmm0
	movsd	xmm1, QWORD PTR dnym1[rip]
	movsd	xmm0, QWORD PTR dnym1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR ty1[rip], xmm0
	movsd	xmm0, QWORD PTR dnym1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR ty2[rip], xmm0
	movsd	xmm1, QWORD PTR dnym1[rip]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR ty3[rip], xmm0
	movsd	xmm1, QWORD PTR dnzm1[rip]
	movsd	xmm0, QWORD PTR dnzm1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR tz1[rip], xmm0
	movsd	xmm0, QWORD PTR dnzm1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR tz2[rip], xmm0
	movsd	xmm1, QWORD PTR dnzm1[rip]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR tz3[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dx1[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dx2[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dx3[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dx4[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dx5[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dy1[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dy2[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dy3[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dy4[rip], xmm0
	movsd	xmm0, QWORD PTR .LC69[rip]
	movsd	QWORD PTR dy5[rip], xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR dz1[rip], xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR dz2[rip], xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR dz3[rip], xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR dz4[rip], xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR dz5[rip], xmm0
	movsd	xmm0, QWORD PTR dx3[rip]
	movsd	xmm1, QWORD PTR dx4[rip]
	comisd	xmm0, xmm1
	jbe	.L387
	movsd	xmm0, QWORD PTR dx3[rip]
	jmp	.L365
.L387:
	movsd	xmm0, QWORD PTR dx4[rip]
.L365:
	movsd	QWORD PTR dxmax[rip], xmm0
	movsd	xmm0, QWORD PTR dy2[rip]
	movsd	xmm1, QWORD PTR dy4[rip]
	comisd	xmm0, xmm1
	jbe	.L388
	movsd	xmm0, QWORD PTR dy2[rip]
	jmp	.L368
.L388:
	movsd	xmm0, QWORD PTR dy4[rip]
.L368:
	movsd	QWORD PTR dymax[rip], xmm0
	movsd	xmm0, QWORD PTR dz2[rip]
	movsd	xmm1, QWORD PTR dz3[rip]
	comisd	xmm0, xmm1
	jbe	.L389
	movsd	xmm0, QWORD PTR dz2[rip]
	jmp	.L371
.L389:
	movsd	xmm0, QWORD PTR dz3[rip]
.L371:
	movsd	QWORD PTR dzmax[rip], xmm0
	movsd	xmm0, QWORD PTR dy1[rip]
	movsd	xmm1, QWORD PTR dz1[rip]
	comisd	xmm0, xmm1
	jbe	.L390
	movsd	xmm0, QWORD PTR dy1[rip]
	jmp	.L374
.L390:
	movsd	xmm0, QWORD PTR dz1[rip]
.L374:
	movsd	xmm1, QWORD PTR dx1[rip]
	comisd	xmm1, xmm0
	jbe	.L391
	movsd	xmm0, QWORD PTR dx1[rip]
	jmp	.L377
.L391:
	movsd	xmm0, QWORD PTR dy1[rip]
	movsd	xmm1, QWORD PTR dz1[rip]
	comisd	xmm0, xmm1
	jbe	.L392
	movsd	xmm0, QWORD PTR dy1[rip]
	jmp	.L377
.L392:
	movsd	xmm0, QWORD PTR dz1[rip]
.L377:
	movsd	xmm1, QWORD PTR .LC70[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dssp[rip], xmm0
	movsd	xmm1, QWORD PTR dssp[rip]
	movsd	xmm0, QWORD PTR .LC54[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR c4dssp[rip], xmm0
	movsd	xmm1, QWORD PTR dssp[rip]
	movsd	xmm0, QWORD PTR .LC53[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR c5dssp[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR tx1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dttx1[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR tx2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dttx2[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR ty1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dtty1[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR ty2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dtty2[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR tz1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dttz1[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR tz2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dttz2[rip], xmm0
	movsd	xmm0, QWORD PTR dttx1[rip]
	addsd	xmm0, xmm0
	movsd	QWORD PTR c2dttx1[rip], xmm0
	movsd	xmm0, QWORD PTR dtty1[rip]
	addsd	xmm0, xmm0
	movsd	QWORD PTR c2dtty1[rip], xmm0
	movsd	xmm0, QWORD PTR dttz1[rip]
	addsd	xmm0, xmm0
	movsd	QWORD PTR c2dttz1[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR dssp[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dtdssp[rip], xmm0
	movsd	xmm0, QWORD PTR dtdssp[rip]
	movsd	QWORD PTR comz1[rip], xmm0
	movsd	xmm1, QWORD PTR dtdssp[rip]
	movsd	xmm0, QWORD PTR .LC54[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR comz4[rip], xmm0
	movsd	xmm1, QWORD PTR dtdssp[rip]
	movsd	xmm0, QWORD PTR .LC53[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR comz5[rip], xmm0
	movsd	xmm1, QWORD PTR dtdssp[rip]
	movsd	xmm0, QWORD PTR .LC56[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR comz6[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm0, QWORD PTR tx3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR c3c4tx3[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm0, QWORD PTR ty3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR c3c4ty3[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm0, QWORD PTR tz3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR c3c4tz3[rip], xmm0
	movsd	xmm1, QWORD PTR dx1[rip]
	movsd	xmm0, QWORD PTR tx1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dx1tx1[rip], xmm0
	movsd	xmm1, QWORD PTR dx2[rip]
	movsd	xmm0, QWORD PTR tx1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dx2tx1[rip], xmm0
	movsd	xmm1, QWORD PTR dx3[rip]
	movsd	xmm0, QWORD PTR tx1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dx3tx1[rip], xmm0
	movsd	xmm1, QWORD PTR dx4[rip]
	movsd	xmm0, QWORD PTR tx1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dx4tx1[rip], xmm0
	movsd	xmm1, QWORD PTR dx5[rip]
	movsd	xmm0, QWORD PTR tx1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dx5tx1[rip], xmm0
	movsd	xmm1, QWORD PTR dy1[rip]
	movsd	xmm0, QWORD PTR ty1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dy1ty1[rip], xmm0
	movsd	xmm1, QWORD PTR dy2[rip]
	movsd	xmm0, QWORD PTR ty1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dy2ty1[rip], xmm0
	movsd	xmm1, QWORD PTR dy3[rip]
	movsd	xmm0, QWORD PTR ty1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dy3ty1[rip], xmm0
	movsd	xmm1, QWORD PTR dy4[rip]
	movsd	xmm0, QWORD PTR ty1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dy4ty1[rip], xmm0
	movsd	xmm1, QWORD PTR dy5[rip]
	movsd	xmm0, QWORD PTR ty1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dy5ty1[rip], xmm0
	movsd	xmm1, QWORD PTR dz1[rip]
	movsd	xmm0, QWORD PTR tz1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dz1tz1[rip], xmm0
	movsd	xmm1, QWORD PTR dz2[rip]
	movsd	xmm0, QWORD PTR tz1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dz2tz1[rip], xmm0
	movsd	xmm1, QWORD PTR dz3[rip]
	movsd	xmm0, QWORD PTR tz1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dz3tz1[rip], xmm0
	movsd	xmm1, QWORD PTR dz4[rip]
	movsd	xmm0, QWORD PTR tz1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dz4tz1[rip], xmm0
	movsd	xmm1, QWORD PTR dz5[rip]
	movsd	xmm0, QWORD PTR tz1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR dz5tz1[rip], xmm0
	movsd	xmm0, QWORD PTR .LC71[rip]
	movsd	QWORD PTR c2iv[rip], xmm0
	movsd	xmm0, QWORD PTR .LC72[rip]
	movsd	QWORD PTR con43[rip], xmm0
	movsd	xmm0, QWORD PTR .LC73[rip]
	movsd	QWORD PTR con16[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tx3[rip]
	movsd	xmm0, QWORD PTR con43[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tx3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR xxcon1[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tx3[rip]
	movsd	xmm0, QWORD PTR tx3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR xxcon2[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tx3[rip]
	movsd	xmm0, QWORD PTR conz1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tx3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR xxcon3[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tx3[rip]
	movsd	xmm0, QWORD PTR con16[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tx3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR xxcon4[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tx3[rip]
	movsd	xmm0, QWORD PTR c1c5[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tx3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR xxcon5[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4ty3[rip]
	movsd	xmm0, QWORD PTR con43[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR ty3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR yycon1[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4ty3[rip]
	movsd	xmm0, QWORD PTR ty3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR yycon2[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4ty3[rip]
	movsd	xmm0, QWORD PTR conz1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR ty3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR yycon3[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4ty3[rip]
	movsd	xmm0, QWORD PTR con16[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR ty3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR yycon4[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4ty3[rip]
	movsd	xmm0, QWORD PTR c1c5[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR ty3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR yycon5[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tz3[rip]
	movsd	xmm0, QWORD PTR con43[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tz3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR zzcon1[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tz3[rip]
	movsd	xmm0, QWORD PTR tz3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR zzcon2[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tz3[rip]
	movsd	xmm0, QWORD PTR conz1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tz3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR zzcon3[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tz3[rip]
	movsd	xmm0, QWORD PTR con16[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tz3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR zzcon4[rip], xmm0
	movsd	xmm1, QWORD PTR c3c4tz3[rip]
	movsd	xmm0, QWORD PTR c1c5[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tz3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR zzcon5[rip], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	set_constants, .-set_constants
	.globl	matvec_sub
	.type	matvec_sub, @function
matvec_sub:
.LFB23:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 16
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 24
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 32
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	matvec_sub, .-matvec_sub
	.globl	matmul_sub
	.type	matmul_sub, @function
matmul_sub:
.LFB24:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 40
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 80
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 120
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 160
	movsd	xmm2, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE24:
	.size	matmul_sub, .-matmul_sub
	.globl	binvcrhs
	.type	binvcrhs, @function
binvcrhs:
.LFB25:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -40[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 16[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 32[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	mulsd	xmm0, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -40[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 16[rax]
	mulsd	xmm0, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -40[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	mulsd	xmm0, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -40[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 32[rax]
	mulsd	xmm0, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -40[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 16
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 24
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE25:
	.size	binvcrhs, .-binvcrhs
	.globl	binvrhs
	.type	binvrhs, @function
binvrhs:
.LFB26:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 16[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 32[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm1, QWORD PTR 8[rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 16[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 40
	movsd	xmm0, QWORD PTR 32[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm1, QWORD PTR 16[rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 80
	movsd	xmm0, QWORD PTR 32[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 16[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm1, QWORD PTR 24[rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 16[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 16[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 120
	movsd	xmm0, QWORD PTR 32[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 24[rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	subsd	xmm0, xmm1
	movsd	QWORD PTR 32[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm1, QWORD PTR 32[rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 8[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 16[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 16
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 160
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 32
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 24
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE26:
	.size	binvrhs, .-binvrhs
	.section	.rodata
	.align 8
.LC150:
	.string	" Verification being performed for class %c\n"
	.align 8
.LC151:
	.string	" accuracy setting for epsilon = %20.13E\n"
	.align 8
.LC152:
	.string	" DT does not match the reference value of %15.8E\n"
.LC153:
	.string	" Unknown class"
	.align 8
.LC154:
	.string	" Comparison of RMS-norms of residual"
.LC155:
	.string	" RMS-norms of residual"
.LC156:
	.string	"          %2d%20.13E\n"
	.align 8
.LC157:
	.string	"          %2d%20.13E%20.13E%20.13E\n"
	.align 8
.LC158:
	.string	" FAILURE: %2d%20.13E%20.13E%20.13E\n"
	.align 8
.LC159:
	.string	" Comparison of RMS-norms of solution error"
.LC160:
	.string	" RMS-norms of solution error"
.LC161:
	.string	" No reference values provided"
.LC162:
	.string	" No verification performed"
.LC163:
	.string	" Verification Successful"
.LC164:
	.string	" Verification failed"
	.text
	.globl	verify
	.type	verify, @function
verify:
.LFB27:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 352
	mov	DWORD PTR -324[rbp], edi
	mov	QWORD PTR -336[rbp], rsi
	mov	QWORD PTR -344[rbp], rdx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	pxor	xmm0, xmm0
	movsd	QWORD PTR -304[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC74[rip]
	movsd	QWORD PTR -296[rbp], xmm0
	lea	rax, -96[rbp]
	mov	rdi, rax
	call	error_norm
	mov	eax, 0
	call	compute_rhs
	lea	rax, -48[rbp]
	mov	rdi, rax
	call	rhs_norm
	mov	DWORD PTR -308[rbp], 0
	jmp	.L398
.L399:
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	movsd	xmm1, QWORD PTR dt[rip]
	divsd	xmm0, xmm1
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	QWORD PTR -48[rbp+rax*8], xmm0
	add	DWORD PTR -308[rbp], 1
.L398:
	cmp	DWORD PTR -308[rbp], 4
	jle	.L399
	mov	rax, QWORD PTR -336[rbp]
	mov	BYTE PTR [rax], 85
	mov	rax, QWORD PTR -344[rbp]
	mov	DWORD PTR [rax], 1
	mov	DWORD PTR -308[rbp], 0
	jmp	.L400
.L401:
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR -288[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR -240[rbp+rax*8], xmm0
	add	DWORD PTR -308[rbp], 1
.L400:
	cmp	DWORD PTR -308[rbp], 4
	jle	.L401
	mov	eax, DWORD PTR grid_points[rip]
	cmp	eax, 12
	jne	.L402
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	eax, 12
	jne	.L402
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	eax, 12
	jne	.L402
	cmp	DWORD PTR -324[rbp], 60
	jne	.L402
	mov	rax, QWORD PTR -336[rbp]
	mov	BYTE PTR [rax], 83
	movsd	xmm0, QWORD PTR .LC60[rip]
	movsd	QWORD PTR -304[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC75[rip]
	movsd	QWORD PTR -288[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC76[rip]
	movsd	QWORD PTR -280[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC77[rip]
	movsd	QWORD PTR -272[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC78[rip]
	movsd	QWORD PTR -264[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC79[rip]
	movsd	QWORD PTR -256[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC80[rip]
	movsd	QWORD PTR -240[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC81[rip]
	movsd	QWORD PTR -232[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC82[rip]
	movsd	QWORD PTR -224[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC83[rip]
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC84[rip]
	movsd	QWORD PTR -208[rbp], xmm0
	jmp	.L403
.L402:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	eax, 24
	jne	.L404
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	eax, 24
	jne	.L404
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	eax, 24
	jne	.L404
	cmp	DWORD PTR -324[rbp], 200
	jne	.L404
	mov	rax, QWORD PTR -336[rbp]
	mov	BYTE PTR [rax], 87
	movsd	xmm0, QWORD PTR .LC22[rip]
	movsd	QWORD PTR -304[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC85[rip]
	movsd	QWORD PTR -288[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC86[rip]
	movsd	QWORD PTR -280[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC87[rip]
	movsd	QWORD PTR -272[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC88[rip]
	movsd	QWORD PTR -264[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC89[rip]
	movsd	QWORD PTR -256[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC90[rip]
	movsd	QWORD PTR -240[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC91[rip]
	movsd	QWORD PTR -232[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC92[rip]
	movsd	QWORD PTR -224[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC93[rip]
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC94[rip]
	movsd	QWORD PTR -208[rbp], xmm0
	jmp	.L403
.L404:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	eax, 64
	jne	.L405
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	eax, 64
	jne	.L405
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	eax, 64
	jne	.L405
	cmp	DWORD PTR -324[rbp], 200
	jne	.L405
	mov	rax, QWORD PTR -336[rbp]
	mov	BYTE PTR [rax], 65
	movsd	xmm0, QWORD PTR .LC22[rip]
	movsd	QWORD PTR -304[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC95[rip]
	movsd	QWORD PTR -288[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC96[rip]
	movsd	QWORD PTR -280[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC97[rip]
	movsd	QWORD PTR -272[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC98[rip]
	movsd	QWORD PTR -264[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC99[rip]
	movsd	QWORD PTR -256[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC100[rip]
	movsd	QWORD PTR -240[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC101[rip]
	movsd	QWORD PTR -232[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC102[rip]
	movsd	QWORD PTR -224[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC103[rip]
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC104[rip]
	movsd	QWORD PTR -208[rbp], xmm0
	jmp	.L403
.L405:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	eax, 102
	jne	.L406
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	eax, 102
	jne	.L406
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	eax, 102
	jne	.L406
	cmp	DWORD PTR -324[rbp], 200
	jne	.L406
	mov	rax, QWORD PTR -336[rbp]
	mov	BYTE PTR [rax], 66
	movsd	xmm0, QWORD PTR .LC105[rip]
	movsd	QWORD PTR -304[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC106[rip]
	movsd	QWORD PTR -288[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC107[rip]
	movsd	QWORD PTR -280[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC108[rip]
	movsd	QWORD PTR -272[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC109[rip]
	movsd	QWORD PTR -264[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC110[rip]
	movsd	QWORD PTR -256[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC111[rip]
	movsd	QWORD PTR -240[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC112[rip]
	movsd	QWORD PTR -232[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC113[rip]
	movsd	QWORD PTR -224[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC114[rip]
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC115[rip]
	movsd	QWORD PTR -208[rbp], xmm0
	jmp	.L403
.L406:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	eax, 162
	jne	.L407
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	eax, 162
	jne	.L407
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	eax, 162
	jne	.L407
	cmp	DWORD PTR -324[rbp], 200
	jne	.L407
	mov	rax, QWORD PTR -336[rbp]
	mov	BYTE PTR [rax], 67
	movsd	xmm0, QWORD PTR .LC116[rip]
	movsd	QWORD PTR -304[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC117[rip]
	movsd	QWORD PTR -288[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC118[rip]
	movsd	QWORD PTR -280[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC119[rip]
	movsd	QWORD PTR -272[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC120[rip]
	movsd	QWORD PTR -264[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC121[rip]
	movsd	QWORD PTR -256[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC122[rip]
	movsd	QWORD PTR -240[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC123[rip]
	movsd	QWORD PTR -232[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC124[rip]
	movsd	QWORD PTR -224[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC125[rip]
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC126[rip]
	movsd	QWORD PTR -208[rbp], xmm0
	jmp	.L403
.L407:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	eax, 408
	jne	.L408
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	eax, 408
	jne	.L408
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	eax, 408
	jne	.L408
	cmp	DWORD PTR -324[rbp], 250
	jne	.L408
	mov	rax, QWORD PTR -336[rbp]
	mov	BYTE PTR [rax], 68
	movsd	xmm0, QWORD PTR .LC127[rip]
	movsd	QWORD PTR -304[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC128[rip]
	movsd	QWORD PTR -288[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC129[rip]
	movsd	QWORD PTR -280[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC130[rip]
	movsd	QWORD PTR -272[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC131[rip]
	movsd	QWORD PTR -264[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC132[rip]
	movsd	QWORD PTR -256[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC133[rip]
	movsd	QWORD PTR -240[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC134[rip]
	movsd	QWORD PTR -232[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC135[rip]
	movsd	QWORD PTR -224[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC136[rip]
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC137[rip]
	movsd	QWORD PTR -208[rbp], xmm0
	jmp	.L403
.L408:
	mov	eax, DWORD PTR grid_points[rip]
	cmp	eax, 1020
	jne	.L409
	mov	eax, DWORD PTR grid_points[rip+4]
	cmp	eax, 1020
	jne	.L409
	mov	eax, DWORD PTR grid_points[rip+8]
	cmp	eax, 1020
	jne	.L409
	cmp	DWORD PTR -324[rbp], 250
	jne	.L409
	mov	rax, QWORD PTR -336[rbp]
	mov	BYTE PTR [rax], 69
	movsd	xmm0, QWORD PTR .LC138[rip]
	movsd	QWORD PTR -304[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC139[rip]
	movsd	QWORD PTR -288[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC140[rip]
	movsd	QWORD PTR -280[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC141[rip]
	movsd	QWORD PTR -272[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC142[rip]
	movsd	QWORD PTR -264[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC143[rip]
	movsd	QWORD PTR -256[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC144[rip]
	movsd	QWORD PTR -240[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC145[rip]
	movsd	QWORD PTR -232[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC146[rip]
	movsd	QWORD PTR -224[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC147[rip]
	movsd	QWORD PTR -216[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC148[rip]
	movsd	QWORD PTR -208[rbp], xmm0
	jmp	.L403
.L409:
	mov	rax, QWORD PTR -344[rbp]
	mov	DWORD PTR [rax], 0
.L403:
	mov	DWORD PTR -308[rbp], 0
	jmp	.L410
.L411:
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -288[rbp+rax*8]
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -288[rbp+rax*8]
	divsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC149[rip]
	andpd	xmm0, xmm1
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	QWORD PTR -192[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -96[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -240[rbp+rax*8]
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -240[rbp+rax*8]
	divsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC149[rip]
	andpd	xmm0, xmm1
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	QWORD PTR -144[rbp+rax*8], xmm0
	add	DWORD PTR -308[rbp], 1
.L410:
	cmp	DWORD PTR -308[rbp], 4
	jle	.L411
	mov	rax, QWORD PTR -336[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 85
	je	.L412
	mov	rax, QWORD PTR -336[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	esi, eax
	lea	rdi, .LC150[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -296[rbp]
	movq	xmm0, rax
	lea	rdi, .LC151[rip]
	mov	eax, 1
	call	printf@PLT
	movsd	xmm0, QWORD PTR dt[rip]
	subsd	xmm0, QWORD PTR -304[rbp]
	movq	xmm1, QWORD PTR .LC149[rip]
	andpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -296[rbp]
	comisd	xmm0, xmm1
	setnb	al
	movzx	edx, al
	mov	rax, QWORD PTR -344[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -344[rbp]
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	jne	.L413
	mov	rax, QWORD PTR -336[rbp]
	mov	BYTE PTR [rax], 85
	mov	rax, QWORD PTR -304[rbp]
	movq	xmm0, rax
	lea	rdi, .LC152[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L413
.L412:
	lea	rdi, .LC153[rip]
	call	puts@PLT
.L413:
	mov	rax, QWORD PTR -336[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 85
	je	.L414
	lea	rdi, .LC154[rip]
	call	puts@PLT
	jmp	.L415
.L414:
	lea	rdi, .LC155[rip]
	call	puts@PLT
.L415:
	mov	DWORD PTR -308[rbp], 0
	jmp	.L416
.L421:
	mov	rax, QWORD PTR -336[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 85
	jne	.L417
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	mov	rax, QWORD PTR -48[rbp+rax*8]
	mov	edx, DWORD PTR -308[rbp]
	add	edx, 1
	movq	xmm0, rax
	mov	esi, edx
	lea	rdi, .LC156[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L418
.L417:
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -192[rbp+rax*8]
	movsd	xmm0, QWORD PTR -296[rbp]
	comisd	xmm0, xmm1
	jb	.L436
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -192[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -288[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	mov	rax, QWORD PTR -48[rbp+rax*8]
	mov	edx, DWORD PTR -308[rbp]
	add	edx, 1
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	mov	esi, edx
	lea	rdi, .LC157[rip]
	mov	eax, 3
	call	printf@PLT
	jmp	.L418
.L436:
	mov	rax, QWORD PTR -344[rbp]
	mov	DWORD PTR [rax], 0
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -192[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -288[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	mov	rax, QWORD PTR -48[rbp+rax*8]
	mov	edx, DWORD PTR -308[rbp]
	add	edx, 1
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	mov	esi, edx
	lea	rdi, .LC158[rip]
	mov	eax, 3
	call	printf@PLT
.L418:
	add	DWORD PTR -308[rbp], 1
.L416:
	cmp	DWORD PTR -308[rbp], 4
	jle	.L421
	mov	rax, QWORD PTR -336[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 85
	je	.L422
	lea	rdi, .LC159[rip]
	call	puts@PLT
	jmp	.L423
.L422:
	lea	rdi, .LC160[rip]
	call	puts@PLT
.L423:
	mov	DWORD PTR -308[rbp], 0
	jmp	.L424
.L429:
	mov	rax, QWORD PTR -336[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 85
	jne	.L425
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	mov	rax, QWORD PTR -96[rbp+rax*8]
	mov	edx, DWORD PTR -308[rbp]
	add	edx, 1
	movq	xmm0, rax
	mov	esi, edx
	lea	rdi, .LC156[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L426
.L425:
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -144[rbp+rax*8]
	movsd	xmm0, QWORD PTR -296[rbp]
	comisd	xmm0, xmm1
	jb	.L437
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -144[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -240[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	mov	rax, QWORD PTR -96[rbp+rax*8]
	mov	edx, DWORD PTR -308[rbp]
	add	edx, 1
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	mov	esi, edx
	lea	rdi, .LC157[rip]
	mov	eax, 3
	call	printf@PLT
	jmp	.L426
.L437:
	mov	rax, QWORD PTR -344[rbp]
	mov	DWORD PTR [rax], 0
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -144[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -240[rbp+rax*8]
	mov	eax, DWORD PTR -308[rbp]
	cdqe
	mov	rax, QWORD PTR -96[rbp+rax*8]
	mov	edx, DWORD PTR -308[rbp]
	add	edx, 1
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	mov	esi, edx
	lea	rdi, .LC158[rip]
	mov	eax, 3
	call	printf@PLT
.L426:
	add	DWORD PTR -308[rbp], 1
.L424:
	cmp	DWORD PTR -308[rbp], 4
	jle	.L429
	mov	rax, QWORD PTR -336[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 85
	jne	.L430
	lea	rdi, .LC161[rip]
	call	puts@PLT
	lea	rdi, .LC162[rip]
	call	puts@PLT
	jmp	.L438
.L430:
	mov	rax, QWORD PTR -344[rbp]
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	je	.L432
	lea	rdi, .LC163[rip]
	call	puts@PLT
	jmp	.L438
.L432:
	lea	rdi, .LC164[rip]
	call	puts@PLT
.L438:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L433
	call	__stack_chk_fail@PLT
.L433:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	verify, .-verify
	.globl	x_solve
	.type	x_solve, @function
x_solve:
.LFB28:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L440
	mov	edi, 6
	call	timer_start
.L440:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	mov	DWORD PTR -4[rbp], eax
	mov	DWORD PTR -16[rbp], 1
	jmp	.L441
.L456:
	mov	DWORD PTR -20[rbp], 1
	jmp	.L442
.L455:
	mov	DWORD PTR -24[rbp], 0
	jmp	.L443
.L444:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR tmp1[rip], xmm0
	movsd	xmm1, QWORD PTR tmp1[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp2[rip], xmm0
	movsd	xmm1, QWORD PTR tmp1[rip]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp3[rip], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+40]
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+80]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+120]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+160]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR c2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR tmp2[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+8]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm2, QWORD PTR c2[rip]
	movsd	xmm0, QWORD PTR .LC58[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	divsd	xmm0, xmm2
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+48]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm2
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+88]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm2
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+128]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+168]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+16]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+56]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+96]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+136]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+176]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+24]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+64]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+104]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+144]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+184]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR c1[rip]
	mulsd	xmm2, xmm1
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm2
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+32]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR c1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR tmp2[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR c2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+72]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+112]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+152]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR c1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+192]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR con43[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR con43[rip]
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR con43[rip]
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR c1345[rip]
	subsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp3[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm3, QWORD PTR c1345[rip]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tmp3[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm3
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm3, QWORD PTR c1345[rip]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tmp3[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm3
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR c1345[rip]
	movsd	xmm1, QWORD PTR tmp2[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR con43[rip]
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR c1345[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movsd	xmm2, QWORD PTR c1345[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movsd	xmm2, QWORD PTR c1345[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR c1345[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -24[rbp], 1
.L443:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -4[rbp]
	jle	.L444
	mov	eax, DWORD PTR -4[rbp]
	mov	esi, eax
	lea	rdi, lhs[rip]
	call	lhsinit
	mov	DWORD PTR -24[rbp], 1
	jmp	.L445
.L446:
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR tx1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp1[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR tx2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp2[rip], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+40]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+40]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+80]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+80]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+120]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+120]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+160]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+160]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+8]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+48]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+48]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+88]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+88]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+128]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+128]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+168]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+168]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+16]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+56]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+56]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+96]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx3[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+96]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+136]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+136]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+176]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+176]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+24]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+64]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+64]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+104]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+104]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+144]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx4[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+144]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+184]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+184]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+32]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+72]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+72]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+112]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+112]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+152]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+152]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+192]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx5[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+192]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dx1[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+200]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+240]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+280]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+320]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+360]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+208]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dx2[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+248]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+288]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+328]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+368]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+216]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+256]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dx3[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+296]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+336]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+376]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+224]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+264]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+304]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dx4[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+344]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+384]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+232]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+272]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+312]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+352]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dx5[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+392]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+400]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+40]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+440]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+80]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+480]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+120]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+520]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+160]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+560]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+408]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+48]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+448]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+88]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+488]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+128]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+528]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+168]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+568]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+416]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+56]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+456]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+96]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx3[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+496]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+136]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+536]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+176]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+576]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+424]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+64]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+464]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+104]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+504]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+144]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx4[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+544]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+184]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+584]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+432]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+72]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+472]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+112]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+512]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+152]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+552]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+192]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dx5[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+592]
	movsd	QWORD PTR [rax+rdx], xmm0
	add	DWORD PTR -24[rbp], 1
.L445:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -24[rbp]
	jg	.L446
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rdx, rax, 1000
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rax, rdx
	mov	rdx, rax
	lea	rsi, lhs[rip+400]
	lea	rdi, lhs[rip+200]
	call	binvcrhs
	mov	DWORD PTR -24[rbp], 1
	jmp	.L447
.L448:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	sal	rax, 3
	mov	ecx, DWORD PTR -20[rbp]
	movsx	rcx, ecx
	imul	rcx, rcx, 1000
	add	rcx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rcx, rax
	lea	rax, rhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matvec_sub
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, 200[rax]
	lea	rax, lhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	cdqe
	imul	rax, rax, 600
	lea	rcx, 400[rax]
	lea	rax, lhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matmul_sub
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rcx, 400[rax]
	lea	rax, lhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, 200[rax]
	lea	rax, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	binvcrhs
	add	DWORD PTR -24[rbp], 1
.L447:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -24[rbp]
	jg	.L448
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	sal	rax, 3
	mov	ecx, DWORD PTR -20[rbp]
	movsx	rcx, ecx
	imul	rcx, rcx, 1000
	add	rcx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rcx, rax
	lea	rax, rhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matvec_sub
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, 200[rax]
	lea	rax, lhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	cdqe
	imul	rax, rax, 600
	lea	rcx, 400[rax]
	lea	rax, lhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matmul_sub
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rcx, 200[rax]
	lea	rax, lhs[rip]
	add	rax, rcx
	mov	rsi, rdx
	mov	rdi, rax
	call	binvrhs
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	mov	DWORD PTR -24[rbp], eax
	jmp	.L449
.L454:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L450
.L453:
	mov	DWORD PTR -8[rbp], 0
	jmp	.L451
.L452:
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	mov	edx, DWORD PTR -24[rbp]
	movsx	rcx, edx
	mov	rdx, rax
	sal	rdx, 2
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	mov	rcx, rax
	sal	rcx, 4
	sub	rcx, rax
	lea	rax, [rdx+rcx]
	add	rax, rsi
	add	rax, 50
	lea	rdx, 0[0+rax*8]
	lea	rax, lhs[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -24[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -8[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	movsx	rcx, ecx
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -8[rbp], 1
.L451:
	cmp	DWORD PTR -8[rbp], 4
	jle	.L452
	add	DWORD PTR -12[rbp], 1
.L450:
	cmp	DWORD PTR -12[rbp], 4
	jle	.L453
	sub	DWORD PTR -24[rbp], 1
.L449:
	cmp	DWORD PTR -24[rbp], 0
	jns	.L454
	add	DWORD PTR -20[rbp], 1
.L442:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -20[rbp], eax
	jl	.L455
	add	DWORD PTR -16[rbp], 1
.L441:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -16[rbp], eax
	jl	.L456
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L458
	mov	edi, 6
	call	timer_stop
.L458:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	x_solve, .-x_solve
	.globl	y_solve
	.type	y_solve, @function
y_solve:
.LFB29:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L460
	mov	edi, 7
	call	timer_start
.L460:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	mov	DWORD PTR -4[rbp], eax
	mov	DWORD PTR -16[rbp], 1
	jmp	.L461
.L476:
	mov	DWORD PTR -24[rbp], 1
	jmp	.L462
.L475:
	mov	DWORD PTR -20[rbp], 0
	jmp	.L463
.L464:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, rho_i[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR tmp1[rip], xmm0
	movsd	xmm1, QWORD PTR tmp1[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp2[rip], xmm0
	movsd	xmm1, QWORD PTR tmp1[rip]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp3[rip], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+40]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+80]
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+120]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+160]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+8]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+48]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+88]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+128]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+168]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR c2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+16]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+56]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm2, QWORD PTR c2[rip]
	movsd	xmm0, QWORD PTR .LC58[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+96]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+136]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+176]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+24]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+64]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+104]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+144]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+184]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR c1[rip]
	mulsd	xmm2, xmm1
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+32]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+72]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR c1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm3, xmm1
	movsd	xmm1, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR c2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+112]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+152]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR c1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+192]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR con43[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR con43[rip]
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movsd	xmm1, QWORD PTR c1345[rip]
	subsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp3[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	mulsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR con43[rip]
	movsd	xmm1, QWORD PTR c3c4[rip]
	mulsd	xmm1, xmm2
	movsd	xmm3, QWORD PTR c1345[rip]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tmp3[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm3
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm3, QWORD PTR c1345[rip]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tmp3[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm3
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR c1345[rip]
	movsd	xmm1, QWORD PTR tmp2[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movsd	xmm2, QWORD PTR c1345[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR con43[rip]
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR c1345[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movsd	xmm2, QWORD PTR c1345[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR c1345[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -20[rbp], 1
.L463:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -4[rbp]
	jle	.L464
	mov	eax, DWORD PTR -4[rbp]
	mov	esi, eax
	lea	rdi, lhs[rip]
	call	lhsinit
	mov	DWORD PTR -20[rbp], 1
	jmp	.L465
.L466:
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR ty1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp1[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR ty2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp2[rip], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+40]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+40]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+80]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+80]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+120]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+120]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+160]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+160]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+8]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+48]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+48]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+88]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+88]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+128]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+128]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+168]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+168]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+16]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+56]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+56]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+96]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy3[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+96]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+136]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+136]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+176]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+176]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+24]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+64]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+64]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+104]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+104]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+144]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy4[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+144]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+184]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+184]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+32]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+72]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+72]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+112]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+112]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+152]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+152]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+192]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy5[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+192]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dy1[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+200]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+240]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+280]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+320]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+360]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+208]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dy2[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+248]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+288]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+328]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+368]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+216]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+256]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dy3[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+296]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+336]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+376]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+224]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+264]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+304]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dy4[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+344]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+384]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+232]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+272]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+312]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+352]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dy5[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+392]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+400]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+40]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+440]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+80]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+480]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+120]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+520]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+160]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+560]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+408]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+48]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+448]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+88]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+488]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+128]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+528]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+168]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+568]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+416]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+56]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+456]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+96]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy3[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+496]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+136]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+536]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+176]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+576]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+424]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+64]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+464]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+104]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+504]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+144]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy4[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+544]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+184]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+584]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+432]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+72]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+472]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+112]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+512]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+152]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+552]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+192]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dy5[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+592]
	movsd	QWORD PTR [rax+rdx], xmm0
	add	DWORD PTR -20[rbp], 1
.L465:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	jg	.L466
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -16[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rax, rdx
	mov	rdx, rax
	lea	rsi, lhs[rip+400]
	lea	rdi, lhs[rip+200]
	call	binvcrhs
	mov	DWORD PTR -20[rbp], 1
	jmp	.L467
.L468:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -20[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	sal	rax, 3
	movsx	rcx, esi
	imul	rcx, rcx, 1000
	add	rcx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rcx, rax
	lea	rax, rhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matvec_sub
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, 200[rax]
	lea	rax, lhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	cdqe
	imul	rax, rax, 600
	lea	rcx, 400[rax]
	lea	rax, lhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matmul_sub
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rcx, 400[rax]
	lea	rax, lhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, 200[rax]
	lea	rax, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	binvcrhs
	add	DWORD PTR -20[rbp], 1
.L467:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	jg	.L468
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -4[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	sal	rax, 3
	movsx	rcx, esi
	imul	rcx, rcx, 1000
	add	rcx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rcx, rax
	lea	rax, rhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matvec_sub
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, 200[rax]
	lea	rax, lhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	cdqe
	imul	rax, rax, 600
	lea	rcx, 400[rax]
	lea	rax, lhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matmul_sub
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -4[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rcx, 200[rax]
	lea	rax, lhs[rip]
	add	rax, rcx
	mov	rsi, rdx
	mov	rdi, rax
	call	binvrhs
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	mov	DWORD PTR -20[rbp], eax
	jmp	.L469
.L474:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L470
.L473:
	mov	DWORD PTR -8[rbp], 0
	jmp	.L471
.L472:
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rcx, edx
	mov	rdx, rax
	sal	rdx, 2
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	mov	rcx, rax
	sal	rcx, 4
	sub	rcx, rax
	lea	rax, [rdx+rcx]
	add	rax, rsi
	add	rax, 50
	lea	rdx, 0[0+rax*8]
	lea	rax, lhs[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -20[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -8[rbp]
	movsx	rdi, eax
	movsx	rdx, edx
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -8[rbp], 1
.L471:
	cmp	DWORD PTR -8[rbp], 4
	jle	.L472
	add	DWORD PTR -12[rbp], 1
.L470:
	cmp	DWORD PTR -12[rbp], 4
	jle	.L473
	sub	DWORD PTR -20[rbp], 1
.L469:
	cmp	DWORD PTR -20[rbp], 0
	jns	.L474
	add	DWORD PTR -24[rbp], 1
.L462:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -24[rbp], eax
	jl	.L475
	add	DWORD PTR -16[rbp], 1
.L461:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	cmp	DWORD PTR -16[rbp], eax
	jl	.L476
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L478
	mov	edi, 7
	call	timer_stop
.L478:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	y_solve, .-y_solve
	.globl	z_solve
	.type	z_solve, @function
z_solve:
.LFB30:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L480
	mov	edi, 8
	call	timer_start
.L480:
	mov	eax, DWORD PTR grid_points[rip+8]
	sub	eax, 1
	mov	DWORD PTR -4[rbp], eax
	mov	DWORD PTR -20[rbp], 1
	jmp	.L481
.L496:
	mov	DWORD PTR -24[rbp], 1
	jmp	.L482
.L495:
	mov	DWORD PTR -16[rbp], 0
	jmp	.L483
.L484:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 1000
	add	rdx, rax
	imul	rax, rcx, 25000
	add	rdx, rax
	lea	rax, u[rip]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR .LC43[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR tmp1[rip], xmm0
	movsd	xmm1, QWORD PTR tmp1[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp2[rip], xmm0
	movsd	xmm1, QWORD PTR tmp1[rip]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp3[rip], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+40]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+80]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+120]
	movsd	xmm0, QWORD PTR .LC43[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+160]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+8]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+48]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+88]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+128]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+168]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+16]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+56]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+96]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+136]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+176]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR c2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+24]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+64]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+104]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm2, QWORD PTR c2[rip]
	movsd	xmm0, QWORD PTR .LC58[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+144]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+184]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, square[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR c1[rip]
	mulsd	xmm2, xmm1
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+32]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+72]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+112]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR c1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, qs[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm3, xmm1
	movsd	xmm1, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm3
	addsd	xmm2, xmm1
	movsd	xmm1, QWORD PTR c2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+152]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR c1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+192]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR con43[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR con43[rip]
	movsd	xmm0, QWORD PTR c3[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR c4[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movsd	xmm1, QWORD PTR c1345[rip]
	subsd	xmm0, xmm1
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp3[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR c3c4[rip]
	movsd	xmm3, QWORD PTR c1345[rip]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tmp3[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm3
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR con43[rip]
	movsd	xmm1, QWORD PTR c3c4[rip]
	mulsd	xmm1, xmm2
	movsd	xmm3, QWORD PTR c1345[rip]
	movapd	xmm2, xmm1
	subsd	xmm2, xmm3
	movsd	xmm1, QWORD PTR tmp3[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm3
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR c1345[rip]
	movsd	xmm1, QWORD PTR tmp2[rip]
	mulsd	xmm2, xmm1
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+32]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movsd	xmm2, QWORD PTR c1345[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+8]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm0, QWORD PTR c3c4[rip]
	movsd	xmm2, QWORD PTR c1345[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+16]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR con43[rip]
	movsd	xmm0, QWORD PTR c3c4[rip]
	mulsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR c1345[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm1, xmm0
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	imul	rdx, rsi, 25000
	add	rdx, rax
	imul	rax, rcx, 1000
	add	rdx, rax
	lea	rax, u[rip+24]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	QWORD PTR [rdx+rax], xmm0
	movsd	xmm1, QWORD PTR c1345[rip]
	movsd	xmm0, QWORD PTR tmp1[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -16[rbp], 1
.L483:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -4[rbp]
	jle	.L484
	mov	eax, DWORD PTR -4[rbp]
	mov	esi, eax
	lea	rdi, lhs[rip]
	call	lhsinit
	mov	DWORD PTR -16[rbp], 1
	jmp	.L485
.L486:
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR tz1[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp1[rip], xmm0
	movsd	xmm1, QWORD PTR dt[rip]
	movsd	xmm0, QWORD PTR tz2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR tmp2[rip], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+40]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+40]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+80]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+80]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+120]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+120]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+160]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+160]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+8]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+48]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+48]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+88]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+88]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+128]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+128]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+168]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+168]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+16]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+56]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+56]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+96]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz3[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+96]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+136]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+136]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+176]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+176]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+24]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+64]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+64]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+104]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+104]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+144]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz4[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+144]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+184]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+184]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+32]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+72]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+72]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+112]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+112]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+152]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+152]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp2[rip]
	movq	xmm1, QWORD PTR .LC57[rip]
	xorpd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+192]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz5[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+192]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dz1[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+200]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+240]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+280]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+320]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+360]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+208]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dz2[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+248]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+288]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+328]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+368]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+216]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+256]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dz3[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+296]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+336]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+376]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+224]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+264]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+304]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dz4[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+344]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+384]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+232]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+272]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+312]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+352]
	movsd	QWORD PTR [rax+rdx], xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm1, xmm0
	addsd	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC43[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR tmp1[rip]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR dz5[rip]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+392]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+400]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+40]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+40]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+440]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+80]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+80]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+480]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+120]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+120]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+520]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+160]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+160]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+560]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+8]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+408]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+48]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+48]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz2[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+448]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+88]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+88]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+488]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+128]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+128]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+528]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+168]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+168]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+568]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+16]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+16]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+416]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+56]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+56]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+456]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+96]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+96]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz3[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+496]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+136]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+136]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+536]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+176]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+176]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+576]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+24]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+24]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+424]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+64]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+64]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+464]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+104]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+104]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+504]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+144]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+144]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz4[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+544]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+184]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+184]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+584]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+32]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+32]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+432]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+72]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+72]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+472]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+112]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+112]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+512]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+152]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+152]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+552]
	movsd	QWORD PTR [rax+rdx], xmm0
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, fjac[rip+192]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR tmp2[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	lea	rax, njac[rip+192]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR tmp1[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR tmp1[rip]
	movsd	xmm1, QWORD PTR dz5[rip]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, lhs[rip+592]
	movsd	QWORD PTR [rax+rdx], xmm0
	add	DWORD PTR -16[rbp], 1
.L485:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -16[rbp]
	jg	.L486
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rax, rdx
	mov	rdx, rax
	lea	rsi, lhs[rip+400]
	lea	rdi, lhs[rip+200]
	call	binvcrhs
	mov	DWORD PTR -16[rbp], 1
	jmp	.L487
.L488:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	sal	rax, 3
	mov	ecx, DWORD PTR -20[rbp]
	movsx	rcx, ecx
	imul	rcx, rcx, 1000
	add	rcx, rax
	movsx	rax, esi
	imul	rax, rax, 25000
	add	rcx, rax
	lea	rax, rhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matvec_sub
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, 200[rax]
	lea	rax, lhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, 1
	cdqe
	imul	rax, rax, 600
	lea	rcx, 400[rax]
	lea	rax, lhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matmul_sub
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rcx, 400[rax]
	lea	rax, lhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, 200[rax]
	lea	rax, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	binvcrhs
	add	DWORD PTR -16[rbp], 1
.L487:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -16[rbp]
	jg	.L488
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	lea	esi, -1[rax]
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	sal	rax, 3
	mov	ecx, DWORD PTR -20[rbp]
	movsx	rcx, ecx
	imul	rcx, rcx, 1000
	add	rcx, rax
	movsx	rax, esi
	imul	rax, rax, 25000
	add	rcx, rax
	lea	rax, rhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matvec_sub
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rdx, 200[rax]
	lea	rax, lhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	cdqe
	imul	rax, rax, 600
	lea	rcx, 400[rax]
	lea	rax, lhs[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rsi, lhs[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	matmul_sub
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rdx, rdx, 1000
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 25000
	add	rdx, rax
	lea	rax, rhs[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 600
	lea	rcx, 200[rax]
	lea	rax, lhs[rip]
	add	rax, rcx
	mov	rsi, rdx
	mov	rdi, rax
	call	binvrhs
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	mov	DWORD PTR -16[rbp], eax
	jmp	.L489
.L494:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L490
.L493:
	mov	DWORD PTR -8[rbp], 0
	jmp	.L491
.L492:
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	mov	edx, DWORD PTR -16[rbp]
	movsx	rcx, edx
	mov	rdx, rax
	sal	rdx, 2
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	mov	rcx, rax
	sal	rcx, 4
	sub	rcx, rax
	lea	rax, [rdx+rcx]
	add	rax, rsi
	add	rax, 50
	lea	rdx, 0[0+rax*8]
	lea	rax, lhs[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -16[rbp]
	lea	esi, 1[rax]
	mov	eax, DWORD PTR -8[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 5
	sub	rax, rdx
	sal	rax, 2
	add	rax, rdx
	imul	rdx, rsi, 3125
	add	rdx, rax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	add	rax, rdx
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, rhs[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -8[rbp], 1
.L491:
	cmp	DWORD PTR -8[rbp], 4
	jle	.L492
	add	DWORD PTR -12[rbp], 1
.L490:
	cmp	DWORD PTR -12[rbp], 4
	jle	.L493
	sub	DWORD PTR -16[rbp], 1
.L489:
	cmp	DWORD PTR -16[rbp], 0
	jns	.L494
	add	DWORD PTR -24[rbp], 1
.L482:
	mov	eax, DWORD PTR grid_points[rip]
	sub	eax, 1
	cmp	DWORD PTR -24[rbp], eax
	jl	.L495
	add	DWORD PTR -20[rbp], 1
.L481:
	mov	eax, DWORD PTR grid_points[rip+4]
	sub	eax, 1
	cmp	DWORD PTR -20[rbp], eax
	jl	.L496
	mov	eax, DWORD PTR timeron[rip]
	test	eax, eax
	je	.L498
	mov	edi, 8
	call	timer_stop
.L498:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	z_solve, .-z_solve
	.section	.rodata
.LC165:
	.string	"\n\n %s Benchmark Completed\n"
	.align 8
.LC166:
	.string	" Class           =                        %c\n"
	.align 8
.LC167:
	.string	" Size            =             %12ld\n"
	.align 8
.LC168:
	.string	" Size            =             %4dx%4dx%4d\n"
	.align 8
.LC169:
	.string	" Iterations      =             %12d\n"
	.align 8
.LC170:
	.string	" Time in seconds =             %12.2f\n"
	.align 8
.LC171:
	.string	" Mop/s total     =             %12.2f\n"
.LC172:
	.string	" Operation type  = %24s\n"
	.align 8
.LC173:
	.string	" Verification    =            NOT PERFORMED"
	.align 8
.LC174:
	.string	" Verification    =               SUCCESSFUL"
	.align 8
.LC175:
	.string	" Verification    =             UNSUCCESSFUL"
	.align 8
.LC176:
	.string	" Version         =             %12s\n"
	.align 8
.LC177:
	.string	" Compile date    =             %12s\n"
.LC178:
	.string	"\n Compile options:"
.LC179:
	.string	"    CC           = %s\n"
.LC180:
	.string	"    CLINK        = %s\n"
.LC181:
	.string	"    C_LIB        = %s\n"
.LC182:
	.string	"    C_INC        = %s\n"
.LC183:
	.string	"    CFLAGS       = %s\n"
.LC184:
	.string	"    CLINKFLAGS   = %s\n"
	.align 8
.LC185:
	.string	"\n--------------------------------------"
	.align 8
.LC186:
	.string	" Please send all errors/feedbacks to:"
	.align 8
.LC187:
	.string	" Center for Manycore Programming"
.LC188:
	.string	" cmp@aces.snu.ac.kr"
.LC189:
	.string	" http://aces.snu.ac.kr"
	.align 8
.LC190:
	.string	"--------------------------------------"
	.text
	.globl	c_print_results
	.type	c_print_results, @function
c_print_results:
.LFB31:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	DWORD PTR -32[rbp], edx
	mov	DWORD PTR -36[rbp], ecx
	mov	DWORD PTR -40[rbp], r8d
	mov	DWORD PTR -44[rbp], r9d
	movsd	QWORD PTR -56[rbp], xmm0
	movsd	QWORD PTR -64[rbp], xmm1
	mov	BYTE PTR -28[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	lea	rdi, .LC165[rip]
	mov	eax, 0
	call	printf@PLT
	movsx	eax, BYTE PTR -28[rbp]
	mov	esi, eax
	lea	rdi, .LC166[rip]
	mov	eax, 0
	call	printf@PLT
	cmp	DWORD PTR -40[rbp], 0
	jne	.L500
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	mov	QWORD PTR -8[rbp], rax
	cmp	DWORD PTR -36[rbp], 0
	je	.L501
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	mov	rdx, QWORD PTR -8[rbp]
	imul	rax, rdx
	mov	QWORD PTR -8[rbp], rax
.L501:
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC167[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L502
.L500:
	mov	ecx, DWORD PTR -40[rbp]
	mov	edx, DWORD PTR -36[rbp]
	mov	eax, DWORD PTR -32[rbp]
	mov	esi, eax
	lea	rdi, .LC168[rip]
	mov	eax, 0
	call	printf@PLT
.L502:
	mov	eax, DWORD PTR -44[rbp]
	mov	esi, eax
	lea	rdi, .LC169[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -56[rbp]
	movq	xmm0, rax
	lea	rdi, .LC170[rip]
	mov	eax, 1
	call	printf@PLT
	mov	rax, QWORD PTR -64[rbp]
	movq	xmm0, rax
	lea	rdi, .LC171[rip]
	mov	eax, 1
	call	printf@PLT
	mov	rsi, QWORD PTR 16[rbp]
	lea	rdi, .LC172[rip]
	mov	eax, 0
	call	printf@PLT
	cmp	DWORD PTR 24[rbp], 0
	jns	.L503
	lea	rdi, .LC173[rip]
	call	puts@PLT
	jmp	.L504
.L503:
	cmp	DWORD PTR 24[rbp], 0
	je	.L505
	lea	rdi, .LC174[rip]
	call	puts@PLT
	jmp	.L504
.L505:
	lea	rdi, .LC175[rip]
	call	puts@PLT
.L504:
	mov	rax, QWORD PTR 32[rbp]
	mov	rsi, rax
	lea	rdi, .LC176[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR 40[rbp]
	mov	rsi, rax
	lea	rdi, .LC177[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC178[rip]
	call	puts@PLT
	mov	rax, QWORD PTR 48[rbp]
	mov	rsi, rax
	lea	rdi, .LC179[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR 56[rbp]
	mov	rsi, rax
	lea	rdi, .LC180[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR 64[rbp]
	mov	rsi, rax
	lea	rdi, .LC181[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR 72[rbp]
	mov	rsi, rax
	lea	rdi, .LC182[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR 80[rbp]
	mov	rsi, rax
	lea	rdi, .LC183[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR 88[rbp]
	mov	rsi, rax
	lea	rdi, .LC184[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC185[rip]
	call	puts@PLT
	lea	rdi, .LC186[rip]
	call	puts@PLT
	lea	rdi, .LC187[rip]
	call	puts@PLT
	lea	rdi, .LC188[rip]
	call	puts@PLT
	lea	rdi, .LC189[rip]
	call	puts@PLT
	lea	rdi, .LC190[rip]
	call	puts@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	c_print_results, .-c_print_results
	.section	.rodata
.LC191:
	.string	"\n\n %s Benchmark Completed.\n"
	.align 8
.LC192:
	.string	" Class           =             %12c\n"
.LC193:
	.string	"%15.0lf"
	.align 8
.LC194:
	.string	" Size            =          %15s\n"
	.align 8
.LC195:
	.string	" Size            =             %12d\n"
	.align 8
.LC196:
	.string	" Size            =           %4dx%4dx%4d\n"
	.align 8
.LC197:
	.string	" Time in seconds =             %12.2lf\n"
	.align 8
.LC198:
	.string	" Mop/s total     =          %15.2lf\n"
.LC199:
	.string	"SUCCESSFUL"
	.align 8
.LC200:
	.string	" Verification    =             %12s\n"
.LC201:
	.string	"UNSUCCESSFUL"
	.align 8
.LC202:
	.string	"\n Compile options:\n    CC           = %s\n"
.LC203:
	.string	"    RAND         = %s\n"
	.align 8
.LC204:
	.string	"\n--------------------------------------\n Please send all errors/feedbacks to:\n Center for Manycore Programming\n cmp@aces.snu.ac.kr\n http://aces.snu.ac.kr\n--------------------------------------\n"
	.text
	.globl	print_results
	.type	print_results, @function
print_results:
.LFB32:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 176
	mov	QWORD PTR -56[rbp], rdi
	mov	eax, esi
	mov	DWORD PTR -64[rbp], edx
	mov	DWORD PTR -68[rbp], ecx
	mov	DWORD PTR -72[rbp], r8d
	mov	DWORD PTR -76[rbp], r9d
	movsd	QWORD PTR -88[rbp], xmm0
	movsd	QWORD PTR -96[rbp], xmm1
	mov	BYTE PTR -60[rbp], al
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -104[rbp], rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR -112[rbp], rax
	mov	rax, QWORD PTR 40[rbp]
	mov	QWORD PTR -120[rbp], rax
	mov	rax, QWORD PTR 48[rbp]
	mov	QWORD PTR -128[rbp], rax
	mov	rax, QWORD PTR 56[rbp]
	mov	QWORD PTR -136[rbp], rax
	mov	rax, QWORD PTR 64[rbp]
	mov	QWORD PTR -144[rbp], rax
	mov	rax, QWORD PTR 72[rbp]
	mov	QWORD PTR -152[rbp], rax
	mov	rax, QWORD PTR 80[rbp]
	mov	QWORD PTR -160[rbp], rax
	mov	rax, QWORD PTR 88[rbp]
	mov	QWORD PTR -168[rbp], rax
	mov	rax, QWORD PTR 96[rbp]
	mov	QWORD PTR -176[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -56[rbp]
	mov	rsi, rax
	lea	rdi, .LC191[rip]
	mov	eax, 0
	call	printf@PLT
	movsx	eax, BYTE PTR -60[rbp]
	mov	esi, eax
	lea	rdi, .LC192[rip]
	mov	eax, 0
	call	printf@PLT
	cmp	DWORD PTR -68[rbp], 0
	jne	.L507
	cmp	DWORD PTR -72[rbp], 0
	jne	.L507
	mov	rax, QWORD PTR -56[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 69
	jne	.L508
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 1
	movzx	eax, BYTE PTR [rax]
	cmp	al, 80
	jne	.L508
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR -64[rbp]
	mov	rax, QWORD PTR .LC58[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movq	rax, xmm0
	lea	rdx, -32[rbp]
	movq	xmm0, rax
	lea	rsi, .LC193[rip]
	mov	rdi, rdx
	mov	eax, 1
	call	sprintf@PLT
	mov	DWORD PTR -36[rbp], 14
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movzx	eax, BYTE PTR -32[rbp+rax]
	cmp	al, 46
	jne	.L509
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	mov	BYTE PTR -32[rbp+rax], 32
	sub	DWORD PTR -36[rbp], 1
.L509:
	mov	eax, DWORD PTR -36[rbp]
	add	eax, 1
	cdqe
	mov	BYTE PTR -32[rbp+rax], 0
	lea	rax, -32[rbp]
	mov	rsi, rax
	lea	rdi, .LC194[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L511
.L508:
	mov	eax, DWORD PTR -64[rbp]
	mov	esi, eax
	lea	rdi, .LC195[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L511
.L507:
	mov	ecx, DWORD PTR -72[rbp]
	mov	edx, DWORD PTR -68[rbp]
	mov	eax, DWORD PTR -64[rbp]
	mov	esi, eax
	lea	rdi, .LC196[rip]
	mov	eax, 0
	call	printf@PLT
.L511:
	mov	eax, DWORD PTR -76[rbp]
	mov	esi, eax
	lea	rdi, .LC169[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -88[rbp]
	movq	xmm0, rax
	lea	rdi, .LC197[rip]
	mov	eax, 1
	call	printf@PLT
	mov	rax, QWORD PTR -96[rbp]
	movq	xmm0, rax
	lea	rdi, .LC198[rip]
	mov	eax, 1
	call	printf@PLT
	mov	rax, QWORD PTR -104[rbp]
	mov	rsi, rax
	lea	rdi, .LC172[rip]
	mov	eax, 0
	call	printf@PLT
	cmp	DWORD PTR 24[rbp], 0
	je	.L512
	lea	rsi, .LC199[rip]
	lea	rdi, .LC200[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L513
.L512:
	lea	rsi, .LC201[rip]
	lea	rdi, .LC200[rip]
	mov	eax, 0
	call	printf@PLT
.L513:
	mov	rax, QWORD PTR -112[rbp]
	mov	rsi, rax
	lea	rdi, .LC176[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -120[rbp]
	mov	rsi, rax
	lea	rdi, .LC177[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -128[rbp]
	mov	rsi, rax
	lea	rdi, .LC202[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -136[rbp]
	mov	rsi, rax
	lea	rdi, .LC180[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -144[rbp]
	mov	rsi, rax
	lea	rdi, .LC181[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -152[rbp]
	mov	rsi, rax
	lea	rdi, .LC182[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -160[rbp]
	mov	rsi, rax
	lea	rdi, .LC183[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -168[rbp]
	mov	rsi, rax
	lea	rdi, .LC184[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -176[rbp]
	mov	rsi, rax
	lea	rdi, .LC203[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC204[rip]
	call	puts@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L514
	call	__stack_chk_fail@PLT
.L514:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	print_results, .-print_results
	.globl	randlc
	.type	randlc, @function
randlc:
.LFB33:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	QWORD PTR -120[rbp], rdi
	movsd	QWORD PTR -128[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC205[rip]
	movsd	QWORD PTR -112[rbp], xmm0
	movsd	xmm0, QWORD PTR -112[rbp]
	mulsd	xmm0, xmm0
	movsd	QWORD PTR -104[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC206[rip]
	movsd	QWORD PTR -96[rbp], xmm0
	movsd	xmm0, QWORD PTR -96[rbp]
	mulsd	xmm0, xmm0
	movsd	QWORD PTR -88[rbp], xmm0
	movsd	xmm0, QWORD PTR -112[rbp]
	mulsd	xmm0, QWORD PTR -128[rbp]
	movsd	QWORD PTR -80[rbp], xmm0
	movsd	xmm0, QWORD PTR -80[rbp]
	cvttsd2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -72[rbp], xmm0
	movsd	xmm0, QWORD PTR -96[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -72[rbp]
	movsd	xmm0, QWORD PTR -128[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -64[rbp], xmm0
	mov	rax, QWORD PTR -120[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR -112[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -80[rbp], xmm0
	movsd	xmm0, QWORD PTR -80[rbp]
	cvttsd2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -56[rbp], xmm0
	mov	rax, QWORD PTR -120[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR -96[rbp]
	mulsd	xmm1, QWORD PTR -56[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
	movsd	xmm0, QWORD PTR -72[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -48[rbp]
	movsd	xmm0, QWORD PTR -64[rbp]
	mulsd	xmm0, QWORD PTR -56[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -80[rbp], xmm0
	movsd	xmm0, QWORD PTR -112[rbp]
	mulsd	xmm0, QWORD PTR -80[rbp]
	cvttsd2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR -96[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR -80[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	xmm0, QWORD PTR -96[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR -64[rbp]
	mulsd	xmm0, QWORD PTR -48[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	movsd	xmm0, QWORD PTR -104[rbp]
	mulsd	xmm0, QWORD PTR -24[rbp]
	cvttsd2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -88[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -120[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -120[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR -104[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	randlc, .-randlc
	.globl	vranlc
	.type	vranlc, @function
vranlc:
.LFB34:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	DWORD PTR -116[rbp], edi
	mov	QWORD PTR -128[rbp], rsi
	movsd	QWORD PTR -136[rbp], xmm0
	mov	QWORD PTR -144[rbp], rdx
	movsd	xmm0, QWORD PTR .LC205[rip]
	movsd	QWORD PTR -104[rbp], xmm0
	movsd	xmm0, QWORD PTR -104[rbp]
	mulsd	xmm0, xmm0
	movsd	QWORD PTR -96[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC206[rip]
	movsd	QWORD PTR -88[rbp], xmm0
	movsd	xmm0, QWORD PTR -88[rbp]
	mulsd	xmm0, xmm0
	movsd	QWORD PTR -80[rbp], xmm0
	movsd	xmm0, QWORD PTR -104[rbp]
	mulsd	xmm0, QWORD PTR -136[rbp]
	movsd	QWORD PTR -72[rbp], xmm0
	movsd	xmm0, QWORD PTR -72[rbp]
	cvttsd2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -64[rbp], xmm0
	movsd	xmm0, QWORD PTR -88[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -64[rbp]
	movsd	xmm0, QWORD PTR -136[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -56[rbp], xmm0
	mov	DWORD PTR -108[rbp], 0
	jmp	.L518
.L519:
	mov	rax, QWORD PTR -128[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR -104[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -72[rbp], xmm0
	movsd	xmm0, QWORD PTR -72[rbp]
	cvttsd2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -48[rbp], xmm0
	mov	rax, QWORD PTR -128[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR -88[rbp]
	mulsd	xmm1, QWORD PTR -48[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR -64[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR -56[rbp]
	mulsd	xmm0, QWORD PTR -48[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -72[rbp], xmm0
	movsd	xmm0, QWORD PTR -104[rbp]
	mulsd	xmm0, QWORD PTR -72[rbp]
	cvttsd2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	xmm0, QWORD PTR -88[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR -72[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	movsd	xmm0, QWORD PTR -88[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR -56[rbp]
	mulsd	xmm0, QWORD PTR -40[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -96[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	cvttsd2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -80[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR -16[rbp]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -128[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -128[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -144[rbp]
	add	rax, rdx
	mulsd	xmm0, QWORD PTR -96[rbp]
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -108[rbp], 1
.L518:
	mov	eax, DWORD PTR -108[rbp]
	cmp	eax, DWORD PTR -116[rbp]
	jl	.L519
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE34:
	.size	vranlc, .-vranlc
	.data
	.align 4
	.type	sec.0, @object
	.size	sec.0, 4
sec.0:
	.long	-1
	.section	.rodata
	.align 8
.LC0:
	.long	-1598689907
	.long	1051772663
	.align 8
.LC22:
	.long	-350469331
	.long	1061828322
	.align 8
.LC28:
	.long	0
	.long	1074266112
	.align 8
.LC29:
	.long	-1717986918
	.long	1084960153
	.align 8
.LC30:
	.long	-858993459
	.long	1087454700
	.align 8
.LC31:
	.long	-858993459
	.long	1088118252
	.align 8
.LC43:
	.long	0
	.long	1072693248
	.align 8
.LC45:
	.long	0
	.long	1079574528
	.align 8
.LC52:
	.long	0
	.long	1071644672
	.align 8
.LC53:
	.long	0
	.long	1075052544
	.align 8
.LC54:
	.long	0
	.long	1074790400
	.align 8
.LC55:
	.long	0
	.long	-1072693248
	.align 8
.LC56:
	.long	0
	.long	1075314688
	.align 16
.LC57:
	.long	0
	.long	-2147483648
	.long	0
	.long	0
	.align 8
.LC58:
	.long	0
	.long	1073741824
	.align 8
.LC59:
	.long	1202590843
	.long	1066695393
	.align 8
.LC60:
	.long	1202590843
	.long	1065646817
	.align 8
.LC61:
	.long	-343597384
	.long	1067366481
	.align 8
.LC62:
	.long	-1717986918
	.long	1071225241
	.align 8
.LC63:
	.long	858993459
	.long	1070805811
	.align 8
.LC64:
	.long	1202590843
	.long	1067743969
	.align 8
.LC65:
	.long	-1717986918
	.long	1068079513
	.align 8
.LC66:
	.long	-1717986918
	.long	1070176665
	.align 8
.LC67:
	.long	-1717986918
	.long	1069128089
	.align 8
.LC68:
	.long	1717986918
	.long	1073112678
	.align 8
.LC69:
	.long	0
	.long	1072168960
	.align 8
.LC70:
	.long	0
	.long	1070596096
	.align 8
.LC71:
	.long	0
	.long	1074003968
	.align 8
.LC72:
	.long	1431655765
	.long	1073042773
	.align 8
.LC73:
	.long	1431655765
	.long	1069897045
	.align 8
.LC74:
	.long	-500134854
	.long	1044740494
	.align 8
.LC75:
	.long	1228366141
	.long	1069927883
	.align 8
.LC76:
	.long	-631071256
	.long	1066046148
	.align 8
.LC77:
	.long	490784515
	.long	1067493248
	.align 8
.LC78:
	.long	859001514
	.long	1067127334
	.align 8
.LC79:
	.long	1119346834
	.long	1070110545
	.align 8
.LC80:
	.long	179857912
	.long	1061183582
	.align 8
.LC81:
	.long	1228488981
	.long	1057468943
	.align 8
.LC82:
	.long	-1680540284
	.long	1058235467
	.align 8
.LC83:
	.long	956515681
	.long	1058232847
	.align 8
.LC84:
	.long	-1167860364
	.long	1062027386
	.align 8
.LC85:
	.long	1403033572
	.long	1079780295
	.align 8
.LC86:
	.long	-1907495752
	.long	1076337059
	.align 8
.LC87:
	.long	-1216955127
	.long	1077615217
	.align 8
.LC88:
	.long	2092296565
	.long	1077457174
	.align 8
.LC89:
	.long	246188570
	.long	1081113980
	.align 8
.LC90:
	.long	1001844420
	.long	1074900410
	.align 8
.LC91:
	.long	93609426
	.long	1071493061
	.align 8
.LC92:
	.long	-482009590
	.long	1072705360
	.align 8
.LC93:
	.long	665831394
	.long	1072533000
	.align 8
.LC94:
	.long	173575679
	.long	1076124773
	.align 8
.LC95:
	.long	-662601057
	.long	1079706639
	.align 8
.LC96:
	.long	-993491157
	.long	1076274099
	.align 8
.LC97:
	.long	1276769517
	.long	1077541231
	.align 8
.LC98:
	.long	1026875472
	.long	1077389926
	.align 8
.LC99:
	.long	-1433202994
	.long	1081055556
	.align 8
.LC100:
	.long	1363449133
	.long	1074851962
	.align 8
.LC101:
	.long	1693861187
	.long	1071409383
	.align 8
.LC102:
	.long	1207010259
	.long	1072623884
	.align 8
.LC103:
	.long	2066221589
	.long	1072447924
	.align 8
.LC104:
	.long	-650727860
	.long	1076066777
	.align 8
.LC105:
	.long	810889825
	.long	1060350250
	.align 8
.LC106:
	.long	1530206717
	.long	1083587952
	.align 8
.LC107:
	.long	1211683381
	.long	1079563559
	.align 8
.LC108:
	.long	903661829
	.long	1081493341
	.align 8
.LC109:
	.long	-221602770
	.long	1081363883
	.align 8
.LC110:
	.long	482060942
	.long	1084853634
	.align 8
.LC111:
	.long	-209962831
	.long	1078623267
	.align 8
.LC112:
	.long	-1752627388
	.long	1074911848
	.align 8
.LC113:
	.long	-287289624
	.long	1076510401
	.align 8
.LC114:
	.long	-1219729720
	.long	1076364171
	.align 8
.LC115:
	.long	-186462844
	.long	1079977504
	.align 8
.LC116:
	.long	-350469331
	.long	1058682594
	.align 8
.LC117:
	.long	-928893304
	.long	1085824975
	.align 8
.LC118:
	.long	331742267
	.long	1082113771
	.align 8
.LC119:
	.long	2068132376
	.long	1083709801
	.align 8
.LC120:
	.long	-2044578732
	.long	1083492596
	.align 8
.LC121:
	.long	819650984
	.long	1086761483
	.align 8
.LC122:
	.long	-1178556393
	.long	1080333271
	.align 8
.LC123:
	.long	-312802209
	.long	1076297348
	.align 8
.LC124:
	.long	-1729471237
	.long	1078237837
	.align 8
.LC125:
	.long	643918928
	.long	1078102840
	.align 8
.LC126:
	.long	-1146741587
	.long	1081516484
	.align 8
.LC127:
	.long	-1998362383
	.long	1056241845
	.align 8
.LC128:
	.long	-1403971895
	.long	1087945976
	.align 8
.LC129:
	.long	-1790598666
	.long	1084380361
	.align 8
.LC130:
	.long	-352499030
	.long	1085838989
	.align 8
.LC131:
	.long	-1132738869
	.long	1085597840
	.align 8
.LC132:
	.long	2114660477
	.long	1088623188
	.align 8
.LC133:
	.long	-682696445
	.long	1081303043
	.align 8
.LC134:
	.long	918671960
	.long	1077427625
	.align 8
.LC135:
	.long	-1641578777
	.long	1079211165
	.align 8
.LC136:
	.long	-1661115515
	.long	1079056076
	.align 8
.LC137:
	.long	-91760403
	.long	1082324118
	.align 8
.LC138:
	.long	-1598689907
	.long	1053869815
	.align 8
.LC139:
	.long	-1728626755
	.long	1089989147
	.align 8
.LC140:
	.long	1105845365
	.long	1086522856
	.align 8
.LC141:
	.long	255540246
	.long	1087904004
	.align 8
.LC142:
	.long	-2033106951
	.long	1087663884
	.align 8
.LC143:
	.long	367439606
	.long	1090584175
	.align 8
.LC144:
	.long	2064016862
	.long	1081805849
	.align 8
.LC145:
	.long	1494022293
	.long	1078099657
	.align 8
.LC146:
	.long	494346585
	.long	1079721730
	.align 8
.LC147:
	.long	-484491530
	.long	1079486466
	.align 8
.LC148:
	.long	61569573
	.long	1082672233
	.align 16
.LC149:
	.long	-1
	.long	2147483647
	.long	0
	.long	0
	.align 8
.LC205:
	.long	0
	.long	1048576000
	.align 8
.LC206:
	.long	0
	.long	1096810496
	.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	"140765490.c"
	.text
	.comm	grid_points,12,4
	.comm	timeron,4,4
	.comm	fjac,5000,8
	.comm	njac,5000,8
	.comm	lhs,15000,8
	.comm	tmp1,8,8
	.comm	tmp2,8,8
	.comm	tmp3,8,8
	.comm	tx1,8,8
	.comm	tx2,8,8
	.comm	tx3,8,8
	.comm	ty1,8,8
	.comm	ty2,8,8
	.comm	ty3,8,8
	.comm	tz1,8,8
	.comm	tz2,8,8
	.comm	tz3,8,8
	.comm	dx1,8,8
	.comm	dx2,8,8
	.comm	dx3,8,8
	.comm	dx4,8,8
	.comm	dx5,8,8
	.comm	dy1,8,8
	.comm	dy2,8,8
	.comm	dy3,8,8
	.comm	dy4,8,8
	.comm	dy5,8,8
	.comm	dz1,8,8
	.comm	dz2,8,8
	.comm	dz3,8,8
	.comm	dz4,8,8
	.comm	dz5,8,8
	.comm	dssp,8,8
	.comm	dt,8,8
	.comm	ce,520,8
	.comm	dxmax,8,8
	.comm	dymax,8,8
	.comm	dzmax,8,8
	.comm	xxcon1,8,8
	.comm	xxcon2,8,8
	.comm	xxcon3,8,8
	.comm	xxcon4,8,8
	.comm	xxcon5,8,8
	.comm	dx1tx1,8,8
	.comm	dx2tx1,8,8
	.comm	dx3tx1,8,8
	.comm	dx4tx1,8,8
	.comm	dx5tx1,8,8
	.comm	yycon1,8,8
	.comm	yycon2,8,8
	.comm	yycon3,8,8
	.comm	yycon4,8,8
	.comm	yycon5,8,8
	.comm	dy1ty1,8,8
	.comm	dy2ty1,8,8
	.comm	dy3ty1,8,8
	.comm	dy4ty1,8,8
	.comm	dy5ty1,8,8
	.comm	zzcon1,8,8
	.comm	zzcon2,8,8
	.comm	zzcon3,8,8
	.comm	zzcon4,8,8
	.comm	zzcon5,8,8
	.comm	dz1tz1,8,8
	.comm	dz2tz1,8,8
	.comm	dz3tz1,8,8
	.comm	dz4tz1,8,8
	.comm	dz5tz1,8,8
	.comm	dnxm1,8,8
	.comm	dnym1,8,8
	.comm	dnzm1,8,8
	.comm	c1c2,8,8
	.comm	c1c5,8,8
	.comm	c3c4,8,8
	.comm	c1345,8,8
	.comm	conz1,8,8
	.comm	c1,8,8
	.comm	c2,8,8
	.comm	c3,8,8
	.comm	c4,8,8
	.comm	c5,8,8
	.comm	c4dssp,8,8
	.comm	c5dssp,8,8
	.comm	dtdssp,8,8
	.comm	dttx1,8,8
	.comm	dttx2,8,8
	.comm	dtty1,8,8
	.comm	dtty2,8,8
	.comm	dttz1,8,8
	.comm	dttz2,8,8
	.comm	c2dttx1,8,8
	.comm	c2dtty1,8,8
	.comm	c2dttz1,8,8
	.comm	comz1,8,8
	.comm	comz4,8,8
	.comm	comz5,8,8
	.comm	comz6,8,8
	.comm	c3c4tx3,8,8
	.comm	c3c4ty3,8,8
	.comm	c3c4tz3,8,8
	.comm	c2iv,8,8
	.comm	con43,8,8
	.comm	con16,8,8
	.comm	us,120000,8
	.comm	vs,120000,8
	.comm	ws,120000,8
	.comm	qs,120000,8
	.comm	rho_i,120000,8
	.comm	square,120000,8
	.comm	forcing,600000,8
	.comm	u,600000,8
	.comm	rhs,600000,8
	.comm	cuf,200,8
	.comm	q,200,8
	.comm	ue,1000,8
	.comm	buf,1000,8
	.comm	cycleval,4,4
	.comm	iotimer_addr,4,4
	.comm	base_counter,4,4
	.comm	resolution,8,8
	.global	__aeabi_i2d
	.global	__aeabi_dmul
	.global	__aeabi_dadd
	.section	.rodata
	.align	2
.LC0:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	wtime
	.syntax unified
	.arm
	.fpu softvfp
	.type	wtime, %function
wtime:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #24
	str	r0, [fp, #-32]
	ldr	r3, .L4
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #24
	mov	r1, #0
	mov	r0, r3
	bl	gettimeofday
	ldr	r3, .L4+4
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L2
	ldr	r3, [fp, #-24]
	ldr	r2, .L4+4
	str	r3, [r2]
.L2:
	ldr	r2, [fp, #-24]
	ldr	r3, .L4+4
	ldr	r3, [r3]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	__aeabi_i2d
	ldr	r2, .L4+8
	ldr	r3, .L4+12
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-32]
	stm	r1, {r2-r3}
	nop
	ldr	r3, .L4
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L3
	bl	__stack_chk_fail
.L3:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L5:
	.align	2
.L4:
	.word	.LC0
	.word	sec.6614
	.word	-1598689907
	.word	1051772663
	.size	wtime, .-wtime
	.section	.rodata
	.align	2
.LC1:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	elapsed_time, %function
elapsed_time:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L9
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #20
	mov	r0, r3
	bl	wtime
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	ldr	r1, .L9
	ldr	r0, [r1]
	ldr	r1, [fp, #-8]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L8
	bl	__stack_chk_fail
.L8:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L10:
	.align	2
.L9:
	.word	.LC1
	.size	elapsed_time, .-elapsed_time
	.local	start
	.comm	start,512,8
	.local	elapsed
	.comm	elapsed,512,8
	.align	2
	.global	timer_clear
	.syntax unified
	.arm
	.fpu softvfp
	.type	timer_clear, %function
timer_clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L12
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L13:
	.align	2
.L12:
	.word	elapsed
	.size	timer_clear, .-timer_clear
	.align	2
	.global	timer_start
	.syntax unified
	.arm
	.fpu softvfp
	.type	timer_start, %function
timer_start:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	bl	elapsed_time
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L15
	ldr	r1, [fp, #-8]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L16:
	.align	2
.L15:
	.word	start
	.size	timer_start, .-timer_start
	.global	__aeabi_dsub
	.align	2
	.global	timer_stop
	.syntax unified
	.arm
	.fpu softvfp
	.type	timer_stop, %function
timer_stop:
	@ 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]
	bl	elapsed_time
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	ldr	r2, .L18
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r2, .L18+4
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L18+4
	ldr	r1, [fp, #-24]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L19:
	.align	2
.L18:
	.word	start
	.word	elapsed
	.size	timer_stop, .-timer_stop
	.align	2
	.global	timer_read
	.syntax unified
	.arm
	.fpu softvfp
	.type	timer_read, %function
timer_read:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L22
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L23:
	.align	2
.L22:
	.word	elapsed
	.size	timer_read, .-timer_read
	.section	.rodata
	.align	2
.LC2:
	.ascii	"r\000"
	.align	2
.LC3:
	.ascii	"timer.flag\000"
	.align	2
.LC4:
	.ascii	"total\000"
	.align	2
.LC5:
	.ascii	"rhsx\000"
	.align	2
.LC6:
	.ascii	"rhsy\000"
	.align	2
.LC7:
	.ascii	"rhsz\000"
	.align	2
.LC8:
	.ascii	"rhs\000"
	.align	2
.LC9:
	.ascii	"xsolve\000"
	.align	2
.LC10:
	.ascii	"ysolve\000"
	.align	2
.LC11:
	.ascii	"zsolve\000"
	.align	2
.LC12:
	.ascii	"redist1\000"
	.align	2
.LC13:
	.ascii	"redist2\000"
	.align	2
.LC14:
	.ascii	"add\000"
	.align	2
.LC15:
	.ascii	"\012\012 NAS Parallel Benchmarks (NPB3.3-SER-C) - B"
	.ascii	"T Benchmark\012\000"
	.align	2
.LC16:
	.ascii	"inputbt.data\000"
	.align	2
.LC17:
	.ascii	" Reading from input file inputbt.data\000"
	.align	2
.LC18:
	.ascii	"%d\000"
	.align	2
.LC19:
	.ascii	"%lf\000"
	.align	2
.LC20:
	.ascii	"%d%d%d\012\000"
	.align	2
.LC21:
	.ascii	" No input file inputbt.data. Using compiled default"
	.ascii	"s\000"
	.align	2
.LC22:
	.ascii	" Size: %4dx%4dx%4d\012\000"
	.align	2
.LC23:
	.ascii	" Iterations: %4d    dt: %10.6f\012\000"
	.align	2
.LC24:
	.ascii	" %d, %d, %d\012\000"
	.align	2
.LC25:
	.ascii	" Problem size too big for compiled array sizes\000"
	.align	2
.LC26:
	.ascii	" Time step %4d\012\000"
	.global	__aeabi_ddiv
	.global	__aeabi_dcmpeq
	.align	2
.LC27:
	.ascii	"BT\000"
	.align	2
.LC28:
	.ascii	"(none)\000"
	.align	2
.LC29:
	.ascii	"-O3 -mcmodel=medium\000"
	.align	2
.LC30:
	.ascii	"-g -Wall -O3 -mcmodel=medium\000"
	.align	2
.LC31:
	.ascii	"-I../common\000"
	.align	2
.LC32:
	.ascii	"-lm\000"
	.align	2
.LC33:
	.ascii	"$(CC)\000"
	.align	2
.LC34:
	.ascii	"gcc\000"
	.align	2
.LC35:
	.ascii	"12 Jul 2017\000"
	.align	2
.LC36:
	.ascii	"3.3.1\000"
	.align	2
.LC37:
	.ascii	"          floating point\000"
	.align	2
.LC38:
	.ascii	"  SECTION   Time (secs)\000"
	.align	2
.LC39:
	.ascii	"  %-8s:%9.3f  (%6.2f%%)\012\000"
	.align	2
.LC40:
	.ascii	"sub-rhs\000"
	.align	2
.LC41:
	.ascii	"    --> %8s:%9.3f  (%6.2f%%)\012\000"
	.align	2
.LC42:
	.ascii	"rest-rhs\000"
	.align	2
.LC43:
	.ascii	"sub-zsol\000"
	.align	2
.LC44:
	.ascii	"redist\000"
	.align	2
.LC45:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 232
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #304
	str	r0, [fp, #-248]
	str	r1, [fp, #-252]
	ldr	r3, .L60
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	ldr	r1, .L60+4
	ldr	r0, .L60+8
	bl	fopen
	str	r0, [fp, #-220]
	ldr	r3, [fp, #-220]
	cmp	r3, #0
	beq	.L25
	ldr	r3, .L60+12
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L60+16
	str	r3, [fp, #-168]
	ldr	r3, .L60+20
	str	r3, [fp, #-164]
	ldr	r3, .L60+24
	str	r3, [fp, #-160]
	ldr	r3, .L60+28
	str	r3, [fp, #-156]
	ldr	r3, .L60+32
	str	r3, [fp, #-152]
	ldr	r3, .L60+36
	str	r3, [fp, #-148]
	ldr	r3, .L60+40
	str	r3, [fp, #-144]
	ldr	r3, .L60+44
	str	r3, [fp, #-140]
	ldr	r3, .L60+48
	str	r3, [fp, #-136]
	ldr	r3, .L60+52
	str	r3, [fp, #-132]
	ldr	r3, .L60+56
	str	r3, [fp, #-128]
	ldr	r0, [fp, #-220]
	bl	fclose
	b	.L26
.L25:
	ldr	r3, .L60+12
	mov	r2, #0
	str	r2, [r3]
.L26:
	ldr	r0, .L60+60
	bl	puts
	ldr	r1, .L60+4
	ldr	r0, .L60+64
	bl	fopen
	str	r0, [fp, #-220]
	ldr	r3, [fp, #-220]
	cmp	r3, #0
	beq	.L27
	ldr	r0, .L60+68
	bl	puts
	sub	r3, fp, #236
	mov	r2, r3
	ldr	r1, .L60+72
	ldr	r0, [fp, #-220]
	bl	__isoc99_fscanf
	str	r0, [fp, #-216]
	nop
.L28:
	ldr	r0, [fp, #-220]
	bl	fgetc
	mov	r3, r0
	cmp	r3, #10
	bne	.L28
	ldr	r2, .L60+76
	ldr	r1, .L60+80
	ldr	r0, [fp, #-220]
	bl	__isoc99_fscanf
	str	r0, [fp, #-216]
	nop
.L29:
	ldr	r0, [fp, #-220]
	bl	fgetc
	mov	r3, r0
	cmp	r3, #10
	bne	.L29
	ldr	r3, .L60+84
	str	r3, [sp]
	ldr	r3, .L60+88
	ldr	r2, .L60+92
	ldr	r1, .L60+96
	ldr	r0, [fp, #-220]
	bl	__isoc99_fscanf
	str	r0, [fp, #-216]
	ldr	r0, [fp, #-220]
	bl	fclose
	b	.L30
.L27:
	ldr	r0, .L60+100
	bl	puts
	mov	r3, #200
	str	r3, [fp, #-236]
	ldr	r1, .L60+76
	ldr	r2, .L60+104
	ldr	r3, .L60+108
	stm	r1, {r2-r3}
	ldr	r3, .L60+92
	mov	r2, #24
	str	r2, [r3]
	ldr	r3, .L60+92
	mov	r2, #24
	str	r2, [r3, #4]
	ldr	r3, .L60+92
	mov	r2, #24
	str	r2, [r3, #8]
.L30:
	ldr	r3, .L60+92
	ldr	r1, [r3]
	ldr	r3, .L60+92
	ldr	r2, [r3, #4]
	ldr	r3, .L60+92
	ldr	r3, [r3, #8]
	ldr	r0, .L60+112
	bl	printf
	ldr	r1, [fp, #-236]
	ldr	r3, .L60+76
	ldmia	r3, {r2-r3}
	ldr	r0, .L60+116
	bl	printf
	mov	r0, #10
	bl	putchar
	ldr	r3, .L60+92
	ldr	r3, [r3]
	cmp	r3, #24
	bgt	.L31
	ldr	r3, .L60+92
	ldr	r3, [r3, #4]
	cmp	r3, #24
	bgt	.L31
	ldr	r3, .L60+92
	ldr	r3, [r3, #8]
	cmp	r3, #24
	ble	.L32
.L31:
	ldr	r3, .L60+92
	ldr	r1, [r3]
	ldr	r3, .L60+92
	ldr	r2, [r3, #4]
	ldr	r3, .L60+92
	ldr	r3, [r3, #8]
	ldr	r0, .L60+120
	bl	printf
	ldr	r0, .L60+124
	bl	puts
	mov	r3, #0
	b	.L55
.L32:
	bl	set_constants
	mov	r3, #1
	str	r3, [fp, #-228]
	b	.L34
.L35:
	ldr	r0, [fp, #-228]
	bl	timer_clear
	ldr	r3, [fp, #-228]
	add	r3, r3, #1
	str	r3, [fp, #-228]
.L34:
	ldr	r3, [fp, #-228]
	cmp	r3, #11
	ble	.L35
	bl	initialize
	bl	exact_rhs
	bl	adi
	bl	initialize
	mov	r3, #1
	str	r3, [fp, #-228]
	b	.L36
.L37:
	ldr	r0, [fp, #-228]
	bl	timer_clear
	ldr	r3, [fp, #-228]
	add	r3, r3, #1
	str	r3, [fp, #-228]
.L36:
	ldr	r3, [fp, #-228]
	cmp	r3, #11
	ble	.L37
	mov	r0, #1
	bl	timer_start
	mov	r3, #1
	str	r3, [fp, #-224]
	b	.L38
.L41:
	ldr	r1, [fp, #-224]
	ldr	r3, .L60+128
	smull	r2, r3, r1, r3
	asr	r2, r3, #3
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, r1, r3
	cmp	r2, #0
	beq	.L39
	ldr	r3, [fp, #-224]
	cmp	r3, #1
	bne	.L40
.L39:
	ldr	r1, [fp, #-224]
	ldr	r0, .L60+132
	bl	printf
.L40:
	bl	adi
	ldr	r3, [fp, #-224]
	add	r3, r3, #1
	str	r3, [fp, #-224]
.L38:
	ldr	r3, [fp, #-236]
	ldr	r2, [fp, #-224]
	cmp	r2, r3
	ble	.L41
	mov	r0, #1
	bl	timer_stop
	mov	r0, #1
	bl	timer_read
	str	r0, [fp, #-204]
	str	r1, [fp, #-200]
	ldr	r3, [fp, #-236]
	sub	r2, fp, #232
	sub	r1, fp, #237
	mov	r0, r3
	bl	verify
	ldr	r3, .L60+92
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L60+92
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L60+92
	ldr	r3, [r3, #8]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-196]
	str	r3, [fp, #-192]
	ldr	r3, .L60+92
	ldr	r2, [r3]
	ldr	r3, .L60+92
	ldr	r3, [r3, #4]
	add	r2, r2, r3
	ldr	r3, .L60+92
	ldr	r3, [r3, #8]
	add	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L60+136
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-188]
	str	r3, [fp, #-184]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #204
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L59
	ldr	r3, [fp, #-236]
	mov	r0, r3
	bl	__aeabi_i2d
	ldr	r2, .L60+140
	ldr	r3, .L60+144
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r2, .L60+148
	ldr	r3, .L60+152
	sub	r1, fp, #196
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #188
	ldmia	r3, {r2-r3}
	sub	r1, fp, #188
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L60+156
	ldr	r3, .L60+160
	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	r6, r2
	mov	r7, r3
	ldr	r2, .L60+156
	ldr	r3, .L60+164
	sub	r1, fp, #188
	ldmia	r1, {r0-r1}
	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, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #204
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-212]
	str	r3, [fp, #-208]
	b	.L44
.L59:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-212]
	str	r3, [fp, #-208]
.L44:
	ldrb	ip, [fp, #-237]	@ zero_extendqisi2
	ldr	r3, .L60+92
	ldr	lr, [r3]
	ldr	r3, .L60+92
	ldr	r4, [r3, #4]
	ldr	r3, .L60+92
	ldr	r1, [r3, #8]
	ldr	r0, [fp, #-236]
	ldr	r3, [fp, #-232]
	ldr	r2, .L60+168
	str	r2, [sp, #64]
	ldr	r2, .L60+172
	str	r2, [sp, #60]
	ldr	r2, .L60+176
	str	r2, [sp, #56]
	ldr	r2, .L60+180
	str	r2, [sp, #52]
	ldr	r2, .L60+184
	str	r2, [sp, #48]
	ldr	r2, .L60+188
	str	r2, [sp, #44]
	ldr	r2, .L60+192
	str	r2, [sp, #40]
	ldr	r2, .L60+196
	str	r2, [sp, #36]
	ldr	r2, .L60+200
	str	r2, [sp, #32]
	str	r3, [sp, #28]
	ldr	r3, .L60+204
	str	r3, [sp, #24]
	sub	r3, fp, #212
	ldmia	r3, {r2-r3}
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	sub	r3, fp, #204
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	str	r0, [sp, #4]
	str	r1, [sp]
	mov	r3, r4
	mov	r2, lr
	mov	r1, ip
	ldr	r0, .L60+208
	bl	print_results
	ldr	r3, .L60+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L45
	mov	r3, #1
	str	r3, [fp, #-228]
	b	.L46
.L47:
	ldr	r0, [fp, #-228]
	bl	timer_read
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-228]
	lsl	r1, r1, #3
	sub	r0, fp, #20
	add	r1, r0, r1
	sub	r1, r1, #104
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-228]
	add	r3, r3, #1
	str	r3, [fp, #-228]
.L46:
	ldr	r3, [fp, #-228]
	cmp	r3, #11
	ble	.L47
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #204
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L48
	mov	r2, #0
	ldr	r3, .L60+212
	str	r2, [fp, #-204]
	str	r3, [fp, #-200]
.L48:
	ldr	r0, .L60+216
	bl	puts
	mov	r3, #1
	str	r3, [fp, #-228]
	b	.L50
.L54:
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #2
	sub	r2, fp, #20
	add	r3, r2, r3
	ldr	r6, [r3, #-152]
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	sub	r2, fp, #20
	add	r3, r2, r3
	sub	r3, r3, #104
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	sub	r2, fp, #20
	add	r3, r2, r3
	sub	r3, r3, #104
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L60+220
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #204
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, r6
	ldr	r0, .L60+224
	bl	printf
	ldr	r3, [fp, #-228]
	cmp	r3, #5
	bne	.L51
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	sub	r3, fp, #100
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-180]
	str	r3, [fp, #-176]
	mov	r2, #0
	ldr	r3, .L60+220
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #204
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	ldr	r1, .L60+228
	ldr	r0, .L60+232
	bl	printf
	sub	r1, fp, #84
	ldmia	r1, {r0-r1}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-180]
	str	r3, [fp, #-176]
	mov	r2, #0
	ldr	r3, .L60+220
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #204
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	ldr	r1, .L60+236
	ldr	r0, .L60+232
	bl	printf
	b	.L52
.L51:
	ldr	r3, [fp, #-228]
	cmp	r3, #8
	bne	.L53
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-180]
	str	r3, [fp, #-176]
	mov	r2, #0
	ldr	r3, .L60+220
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #204
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	ldr	r1, .L60+240
	ldr	r0, .L60+232
	bl	printf
	b	.L52
.L53:
	ldr	r3, [fp, #-228]
	cmp	r3, #10
	bne	.L52
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-180]
	str	r3, [fp, #-176]
	mov	r2, #0
	ldr	r3, .L60+220
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #204
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	sub	r3, fp, #180
	ldmia	r3, {r2-r3}
	ldr	r1, .L60+244
	ldr	r0, .L60+232
	bl	printf
.L52:
	ldr	r3, [fp, #-228]
	add	r3, r3, #1
	str	r3, [fp, #-228]
.L50:
	ldr	r3, [fp, #-228]
	cmp	r3, #11
	ble	.L54
.L45:
	mov	r3, #0
.L55:
	ldr	r2, .L60
	ldr	r1, [r2]
	ldr	r2, [fp, #-24]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L56
	bl	__stack_chk_fail
.L56:
	mov	r0, r3
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
.L61:
	.align	2
.L60:
	.word	.LC45
	.word	.LC2
	.word	.LC3
	.word	timeron
	.word	.LC4
	.word	.LC5
	.word	.LC6
	.word	.LC7
	.word	.LC8
	.word	.LC9
	.word	.LC10
	.word	.LC11
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	.LC15
	.word	.LC16
	.word	.LC17
	.word	.LC18
	.word	dt
	.word	.LC19
	.word	grid_points+8
	.word	grid_points+4
	.word	grid_points
	.word	.LC20
	.word	.LC21
	.word	-350469331
	.word	1061828322
	.word	.LC22
	.word	.LC23
	.word	.LC24
	.word	.LC25
	.word	1717986919
	.word	.LC26
	.word	1074266112
	.word	-1598689907
	.word	1051772663
	.word	-1717986918
	.word	1084960153
	.word	-858993459
	.word	1087454700
	.word	1088118252
	.word	.LC28
	.word	.LC29
	.word	.LC30
	.word	.LC31
	.word	.LC32
	.word	.LC33
	.word	.LC34
	.word	.LC35
	.word	.LC36
	.word	.LC37
	.word	.LC27
	.word	1072693248
	.word	.LC38
	.word	1079574528
	.word	.LC39
	.word	.LC40
	.word	.LC41
	.word	.LC42
	.word	.LC43
	.word	.LC44
	.size	main, .-main
	.align	2
	.global	add
	.syntax unified
	.arm
	.fpu softvfp
	.type	add, %function
add:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	ldr	r3, .L74
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L63
	mov	r0, #11
	bl	timer_start
.L63:
	mov	r3, #1
	str	r3, [fp, #-20]
	b	.L64
.L71:
	mov	r3, #1
	str	r3, [fp, #-24]
	b	.L65
.L70:
	mov	r3, #1
	str	r3, [fp, #-28]
	b	.L66
.L69:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L67
.L68:
	ldr	ip, .L74+4
	ldr	r3, [fp, #-28]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-20]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	ip, .L74+8
	ldr	r3, [fp, #-28]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-20]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L74+4
	ldr	r3, [fp, #-28]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-20]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L67:
	ldr	r3, [fp, #-16]
	cmp	r3, #4
	ble	.L68
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L66:
	ldr	r3, .L74+12
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-28]
	cmp	r2, r3
	blt	.L69
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L65:
	ldr	r3, .L74+12
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	blt	.L70
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L64:
	ldr	r3, .L74+12
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	blt	.L71
	ldr	r3, .L74
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L73
	mov	r0, #11
	bl	timer_stop
.L73:
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L75:
	.align	2
.L74:
	.word	timeron
	.word	u
	.word	rhs
	.word	grid_points
	.size	add, .-add
	.align	2
	.global	adi
	.syntax unified
	.arm
	.fpu softvfp
	.type	adi, %function
adi:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	compute_rhs
	bl	x_solve
	bl	y_solve
	bl	z_solve
	bl	add
	nop
	pop	{fp, pc}
	.size	adi, .-adi
	.section	.rodata
	.align	2
.LC46:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	error_norm
	.syntax unified
	.arm
	.fpu softvfp
	.type	error_norm, %function
error_norm:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #132
	str	r0, [fp, #-128]
	ldr	r3, .L93
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-108]
	b	.L78
.L79:
	ldr	r3, [fp, #-108]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-128]
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-108]
	add	r3, r3, #1
	str	r3, [fp, #-108]
.L78:
	ldr	r3, [fp, #-108]
	cmp	r3, #4
	ble	.L79
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L80
.L87:
	ldr	r0, [fp, #-112]
	bl	__aeabi_i2d
	ldr	r3, .L93+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-100]
	str	r3, [fp, #-96]
	mov	r3, #0
	str	r3, [fp, #-116]
	b	.L81
.L86:
	ldr	r0, [fp, #-116]
	bl	__aeabi_i2d
	ldr	r3, .L93+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-92]
	str	r3, [fp, #-88]
	mov	r3, #0
	str	r3, [fp, #-120]
	b	.L82
.L85:
	ldr	r0, [fp, #-120]
	bl	__aeabi_i2d
	ldr	r3, .L93+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-84]
	str	r3, [fp, #-80]
	sub	r3, fp, #68
	str	r3, [sp, #8]
	sub	r3, fp, #100
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	sub	r1, fp, #84
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-108]
	b	.L83
.L84:
	ldr	ip, .L93+16
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	ldr	r0, [fp, #-112]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-108]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-108]
	lsl	r3, r3, #3
	sub	r2, fp, #20
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-76]
	str	r3, [fp, #-72]
	ldr	r3, [fp, #-108]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-128]
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	sub	r3, fp, #76
	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
	ldr	r3, [fp, #-108]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-128]
	add	r6, r2, r3
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-108]
	add	r3, r3, #1
	str	r3, [fp, #-108]
.L83:
	ldr	r3, [fp, #-108]
	cmp	r3, #4
	ble	.L84
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L82:
	ldr	r3, .L93+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L85
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L81:
	ldr	r3, .L93+20
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	blt	.L86
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L80:
	ldr	r3, .L93+20
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-112]
	cmp	r2, r3
	blt	.L87
	mov	r3, #0
	str	r3, [fp, #-108]
	b	.L88
.L91:
	mov	r3, #0
	str	r3, [fp, #-104]
	b	.L89
.L90:
	ldr	r3, [fp, #-108]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-128]
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r2, .L93+20
	ldr	r3, [fp, #-104]
	ldr	r3, [r2, r3, lsl #2]
	sub	r3, r3, #2
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-108]
	lsl	r1, r1, #3
	ldr	r0, [fp, #-128]
	add	r6, r0, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-104]
	add	r3, r3, #1
	str	r3, [fp, #-104]
.L89:
	ldr	r3, [fp, #-104]
	cmp	r3, #2
	ble	.L90
	ldr	r3, [fp, #-108]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-128]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-108]
	lsl	r1, r1, #3
	ldr	r0, [fp, #-128]
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-108]
	add	r3, r3, #1
	str	r3, [fp, #-108]
.L88:
	ldr	r3, [fp, #-108]
	cmp	r3, #4
	ble	.L91
	nop
	ldr	r3, .L93
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L92
	bl	__stack_chk_fail
.L92:
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L94:
	.align	2
.L93:
	.word	.LC46
	.word	dnzm1
	.word	dnym1
	.word	dnxm1
	.word	u
	.word	grid_points
	.size	error_norm, .-error_norm
	.align	2
	.global	rhs_norm
	.syntax unified
	.arm
	.fpu softvfp
	.type	rhs_norm, %function
rhs_norm:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #44
	str	r0, [fp, #-56]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L96
.L97:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L96:
	ldr	r3, [fp, #-32]
	cmp	r3, #4
	ble	.L97
	mov	r3, #1
	str	r3, [fp, #-40]
	b	.L98
.L105:
	mov	r3, #1
	str	r3, [fp, #-44]
	b	.L99
.L104:
	mov	r3, #1
	str	r3, [fp, #-48]
	b	.L100
.L103:
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L101
.L102:
	ldr	ip, .L110
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	ldr	r0, [fp, #-40]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-32]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r6, r2, r3
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L101:
	ldr	r3, [fp, #-32]
	cmp	r3, #4
	ble	.L102
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L100:
	ldr	r3, .L110+4
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-48]
	cmp	r2, r3
	blt	.L103
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L99:
	ldr	r3, .L110+4
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-44]
	cmp	r2, r3
	blt	.L104
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L98:
	ldr	r3, .L110+4
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-40]
	cmp	r2, r3
	blt	.L105
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L106
.L109:
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L107
.L108:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r2, .L110+4
	ldr	r3, [fp, #-36]
	ldr	r3, [r2, r3, lsl #2]
	sub	r3, r3, #2
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-32]
	lsl	r1, r1, #3
	ldr	r0, [fp, #-56]
	add	r6, r0, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L107:
	ldr	r3, [fp, #-36]
	cmp	r3, #2
	ble	.L108
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-32]
	lsl	r1, r1, #3
	ldr	r0, [fp, #-56]
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L106:
	ldr	r3, [fp, #-32]
	cmp	r3, #4
	ble	.L109
	nop
	nop
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L111:
	.align	2
.L110:
	.word	rhs
	.word	grid_points
	.size	rhs_norm, .-rhs_norm
	.section	.rodata
	.align	2
.LC47:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	exact_rhs
	.syntax unified
	.arm
	.fpu softvfp
	.type	exact_rhs, %function
exact_rhs:
	@ args = 0, pretend = 0, frame = 136
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #152
	ldr	r3, .L190
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-136]
	b	.L113
.L120:
	mov	r3, #0
	str	r3, [fp, #-140]
	b	.L114
.L119:
	mov	r3, #0
	str	r3, [fp, #-144]
	b	.L115
.L118:
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L116
.L117:
	ldr	ip, .L190+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r1, ip, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L116:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L117
	ldr	r3, [fp, #-144]
	add	r3, r3, #1
	str	r3, [fp, #-144]
.L115:
	ldr	r3, .L190+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-144]
	cmp	r2, r3
	blt	.L118
	ldr	r3, [fp, #-140]
	add	r3, r3, #1
	str	r3, [fp, #-140]
.L114:
	ldr	r3, .L190+4
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-140]
	cmp	r2, r3
	blt	.L119
	ldr	r3, [fp, #-136]
	add	r3, r3, #1
	str	r3, [fp, #-136]
.L113:
	ldr	r3, .L190+4
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-136]
	cmp	r2, r3
	blt	.L120
	mov	r3, #1
	str	r3, [fp, #-136]
	b	.L121
.L140:
	ldr	r0, [fp, #-136]
	bl	__aeabi_i2d
	ldr	r3, .L190+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-92]
	str	r3, [fp, #-88]
	mov	r3, #1
	str	r3, [fp, #-140]
	b	.L122
.L139:
	ldr	r0, [fp, #-140]
	bl	__aeabi_i2d
	ldr	r3, .L190+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-108]
	str	r3, [fp, #-104]
	mov	r3, #0
	str	r3, [fp, #-144]
	b	.L123
.L128:
	ldr	r0, [fp, #-144]
	bl	__aeabi_i2d
	ldr	r3, .L190+16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-100]
	str	r3, [fp, #-96]
	sub	r3, fp, #76
	str	r3, [sp, #8]
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #108
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L124
.L125:
	ldr	r3, [fp, #-148]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+72
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L124:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L125
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L190+20
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-84]
	str	r3, [fp, #-80]
	mov	r3, #1
	str	r3, [fp, #-148]
	b	.L126
.L127:
	ldr	r3, [fp, #-148]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r0-r1}
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L126:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L127
	ldr	r1, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L190+24
	ldr	r1, [fp, #-144]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, .L190+24
	ldr	r3, [fp, #-144]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	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	r1, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r1, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+72
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+72
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	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	r1, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+72
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	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	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L190+28
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L190+80
	ldr	r1, [fp, #-144]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-144]
	add	r3, r3, #1
	str	r3, [fp, #-144]
.L123:
	ldr	r3, .L190+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-144]
	cmp	r2, r3
	blt	.L128
	mov	r3, #1
	str	r3, [fp, #-144]
	b	.L129
.L191:
	.align	2
.L190:
	.word	.LC47
	.word	grid_points
	.word	dnzm1
	.word	dnym1
	.word	dnxm1
	.word	1072693248
	.word	cuf
	.word	1071644672
	.word	dx1tx1
	.word	xxcon1
	.word	dx2tx1
	.word	dx3tx1
	.word	tx2
	.word	xxcon2
	.word	dx4tx1
	.word	forcing
	.word	25000
	.word	buf
	.word	ue
	.word	c1
	.word	q
	.word	c2
.L130:
	ldr	r3, [fp, #-144]
	sub	r3, r3, #1
	str	r3, [fp, #-116]
	ldr	r3, [fp, #-144]
	add	r3, r3, #1
	str	r3, [fp, #-112]
	ldr	ip, .L190+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L190+64
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+72
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+48
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L190+72
	ldr	r2, [fp, #-116]
	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_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+32
	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	r4, r2
	mov	r5, r3
	ldr	ip, .L190+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L190+64
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	ip, .L190+60
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L190+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+68
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r2, .L190+80
	ldr	r3, [fp, #-112]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+84
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L190+72
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+68
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r1, .L190+72
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r2, .L190+80
	ldr	r3, [fp, #-116]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+84
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dadd
	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	r3, .L190+48
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L190+68
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L190+68
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+36
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L190+72
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+40
	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	r4, .L190+60
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L190+64
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	ip, .L190+60
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L190+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+68
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L190+72
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+68
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	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	r3, .L190+48
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L190+68
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L190+68
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+52
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L190+72
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+44
	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	r4, .L190+60
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L190+64
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	ip, .L190+60
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L190+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+68
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L190+72
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L190+68
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	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	r3, .L190+48
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L190+68
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+68
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L190+68
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+52
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L190+72
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L190+56
	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	r4, .L190+60
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L190+64
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	ip, .L190+60
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L190+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r8-r9}
	ldr	r1, .L190+68
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L190+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r2, .L190+80
	ldr	r3, [fp, #-112]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L190+84
	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
	str	r2, [fp, #-164]
	str	r3, [fp, #-160]
	ldr	r1, .L190+68
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L190+72
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L190+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r2, .L190+80
	ldr	r3, [fp, #-116]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L190+84
	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
	sub	r1, fp, #164
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192
	ldmia	r3, {r2-r3}
	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	r6, r2
	mov	r7, r3
	ldr	r3, .L192+4
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+60
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r1, .L192+80
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+80
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L192+80
	ldr	r2, [fp, #-116]
	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_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	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	r6, r2
	mov	r7, r3
	ldr	r2, .L192+56
	ldr	r3, [fp, #-112]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r2, .L192+56
	ldr	r3, [fp, #-144]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r2, .L192+56
	ldr	r3, [fp, #-116]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+8
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L192+80
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+80
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L192+80
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+12
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L192+88
	ldr	r2, [fp, #-112]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+88
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L192+88
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+16
	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	r4, .L192+96
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L192+100
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-144]
	add	r3, r3, #1
	str	r3, [fp, #-144]
.L129:
	ldr	r3, .L192+68
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	cmp	r2, r3
	blt	.L130
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L131
.L132:
	mov	r3, #1
	str	r3, [fp, #-144]
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+88
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+32
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-144]
	add	r2, r3, #1
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+28
	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	r3, [fp, #-144]
	add	r2, r3, #2
	ldr	ip, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	mov	r3, #2
	str	r3, [fp, #-144]
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-144]
	sub	r2, r3, #1
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+20
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L192+88
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+24
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-144]
	add	r2, r3, #1
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+28
	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	r3, [fp, #-144]
	add	r2, r3, #2
	ldr	ip, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L131:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L132
	mov	r3, #3
	str	r3, [fp, #-144]
	b	.L133
.L136:
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L134
.L135:
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-144]
	sub	r2, r3, #2
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-144]
	sub	r2, r3, #1
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+28
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L192+88
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+24
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-144]
	add	r2, r3, #1
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+28
	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	r3, [fp, #-144]
	add	r2, r3, #2
	ldr	ip, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L134:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L135
	ldr	r3, [fp, #-144]
	add	r3, r3, #1
	str	r3, [fp, #-144]
.L133:
	ldr	r3, .L192+68
	ldr	r3, [r3]
	sub	r3, r3, #3
	ldr	r2, [fp, #-144]
	cmp	r2, r3
	blt	.L136
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L137
.L193:
	.align	2
.L192:
	.word	tx2
	.word	xxcon3
	.word	xxcon4
	.word	xxcon5
	.word	dx5tx1
	.word	-1072693248
	.word	1075314688
	.word	1074790400
	.word	1075052544
	.word	dssp
	.word	dnzm1
	.word	dnxm1
	.word	dnym1
	.word	1072693248
	.word	cuf
	.word	1071644672
	.word	q
	.word	grid_points
	.word	dy1ty1
	.word	ty2
	.word	buf
	.word	yycon2
	.word	ue
	.word	dy2ty1
	.word	forcing
	.word	25000
.L138:
	ldr	r3, .L192+68
	ldr	r3, [r3]
	sub	r3, r3, #3
	str	r3, [fp, #-144]
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-144]
	sub	r2, r3, #2
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-144]
	sub	r2, r3, #1
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+28
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L192+88
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+24
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-144]
	add	r2, r3, #1
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+28
	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	r3, .L192+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, .L192+68
	ldr	r3, [r3]
	sub	r3, r3, #2
	str	r3, [fp, #-144]
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-144]
	sub	r2, r3, #2
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-144]
	sub	r2, r3, #1
	ldr	r1, .L192+88
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+28
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L192+88
	ldr	r2, [fp, #-144]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L192+32
	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	r3, .L192+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L137:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L138
	ldr	r3, [fp, #-140]
	add	r3, r3, #1
	str	r3, [fp, #-140]
.L122:
	ldr	r3, .L192+68
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-140]
	cmp	r2, r3
	blt	.L139
	ldr	r3, [fp, #-136]
	add	r3, r3, #1
	str	r3, [fp, #-136]
.L121:
	ldr	r3, .L192+68
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-136]
	cmp	r2, r3
	blt	.L140
	mov	r3, #1
	str	r3, [fp, #-136]
	b	.L141
.L160:
	ldr	r0, [fp, #-136]
	bl	__aeabi_i2d
	ldr	r3, .L192+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-92]
	str	r3, [fp, #-88]
	mov	r3, #1
	str	r3, [fp, #-144]
	b	.L142
.L159:
	ldr	r0, [fp, #-144]
	bl	__aeabi_i2d
	ldr	r3, .L192+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-100]
	str	r3, [fp, #-96]
	mov	r3, #0
	str	r3, [fp, #-140]
	b	.L143
.L148:
	ldr	r0, [fp, #-140]
	bl	__aeabi_i2d
	ldr	r3, .L192+48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-108]
	str	r3, [fp, #-104]
	sub	r3, fp, #76
	str	r3, [sp, #8]
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #108
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L144
.L145:
	ldr	r3, [fp, #-148]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+88
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L144:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L145
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L192+52
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-84]
	str	r3, [fp, #-80]
	mov	r3, #1
	str	r3, [fp, #-148]
	b	.L146
.L147:
	ldr	r3, [fp, #-148]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r0-r1}
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L146:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L147
	ldr	r1, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L192+56
	ldr	r1, [fp, #-140]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, .L192+56
	ldr	r3, [fp, #-140]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	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	r1, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r1, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+88
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+88
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	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	r1, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+88
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	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	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L192+60
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L192+64
	ldr	r1, [fp, #-140]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-140]
	add	r3, r3, #1
	str	r3, [fp, #-140]
.L143:
	ldr	r3, .L192+68
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-140]
	cmp	r2, r3
	blt	.L148
	mov	r3, #1
	str	r3, [fp, #-140]
	b	.L149
.L150:
	ldr	r3, [fp, #-140]
	sub	r3, r3, #1
	str	r3, [fp, #-124]
	ldr	r3, [fp, #-140]
	add	r3, r3, #1
	str	r3, [fp, #-120]
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L192+100
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+88
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+88
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+76
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L192+88
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+88
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L192+88
	ldr	r2, [fp, #-124]
	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_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+72
	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	r4, r2
	mov	r5, r3
	ldr	ip, .L192+96
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L192+100
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	ip, .L192+96
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L192+100
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+88
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+80
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L192+88
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L192+80
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	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	r3, .L192+76
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L192+80
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+80
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L192+80
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+84
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L192+88
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L192+88
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L192+88
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L192+92
	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	r4, .L192+96
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L192+100
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	ip, .L194+76
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L194
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+96
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L194+108
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r2, .L194+4
	ldr	r3, [fp, #-120]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+8
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L194+108
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r2, .L194+4
	ldr	r3, [fp, #-124]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dadd
	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	r3, .L194+12
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L194+108
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+108
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L194+108
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+16
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+96
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L194+96
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+20
	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	r4, .L194+76
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L194
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	ip, .L194+76
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L194
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+96
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L194+108
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L194+108
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	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	r3, .L194+12
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L194+108
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+108
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L194+108
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+24
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+96
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L194+96
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+28
	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	r4, .L194+76
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L194
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	ip, .L194+76
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L194
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r8-r9}
	ldr	r1, .L194+108
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+96
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L194+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r2, .L194+4
	ldr	r3, [fp, #-120]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L194+8
	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
	str	r2, [fp, #-164]
	str	r3, [fp, #-160]
	ldr	r1, .L194+108
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+96
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L194+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r2, .L194+4
	ldr	r3, [fp, #-124]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L194+8
	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
	sub	r1, fp, #164
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+12
	ldmia	r3, {r2-r3}
	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	r6, r2
	mov	r7, r3
	ldr	r3, .L194+36
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+40
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r1, .L194+108
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+108
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L194+108
	ldr	r2, [fp, #-124]
	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_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	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	r6, r2
	mov	r7, r3
	ldr	r2, .L194+104
	ldr	r3, [fp, #-120]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r2, .L194+104
	ldr	r3, [fp, #-140]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r2, .L194+104
	ldr	r3, [fp, #-124]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+44
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L194+108
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+108
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L194+108
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+48
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-120]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+96
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L194+96
	ldr	r2, [fp, #-124]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+52
	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	r4, .L194+76
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L194
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-140]
	add	r3, r3, #1
	str	r3, [fp, #-140]
.L149:
	ldr	r3, .L194+80
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-140]
	cmp	r2, r3
	blt	.L150
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L151
.L195:
	.align	2
.L194:
	.word	25000
	.word	q
	.word	c2
	.word	ty2
	.word	yycon1
	.word	dy3ty1
	.word	yycon2
	.word	dy4ty1
	.word	c1
	.word	yycon3
	.word	1071644672
	.word	yycon4
	.word	yycon5
	.word	dy5ty1
	.word	-1072693248
	.word	1075314688
	.word	1074790400
	.word	1075052544
	.word	dssp
	.word	forcing
	.word	grid_points
	.word	dnym1
	.word	dnxm1
	.word	dnzm1
	.word	ue
	.word	1072693248
	.word	cuf
	.word	buf
.L152:
	mov	r3, #1
	str	r3, [fp, #-140]
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+96
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+68
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-140]
	add	r2, r3, #1
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+64
	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	r3, [fp, #-140]
	add	r2, r3, #2
	ldr	ip, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+72
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	mov	r3, #2
	str	r3, [fp, #-140]
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-140]
	sub	r2, r3, #1
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+56
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+60
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-140]
	add	r2, r3, #1
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+64
	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	r3, [fp, #-140]
	add	r2, r3, #2
	ldr	ip, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+72
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L151:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L152
	mov	r3, #3
	str	r3, [fp, #-140]
	b	.L153
.L156:
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L154
.L155:
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-140]
	sub	r2, r3, #2
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-140]
	sub	r2, r3, #1
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+64
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+60
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-140]
	add	r2, r3, #1
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+64
	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	r3, [fp, #-140]
	add	r2, r3, #2
	ldr	ip, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L194+72
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L154:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L155
	ldr	r3, [fp, #-140]
	add	r3, r3, #1
	str	r3, [fp, #-140]
.L153:
	ldr	r3, .L194+80
	ldr	r3, [r3, #4]
	sub	r3, r3, #3
	ldr	r2, [fp, #-140]
	cmp	r2, r3
	blt	.L156
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L157
.L158:
	ldr	r3, .L194+80
	ldr	r3, [r3, #4]
	sub	r3, r3, #3
	str	r3, [fp, #-140]
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-140]
	sub	r2, r3, #2
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-140]
	sub	r2, r3, #1
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+64
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+60
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-140]
	add	r2, r3, #1
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+64
	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	r3, .L194+72
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, .L194+80
	ldr	r3, [r3, #4]
	sub	r3, r3, #2
	str	r3, [fp, #-140]
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-140]
	sub	r2, r3, #2
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-140]
	sub	r2, r3, #1
	ldr	r1, .L194+96
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+64
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L194+96
	ldr	r2, [fp, #-140]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L194+68
	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	r3, .L194+72
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L194+76
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L157:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L158
	ldr	r3, [fp, #-144]
	add	r3, r3, #1
	str	r3, [fp, #-144]
.L142:
	ldr	r3, .L194+80
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	cmp	r2, r3
	blt	.L159
	ldr	r3, [fp, #-136]
	add	r3, r3, #1
	str	r3, [fp, #-136]
.L141:
	ldr	r3, .L194+80
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-136]
	cmp	r2, r3
	blt	.L160
	mov	r3, #1
	str	r3, [fp, #-140]
	b	.L161
.L180:
	ldr	r0, [fp, #-140]
	bl	__aeabi_i2d
	ldr	r3, .L194+84
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-108]
	str	r3, [fp, #-104]
	mov	r3, #1
	str	r3, [fp, #-144]
	b	.L162
.L179:
	ldr	r0, [fp, #-144]
	bl	__aeabi_i2d
	ldr	r3, .L194+88
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-100]
	str	r3, [fp, #-96]
	mov	r3, #0
	str	r3, [fp, #-136]
	b	.L163
.L168:
	ldr	r0, [fp, #-136]
	bl	__aeabi_i2d
	ldr	r3, .L194+92
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-92]
	str	r3, [fp, #-88]
	sub	r3, fp, #76
	str	r3, [sp, #8]
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #108
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L164
.L165:
	ldr	r3, [fp, #-148]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	ip, .L194+96
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L164:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L165
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L194+100
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-84]
	str	r3, [fp, #-80]
	mov	r3, #1
	str	r3, [fp, #-148]
	b	.L166
.L167:
	ldr	r3, [fp, #-148]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r0-r1}
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L194+108
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L166:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L167
	ldr	r1, .L194+108
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L194+108
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L194+104
	ldr	r1, [fp, #-136]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, .L194+104
	ldr	r3, [fp, #-136]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L194+108
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L194+108
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	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	r1, .L194+108
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L194+108
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L194+108
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r1, .L196+44
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L196+44
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	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	r1, .L196+44
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	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	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L196
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L196+56
	ldr	r1, [fp, #-136]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-136]
	add	r3, r3, #1
	str	r3, [fp, #-136]
.L163:
	ldr	r3, .L196+4
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-136]
	cmp	r2, r3
	blt	.L168
	mov	r3, #1
	str	r3, [fp, #-136]
	b	.L169
.L197:
	.align	2
.L196:
	.word	1071644672
	.word	grid_points
	.word	dz1tz1
	.word	dz2tz1
	.word	zzcon2
	.word	dz3tz1
	.word	tz2
	.word	zzcon1
	.word	dz4tz1
	.word	forcing
	.word	25000
	.word	buf
	.word	ue
	.word	c1
	.word	q
	.word	c2
.L170:
	ldr	r3, [fp, #-136]
	sub	r3, r3, #1
	str	r3, [fp, #-132]
	ldr	r3, [fp, #-136]
	add	r3, r3, #1
	str	r3, [fp, #-128]
	ldr	ip, .L196+36
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L196+40
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L196+48
	ldr	r2, [fp, #-132]
	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_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+8
	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	r4, r2
	mov	r5, r3
	ldr	ip, .L196+36
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L196+40
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	ip, .L196+36
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L196+40
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+44
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L196+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+44
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	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	r3, .L196+24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L196+44
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+44
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L196+44
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+16
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L196+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+12
	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	r4, .L196+36
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L196+40
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	ip, .L196+36
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L196+40
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+44
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L196+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+44
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	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	r3, .L196+24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L196+44
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+44
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L196+44
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+16
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L196+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+20
	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	r4, .L196+36
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L196+40
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	ip, .L196+36
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L196+40
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+44
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r2, .L196+56
	ldr	r3, [fp, #-128]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+60
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L196+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	ip, .L196+44
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r1, .L196+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r2, .L196+56
	ldr	r3, [fp, #-132]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+60
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dadd
	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	r3, .L196+24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L196+44
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+44
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L196+44
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+28
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L196+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L196+32
	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	r4, .L196+36
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L196+40
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	ip, .L196+36
	ldr	r1, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L196+40
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r8-r9}
	ldr	r1, .L196+44
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L196+52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r2, .L196+56
	ldr	r3, [fp, #-128]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L196+60
	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
	str	r2, [fp, #-164]
	str	r3, [fp, #-160]
	ldr	r1, .L196+44
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L196+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L196+52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r2, .L196+56
	ldr	r3, [fp, #-132]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L196+60
	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
	sub	r1, fp, #164
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L198
	ldmia	r3, {r2-r3}
	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	r6, r2
	mov	r7, r3
	ldr	r3, .L198+4
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+8
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r1, .L198+12
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L198+12
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L198+12
	ldr	r2, [fp, #-132]
	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_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	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	r6, r2
	mov	r7, r3
	ldr	r2, .L198+16
	ldr	r3, [fp, #-128]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r2, .L198+16
	ldr	r3, [fp, #-136]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r2, .L198+16
	ldr	r3, [fp, #-132]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L198+20
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L198+12
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r1, .L198+12
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L198+12
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L198+24
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L198+48
	ldr	r2, [fp, #-128]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r1, .L198+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	ip, .L198+48
	ldr	r2, [fp, #-132]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L198+28
	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	r4, .L198+60
	ldr	ip, [fp, #-144]
	ldr	r2, [fp, #-140]
	ldr	lr, [fp, #-136]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L198+32
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-136]
	add	r3, r3, #1
	str	r3, [fp, #-136]
.L169:
	ldr	r3, .L198+64
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-136]
	cmp	r2, r3
	blt	.L170
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L171
.L172:
	mov	r3, #1
	str	r3, [fp, #-136]
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L198+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+52
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-136]
	add	r2, r3, #1
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+44
	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	r3, [fp, #-136]
	add	r2, r3, #2
	ldr	ip, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L198+56
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	mov	r3, #2
	str	r3, [fp, #-136]
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-136]
	sub	r2, r3, #1
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+36
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r1, .L198+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+40
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-136]
	add	r2, r3, #1
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+44
	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	r3, [fp, #-136]
	add	r2, r3, #2
	ldr	ip, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L198+56
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L171:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L172
	mov	r3, #3
	str	r3, [fp, #-136]
	b	.L173
.L176:
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L174
.L175:
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-136]
	sub	r2, r3, #2
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-136]
	sub	r2, r3, #1
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+44
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L198+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+40
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-136]
	add	r2, r3, #1
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+44
	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	r3, [fp, #-136]
	add	r2, r3, #2
	ldr	ip, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L198+56
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L174:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L175
	ldr	r3, [fp, #-136]
	add	r3, r3, #1
	str	r3, [fp, #-136]
.L173:
	ldr	r3, .L198+64
	ldr	r3, [r3, #8]
	sub	r3, r3, #3
	ldr	r2, [fp, #-136]
	cmp	r2, r3
	blt	.L176
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L177
.L199:
	.align	2
.L198:
	.word	tz2
	.word	zzcon3
	.word	1071644672
	.word	buf
	.word	cuf
	.word	zzcon4
	.word	zzcon5
	.word	dz5tz1
	.word	25000
	.word	-1072693248
	.word	1075314688
	.word	1074790400
	.word	ue
	.word	1075052544
	.word	dssp
	.word	forcing
	.word	grid_points
	.word	.LC47
.L178:
	ldr	r3, .L198+64
	ldr	r3, [r3, #8]
	sub	r3, r3, #3
	str	r3, [fp, #-136]
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-136]
	sub	r2, r3, #2
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-136]
	sub	r2, r3, #1
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+44
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L198+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+40
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-136]
	add	r2, r3, #1
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+44
	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	r3, .L198+56
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, .L198+64
	ldr	r3, [r3, #8]
	sub	r3, r3, #2
	str	r3, [fp, #-136]
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-136]
	sub	r2, r3, #2
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-136]
	sub	r2, r3, #1
	ldr	r1, .L198+48
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+44
	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	r6, r2
	mov	r7, r3
	ldr	r1, .L198+48
	ldr	r2, [fp, #-136]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-148]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L198+52
	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	r3, .L198+56
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L177:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L178
	ldr	r3, [fp, #-144]
	add	r3, r3, #1
	str	r3, [fp, #-144]
.L162:
	ldr	r3, .L198+64
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	cmp	r2, r3
	blt	.L179
	ldr	r3, [fp, #-140]
	add	r3, r3, #1
	str	r3, [fp, #-140]
.L161:
	ldr	r3, .L198+64
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-140]
	cmp	r2, r3
	blt	.L180
	mov	r3, #1
	str	r3, [fp, #-136]
	b	.L181
.L188:
	mov	r3, #1
	str	r3, [fp, #-140]
	b	.L182
.L187:
	mov	r3, #1
	str	r3, [fp, #-144]
	b	.L183
.L186:
	mov	r3, #0
	str	r3, [fp, #-148]
	b	.L184
.L185:
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-156]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-152]
	ldr	ip, .L198+60
	ldr	r3, [fp, #-144]
	ldr	r1, [fp, #-140]
	ldr	r0, [fp, #-136]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-148]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	sub	r2, fp, #156
	ldmia	r2, {r1-r2}
	stm	r3, {r1-r2}
	ldr	r3, [fp, #-148]
	add	r3, r3, #1
	str	r3, [fp, #-148]
.L184:
	ldr	r3, [fp, #-148]
	cmp	r3, #4
	ble	.L185
	ldr	r3, [fp, #-144]
	add	r3, r3, #1
	str	r3, [fp, #-144]
.L183:
	ldr	r3, .L198+64
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	cmp	r2, r3
	blt	.L186
	ldr	r3, [fp, #-140]
	add	r3, r3, #1
	str	r3, [fp, #-140]
.L182:
	ldr	r3, .L198+64
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-140]
	cmp	r2, r3
	blt	.L187
	ldr	r3, [fp, #-136]
	add	r3, r3, #1
	str	r3, [fp, #-136]
.L181:
	ldr	r3, .L198+64
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-136]
	cmp	r2, r3
	blt	.L188
	nop
	ldr	r3, .L198+68
	ldr	r2, [r3]
	ldr	r3, [fp, #-32]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L189
	bl	__stack_chk_fail
.L189:
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
	.size	exact_rhs, .-exact_rhs
	.align	2
	.global	exact_solution
	.syntax unified
	.arm
	.fpu softvfp
	.type	exact_solution, %function
exact_solution:
	@ args = 12, 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, #32
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L201
.L202:
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r4-r5}
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #8
	ldmia	r3, {r6-r7}
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #32
	ldmia	r3, {r8-r9}
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #56
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	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, r8
	mov	r1, r9
	bl	__aeabi_dadd
	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, r6
	mov	r1, r7
	bl	__aeabi_dadd
	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, #-60]
	str	r3, [fp, #-56]
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #40
	ldmia	r3, {r6-r7}
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #64
	ldmia	r3, {r8-r9}
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #52
	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
	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_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #48
	ldmia	r3, {r6-r7}
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #72
	ldmia	r3, {r8-r9}
	ldr	r1, .L203
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldmib	fp, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldmib	fp, {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
	ldmib	fp, {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	r0, r2
	mov	r1, r3
	ldmib	fp, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #12]
	add	r4, r2, r3
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L201:
	ldr	r3, [fp, #-32]
	cmp	r3, #4
	ble	.L202
	nop
	nop
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L204:
	.align	2
.L203:
	.word	ce
	.size	exact_solution, .-exact_solution
	.section	.rodata
	.align	2
.LC48:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	initialize
	.syntax unified
	.arm
	.fpu softvfp
	.type	initialize, %function
initialize:
	@ args = 0, pretend = 0, frame = 368
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #384
	ldr	r3, .L265+24
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-368]
	b	.L206
.L213:
	mov	r3, #0
	str	r3, [fp, #-372]
	b	.L207
.L212:
	mov	r3, #0
	str	r3, [fp, #-376]
	b	.L208
.L211:
	mov	r3, #0
	str	r3, [fp, #-364]
	b	.L209
.L210:
	ldr	ip, .L265+16
	ldr	r3, [fp, #-376]
	ldr	r1, [fp, #-372]
	ldr	r0, [fp, #-368]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-364]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r1, ip, r3
	mov	r2, #0
	ldr	r3, .L265
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-364]
	add	r3, r3, #1
	str	r3, [fp, #-364]
.L209:
	ldr	r3, [fp, #-364]
	cmp	r3, #4
	ble	.L210
	ldr	r3, [fp, #-376]
	add	r3, r3, #1
	str	r3, [fp, #-376]
.L208:
	ldr	r3, .L265+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-376]
	cmp	r2, r3
	blt	.L211
	ldr	r3, [fp, #-372]
	add	r3, r3, #1
	str	r3, [fp, #-372]
.L207:
	ldr	r3, .L265+20
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-372]
	cmp	r2, r3
	blt	.L212
	ldr	r3, [fp, #-368]
	add	r3, r3, #1
	str	r3, [fp, #-368]
.L206:
	ldr	r3, .L265+20
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-368]
	cmp	r2, r3
	blt	.L213
	mov	r3, #0
	str	r3, [fp, #-368]
	b	.L214
.L227:
	ldr	r0, [fp, #-368]
	bl	__aeabi_i2d
	ldr	r3, .L265+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-332]
	str	r3, [fp, #-328]
	mov	r3, #0
	str	r3, [fp, #-372]
	b	.L215
.L226:
	ldr	r0, [fp, #-372]
	bl	__aeabi_i2d
	ldr	r3, .L265+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-340]
	str	r3, [fp, #-336]
	mov	r3, #0
	str	r3, [fp, #-376]
	b	.L216
.L225:
	ldr	r0, [fp, #-376]
	bl	__aeabi_i2d
	ldr	r3, .L265+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-348]
	str	r3, [fp, #-344]
	mov	r3, #0
	str	r3, [fp, #-360]
	b	.L217
.L218:
	ldr	r0, [fp, #-360]
	bl	__aeabi_i2d
	sub	ip, fp, #260
	ldr	r2, [fp, #-360]
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	str	r3, [sp, #8]
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	bl	exact_solution
	ldr	r3, [fp, #-360]
	add	r3, r3, #1
	str	r3, [fp, #-360]
.L217:
	ldr	r3, [fp, #-360]
	cmp	r3, #1
	ble	.L218
	mov	r3, #0
	str	r3, [fp, #-356]
	b	.L219
.L220:
	ldr	r0, [fp, #-356]
	bl	__aeabi_i2d
	sub	ip, fp, #260
	ldr	r2, [fp, #-356]
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r3, #40
	add	r3, ip, r3
	str	r3, [sp, #8]
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #348
	ldmia	r1, {r0-r1}
	bl	exact_solution
	ldr	r3, [fp, #-356]
	add	r3, r3, #1
	str	r3, [fp, #-356]
.L219:
	ldr	r3, [fp, #-356]
	cmp	r3, #1
	ble	.L220
	mov	r3, #0
	str	r3, [fp, #-352]
	b	.L221
.L222:
	ldr	r0, [fp, #-352]
	bl	__aeabi_i2d
	sub	ip, fp, #260
	ldr	r2, [fp, #-352]
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r3, #80
	add	r3, ip, r3
	str	r3, [sp, #8]
	stm	sp, {r0-r1}
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	sub	r1, fp, #348
	ldmia	r1, {r0-r1}
	bl	exact_solution
	ldr	r3, [fp, #-352]
	add	r3, r3, #1
	str	r3, [fp, #-352]
.L221:
	ldr	r3, [fp, #-352]
	cmp	r3, #1
	ble	.L222
	mov	r3, #0
	str	r3, [fp, #-364]
	b	.L223
.L224:
	ldr	r3, [fp, #-364]
	add	r3, r3, #15
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #248
	ldmia	r3, {r0-r1}
	sub	r3, fp, #348
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #348
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L265
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-364]
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #248
	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, #-324]
	str	r3, [fp, #-320]
	ldr	r3, [fp, #-364]
	add	r3, r3, #20
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #248
	ldmia	r3, {r0-r1}
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L265
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-364]
	add	r3, r3, #5
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #248
	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, #-316]
	str	r3, [fp, #-312]
	ldr	r3, [fp, #-364]
	add	r3, r3, #25
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #248
	ldmia	r3, {r0-r1}
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L265
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-364]
	add	r3, r3, #10
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #248
	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, #-308]
	str	r3, [fp, #-304]
	sub	r3, fp, #316
	ldmia	r3, {r2-r3}
	sub	r1, fp, #324
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #308
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #316
	ldmia	r3, {r2-r3}
	sub	r1, fp, #324
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #308
	ldmia	r3, {r2-r3}
	sub	r1, fp, #324
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #308
	ldmia	r3, {r2-r3}
	sub	r1, fp, #316
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #316
	ldmia	r3, {r2-r3}
	sub	r1, fp, #324
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #308
	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	ip, .L265+16
	ldr	r3, [fp, #-376]
	ldr	r1, [fp, #-372]
	ldr	r0, [fp, #-368]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-364]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-364]
	add	r3, r3, #1
	str	r3, [fp, #-364]
.L223:
	ldr	r3, [fp, #-364]
	cmp	r3, #4
	ble	.L224
	ldr	r3, [fp, #-376]
	add	r3, r3, #1
	str	r3, [fp, #-376]
.L216:
	ldr	r3, .L265+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-376]
	cmp	r2, r3
	blt	.L225
	ldr	r3, [fp, #-372]
	add	r3, r3, #1
	str	r3, [fp, #-372]
.L215:
	ldr	r3, .L265+20
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-372]
	cmp	r2, r3
	blt	.L226
	ldr	r3, [fp, #-368]
	add	r3, r3, #1
	str	r3, [fp, #-368]
.L214:
	ldr	r3, .L265+20
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-368]
	cmp	r2, r3
	blt	.L227
	mov	r3, #0
	str	r3, [fp, #-376]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-348]
	str	r3, [fp, #-344]
	mov	r3, #0
	str	r3, [fp, #-368]
	b	.L228
.L233:
	ldr	r0, [fp, #-368]
	bl	__aeabi_i2d
	ldr	r3, .L265+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-332]
	str	r3, [fp, #-328]
	mov	r3, #0
	str	r3, [fp, #-372]
	b	.L229
.L232:
	ldr	r0, [fp, #-372]
	bl	__aeabi_i2d
	ldr	r3, .L265+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-340]
	str	r3, [fp, #-336]
	sub	r3, fp, #300
	str	r3, [sp, #8]
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	sub	r1, fp, #348
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-364]
	b	.L230
.L231:
	ldr	r3, [fp, #-364]
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #288
	ldmia	r3, {r4-r5}
	ldr	ip, .L265+16
	ldr	r3, [fp, #-376]
	ldr	r1, [fp, #-372]
	ldr	r0, [fp, #-368]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-364]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-364]
	add	r3, r3, #1
	str	r3, [fp, #-364]
.L230:
	ldr	r3, [fp, #-364]
	cmp	r3, #4
	ble	.L231
	ldr	r3, [fp, #-372]
	add	r3, r3, #1
	str	r3, [fp, #-372]
.L229:
	ldr	r3, .L265+20
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-372]
	cmp	r2, r3
	blt	.L232
	ldr	r3, [fp, #-368]
	add	r3, r3, #1
	str	r3, [fp, #-368]
.L228:
	ldr	r3, .L265+20
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-368]
	cmp	r2, r3
	blt	.L233
	ldr	r3, .L265+20
	ldr	r3, [r3]
	sub	r3, r3, #1
	str	r3, [fp, #-376]
	mov	r2, #0
	ldr	r3, .L265
	str	r2, [fp, #-348]
	str	r3, [fp, #-344]
	mov	r3, #0
	str	r3, [fp, #-368]
	b	.L234
.L239:
	ldr	r0, [fp, #-368]
	bl	__aeabi_i2d
	ldr	r3, .L265+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-332]
	str	r3, [fp, #-328]
	mov	r3, #0
	str	r3, [fp, #-372]
	b	.L235
.L238:
	ldr	r0, [fp, #-372]
	bl	__aeabi_i2d
	ldr	r3, .L265+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-340]
	str	r3, [fp, #-336]
	sub	r3, fp, #300
	str	r3, [sp, #8]
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	sub	r1, fp, #348
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-364]
	b	.L236
.L237:
	ldr	r3, [fp, #-364]
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #288
	ldmia	r3, {r4-r5}
	ldr	ip, .L265+16
	ldr	r3, [fp, #-376]
	ldr	r1, [fp, #-372]
	ldr	r0, [fp, #-368]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-364]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-364]
	add	r3, r3, #1
	str	r3, [fp, #-364]
.L236:
	ldr	r3, [fp, #-364]
	cmp	r3, #4
	ble	.L237
	ldr	r3, [fp, #-372]
	add	r3, r3, #1
	str	r3, [fp, #-372]
.L235:
	ldr	r3, .L265+20
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-372]
	cmp	r2, r3
	blt	.L238
	ldr	r3, [fp, #-368]
	add	r3, r3, #1
	str	r3, [fp, #-368]
.L234:
	ldr	r3, .L265+20
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-368]
	cmp	r2, r3
	blt	.L239
	mov	r3, #0
	str	r3, [fp, #-372]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-340]
	str	r3, [fp, #-336]
	mov	r3, #0
	str	r3, [fp, #-368]
	b	.L240
.L245:
	ldr	r0, [fp, #-368]
	bl	__aeabi_i2d
	ldr	r3, .L265+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-332]
	str	r3, [fp, #-328]
	mov	r3, #0
	str	r3, [fp, #-376]
	b	.L241
.L244:
	ldr	r0, [fp, #-376]
	bl	__aeabi_i2d
	ldr	r3, .L265+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-348]
	str	r3, [fp, #-344]
	sub	r3, fp, #300
	str	r3, [sp, #8]
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	sub	r1, fp, #348
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-364]
	b	.L242
.L243:
	ldr	r3, [fp, #-364]
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #288
	ldmia	r3, {r4-r5}
	ldr	ip, .L265+16
	ldr	r3, [fp, #-376]
	ldr	r1, [fp, #-372]
	ldr	r0, [fp, #-368]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-364]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-364]
	add	r3, r3, #1
	str	r3, [fp, #-364]
.L242:
	ldr	r3, [fp, #-364]
	cmp	r3, #4
	ble	.L243
	ldr	r3, [fp, #-376]
	add	r3, r3, #1
	str	r3, [fp, #-376]
.L241:
	ldr	r3, .L265+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-376]
	cmp	r2, r3
	blt	.L244
	ldr	r3, [fp, #-368]
	add	r3, r3, #1
	str	r3, [fp, #-368]
.L240:
	ldr	r3, .L265+20
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-368]
	cmp	r2, r3
	blt	.L245
	ldr	r3, .L265+20
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	str	r3, [fp, #-372]
	mov	r2, #0
	ldr	r3, .L265
	str	r2, [fp, #-340]
	str	r3, [fp, #-336]
	mov	r3, #0
	str	r3, [fp, #-368]
	b	.L246
.L251:
	ldr	r0, [fp, #-368]
	bl	__aeabi_i2d
	ldr	r3, .L265+4
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-332]
	str	r3, [fp, #-328]
	mov	r3, #0
	str	r3, [fp, #-376]
	b	.L247
.L250:
	ldr	r0, [fp, #-376]
	bl	__aeabi_i2d
	ldr	r3, .L265+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-348]
	str	r3, [fp, #-344]
	sub	r3, fp, #300
	str	r3, [sp, #8]
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	sub	r1, fp, #348
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-364]
	b	.L248
.L249:
	ldr	r3, [fp, #-364]
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #288
	ldmia	r3, {r4-r5}
	ldr	ip, .L265+16
	ldr	r3, [fp, #-376]
	ldr	r1, [fp, #-372]
	ldr	r0, [fp, #-368]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-364]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-364]
	add	r3, r3, #1
	str	r3, [fp, #-364]
.L248:
	ldr	r3, [fp, #-364]
	cmp	r3, #4
	ble	.L249
	ldr	r3, [fp, #-376]
	add	r3, r3, #1
	str	r3, [fp, #-376]
.L247:
	ldr	r3, .L265+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-376]
	cmp	r2, r3
	blt	.L250
	ldr	r3, [fp, #-368]
	add	r3, r3, #1
	str	r3, [fp, #-368]
.L246:
	ldr	r3, .L265+20
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-368]
	cmp	r2, r3
	blt	.L251
	mov	r3, #0
	str	r3, [fp, #-368]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-332]
	str	r3, [fp, #-328]
	mov	r3, #0
	str	r3, [fp, #-372]
	b	.L252
.L257:
	ldr	r0, [fp, #-372]
	bl	__aeabi_i2d
	ldr	r3, .L265+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-340]
	str	r3, [fp, #-336]
	mov	r3, #0
	str	r3, [fp, #-376]
	b	.L253
.L256:
	ldr	r0, [fp, #-376]
	bl	__aeabi_i2d
	ldr	r3, .L265+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-348]
	str	r3, [fp, #-344]
	sub	r3, fp, #300
	str	r3, [sp, #8]
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	sub	r1, fp, #348
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-364]
	b	.L254
.L255:
	ldr	r3, [fp, #-364]
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #288
	ldmia	r3, {r4-r5}
	ldr	ip, .L265+16
	ldr	r3, [fp, #-376]
	ldr	r1, [fp, #-372]
	ldr	r0, [fp, #-368]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-364]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-364]
	add	r3, r3, #1
	str	r3, [fp, #-364]
.L254:
	ldr	r3, [fp, #-364]
	cmp	r3, #4
	ble	.L255
	ldr	r3, [fp, #-376]
	add	r3, r3, #1
	str	r3, [fp, #-376]
.L253:
	ldr	r3, .L265+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-376]
	cmp	r2, r3
	blt	.L256
	ldr	r3, [fp, #-372]
	add	r3, r3, #1
	str	r3, [fp, #-372]
.L252:
	ldr	r3, .L265+20
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-372]
	cmp	r2, r3
	blt	.L257
	ldr	r3, .L265+20
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	str	r3, [fp, #-368]
	mov	r2, #0
	ldr	r3, .L265
	str	r2, [fp, #-332]
	str	r3, [fp, #-328]
	mov	r3, #0
	str	r3, [fp, #-372]
	b	.L258
.L263:
	ldr	r0, [fp, #-372]
	bl	__aeabi_i2d
	ldr	r3, .L265+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-340]
	str	r3, [fp, #-336]
	mov	r3, #0
	str	r3, [fp, #-376]
	b	.L259
.L266:
	.align	2
.L265:
	.word	1072693248
	.word	dnzm1
	.word	dnym1
	.word	dnxm1
	.word	u
	.word	grid_points
	.word	.LC48
.L262:
	ldr	r0, [fp, #-376]
	bl	__aeabi_i2d
	ldr	r3, .L265+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-348]
	str	r3, [fp, #-344]
	sub	r3, fp, #300
	str	r3, [sp, #8]
	sub	r3, fp, #332
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #340
	ldmia	r3, {r2-r3}
	sub	r1, fp, #348
	ldmia	r1, {r0-r1}
	bl	exact_solution
	mov	r3, #0
	str	r3, [fp, #-364]
	b	.L260
.L261:
	ldr	r3, [fp, #-364]
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #288
	ldmia	r3, {r4-r5}
	ldr	ip, .L265+16
	ldr	r3, [fp, #-376]
	ldr	r1, [fp, #-372]
	ldr	r0, [fp, #-368]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-364]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-364]
	add	r3, r3, #1
	str	r3, [fp, #-364]
.L260:
	ldr	r3, [fp, #-364]
	cmp	r3, #4
	ble	.L261
	ldr	r3, [fp, #-376]
	add	r3, r3, #1
	str	r3, [fp, #-376]
.L259:
	ldr	r3, .L265+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-376]
	cmp	r2, r3
	blt	.L262
	ldr	r3, [fp, #-372]
	add	r3, r3, #1
	str	r3, [fp, #-372]
.L258:
	ldr	r3, .L265+20
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-372]
	cmp	r2, r3
	blt	.L263
	nop
	ldr	r3, .L265+24
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L264
	bl	__stack_chk_fail
.L264:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
	.size	initialize, .-initialize
	.align	2
	.global	lhsinit
	.syntax unified
	.arm
	.fpu softvfp
	.type	lhsinit, %function
lhsinit:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L268
.L271:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L269
.L270:
	ldr	r1, [fp, #-24]
	ldr	r2, [fp, #-12]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-16]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, [fp, #-24]
	ldr	r2, [fp, #-12]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-16]
	add	r3, r3, r2
	add	r3, r3, #25
	lsl	r3, r3, #3
	add	r1, r1, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, [fp, #-24]
	ldr	r2, [fp, #-12]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-16]
	add	r3, r3, r2
	add	r3, r3, #50
	lsl	r3, r3, #3
	add	r1, r1, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #4
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-24]
	add	r1, r3, r2
	ldr	r2, [fp, #-12]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-16]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #4
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-24]
	add	r1, r3, r2
	ldr	r2, [fp, #-12]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-16]
	add	r3, r3, r2
	add	r3, r3, #25
	lsl	r3, r3, #3
	add	r1, r1, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #4
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-24]
	add	r1, r3, r2
	ldr	r2, [fp, #-12]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-16]
	add	r3, r3, r2
	add	r3, r3, #50
	lsl	r3, r3, #3
	add	r1, r1, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L269:
	ldr	r3, [fp, #-16]
	cmp	r3, #4
	ble	.L270
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L268:
	ldr	r3, [fp, #-12]
	cmp	r3, #4
	ble	.L271
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L272
.L273:
	ldr	r1, [fp, #-24]
	ldr	r2, [fp, #-16]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #4
	add	r3, r1, r3
	add	r1, r3, #200
	mov	r2, #0
	ldr	r3, .L274
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #4
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-24]
	add	r1, r3, r2
	ldr	r2, [fp, #-16]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #4
	add	r3, r1, r3
	add	r1, r3, #200
	mov	r2, #0
	ldr	r3, .L274
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L272:
	ldr	r3, [fp, #-16]
	cmp	r3, #4
	ble	.L273
	nop
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L275:
	.align	2
.L274:
	.word	1072693248
	.size	lhsinit, .-lhsinit
	.align	2
	.global	compute_rhs
	.syntax unified
	.arm
	.fpu softvfp
	.type	compute_rhs, %function
compute_rhs:
	@ args = 0, pretend = 0, frame = 96
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #96
	ldr	r3, .L398
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L277
	mov	r0, #5
	bl	timer_start
.L277:
	mov	r3, #0
	str	r3, [fp, #-116]
	b	.L278
.L283:
	mov	r3, #0
	str	r3, [fp, #-120]
	b	.L279
.L282:
	mov	r3, #0
	str	r3, [fp, #-124]
	b	.L280
.L281:
	ldr	ip, .L398+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L398+76
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L398+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r0, .L398+8
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r1, r0, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	ip, .L398+80
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r0, .L398+32
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	stm	r3, {r4-r5}
	ldr	ip, .L398+80
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r0, .L398+60
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	stm	r3, {r4-r5}
	ldr	ip, .L398+80
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r0, .L398+12
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	stm	r3, {r4-r5}
	ldr	ip, .L398+80
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r4, .L398+80
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L398+76
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L398+80
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r6, .L398+80
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L398+76
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r6, r3
	add	r3, r3, #16
	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	ip, .L398+80
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r6, .L398+80
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L398+76
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r6, r3
	add	r3, r3, #24
	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	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L398+16
	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	r4, r2
	mov	r5, r3
	ldr	r0, .L398+48
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	stm	r3, {r4-r5}
	ldr	r0, .L398+48
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r0, .L398+20
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L280:
	ldr	r3, .L398+24
	ldr	r3, [r3]
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L281
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L279:
	ldr	r3, .L398+24
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L282
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L278:
	ldr	r3, .L398+24
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	blt	.L283
	mov	r3, #0
	str	r3, [fp, #-116]
	b	.L284
.L291:
	mov	r3, #0
	str	r3, [fp, #-120]
	b	.L285
.L290:
	mov	r3, #0
	str	r3, [fp, #-124]
	b	.L286
.L289:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L287
.L288:
	ldr	ip, .L398+28
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	ip, .L398+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L287:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L288
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L286:
	ldr	r3, .L398+24
	ldr	r3, [r3]
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L289
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L285:
	ldr	r3, .L398+24
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L290
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L284:
	ldr	r3, .L398+24
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	blt	.L291
	ldr	r3, .L398
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L292
	mov	r0, #2
	bl	timer_start
.L292:
	mov	r3, #1
	str	r3, [fp, #-116]
	b	.L293
.L316:
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L294
.L297:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L295
.L399:
	.align	2
.L398:
	.word	timeron
	.word	1072693248
	.word	rho_i
	.word	ws
	.word	1071644672
	.word	qs
	.word	grid_points
	.word	forcing
	.word	us
	.word	dx1tx1
	.word	dx2tx1
	.word	con43
	.word	square
	.word	c2
	.word	dx3tx1
	.word	vs
	.word	xxcon2
	.word	tx2
	.word	rhs
	.word	25000
	.word	u
.L296:
	ldr	r0, .L398+32
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #-124]
	add	r0, r3, #1
	ldr	ip, .L398+32
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-124]
	sub	r0, r3, #1
	ldr	ip, .L398+32
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	ip, .L398+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L398+76
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	ldr	ip, .L398+80
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L398+76
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	ip, .L398+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L398+76
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	sub	r3, r3, #1
	ldr	ip, .L398+80
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L398+76
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L398+36
	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, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-124]
	sub	ip, r3, #1
	ldr	r6, .L398+80
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L398+76
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r6, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L398+68
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L398+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L398+76
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	ip, .L398+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r6-r7}
	ldr	ip, .L398+80
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L398+40
	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, .L398+64
	ldmia	r3, {r0-r1}
	ldr	r3, .L398+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	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_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	add	r0, r3, #1
	ldr	ip, .L398+48
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-124]
	sub	r0, r3, #1
	ldr	ip, .L398+48
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L398+52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L398+68
	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	r4, .L398+72
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L398+76
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	ip, .L398+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r6-r7}
	ldr	ip, .L398+80
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L398+56
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r0, r3, #1
	ldr	ip, .L398+60
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r0, .L398+60
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r3, [fp, #-124]
	sub	r0, r3, #1
	ldr	ip, .L398+60
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L398+64
	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	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	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	r3, .L398+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r4, .L398+72
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L398+76
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	ip, .L398+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L398+76
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L398+80
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r6-r7}
	ldr	ip, .L400+84
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L400+84
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L400+4
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r0, r3, #1
	ldr	ip, .L400+8
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r0, .L400+8
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r3, [fp, #-124]
	sub	r0, r3, #1
	ldr	ip, .L400+8
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L400+12
	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	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L400+84
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L400+84
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	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	r3, .L400+16
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r4, .L400+80
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L400
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	ip, .L400+80
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L400+84
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r6-r7}
	ldr	ip, .L400+84
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L400+84
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L400+20
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r0, r3, #1
	ldr	ip, .L400+24
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r0, .L400+24
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r3, [fp, #-124]
	sub	r0, r3, #1
	ldr	ip, .L400+24
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L400+28
	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	r4, r2
	mov	r5, r3
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #60
	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	r6, r2
	mov	r7, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	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	r3, .L400+32
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L400+84
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	add	r0, r3, #1
	ldr	ip, .L400+36
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L400+84
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r0, .L400+36
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r8
	mov	r1, r9
	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	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L400+84
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	sub	r0, r3, #1
	ldr	ip, .L400+36
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L400+40
	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	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-124]
	add	r1, r3, #1
	ldr	ip, .L400+84
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L400+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r0, r3, #1
	ldr	ip, .L400+48
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L400+52
	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
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	sub	r1, r3, #1
	ldr	ip, .L400+84
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L400
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L400+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-124]
	sub	r0, r3, #1
	ldr	ip, .L400+48
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L400+52
	ldmia	r3, {r2-r3}
	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	r0, r2
	mov	r1, r3
	sub	r3, fp, #44
	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	r3, .L400+16
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r4, .L400+80
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L400
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L295:
	ldr	r3, .L400+76
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L296
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L294:
	ldr	r3, .L400+76
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L297
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L298
.L303:
	mov	r3, #1
	str	r3, [fp, #-124]
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L299
.L401:
	.align	2
.L400:
	.word	25000
	.word	dx4tx1
	.word	ws
	.word	xxcon2
	.word	tx2
	.word	dx5tx1
	.word	qs
	.word	xxcon3
	.word	xxcon4
	.word	rho_i
	.word	xxcon5
	.word	c1
	.word	square
	.word	c2
	.word	1075052544
	.word	-1072693248
	.word	1075314688
	.word	1074790400
	.word	dssp
	.word	grid_points
	.word	rhs
	.word	u
.L300:
	ldr	ip, .L400+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	ip, .L400+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+56
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+68
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r3, r3, #2
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L400+72
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L400+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L299:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L300
	mov	r3, #2
	str	r3, [fp, #-124]
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L301
.L302:
	ldr	ip, .L400+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	sub	r3, r3, #1
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+60
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L400+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+64
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+68
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r3, r3, #2
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L400+72
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L400+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L301:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L302
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L298:
	ldr	r3, .L400+76
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L303
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L304
.L309:
	mov	r3, #3
	str	r3, [fp, #-124]
	b	.L305
.L308:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L306
.L307:
	ldr	ip, .L400+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	sub	r3, r3, #2
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-124]
	sub	r3, r3, #1
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+68
	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	r6, r2
	mov	r7, r3
	ldr	ip, .L400+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+64
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+68
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r3, r3, #2
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L400+72
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L400+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L306:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L307
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L305:
	ldr	r3, .L400+76
	ldr	r3, [r3]
	sub	r3, r3, #3
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L308
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L304:
	ldr	r3, .L400+76
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L309
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L310
.L315:
	ldr	r3, .L400+76
	ldr	r3, [r3]
	sub	r3, r3, #3
	str	r3, [fp, #-124]
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L311
.L312:
	ldr	ip, .L400+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	sub	r3, r3, #2
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-124]
	sub	r3, r3, #1
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+68
	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	r6, r2
	mov	r7, r3
	ldr	ip, .L400+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+64
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L400+68
	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	r3, .L400+72
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L400+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L311:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L312
	ldr	r3, .L400+76
	ldr	r3, [r3]
	sub	r3, r3, #2
	str	r3, [fp, #-124]
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L313
.L314:
	ldr	ip, .L400+80
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-124]
	sub	r3, r3, #2
	ldr	ip, .L400+84
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-124]
	sub	r3, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L402
	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	r6, r2
	mov	r7, r3
	ldr	ip, .L402+68
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L402+4
	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	r3, .L402+8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L402+60
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L313:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L314
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L310:
	ldr	r3, .L402+12
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L315
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L293:
	ldr	r3, .L402+12
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	blt	.L316
	ldr	r3, .L402+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L317
	mov	r0, #2
	bl	timer_stop
.L317:
	ldr	r3, .L402+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L318
	mov	r0, #3
	bl	timer_start
.L318:
	mov	r3, #1
	str	r3, [fp, #-116]
	b	.L319
.L346:
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L320
.L323:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L321
.L403:
	.align	2
.L402:
	.word	1074790400
	.word	1075052544
	.word	dssp
	.word	grid_points
	.word	timeron
	.word	vs
	.word	dy1ty1
	.word	dy2ty1
	.word	us
	.word	dy3ty1
	.word	yycon2
	.word	con43
	.word	square
	.word	c2
	.word	ty2
	.word	rhs
	.word	25000
	.word	u
.L322:
	ldr	r0, .L402+20
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-84]
	str	r3, [fp, #-80]
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	ldr	r0, .L402+20
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-76]
	str	r3, [fp, #-72]
	ldr	r3, [fp, #-120]
	sub	r3, r3, #1
	ldr	r0, .L402+20
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-68]
	str	r3, [fp, #-64]
	ldr	ip, .L402+60
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L402+64
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	add	r1, r3, #1
	ldr	ip, .L402+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L402+64
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	ip, .L402+68
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L402+64
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	sub	r1, r3, #1
	ldr	ip, .L402+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L402+64
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L402+24
	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, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	r6, .L402+68
	ldr	ip, [fp, #-124]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L402+64
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r6, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L402+56
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L402+60
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L402+64
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	ip, .L402+60
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r6-r7}
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L402+28
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	ldr	r0, .L402+32
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r4-r5}
	ldr	r0, .L402+32
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r3, [fp, #-120]
	sub	r3, r3, #1
	ldr	r0, .L402+32
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L402+40
	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	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #68
	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	r3, .L402+56
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r4, .L402+60
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L402+64
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	ip, .L402+60
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r6-r7}
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L402+36
	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, .L402+40
	ldmia	r3, {r0-r1}
	ldr	r3, .L402+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r1, fp, #84
	ldmia	r1, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #76
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #68
	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
	mov	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	ldr	r0, .L402+48
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-120]
	sub	r3, r3, #1
	ldr	r0, .L402+48
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L402+52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L402+56
	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	r4, .L402+60
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L402+64
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	ip, .L402+60
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L402+64
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L402+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r6-r7}
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L404+4
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	ldr	r0, .L404+8
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r4-r5}
	ldr	r0, .L404+8
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r3, [fp, #-120]
	sub	r3, r3, #1
	ldr	r0, .L404+8
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L404+12
	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	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #68
	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	r3, .L404+16
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r4, .L404+84
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L404
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	ip, .L404+84
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r6-r7}
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L404+20
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	ldr	r0, .L404+24
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r4-r5}
	ldr	r0, .L404+24
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r3, [fp, #-120]
	sub	r3, r3, #1
	ldr	r0, .L404+24
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L404+28
	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	r4, r2
	mov	r5, r3
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	sub	r1, fp, #76
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r1, fp, #84
	ldmia	r1, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #84
	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	r6, r2
	mov	r7, r3
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	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	r3, .L404+32
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	ldr	r0, .L404+36
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r0, .L404+36
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r8
	mov	r1, r9
	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	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	sub	r3, r3, #1
	ldr	r0, .L404+36
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L404+40
	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	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-120]
	add	r2, r3, #1
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L404+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	ldr	r0, .L404+48
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L404+52
	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
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	sub	r2, r3, #1
	ldr	ip, .L404+68
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L404
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L404+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-120]
	sub	r3, r3, #1
	ldr	r0, .L404+48
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L404+52
	ldmia	r3, {r2-r3}
	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	r0, r2
	mov	r1, r3
	sub	r3, fp, #68
	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	r3, .L404+16
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r4, .L404+84
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L404
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L321:
	ldr	r3, .L404+80
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L322
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L320:
	ldr	r3, .L404+80
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L323
	mov	r3, #1
	str	r3, [fp, #-120]
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L324
.L327:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L325
.L405:
	.align	2
.L404:
	.word	25000
	.word	dy4ty1
	.word	ws
	.word	yycon2
	.word	ty2
	.word	dy5ty1
	.word	qs
	.word	yycon3
	.word	yycon4
	.word	rho_i
	.word	yycon5
	.word	c1
	.word	square
	.word	c2
	.word	1075052544
	.word	-1072693248
	.word	1075314688
	.word	u
	.word	1074790400
	.word	dssp
	.word	grid_points
	.word	rhs
.L326:
	ldr	ip, .L404+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+56
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r1, r3, #1
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+72
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r1, r3, #2
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L404+76
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L404+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L325:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L326
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L324:
	ldr	r3, .L404+80
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L327
	mov	r3, #2
	str	r3, [fp, #-120]
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L328
.L331:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L329
.L330:
	ldr	ip, .L404+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	sub	r1, r3, #1
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+60
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+64
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r1, r3, #1
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+72
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r1, r3, #2
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L404+76
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L404+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L329:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L330
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L328:
	ldr	r3, .L404+80
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L331
	mov	r3, #3
	str	r3, [fp, #-120]
	b	.L332
.L337:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L333
.L336:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L334
.L335:
	ldr	ip, .L404+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	sub	r1, r3, #2
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-120]
	sub	r1, r3, #1
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+72
	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	r6, r2
	mov	r7, r3
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+64
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r1, r3, #1
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+72
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r1, r3, #2
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L404+76
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L404+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L334:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L335
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L333:
	ldr	r3, .L404+80
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L336
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L332:
	ldr	r3, .L404+80
	ldr	r3, [r3, #4]
	sub	r3, r3, #3
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L337
	ldr	r3, .L404+80
	ldr	r3, [r3, #4]
	sub	r3, r3, #3
	str	r3, [fp, #-120]
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L338
.L341:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L339
.L340:
	ldr	ip, .L404+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	sub	r1, r3, #2
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-120]
	sub	r1, r3, #1
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+72
	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	r6, r2
	mov	r7, r3
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+64
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-120]
	add	r1, r3, #1
	ldr	ip, .L404+68
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L404+72
	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	r3, .L404+76
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L404+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L339:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L340
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L338:
	ldr	r3, .L404+80
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L341
	ldr	r3, .L404+80
	ldr	r3, [r3, #4]
	sub	r3, r3, #2
	str	r3, [fp, #-120]
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L342
.L345:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L343
.L344:
	ldr	ip, .L404+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-120]
	sub	r1, r3, #2
	ldr	ip, .L406+56
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-120]
	sub	r1, r3, #1
	ldr	ip, .L406+56
	ldr	r3, [fp, #-124]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L406
	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	r6, r2
	mov	r7, r3
	ldr	ip, .L406+56
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L406+4
	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	r3, .L406+8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L406+52
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L343:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L344
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L342:
	ldr	r3, .L406+12
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L345
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L319:
	ldr	r3, .L406+12
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	blt	.L346
	ldr	r3, .L406+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L347
	mov	r0, #3
	bl	timer_stop
.L347:
	ldr	r3, .L406+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L348
	mov	r0, #4
	bl	timer_start
.L348:
	mov	r3, #1
	str	r3, [fp, #-116]
	b	.L349
.L354:
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L350
.L353:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L351
.L407:
	.align	2
.L406:
	.word	1074790400
	.word	1075052544
	.word	dssp
	.word	grid_points
	.word	timeron
	.word	ws
	.word	dz1tz1
	.word	dz2tz1
	.word	us
	.word	dz3tz1
	.word	vs
	.word	zzcon2
	.word	tz2
	.word	rhs
	.word	u
	.word	25000
.L352:
	ldr	r0, .L406+20
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-108]
	str	r3, [fp, #-104]
	ldr	r3, [fp, #-116]
	add	r1, r3, #1
	ldr	r0, .L406+20
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-100]
	str	r3, [fp, #-96]
	ldr	r3, [fp, #-116]
	sub	r1, r3, #1
	ldr	r0, .L406+20
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-92]
	str	r3, [fp, #-88]
	ldr	ip, .L406+52
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L406+60
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L406+60
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	ip, .L406+56
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L406+60
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L406+60
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L406+24
	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, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-116]
	sub	lr, r3, #1
	ldr	r6, .L406+56
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L406+60
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r6, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L406+48
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L406+52
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L406+60
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	ip, .L406+52
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r6-r7}
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L406+28
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r1, r3, #1
	ldr	r0, .L406+32
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r4-r5}
	ldr	r0, .L406+32
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r3, [fp, #-116]
	sub	r1, r3, #1
	ldr	r0, .L406+32
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L406+44
	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	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #100
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #92
	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	r3, .L406+48
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r4, .L406+52
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L406+60
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	ip, .L406+52
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r6-r7}
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L406+36
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r1, r3, #1
	ldr	r0, .L406+40
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r4-r5}
	ldr	r0, .L406+40
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r3, [fp, #-116]
	sub	r1, r3, #1
	ldr	r0, .L406+40
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L406+44
	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	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #100
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #92
	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	r3, .L406+48
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r4, .L406+52
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L406+60
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	ip, .L406+52
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r6-r7}
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L406+56
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L406+60
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L408
	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, .L408+4
	ldmia	r3, {r0-r1}
	ldr	r3, .L408+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #100
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #92
	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
	mov	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	add	r1, r3, #1
	ldr	r0, .L408+16
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-116]
	sub	r1, r3, #1
	ldr	r0, .L408+16
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L408+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L408+24
	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	r4, .L408+84
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L408+12
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	ip, .L408+84
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r6-r7}
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L408+28
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r1, r3, #1
	ldr	r0, .L408+32
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r4-r5}
	ldr	r0, .L408+32
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	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	r3, [fp, #-116]
	sub	r1, r3, #1
	ldr	r0, .L408+32
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L408+36
	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	r4, r2
	mov	r5, r3
	sub	r3, fp, #100
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #108
	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	r6, r2
	mov	r7, r3
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	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	r3, .L408+40
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	add	r1, r3, #1
	ldr	r0, .L408+44
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r0, .L408+44
	ldr	r3, [fp, #-120]
	ldr	r1, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	mov	r0, r8
	mov	r1, r9
	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	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	sub	r1, r3, #1
	ldr	r0, .L408+44
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r2-r3}
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L408+48
	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	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L408+52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r1, r3, #1
	ldr	r0, .L408+16
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L408+20
	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
	sub	r3, fp, #100
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r1, [fp, #-124]
	ldr	r2, [fp, #-120]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	ldr	r1, .L408+12
	mul	r1, r0, r1
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L408+52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-116]
	sub	r1, r3, #1
	ldr	r0, .L408+16
	ldr	r3, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-124]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L408+20
	ldmia	r3, {r2-r3}
	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	r0, r2
	mov	r1, r3
	sub	r3, fp, #92
	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	r3, .L408+24
	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
	mov	r0, r2
	mov	r1, r3
	ldr	r4, .L408+84
	ldr	ip, [fp, #-124]
	ldr	r2, [fp, #-120]
	ldr	lr, [fp, #-116]
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	ldr	ip, .L408+12
	mul	ip, lr, ip
	add	ip, r3, ip
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r4, r3
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L351:
	ldr	r3, .L408+64
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L352
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L350:
	ldr	r3, .L408+64
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L353
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L349:
	ldr	r3, .L408+64
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	blt	.L354
	mov	r3, #1
	str	r3, [fp, #-116]
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L355
.L360:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L356
.L359:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L357
.L409:
	.align	2
.L408:
	.word	dz4tz1
	.word	zzcon2
	.word	con43
	.word	25000
	.word	square
	.word	c2
	.word	tz2
	.word	dz5tz1
	.word	qs
	.word	zzcon3
	.word	zzcon4
	.word	rho_i
	.word	zzcon5
	.word	c1
	.word	1075052544
	.word	-1072693248
	.word	grid_points
	.word	1075314688
	.word	u
	.word	1074790400
	.word	dssp
	.word	rhs
.L358:
	ldr	ip, .L408+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+56
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+76
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #2
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L408+80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L408+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L357:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L358
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L356:
	ldr	r3, .L408+64
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L359
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L355:
	ldr	r3, .L408+64
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L360
	mov	r3, #2
	str	r3, [fp, #-116]
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L361
.L366:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L362
.L365:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L363
.L364:
	ldr	ip, .L408+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+60
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+68
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+76
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #2
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L408+80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L408+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L363:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L364
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L362:
	ldr	r3, .L408+64
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L365
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L361:
	ldr	r3, .L408+64
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L366
	mov	r3, #3
	str	r3, [fp, #-116]
	b	.L367
.L374:
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L368
.L373:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L369
.L372:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L370
.L371:
	ldr	ip, .L408+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	sub	r0, r3, #2
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+76
	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	r6, r2
	mov	r7, r3
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+68
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+76
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #2
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L408+80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L408+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L370:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L371
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L369:
	ldr	r3, .L408+64
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L372
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L368:
	ldr	r3, .L408+64
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L373
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L367:
	ldr	r3, .L408+64
	ldr	r3, [r3, #8]
	sub	r3, r3, #3
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	blt	.L374
	ldr	r3, .L408+64
	ldr	r3, [r3, #8]
	sub	r3, r3, #3
	str	r3, [fp, #-116]
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L375
.L380:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L376
.L379:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L377
.L378:
	ldr	ip, .L408+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	sub	r0, r3, #2
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+76
	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	r6, r2
	mov	r7, r3
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+68
	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	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-116]
	add	r0, r3, #1
	ldr	ip, .L408+72
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L408+76
	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	r3, .L408+80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L408+84
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L377:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L378
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L376:
	ldr	r3, .L410
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L379
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L375:
	ldr	r3, .L410
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L380
	ldr	r3, .L410
	ldr	r3, [r3, #8]
	sub	r3, r3, #2
	str	r3, [fp, #-116]
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L381
.L386:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L382
.L385:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L383
.L384:
	ldr	ip, .L410+4
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-116]
	sub	r0, r3, #2
	ldr	ip, .L410+8
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-116]
	sub	r0, r3, #1
	ldr	ip, .L410+8
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L410+12
	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	r6, r2
	mov	r7, r3
	ldr	ip, .L410+8
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L410+16
	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	r3, .L410+20
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L410+4
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L383:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L384
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L382:
	ldr	r3, .L410
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L385
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L381:
	ldr	r3, .L410
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L386
	ldr	r3, .L410+24
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L387
	mov	r0, #4
	bl	timer_stop
.L387:
	mov	r3, #1
	str	r3, [fp, #-116]
	b	.L388
.L395:
	mov	r3, #1
	str	r3, [fp, #-120]
	b	.L389
.L394:
	mov	r3, #1
	str	r3, [fp, #-124]
	b	.L390
.L393:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L391
.L392:
	ldr	ip, .L410+4
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L410+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L410+4
	ldr	r3, [fp, #-124]
	ldr	r1, [fp, #-120]
	ldr	r0, [fp, #-116]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L391:
	ldr	r3, [fp, #-112]
	cmp	r3, #4
	ble	.L392
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L390:
	ldr	r3, .L410
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, [fp, #-124]
	cmp	r2, r3
	blt	.L393
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L389:
	ldr	r3, .L410
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	blt	.L394
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L388:
	ldr	r3, .L410
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	blt	.L395
	ldr	r3, .L410+24
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L397
	mov	r0, #5
	bl	timer_stop
.L397:
	nop
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L411:
	.align	2
.L410:
	.word	grid_points
	.word	rhs
	.word	u
	.word	1074790400
	.word	1075052544
	.word	dssp
	.word	timeron
	.word	dt
	.size	compute_rhs, .-compute_rhs
	.global	__aeabi_dcmpgt
	.global	__aeabi_dcmplt
	.align	2
	.global	set_constants
	.syntax unified
	.arm
	.fpu softvfp
	.type	set_constants, %function
set_constants:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #1073741824
	stm	r1, {r2-r3}
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+208
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+216
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+4
	str	r2, [r1, #40]
	str	r3, [r1, #44]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+8
	str	r2, [r1, #48]
	str	r3, [r1, #52]
	ldr	r1, .L443
	ldr	r2, .L443+12
	ldr	r3, .L443+16
	str	r2, [r1, #56]
	str	r3, [r1, #60]
	ldr	r1, .L443
	ldr	r2, .L443+12
	ldr	r3, .L443+20
	str	r2, [r1, #64]
	str	r3, [r1, #68]
	ldr	r1, .L443
	ldr	r2, .L443+24
	ldr	r3, .L443+28
	str	r2, [r1, #72]
	str	r3, [r1, #76]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+8
	str	r2, [r1, #80]
	str	r3, [r1, #84]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+36
	str	r2, [r1, #88]
	str	r3, [r1, #92]
	ldr	r1, .L443
	ldr	r2, .L443+40
	ldr	r3, .L443+44
	str	r2, [r1, #96]
	str	r3, [r1, #100]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+48
	str	r2, [r1, #104]
	str	r3, [r1, #108]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #112]
	str	r3, [r1, #116]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #120]
	str	r3, [r1, #124]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #128]
	str	r3, [r1, #132]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+48
	str	r2, [r1, #136]
	str	r3, [r1, #140]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #1073741824
	str	r2, [r1, #144]
	str	r3, [r1, #148]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+4
	str	r2, [r1, #152]
	str	r3, [r1, #156]
	ldr	r1, .L443
	ldr	r2, .L443+12
	ldr	r3, .L443+20
	str	r2, [r1, #160]
	str	r3, [r1, #164]
	ldr	r1, .L443
	ldr	r2, .L443+24
	ldr	r3, .L443+28
	str	r2, [r1, #168]
	str	r3, [r1, #172]
	ldr	r1, .L443
	ldr	r2, .L443+12
	ldr	r3, .L443+16
	str	r2, [r1, #176]
	str	r3, [r1, #180]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+36
	str	r2, [r1, #184]
	str	r3, [r1, #188]
	ldr	r1, .L443
	ldr	r2, .L443+40
	ldr	r3, .L443+44
	str	r2, [r1, #192]
	str	r3, [r1, #196]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+8
	str	r2, [r1, #200]
	str	r3, [r1, #204]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #1073741824
	str	r2, [r1, #208]
	str	r3, [r1, #212]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #1073741824
	str	r2, [r1, #216]
	str	r3, [r1, #220]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #224]
	str	r3, [r1, #228]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #232]
	str	r3, [r1, #236]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #240]
	str	r3, [r1, #244]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #1073741824
	str	r2, [r1, #248]
	str	r3, [r1, #252]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+4
	str	r2, [r1, #256]
	str	r3, [r1, #260]
	ldr	r1, .L443
	ldr	r2, .L443+12
	ldr	r3, .L443+52
	str	r2, [r1, #264]
	str	r3, [r1, #268]
	ldr	r1, .L443
	ldr	r2, .L443+24
	ldr	r3, .L443+28
	str	r2, [r1, #272]
	str	r3, [r1, #276]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+56
	str	r2, [r1, #280]
	str	r3, [r1, #284]
	ldr	r1, .L443
	ldr	r2, .L443+40
	ldr	r3, .L443+44
	str	r2, [r1, #288]
	str	r3, [r1, #292]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+8
	str	r2, [r1, #296]
	str	r3, [r1, #300]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+36
	str	r2, [r1, #304]
	str	r3, [r1, #308]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #1073741824
	str	r2, [r1, #312]
	str	r3, [r1, #316]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #1073741824
	str	r2, [r1, #320]
	str	r3, [r1, #324]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #328]
	str	r3, [r1, #332]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #336]
	str	r3, [r1, #340]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #344]
	str	r3, [r1, #348]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #1073741824
	str	r2, [r1, #352]
	str	r3, [r1, #356]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+4
	str	r2, [r1, #360]
	str	r3, [r1, #364]
	ldr	r1, .L443
	ldr	r2, .L443+24
	ldr	r3, .L443+28
	str	r2, [r1, #368]
	str	r3, [r1, #372]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+56
	str	r2, [r1, #376]
	str	r3, [r1, #380]
	ldr	r1, .L443
	ldr	r2, .L443+12
	ldr	r3, .L443+52
	str	r2, [r1, #384]
	str	r3, [r1, #388]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+60
	str	r2, [r1, #392]
	str	r3, [r1, #396]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+64
	str	r2, [r1, #400]
	str	r3, [r1, #404]
	ldr	r1, .L443
	ldr	r2, .L443+40
	ldr	r3, .L443+44
	str	r2, [r1, #408]
	str	r3, [r1, #412]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+216
	str	r2, [r1, #416]
	str	r3, [r1, #420]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+208
	str	r2, [r1, #424]
	str	r3, [r1, #428]
	ldr	r1, .L443
	mov	r2, #0
	ldr	r3, .L443+4
	str	r2, [r1, #432]
	str	r3, [r1, #436]
	ldr	r1, .L443
	mov	r2, #0
	mov	r3, #1073741824
	str	r2, [r1, #440]
	str	r3, [r1, #444]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+64
	str	r2, [r1, #448]
	str	r3, [r1, #452]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+36
	str	r2, [r1, #456]
	str	r3, [r1, #460]
	ldr	r1, .L443
	ldr	r2, .L443+40
	ldr	r3, .L443+44
	str	r2, [r1, #464]
	str	r3, [r1, #468]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+56
	str	r2, [r1, #472]
	str	r3, [r1, #476]
	ldr	r1, .L443
	ldr	r2, .L443+12
	ldr	r3, .L443+52
	str	r2, [r1, #480]
	str	r3, [r1, #484]
	ldr	r1, .L443
	ldr	r2, .L443+24
	ldr	r3, .L443+28
	str	r2, [r1, #488]
	str	r3, [r1, #492]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+64
	str	r2, [r1, #496]
	str	r3, [r1, #500]
	ldr	r1, .L443
	ldr	r2, .L443+40
	ldr	r3, .L443+44
	str	r2, [r1, #504]
	str	r3, [r1, #508]
	ldr	r1, .L443
	ldr	r2, .L443+32
	ldr	r3, .L443+60
	str	r2, [r1, #512]
	str	r3, [r1, #516]
	ldr	r1, .L443+68
	ldr	r2, .L443+72
	ldr	r3, .L443+76
	stm	r1, {r2-r3}
	ldr	r1, .L443+80
	ldr	r2, .L443+32
	ldr	r3, .L443+36
	stm	r1, {r2-r3}
	ldr	r1, .L443+84
	ldr	r2, .L443+32
	ldr	r3, .L443+64
	stm	r1, {r2-r3}
	ldr	r1, .L443+88
	mov	r2, #0
	ldr	r3, .L443+48
	stm	r1, {r2-r3}
	ldr	r1, .L443+92
	ldr	r2, .L443+72
	ldr	r3, .L443+76
	stm	r1, {r2-r3}
	ldr	r3, .L443+96
	ldr	r3, [r3]
	sub	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+100
	stm	r1, {r2-r3}
	ldr	r3, .L443+96
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+104
	stm	r1, {r2-r3}
	ldr	r3, .L443+96
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+108
	stm	r1, {r2-r3}
	ldr	r3, .L443+68
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+80
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+112
	stm	r1, {r2-r3}
	ldr	r3, .L443+68
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+92
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+480
	stm	r1, {r2-r3}
	ldr	r3, .L443+84
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+88
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+236
	stm	r1, {r2-r3}
	ldr	r3, .L443+480
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+236
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+116
	stm	r1, {r2-r3}
	ldr	r3, .L443+480
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+460
	stm	r1, {r2-r3}
	ldr	r3, .L443+100
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+100
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+276
	stm	r1, {r2-r3}
	ldr	r3, .L443+100
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+148
	stm	r1, {r2-r3}
	ldr	r3, .L443+100
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+412
	stm	r1, {r2-r3}
	ldr	r3, .L443+104
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+104
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+320
	stm	r1, {r2-r3}
	ldr	r3, .L443+104
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+156
	stm	r1, {r2-r3}
	ldr	r3, .L443+104
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+440
	stm	r1, {r2-r3}
	ldr	r3, .L443+108
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+108
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+364
	stm	r1, {r2-r3}
	ldr	r3, .L443+108
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+164
	stm	r1, {r2-r3}
	ldr	r3, .L443+108
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L443+48
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+484
	stm	r1, {r2-r3}
	ldr	r1, .L443+240
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+248
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+256
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+264
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+272
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+284
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+292
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+300
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+308
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+316
	mov	r2, #0
	ldr	r3, .L443+120
	stm	r1, {r2-r3}
	ldr	r1, .L443+328
	mov	r2, #0
	ldr	r3, .L443+48
	stm	r1, {r2-r3}
	ldr	r1, .L443+336
	mov	r2, #0
	ldr	r3, .L443+48
	stm	r1, {r2-r3}
	ldr	r1, .L443+344
	mov	r2, #0
	ldr	r3, .L443+48
	stm	r1, {r2-r3}
	ldr	r1, .L443+352
	mov	r2, #0
	ldr	r3, .L443+48
	stm	r1, {r2-r3}
	ldr	r1, .L443+360
	mov	r2, #0
	ldr	r3, .L443+48
	stm	r1, {r2-r3}
	ldr	r3, .L443+256
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+264
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L437
	ldr	r3, .L443+256
	ldmia	r3, {r2-r3}
	b	.L415
.L437:
	ldr	r3, .L443+264
	ldmia	r3, {r2-r3}
.L415:
	ldr	r1, .L443+124
	stm	r1, {r2-r3}
	ldr	r3, .L443+292
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+308
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L438
	ldr	r3, .L443+292
	ldmia	r3, {r2-r3}
	b	.L418
.L438:
	ldr	r3, .L443+308
	ldmia	r3, {r2-r3}
.L418:
	ldr	r1, .L443+128
	stm	r1, {r2-r3}
	ldr	r3, .L443+336
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+344
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L439
	ldr	r3, .L443+336
	ldmia	r3, {r2-r3}
	b	.L421
.L439:
	ldr	r3, .L443+344
	ldmia	r3, {r2-r3}
.L421:
	ldr	r1, .L443+132
	stm	r1, {r2-r3}
	ldr	r3, .L443+284
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+328
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L440
	ldr	r3, .L443+284
	ldmia	r3, {r0-r1}
	b	.L424
.L440:
	ldr	r3, .L443+328
	ldmia	r3, {r0-r1}
.L424:
	ldr	r3, .L443+240
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L441
	ldr	r3, .L443+240
	ldmia	r3, {r0-r1}
	b	.L427
.L441:
	ldr	r3, .L443+284
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+328
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L442
	ldr	r3, .L443+284
	ldmia	r3, {r0-r1}
	b	.L427
.L444:
	.align	2
.L443:
	.word	ce
	.word	1074266112
	.word	1071644672
	.word	1202590843
	.word	1066695393
	.word	1065646817
	.word	-343597384
	.word	1067366481
	.word	-1717986918
	.word	1071225241
	.word	858993459
	.word	1070805811
	.word	1072693248
	.word	1067743969
	.word	1068079513
	.word	1070176665
	.word	1069128089
	.word	c1
	.word	1717986918
	.word	1073112678
	.word	c2
	.word	c3
	.word	c4
	.word	c5
	.word	grid_points
	.word	dnxm1
	.word	dnym1
	.word	dnzm1
	.word	c1c2
	.word	c1345
	.word	1072168960
	.word	dxmax
	.word	dymax
	.word	dzmax
	.word	1070596096
	.word	c4dssp
	.word	c5dssp
	.word	tx2
	.word	dttx2
	.word	ty2
	.word	dtty2
	.word	tz2
	.word	dttz2
	.word	dttx1
	.word	c2dttx1
	.word	dtty1
	.word	c2dtty1
	.word	dttz1
	.word	c2dttz1
	.word	dt
	.word	dssp
	.word	comz1
	.word	1074790400
	.word	comz4
	.word	1075052544
	.word	comz5
	.word	dtdssp
	.word	1075314688
	.word	comz6
	.word	c3c4
	.word	dx1
	.word	dx1tx1
	.word	dx2
	.word	dx2tx1
	.word	dx3
	.word	dx3tx1
	.word	dx4
	.word	dx4tx1
	.word	dx5
	.word	tx1
	.word	dx5tx1
	.word	dy1
	.word	dy1ty1
	.word	dy2
	.word	dy2ty1
	.word	dy3
	.word	dy3ty1
	.word	dy4
	.word	dy4ty1
	.word	dy5
	.word	ty1
	.word	dy5ty1
	.word	dz1
	.word	dz1tz1
	.word	dz2
	.word	dz2tz1
	.word	dz3
	.word	dz3tz1
	.word	dz4
	.word	dz4tz1
	.word	dz5
	.word	tz1
	.word	dz5tz1
	.word	c2iv
	.word	1074003968
	.word	1073042773
	.word	1431655765
	.word	1069897045
	.word	xxcon1
	.word	xxcon2
	.word	xxcon3
	.word	xxcon4
	.word	c3c4tx3
	.word	tx3
	.word	xxcon5
	.word	yycon1
	.word	yycon2
	.word	yycon3
	.word	yycon4
	.word	c3c4ty3
	.word	ty3
	.word	yycon5
	.word	con43
	.word	zzcon1
	.word	zzcon2
	.word	conz1
	.word	zzcon3
	.word	con16
	.word	zzcon4
	.word	c3c4tz3
	.word	c1c5
	.word	tz3
	.word	zzcon5
.L442:
	ldr	r3, .L443+328
	ldmia	r3, {r0-r1}
.L427:
	mov	r2, #0
	ldr	r3, .L443+136
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+200
	stm	r1, {r2-r3}
	ldr	r3, .L443+200
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L443+208
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+140
	stm	r1, {r2-r3}
	ldr	r3, .L443+200
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L443+216
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+144
	stm	r1, {r2-r3}
	ldr	r3, .L443+196
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+276
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+172
	stm	r1, {r2-r3}
	ldr	r3, .L443+196
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+148
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+152
	stm	r1, {r2-r3}
	ldr	r3, .L443+196
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+320
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+180
	stm	r1, {r2-r3}
	ldr	r3, .L443+196
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+156
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+160
	stm	r1, {r2-r3}
	ldr	r3, .L443+196
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+364
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+188
	stm	r1, {r2-r3}
	ldr	r3, .L443+196
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+164
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+168
	stm	r1, {r2-r3}
	ldr	r3, .L443+172
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+176
	stm	r1, {r2-r3}
	ldr	r3, .L443+180
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+184
	stm	r1, {r2-r3}
	ldr	r3, .L443+188
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+192
	stm	r1, {r2-r3}
	ldr	r3, .L443+196
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+200
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+224
	stm	r1, {r2-r3}
	ldr	r3, .L443+224
	ldmia	r3, {r2-r3}
	ldr	r1, .L443+204
	stm	r1, {r2-r3}
	ldr	r3, .L443+224
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L443+208
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+212
	stm	r1, {r2-r3}
	ldr	r3, .L443+224
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L443+216
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+220
	stm	r1, {r2-r3}
	ldr	r3, .L443+224
	ldmia	r3, {r0-r1}
	mov	r2, #0
	ldr	r3, .L443+228
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+232
	stm	r1, {r2-r3}
	ldr	r3, .L443+236
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+412
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+408
	stm	r1, {r2-r3}
	ldr	r3, .L443+236
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+440
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+436
	stm	r1, {r2-r3}
	ldr	r3, .L443+236
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+484
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+476
	stm	r1, {r2-r3}
	ldr	r3, .L443+240
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+276
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+244
	stm	r1, {r2-r3}
	ldr	r3, .L443+248
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+276
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+252
	stm	r1, {r2-r3}
	ldr	r3, .L443+256
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+276
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+260
	stm	r1, {r2-r3}
	ldr	r3, .L443+264
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+276
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+268
	stm	r1, {r2-r3}
	ldr	r3, .L443+272
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+276
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+280
	stm	r1, {r2-r3}
	ldr	r3, .L443+284
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+320
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+288
	stm	r1, {r2-r3}
	ldr	r3, .L443+292
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+320
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+296
	stm	r1, {r2-r3}
	ldr	r3, .L443+300
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+320
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+304
	stm	r1, {r2-r3}
	ldr	r3, .L443+308
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+320
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+312
	stm	r1, {r2-r3}
	ldr	r3, .L443+316
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+320
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+324
	stm	r1, {r2-r3}
	ldr	r3, .L443+328
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+364
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+332
	stm	r1, {r2-r3}
	ldr	r3, .L443+336
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+364
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+340
	stm	r1, {r2-r3}
	ldr	r3, .L443+344
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+364
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+348
	stm	r1, {r2-r3}
	ldr	r3, .L443+352
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+364
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+356
	stm	r1, {r2-r3}
	ldr	r3, .L443+360
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+364
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+368
	stm	r1, {r2-r3}
	ldr	r1, .L443+372
	mov	r2, #0
	ldr	r3, .L443+376
	stm	r1, {r2-r3}
	ldr	r1, .L443+448
	ldr	r2, .L443+384
	ldr	r3, .L443+380
	stm	r1, {r2-r3}
	ldr	r1, .L443+468
	ldr	r2, .L443+384
	ldr	r3, .L443+388
	stm	r1, {r2-r3}
	ldr	r3, .L443+408
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+448
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+412
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+392
	stm	r1, {r2-r3}
	ldr	r3, .L443+408
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+412
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+396
	stm	r1, {r2-r3}
	ldr	r3, .L443+408
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+460
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+412
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+400
	stm	r1, {r2-r3}
	ldr	r3, .L443+408
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+468
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+412
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+404
	stm	r1, {r2-r3}
	ldr	r3, .L443+408
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+480
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+412
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+416
	stm	r1, {r2-r3}
	ldr	r3, .L443+436
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+448
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+440
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+420
	stm	r1, {r2-r3}
	ldr	r3, .L443+436
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+440
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+424
	stm	r1, {r2-r3}
	ldr	r3, .L443+436
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+460
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+440
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+428
	stm	r1, {r2-r3}
	ldr	r3, .L443+436
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+468
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+440
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+432
	stm	r1, {r2-r3}
	ldr	r3, .L443+436
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+480
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+440
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+444
	stm	r1, {r2-r3}
	ldr	r3, .L443+476
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+448
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+484
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+452
	stm	r1, {r2-r3}
	ldr	r3, .L443+476
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+484
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+456
	stm	r1, {r2-r3}
	ldr	r3, .L443+476
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+460
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+484
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+464
	stm	r1, {r2-r3}
	ldr	r3, .L443+476
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+468
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+484
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+472
	stm	r1, {r2-r3}
	ldr	r3, .L443+476
	ldmia	r3, {r0-r1}
	ldr	r3, .L443+480
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L443+484
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L443+488
	stm	r1, {r2-r3}
	nop
	pop	{fp, pc}
	.size	set_constants, .-set_constants
	.align	2
	.global	matvec_sub
	.syntax unified
	.arm
	.fpu softvfp
	.type	matvec_sub, %function
matvec_sub:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #16
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	ldr	r3, [fp, #-32]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	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, [fp, #-32]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #8
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #16
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #24
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #32
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	nop
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
	.size	matvec_sub, .-matvec_sub
	.align	2
	.global	matmul_sub
	.syntax unified
	.arm
	.fpu softvfp
	.type	matmul_sub, %function
matmul_sub:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #16
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	ldr	r3, [fp, #-32]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	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, [fp, #-32]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	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, [fp, #-32]
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-32]
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	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, [fp, #-32]
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, [fp, #-32]
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	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, [fp, #-32]
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r3, [fp, #-32]
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	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, [fp, #-32]
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	ldr	r3, [fp, #-32]
	add	r3, r3, #40
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #40
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-32]
	add	r3, r3, #40
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-32]
	add	r3, r3, #40
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-32]
	add	r3, r3, #40
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #40
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #32]
	str	r3, [r4, #36]
	ldr	r3, [fp, #-32]
	add	r3, r3, #80
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #80
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-32]
	add	r3, r3, #80
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-32]
	add	r3, r3, #80
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-32]
	add	r3, r3, #80
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #80
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #32]
	str	r3, [r4, #36]
	ldr	r3, [fp, #-32]
	add	r3, r3, #120
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #120
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-32]
	add	r3, r3, #120
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-32]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-32]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #120
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #32]
	str	r3, [r4, #36]
	ldr	r3, [fp, #-32]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-24]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-32]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-32]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-32]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-24]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #8
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #16
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #24
	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
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #160
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	add	r4, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #32]
	str	r3, [r4, #36]
	nop
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
	.size	matmul_sub, .-matmul_sub
	.align	2
	.global	binvcrhs
	.syntax unified
	.arm
	.fpu softvfp
	.type	binvcrhs, %function
binvcrhs:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #36
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	ldr	r3, [fp, #-40]
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L448
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #40
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #80
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #40
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #80
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #8
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-48]
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #16
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-48]
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #24
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	b	.L449
.L450:
	.align	2
.L448:
	.word	1072693248
	.word	1072693248
.L449:
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-44]
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-48]
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #32
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L448+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #80
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-44]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-44]
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #40
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #80
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r4, r3, #8
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-48]
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #16
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-48]
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #24
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-48]
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #32
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L451
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-44]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-44]
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #40
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #80
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-48]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r4, r3, #16
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #8
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-48]
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #24
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-48]
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #32
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L451
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-44]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-44]
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #40
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #80
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-48]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r4, r3, #24
	b	.L452
.L453:
	.align	2
.L451:
	.word	1072693248
	.word	1072693248
.L452:
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #8
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-48]
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #16
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-48]
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #32
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L451+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-44]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-44]
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #40
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #32]
	str	r3, [r4, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #80
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #32]
	str	r3, [r4, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #32]
	str	r3, [r4, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #32]
	str	r3, [r4, #36]
	ldr	r3, [fp, #-48]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r4, r3, #32
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #8
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-48]
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #16
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #40
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #80
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #120
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #160
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-48]
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	add	r6, r3, #24
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	nop
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
	.size	binvcrhs, .-binvcrhs
	.align	2
	.global	binvrhs
	.syntax unified
	.arm
	.fpu softvfp
	.type	binvrhs, %function
binvrhs:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #28
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r3, [fp, #-40]
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L455
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #40
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #80
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #8
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #16
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #24
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #40
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #32
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L455
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #80
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #8]
	str	r3, [r4, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #8
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #16
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #24
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #40
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #80
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	b	.L456
.L457:
	.align	2
.L455:
	.word	1072693248
.L456:
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #32
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L455
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #120
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #16]
	str	r3, [r4, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #16
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #8
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #24
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #24]
	str	r3, [r6, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #24
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #80
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #120
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #32
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L455
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r4, r3, #160
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [r4, #24]
	str	r3, [r4, #28]
	ldr	r3, [fp, #-44]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #24
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-44]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #8]
	str	r3, [r6, #12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #8
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #16]
	str	r3, [r6, #20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #16
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #120
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r5, r3, #32
	ldmia	r5, {r4-r5}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	add	r6, r3, #160
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [r6, #32]
	str	r3, [r6, #36]
	ldr	r3, [fp, #-44]
	add	r3, r3, #32
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #32
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L455
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-44]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r4, r3, #32
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	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, [fp, #-44]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #8
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #16
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-40]
	add	r3, r3, #160
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	add	r6, r3, #24
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	nop
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
	.size	binvrhs, .-binvrhs
	.section	.rodata
	.align	2
.LC49:
	.ascii	" Verification being performed for class %c\012\000"
	.align	2
.LC50:
	.ascii	" accuracy setting for epsilon = %20.13E\012\000"
	.global	__aeabi_dcmpge
	.align	2
.LC51:
	.ascii	" DT does not match the reference value of %15.8E\012"
	.ascii	"\000"
	.align	2
.LC52:
	.ascii	" Unknown class\000"
	.align	2
.LC53:
	.ascii	" Comparison of RMS-norms of residual\000"
	.align	2
.LC54:
	.ascii	" RMS-norms of residual\000"
	.align	2
.LC55:
	.ascii	"          %2d%20.13E\012\000"
	.align	2
.LC56:
	.ascii	"          %2d%20.13E%20.13E%20.13E\012\000"
	.align	2
.LC57:
	.ascii	" FAILURE: %2d%20.13E%20.13E%20.13E\012\000"
	.align	2
.LC58:
	.ascii	" Comparison of RMS-norms of solution error\000"
	.align	2
.LC59:
	.ascii	" RMS-norms of solution error\000"
	.align	2
.LC60:
	.ascii	" No reference values provided\000"
	.align	2
.LC61:
	.ascii	" No verification performed\000"
	.align	2
.LC62:
	.ascii	" Verification Successful\000"
	.align	2
.LC63:
	.ascii	" Verification failed\000"
	.align	2
.LC64:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify, %function
verify:
	@ args = 0, pretend = 0, frame = 288
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #304
	str	r0, [fp, #-304]
	str	r1, [fp, #-308]
	str	r2, [fp, #-312]
	ldr	r3, .L501
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-292]
	str	r3, [fp, #-288]
	ldr	r2, .L501+4
	ldr	r3, .L501+8
	str	r2, [fp, #-284]
	str	r3, [fp, #-280]
	sub	r3, fp, #116
	mov	r0, r3
	bl	error_norm
	bl	compute_rhs
	sub	r3, fp, #76
	mov	r0, r3
	bl	rhs_norm
	mov	r3, #0
	str	r3, [fp, #-296]
	b	.L459
.L460:
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L501+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-296]
	lsl	r1, r1, #3
	sub	r0, fp, #28
	add	r1, r0, r1
	sub	r1, r1, #48
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-296]
	add	r3, r3, #1
	str	r3, [fp, #-296]
.L459:
	ldr	r3, [fp, #-296]
	cmp	r3, #4
	ble	.L460
	ldr	r3, [fp, #-308]
	mov	r2, #85
	strb	r2, [r3]
	ldr	r3, [fp, #-312]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-296]
	b	.L461
.L462:
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r1, r3, #248
	mov	r2, #0
	ldr	r3, .L501+16
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r1, r3, #208
	mov	r2, #0
	ldr	r3, .L501+16
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-296]
	add	r3, r3, #1
	str	r3, [fp, #-296]
.L461:
	ldr	r3, [fp, #-296]
	cmp	r3, #4
	ble	.L462
	ldr	r3, .L501+20
	ldr	r3, [r3]
	cmp	r3, #12
	bne	.L463
	ldr	r3, .L501+20
	ldr	r3, [r3, #4]
	cmp	r3, #12
	bne	.L463
	ldr	r3, .L501+20
	ldr	r3, [r3, #8]
	cmp	r3, #12
	bne	.L463
	ldr	r3, [fp, #-304]
	cmp	r3, #60
	bne	.L463
	ldr	r3, [fp, #-308]
	mov	r2, #83
	strb	r2, [r3]
	ldr	r2, .L501+24
	ldr	r3, .L501+28
	str	r2, [fp, #-292]
	str	r3, [fp, #-288]
	ldr	r2, .L501+32
	ldr	r3, .L501+36
	str	r2, [fp, #-276]
	str	r3, [fp, #-272]
	ldr	r2, .L501+40
	ldr	r3, .L501+44
	str	r2, [fp, #-268]
	str	r3, [fp, #-264]
	ldr	r2, .L501+48
	ldr	r3, .L501+52
	str	r2, [fp, #-260]
	str	r3, [fp, #-256]
	ldr	r2, .L501+56
	ldr	r3, .L501+60
	str	r2, [fp, #-252]
	str	r3, [fp, #-248]
	ldr	r2, .L501+64
	ldr	r3, .L501+68
	str	r2, [fp, #-244]
	str	r3, [fp, #-240]
	ldr	r2, .L501+72
	ldr	r3, .L501+76
	str	r2, [fp, #-236]
	str	r3, [fp, #-232]
	ldr	r2, .L501+80
	ldr	r3, .L501+84
	str	r2, [fp, #-228]
	str	r3, [fp, #-224]
	ldr	r2, .L501+88
	ldr	r3, .L501+92
	str	r2, [fp, #-220]
	str	r3, [fp, #-216]
	ldr	r2, .L501+96
	ldr	r3, .L501+100
	str	r2, [fp, #-212]
	str	r3, [fp, #-208]
	ldr	r2, .L501+104
	ldr	r3, .L501+108
	str	r2, [fp, #-204]
	str	r3, [fp, #-200]
	b	.L464
.L463:
	ldr	r3, .L501+20
	ldr	r3, [r3]
	cmp	r3, #24
	bne	.L465
	ldr	r3, .L501+20
	ldr	r3, [r3, #4]
	cmp	r3, #24
	bne	.L465
	ldr	r3, .L501+20
	ldr	r3, [r3, #8]
	cmp	r3, #24
	bne	.L465
	ldr	r3, [fp, #-304]
	cmp	r3, #200
	bne	.L465
	ldr	r3, [fp, #-308]
	mov	r2, #87
	strb	r2, [r3]
	ldr	r2, .L501+112
	ldr	r3, .L501+116
	str	r2, [fp, #-292]
	str	r3, [fp, #-288]
	ldr	r2, .L501+120
	ldr	r3, .L501+124
	str	r2, [fp, #-276]
	str	r3, [fp, #-272]
	ldr	r2, .L501+128
	ldr	r3, .L501+132
	str	r2, [fp, #-268]
	str	r3, [fp, #-264]
	ldr	r2, .L501+136
	ldr	r3, .L501+140
	str	r2, [fp, #-260]
	str	r3, [fp, #-256]
	ldr	r2, .L501+144
	ldr	r3, .L501+148
	str	r2, [fp, #-252]
	str	r3, [fp, #-248]
	ldr	r2, .L501+152
	ldr	r3, .L501+156
	str	r2, [fp, #-244]
	str	r3, [fp, #-240]
	ldr	r2, .L501+160
	ldr	r3, .L501+164
	str	r2, [fp, #-236]
	str	r3, [fp, #-232]
	ldr	r2, .L501+168
	ldr	r3, .L501+172
	str	r2, [fp, #-228]
	str	r3, [fp, #-224]
	ldr	r2, .L501+176
	ldr	r3, .L501+180
	str	r2, [fp, #-220]
	str	r3, [fp, #-216]
	ldr	r2, .L501+184
	ldr	r3, .L501+188
	str	r2, [fp, #-212]
	str	r3, [fp, #-208]
	ldr	r2, .L501+192
	ldr	r3, .L501+196
	str	r2, [fp, #-204]
	str	r3, [fp, #-200]
	b	.L464
.L465:
	ldr	r3, .L501+20
	ldr	r3, [r3]
	cmp	r3, #64
	bne	.L466
	ldr	r3, .L501+20
	ldr	r3, [r3, #4]
	cmp	r3, #64
	bne	.L466
	ldr	r3, .L501+20
	ldr	r3, [r3, #8]
	cmp	r3, #64
	bne	.L466
	ldr	r3, [fp, #-304]
	cmp	r3, #200
	bne	.L466
	ldr	r3, [fp, #-308]
	mov	r2, #65
	strb	r2, [r3]
	ldr	r2, .L501+112
	ldr	r3, .L501+116
	str	r2, [fp, #-292]
	str	r3, [fp, #-288]
	ldr	r2, .L501+200
	ldr	r3, .L501+204
	str	r2, [fp, #-276]
	str	r3, [fp, #-272]
	ldr	r2, .L501+208
	ldr	r3, .L501+212
	str	r2, [fp, #-268]
	str	r3, [fp, #-264]
	ldr	r2, .L501+216
	ldr	r3, .L501+220
	str	r2, [fp, #-260]
	str	r3, [fp, #-256]
	ldr	r2, .L501+224
	ldr	r3, .L501+228
	str	r2, [fp, #-252]
	str	r3, [fp, #-248]
	ldr	r2, .L501+232
	ldr	r3, .L501+236
	str	r2, [fp, #-244]
	str	r3, [fp, #-240]
	ldr	r2, .L501+240
	ldr	r3, .L501+244
	str	r2, [fp, #-236]
	str	r3, [fp, #-232]
	ldr	r2, .L501+248
	ldr	r3, .L501+252
	str	r2, [fp, #-228]
	str	r3, [fp, #-224]
	ldr	r2, .L501+256
	ldr	r3, .L501+260
	str	r2, [fp, #-220]
	str	r3, [fp, #-216]
	ldr	r2, .L501+264
	ldr	r3, .L501+268
	str	r2, [fp, #-212]
	str	r3, [fp, #-208]
	ldr	r2, .L501+272
	ldr	r3, .L501+276
	str	r2, [fp, #-204]
	str	r3, [fp, #-200]
	b	.L464
.L466:
	ldr	r3, .L501+20
	ldr	r3, [r3]
	cmp	r3, #102
	bne	.L467
	ldr	r3, .L501+20
	ldr	r3, [r3, #4]
	cmp	r3, #102
	bne	.L467
	ldr	r3, .L501+20
	ldr	r3, [r3, #8]
	cmp	r3, #102
	bne	.L467
	ldr	r3, [fp, #-304]
	cmp	r3, #200
	bne	.L467
	ldr	r3, [fp, #-308]
	mov	r2, #66
	strb	r2, [r3]
	ldr	r2, .L501+280
	ldr	r3, .L501+284
	str	r2, [fp, #-292]
	str	r3, [fp, #-288]
	ldr	r2, .L501+288
	ldr	r3, .L501+292
	str	r2, [fp, #-276]
	str	r3, [fp, #-272]
	ldr	r2, .L501+296
	ldr	r3, .L501+300
	str	r2, [fp, #-268]
	str	r3, [fp, #-264]
	ldr	r2, .L501+304
	ldr	r3, .L501+308
	str	r2, [fp, #-260]
	str	r3, [fp, #-256]
	ldr	r2, .L501+312
	ldr	r3, .L501+316
	str	r2, [fp, #-252]
	str	r3, [fp, #-248]
	ldr	r2, .L501+320
	ldr	r3, .L501+324
	str	r2, [fp, #-244]
	str	r3, [fp, #-240]
	ldr	r2, .L501+328
	ldr	r3, .L501+332
	str	r2, [fp, #-236]
	str	r3, [fp, #-232]
	ldr	r2, .L501+336
	ldr	r3, .L501+340
	str	r2, [fp, #-228]
	str	r3, [fp, #-224]
	ldr	r2, .L501+344
	ldr	r3, .L501+348
	str	r2, [fp, #-220]
	str	r3, [fp, #-216]
	ldr	r2, .L501+352
	ldr	r3, .L501+356
	str	r2, [fp, #-212]
	str	r3, [fp, #-208]
	ldr	r2, .L501+360
	ldr	r3, .L501+364
	str	r2, [fp, #-204]
	str	r3, [fp, #-200]
	b	.L464
.L467:
	ldr	r3, .L501+20
	ldr	r3, [r3]
	cmp	r3, #162
	bne	.L468
	ldr	r3, .L501+20
	ldr	r3, [r3, #4]
	cmp	r3, #162
	bne	.L468
	ldr	r3, .L501+20
	ldr	r3, [r3, #8]
	cmp	r3, #162
	bne	.L468
	ldr	r3, [fp, #-304]
	cmp	r3, #200
	bne	.L468
	ldr	r3, [fp, #-308]
	mov	r2, #67
	strb	r2, [r3]
	ldr	r2, .L501+112
	ldr	r3, .L501+368
	str	r2, [fp, #-292]
	str	r3, [fp, #-288]
	ldr	r2, .L501+372
	ldr	r3, .L501+376
	str	r2, [fp, #-276]
	str	r3, [fp, #-272]
	ldr	r2, .L501+380
	ldr	r3, .L501+384
	str	r2, [fp, #-268]
	str	r3, [fp, #-264]
	ldr	r2, .L501+388
	ldr	r3, .L501+392
	str	r2, [fp, #-260]
	str	r3, [fp, #-256]
	ldr	r2, .L501+396
	ldr	r3, .L501+400
	str	r2, [fp, #-252]
	str	r3, [fp, #-248]
	ldr	r2, .L501+404
	ldr	r3, .L501+408
	str	r2, [fp, #-244]
	str	r3, [fp, #-240]
	ldr	r2, .L501+412
	ldr	r3, .L501+416
	str	r2, [fp, #-236]
	str	r3, [fp, #-232]
	ldr	r2, .L501+420
	ldr	r3, .L501+424
	str	r2, [fp, #-228]
	str	r3, [fp, #-224]
	ldr	r2, .L501+428
	ldr	r3, .L501+432
	str	r2, [fp, #-220]
	str	r3, [fp, #-216]
	ldr	r2, .L501+436
	ldr	r3, .L501+440
	str	r2, [fp, #-212]
	str	r3, [fp, #-208]
	ldr	r2, .L501+444
	ldr	r3, .L501+448
	str	r2, [fp, #-204]
	str	r3, [fp, #-200]
	b	.L464
.L468:
	ldr	r3, .L501+20
	ldr	r3, [r3]
	cmp	r3, #408
	bne	.L469
	ldr	r3, .L501+20
	ldr	r3, [r3, #4]
	cmp	r3, #408
	bne	.L469
	ldr	r3, .L501+20
	ldr	r3, [r3, #8]
	cmp	r3, #408
	bne	.L469
	ldr	r3, [fp, #-304]
	cmp	r3, #250
	bne	.L469
	ldr	r3, [fp, #-308]
	mov	r2, #68
	strb	r2, [r3]
	ldr	r2, .L501+452
	ldr	r3, .L501+456
	str	r2, [fp, #-292]
	str	r3, [fp, #-288]
	ldr	r2, .L501+460
	ldr	r3, .L501+464
	str	r2, [fp, #-276]
	str	r3, [fp, #-272]
	ldr	r2, .L501+468
	ldr	r3, .L501+472
	str	r2, [fp, #-268]
	str	r3, [fp, #-264]
	ldr	r2, .L501+476
	ldr	r3, .L501+480
	str	r2, [fp, #-260]
	str	r3, [fp, #-256]
	ldr	r2, .L501+484
	ldr	r3, .L501+488
	str	r2, [fp, #-252]
	str	r3, [fp, #-248]
	ldr	r2, .L501+492
	ldr	r3, .L501+496
	str	r2, [fp, #-244]
	str	r3, [fp, #-240]
	ldr	r2, .L501+500
	ldr	r3, .L501+504
	str	r2, [fp, #-236]
	str	r3, [fp, #-232]
	ldr	r2, .L501+508
	ldr	r3, .L501+512
	str	r2, [fp, #-228]
	str	r3, [fp, #-224]
	ldr	r2, .L501+516
	ldr	r3, .L501+520
	str	r2, [fp, #-220]
	str	r3, [fp, #-216]
	ldr	r2, .L501+524
	ldr	r3, .L501+528
	str	r2, [fp, #-212]
	str	r3, [fp, #-208]
	ldr	r2, .L501+532
	ldr	r3, .L501+536
	str	r2, [fp, #-204]
	str	r3, [fp, #-200]
	b	.L464
.L469:
	ldr	r3, .L501+20
	ldr	r3, [r3]
	cmp	r3, #1020
	bne	.L470
	ldr	r3, .L501+20
	ldr	r3, [r3, #4]
	cmp	r3, #1020
	bne	.L470
	ldr	r3, .L501+20
	ldr	r3, [r3, #8]
	cmp	r3, #1020
	bne	.L470
	ldr	r3, [fp, #-304]
	cmp	r3, #250
	bne	.L470
	ldr	r3, [fp, #-308]
	mov	r2, #69
	strb	r2, [r3]
	ldr	r2, .L501+540
	ldr	r3, .L501+544
	str	r2, [fp, #-292]
	str	r3, [fp, #-288]
	ldr	r2, .L501+548
	ldr	r3, .L501+552
	str	r2, [fp, #-276]
	str	r3, [fp, #-272]
	ldr	r2, .L501+556
	ldr	r3, .L501+560
	str	r2, [fp, #-268]
	str	r3, [fp, #-264]
	ldr	r2, .L501+564
	ldr	r3, .L501+568
	str	r2, [fp, #-260]
	str	r3, [fp, #-256]
	ldr	r2, .L501+572
	ldr	r3, .L501+576
	str	r2, [fp, #-252]
	str	r3, [fp, #-248]
	ldr	r2, .L501+580
	ldr	r3, .L501+584
	str	r2, [fp, #-244]
	str	r3, [fp, #-240]
	ldr	r2, .L501+588
	ldr	r3, .L501+592
	str	r2, [fp, #-236]
	str	r3, [fp, #-232]
	ldr	r2, .L501+596
	ldr	r3, .L501+600
	str	r2, [fp, #-228]
	str	r3, [fp, #-224]
	ldr	r2, .L501+604
	ldr	r3, .L501+608
	str	r2, [fp, #-220]
	str	r3, [fp, #-216]
	ldr	r2, .L501+612
	ldr	r3, .L501+616
	str	r2, [fp, #-212]
	str	r3, [fp, #-208]
	ldr	r2, .L501+620
	ldr	r3, .L501+624
	str	r2, [fp, #-204]
	str	r3, [fp, #-200]
	b	.L464
.L470:
	ldr	r3, [fp, #-312]
	mov	r2, #0
	str	r2, [r3]
.L464:
	mov	r3, #0
	str	r3, [fp, #-296]
	b	.L471
.L472:
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #248
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #248
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	bic	r5, r3, #-2147483648
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #168
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #208
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #208
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	bic	r7, r3, #-2147483648
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #128
	stm	r3, {r6-r7}
	ldr	r3, [fp, #-296]
	add	r3, r3, #1
	str	r3, [fp, #-296]
.L471:
	ldr	r3, [fp, #-296]
	cmp	r3, #4
	ble	.L472
	ldr	r3, [fp, #-308]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #85
	beq	.L473
	ldr	r3, [fp, #-308]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, .L501+628
	bl	printf
	sub	r3, fp, #284
	ldmia	r3, {r2-r3}
	ldr	r0, .L501+632
	bl	printf
	ldr	r3, .L501+12
	ldmia	r3, {r0-r1}
	sub	r3, fp, #292
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	bic	r9, r3, #-2147483648
	mov	r3, #1
	mov	r4, r3
	mov	r2, r8
	mov	r3, r9
	sub	r1, fp, #284
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L474
	mov	r3, #0
	mov	r4, r3
.L474:
	and	r3, r4, #255
	mov	r2, r3
	ldr	r3, [fp, #-312]
	str	r2, [r3]
	ldr	r3, [fp, #-312]
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L475
	ldr	r3, [fp, #-308]
	mov	r2, #85
	strb	r2, [r3]
	sub	r3, fp, #292
	ldmia	r3, {r2-r3}
	ldr	r0, .L501+636
	bl	printf
	b	.L475
.L473:
	ldr	r0, .L501+640
	bl	puts
.L475:
	ldr	r3, [fp, #-308]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #85
	beq	.L476
	ldr	r0, .L501+644
	bl	puts
	b	.L477
.L476:
	ldr	r0, .L501+648
	bl	puts
.L477:
	mov	r3, #0
	str	r3, [fp, #-296]
	b	.L478
.L483:
	ldr	r3, [fp, #-308]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #85
	bne	.L479
	ldr	r3, [fp, #-296]
	add	r1, r3, #1
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r2-r3}
	ldr	r0, .L501+652
	bl	printf
	b	.L480
.L479:
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #168
	ldmia	r3, {r2-r3}
	sub	r1, fp, #284
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L498
	ldr	r3, [fp, #-296]
	add	ip, r3, #1
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #248
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-296]
	lsl	r1, r1, #3
	sub	r0, fp, #28
	add	r1, r0, r1
	sub	r1, r1, #168
	ldmia	r1, {r0-r1}
	str	r0, [sp, #8]
	str	r1, [sp, #12]
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, ip
	ldr	r0, .L501+656
	bl	printf
	b	.L480
.L498:
	ldr	r3, [fp, #-312]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-296]
	add	ip, r3, #1
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #48
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #248
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-296]
	lsl	r1, r1, #3
	sub	r0, fp, #28
	add	r1, r0, r1
	sub	r1, r1, #168
	ldmia	r1, {r0-r1}
	str	r0, [sp, #8]
	str	r1, [sp, #12]
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, ip
	ldr	r0, .L501+660
	bl	printf
.L480:
	ldr	r3, [fp, #-296]
	add	r3, r3, #1
	str	r3, [fp, #-296]
.L478:
	ldr	r3, [fp, #-296]
	cmp	r3, #4
	ble	.L483
	ldr	r3, [fp, #-308]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #85
	beq	.L484
	ldr	r0, .L501+664
	bl	puts
	b	.L485
.L484:
	ldr	r0, .L501+668
	bl	puts
.L485:
	mov	r3, #0
	str	r3, [fp, #-296]
	b	.L486
.L491:
	ldr	r3, [fp, #-308]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #85
	bne	.L487
	ldr	r3, [fp, #-296]
	add	r1, r3, #1
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #88
	ldmia	r3, {r2-r3}
	ldr	r0, .L501+652
	bl	printf
	b	.L488
.L487:
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #128
	ldmia	r3, {r2-r3}
	sub	r1, fp, #284
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L499
	ldr	r3, [fp, #-296]
	add	ip, r3, #1
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #88
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #208
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-296]
	lsl	r1, r1, #3
	sub	r0, fp, #28
	add	r1, r0, r1
	sub	r1, r1, #128
	ldmia	r1, {r0-r1}
	str	r0, [sp, #8]
	str	r1, [sp, #12]
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, ip
	ldr	r0, .L501+656
	bl	printf
	b	.L488
.L499:
	ldr	r3, [fp, #-312]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-296]
	add	ip, r3, #1
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #88
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-296]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #208
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-296]
	lsl	r1, r1, #3
	sub	r0, fp, #28
	add	r1, r0, r1
	sub	r1, r1, #128
	ldmia	r1, {r0-r1}
	str	r0, [sp, #8]
	str	r1, [sp, #12]
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, ip
	ldr	r0, .L501+660
	bl	printf
.L488:
	ldr	r3, [fp, #-296]
	add	r3, r3, #1
	str	r3, [fp, #-296]
.L486:
	ldr	r3, [fp, #-296]
	cmp	r3, #4
	ble	.L491
	ldr	r3, [fp, #-308]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #85
	bne	.L492
	ldr	r0, .L501+672
	bl	puts
	ldr	r0, .L501+676
	bl	puts
	b	.L500
.L492:
	ldr	r3, [fp, #-312]
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L494
	ldr	r0, .L501+680
	bl	puts
	b	.L500
.L494:
	ldr	r0, .L501+684
	bl	puts
.L500:
	nop
	ldr	r3, .L501
	ldr	r2, [r3]
	ldr	r3, [fp, #-32]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L495
	bl	__stack_chk_fail
.L495:
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L502:
	.align	2
.L501:
	.word	.LC64
	.word	-500134854
	.word	1044740494
	.word	dt
	.word	1072693248
	.word	grid_points
	.word	1202590843
	.word	1065646817
	.word	1228366141
	.word	1069927883
	.word	-631071256
	.word	1066046148
	.word	490784515
	.word	1067493248
	.word	859001514
	.word	1067127334
	.word	1119346834
	.word	1070110545
	.word	179857912
	.word	1061183582
	.word	1228488981
	.word	1057468943
	.word	-1680540284
	.word	1058235467
	.word	956515681
	.word	1058232847
	.word	-1167860364
	.word	1062027386
	.word	-350469331
	.word	1061828322
	.word	1403033572
	.word	1079780295
	.word	-1907495752
	.word	1076337059
	.word	-1216955127
	.word	1077615217
	.word	2092296565
	.word	1077457174
	.word	246188570
	.word	1081113980
	.word	1001844420
	.word	1074900410
	.word	93609426
	.word	1071493061
	.word	-482009590
	.word	1072705360
	.word	665831394
	.word	1072533000
	.word	173575679
	.word	1076124773
	.word	-662601057
	.word	1079706639
	.word	-993491157
	.word	1076274099
	.word	1276769517
	.word	1077541231
	.word	1026875472
	.word	1077389926
	.word	-1433202994
	.word	1081055556
	.word	1363449133
	.word	1074851962
	.word	1693861187
	.word	1071409383
	.word	1207010259
	.word	1072623884
	.word	2066221589
	.word	1072447924
	.word	-650727860
	.word	1076066777
	.word	810889825
	.word	1060350250
	.word	1530206717
	.word	1083587952
	.word	1211683381
	.word	1079563559
	.word	903661829
	.word	1081493341
	.word	-221602770
	.word	1081363883
	.word	482060942
	.word	1084853634
	.word	-209962831
	.word	1078623267
	.word	-1752627388
	.word	1074911848
	.word	-287289624
	.word	1076510401
	.word	-1219729720
	.word	1076364171
	.word	-186462844
	.word	1079977504
	.word	1058682594
	.word	-928893304
	.word	1085824975
	.word	331742267
	.word	1082113771
	.word	2068132376
	.word	1083709801
	.word	-2044578732
	.word	1083492596
	.word	819650984
	.word	1086761483
	.word	-1178556393
	.word	1080333271
	.word	-312802209
	.word	1076297348
	.word	-1729471237
	.word	1078237837
	.word	643918928
	.word	1078102840
	.word	-1146741587
	.word	1081516484
	.word	-1998362383
	.word	1056241845
	.word	-1403971895
	.word	1087945976
	.word	-1790598666
	.word	1084380361
	.word	-352499030
	.word	1085838989
	.word	-1132738869
	.word	1085597840
	.word	2114660477
	.word	1088623188
	.word	-682696445
	.word	1081303043
	.word	918671960
	.word	1077427625
	.word	-1641578777
	.word	1079211165
	.word	-1661115515
	.word	1079056076
	.word	-91760403
	.word	1082324118
	.word	-1598689907
	.word	1053869815
	.word	-1728626755
	.word	1089989147
	.word	1105845365
	.word	1086522856
	.word	255540246
	.word	1087904004
	.word	-2033106951
	.word	1087663884
	.word	367439606
	.word	1090584175
	.word	2064016862
	.word	1081805849
	.word	1494022293
	.word	1078099657
	.word	494346585
	.word	1079721730
	.word	-484491530
	.word	1079486466
	.word	61569573
	.word	1082672233
	.word	.LC49
	.word	.LC50
	.word	.LC51
	.word	.LC52
	.word	.LC53
	.word	.LC54
	.word	.LC55
	.word	.LC56
	.word	.LC57
	.word	.LC58
	.word	.LC59
	.word	.LC60
	.word	.LC61
	.word	.LC62
	.word	.LC63
	.size	verify, .-verify
	.align	2
	.global	x_solve
	.syntax unified
	.arm
	.fpu softvfp
	.type	x_solve, %function
x_solve:
	@ args = 0, pretend = 0, frame = 304
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #304
	ldr	r3, .L523
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L504
	mov	r0, #6
	bl	timer_start
.L504:
	ldr	r3, .L523+4
	ldr	r3, [r3]
	sub	r3, r3, #1
	str	r3, [fp, #-32]
	mov	r3, #1
	str	r3, [fp, #-44]
	b	.L505
.L520:
	mov	r3, #1
	str	r3, [fp, #-48]
	b	.L506
.L519:
	mov	r3, #0
	str	r3, [fp, #-52]
	b	.L507
.L524:
	.align	2
.L523:
	.word	timeron
	.word	grid_points
	.word	rho_i
	.word	tmp3
	.word	1072693248
	.word	qs
	.word	c2
	.word	square
	.word	tmp2
	.word	fjac
	.word	c1
	.word	tmp1
	.word	25000
	.word	u
.L508:
	ldr	ip, .L523+8
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	ldr	r1, .L523+44
	stm	r1, {r2-r3}
	ldr	r3, .L523+44
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L523+32
	stm	r3, {r0-r1}
	ldr	r3, .L523+44
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L523+12
	stm	r3, {r0-r1}
	ldr	r1, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r1, r1, r2
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #40
	mov	r2, #0
	ldr	r3, .L523+16
	stm	r1, {r2-r3}
	ldr	r1, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #80
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #120
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #160
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L523+20
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	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	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, .L523+24
	ldmia	r3, {r2-r3}
	mov	r0, #0
	mov	r1, #1073741824
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #48
	stm	r3, {r0-r1}
	ldr	r3, .L523+24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-60]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-56]
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #88
	stm	r3, {r0-r1}
	ldr	r3, .L523+24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-68]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-64]
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #128
	stm	r3, {r0-r1}
	ldr	r3, .L523+24
	ldmia	r3, {r0-r1}
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #168
	stm	r3, {r0-r1}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-76]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-72]
	ldr	r3, .L523+32
	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
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #56
	stm	r3, {r0-r1}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #96
	stm	r3, {r0-r1}
	ldr	r1, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #176
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-84]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-80]
	ldr	r3, .L523+32
	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
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #64
	stm	r3, {r0-r1}
	ldr	r1, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #104
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #144
	stm	r3, {r0-r1}
	ldr	r1, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #184
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L523+24
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L523+28
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	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	ip, .L523+36
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L523+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L523+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L523+48
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L523+52
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L525+4
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+8
	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	ip, .L525+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #72
	stm	r3, {r0-r1}
	ldr	r3, .L525+8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-92]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-88]
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #112
	stm	r3, {r0-r1}
	ldr	r3, .L525+8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-100]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-96]
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #152
	stm	r3, {r0-r1}
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #192
	stm	r3, {r0-r1}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r1, r1, r2
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #40
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #80
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #120
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #160
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L525+20
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-108]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-104]
	ldr	r3, .L525+24
	ldmia	r3, {r2-r3}
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, .L525+20
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #48
	stm	r3, {r0-r1}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #88
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #128
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #168
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L525+24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-116]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-112]
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #56
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L525+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #96
	stm	r3, {r0-r1}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #176
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L525+24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-124]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-120]
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	sub	r1, fp, #124
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #64
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #104
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L525+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #144
	stm	r3, {r0-r1}
	ldr	r1, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #184
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L525+20
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-132]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-128]
	ldr	r3, .L525+16
	ldmia	r3, {r2-r3}
	sub	r1, fp, #132
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r3, .L525+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	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
	ldr	r3, .L525+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	b	.L526
.L527:
	.align	2
.L525:
	.word	25000
	.word	qs
	.word	c2
	.word	c1
	.word	tmp3
	.word	con43
	.word	c3c4
	.word	u
	.word	25000
	.word	c1345
	.word	tx1
	.word	dt
	.word	tx2
	.word	dx1
	.word	dx2
	.word	fjac
	.word	njac
	.word	tmp1
	.word	lhs
	.word	tmp2
.L526:
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, .L525+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525+32
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	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	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, .L525+20
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525+32
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #72
	stm	r3, {r0-r1}
	ldr	r3, .L525+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525+32
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #112
	stm	r3, {r0-r1}
	ldr	r3, .L525+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L525+28
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L525+32
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #152
	stm	r3, {r0-r1}
	ldr	r3, .L525+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+64
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #192
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L507:
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	ble	.L508
	ldr	r1, [fp, #-32]
	ldr	r0, .L525+72
	bl	lhsinit
	mov	r3, #1
	str	r3, [fp, #-52]
	b	.L509
.L510:
	ldr	r3, .L525+44
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+68
	stm	r3, {r0-r1}
	ldr	r3, .L525+44
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L525+76
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-140]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-136]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r2-r3}
	sub	r1, fp, #140
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L525+68
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-148]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-144]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r2-r3}
	sub	r1, fp, #148
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #40
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-156]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-152]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r2-r3}
	sub	r1, fp, #156
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #80
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-164]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-160]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r2-r3}
	sub	r1, fp, #164
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #120
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-172]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-168]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r2-r3}
	sub	r1, fp, #172
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #160
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-180]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-176]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-188]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-184]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	sub	r1, fp, #188
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L525+68
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+56
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #48
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-196]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-192]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r2-r3}
	sub	r1, fp, #196
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #88
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-204]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-200]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r2-r3}
	sub	r1, fp, #204
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #128
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-212]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-208]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+60
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r2-r3}
	sub	r1, fp, #212
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L525+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r0-r1}
	ldr	r3, .L525+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L525+72
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #168
	stm	r3, {r0-r1}
	ldr	r3, .L525+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-220]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-216]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	sub	r1, fp, #220
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-228]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-224]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r2-r3}
	sub	r1, fp, #228
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #56
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-236]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r2-r3}
	sub	r1, fp, #236
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+20
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #96
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-244]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r2-r3}
	sub	r1, fp, #244
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #136
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-252]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-248]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r2-r3}
	sub	r1, fp, #252
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #176
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-260]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-256]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	sub	r1, fp, #260
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-268]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-264]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r2-r3}
	sub	r1, fp, #268
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #64
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-276]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-272]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r2-r3}
	sub	r1, fp, #276
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #104
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-284]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-280]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r2-r3}
	sub	r1, fp, #284
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+28
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #144
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-292]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-288]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r2-r3}
	sub	r1, fp, #292
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #184
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-300]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-296]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	sub	r1, fp, #300
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-308]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-304]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r2-r3}
	sub	r1, fp, #308
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #72
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-316]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-312]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r2-r3}
	sub	r1, fp, #316
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #112
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-324]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-320]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r2-r3}
	sub	r1, fp, #324
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #152
	stm	r3, {r0-r1}
	ldr	r3, .L528+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-332]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-328]
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r2-r3}
	sub	r1, fp, #332
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	ldr	r1, .L528+40
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L528+8
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	b	.L529
.L530:
	.align	2
.L528:
	.word	fjac
	.word	tmp2
	.word	dx5
	.word	dx1
	.word	dx2
	.word	dx3
	.word	1072693248
	.word	dx4
	.word	lhs
	.word	tmp1
	.word	njac
.L529:
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #192
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L528+24
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L528+36
	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, .L528+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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #200
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #240
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #280
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #320
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #360
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #208
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L528+24
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L528+36
	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, .L528+16
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #248
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #288
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #328
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #368
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #216
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #256
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L528+24
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L528+36
	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, .L528+20
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #296
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #336
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #376
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #224
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #264
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #304
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L528+24
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L528+36
	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, .L528+28
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #344
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #384
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L528+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #232
	stm	r3, {r0-r1}
	ldr	r3, .L528+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L528+40
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #272
	stm	r3, {r0-r1}
	ldr	r3, .L531+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L531+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #312
	stm	r3, {r0-r1}
	ldr	r3, .L531+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L531+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #352
	stm	r3, {r0-r1}
	ldr	r3, .L531+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L531+32
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L531+4
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L531+36
	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, .L531+40
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #392
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L531+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+8
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #400
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #440
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #480
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #520
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #560
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #408
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L531+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+12
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #448
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #488
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #528
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #568
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #416
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #456
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L531+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+16
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #496
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	b	.L532
.L533:
	.align	2
.L531:
	.word	lhs
	.word	1072693248
	.word	dx1
	.word	dx2
	.word	dx3
	.word	dx4
	.word	fjac
	.word	tmp2
	.word	njac
	.word	tmp1
	.word	dx5
	.word	lhs+400
	.word	lhs+200
	.word	25000
	.word	rhs
	.word	lhs
.L532:
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #536
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #576
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #424
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #464
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #504
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L531+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+20
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #544
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #584
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #432
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #472
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #512
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #552
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	ldr	r1, .L531+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L531+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L531+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L531+60
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #592
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L509:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-52]
	cmp	r2, r3
	bgt	.L510
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #5
	sub	r2, r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r1, [fp, #-44]
	ldr	r3, .L531+52
	mul	r3, r1, r3
	add	r2, r2, r3
	ldr	r3, .L531+56
	add	r3, r2, r3
	mov	r2, r3
	ldr	r1, .L531+44
	ldr	r0, .L531+48
	bl	binvcrhs
	mov	r3, #1
	str	r3, [fp, #-52]
	b	.L511
.L512:
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L531+60
	add	ip, r3, r2
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L531+52
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L531+56
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L531+52
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L531+56
	add	r3, r2, r3
	mov	r2, r3
	mov	r1, r0
	mov	r0, ip
	bl	matvec_sub
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L531+60
	add	r0, r3, r2
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #400
	ldr	r3, .L531+60
	add	r1, r2, r3
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L531+60
	add	r3, r2, r3
	mov	r2, r3
	bl	matmul_sub
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L531+60
	add	ip, r2, r3
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #400
	ldr	r3, .L531+60
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L531+52
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L531+56
	add	r3, r2, r3
	mov	r2, r3
	mov	r1, r0
	mov	r0, ip
	bl	binvcrhs
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L511:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-52]
	cmp	r2, r3
	bgt	.L512
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L531+60
	add	ip, r3, r2
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L531+52
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L531+56
	add	r0, r2, r3
	ldr	r3, [fp, #-32]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L531+52
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L531+56
	add	r3, r2, r3
	mov	r2, r3
	mov	r1, r0
	mov	r0, ip
	bl	matvec_sub
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L531+60
	add	r0, r3, r2
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #400
	ldr	r3, .L531+60
	add	r1, r2, r3
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L531+60
	add	r3, r2, r3
	mov	r2, r3
	bl	matmul_sub
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L531+60
	add	r0, r2, r3
	ldr	r3, [fp, #-32]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L534
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L534+4
	add	r3, r2, r3
	mov	r1, r3
	bl	binvrhs
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	str	r3, [fp, #-52]
	b	.L513
.L518:
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L514
.L517:
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L515
.L516:
	ldr	ip, .L534+4
	ldr	r2, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r3, [fp, #-44]
	mov	r0, r2
	lsl	r0, r0, #2
	add	r0, r0, r2
	mov	r2, r3
	lsl	r2, r2, #5
	sub	r2, r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	ip, .L534+8
	ldr	r3, [fp, #-36]
	ldr	r0, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	mov	r2, r0
	lsl	r2, r2, #2
	add	r2, r2, r0
	lsl	r3, r2, #4
	sub	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, [fp, #-40]
	add	r3, r2, r3
	add	r3, r3, #50
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-52]
	add	r2, r3, #1
	ldr	ip, .L534+4
	ldr	r1, [fp, #-48]
	ldr	r3, [fp, #-44]
	mov	r0, r2
	lsl	r0, r0, #2
	add	r0, r0, r2
	mov	r2, r3
	lsl	r2, r2, #5
	sub	r2, r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-36]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	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	r4, r2
	mov	r5, r3
	ldr	ip, .L534+4
	ldr	r2, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r3, [fp, #-44]
	mov	r0, r2
	lsl	r0, r0, #2
	add	r0, r0, r2
	mov	r2, r3
	lsl	r2, r2, #5
	sub	r2, r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L515:
	ldr	r3, [fp, #-36]
	cmp	r3, #4
	ble	.L516
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L514:
	ldr	r3, [fp, #-40]
	cmp	r3, #4
	ble	.L517
	ldr	r3, [fp, #-52]
	sub	r3, r3, #1
	str	r3, [fp, #-52]
.L513:
	ldr	r3, [fp, #-52]
	cmp	r3, #0
	bge	.L518
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L506:
	ldr	r3, .L534+12
	ldr	r3, [r3, #4]
	sub	r2, r3, #1
	ldr	r3, [fp, #-48]
	cmp	r3, r2
	blt	.L519
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L505:
	ldr	r3, .L534+12
	ldr	r3, [r3, #8]
	sub	r2, r3, #1
	ldr	r3, [fp, #-44]
	cmp	r3, r2
	blt	.L520
	ldr	r3, .L534+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L522
	mov	r0, #6
	bl	timer_stop
.L522:
	nop
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L535:
	.align	2
.L534:
	.word	25000
	.word	rhs
	.word	lhs
	.word	grid_points
	.word	timeron
	.size	x_solve, .-x_solve
	.align	2
	.global	y_solve
	.syntax unified
	.arm
	.fpu softvfp
	.type	y_solve, %function
y_solve:
	@ args = 0, pretend = 0, frame = 304
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #304
	ldr	r3, .L556
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L537
	mov	r0, #7
	bl	timer_start
.L537:
	ldr	r3, .L556+4
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	str	r3, [fp, #-32]
	mov	r3, #1
	str	r3, [fp, #-44]
	b	.L538
.L553:
	mov	r3, #1
	str	r3, [fp, #-52]
	b	.L539
.L552:
	mov	r3, #0
	str	r3, [fp, #-48]
	b	.L540
.L557:
	.align	2
.L556:
	.word	timeron
	.word	grid_points
	.word	rho_i
	.word	tmp3
	.word	1072693248
	.word	qs
	.word	tmp1
	.word	square
	.word	c1
	.word	c2
	.word	u
	.word	25000
	.word	tmp2
	.word	fjac
.L541:
	ldr	ip, .L556+8
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	ldr	r1, .L556+24
	stm	r1, {r2-r3}
	ldr	r3, .L556+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L556+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L556+48
	stm	r3, {r0-r1}
	ldr	r3, .L556+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L556+48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L556+12
	stm	r3, {r0-r1}
	ldr	r1, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r1, r1, r2
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #40
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #80
	mov	r2, #0
	ldr	r3, .L556+16
	stm	r1, {r2-r3}
	ldr	r1, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #120
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #160
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-56]
	ldr	r3, .L556+48
	ldmia	r3, {r2-r3}
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L556+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #48
	stm	r3, {r0-r1}
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L556+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #88
	stm	r3, {r0-r1}
	ldr	r1, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #128
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #168
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L556+20
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L556+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L556+48
	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	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	r3, .L556+36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-68]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-64]
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L556+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #56
	stm	r3, {r0-r1}
	ldr	r3, .L556+36
	ldmia	r3, {r2-r3}
	mov	r0, #0
	mov	r1, #1073741824
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L556+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #96
	stm	r3, {r0-r1}
	ldr	r3, .L556+36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-76]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-72]
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	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
	ldr	r3, .L556+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #136
	stm	r3, {r0-r1}
	ldr	r3, .L556+36
	ldmia	r3, {r0-r1}
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #176
	stm	r3, {r0-r1}
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-84]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-80]
	ldr	r3, .L556+48
	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
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	r1, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #64
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L556+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #104
	stm	r3, {r0-r1}
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L556+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #144
	stm	r3, {r0-r1}
	ldr	r1, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #184
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L556+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L556+28
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L556+32
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L556+48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, .L556+36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-92]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-88]
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L556+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L556+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L556+48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L556+52
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #72
	stm	r3, {r0-r1}
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	ip, .L558+12
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+76
	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	r3, .L558+16
	ldmia	r3, {r2-r3}
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L558+80
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #112
	stm	r3, {r0-r1}
	ldr	r3, .L558+16
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-100]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-96]
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+80
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #152
	stm	r3, {r0-r1}
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+80
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #192
	stm	r3, {r0-r1}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r1, r1, r2
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #40
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #80
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #120
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #160
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L558+28
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-108]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-104]
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, .L558+28
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #48
	stm	r3, {r0-r1}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #88
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #128
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #168
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L558+24
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-116]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-112]
	ldr	r3, .L558+28
	ldmia	r3, {r2-r3}
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #56
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L558+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #96
	stm	r3, {r0-r1}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #176
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L558+28
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-124]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-120]
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	sub	r1, fp, #124
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #64
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #104
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L558+28
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #144
	stm	r3, {r0-r1}
	ldr	r1, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #184
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L558+28
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-132]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-128]
	ldr	r3, .L558+20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #132
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r3, .L558+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	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
	ldr	r3, .L558+28
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	ip, .L558
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+4
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	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	r6, r2
	mov	r7, r3
	ldr	r3, .L558+40
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	b	.L559
.L560:
	.align	2
.L558:
	.word	u
	.word	25000
	.word	c1
	.word	qs
	.word	c2
	.word	tmp3
	.word	con43
	.word	c3c4
	.word	u
	.word	25000
	.word	c1345
	.word	ty1
	.word	dt
	.word	ty2
	.word	dy1
	.word	dy2
	.word	njac
	.word	tmp1
	.word	lhs
	.word	tmp2
	.word	fjac
.L559:
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L558+32
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+36
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	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	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, .L558+28
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L558+32
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+36
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #72
	stm	r3, {r0-r1}
	ldr	r3, .L558+24
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L558+32
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+36
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #112
	stm	r3, {r0-r1}
	ldr	r3, .L558+28
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L558+32
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L558+36
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #152
	stm	r3, {r0-r1}
	ldr	r3, .L558+40
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+64
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #192
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L540:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	ble	.L541
	ldr	r1, [fp, #-32]
	ldr	r0, .L558+72
	bl	lhsinit
	mov	r3, #1
	str	r3, [fp, #-48]
	b	.L542
.L543:
	ldr	r3, .L558+48
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+68
	stm	r3, {r0-r1}
	ldr	r3, .L558+48
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L558+76
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-140]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-136]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r2-r3}
	sub	r1, fp, #140
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L558+68
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+56
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-148]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-144]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r2-r3}
	sub	r1, fp, #148
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #40
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-156]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-152]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r2-r3}
	sub	r1, fp, #156
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #80
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-164]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-160]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r2-r3}
	sub	r1, fp, #164
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #120
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-172]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-168]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r2-r3}
	sub	r1, fp, #172
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #160
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-180]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-176]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-188]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-184]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	sub	r1, fp, #188
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L558+68
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+60
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #48
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-196]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-192]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r2-r3}
	sub	r1, fp, #196
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #88
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-204]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-200]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r2-r3}
	sub	r1, fp, #204
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #128
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-212]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-208]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r2-r3}
	sub	r1, fp, #212
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+64
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r0-r1}
	ldr	r3, .L558+68
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L558+72
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #168
	stm	r3, {r0-r1}
	ldr	r3, .L558+76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-220]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-216]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L558+80
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	sub	r1, fp, #220
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-228]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-224]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r2-r3}
	sub	r1, fp, #228
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #56
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-236]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r2-r3}
	sub	r1, fp, #236
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+24
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #96
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-244]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r2-r3}
	sub	r1, fp, #244
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #136
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-252]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-248]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r2-r3}
	sub	r1, fp, #252
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #176
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-260]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-256]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	sub	r1, fp, #260
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-268]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-264]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r2-r3}
	sub	r1, fp, #268
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #64
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-276]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-272]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r2-r3}
	sub	r1, fp, #276
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #104
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-284]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-280]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r2-r3}
	sub	r1, fp, #284
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+32
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #144
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-292]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-288]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r2-r3}
	sub	r1, fp, #292
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #184
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-300]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-296]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	sub	r1, fp, #300
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-308]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-304]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r2-r3}
	sub	r1, fp, #308
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #72
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-316]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-312]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r2-r3}
	sub	r1, fp, #316
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #112
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-324]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-320]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r2-r3}
	sub	r1, fp, #324
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #152
	stm	r3, {r0-r1}
	ldr	r3, .L561+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-332]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-328]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561+8
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r2-r3}
	sub	r1, fp, #332
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r1, .L561
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L561+12
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #192
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	b	.L562
.L563:
	.align	2
.L561:
	.word	njac
	.word	tmp2
	.word	fjac
	.word	dy5
	.word	dy1
	.word	dy2
	.word	dy3
	.word	1072693248
	.word	dy4
	.word	tmp1
	.word	njac
	.word	lhs
.L562:
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L561+28
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L561+36
	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, .L561+16
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #200
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #240
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #280
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #320
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #360
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #208
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L561+28
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L561+36
	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, .L561+20
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #248
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #288
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #328
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #368
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #216
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #256
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L561+28
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L561+36
	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, .L561+24
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #296
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #336
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #376
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #224
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #264
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #304
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L561+28
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L561+36
	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, .L561+32
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #344
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #384
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #232
	stm	r3, {r0-r1}
	ldr	r3, .L561+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L561+40
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L561+44
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #272
	stm	r3, {r0-r1}
	ldr	r3, .L564
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L564+4
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #312
	stm	r3, {r0-r1}
	ldr	r3, .L564
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L564+4
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #352
	stm	r3, {r0-r1}
	ldr	r3, .L564
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L564+4
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L564+8
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L564
	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, .L564+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	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #392
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L564
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+12
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #400
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #440
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #480
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #520
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #560
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #408
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L564
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+16
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #448
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #488
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #528
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #568
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #416
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #456
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldr	r3, .L564
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L564
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+20
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #496
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	b	.L565
.L566:
	.align	2
.L564:
	.word	tmp1
	.word	njac
	.word	1072693248
	.word	dy1
	.word	dy2
	.word	dy3
	.word	dy4
	.word	fjac
	.word	tmp2
	.word	njac
	.word	tmp1
	.word	dy5
	.word	lhs+400
	.word	lhs+200
	.word	lhs
	.word	25000
	.word	rhs
.L565:
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #536
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #576
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #424
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #464
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #504
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L564+40
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+24
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #544
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #584
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #432
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #472
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #512
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #552
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+28
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	ldr	r1, .L564+36
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L564+40
	ldmia	r3, {r0-r1}
	ldr	r3, .L564+44
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L564+56
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #592
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L542:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	bgt	.L543
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r1, [fp, #-44]
	ldr	r3, .L564+60
	mul	r3, r1, r3
	add	r2, r2, r3
	ldr	r3, .L564+64
	add	r3, r2, r3
	mov	r2, r3
	ldr	r1, .L564+48
	ldr	r0, .L564+52
	bl	binvcrhs
	mov	r3, #1
	str	r3, [fp, #-48]
	b	.L544
.L545:
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L564+56
	add	ip, r3, r2
	ldr	r3, [fp, #-48]
	sub	r1, r3, #1
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L564+60
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L564+64
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L564+60
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L564+64
	add	r3, r2, r3
	mov	r2, r3
	mov	r1, r0
	mov	r0, ip
	bl	matvec_sub
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L564+56
	add	r0, r3, r2
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #400
	ldr	r3, .L564+56
	add	r1, r2, r3
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L564+56
	add	r3, r2, r3
	mov	r2, r3
	bl	matmul_sub
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L564+56
	add	ip, r2, r3
	ldr	r3, [fp, #-48]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #400
	ldr	r3, .L564+56
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L564+60
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L564+64
	add	r3, r2, r3
	mov	r2, r3
	mov	r1, r0
	mov	r0, ip
	bl	binvcrhs
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L544:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	bgt	.L545
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L564+56
	add	ip, r3, r2
	ldr	r3, [fp, #-32]
	sub	r1, r3, #1
	ldr	r3, [fp, #-52]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L564+60
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L564+64
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L564+60
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L564+64
	add	r3, r2, r3
	mov	r2, r3
	mov	r1, r0
	mov	r0, ip
	bl	matvec_sub
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L564+56
	add	r0, r3, r2
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #400
	ldr	r3, .L564+56
	add	r1, r2, r3
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L564+56
	add	r3, r2, r3
	mov	r2, r3
	bl	matmul_sub
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L564+56
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L564+60
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L564+64
	add	r3, r2, r3
	mov	r1, r3
	bl	binvrhs
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	str	r3, [fp, #-48]
	b	.L546
.L551:
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L547
.L550:
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L548
.L549:
	ldr	ip, .L567
	ldr	r2, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r3, [fp, #-44]
	mov	r0, r2
	lsl	r0, r0, #2
	add	r0, r0, r2
	mov	r2, r3
	lsl	r2, r2, #5
	sub	r2, r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	ip, .L567+4
	ldr	r3, [fp, #-36]
	ldr	r0, [fp, #-48]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	mov	r2, r0
	lsl	r2, r2, #2
	add	r2, r2, r0
	lsl	r3, r2, #4
	sub	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, [fp, #-40]
	add	r3, r2, r3
	add	r3, r3, #50
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-48]
	add	r0, r3, #1
	ldr	ip, .L567
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-44]
	mov	r1, r2
	lsl	r1, r1, #2
	add	r1, r1, r2
	mov	r2, r3
	lsl	r2, r2, #5
	sub	r2, r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r1, r2
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	ldr	r3, [fp, #-36]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	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	r4, r2
	mov	r5, r3
	ldr	ip, .L567
	ldr	r2, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r3, [fp, #-44]
	mov	r0, r2
	lsl	r0, r0, #2
	add	r0, r0, r2
	mov	r2, r3
	lsl	r2, r2, #5
	sub	r2, r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L548:
	ldr	r3, [fp, #-36]
	cmp	r3, #4
	ble	.L549
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L547:
	ldr	r3, [fp, #-40]
	cmp	r3, #4
	ble	.L550
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	str	r3, [fp, #-48]
.L546:
	ldr	r3, [fp, #-48]
	cmp	r3, #0
	bge	.L551
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L539:
	ldr	r3, .L567+8
	ldr	r3, [r3]
	sub	r2, r3, #1
	ldr	r3, [fp, #-52]
	cmp	r3, r2
	blt	.L552
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L538:
	ldr	r3, .L567+8
	ldr	r3, [r3, #8]
	sub	r2, r3, #1
	ldr	r3, [fp, #-44]
	cmp	r3, r2
	blt	.L553
	ldr	r3, .L567+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L555
	mov	r0, #7
	bl	timer_stop
.L555:
	nop
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L568:
	.align	2
.L567:
	.word	rhs
	.word	lhs
	.word	grid_points
	.word	timeron
	.size	y_solve, .-y_solve
	.align	2
	.global	z_solve
	.syntax unified
	.arm
	.fpu softvfp
	.type	z_solve, %function
z_solve:
	@ args = 0, pretend = 0, frame = 304
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #304
	ldr	r3, .L589
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L570
	mov	r0, #8
	bl	timer_start
.L570:
	ldr	r3, .L589+4
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	str	r3, [fp, #-32]
	mov	r3, #1
	str	r3, [fp, #-48]
	b	.L571
.L586:
	mov	r3, #1
	str	r3, [fp, #-52]
	b	.L572
.L585:
	mov	r3, #0
	str	r3, [fp, #-44]
	b	.L573
.L590:
	.align	2
.L589:
	.word	timeron
	.word	grid_points
	.word	tmp3
	.word	1072693248
	.word	qs
	.word	tmp1
	.word	square
	.word	c1
	.word	fjac
	.word	c2
	.word	u
	.word	25000
	.word	tmp2
.L574:
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r3, r2, r3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L589+12
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L589+20
	stm	r3, {r0-r1}
	ldr	r3, .L589+20
	ldmia	r3, {r0-r1}
	ldr	r3, .L589+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L589+48
	stm	r3, {r0-r1}
	ldr	r3, .L589+20
	ldmia	r3, {r0-r1}
	ldr	r3, .L589+48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L589+8
	stm	r3, {r0-r1}
	ldr	r1, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r1, r1, r2
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #40
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #80
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #120
	mov	r2, #0
	ldr	r3, .L589+12
	stm	r1, {r2-r3}
	ldr	r1, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #160
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-56]
	ldr	r3, .L589+48
	ldmia	r3, {r2-r3}
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L589+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #48
	stm	r3, {r0-r1}
	ldr	r1, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #88
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L589+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #128
	stm	r3, {r0-r1}
	ldr	r1, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #168
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-68]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-64]
	ldr	r3, .L589+48
	ldmia	r3, {r2-r3}
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	r1, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #56
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L589+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #96
	stm	r3, {r0-r1}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L589+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #136
	stm	r3, {r0-r1}
	ldr	r1, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #176
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	ip, .L589+16
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L589+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L589+48
	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	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	r3, .L589+36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-76]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-72]
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	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
	ldr	r3, .L589+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #64
	stm	r3, {r0-r1}
	ldr	r3, .L589+36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-84]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-80]
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	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
	ldr	r3, .L589+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #104
	stm	r3, {r0-r1}
	ldr	r3, .L589+36
	ldmia	r3, {r2-r3}
	mov	r0, #0
	mov	r1, #1073741824
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L589+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #144
	stm	r3, {r0-r1}
	ldr	r3, .L589+36
	ldmia	r3, {r0-r1}
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #184
	stm	r3, {r0-r1}
	ldr	r3, .L589+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L589+24
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L589+28
	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
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L589+48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L589+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, .L589+36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-92]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-88]
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L589+40
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L589+44
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L589+48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #72
	stm	r3, {r0-r1}
	ldr	r3, .L591+4
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-100]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-96]
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #112
	stm	r3, {r0-r1}
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	ip, .L591+12
	ldr	r3, [fp, #-48]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	lsl	r0, r0, #2
	add	r0, r0, r3
	lsl	r3, r0, #2
	add	r0, r0, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+68
	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	r3, .L591+4
	ldmia	r3, {r2-r3}
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L591
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #152
	stm	r3, {r0-r1}
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+80
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #192
	stm	r3, {r0-r1}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r1, r1, r2
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #40
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #80
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #120
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #160
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L591+32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-108]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-104]
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, .L591+32
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #48
	stm	r3, {r0-r1}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #88
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #128
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #168
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L591+32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-116]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-112]
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #56
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L591+32
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #96
	stm	r3, {r0-r1}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #176
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L591+28
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-124]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-120]
	ldr	r3, .L591+32
	ldmia	r3, {r2-r3}
	sub	r1, fp, #124
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #64
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #104
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L591+28
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+80
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #144
	stm	r3, {r0-r1}
	ldr	r1, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r1, r3, #184
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, .L591+32
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-132]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-128]
	ldr	r3, .L591+24
	ldmia	r3, {r2-r3}
	sub	r1, fp, #132
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r4-r5}
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r3, .L591+32
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r4-r5}
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	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
	ldr	r3, .L591+28
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r4-r5}
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	b	.L592
.L593:
	.align	2
.L591:
	.word	fjac
	.word	c2
	.word	c1
	.word	qs
	.word	c3
	.word	c4
	.word	tmp3
	.word	con43
	.word	c3c4
	.word	u
	.word	25000
	.word	c1345
	.word	tz1
	.word	dt
	.word	tz2
	.word	dz1
	.word	dz2
	.word	tmp2
	.word	fjac
	.word	njac
	.word	tmp1
	.word	lhs
.L592:
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	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	r6, r2
	mov	r7, r3
	ldr	r3, .L591+44
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	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	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, .L591+32
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #72
	stm	r3, {r0-r1}
	ldr	r3, .L591+32
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #112
	stm	r3, {r0-r1}
	ldr	r3, .L591+28
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	ip, .L591+36
	ldr	r3, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, .L591+40
	mul	r3, r0, r3
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	add	r3, ip, r3
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #152
	stm	r3, {r0-r1}
	ldr	r3, .L591+44
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+76
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, ip, r2
	add	r3, r3, #192
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L573:
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	ble	.L574
	ldr	r1, [fp, #-32]
	ldr	r0, .L591+84
	bl	lhsinit
	mov	r3, #1
	str	r3, [fp, #-44]
	b	.L575
.L576:
	ldr	r3, .L591+52
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+48
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+80
	stm	r3, {r0-r1}
	ldr	r3, .L591+52
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+56
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L591+68
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-140]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-136]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r2-r3}
	sub	r1, fp, #140
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L591+80
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+60
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-148]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-144]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r2-r3}
	sub	r1, fp, #148
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #40
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-156]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-152]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r2-r3}
	sub	r1, fp, #156
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #80
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-164]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-160]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r2-r3}
	sub	r1, fp, #164
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #120
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-172]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-168]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r2-r3}
	sub	r1, fp, #172
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #160
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-180]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-176]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	sub	r1, fp, #180
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-188]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-184]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	sub	r1, fp, #188
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L591+80
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+64
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #48
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-196]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-192]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r2-r3}
	sub	r1, fp, #196
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #88
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-204]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-200]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r2-r3}
	sub	r1, fp, #204
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #128
	stm	r3, {r0-r1}
	ldr	r3, .L591+68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-212]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-208]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+72
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r2-r3}
	sub	r1, fp, #212
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L591+76
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r0-r1}
	ldr	r3, .L591+80
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L591+84
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #168
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-220]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-216]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	sub	r1, fp, #220
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #16
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-228]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-224]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r2-r3}
	sub	r1, fp, #228
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #56
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-236]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r2-r3}
	sub	r1, fp, #236
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+20
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #96
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-244]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r2-r3}
	sub	r1, fp, #244
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #136
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-252]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-248]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r2-r3}
	sub	r1, fp, #252
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #176
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-260]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-256]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	sub	r1, fp, #260
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #24
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-268]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-264]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r2-r3}
	sub	r1, fp, #268
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #64
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-276]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-272]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r2-r3}
	sub	r1, fp, #276
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #104
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-284]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-280]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r2-r3}
	sub	r1, fp, #284
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+28
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #144
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-292]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-288]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r2-r3}
	sub	r1, fp, #292
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #184
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-300]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-296]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	sub	r1, fp, #300
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #32
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-308]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-304]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r2-r3}
	sub	r1, fp, #308
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #72
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-316]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-312]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r2-r3}
	sub	r1, fp, #316
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #112
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-324]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-320]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r2-r3}
	sub	r1, fp, #324
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #152
	stm	r3, {r0-r1}
	ldr	r3, .L594
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-332]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-328]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+4
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r2-r3}
	sub	r1, fp, #332
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	ldr	r1, .L594+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+40
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	ldr	r3, .L594+8
	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
	b	.L595
.L596:
	.align	2
.L594:
	.word	tmp2
	.word	fjac
	.word	dz5
	.word	dz1
	.word	dz2
	.word	dz3
	.word	1072693248
	.word	dz4
	.word	njac
	.word	lhs
	.word	tmp1
.L595:
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #192
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L594+24
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L594+40
	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, .L594+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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #200
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #240
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #280
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #320
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #360
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #208
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L594+24
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L594+40
	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, .L594+16
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #248
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #288
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #328
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #368
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #216
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #256
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L594+24
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L594+40
	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, .L594+20
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #296
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #336
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #376
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #224
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #264
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #304
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L594+24
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L594+40
	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, .L594+28
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #344
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #384
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L594+32
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L594+36
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #232
	stm	r3, {r0-r1}
	ldr	r3, .L594+40
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L597
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #272
	stm	r3, {r0-r1}
	ldr	r3, .L597+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L597
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #312
	stm	r3, {r0-r1}
	ldr	r3, .L597+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L597
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #352
	stm	r3, {r0-r1}
	ldr	r3, .L597+36
	ldmia	r3, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, .L597
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L597+4
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L597+36
	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, .L597+40
	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	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #392
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L597+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+8
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #400
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #40
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #440
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #80
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #480
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #120
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #520
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #160
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #560
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #8
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #408
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #48
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L597+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+12
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #448
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #88
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #488
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #128
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #528
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #168
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #568
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #16
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #416
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #56
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #456
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #96
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L597+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+16
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	b	.L598
.L599:
	.align	2
.L597:
	.word	njac
	.word	1072693248
	.word	dz1
	.word	dz2
	.word	dz3
	.word	dz4
	.word	fjac
	.word	tmp2
	.word	njac
	.word	tmp1
	.word	dz5
	.word	lhs+400
	.word	lhs+200
	.word	25000
	.word	rhs
	.word	lhs
.L598:
	add	r3, ip, r3
	add	r3, r3, #496
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #536
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #176
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #576
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #24
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #424
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #64
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #464
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #104
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #504
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #144
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L597+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+20
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #544
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #184
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #584
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #432
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #72
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #472
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #112
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #512
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #152
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #552
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+24
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldr	r1, .L597+32
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	add	r3, r1, r2
	add	r3, r3, #192
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+36
	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
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L597+36
	ldmia	r3, {r0-r1}
	ldr	r3, .L597+40
	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
	mov	r0, r2
	mov	r1, r3
	ldr	ip, .L597+60
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, ip, r3
	add	r3, r3, #592
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L575:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bgt	.L576
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r1, r3
	ldr	r3, .L597+56
	add	r3, r2, r3
	mov	r2, r3
	ldr	r1, .L597+44
	ldr	r0, .L597+48
	bl	binvcrhs
	mov	r3, #1
	str	r3, [fp, #-44]
	b	.L577
.L578:
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L597+60
	add	ip, r3, r2
	ldr	r3, [fp, #-44]
	sub	r0, r3, #1
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r1, r3
	ldr	r3, .L597+52
	mul	r3, r0, r3
	add	r2, r2, r3
	ldr	r3, .L597+56
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L597+52
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L597+56
	add	r3, r2, r3
	mov	r2, r3
	mov	r1, r0
	mov	r0, ip
	bl	matvec_sub
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L597+60
	add	r0, r3, r2
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #400
	ldr	r3, .L597+60
	add	r1, r2, r3
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L597+60
	add	r3, r2, r3
	mov	r2, r3
	bl	matmul_sub
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L597+60
	add	ip, r2, r3
	ldr	r3, [fp, #-44]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #400
	ldr	r3, .L597+60
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-44]
	ldr	r3, .L597+52
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L597+56
	add	r3, r2, r3
	mov	r2, r3
	mov	r1, r0
	mov	r0, ip
	bl	binvcrhs
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L577:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bgt	.L578
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L597+60
	add	ip, r3, r2
	ldr	r3, [fp, #-32]
	sub	r0, r3, #1
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r1, r3
	ldr	r3, .L597+52
	mul	r3, r0, r3
	add	r2, r2, r3
	ldr	r3, .L597+56
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-32]
	ldr	r3, .L597+52
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L597+56
	add	r3, r2, r3
	mov	r2, r3
	mov	r1, r0
	mov	r0, ip
	bl	matvec_sub
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L597+60
	add	r0, r3, r2
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #400
	ldr	r3, .L597+60
	add	r1, r2, r3
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L597+60
	add	r3, r2, r3
	mov	r2, r3
	bl	matmul_sub
	ldr	r3, [fp, #-32]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r3, #200
	ldr	r3, .L600
	add	r0, r2, r3
	ldr	r3, [fp, #-52]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	lsl	r3, r1, #3
	mov	r1, r3
	ldr	r2, [fp, #-48]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r2, [fp, #-32]
	ldr	r3, .L600+4
	mul	r3, r2, r3
	add	r2, r1, r3
	ldr	r3, .L600+8
	add	r3, r2, r3
	mov	r1, r3
	bl	binvrhs
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	str	r3, [fp, #-44]
	b	.L579
.L584:
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L580
.L583:
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L581
.L582:
	ldr	ip, .L600+8
	ldr	r2, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r3, [fp, #-44]
	mov	r0, r2
	lsl	r0, r0, #2
	add	r0, r0, r2
	mov	r2, r3
	lsl	r2, r2, #5
	sub	r2, r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r6-r7}
	ldr	ip, .L600
	ldr	r3, [fp, #-36]
	ldr	r0, [fp, #-44]
	mov	r1, r3
	lsl	r1, r1, #2
	add	r1, r1, r3
	mov	r2, r0
	lsl	r2, r2, #2
	add	r2, r2, r0
	lsl	r3, r2, #4
	sub	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, [fp, #-40]
	add	r3, r2, r3
	add	r3, r3, #50
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-44]
	add	r1, r3, #1
	ldr	lr, .L600+8
	ldr	r3, [fp, #-52]
	ldr	r0, [fp, #-48]
	mov	ip, r3
	lsl	ip, ip, #2
	add	ip, ip, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r2, r2, #2
	add	r2, r2, r1
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, ip, r2
	mov	r3, r0
	lsl	r3, r3, #5
	sub	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	add	r2, r2, r3
	ldr	r3, [fp, #-36]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, lr, r3
	ldmia	r3, {r2-r3}
	mov	r0, r4
	mov	r1, r5
	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	r4, r2
	mov	r5, r3
	ldr	ip, .L600+8
	ldr	r2, [fp, #-52]
	ldr	r1, [fp, #-48]
	ldr	r3, [fp, #-44]
	mov	r0, r2
	lsl	r0, r0, #2
	add	r0, r0, r2
	mov	r2, r3
	lsl	r2, r2, #5
	sub	r2, r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #2
	add	r2, r2, r3
	add	r2, r0, r2
	mov	r3, r1
	lsl	r3, r3, #5
	sub	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	add	r2, r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L581:
	ldr	r3, [fp, #-36]
	cmp	r3, #4
	ble	.L582
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L580:
	ldr	r3, [fp, #-40]
	cmp	r3, #4
	ble	.L583
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	str	r3, [fp, #-44]
.L579:
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	bge	.L584
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L572:
	ldr	r3, .L600+12
	ldr	r3, [r3]
	sub	r2, r3, #1
	ldr	r3, [fp, #-52]
	cmp	r3, r2
	blt	.L585
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L571:
	ldr	r3, .L600+12
	ldr	r3, [r3, #4]
	sub	r2, r3, #1
	ldr	r3, [fp, #-48]
	cmp	r3, r2
	blt	.L586
	ldr	r3, .L600+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L588
	mov	r0, #8
	bl	timer_stop
.L588:
	nop
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L601:
	.align	2
.L600:
	.word	lhs
	.word	25000
	.word	rhs
	.word	grid_points
	.word	timeron
	.size	z_solve, .-z_solve
	.section	.rodata
	.align	2
.LC65:
	.ascii	"\012\012 %s Benchmark Completed\012\000"
	.align	2
.LC66:
	.ascii	" Class           =                        %c\012\000"
	.align	2
.LC67:
	.ascii	" Size            =             %12ld\012\000"
	.align	2
.LC68:
	.ascii	" Size            =             %4dx%4dx%4d\012\000"
	.align	2
.LC69:
	.ascii	" Iterations      =             %12d\012\000"
	.align	2
.LC70:
	.ascii	" Time in seconds =             %12.2f\012\000"
	.align	2
.LC71:
	.ascii	" Mop/s total     =             %12.2f\012\000"
	.align	2
.LC72:
	.ascii	" Operation type  = %24s\012\000"
	.align	2
.LC73:
	.ascii	" Verification    =            NOT PERFORMED\000"
	.align	2
.LC74:
	.ascii	" Verification    =               SUCCESSFUL\000"
	.align	2
.LC75:
	.ascii	" Verification    =             UNSUCCESSFUL\000"
	.align	2
.LC76:
	.ascii	" Version         =             %12s\012\000"
	.align	2
.LC77:
	.ascii	" Compile date    =             %12s\012\000"
	.align	2
.LC78:
	.ascii	"\012 Compile options:\000"
	.align	2
.LC79:
	.ascii	"    CC           = %s\012\000"
	.align	2
.LC80:
	.ascii	"    CLINK        = %s\012\000"
	.align	2
.LC81:
	.ascii	"    C_LIB        = %s\012\000"
	.align	2
.LC82:
	.ascii	"    C_INC        = %s\012\000"
	.align	2
.LC83:
	.ascii	"    CFLAGS       = %s\012\000"
	.align	2
.LC84:
	.ascii	"    CLINKFLAGS   = %s\012\000"
	.align	2
.LC85:
	.ascii	"\012--------------------------------------\000"
	.align	2
.LC86:
	.ascii	" Please send all errors/feedbacks to:\000"
	.align	2
.LC87:
	.ascii	" Center for Manycore Programming\000"
	.align	2
.LC88:
	.ascii	" cmp@aces.snu.ac.kr\000"
	.align	2
.LC89:
	.ascii	" http://aces.snu.ac.kr\000"
	.align	2
.LC90:
	.ascii	"--------------------------------------\000"
	.text
	.align	2
	.global	c_print_results
	.syntax unified
	.arm
	.fpu softvfp
	.type	c_print_results, %function
c_print_results:
	@ args = 64, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r2, [fp, #-24]
	str	r3, [fp, #-28]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r1, [fp, #-16]
	ldr	r0, .L609
	bl	printf
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, .L609+4
	bl	printf
	ldr	r3, [fp, #4]
	cmp	r3, #0
	bne	.L603
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-28]
	cmp	r3, #0
	beq	.L604
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-28]
	mul	r3, r2, r3
	str	r3, [fp, #-8]
.L604:
	ldr	r1, [fp, #-8]
	ldr	r0, .L609+8
	bl	printf
	b	.L605
.L603:
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-28]
	ldr	r1, [fp, #-24]
	ldr	r0, .L609+12
	bl	printf
.L605:
	ldr	r1, [fp, #8]
	ldr	r0, .L609+16
	bl	printf
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	ldr	r0, .L609+20
	bl	printf
	add	r3, fp, #20
	ldmia	r3, {r2-r3}
	ldr	r0, .L609+24
	bl	printf
	ldr	r1, [fp, #28]
	ldr	r0, .L609+28
	bl	printf
	ldr	r3, [fp, #32]
	cmp	r3, #0
	bge	.L606
	ldr	r0, .L609+32
	bl	puts
	b	.L607
.L606:
	ldr	r3, [fp, #32]
	cmp	r3, #0
	beq	.L608
	ldr	r0, .L609+36
	bl	puts
	b	.L607
.L608:
	ldr	r0, .L609+40
	bl	puts
.L607:
	ldr	r1, [fp, #36]
	ldr	r0, .L609+44
	bl	printf
	ldr	r1, [fp, #40]
	ldr	r0, .L609+48
	bl	printf
	ldr	r0, .L609+52
	bl	puts
	ldr	r1, [fp, #44]
	ldr	r0, .L609+56
	bl	printf
	ldr	r1, [fp, #48]
	ldr	r0, .L609+60
	bl	printf
	ldr	r1, [fp, #52]
	ldr	r0, .L609+64
	bl	printf
	ldr	r1, [fp, #56]
	ldr	r0, .L609+68
	bl	printf
	ldr	r1, [fp, #60]
	ldr	r0, .L609+72
	bl	printf
	ldr	r1, [fp, #64]
	ldr	r0, .L609+76
	bl	printf
	ldr	r0, .L609+80
	bl	puts
	ldr	r0, .L609+84
	bl	puts
	ldr	r0, .L609+88
	bl	puts
	ldr	r0, .L609+92
	bl	puts
	ldr	r0, .L609+96
	bl	puts
	ldr	r0, .L609+100
	bl	puts
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L610:
	.align	2
.L609:
	.word	.LC65
	.word	.LC66
	.word	.LC67
	.word	.LC68
	.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	.LC89
	.word	.LC90
	.size	c_print_results, .-c_print_results
	.section	.rodata
	.align	2
.LC91:
	.ascii	"\012\012 %s Benchmark Completed.\012\000"
	.align	2
.LC92:
	.ascii	" Class           =             %12c\012\000"
	.align	2
.LC93:
	.ascii	"%15.0lf\000"
	.align	2
.LC94:
	.ascii	" Size            =          %15s\012\000"
	.align	2
.LC95:
	.ascii	" Size            =             %12d\012\000"
	.align	2
.LC96:
	.ascii	" Size            =           %4dx%4dx%4d\012\000"
	.align	2
.LC97:
	.ascii	" Time in seconds =             %12.2lf\012\000"
	.align	2
.LC98:
	.ascii	" Mop/s total     =          %15.2lf\012\000"
	.align	2
.LC99:
	.ascii	"SUCCESSFUL\000"
	.align	2
.LC100:
	.ascii	" Verification    =             %12s\012\000"
	.align	2
.LC101:
	.ascii	"UNSUCCESSFUL\000"
	.align	2
.LC102:
	.ascii	"\012 Compile options:\012    CC           = %s\012\000"
	.align	2
.LC103:
	.ascii	"    RAND         = %s\012\000"
	.align	2
.LC104:
	.ascii	"\012--------------------------------------\012 Plea"
	.ascii	"se send all errors/feedbacks to:\012 Center for Man"
	.ascii	"ycore Programming\012 cmp@aces.snu.ac.kr\012 http:/"
	.ascii	"/aces.snu.ac.kr\012--------------------------------"
	.ascii	"------\012\000"
	.align	2
.LC105:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	print_results
	.syntax unified
	.arm
	.fpu softvfp
	.type	print_results, %function
print_results:
	@ args = 68, pretend = 0, frame = 80
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #80
	str	r0, [fp, #-32]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	mov	r3, r1
	strb	r3, [fp, #-33]
	ldr	r3, [fp, #28]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #36]
	str	r3, [fp, #-52]
	ldr	r3, [fp, #40]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #44]
	str	r3, [fp, #-60]
	ldr	r3, [fp, #48]
	str	r3, [fp, #-64]
	ldr	r3, [fp, #52]
	str	r3, [fp, #-68]
	ldr	r3, [fp, #56]
	str	r3, [fp, #-72]
	ldr	r3, [fp, #60]
	str	r3, [fp, #-76]
	ldr	r3, [fp, #64]
	str	r3, [fp, #-80]
	ldr	r3, [fp, #68]
	str	r3, [fp, #-84]
	ldr	r3, .L620
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r1, [fp, #-32]
	ldr	r0, .L620+4
	bl	printf
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, .L620+8
	bl	printf
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	bne	.L612
	ldr	r3, [fp, #4]
	cmp	r3, #0
	bne	.L612
	ldr	r3, [fp, #-32]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #69
	bne	.L613
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #80
	bne	.L613
	ldr	r0, [fp, #-40]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	mov	r1, #1073741824
	bl	pow
	mov	r2, r0
	mov	r3, r1
	sub	r0, fp, #24
	ldr	r1, .L620+12
	bl	sprintf
	mov	r3, #14
	str	r3, [fp, #-28]
	sub	r2, fp, #24
	ldr	r3, [fp, #-28]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #46
	bne	.L614
	sub	r2, fp, #24
	ldr	r3, [fp, #-28]
	add	r3, r2, r3
	mov	r2, #32
	strb	r2, [r3]
	ldr	r3, [fp, #-28]
	sub	r3, r3, #1
	str	r3, [fp, #-28]
.L614:
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3, #-20]
	sub	r3, fp, #24
	mov	r1, r3
	ldr	r0, .L620+16
	bl	printf
	b	.L616
.L613:
	ldr	r1, [fp, #-40]
	ldr	r0, .L620+20
	bl	printf
	b	.L616
.L612:
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-44]
	ldr	r1, [fp, #-40]
	ldr	r0, .L620+24
	bl	printf
.L616:
	ldr	r1, [fp, #8]
	ldr	r0, .L620+28
	bl	printf
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	ldr	r0, .L620+32
	bl	printf
	add	r3, fp, #20
	ldmia	r3, {r2-r3}
	ldr	r0, .L620+36
	bl	printf
	ldr	r1, [fp, #-48]
	ldr	r0, .L620+40
	bl	printf
	ldr	r3, [fp, #32]
	cmp	r3, #0
	beq	.L617
	ldr	r1, .L620+44
	ldr	r0, .L620+48
	bl	printf
	b	.L618
.L617:
	ldr	r1, .L620+52
	ldr	r0, .L620+48
	bl	printf
.L618:
	ldr	r1, [fp, #-52]
	ldr	r0, .L620+56
	bl	printf
	ldr	r1, [fp, #-56]
	ldr	r0, .L620+60
	bl	printf
	ldr	r1, [fp, #-60]
	ldr	r0, .L620+64
	bl	printf
	ldr	r1, [fp, #-64]
	ldr	r0, .L620+68
	bl	printf
	ldr	r1, [fp, #-68]
	ldr	r0, .L620+72
	bl	printf
	ldr	r1, [fp, #-72]
	ldr	r0, .L620+76
	bl	printf
	ldr	r1, [fp, #-76]
	ldr	r0, .L620+80
	bl	printf
	ldr	r1, [fp, #-80]
	ldr	r0, .L620+84
	bl	printf
	ldr	r1, [fp, #-84]
	ldr	r0, .L620+88
	bl	printf
	ldr	r0, .L620+92
	bl	puts
	nop
	ldr	r3, .L620
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L619
	bl	__stack_chk_fail
.L619:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L621:
	.align	2
.L620:
	.word	.LC105
	.word	.LC91
	.word	.LC92
	.word	.LC93
	.word	.LC94
	.word	.LC95
	.word	.LC96
	.word	.LC69
	.word	.LC97
	.word	.LC98
	.word	.LC72
	.word	.LC99
	.word	.LC100
	.word	.LC101
	.word	.LC76
	.word	.LC77
	.word	.LC102
	.word	.LC80
	.word	.LC81
	.word	.LC82
	.word	.LC83
	.word	.LC84
	.word	.LC103
	.word	.LC104
	.size	print_results, .-print_results
	.global	__aeabi_d2iz
	.align	2
	.global	randlc
	.syntax unified
	.arm
	.fpu softvfp
	.type	randlc, %function
randlc:
	@ args = 0, pretend = 0, frame = 128
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #128
	str	r0, [fp, #-128]
	str	r2, [fp, #-140]
	str	r3, [fp, #-136]
	mov	r2, #0
	mov	r3, #1048576000
	str	r2, [fp, #-124]
	str	r3, [fp, #-120]
	sub	r3, fp, #124
	ldmia	r3, {r2-r3}
	sub	r1, fp, #124
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-116]
	str	r3, [fp, #-112]
	mov	r2, #0
	ldr	r3, .L624
	str	r2, [fp, #-108]
	str	r3, [fp, #-104]
	sub	r3, fp, #108
	ldmia	r3, {r2-r3}
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-100]
	str	r3, [fp, #-96]
	sub	r3, fp, #140
	ldmia	r3, {r2-r3}
	sub	r1, fp, #124
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-92]
	str	r3, [fp, #-88]
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-84]
	str	r3, [fp, #-80]
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #140
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-76]
	str	r3, [fp, #-72]
	ldr	r3, [fp, #-128]
	ldmia	r3, {r2-r3}
	sub	r1, fp, #124
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-92]
	str	r3, [fp, #-88]
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-68]
	str	r3, [fp, #-64]
	ldr	r3, [fp, #-128]
	ldmia	r3, {r4-r5}
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	sub	r1, fp, #84
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	sub	r1, fp, #76
	ldmia	r1, {r0-r1}
	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, #-92]
	str	r3, [fp, #-88]
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	sub	r1, fp, #124
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	sub	r1, fp, #76
	ldmia	r1, {r0-r1}
	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]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-128]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-128]
	ldmia	r3, {r2-r3}
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L625:
	.align	2
.L624:
	.word	1096810496
	.size	randlc, .-randlc
	.align	2
	.global	vranlc
	.syntax unified
	.arm
	.fpu softvfp
	.type	vranlc, %function
vranlc:
	@ args = 4, pretend = 0, frame = 128
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #128
	str	r0, [fp, #-128]
	str	r1, [fp, #-132]
	str	r2, [fp, #-140]
	str	r3, [fp, #-136]
	mov	r2, #0
	mov	r3, #1048576000
	str	r2, [fp, #-116]
	str	r3, [fp, #-112]
	sub	r3, fp, #116
	ldmia	r3, {r2-r3}
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-108]
	str	r3, [fp, #-104]
	mov	r2, #0
	ldr	r3, .L630
	str	r2, [fp, #-100]
	str	r3, [fp, #-96]
	sub	r3, fp, #100
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-92]
	str	r3, [fp, #-88]
	sub	r3, fp, #140
	ldmia	r3, {r2-r3}
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-84]
	str	r3, [fp, #-80]
	sub	r1, fp, #84
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-76]
	str	r3, [fp, #-72]
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #140
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-68]
	str	r3, [fp, #-64]
	mov	r3, #0
	str	r3, [fp, #-120]
	b	.L627
.L628:
	ldr	r3, [fp, #-132]
	ldmia	r3, {r2-r3}
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-84]
	str	r3, [fp, #-80]
	sub	r1, fp, #84
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #-132]
	ldmia	r3, {r4-r5}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #76
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	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, #-84]
	str	r3, [fp, #-80]
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	sub	r1, fp, #116
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #84
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #100
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	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, #-28]
	str	r3, [fp, #-24]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	sub	r1, fp, #108
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-132]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-132]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-120]
	lsl	r3, r3, #3
	ldr	r2, [fp, #4]
	add	r4, r2, r3
	sub	r3, fp, #108
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L627:
	ldr	r2, [fp, #-120]
	ldr	r3, [fp, #-128]
	cmp	r2, r3
	blt	.L628
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L631:
	.align	2
.L630:
	.word	1096810496
	.size	vranlc, .-vranlc
	.data
	.align	2
	.type	sec.6614, %object
	.size	sec.6614, 4
sec.6614:
	.word	-1
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
