	.file	"852556.c"
	.intel_syntax noprefix
	.text
	.type	Cf, @function
Cf:
.LFB6:
	.cfi_startproc
	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	rax, QWORD PTR -8[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -8[rbp]
	movss	xmm2, DWORD PTR [rax]
	pxor	xmm1, xmm1
	mulss	xmm1, xmm0
	addss	xmm1, xmm2
	movss	DWORD PTR -16[rbp], xmm1
	movss	DWORD PTR -12[rbp], xmm0
	mov	rax, QWORD PTR -16[rbp]
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	Cf, .-Cf
	.type	_pCf, @function
_pCf:
.LFB8:
	.cfi_startproc
	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	rax, QWORD PTR -8[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	_pCf, .-_pCf
	.data
	.align 16
	.type	junk, @object
	.size	junk, 30
junk:
	.string	"\n@(#)LIBF77 VERSION 19990503\n"
	.text
	.type	spow_ui, @function
spow_ui:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -20[rbp], xmm0
	mov	DWORD PTR -24[rbp], edi
	movss	xmm0, DWORD PTR .LC1[rip]
	movss	DWORD PTR -12[rbp], xmm0
	cmp	DWORD PTR -24[rbp], 0
	je	.L6
	cmp	DWORD PTR -24[rbp], 0
	jns	.L7
	neg	DWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR .LC1[rip]
	divss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR -20[rbp], xmm0
.L7:
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	mov	QWORD PTR -8[rbp], rax
.L11:
	mov	rax, QWORD PTR -8[rbp]
	and	eax, 1
	test	rax, rax
	je	.L8
	movss	xmm0, DWORD PTR -12[rbp]
	mulss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR -12[rbp], xmm0
.L8:
	shr	QWORD PTR -8[rbp]
	cmp	QWORD PTR -8[rbp], 0
	je	.L13
	movss	xmm0, DWORD PTR -20[rbp]
	mulss	xmm0, xmm0
	movss	DWORD PTR -20[rbp], xmm0
	jmp	.L11
.L13:
	nop
.L6:
	movss	xmm0, DWORD PTR -12[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	spow_ui, .-spow_ui
	.type	dpow_ui, @function
dpow_ui:
.LFB11:
	.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
	mov	DWORD PTR -28[rbp], edi
	movsd	xmm0, QWORD PTR .LC2[rip]
	movsd	QWORD PTR -16[rbp], xmm0
	cmp	DWORD PTR -28[rbp], 0
	je	.L15
	cmp	DWORD PTR -28[rbp], 0
	jns	.L16
	neg	DWORD PTR -28[rbp]
	movsd	xmm0, QWORD PTR .LC2[rip]
	divsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR -24[rbp], xmm0
.L16:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	mov	QWORD PTR -8[rbp], rax
.L20:
	mov	rax, QWORD PTR -8[rbp]
	and	eax, 1
	test	rax, rax
	je	.L17
	movsd	xmm0, QWORD PTR -16[rbp]
	mulsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR -16[rbp], xmm0
.L17:
	shr	QWORD PTR -8[rbp]
	cmp	QWORD PTR -8[rbp], 0
	je	.L22
	movsd	xmm0, QWORD PTR -24[rbp]
	mulsd	xmm0, xmm0
	movsd	QWORD PTR -24[rbp], xmm0
	jmp	.L20
.L22:
	nop
.L15:
	movsd	xmm0, QWORD PTR -16[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	dpow_ui, .-dpow_ui
	.type	cpow_ui, @function
cpow_ui:
.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, 64
	movq	rax, xmm0
	mov	QWORD PTR -40[rbp], rax
	movss	xmm1, DWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR -36[rbp]
	movss	DWORD PTR -48[rbp], xmm1
	movss	DWORD PTR -44[rbp], xmm0
	mov	DWORD PTR -52[rbp], edi
	movss	xmm0, DWORD PTR -48[rbp]
	movss	DWORD PTR -32[rbp], xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	movss	DWORD PTR -28[rbp], xmm0
	movss	xmm0, DWORD PTR .LC1[rip]
	movss	DWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -4[rbp], xmm0
	cmp	DWORD PTR -52[rbp], 0
	je	.L31
	cmp	DWORD PTR -52[rbp], 0
	jns	.L25
	neg	DWORD PTR -52[rbp]
	movss	xmm1, DWORD PTR -28[rbp]
	movss	xmm0, DWORD PTR -32[rbp]
	movaps	xmm3, xmm1
	movaps	xmm2, xmm0
	pxor	xmm1, xmm1
	movss	xmm0, DWORD PTR .LC1[rip]
	call	__divsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -48[rbp], rax
	movss	xmm0, DWORD PTR -48[rbp]
	movss	DWORD PTR -32[rbp], xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	movss	DWORD PTR -28[rbp], xmm0
.L25:
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	mov	QWORD PTR -16[rbp], rax
	pxor	xmm0, xmm0
	movss	DWORD PTR -20[rbp], xmm0
	movss	xmm0, DWORD PTR .LC1[rip]
	movss	DWORD PTR -24[rbp], xmm0
.L29:
	mov	rax, QWORD PTR -16[rbp]
	and	eax, 1
	test	rax, rax
	je	.L26
	movss	xmm2, DWORD PTR -28[rbp]
	movss	xmm1, DWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -20[rbp]
	mov	eax, DWORD PTR -24[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	__mulsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -8[rbp], rax
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR -24[rbp], xmm0
	movss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR -20[rbp], xmm0
.L26:
	shr	QWORD PTR -16[rbp]
	cmp	QWORD PTR -16[rbp], 0
	je	.L32
	movss	xmm2, DWORD PTR -28[rbp]
	movss	xmm1, DWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -32[rbp]
	movaps	xmm3, xmm2
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	__mulsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -48[rbp], rax
	movss	xmm0, DWORD PTR -48[rbp]
	movss	DWORD PTR -32[rbp], xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	movss	DWORD PTR -28[rbp], xmm0
	jmp	.L29
.L31:
	pxor	xmm0, xmm0
	movss	DWORD PTR -20[rbp], xmm0
	movss	xmm0, DWORD PTR .LC1[rip]
	movss	DWORD PTR -24[rbp], xmm0
	jmp	.L24
.L32:
	nop
.L24:
	movss	xmm1, DWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR -60[rbp], xmm1
	movss	DWORD PTR -56[rbp], xmm0
	mov	rax, QWORD PTR -60[rbp]
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	cpow_ui, .-cpow_ui
	.type	zpow_ui, @function
zpow_ui:
.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, 96
	movq	rax, xmm0
	movapd	xmm0, xmm1
	mov	rdx, rax
	movq	rax, xmm0
	movq	xmm1, rdx
	movq	xmm0, rax
	movsd	QWORD PTR -80[rbp], xmm1
	movsd	QWORD PTR -72[rbp], xmm0
	mov	DWORD PTR -84[rbp], edi
	movsd	xmm0, QWORD PTR -80[rbp]
	movsd	QWORD PTR -48[rbp], xmm0
	movsd	xmm0, QWORD PTR -72[rbp]
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC2[rip]
	movsd	QWORD PTR -16[rbp], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	cmp	DWORD PTR -84[rbp], 0
	je	.L41
	cmp	DWORD PTR -84[rbp], 0
	jns	.L35
	neg	DWORD PTR -84[rbp]
	movsd	xmm1, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR .LC2[rip]
	movapd	xmm3, xmm1
	movapd	xmm2, xmm0
	pxor	xmm1, xmm1
	movq	xmm0, rax
	call	__divdc3@PLT
	movq	rax, xmm0
	movapd	xmm0, xmm1
	mov	QWORD PTR -80[rbp], rax
	movsd	QWORD PTR -72[rbp], xmm0
	movsd	xmm0, QWORD PTR -80[rbp]
	movsd	QWORD PTR -48[rbp], xmm0
	movsd	xmm0, QWORD PTR -72[rbp]
	movsd	QWORD PTR -40[rbp], xmm0
.L35:
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	mov	QWORD PTR -56[rbp], rax
	pxor	xmm0, xmm0
	movsd	QWORD PTR -24[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC2[rip]
	movsd	QWORD PTR -32[rbp], xmm0
.L39:
	mov	rax, QWORD PTR -56[rbp]
	and	eax, 1
	test	rax, rax
	je	.L36
	movsd	xmm2, QWORD PTR -40[rbp]
	movsd	xmm1, QWORD PTR -48[rbp]
	movsd	xmm0, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	__muldc3@PLT
	movq	rax, xmm0
	movapd	xmm0, xmm1
	mov	QWORD PTR -16[rbp], rax
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR -24[rbp], xmm0
.L36:
	shr	QWORD PTR -56[rbp]
	cmp	QWORD PTR -56[rbp], 0
	je	.L42
	movsd	xmm2, QWORD PTR -40[rbp]
	movsd	xmm1, QWORD PTR -48[rbp]
	movsd	xmm0, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -48[rbp]
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	__muldc3@PLT
	movq	rax, xmm0
	movapd	xmm0, xmm1
	mov	QWORD PTR -80[rbp], rax
	movsd	QWORD PTR -72[rbp], xmm0
	movsd	xmm0, QWORD PTR -80[rbp]
	movsd	QWORD PTR -48[rbp], xmm0
	movsd	xmm0, QWORD PTR -72[rbp]
	movsd	QWORD PTR -40[rbp], xmm0
	jmp	.L39
.L41:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -24[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC2[rip]
	movsd	QWORD PTR -32[rbp], xmm0
	jmp	.L34
.L42:
	nop
.L34:
	movsd	xmm1, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	rax, xmm1
	movq	rdx, xmm0
	movq	xmm1, rdx
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	zpow_ui, .-zpow_ui
	.type	pow_ii, @function
pow_ii:
.LFB14:
	.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 -20[rbp], edi
	mov	DWORD PTR -24[rbp], esi
	cmp	DWORD PTR -24[rbp], 0
	jg	.L44
	cmp	DWORD PTR -24[rbp], 0
	je	.L45
	cmp	DWORD PTR -20[rbp], 1
	jne	.L46
.L45:
	mov	DWORD PTR -12[rbp], 1
	jmp	.L44
.L46:
	cmp	DWORD PTR -20[rbp], -1
	je	.L47
	cmp	DWORD PTR -20[rbp], 0
	jne	.L48
	mov	eax, 1
	cdq
	idiv	DWORD PTR -20[rbp]
	jmp	.L49
.L48:
	mov	eax, 0
.L49:
	mov	DWORD PTR -12[rbp], eax
	jmp	.L44
.L47:
	neg	DWORD PTR -24[rbp]
.L44:
	cmp	DWORD PTR -24[rbp], 0
	jg	.L50
	cmp	DWORD PTR -24[rbp], 0
	je	.L51
	cmp	DWORD PTR -20[rbp], 1
	je	.L51
	cmp	DWORD PTR -20[rbp], -1
	jne	.L51
.L50:
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -12[rbp], 1
.L55:
	mov	rax, QWORD PTR -8[rbp]
	and	eax, 1
	test	rax, rax
	je	.L52
	mov	eax, DWORD PTR -12[rbp]
	imul	eax, DWORD PTR -20[rbp]
	mov	DWORD PTR -12[rbp], eax
.L52:
	shr	QWORD PTR -8[rbp]
	cmp	QWORD PTR -8[rbp], 0
	je	.L57
	mov	eax, DWORD PTR -20[rbp]
	imul	eax, eax
	mov	DWORD PTR -20[rbp], eax
	jmp	.L55
.L57:
	nop
.L51:
	mov	eax, DWORD PTR -12[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	pow_ii, .-pow_ii
	.type	dmaxloc_, @function
dmaxloc_:
.LFB15:
	.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	DWORD PTR -32[rbp], edx
	mov	QWORD PTR -40[rbp], rcx
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	eax, DWORD PTR -28[rbp]
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	add	eax, 1
	mov	DWORD PTR -16[rbp], eax
	jmp	.L59
.L62:
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	comisd	xmm0, QWORD PTR -8[rbp]
	jbe	.L60
	mov	eax, DWORD PTR -16[rbp]
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
.L60:
	add	DWORD PTR -16[rbp], 1
.L59:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jle	.L62
	mov	eax, DWORD PTR -12[rbp]
	sub	eax, DWORD PTR -28[rbp]
	add	eax, 1
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	dmaxloc_, .-dmaxloc_
	.type	smaxloc_, @function
smaxloc_:
.LFB16:
	.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	DWORD PTR -32[rbp], edx
	mov	QWORD PTR -40[rbp], rcx
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -12[rbp], xmm0
	mov	eax, DWORD PTR -28[rbp]
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	add	eax, 1
	mov	DWORD PTR -8[rbp], eax
	jmp	.L66
.L69:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	comiss	xmm0, DWORD PTR -12[rbp]
	jbe	.L67
	mov	eax, DWORD PTR -8[rbp]
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -12[rbp], xmm0
.L67:
	add	DWORD PTR -8[rbp], 1
.L66:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jle	.L69
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, DWORD PTR -28[rbp]
	add	eax, 1
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	smaxloc_, .-smaxloc_
	.data
	.align 8
	.type	c_b1, @object
	.size	c_b1, 8
c_b1:
	.long	1065353216
	.long	0
	.align 4
	.type	c__1, @object
	.size	c__1, 4
c__1:
	.long	1
	.section	.rodata
.LC5:
	.string	"S"
.LC6:
	.string	"U"
.LC8:
	.string	"No transpose"
.LC10:
	.string	"Transpose"
	.text
	.globl	clahef_rook_
	.type	clahef_rook_, @function
clahef_rook_:
.LFB21:
	.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, 600
	.cfi_offset 3, -24
	mov	QWORD PTR -248[rbp], rdi
	mov	QWORD PTR -256[rbp], rsi
	mov	QWORD PTR -264[rbp], rdx
	mov	QWORD PTR -272[rbp], rcx
	mov	QWORD PTR -280[rbp], r8
	mov	QWORD PTR -288[rbp], r9
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -296[rbp], rax
	mov	rax, QWORD PTR 24[rbp]
	mov	QWORD PTR -304[rbp], rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR -312[rbp], rax
	mov	rax, QWORD PTR 40[rbp]
	mov	QWORD PTR -320[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -288[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -144[rbp], eax
	mov	eax, DWORD PTR -144[rbp]
	add	eax, 1
	mov	DWORD PTR -140[rbp], eax
	mov	eax, DWORD PTR -140[rbp]
	cdqe
	sal	rax, 3
	neg	rax
	add	QWORD PTR -280[rbp], rax
	sub	QWORD PTR -296[rbp], 4
	mov	rax, QWORD PTR -312[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -136[rbp], eax
	mov	eax, DWORD PTR -136[rbp]
	add	eax, 1
	mov	DWORD PTR -132[rbp], eax
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	neg	rax
	add	QWORD PTR -304[rbp], rax
	mov	rax, QWORD PTR -320[rbp]
	mov	DWORD PTR [rax], 0
	movss	xmm0, DWORD PTR .LC4[rip]
	movss	DWORD PTR -128[rbp], xmm0
	lea	rdi, .LC5[rip]
	call	slamch_@PLT
	movd	eax, xmm0
	mov	DWORD PTR -124[rbp], eax
	mov	rax, QWORD PTR -248[rbp]
	lea	rsi, .LC6[rip]
	mov	rdi, rax
	call	lsame_@PLT
	test	eax, eax
	je	.L73
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -208[rbp], eax
.L74:
	mov	rax, QWORD PTR -264[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -256[rbp]
	mov	ecx, DWORD PTR [rax]
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -96[rbp], eax
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR -264[rbp]
	mov	ecx, DWORD PTR [rax]
	mov	eax, edx
	sub	eax, ecx
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jl	.L75
	mov	rax, QWORD PTR -264[rbp]
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	edx, eax
	jl	.L295
.L75:
	mov	eax, DWORD PTR -208[rbp]
	test	eax, eax
	jle	.L295
	mov	DWORD PTR -176[rbp], 1
	mov	eax, DWORD PTR -208[rbp]
	mov	DWORD PTR -180[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	cmp	eax, 1
	jle	.L79
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L79:
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jle	.L80
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	movss	xmm0, DWORD PTR .LC7[rip]
	movss	DWORD PTR -88[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rdi, [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	r10, [rdx+rax]
	mov	r9, QWORD PTR -288[rbp]
	lea	rcx, -88[rbp]
	lea	rdx, -232[rbp]
	lea	rax, -208[rbp]
	sub	rsp, 8
	lea	r8, c__1[rip]
	push	r8
	push	rdi
	lea	rdi, c_b1[rip]
	push	rdi
	push	QWORD PTR -312[rbp]
	push	rsi
	mov	r8, r10
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	call	cgemv_@PLT
	add	rsp, 48
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
.L80:
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L271
	movss	xmm0, DWORD PTR -120[rbp]
	jmp	.L83
.L271:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
.L83:
	movss	DWORD PTR -116[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	cmp	eax, 1
	jle	.L84
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	icamax_@PLT
	mov	DWORD PTR -188[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -328[rbp], rax
	movss	xmm0, DWORD PTR -324[rbp]
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -112[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L272
	movss	xmm1, DWORD PTR -120[rbp]
	jmp	.L87
.L272:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm1, xmm0
.L87:
	movss	xmm0, DWORD PTR -112[rbp]
	pxor	xmm2, xmm2
	comiss	xmm0, xmm2
	jb	.L273
	movss	xmm0, DWORD PTR -112[rbp]
	jmp	.L90
.L273:
	movss	xmm0, DWORD PTR -112[rbp]
	movss	xmm2, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm2
.L90:
	addss	xmm0, xmm1
	movss	DWORD PTR -160[rbp], xmm0
	jmp	.L91
.L84:
	pxor	xmm0, xmm0
	movss	DWORD PTR -160[rbp], xmm0
.L91:
	movss	xmm0, DWORD PTR -116[rbp]
	comiss	xmm0, DWORD PTR -160[rbp]
	jb	.L274
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -116[rbp]
	setnp	al
	mov	edx, 0
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -116[rbp]
	cmovne	eax, edx
	jmp	.L94
.L274:
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -160[rbp]
	setnp	al
	mov	edx, 0
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -160[rbp]
	cmovne	eax, edx
.L94:
	test	al, al
	je	.L95
	mov	rax, QWORD PTR -320[rbp]
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	jne	.L96
	mov	edx, DWORD PTR -208[rbp]
	mov	rax, QWORD PTR -320[rbp]
	mov	DWORD PTR [rax], edx
.L96:
	mov	eax, DWORD PTR -208[rbp]
	mov	DWORD PTR -164[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	cmp	eax, 1
	jle	.L97
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	jmp	.L97
.L95:
	movss	xmm0, DWORD PTR -128[rbp]
	mulss	xmm0, DWORD PTR -160[rbp]
	comiss	xmm0, DWORD PTR -116[rbp]
	seta	al
	xor	eax, 1
	test	al, al
	je	.L98
	mov	eax, DWORD PTR -208[rbp]
	mov	DWORD PTR -164[rbp], eax
	jmp	.L99
.L98:
	mov	DWORD PTR -192[rbp], 0
.L100:
	cmp	DWORD PTR -188[rbp], 1
	jle	.L101
	mov	eax, DWORD PTR -188[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -188[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L101:
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -188[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -188[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -188[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -188[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jle	.L102
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	movss	xmm0, DWORD PTR .LC7[rip]
	movss	DWORD PTR -88[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rdi, [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	r10, [rdx+rax]
	mov	r9, QWORD PTR -288[rbp]
	lea	rcx, -88[rbp]
	lea	rdx, -232[rbp]
	lea	rax, -208[rbp]
	sub	rsp, 8
	lea	r8, c__1[rip]
	push	r8
	push	rdi
	lea	rdi, c_b1[rip]
	push	rdi
	push	QWORD PTR -312[rbp]
	push	rsi
	mov	r8, r10
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	call	cgemv_@PLT
	add	rsp, 48
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
.L102:
	mov	eax, DWORD PTR -208[rbp]
	cmp	DWORD PTR -188[rbp], eax
	je	.L103
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -188[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	icamax_@PLT
	mov	edx, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -184[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -184[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -184[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -336[rbp], rax
	movss	xmm0, DWORD PTR -332[rbp]
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -112[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L275
	movss	xmm1, DWORD PTR -120[rbp]
	jmp	.L106
.L275:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm1, xmm0
.L106:
	movss	xmm0, DWORD PTR -112[rbp]
	pxor	xmm2, xmm2
	comiss	xmm0, xmm2
	jb	.L276
	movss	xmm0, DWORD PTR -112[rbp]
	jmp	.L109
.L276:
	movss	xmm0, DWORD PTR -112[rbp]
	movss	xmm2, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm2
.L109:
	addss	xmm0, xmm1
	movss	DWORD PTR -148[rbp], xmm0
	jmp	.L110
.L103:
	pxor	xmm0, xmm0
	movss	DWORD PTR -148[rbp], xmm0
.L110:
	cmp	DWORD PTR -188[rbp], 1
	jle	.L111
	mov	eax, DWORD PTR -188[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	icamax_@PLT
	mov	DWORD PTR -108[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -108[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -108[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -344[rbp], rax
	movss	xmm0, DWORD PTR -340[rbp]
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -112[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L277
	movss	xmm1, DWORD PTR -120[rbp]
	jmp	.L114
.L277:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm1, xmm0
.L114:
	movss	xmm0, DWORD PTR -112[rbp]
	pxor	xmm2, xmm2
	comiss	xmm0, xmm2
	jb	.L278
	movss	xmm0, DWORD PTR -112[rbp]
	jmp	.L117
.L278:
	movss	xmm0, DWORD PTR -112[rbp]
	movss	xmm2, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm2
.L117:
	addss	xmm0, xmm1
	movss	DWORD PTR -104[rbp], xmm0
	movss	xmm0, DWORD PTR -104[rbp]
	comiss	xmm0, DWORD PTR -148[rbp]
	jbe	.L111
	movss	xmm0, DWORD PTR -104[rbp]
	movss	DWORD PTR -148[rbp], xmm0
	mov	eax, DWORD PTR -108[rbp]
	mov	DWORD PTR -184[rbp], eax
.L111:
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L279
	movss	xmm0, DWORD PTR -120[rbp]
	jmp	.L121
.L279:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
.L121:
	movss	xmm1, DWORD PTR -128[rbp]
	mulss	xmm1, DWORD PTR -148[rbp]
	comiss	xmm1, xmm0
	seta	al
	xor	eax, 1
	test	al, al
	je	.L122
	mov	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -164[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -208[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	DWORD PTR -192[rbp], 1
	jmp	.L123
.L122:
	mov	eax, DWORD PTR -180[rbp]
	cmp	eax, DWORD PTR -184[rbp]
	je	.L124
	movss	xmm0, DWORD PTR -160[rbp]
	comiss	xmm0, DWORD PTR -148[rbp]
	jb	.L280
.L124:
	mov	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -164[rbp], eax
	mov	DWORD PTR -176[rbp], 2
	mov	DWORD PTR -192[rbp], 1
	jmp	.L123
.L280:
	mov	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -180[rbp], eax
	movss	xmm0, DWORD PTR -148[rbp]
	movss	DWORD PTR -160[rbp], xmm0
	mov	eax, DWORD PTR -184[rbp]
	mov	DWORD PTR -188[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -208[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L123:
	cmp	DWORD PTR -192[rbp], 0
	jne	.L99
	jmp	.L100
.L99:
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, DWORD PTR -176[rbp]
	add	eax, 1
	mov	DWORD PTR -196[rbp], eax
	mov	rax, QWORD PTR -264[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -196[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -256[rbp]
	mov	ecx, DWORD PTR [rax]
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -92[rbp], eax
	cmp	DWORD PTR -176[rbp], 2
	jne	.L127
	mov	eax, DWORD PTR -208[rbp]
	cmp	DWORD PTR -180[rbp], eax
	je	.L127
	mov	eax, DWORD PTR -180[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -180[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -180[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	mov	rcx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rcx
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -180[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	cmp	DWORD PTR -180[rbp], 1
	jle	.L128
	mov	eax, DWORD PTR -180[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -180[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L128:
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jle	.L129
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -288[rbp]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L129:
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -196[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -92[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -312[rbp]
	mov	rdx, QWORD PTR -312[rbp]
	lea	rax, -232[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L127:
	mov	eax, DWORD PTR -196[rbp]
	cmp	DWORD PTR -164[rbp], eax
	je	.L130
	mov	eax, DWORD PTR -164[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -196[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -196[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -196[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -164[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -164[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -196[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	mov	rcx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rcx
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	eax, DWORD PTR -196[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -164[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	cmp	DWORD PTR -164[rbp], 1
	jle	.L131
	mov	eax, DWORD PTR -164[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -164[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -196[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L131:
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jle	.L132
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -196[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -288[rbp]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L132:
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -196[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -92[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -92[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -196[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -312[rbp]
	mov	rdx, QWORD PTR -312[rbp]
	lea	rax, -232[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L130:
	cmp	DWORD PTR -176[rbp], 1
	jne	.L133
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -208[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	eax, DWORD PTR -208[rbp]
	cmp	eax, 1
	jle	.L97
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -100[rbp], xmm0
	movss	xmm0, DWORD PTR -100[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L281
	movss	xmm0, DWORD PTR -100[rbp]
	jmp	.L136
.L281:
	movss	xmm0, DWORD PTR -100[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
.L136:
	comiss	xmm0, DWORD PTR -124[rbp]
	jb	.L282
	movss	xmm0, DWORD PTR .LC1[rip]
	divss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -204[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	lea	rsi, -204[rbp]
	lea	rax, -232[rbp]
	lea	rcx, c__1[rip]
	mov	rdi, rax
	call	csscal_@PLT
	jmp	.L139
.L282:
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	DWORD PTR -172[rbp], 1
	jmp	.L140
.L141:
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -172[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -172[rbp]
	add	eax, edx
	mov	DWORD PTR -224[rbp], eax
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	divss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -88[rbp], xmm0
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR 4[rax]
	divss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR 4[rax], xmm0
	add	DWORD PTR -172[rbp], 1
.L140:
	mov	eax, DWORD PTR -232[rbp]
	cmp	DWORD PTR -172[rbp], eax
	jle	.L141
.L139:
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	jmp	.L97
.L133:
	mov	eax, DWORD PTR -208[rbp]
	cmp	eax, 2
	jle	.L142
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -40[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR 4[rax]
	movss	DWORD PTR -36[rbp], xmm0
	lea	rax, -40[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -352[rbp], rax
	movss	xmm1, DWORD PTR -352[rbp]
	movss	xmm0, DWORD PTR -348[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -80[rbp]
	mov	rdi, rax
	call	_pCf
	movss	xmm4, DWORD PTR -596[rbp]
	movss	DWORD PTR [rax], xmm4
	movss	xmm0, DWORD PTR -600[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -360[rbp], rax
	movss	xmm1, DWORD PTR -360[rbp]
	movss	xmm0, DWORD PTR -356[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -80[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -368[rbp], rax
	movss	xmm1, DWORD PTR -368[rbp]
	movss	xmm0, DWORD PTR -364[rbp]
	movss	DWORD PTR -604[rbp], xmm1
	movss	DWORD PTR -608[rbp], xmm0
	lea	rax, -88[rbp]
	mov	rdi, rax
	call	_pCf
	mov	rbx, rax
	movss	xmm3, DWORD PTR -608[rbp]
	movss	xmm2, DWORD PTR -604[rbp]
	movss	xmm1, DWORD PTR -600[rbp]
	movss	xmm0, DWORD PTR -596[rbp]
	call	__divsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -376[rbp], rax
	movss	xmm1, DWORD PTR -376[rbp]
	movss	xmm0, DWORD PTR -372[rbp]
	movss	DWORD PTR [rbx], xmm1
	movss	DWORD PTR 4[rbx], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR -48[rbp], xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR -44[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -384[rbp], rax
	movss	xmm1, DWORD PTR -384[rbp]
	movss	xmm0, DWORD PTR -380[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -40[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -392[rbp], rax
	movss	xmm1, DWORD PTR -392[rbp]
	movss	xmm0, DWORD PTR -388[rbp]
	movss	DWORD PTR -604[rbp], xmm1
	movss	DWORD PTR -608[rbp], xmm0
	lea	rax, -88[rbp]
	mov	rdi, rax
	call	_pCf
	mov	rbx, rax
	movss	xmm3, DWORD PTR -608[rbp]
	movss	xmm2, DWORD PTR -604[rbp]
	movss	xmm1, DWORD PTR -600[rbp]
	movss	xmm0, DWORD PTR -596[rbp]
	call	__divsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -400[rbp], rax
	movss	xmm1, DWORD PTR -400[rbp]
	movss	xmm0, DWORD PTR -396[rbp]
	movss	DWORD PTR [rbx], xmm1
	movss	DWORD PTR 4[rbx], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR -32[rbp], xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR -28[rbp], xmm0
	movss	xmm1, DWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -32[rbp]
	mulss	xmm0, xmm1
	movss	xmm2, DWORD PTR -44[rbp]
	movss	xmm1, DWORD PTR -28[rbp]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	movss	DWORD PTR -88[rbp], xmm0
	movss	xmm1, DWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -28[rbp]
	mulss	xmm1, xmm0
	movss	xmm2, DWORD PTR -44[rbp]
	movss	xmm0, DWORD PTR -32[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	movss	xmm2, DWORD PTR .LC1[rip]
	movaps	xmm1, xmm0
	subss	xmm1, xmm2
	movss	xmm0, DWORD PTR .LC1[rip]
	divss	xmm0, xmm1
	movss	DWORD PTR -100[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 2
	mov	DWORD PTR -232[rbp], eax
	mov	DWORD PTR -212[rbp], 1
	jmp	.L143
.L144:
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -224[rbp], eax
	movss	xmm1, DWORD PTR -48[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm2, DWORD PTR -44[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR 4[rax]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	movss	DWORD PTR -64[rbp], xmm0
	movss	xmm1, DWORD PTR -48[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm1, xmm0
	movss	xmm2, DWORD PTR -44[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -60[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -220[rbp], eax
	movss	xmm0, DWORD PTR -64[rbp]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -72[rbp], xmm0
	movss	xmm0, DWORD PTR -60[rbp]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR 4[rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -68[rbp], xmm0
	lea	rax, -72[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -408[rbp], rax
	movss	xmm1, DWORD PTR -408[rbp]
	movss	xmm0, DWORD PTR -404[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -40[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -416[rbp], rax
	movss	xmm1, DWORD PTR -416[rbp]
	movss	xmm0, DWORD PTR -412[rbp]
	movss	DWORD PTR -604[rbp], xmm1
	movss	DWORD PTR -608[rbp], xmm0
	lea	rax, -80[rbp]
	mov	rdi, rax
	call	_pCf
	mov	rbx, rax
	movss	xmm3, DWORD PTR -608[rbp]
	movss	xmm2, DWORD PTR -604[rbp]
	movss	xmm1, DWORD PTR -600[rbp]
	movss	xmm0, DWORD PTR -596[rbp]
	call	__divsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -424[rbp], rax
	movss	xmm1, DWORD PTR -424[rbp]
	movss	xmm0, DWORD PTR -420[rbp]
	movss	DWORD PTR [rbx], xmm1
	movss	DWORD PTR 4[rbx], xmm0
	movss	xmm0, DWORD PTR -80[rbp]
	mulss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -88[rbp], xmm0
	movss	xmm0, DWORD PTR -76[rbp]
	mulss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -224[rbp], eax
	movss	xmm1, DWORD PTR -32[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm2, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR 4[rax]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	movss	DWORD PTR -64[rbp], xmm0
	movss	xmm1, DWORD PTR -32[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm1, xmm0
	movss	xmm2, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -60[rbp], xmm0
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -220[rbp], eax
	movss	xmm0, DWORD PTR -64[rbp]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -72[rbp], xmm0
	movss	xmm0, DWORD PTR -60[rbp]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR 4[rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -68[rbp], xmm0
	lea	rax, -40[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -432[rbp], rax
	movss	xmm1, DWORD PTR -432[rbp]
	movss	xmm0, DWORD PTR -428[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -56[rbp]
	mov	rdi, rax
	call	_pCf
	movss	xmm5, DWORD PTR -596[rbp]
	movss	DWORD PTR [rax], xmm5
	movss	xmm0, DWORD PTR -600[rbp]
	movss	DWORD PTR 4[rax], xmm0
	lea	rax, -72[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -440[rbp], rax
	movss	xmm1, DWORD PTR -440[rbp]
	movss	xmm0, DWORD PTR -436[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -56[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -448[rbp], rax
	movss	xmm1, DWORD PTR -448[rbp]
	movss	xmm0, DWORD PTR -444[rbp]
	movss	DWORD PTR -604[rbp], xmm1
	movss	DWORD PTR -608[rbp], xmm0
	lea	rax, -80[rbp]
	mov	rdi, rax
	call	_pCf
	mov	rbx, rax
	movss	xmm3, DWORD PTR -608[rbp]
	movss	xmm2, DWORD PTR -604[rbp]
	movss	xmm1, DWORD PTR -600[rbp]
	movss	xmm0, DWORD PTR -596[rbp]
	call	__divsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -456[rbp], rax
	movss	xmm1, DWORD PTR -456[rbp]
	movss	xmm0, DWORD PTR -452[rbp]
	movss	DWORD PTR [rbx], xmm1
	movss	DWORD PTR 4[rbx], xmm0
	movss	xmm0, DWORD PTR -80[rbp]
	mulss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -88[rbp], xmm0
	movss	xmm0, DWORD PTR -76[rbp]
	mulss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -212[rbp]
	add	eax, 1
	mov	DWORD PTR -212[rbp], eax
.L143:
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -232[rbp]
	cmp	edx, eax
	jle	.L144
.L142:
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR 4[rdx]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR 4[rdx]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR 4[rdx]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 2
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -96[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
.L97:
	cmp	DWORD PTR -176[rbp], 1
	jne	.L145
	mov	eax, DWORD PTR -208[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -164[rbp]
	mov	DWORD PTR [rdx], eax
	jmp	.L146
.L145:
	mov	eax, DWORD PTR -208[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -296[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -180[rbp]
	neg	edx
	mov	DWORD PTR [rax], edx
	mov	eax, DWORD PTR -208[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -296[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -164[rbp]
	neg	edx
	mov	DWORD PTR [rax], edx
.L146:
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, DWORD PTR -176[rbp]
	mov	DWORD PTR -208[rbp], eax
	jmp	.L74
.L295:
	nop
.L78:
	mov	rax, QWORD PTR -264[rbp]
	mov	eax, DWORD PTR [rax]
	neg	eax
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	ecx, -1[rax]
	mov	rax, QWORD PTR -264[rbp]
	mov	ebx, DWORD PTR [rax]
	mov	eax, ecx
	cdq
	idiv	ebx
	mov	edx, eax
	mov	rax, QWORD PTR -264[rbp]
	mov	eax, DWORD PTR [rax]
	imul	eax, edx
	add	eax, 1
	mov	DWORD PTR -212[rbp], eax
	jmp	.L147
.L153:
	mov	rax, QWORD PTR -264[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	mov	edx, DWORD PTR -212[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -224[rbp], eax
	mov	edx, DWORD PTR -228[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cmp	edx, eax
	cmovle	eax, edx
	mov	DWORD PTR -200[rbp], eax
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -200[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -212[rbp]
	mov	DWORD PTR -168[rbp], eax
	jmp	.L148
.L149:
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	mov	DWORD PTR -224[rbp], eax
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	mov	DWORD PTR -220[rbp], eax
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -168[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -224[rbp], eax
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -220[rbp], eax
	movss	xmm0, DWORD PTR .LC7[rip]
	movss	DWORD PTR -88[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rdi, [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	r10, [rdx+rax]
	mov	r9, QWORD PTR -288[rbp]
	lea	rcx, -88[rbp]
	lea	rdx, -220[rbp]
	lea	rax, -224[rbp]
	sub	rsp, 8
	lea	r8, c__1[rip]
	push	r8
	push	rdi
	lea	rdi, c_b1[rip]
	push	rdi
	push	QWORD PTR -312[rbp]
	push	rsi
	mov	r8, r10
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	call	cgemv_@PLT
	add	rsp, 48
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	mov	DWORD PTR -224[rbp], eax
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	mov	DWORD PTR -220[rbp], eax
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	add	DWORD PTR -168[rbp], 1
.L148:
	mov	eax, DWORD PTR -228[rbp]
	cmp	DWORD PTR -168[rbp], eax
	jle	.L149
	mov	eax, DWORD PTR -212[rbp]
	cmp	eax, 1
	jle	.L150
	mov	eax, DWORD PTR -212[rbp]
	sub	eax, 1
	mov	DWORD PTR -228[rbp], eax
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -224[rbp], eax
	movss	xmm0, DWORD PTR .LC7[rip]
	movss	DWORD PTR -88[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -212[rbp]
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rdi, [rdx+rax]
	mov	eax, DWORD PTR -96[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	lea	r9, -88[rbp]
	lea	r8, -224[rbp]
	lea	rdx, -200[rbp]
	lea	rax, -228[rbp]
	sub	rsp, 8
	push	QWORD PTR -288[rbp]
	push	rdi
	lea	rdi, c_b1[rip]
	push	rdi
	push	QWORD PTR -312[rbp]
	push	rsi
	push	QWORD PTR -288[rbp]
	push	rcx
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC10[rip]
	lea	rdi, .LC8[rip]
	call	cgemm_@PLT
	add	rsp, 64
.L150:
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -232[rbp]
	add	eax, edx
	mov	DWORD PTR -212[rbp], eax
.L147:
	mov	eax, DWORD PTR -232[rbp]
	test	eax, eax
	jns	.L151
	mov	eax, DWORD PTR -212[rbp]
	test	eax, eax
	setg	al
	jmp	.L152
.L151:
	mov	eax, DWORD PTR -212[rbp]
	cmp	eax, 1
	setle	al
.L152:
	test	al, al
	jne	.L153
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	mov	DWORD PTR -212[rbp], eax
.L154:
	mov	DWORD PTR -176[rbp], 1
	mov	DWORD PTR -156[rbp], 1
	mov	eax, DWORD PTR -212[rbp]
	mov	DWORD PTR -168[rbp], eax
	mov	eax, DWORD PTR -212[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -296[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -152[rbp], eax
	cmp	DWORD PTR -152[rbp], 0
	jns	.L155
	neg	DWORD PTR -152[rbp]
	mov	eax, DWORD PTR -212[rbp]
	add	eax, 1
	mov	DWORD PTR -212[rbp], eax
	mov	eax, DWORD PTR -212[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -296[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	neg	eax
	mov	DWORD PTR -156[rbp], eax
	mov	DWORD PTR -176[rbp], 2
.L155:
	mov	eax, DWORD PTR -212[rbp]
	add	eax, 1
	mov	DWORD PTR -212[rbp], eax
	mov	eax, DWORD PTR -152[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	je	.L156
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -212[rbp]
	cmp	edx, eax
	jl	.L156
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -212[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -212[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -212[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -152[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -288[rbp]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L156:
	add	DWORD PTR -168[rbp], 1
	cmp	DWORD PTR -176[rbp], 2
	jne	.L157
	mov	eax, DWORD PTR -156[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	je	.L157
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -212[rbp]
	cmp	edx, eax
	jl	.L157
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -212[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -212[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -212[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -156[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -288[rbp]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L157:
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -212[rbp]
	cmp	edx, eax
	jle	.L158
	jmp	.L154
.L158:
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	ecx, DWORD PTR -208[rbp]
	sub	eax, ecx
	mov	edx, eax
	mov	rax, QWORD PTR -272[rbp]
	mov	DWORD PTR [rax], edx
	jmp	.L159
.L73:
	mov	DWORD PTR -208[rbp], 1
.L160:
	mov	rax, QWORD PTR -264[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jg	.L161
	mov	rax, QWORD PTR -264[rbp]
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	edx, eax
	jl	.L296
.L161:
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jl	.L296
	mov	DWORD PTR -176[rbp], 1
	mov	eax, DWORD PTR -208[rbp]
	mov	DWORD PTR -180[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jle	.L165
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -208[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L165:
	mov	eax, DWORD PTR -208[rbp]
	cmp	eax, 1
	jle	.L166
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -228[rbp], eax
	movss	xmm0, DWORD PTR .LC7[rip]
	movss	DWORD PTR -88[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rdi, [rdx+rax]
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	r10, [rdx+rax]
	mov	r9, QWORD PTR -288[rbp]
	lea	rcx, -88[rbp]
	lea	rdx, -228[rbp]
	lea	rax, -232[rbp]
	sub	rsp, 8
	lea	r8, c__1[rip]
	push	r8
	push	rdi
	lea	rdi, c_b1[rip]
	push	rdi
	push	QWORD PTR -312[rbp]
	push	rsi
	mov	r8, r10
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	call	cgemv_@PLT
	add	rsp, 48
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
.L166:
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L283
	movss	xmm0, DWORD PTR -120[rbp]
	jmp	.L169
.L283:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
.L169:
	movss	DWORD PTR -116[rbp], xmm0
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jle	.L170
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	icamax_@PLT
	mov	edx, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -188[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -464[rbp], rax
	movss	xmm0, DWORD PTR -460[rbp]
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -112[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L284
	movss	xmm1, DWORD PTR -120[rbp]
	jmp	.L173
.L284:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm1, xmm0
.L173:
	movss	xmm0, DWORD PTR -112[rbp]
	pxor	xmm2, xmm2
	comiss	xmm0, xmm2
	jb	.L285
	movss	xmm0, DWORD PTR -112[rbp]
	jmp	.L176
.L285:
	movss	xmm0, DWORD PTR -112[rbp]
	movss	xmm2, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm2
.L176:
	addss	xmm0, xmm1
	movss	DWORD PTR -160[rbp], xmm0
	jmp	.L177
.L170:
	pxor	xmm0, xmm0
	movss	DWORD PTR -160[rbp], xmm0
.L177:
	movss	xmm0, DWORD PTR -116[rbp]
	comiss	xmm0, DWORD PTR -160[rbp]
	jb	.L286
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -116[rbp]
	setnp	al
	mov	edx, 0
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -116[rbp]
	cmovne	eax, edx
	jmp	.L180
.L286:
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -160[rbp]
	setnp	al
	mov	edx, 0
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -160[rbp]
	cmovne	eax, edx
.L180:
	test	al, al
	je	.L181
	mov	rax, QWORD PTR -320[rbp]
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	jne	.L182
	mov	edx, DWORD PTR -208[rbp]
	mov	rax, QWORD PTR -320[rbp]
	mov	DWORD PTR [rax], edx
.L182:
	mov	eax, DWORD PTR -208[rbp]
	mov	DWORD PTR -164[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jle	.L183
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -208[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	jmp	.L183
.L181:
	movss	xmm0, DWORD PTR -128[rbp]
	mulss	xmm0, DWORD PTR -160[rbp]
	comiss	xmm0, DWORD PTR -116[rbp]
	seta	al
	xor	eax, 1
	test	al, al
	je	.L184
	mov	eax, DWORD PTR -208[rbp]
	mov	DWORD PTR -164[rbp], eax
	jmp	.L185
.L184:
	mov	DWORD PTR -192[rbp], 0
.L186:
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -188[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -188[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -188[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -188[rbp], eax
	jge	.L187
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	sub	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -188[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -188[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -188[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L187:
	mov	eax, DWORD PTR -208[rbp]
	cmp	eax, 1
	jle	.L188
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -228[rbp], eax
	movss	xmm0, DWORD PTR .LC7[rip]
	movss	DWORD PTR -88[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rdi, [rdx+rax]
	mov	edx, DWORD PTR -188[rbp]
	mov	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	r10, [rdx+rax]
	mov	r9, QWORD PTR -288[rbp]
	lea	rcx, -88[rbp]
	lea	rdx, -228[rbp]
	lea	rax, -232[rbp]
	sub	rsp, 8
	lea	r8, c__1[rip]
	push	r8
	push	rdi
	lea	rdi, c_b1[rip]
	push	rdi
	push	QWORD PTR -312[rbp]
	push	rsi
	mov	r8, r10
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	call	cgemv_@PLT
	add	rsp, 48
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
.L188:
	mov	eax, DWORD PTR -208[rbp]
	cmp	DWORD PTR -188[rbp], eax
	je	.L189
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -188[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	ebx, -1[rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	icamax_@PLT
	add	eax, ebx
	mov	DWORD PTR -184[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -184[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -184[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -472[rbp], rax
	movss	xmm0, DWORD PTR -468[rbp]
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -112[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L287
	movss	xmm1, DWORD PTR -120[rbp]
	jmp	.L192
.L287:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm1, xmm0
.L192:
	movss	xmm0, DWORD PTR -112[rbp]
	pxor	xmm2, xmm2
	comiss	xmm0, xmm2
	jb	.L288
	movss	xmm0, DWORD PTR -112[rbp]
	jmp	.L195
.L288:
	movss	xmm0, DWORD PTR -112[rbp]
	movss	xmm2, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm2
.L195:
	addss	xmm0, xmm1
	movss	DWORD PTR -148[rbp], xmm0
	jmp	.L196
.L189:
	pxor	xmm0, xmm0
	movss	DWORD PTR -148[rbp], xmm0
.L196:
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -188[rbp], eax
	jge	.L197
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	sub	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -188[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	icamax_@PLT
	mov	edx, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -108[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -108[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -108[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -480[rbp], rax
	movss	xmm0, DWORD PTR -476[rbp]
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -112[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L289
	movss	xmm1, DWORD PTR -120[rbp]
	jmp	.L200
.L289:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm1, xmm0
.L200:
	movss	xmm0, DWORD PTR -112[rbp]
	pxor	xmm2, xmm2
	comiss	xmm0, xmm2
	jb	.L290
	movss	xmm0, DWORD PTR -112[rbp]
	jmp	.L203
.L290:
	movss	xmm0, DWORD PTR -112[rbp]
	movss	xmm2, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm2
.L203:
	addss	xmm0, xmm1
	movss	DWORD PTR -104[rbp], xmm0
	movss	xmm0, DWORD PTR -104[rbp]
	comiss	xmm0, DWORD PTR -148[rbp]
	jbe	.L197
	movss	xmm0, DWORD PTR -104[rbp]
	movss	DWORD PTR -148[rbp], xmm0
	mov	eax, DWORD PTR -108[rbp]
	mov	DWORD PTR -184[rbp], eax
.L197:
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	movss	xmm0, DWORD PTR -120[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L291
	movss	xmm0, DWORD PTR -120[rbp]
	jmp	.L207
.L291:
	movss	xmm0, DWORD PTR -120[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
.L207:
	movss	xmm1, DWORD PTR -128[rbp]
	mulss	xmm1, DWORD PTR -148[rbp]
	comiss	xmm1, xmm0
	seta	al
	xor	eax, 1
	test	al, al
	je	.L208
	mov	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -164[rbp], eax
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	ecx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	DWORD PTR -192[rbp], 1
	jmp	.L209
.L208:
	mov	eax, DWORD PTR -180[rbp]
	cmp	eax, DWORD PTR -184[rbp]
	je	.L210
	movss	xmm0, DWORD PTR -160[rbp]
	comiss	xmm0, DWORD PTR -148[rbp]
	jb	.L292
.L210:
	mov	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -164[rbp], eax
	mov	DWORD PTR -176[rbp], 2
	mov	DWORD PTR -192[rbp], 1
	jmp	.L209
.L292:
	mov	eax, DWORD PTR -188[rbp]
	mov	DWORD PTR -180[rbp], eax
	movss	xmm0, DWORD PTR -148[rbp]
	movss	DWORD PTR -160[rbp], xmm0
	mov	eax, DWORD PTR -184[rbp]
	mov	DWORD PTR -188[rbp], eax
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	ecx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L209:
	cmp	DWORD PTR -192[rbp], 0
	jne	.L185
	jmp	.L186
.L185:
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -176[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -196[rbp], eax
	cmp	DWORD PTR -176[rbp], 2
	jne	.L213
	mov	eax, DWORD PTR -208[rbp]
	cmp	DWORD PTR -180[rbp], eax
	je	.L213
	mov	eax, DWORD PTR -180[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -180[rbp]
	sub	eax, edx
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -208[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	mov	rcx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rcx
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -180[rbp]
	sub	eax, edx
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -180[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -180[rbp], eax
	jge	.L214
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	sub	eax, DWORD PTR -180[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -180[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -180[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -180[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L214:
	mov	eax, DWORD PTR -208[rbp]
	cmp	eax, 1
	jle	.L215
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	edx, DWORD PTR -180[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -288[rbp]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L215:
	mov	edx, DWORD PTR -180[rbp]
	mov	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -312[rbp]
	mov	rdx, QWORD PTR -312[rbp]
	lea	rax, -196[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L213:
	mov	eax, DWORD PTR -196[rbp]
	cmp	DWORD PTR -164[rbp], eax
	je	.L216
	mov	eax, DWORD PTR -164[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -196[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -196[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	edx, DWORD PTR -196[rbp]
	mov	eax, DWORD PTR -164[rbp]
	sub	eax, edx
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -196[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -196[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -196[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	mov	rcx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rcx
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	edx, DWORD PTR -196[rbp]
	mov	eax, DWORD PTR -164[rbp]
	sub	eax, edx
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -196[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -164[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -164[rbp], eax
	jge	.L217
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	sub	eax, DWORD PTR -164[rbp]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -164[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -164[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -164[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -196[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
.L217:
	mov	eax, DWORD PTR -208[rbp]
	cmp	eax, 1
	jle	.L218
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	edx, DWORD PTR -164[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	edx, DWORD PTR -196[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -288[rbp]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -232[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L218:
	mov	edx, DWORD PTR -164[rbp]
	mov	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	mov	edx, DWORD PTR -196[rbp]
	mov	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -312[rbp]
	mov	rdx, QWORD PTR -312[rbp]
	lea	rax, -196[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L216:
	cmp	DWORD PTR -176[rbp], 1
	jne	.L219
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	ecx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, ecx
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rcx+rax]
	lea	rax, -232[rbp]
	lea	r8, c__1[rip]
	mov	rcx, rdx
	lea	rdx, c__1[rip]
	mov	rdi, rax
	call	ccopy_@PLT
	mov	rax, QWORD PTR -256[rbp]
	mov	edx, DWORD PTR [rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jle	.L183
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -100[rbp], xmm0
	movss	xmm0, DWORD PTR -100[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L293
	movss	xmm0, DWORD PTR -100[rbp]
	jmp	.L222
.L293:
	movss	xmm0, DWORD PTR -100[rbp]
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
.L222:
	comiss	xmm0, DWORD PTR -124[rbp]
	jb	.L294
	movss	xmm0, DWORD PTR .LC1[rip]
	divss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -204[rbp], xmm0
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rdx, rax
	lea	rsi, -204[rbp]
	lea	rax, -232[rbp]
	lea	rcx, c__1[rip]
	mov	rdi, rax
	call	csscal_@PLT
	jmp	.L225
.L294:
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	mov	DWORD PTR -172[rbp], eax
	jmp	.L226
.L227:
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -172[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -172[rbp]
	add	eax, edx
	mov	DWORD PTR -224[rbp], eax
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	divss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -88[rbp], xmm0
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR 4[rax]
	divss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR 4[rax], xmm0
	add	DWORD PTR -172[rbp], 1
.L226:
	mov	eax, DWORD PTR -232[rbp]
	cmp	DWORD PTR -172[rbp], eax
	jle	.L227
.L225:
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	jmp	.L183
.L219:
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -208[rbp]
	cmp	edx, eax
	jle	.L228
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -40[rbp], xmm0
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR 4[rax]
	movss	DWORD PTR -36[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -488[rbp], rax
	movss	xmm1, DWORD PTR -488[rbp]
	movss	xmm0, DWORD PTR -484[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -40[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -496[rbp], rax
	movss	xmm1, DWORD PTR -496[rbp]
	movss	xmm0, DWORD PTR -492[rbp]
	movss	DWORD PTR -604[rbp], xmm1
	movss	DWORD PTR -608[rbp], xmm0
	lea	rax, -88[rbp]
	mov	rdi, rax
	call	_pCf
	mov	rbx, rax
	movss	xmm3, DWORD PTR -608[rbp]
	movss	xmm2, DWORD PTR -604[rbp]
	movss	xmm1, DWORD PTR -600[rbp]
	movss	xmm0, DWORD PTR -596[rbp]
	call	__divsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -504[rbp], rax
	movss	xmm1, DWORD PTR -504[rbp]
	movss	xmm0, DWORD PTR -500[rbp]
	movss	DWORD PTR [rbx], xmm1
	movss	DWORD PTR 4[rbx], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR -48[rbp], xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR -44[rbp], xmm0
	lea	rax, -40[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -512[rbp], rax
	movss	xmm1, DWORD PTR -512[rbp]
	movss	xmm0, DWORD PTR -508[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -80[rbp]
	mov	rdi, rax
	call	_pCf
	movss	xmm6, DWORD PTR -596[rbp]
	movss	DWORD PTR [rax], xmm6
	movss	xmm0, DWORD PTR -600[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -520[rbp], rax
	movss	xmm1, DWORD PTR -520[rbp]
	movss	xmm0, DWORD PTR -516[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -80[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -528[rbp], rax
	movss	xmm1, DWORD PTR -528[rbp]
	movss	xmm0, DWORD PTR -524[rbp]
	movss	DWORD PTR -604[rbp], xmm1
	movss	DWORD PTR -608[rbp], xmm0
	lea	rax, -88[rbp]
	mov	rdi, rax
	call	_pCf
	mov	rbx, rax
	movss	xmm3, DWORD PTR -608[rbp]
	movss	xmm2, DWORD PTR -604[rbp]
	movss	xmm1, DWORD PTR -600[rbp]
	movss	xmm0, DWORD PTR -596[rbp]
	call	__divsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -536[rbp], rax
	movss	xmm1, DWORD PTR -536[rbp]
	movss	xmm0, DWORD PTR -532[rbp]
	movss	DWORD PTR [rbx], xmm1
	movss	DWORD PTR 4[rbx], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR -32[rbp], xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR -28[rbp], xmm0
	movss	xmm1, DWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -32[rbp]
	mulss	xmm0, xmm1
	movss	xmm2, DWORD PTR -44[rbp]
	movss	xmm1, DWORD PTR -28[rbp]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	movss	DWORD PTR -88[rbp], xmm0
	movss	xmm1, DWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR -28[rbp]
	mulss	xmm1, xmm0
	movss	xmm2, DWORD PTR -44[rbp]
	movss	xmm0, DWORD PTR -32[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	movss	xmm2, DWORD PTR .LC1[rip]
	movaps	xmm1, xmm0
	subss	xmm1, xmm2
	movss	xmm0, DWORD PTR .LC1[rip]
	divss	xmm0, xmm1
	movss	DWORD PTR -100[rbp], xmm0
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 2
	mov	DWORD PTR -212[rbp], eax
	jmp	.L229
.L230:
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -224[rbp], eax
	movss	xmm1, DWORD PTR -48[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm2, DWORD PTR -44[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR 4[rax]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	movss	DWORD PTR -64[rbp], xmm0
	movss	xmm1, DWORD PTR -48[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm1, xmm0
	movss	xmm2, DWORD PTR -44[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -60[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -220[rbp], eax
	movss	xmm0, DWORD PTR -64[rbp]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -72[rbp], xmm0
	movss	xmm0, DWORD PTR -60[rbp]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR 4[rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -68[rbp], xmm0
	lea	rax, -40[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -544[rbp], rax
	movss	xmm1, DWORD PTR -544[rbp]
	movss	xmm0, DWORD PTR -540[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	cvtss2sd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	xmm1, DWORD PTR .LC9[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -56[rbp]
	mov	rdi, rax
	call	_pCf
	movss	xmm7, DWORD PTR -596[rbp]
	movss	DWORD PTR [rax], xmm7
	movss	xmm0, DWORD PTR -600[rbp]
	movss	DWORD PTR 4[rax], xmm0
	lea	rax, -72[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -552[rbp], rax
	movss	xmm1, DWORD PTR -552[rbp]
	movss	xmm0, DWORD PTR -548[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -56[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -560[rbp], rax
	movss	xmm1, DWORD PTR -560[rbp]
	movss	xmm0, DWORD PTR -556[rbp]
	movss	DWORD PTR -604[rbp], xmm1
	movss	DWORD PTR -608[rbp], xmm0
	lea	rax, -80[rbp]
	mov	rdi, rax
	call	_pCf
	mov	rbx, rax
	movss	xmm3, DWORD PTR -608[rbp]
	movss	xmm2, DWORD PTR -604[rbp]
	movss	xmm1, DWORD PTR -600[rbp]
	movss	xmm0, DWORD PTR -596[rbp]
	call	__divsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -568[rbp], rax
	movss	xmm1, DWORD PTR -568[rbp]
	movss	xmm0, DWORD PTR -564[rbp]
	movss	DWORD PTR [rbx], xmm1
	movss	DWORD PTR 4[rbx], xmm0
	movss	xmm0, DWORD PTR -80[rbp]
	mulss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -88[rbp], xmm0
	movss	xmm0, DWORD PTR -76[rbp]
	mulss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -224[rbp], eax
	movss	xmm1, DWORD PTR -32[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm2, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR 4[rax]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	movss	DWORD PTR -64[rbp], xmm0
	movss	xmm1, DWORD PTR -32[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm1, xmm0
	movss	xmm2, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -60[rbp], xmm0
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	add	eax, edx
	mov	DWORD PTR -220[rbp], eax
	movss	xmm0, DWORD PTR -64[rbp]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -72[rbp], xmm0
	movss	xmm0, DWORD PTR -60[rbp]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR 4[rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -68[rbp], xmm0
	lea	rax, -72[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -576[rbp], rax
	movss	xmm1, DWORD PTR -576[rbp]
	movss	xmm0, DWORD PTR -572[rbp]
	movss	DWORD PTR -596[rbp], xmm1
	movss	DWORD PTR -600[rbp], xmm0
	lea	rax, -40[rbp]
	mov	rdi, rax
	call	Cf
	movq	rax, xmm0
	mov	QWORD PTR -584[rbp], rax
	movss	xmm1, DWORD PTR -584[rbp]
	movss	xmm0, DWORD PTR -580[rbp]
	movss	DWORD PTR -604[rbp], xmm1
	movss	DWORD PTR -608[rbp], xmm0
	lea	rax, -80[rbp]
	mov	rdi, rax
	call	_pCf
	mov	rbx, rax
	movss	xmm3, DWORD PTR -608[rbp]
	movss	xmm2, DWORD PTR -604[rbp]
	movss	xmm1, DWORD PTR -600[rbp]
	movss	xmm0, DWORD PTR -596[rbp]
	call	__divsc3@PLT
	movq	rax, xmm0
	mov	QWORD PTR -592[rbp], rax
	movss	xmm1, DWORD PTR -592[rbp]
	movss	xmm0, DWORD PTR -588[rbp]
	movss	DWORD PTR [rbx], xmm1
	movss	DWORD PTR 4[rbx], xmm0
	movss	xmm0, DWORD PTR -80[rbp]
	mulss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -88[rbp], xmm0
	movss	xmm0, DWORD PTR -76[rbp]
	mulss	xmm0, DWORD PTR -100[rbp]
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -88[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -212[rbp]
	add	eax, 1
	mov	DWORD PTR -212[rbp], eax
.L229:
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -232[rbp]
	cmp	edx, eax
	jle	.L230
.L228:
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -208[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR 4[rdx]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR 4[rdx]
	movss	DWORD PTR 4[rax], xmm0
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -144[rbp]
	add	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -232[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR 4[rdx]
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 1[rax]
	mov	eax, DWORD PTR -208[rbp]
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -208[rbp]
	sub	eax, edx
	sub	eax, 1
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -208[rbp]
	add	eax, 1
	imul	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rcx, [rdx+rax]
	lea	rax, -232[rbp]
	lea	rdx, c__1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	clacgv_@PLT
.L183:
	cmp	DWORD PTR -176[rbp], 1
	jne	.L231
	mov	eax, DWORD PTR -208[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -164[rbp]
	mov	DWORD PTR [rdx], eax
	jmp	.L232
.L231:
	mov	eax, DWORD PTR -208[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -296[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -180[rbp]
	neg	edx
	mov	DWORD PTR [rax], edx
	mov	eax, DWORD PTR -208[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -296[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -164[rbp]
	neg	edx
	mov	DWORD PTR [rax], edx
.L232:
	mov	edx, DWORD PTR -208[rbp]
	mov	eax, DWORD PTR -176[rbp]
	add	eax, edx
	mov	DWORD PTR -208[rbp], eax
	jmp	.L160
.L296:
	nop
.L164:
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -232[rbp], eax
	mov	rax, QWORD PTR -264[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -228[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	mov	DWORD PTR -212[rbp], eax
	jmp	.L233
.L239:
	mov	rax, QWORD PTR -264[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -224[rbp], eax
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -212[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -220[rbp], eax
	mov	edx, DWORD PTR -224[rbp]
	mov	eax, DWORD PTR -220[rbp]
	cmp	edx, eax
	cmovle	eax, edx
	mov	DWORD PTR -200[rbp], eax
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -200[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -224[rbp], eax
	mov	eax, DWORD PTR -212[rbp]
	mov	DWORD PTR -168[rbp], eax
	jmp	.L234
.L235:
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	mov	DWORD PTR -220[rbp], eax
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	mov	DWORD PTR -216[rbp], eax
	mov	eax, DWORD PTR -216[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -200[rbp]
	add	eax, edx
	sub	eax, DWORD PTR -168[rbp]
	mov	DWORD PTR -220[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -216[rbp], eax
	movss	xmm0, DWORD PTR .LC7[rip]
	movss	DWORD PTR -88[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rdi, [rdx+rax]
	mov	edx, DWORD PTR -168[rbp]
	mov	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	edx, DWORD PTR -168[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	r10, [rdx+rax]
	mov	r9, QWORD PTR -288[rbp]
	lea	rcx, -88[rbp]
	lea	rdx, -216[rbp]
	lea	rax, -220[rbp]
	sub	rsp, 8
	lea	r8, c__1[rip]
	push	r8
	push	rdi
	lea	rdi, c_b1[rip]
	push	rdi
	push	QWORD PTR -312[rbp]
	push	rsi
	mov	r8, r10
	mov	rsi, rax
	lea	rdi, .LC8[rip]
	call	cgemv_@PLT
	add	rsp, 48
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	mov	DWORD PTR -220[rbp], eax
	mov	eax, DWORD PTR -168[rbp]
	imul	eax, DWORD PTR -144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -168[rbp]
	add	eax, edx
	mov	DWORD PTR -216[rbp], eax
	mov	eax, DWORD PTR -216[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -120[rbp], xmm0
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	add	DWORD PTR -168[rbp], 1
.L234:
	mov	eax, DWORD PTR -224[rbp]
	cmp	DWORD PTR -168[rbp], eax
	jle	.L235
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -200[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	edx, eax
	jg	.L236
	mov	rax, QWORD PTR -256[rbp]
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -212[rbp]
	sub	eax, edx
	mov	edx, DWORD PTR -200[rbp]
	sub	eax, edx
	add	eax, 1
	mov	DWORD PTR -224[rbp], eax
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -220[rbp], eax
	movss	xmm0, DWORD PTR .LC7[rip]
	movss	DWORD PTR -88[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -200[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	imul	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rdi, [rdx+rax]
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -136[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -304[rbp]
	lea	rsi, [rdx+rax]
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -200[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	lea	r9, -88[rbp]
	lea	r8, -220[rbp]
	lea	rdx, -200[rbp]
	lea	rax, -224[rbp]
	sub	rsp, 8
	push	QWORD PTR -288[rbp]
	push	rdi
	lea	rdi, c_b1[rip]
	push	rdi
	push	QWORD PTR -312[rbp]
	push	rsi
	push	QWORD PTR -288[rbp]
	push	rcx
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC10[rip]
	lea	rdi, .LC8[rip]
	call	cgemm_@PLT
	add	rsp, 64
.L236:
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -228[rbp]
	add	eax, edx
	mov	DWORD PTR -212[rbp], eax
.L233:
	mov	eax, DWORD PTR -228[rbp]
	test	eax, eax
	jns	.L237
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -232[rbp]
	cmp	edx, eax
	setge	al
	jmp	.L238
.L237:
	mov	edx, DWORD PTR -212[rbp]
	mov	eax, DWORD PTR -232[rbp]
	cmp	edx, eax
	setle	al
.L238:
	test	al, al
	jne	.L239
	mov	eax, DWORD PTR -208[rbp]
	sub	eax, 1
	mov	DWORD PTR -212[rbp], eax
.L240:
	mov	DWORD PTR -176[rbp], 1
	mov	DWORD PTR -156[rbp], 1
	mov	eax, DWORD PTR -212[rbp]
	mov	DWORD PTR -168[rbp], eax
	mov	eax, DWORD PTR -212[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -296[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -152[rbp], eax
	cmp	DWORD PTR -152[rbp], 0
	jns	.L241
	neg	DWORD PTR -152[rbp]
	mov	eax, DWORD PTR -212[rbp]
	sub	eax, 1
	mov	DWORD PTR -212[rbp], eax
	mov	eax, DWORD PTR -212[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -296[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	neg	eax
	mov	DWORD PTR -156[rbp], eax
	mov	DWORD PTR -176[rbp], 2
.L241:
	mov	eax, DWORD PTR -212[rbp]
	sub	eax, 1
	mov	DWORD PTR -212[rbp], eax
	mov	eax, DWORD PTR -152[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	je	.L242
	mov	eax, DWORD PTR -212[rbp]
	test	eax, eax
	jle	.L242
	mov	edx, DWORD PTR -168[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	edx, DWORD PTR -152[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -288[rbp]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -212[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L242:
	sub	DWORD PTR -168[rbp], 1
	cmp	DWORD PTR -176[rbp], 2
	jne	.L243
	mov	eax, DWORD PTR -156[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	je	.L243
	mov	eax, DWORD PTR -212[rbp]
	test	eax, eax
	jle	.L243
	mov	edx, DWORD PTR -168[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rcx, [rdx+rax]
	mov	edx, DWORD PTR -156[rbp]
	mov	eax, DWORD PTR -144[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -280[rbp]
	lea	rsi, [rdx+rax]
	mov	rdi, QWORD PTR -288[rbp]
	mov	rdx, QWORD PTR -288[rbp]
	lea	rax, -212[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	cswap_@PLT
.L243:
	mov	eax, DWORD PTR -212[rbp]
	cmp	eax, 1
	jle	.L244
	jmp	.L240
.L244:
	mov	eax, DWORD PTR -208[rbp]
	lea	edx, -1[rax]
	mov	rax, QWORD PTR -272[rbp]
	mov	DWORD PTR [rax], edx
.L159:
	mov	eax, 0
	mov	rbx, QWORD PTR -24[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L246
	call	__stack_chk_fail@PLT
.L246:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	clahef_rook_, .-clahef_rook_
	.section	.rodata
	.align 4
.LC1:
	.long	1065353216
	.align 8
.LC2:
	.long	0
	.long	1072693248
	.align 4
.LC4:
	.long	1059319931
	.align 4
.LC7:
	.long	-1082130432
	.align 16
.LC9:
	.long	-2147483648
	.long	0
	.long	0
	.long	0
	.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	"852556.c"
	.text
	.global	__aeabi_fmul
	.global	__aeabi_fadd
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Cf, %function
Cf:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-20]
	ldr	r4, [r3, #4]	@ float
	ldr	r3, [fp, #-20]
	ldr	r5, [r3]	@ float
	mov	r1, #0
	mov	r0, r4
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r1, r3
	mov	r2, r4
	ldr	r3, [fp, #-16]
	str	r1, [r3]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r0, [fp, #-16]
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
	.size	Cf, .-Cf
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	_pCf, %function
_pCf:
	@ 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	r3, [fp, #-8]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	_pCf, .-_pCf
	.data
	.align	2
	.type	junk, %object
	.size	junk, 30
junk:
	.ascii	"\012@(#)LIBF77 VERSION 19990503\012\000"
	.global	__aeabi_fdiv
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	spow_ui, %function
spow_ui:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]	@ float
	str	r1, [fp, #-20]
	mov	r3, #1065353216
	str	r3, [fp, #-12]	@ float
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L6
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bge	.L7
	ldr	r3, [fp, #-20]
	rsb	r3, r3, #0
	str	r3, [fp, #-20]
	ldr	r1, [fp, #-16]	@ float
	mov	r0, #1065353216
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
.L7:
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-8]
.L11:
	ldr	r3, [fp, #-8]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L8
	ldr	r1, [fp, #-16]	@ float
	ldr	r0, [fp, #-12]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-12]	@ float
.L8:
	ldr	r3, [fp, #-8]
	lsr	r3, r3, #1
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L13
	ldr	r1, [fp, #-16]	@ float
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	b	.L11
.L13:
	nop
.L6:
	ldr	r3, [fp, #-12]	@ float
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	spow_ui, .-spow_ui
	.global	__aeabi_ddiv
	.global	__aeabi_dmul
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	dpow_ui, %function
dpow_ui:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	str	r2, [fp, #-32]
	mov	r2, #0
	ldr	r3, .L23
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	beq	.L15
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bge	.L16
	ldr	r3, [fp, #-32]
	rsb	r3, r3, #0
	str	r3, [fp, #-32]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L23
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
.L16:
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
.L20:
	ldr	r3, [fp, #-16]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L17
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
.L17:
	ldr	r3, [fp, #-16]
	lsr	r3, r3, #1
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L22
	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
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	b	.L20
.L22:
	nop
.L15:
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L24:
	.align	2
.L23:
	.word	1072693248
	.size	dpow_ui, .-dpow_ui
	.section	.rodata
	.align	2
.LC0:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	cpow_ui, %function
cpow_ui:
	@ args = 0, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #64
	str	r0, [fp, #-40]
	str	r1, [fp, #-48]	@ float
	str	r2, [fp, #-44]	@ float
	str	r3, [fp, #-52]
	ldr	r3, .L36
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-48]	@ float
	str	r3, [fp, #-32]	@ float
	ldr	r3, [fp, #-44]	@ float
	str	r3, [fp, #-28]	@ float
	mov	r3, #1065353216
	str	r3, [fp, #-16]	@ float
	mov	r3, #0
	str	r3, [fp, #-12]	@ float
	ldr	r3, [fp, #-52]
	cmp	r3, #0
	beq	.L34
	ldr	r3, [fp, #-52]
	cmp	r3, #0
	bge	.L27
	ldr	r3, [fp, #-52]
	rsb	r3, r3, #0
	str	r3, [fp, #-52]
	sub	r0, fp, #60
	ldr	r3, [fp, #-28]	@ float
	str	r3, [sp]	@ float
	ldr	r3, [fp, #-32]	@ float
	mov	r2, #0
	mov	r1, #1065353216
	bl	__divsc3
	ldr	r3, [fp, #-60]	@ float
	str	r3, [fp, #-48]	@ float
	ldr	r3, [fp, #-56]	@ float
	str	r3, [fp, #-44]	@ float
	ldr	r3, [fp, #-48]	@ float
	str	r3, [fp, #-32]	@ float
	ldr	r3, [fp, #-44]	@ float
	str	r3, [fp, #-28]	@ float
.L27:
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-20]	@ float
	mov	r3, #1065353216
	str	r3, [fp, #-24]	@ float
.L31:
	ldr	r3, [fp, #-36]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L28
	sub	r0, fp, #60
	ldr	r3, [fp, #-28]	@ float
	str	r3, [sp]	@ float
	ldr	r3, [fp, #-32]	@ float
	ldr	r2, [fp, #-20]	@ float
	ldr	r1, [fp, #-24]	@ float
	bl	__mulsc3
	ldr	r3, [fp, #-60]	@ float
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-56]	@ float
	str	r3, [fp, #-12]	@ float
	ldr	r3, [fp, #-16]	@ float
	str	r3, [fp, #-24]	@ float
	ldr	r3, [fp, #-12]	@ float
	str	r3, [fp, #-20]	@ float
.L28:
	ldr	r3, [fp, #-36]
	lsr	r3, r3, #1
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	beq	.L35
	sub	r0, fp, #60
	ldr	r3, [fp, #-28]	@ float
	str	r3, [sp]	@ float
	ldr	r3, [fp, #-32]	@ float
	ldr	r2, [fp, #-28]	@ float
	ldr	r1, [fp, #-32]	@ float
	bl	__mulsc3
	ldr	r3, [fp, #-60]	@ float
	str	r3, [fp, #-48]	@ float
	ldr	r3, [fp, #-56]	@ float
	str	r3, [fp, #-44]	@ float
	ldr	r3, [fp, #-48]	@ float
	str	r3, [fp, #-32]	@ float
	ldr	r3, [fp, #-44]	@ float
	str	r3, [fp, #-28]	@ float
	b	.L31
.L34:
	mov	r3, #0
	str	r3, [fp, #-20]	@ float
	mov	r3, #1065353216
	str	r3, [fp, #-24]	@ float
	b	.L26
.L35:
	nop
.L26:
	ldr	r3, [fp, #-40]
	ldr	r2, [fp, #-24]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, .L36
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L33
	bl	__stack_chk_fail
.L33:
	ldr	r0, [fp, #-40]
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L37:
	.align	2
.L36:
	.word	.LC0
	.size	cpow_ui, .-cpow_ui
	.section	.rodata
	.align	2
.LC1:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	zpow_ui, %function
zpow_ui:
	@ args = 20, pretend = 8, frame = 88
	@ frame_needed = 1, uses_anonymous_args = 0
	sub	sp, sp, #8
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	str	r0, [fp, #-72]
	add	r1, fp, #4
	stm	r1, {r2, r3}
	ldr	r3, .L49
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldmib	fp, {r2-r3}
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r2, #0
	ldr	r3, .L49+4
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #20]
	cmp	r3, #0
	beq	.L47
	ldr	r3, [fp, #20]
	cmp	r3, #0
	bge	.L40
	ldr	r3, [fp, #20]
	rsb	r3, r3, #0
	str	r3, [fp, #20]
	sub	r1, fp, #92
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	mov	r2, #0
	mov	r3, #0
	stm	sp, {r2-r3}
	mov	r2, #0
	ldr	r3, .L49+4
	mov	r0, r1
	bl	__divdc3
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	stmib	fp, {r2-r3}
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	str	r2, [fp, #12]
	str	r3, [fp, #16]
	ldmib	fp, {r2-r3}
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
.L40:
	ldr	r3, [fp, #20]
	str	r3, [fp, #-64]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r2, #0
	ldr	r3, .L49+4
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
.L44:
	ldr	r3, [fp, #-64]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L41
	sub	r1, fp, #92
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	mov	r0, r1
	bl	__muldc3
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
.L41:
	ldr	r3, [fp, #-64]
	lsr	r3, r3, #1
	str	r3, [fp, #-64]
	ldr	r3, [fp, #-64]
	cmp	r3, #0
	beq	.L48
	sub	r1, fp, #92
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	mov	r0, r1
	bl	__muldc3
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	stmib	fp, {r2-r3}
	sub	r3, fp, #84
	ldmia	r3, {r2-r3}
	str	r2, [fp, #12]
	str	r3, [fp, #16]
	ldmib	fp, {r2-r3}
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	b	.L44
.L47:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r2, #0
	ldr	r3, .L49+4
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	b	.L39
.L48:
	nop
.L39:
	ldr	r1, [fp, #-72]
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r1, [fp, #-72]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, .L49
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L46
	bl	__stack_chk_fail
.L46:
	ldr	r0, [fp, #-72]
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, lr}
	add	sp, sp, #8
	bx	lr
.L50:
	.align	2
.L49:
	.word	.LC1
	.word	1072693248
	.size	zpow_ui, .-zpow_ui
	.global	__aeabi_idiv
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	pow_ii, %function
pow_ii:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bgt	.L52
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L53
	ldr	r3, [fp, #-16]
	cmp	r3, #1
	bne	.L54
.L53:
	mov	r3, #1
	str	r3, [fp, #-12]
	b	.L52
.L54:
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	beq	.L55
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L56
	ldr	r1, [fp, #-16]
	mov	r0, #1
	bl	__aeabi_idiv
	mov	r3, r0
	b	.L57
.L56:
	mov	r3, #0
.L57:
	str	r3, [fp, #-12]
	b	.L52
.L55:
	ldr	r3, [fp, #-20]
	rsb	r3, r3, #0
	str	r3, [fp, #-20]
.L52:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bgt	.L58
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L59
	ldr	r3, [fp, #-16]
	cmp	r3, #1
	beq	.L59
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L59
.L58:
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-8]
	mov	r3, #1
	str	r3, [fp, #-12]
.L63:
	ldr	r3, [fp, #-8]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L60
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-16]
	mul	r3, r2, r3
	str	r3, [fp, #-12]
.L60:
	ldr	r3, [fp, #-8]
	lsr	r3, r3, #1
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L65
	ldr	r3, [fp, #-16]
	mov	r2, r3
	mul	r2, r3, r2
	mov	r3, r2
	str	r3, [fp, #-16]
	b	.L63
.L65:
	nop
.L59:
	ldr	r3, [fp, #-12]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	pow_ii, .-pow_ii
	.global	__aeabi_dcmplt
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	dmaxloc_, %function
dmaxloc_:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-28]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-20]
	b	.L67
.L70:
	ldr	r3, [fp, #-20]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L68
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-20]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
.L68:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L67:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	ble	.L70
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	add	r3, r3, #1
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	dmaxloc_, .-dmaxloc_
	.global	__aeabi_fcmplt
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	smaxloc_, %function
smaxloc_:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-12]
	b	.L74
.L77:
	ldr	r3, [fp, #-12]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L75
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-16]	@ float
.L75:
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L74:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	ble	.L77
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	add	r3, r3, #1
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	smaxloc_, .-smaxloc_
	.data
	.align	2
	.type	c_b1, %object
	.size	c_b1, 8
c_b1:
	.word	1065353216
	.word	0
	.align	2
	.type	c__1, %object
	.size	c__1, 4
c__1:
	.word	1
	.section	.rodata
	.align	2
.LC2:
	.ascii	"S\000"
	.align	2
.LC3:
	.ascii	"U\000"
	.align	2
.LC4:
	.ascii	"No transpose\000"
	.global	__aeabi_fcmpge
	.global	__aeabi_f2d
	.global	__aeabi_d2f
	.global	__aeabi_fcmpeq
	.global	__aeabi_fcmpgt
	.global	__aeabi_fcmple
	.global	__aeabi_fsub
	.align	2
.LC5:
	.ascii	"Transpose\000"
	.align	2
.LC6:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	clahef_rook_
	.syntax unified
	.arm
	.fpu softvfp
	.type	clahef_rook_, %function
clahef_rook_:
	@ args = 24, pretend = 0, frame = 264
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, fp, lr}
	add	fp, sp, #24
	sub	sp, sp, #308
	str	r0, [fp, #-248]
	str	r1, [fp, #-252]
	str	r2, [fp, #-256]
	str	r3, [fp, #-260]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-264]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-268]
	ldr	r3, [fp, #12]
	str	r3, [fp, #-272]
	ldr	r3, [fp, #16]
	str	r3, [fp, #-276]
	ldr	r3, [fp, #20]
	str	r3, [fp, #-280]
	ldr	r3, [fp, #24]
	str	r3, [fp, #-284]
	ldr	r3, .L313
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	ldr	r3, [fp, #-268]
	ldr	r3, [r3]
	str	r3, [fp, #-152]
	ldr	r3, [fp, #-152]
	add	r3, r3, #1
	str	r3, [fp, #-148]
	ldr	r3, [fp, #-148]
	lsl	r3, r3, #3
	rsb	r3, r3, #0
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	str	r3, [fp, #-264]
	ldr	r3, [fp, #-272]
	sub	r3, r3, #4
	str	r3, [fp, #-272]
	ldr	r3, [fp, #-280]
	ldr	r3, [r3]
	str	r3, [fp, #-144]
	ldr	r3, [fp, #-144]
	add	r3, r3, #1
	str	r3, [fp, #-140]
	ldr	r3, [fp, #-140]
	lsl	r3, r3, #3
	rsb	r3, r3, #0
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	str	r3, [fp, #-276]
	ldr	r3, [fp, #-284]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L313+4
	str	r3, [fp, #-136]	@ float
	ldr	r0, .L313+8
	bl	slamch_
	str	r0, [fp, #-132]	@ float
	ldr	r1, .L313+12
	ldr	r0, [fp, #-248]
	bl	lsame_
	mov	r3, r0
	cmp	r3, #0
	beq	.L81
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	str	r3, [fp, #-216]
.L82:
	ldr	r3, [fp, #-256]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	add	r2, r2, r3
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	sub	r3, r2, r3
	str	r3, [fp, #-104]
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-256]
	ldr	r3, [r3]
	sub	r3, r2, r3
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	blt	.L83
	ldr	r3, [fp, #-256]
	ldr	r2, [r3]
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	cmp	r2, r3
	blt	.L311
.L83:
	ldr	r3, [fp, #-216]
	cmp	r3, #0
	ble	.L311
	mov	r3, #1
	str	r3, [fp, #-184]
	ldr	r3, [fp, #-216]
	str	r3, [fp, #-188]
	ldr	r3, [fp, #-216]
	cmp	r3, #1
	ble	.L87
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L313+28
	str	r2, [sp]
	ldr	r2, .L313+28
	bl	ccopy_
.L87:
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	ble	.L88
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, .L313+16
	str	r3, [fp, #-96]	@ float
	mov	r3, #0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-104]
	add	r2, r2, #1
	ldr	r1, [fp, #-144]
	mul	r1, r2, r1
	ldr	r2, [fp, #-216]
	add	r2, r1, r2
	lsl	r2, r2, #3
	ldr	r1, [fp, #-276]
	add	r2, r1, r2
	ldr	r1, [fp, #-104]
	ldr	r0, [fp, #-144]
	mul	r1, r0, r1
	add	r1, r1, #1
	lsl	r1, r1, #3
	ldr	r0, [fp, #-276]
	add	r1, r0, r1
	sub	lr, fp, #96
	sub	ip, fp, #240
	sub	r0, fp, #216
	ldr	r4, .L313+28
	str	r4, [sp, #24]
	str	r1, [sp, #20]
	ldr	r1, .L313+20
	str	r1, [sp, #16]
	ldr	r1, [fp, #-280]
	str	r1, [sp, #12]
	str	r2, [sp, #8]
	ldr	r2, [fp, #-268]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, lr
	mov	r2, ip
	mov	r1, r0
	ldr	r0, .L313+24
	bl	cgemv_
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
.L88:
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L287
	ldr	r3, [fp, #-128]	@ float
	b	.L91
.L287:
	ldr	r3, [fp, #-128]
	eor	r3, r3, #-2147483648
.L91:
	str	r3, [fp, #-124]	@ float
	ldr	r3, [fp, #-216]
	cmp	r3, #1
	ble	.L92
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L313+28
	mov	r0, r3
	bl	icamax_
	str	r0, [fp, #-196]
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-120]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L288
	ldr	r4, [fp, #-128]	@ float
	b	.L95
.L288:
	ldr	r3, [fp, #-128]
	eor	r4, r3, #-2147483648
.L95:
	mov	r1, #0
	ldr	r0, [fp, #-120]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L289
	ldr	r3, [fp, #-120]	@ float
	b	.L98
.L289:
	ldr	r3, [fp, #-120]
	eor	r3, r3, #-2147483648
.L98:
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-168]	@ float
	b	.L99
.L92:
	mov	r3, #0
	str	r3, [fp, #-168]	@ float
.L99:
	ldr	r1, [fp, #-168]	@ float
	ldr	r0, [fp, #-124]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L290
	mov	r3, #1
	mov	r4, r3
	mov	r1, #0
	ldr	r0, [fp, #-124]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L102
	mov	r3, #0
	mov	r4, r3
.L102:
	and	r3, r4, #255
	b	.L103
.L290:
	mov	r3, #1
	mov	r4, r3
	mov	r1, #0
	ldr	r0, [fp, #-168]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L104
	mov	r3, #0
	mov	r4, r3
.L104:
	and	r3, r4, #255
.L103:
	cmp	r3, #0
	beq	.L105
	ldr	r3, [fp, #-284]
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L106
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-284]
	str	r2, [r3]
.L106:
	ldr	r3, [fp, #-216]
	str	r3, [fp, #-172]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	cmp	r3, #1
	ble	.L107
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L313+28
	str	r2, [sp]
	ldr	r2, .L313+28
	bl	ccopy_
	b	.L107
.L105:
	ldr	r1, [fp, #-168]	@ float
	ldr	r0, [fp, #-136]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, #1
	mov	r4, r2
	mov	r1, r3
	ldr	r0, [fp, #-124]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L108
	mov	r3, #0
	mov	r4, r3
.L108:
	and	r3, r4, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L109
	ldr	r3, [fp, #-216]
	str	r3, [fp, #-172]
	b	.L110
.L109:
	mov	r3, #0
	str	r3, [fp, #-200]
.L111:
	ldr	r3, [fp, #-196]
	cmp	r3, #1
	ble	.L112
	ldr	r3, [fp, #-196]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-196]
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L313+28
	str	r2, [sp]
	ldr	r2, .L313+28
	bl	ccopy_
.L112:
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-196]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-196]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-196]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	ip, r2, r3
	ldr	r3, [fp, #-196]
	add	r2, r3, #1
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L313+28
	str	r2, [sp]
	ldr	r2, [fp, #-268]
	mov	r1, ip
	bl	ccopy_
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-196]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-196]
	add	r2, r3, #1
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L313+28
	mov	r0, r3
	bl	clacgv_
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	ble	.L113
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, .L313+16
	str	r3, [fp, #-96]	@ float
	mov	r3, #0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-104]
	add	r2, r2, #1
	ldr	r1, [fp, #-144]
	mul	r1, r2, r1
	ldr	r2, [fp, #-196]
	add	r2, r1, r2
	lsl	r2, r2, #3
	ldr	r1, [fp, #-276]
	add	r2, r1, r2
	ldr	r1, [fp, #-104]
	sub	r1, r1, #1
	ldr	r0, [fp, #-144]
	mul	r1, r0, r1
	add	r1, r1, #1
	lsl	r1, r1, #3
	ldr	r0, [fp, #-276]
	add	r1, r0, r1
	sub	lr, fp, #96
	sub	ip, fp, #240
	sub	r0, fp, #216
	ldr	r4, .L313+28
	str	r4, [sp, #24]
	str	r1, [sp, #20]
	ldr	r1, .L313+20
	str	r1, [sp, #16]
	ldr	r1, [fp, #-280]
	str	r1, [sp, #12]
	str	r2, [sp, #8]
	ldr	r2, [fp, #-268]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, lr
	mov	r2, ip
	mov	r1, r0
	ldr	r0, .L313+24
	bl	cgemv_
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
.L113:
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-196]
	cmp	r2, r3
	beq	.L114
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-196]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-196]
	add	r2, r3, #1
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L313+28
	mov	r0, r3
	bl	icamax_
	mov	r2, r0
	ldr	r3, [fp, #-196]
	add	r3, r3, r2
	str	r3, [fp, #-192]
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-192]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-192]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-120]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L291
	ldr	r4, [fp, #-128]	@ float
	b	.L117
.L291:
	ldr	r3, [fp, #-128]
	eor	r4, r3, #-2147483648
.L117:
	mov	r1, #0
	ldr	r0, [fp, #-120]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L292
	ldr	r3, [fp, #-120]	@ float
	b	.L120
.L292:
	ldr	r3, [fp, #-120]
	eor	r3, r3, #-2147483648
.L120:
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-156]	@ float
	b	.L121
.L114:
	mov	r3, #0
	str	r3, [fp, #-156]	@ float
.L121:
	ldr	r3, [fp, #-196]
	cmp	r3, #1
	ble	.L122
	ldr	r3, [fp, #-196]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L313+28
	mov	r0, r3
	bl	icamax_
	str	r0, [fp, #-116]
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-116]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-116]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-120]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L293
	ldr	r4, [fp, #-128]	@ float
	b	.L125
.L293:
	ldr	r3, [fp, #-128]
	eor	r4, r3, #-2147483648
.L125:
	mov	r1, #0
	ldr	r0, [fp, #-120]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L294
	ldr	r3, [fp, #-120]	@ float
	b	.L128
.L294:
	ldr	r3, [fp, #-120]
	eor	r3, r3, #-2147483648
.L128:
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-112]	@ float
	ldr	r1, [fp, #-156]	@ float
	ldr	r0, [fp, #-112]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L122
	ldr	r3, [fp, #-112]	@ float
	str	r3, [fp, #-156]	@ float
	ldr	r3, [fp, #-116]
	str	r3, [fp, #-192]
.L122:
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L295
	ldr	r4, [fp, #-128]	@ float
	b	.L132
.L295:
	ldr	r3, [fp, #-128]
	eor	r4, r3, #-2147483648
.L132:
	ldr	r1, [fp, #-156]	@ float
	ldr	r0, [fp, #-136]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, #1
	mov	r5, r2
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L133
	mov	r3, #0
	mov	r5, r3
.L133:
	and	r3, r5, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L134
	ldr	r3, [fp, #-196]
	str	r3, [fp, #-172]
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #216
	ldr	r2, .L313+28
	str	r2, [sp]
	ldr	r2, .L313+28
	bl	ccopy_
	mov	r3, #1
	str	r3, [fp, #-200]
	b	.L135
.L134:
	ldr	r2, [fp, #-188]
	ldr	r3, [fp, #-192]
	cmp	r2, r3
	beq	.L136
	ldr	r1, [fp, #-168]	@ float
	ldr	r0, [fp, #-156]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L296
.L136:
	ldr	r3, [fp, #-196]
	str	r3, [fp, #-172]
	mov	r3, #2
	str	r3, [fp, #-184]
	mov	r3, #1
	str	r3, [fp, #-200]
	b	.L135
.L296:
	ldr	r3, [fp, #-196]
	str	r3, [fp, #-188]
	ldr	r3, [fp, #-156]	@ float
	str	r3, [fp, #-168]	@ float
	ldr	r3, [fp, #-192]
	str	r3, [fp, #-196]
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #216
	ldr	r2, .L313+28
	str	r2, [sp]
	ldr	r2, .L313+28
	bl	ccopy_
.L135:
	ldr	r3, [fp, #-200]
	cmp	r3, #0
	bne	.L110
	b	.L111
.L314:
	.align	2
.L313:
	.word	.LC6
	.word	1059319931
	.word	.LC2
	.word	.LC3
	.word	-1082130432
	.word	c_b1
	.word	.LC4
	.word	c__1
.L110:
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-184]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-204]
	ldr	r3, [fp, #-256]
	ldr	r2, [r3]
	ldr	r3, [fp, #-204]
	add	r2, r2, r3
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	sub	r3, r2, r3
	str	r3, [fp, #-100]
	ldr	r3, [fp, #-184]
	cmp	r3, #2
	bne	.L139
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-188]
	cmp	r2, r3
	beq	.L139
	ldr	r3, [fp, #-188]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-188]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-188]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-188]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-188]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-188]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L313+28
	bl	ccopy_
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-188]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-188]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-188]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, [fp, #-268]
	mov	r0, r3
	bl	clacgv_
	ldr	r3, [fp, #-188]
	cmp	r3, #1
	ble	.L140
	ldr	r3, [fp, #-188]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-188]
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L313+28
	str	r2, [sp]
	ldr	r2, .L313+28
	bl	ccopy_
.L140:
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	ble	.L141
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-188]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-268]
	bl	cswap_
.L141:
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-204]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-100]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r3, [fp, #-100]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-188]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-280]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-280]
	bl	cswap_
.L139:
	ldr	r3, [fp, #-204]
	ldr	r2, [fp, #-172]
	cmp	r2, r3
	beq	.L142
	ldr	r3, [fp, #-172]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-172]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-204]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-204]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-204]
	sub	r2, r3, #1
	ldr	r3, [fp, #-172]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-172]
	add	r2, r3, #1
	ldr	r3, [fp, #-204]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-172]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L313+28
	bl	ccopy_
	ldr	r3, [fp, #-204]
	sub	r2, r3, #1
	ldr	r3, [fp, #-172]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-172]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, [fp, #-268]
	mov	r0, r3
	bl	clacgv_
	ldr	r3, [fp, #-172]
	cmp	r3, #1
	ble	.L143
	ldr	r3, [fp, #-172]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-204]
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-172]
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L313+28
	str	r2, [sp]
	ldr	r2, .L313+28
	bl	ccopy_
.L143:
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	ble	.L144
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-204]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-172]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-268]
	bl	cswap_
.L144:
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-204]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-100]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-204]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r3, [fp, #-100]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-172]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-280]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-280]
	bl	cswap_
.L142:
	ldr	r3, [fp, #-184]
	cmp	r3, #1
	bne	.L145
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	sub	r0, fp, #216
	ldr	r2, .L313+28
	str	r2, [sp]
	ldr	r2, .L313+28
	bl	ccopy_
	ldr	r3, [fp, #-216]
	cmp	r3, #1
	ble	.L107
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-108]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-108]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L297
	ldr	r3, [fp, #-108]	@ float
	b	.L148
.L297:
	ldr	r3, [fp, #-108]
	eor	r3, r3, #-2147483648
.L148:
	ldr	r1, [fp, #-132]	@ float
	mov	r0, r3
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L298
	ldr	r1, [fp, #-108]	@ float
	mov	r0, #1065353216
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-212]	@ float
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r1, fp, #212
	sub	r0, fp, #240
	ldr	r3, .L313+28
	bl	csscal_
	b	.L151
.L298:
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	mov	r3, #1
	str	r3, [fp, #-180]
	b	.L152
.L153:
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-180]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-180]
	add	r3, r2, r3
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-96]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-96]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-180]
	add	r3, r3, #1
	str	r3, [fp, #-180]
.L152:
	ldr	r3, [fp, #-240]
	ldr	r2, [fp, #-180]
	cmp	r2, r3
	ble	.L153
.L151:
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L313+28
	mov	r0, r3
	bl	clacgv_
	b	.L107
.L145:
	ldr	r3, [fp, #-216]
	cmp	r3, #2
	ble	.L154
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-104]
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-48]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	str	r3, [fp, #-44]	@ float
	sub	r3, fp, #292
	sub	r2, fp, #48
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r5, r2
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	eor	r4, r3, #-2147483648
	sub	r3, fp, #88
	mov	r0, r3
	bl	_pCf
	mov	r3, r0
	str	r5, [r3]	@ float
	str	r4, [r3, #4]	@ float
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #292
	sub	r2, fp, #88
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r8, r2
	mov	r5, r3
	sub	r3, fp, #96
	mov	r0, r3
	bl	_pCf
	mov	r4, r0
	sub	r0, fp, #292
	str	r5, [sp]	@ float
	mov	r3, r8
	mov	r2, r7
	mov	r1, r6
	bl	__divsc3
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	str	r2, [r4]	@ float
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #-96]	@ float
	str	r3, [fp, #-56]	@ float
	ldr	r3, [fp, #-92]	@ float
	str	r3, [fp, #-52]	@ float
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #292
	sub	r2, fp, #48
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r8, r2
	mov	r5, r3
	sub	r3, fp, #96
	mov	r0, r3
	bl	_pCf
	mov	r4, r0
	sub	r0, fp, #292
	str	r5, [sp]	@ float
	mov	r3, r8
	mov	r2, r7
	mov	r1, r6
	bl	__divsc3
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	str	r2, [r4]	@ float
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #-96]	@ float
	str	r3, [fp, #-40]	@ float
	ldr	r3, [fp, #-92]	@ float
	str	r3, [fp, #-36]	@ float
	ldr	r3, [fp, #-56]	@ float
	ldr	r2, [fp, #-40]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-52]	@ float
	ldr	r2, [fp, #-36]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-96]	@ float
	ldr	r3, [fp, #-56]	@ float
	ldr	r2, [fp, #-36]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-52]	@ float
	ldr	r2, [fp, #-40]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-96]	@ float
	mov	r1, #1065353216
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, #1065353216
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-108]	@ float
	ldr	r3, [fp, #-216]
	sub	r3, r3, #2
	str	r3, [fp, #-240]
	mov	r3, #1
	str	r3, [fp, #-220]
	b	.L155
.L156:
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-232]
	ldr	r0, [fp, #-56]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-52]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-72]	@ float
	ldr	r0, [fp, #-56]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-52]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-68]	@ float
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r0, [fp, #-72]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-80]	@ float
	ldr	r0, [fp, #-68]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-76]	@ float
	sub	r3, fp, #292
	sub	r2, fp, #80
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #292
	sub	r2, fp, #48
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r8, r2
	mov	r5, r3
	sub	r3, fp, #88
	mov	r0, r3
	bl	_pCf
	mov	r4, r0
	sub	r0, fp, #292
	str	r5, [sp]	@ float
	mov	r3, r8
	mov	r2, r7
	mov	r1, r6
	bl	__divsc3
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	str	r2, [r4]	@ float
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #-88]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-96]	@ float
	ldr	r3, [fp, #-84]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-96]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-232]
	ldr	r0, [fp, #-40]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-36]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-72]	@ float
	ldr	r0, [fp, #-40]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-36]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-68]	@ float
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r0, [fp, #-72]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-80]	@ float
	ldr	r0, [fp, #-68]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-76]	@ float
	sub	r3, fp, #292
	sub	r2, fp, #48
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r5, r2
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	eor	r4, r3, #-2147483648
	sub	r3, fp, #64
	mov	r0, r3
	bl	_pCf
	mov	r3, r0
	str	r5, [r3]	@ float
	str	r4, [r3, #4]	@ float
	sub	r3, fp, #292
	sub	r2, fp, #80
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #292
	sub	r2, fp, #64
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r8, r2
	mov	r5, r3
	sub	r3, fp, #88
	mov	r0, r3
	bl	_pCf
	mov	r4, r0
	sub	r0, fp, #292
	str	r5, [sp]	@ float
	mov	r3, r8
	mov	r2, r7
	mov	r1, r6
	bl	__divsc3
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	str	r2, [r4]	@ float
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #-88]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-96]	@ float
	ldr	r3, [fp, #-84]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-96]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-220]
	add	r3, r3, #1
	str	r3, [fp, #-220]
.L155:
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-240]
	cmp	r2, r3
	ble	.L156
.L154:
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2, #4]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-104]
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2, #4]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2, #4]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L315+16
	mov	r0, r3
	bl	clacgv_
	ldr	r3, [fp, #-216]
	sub	r3, r3, #2
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-104]
	sub	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L315+16
	mov	r0, r3
	bl	clacgv_
.L107:
	ldr	r3, [fp, #-184]
	cmp	r3, #1
	bne	.L157
	ldr	r3, [fp, #-216]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r2, [fp, #-172]
	str	r2, [r3]
	b	.L158
.L157:
	ldr	r3, [fp, #-216]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r2, [fp, #-188]
	rsb	r2, r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r2, [fp, #-172]
	rsb	r2, r2, #0
	str	r2, [r3]
.L158:
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-184]
	sub	r3, r2, r3
	str	r3, [fp, #-216]
	b	.L82
.L311:
	nop
.L86:
	ldr	r3, [fp, #-256]
	ldr	r3, [r3]
	rsb	r3, r3, #0
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-256]
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_idiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-256]
	ldr	r3, [r3]
	mul	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-220]
	b	.L159
.L165:
	ldr	r3, [fp, #-256]
	ldr	r3, [r3]
	str	r3, [fp, #-236]
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-220]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r3, [fp, #-232]
	cmp	r2, r3
	movlt	r3, r2
	movge	r3, r3
	str	r3, [fp, #-208]
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-208]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-220]
	str	r3, [fp, #-176]
	b	.L160
.L161:
	ldr	r3, [fp, #-176]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-176]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-220]
	ldr	r2, [fp, #-176]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r3, .L315+4
	str	r3, [fp, #-96]	@ float
	mov	r3, #0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-104]
	add	r2, r2, #1
	ldr	r1, [fp, #-144]
	mul	r1, r2, r1
	ldr	r2, [fp, #-176]
	add	r2, r1, r2
	lsl	r2, r2, #3
	ldr	r1, [fp, #-276]
	add	r2, r1, r2
	ldr	r1, [fp, #-176]
	ldr	r0, [fp, #-152]
	mul	r0, r1, r0
	ldr	r1, [fp, #-220]
	add	r1, r0, r1
	lsl	r1, r1, #3
	ldr	r0, [fp, #-264]
	add	r1, r0, r1
	sub	lr, fp, #96
	sub	ip, fp, #228
	sub	r0, fp, #232
	ldr	r4, .L315+16
	str	r4, [sp, #24]
	str	r1, [sp, #20]
	ldr	r1, .L315+8
	str	r1, [sp, #16]
	ldr	r1, [fp, #-280]
	str	r1, [sp, #12]
	str	r2, [sp, #8]
	ldr	r2, [fp, #-268]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, lr
	mov	r2, ip
	mov	r1, r0
	ldr	r0, .L315+12
	bl	cgemv_
	ldr	r3, [fp, #-176]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-176]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-176]
	add	r3, r3, #1
	str	r3, [fp, #-176]
.L160:
	ldr	r3, [fp, #-236]
	ldr	r2, [fp, #-176]
	cmp	r2, r3
	ble	.L161
	ldr	r3, [fp, #-220]
	cmp	r3, #1
	ble	.L162
	ldr	r3, [fp, #-220]
	sub	r3, r3, #1
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-232]
	ldr	r3, .L315+4
	str	r3, [fp, #-96]	@ float
	mov	r3, #0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r3, r2, r3
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-104]
	add	r2, r2, #1
	ldr	r1, [fp, #-144]
	mul	r1, r2, r1
	ldr	r2, [fp, #-220]
	add	r2, r1, r2
	lsl	r2, r2, #3
	ldr	r1, [fp, #-276]
	add	r2, r1, r2
	ldr	r1, [fp, #-220]
	ldr	r0, [fp, #-152]
	mul	r1, r0, r1
	add	r1, r1, #1
	lsl	r1, r1, #3
	ldr	r0, [fp, #-264]
	add	r1, r0, r1
	sub	lr, fp, #208
	sub	ip, fp, #236
	ldr	r0, [fp, #-268]
	str	r0, [sp, #32]
	str	r1, [sp, #28]
	ldr	r1, .L315+8
	str	r1, [sp, #24]
	ldr	r1, [fp, #-280]
	str	r1, [sp, #20]
	str	r2, [sp, #16]
	ldr	r2, [fp, #-268]
	str	r2, [sp, #12]
	str	r3, [sp, #8]
	sub	r3, fp, #96
	str	r3, [sp, #4]
	sub	r3, fp, #232
	str	r3, [sp]
	mov	r3, lr
	mov	r2, ip
	ldr	r1, .L315
	ldr	r0, .L315+12
	bl	cgemm_
.L162:
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-240]
	add	r3, r2, r3
	str	r3, [fp, #-220]
.L159:
	ldr	r3, [fp, #-240]
	cmp	r3, #0
	bge	.L163
	ldr	r3, [fp, #-220]
	cmp	r3, #0
	movgt	r3, #1
	movle	r3, #0
	and	r3, r3, #255
	b	.L164
.L163:
	ldr	r3, [fp, #-220]
	cmp	r3, #1
	movle	r3, #1
	movgt	r3, #0
	and	r3, r3, #255
.L164:
	cmp	r3, #0
	bne	.L165
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	str	r3, [fp, #-220]
.L166:
	mov	r3, #1
	str	r3, [fp, #-184]
	mov	r3, #1
	str	r3, [fp, #-164]
	ldr	r3, [fp, #-220]
	str	r3, [fp, #-176]
	ldr	r3, [fp, #-220]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-160]
	ldr	r3, [fp, #-160]
	cmp	r3, #0
	bge	.L167
	ldr	r3, [fp, #-160]
	rsb	r3, r3, #0
	str	r3, [fp, #-160]
	ldr	r3, [fp, #-220]
	add	r3, r3, #1
	str	r3, [fp, #-220]
	ldr	r3, [fp, #-220]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r3, [r3]
	rsb	r3, r3, #0
	str	r3, [fp, #-164]
	mov	r3, #2
	str	r3, [fp, #-184]
.L167:
	ldr	r3, [fp, #-220]
	add	r3, r3, #1
	str	r3, [fp, #-220]
	ldr	r2, [fp, #-160]
	ldr	r3, [fp, #-176]
	cmp	r2, r3
	beq	.L168
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-220]
	cmp	r2, r3
	blt	.L168
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-220]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-220]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-160]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-220]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-268]
	bl	cswap_
.L168:
	ldr	r3, [fp, #-176]
	add	r3, r3, #1
	str	r3, [fp, #-176]
	ldr	r3, [fp, #-184]
	cmp	r3, #2
	bne	.L169
	ldr	r2, [fp, #-164]
	ldr	r3, [fp, #-176]
	cmp	r2, r3
	beq	.L169
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-220]
	cmp	r2, r3
	blt	.L169
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-220]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-220]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-164]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-220]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-268]
	bl	cswap_
.L169:
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-220]
	cmp	r2, r3
	ble	.L170
	b	.L166
.L170:
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r2, r2, r3
	ldr	r3, [fp, #-260]
	str	r2, [r3]
	b	.L171
.L81:
	mov	r3, #1
	str	r3, [fp, #-216]
.L172:
	ldr	r3, [fp, #-256]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	bgt	.L173
	ldr	r3, [fp, #-256]
	ldr	r2, [r3]
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	cmp	r2, r3
	blt	.L312
.L173:
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	blt	.L312
	mov	r3, #1
	str	r3, [fp, #-184]
	ldr	r3, [fp, #-216]
	str	r3, [fp, #-188]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	ble	.L177
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	ip, r2, r3
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L315+16
	str	r2, [sp]
	ldr	r2, .L315+16
	mov	r1, ip
	bl	ccopy_
.L177:
	ldr	r3, [fp, #-216]
	cmp	r3, #1
	ble	.L178
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-236]
	ldr	r3, .L315+4
	str	r3, [fp, #-96]	@ float
	mov	r3, #0
	str	r3, [fp, #-92]	@ float
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r1, [fp, #-216]
	ldr	r2, [fp, #-144]
	add	r2, r1, r2
	lsl	r2, r2, #3
	ldr	r1, [fp, #-276]
	add	r2, r1, r2
	ldr	r1, [fp, #-216]
	ldr	r0, [fp, #-144]
	mul	r0, r1, r0
	ldr	r1, [fp, #-216]
	add	r1, r0, r1
	lsl	r1, r1, #3
	ldr	r0, [fp, #-276]
	add	r1, r0, r1
	sub	lr, fp, #96
	sub	ip, fp, #236
	sub	r0, fp, #240
	ldr	r4, .L315+16
	str	r4, [sp, #24]
	str	r1, [sp, #20]
	ldr	r1, .L315+8
	str	r1, [sp, #16]
	ldr	r1, [fp, #-280]
	str	r1, [sp, #12]
	str	r2, [sp, #8]
	ldr	r2, [fp, #-268]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, lr
	mov	r2, ip
	mov	r1, r0
	ldr	r0, .L315+12
	bl	cgemv_
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
.L178:
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L299
	ldr	r3, [fp, #-128]	@ float
	b	.L181
.L299:
	ldr	r3, [fp, #-128]
	eor	r3, r3, #-2147483648
.L181:
	str	r3, [fp, #-124]	@ float
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	ble	.L182
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L315+16
	mov	r0, r3
	bl	icamax_
	mov	r2, r0
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-196]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-120]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L300
	ldr	r4, [fp, #-128]	@ float
	b	.L185
.L300:
	ldr	r3, [fp, #-128]
	eor	r4, r3, #-2147483648
.L185:
	mov	r1, #0
	ldr	r0, [fp, #-120]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L301
	ldr	r3, [fp, #-120]	@ float
	b	.L188
.L301:
	ldr	r3, [fp, #-120]
	eor	r3, r3, #-2147483648
.L188:
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-168]	@ float
	b	.L189
.L182:
	mov	r3, #0
	str	r3, [fp, #-168]	@ float
.L189:
	ldr	r1, [fp, #-168]	@ float
	ldr	r0, [fp, #-124]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L302
	mov	r3, #1
	mov	r4, r3
	mov	r1, #0
	ldr	r0, [fp, #-124]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L192
	mov	r3, #0
	mov	r4, r3
.L192:
	and	r3, r4, #255
	b	.L193
.L302:
	mov	r3, #1
	mov	r4, r3
	mov	r1, #0
	ldr	r0, [fp, #-168]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L194
	mov	r3, #0
	mov	r4, r3
.L194:
	and	r3, r4, #255
.L193:
	cmp	r3, #0
	beq	.L195
	ldr	r3, [fp, #-284]
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L196
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-284]
	str	r2, [r3]
.L196:
	ldr	r3, [fp, #-216]
	str	r3, [fp, #-172]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	ble	.L197
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	ip, r2, r3
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L315+16
	str	r2, [sp]
	ldr	r2, .L315+16
	mov	r1, ip
	bl	ccopy_
	b	.L197
.L195:
	ldr	r1, [fp, #-168]	@ float
	ldr	r0, [fp, #-136]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, #1
	mov	r4, r2
	mov	r1, r3
	ldr	r0, [fp, #-124]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L198
	mov	r3, #0
	mov	r4, r3
.L198:
	and	r3, r4, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L199
	ldr	r3, [fp, #-216]
	str	r3, [fp, #-172]
	b	.L200
.L316:
	.align	2
.L315:
	.word	.LC5
	.word	-1082130432
	.word	c_b1
	.word	.LC4
	.word	c__1
.L199:
	mov	r3, #0
	str	r3, [fp, #-200]
.L201:
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-196]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L315+16
	str	r2, [sp]
	ldr	r2, [fp, #-268]
	bl	ccopy_
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-196]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L315+16
	mov	r0, r3
	bl	clacgv_
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-196]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	ldr	r2, [fp, #-196]
	cmp	r2, r3
	bge	.L202
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-196]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-196]
	add	r2, r3, #1
	ldr	r3, [fp, #-196]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	ip, r2, r3
	ldr	r3, [fp, #-196]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L315+16
	str	r2, [sp]
	ldr	r2, .L315+16
	mov	r1, ip
	bl	ccopy_
.L202:
	ldr	r3, [fp, #-216]
	cmp	r3, #1
	ble	.L203
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-236]
	ldr	r3, .L315+4
	str	r3, [fp, #-96]	@ float
	mov	r3, #0
	str	r3, [fp, #-92]	@ float
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r1, [fp, #-196]
	ldr	r2, [fp, #-144]
	add	r2, r1, r2
	lsl	r2, r2, #3
	ldr	r1, [fp, #-276]
	add	r2, r1, r2
	ldr	r1, [fp, #-216]
	add	r1, r1, #1
	ldr	r0, [fp, #-144]
	mul	r0, r1, r0
	ldr	r1, [fp, #-216]
	add	r1, r0, r1
	lsl	r1, r1, #3
	ldr	r0, [fp, #-276]
	add	r1, r0, r1
	sub	lr, fp, #96
	sub	ip, fp, #236
	sub	r0, fp, #240
	ldr	r4, .L315+16
	str	r4, [sp, #24]
	str	r1, [sp, #20]
	ldr	r1, .L315+8
	str	r1, [sp, #16]
	ldr	r1, [fp, #-280]
	str	r1, [sp, #12]
	str	r2, [sp, #8]
	ldr	r2, [fp, #-268]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, lr
	mov	r2, ip
	mov	r1, r0
	ldr	r0, .L315+12
	bl	cgemv_
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
.L203:
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-196]
	cmp	r2, r3
	beq	.L204
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-196]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	sub	r4, r3, #1
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L315+16
	mov	r0, r3
	bl	icamax_
	mov	r3, r0
	add	r3, r4, r3
	str	r3, [fp, #-192]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-192]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-192]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-120]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L303
	ldr	r4, [fp, #-128]	@ float
	b	.L207
.L303:
	ldr	r3, [fp, #-128]
	eor	r4, r3, #-2147483648
.L207:
	mov	r1, #0
	ldr	r0, [fp, #-120]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L304
	ldr	r3, [fp, #-120]	@ float
	b	.L210
.L304:
	ldr	r3, [fp, #-120]
	eor	r3, r3, #-2147483648
.L210:
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-156]	@ float
	b	.L211
.L204:
	mov	r3, #0
	str	r3, [fp, #-156]	@ float
.L211:
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	ldr	r2, [fp, #-196]
	cmp	r2, r3
	bge	.L212
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-196]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-196]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L315+16
	mov	r0, r3
	bl	icamax_
	mov	r2, r0
	ldr	r3, [fp, #-196]
	add	r3, r3, r2
	str	r3, [fp, #-116]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-116]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-116]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-120]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L305
	ldr	r4, [fp, #-128]	@ float
	b	.L215
.L305:
	ldr	r3, [fp, #-128]
	eor	r4, r3, #-2147483648
.L215:
	mov	r1, #0
	ldr	r0, [fp, #-120]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L306
	ldr	r3, [fp, #-120]	@ float
	b	.L218
.L306:
	ldr	r3, [fp, #-120]
	eor	r3, r3, #-2147483648
.L218:
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-112]	@ float
	ldr	r1, [fp, #-156]	@ float
	ldr	r0, [fp, #-112]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L212
	ldr	r3, [fp, #-112]	@ float
	str	r3, [fp, #-156]	@ float
	ldr	r3, [fp, #-116]
	str	r3, [fp, #-192]
.L212:
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-196]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-128]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L307
	ldr	r4, [fp, #-128]	@ float
	b	.L222
.L307:
	ldr	r3, [fp, #-128]
	eor	r4, r3, #-2147483648
.L222:
	ldr	r1, [fp, #-156]	@ float
	ldr	r0, [fp, #-136]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, #1
	mov	r5, r2
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L223
	mov	r3, #0
	mov	r5, r3
.L223:
	and	r3, r5, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L224
	ldr	r3, [fp, #-196]
	str	r3, [fp, #-172]
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L315+16
	str	r2, [sp]
	ldr	r2, .L315+16
	bl	ccopy_
	mov	r3, #1
	str	r3, [fp, #-200]
	b	.L225
.L224:
	ldr	r2, [fp, #-188]
	ldr	r3, [fp, #-192]
	cmp	r2, r3
	beq	.L226
	ldr	r1, [fp, #-168]	@ float
	ldr	r0, [fp, #-156]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L308
.L226:
	ldr	r3, [fp, #-196]
	str	r3, [fp, #-172]
	mov	r3, #2
	str	r3, [fp, #-184]
	mov	r3, #1
	str	r3, [fp, #-200]
	b	.L225
.L308:
	ldr	r3, [fp, #-196]
	str	r3, [fp, #-188]
	ldr	r3, [fp, #-156]	@ float
	str	r3, [fp, #-168]	@ float
	ldr	r3, [fp, #-192]
	str	r3, [fp, #-196]
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L315+16
	str	r2, [sp]
	ldr	r2, .L315+16
	bl	ccopy_
.L225:
	ldr	r3, [fp, #-200]
	cmp	r3, #0
	bne	.L200
	b	.L201
.L200:
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-184]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-204]
	ldr	r3, [fp, #-184]
	cmp	r3, #2
	bne	.L229
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-188]
	cmp	r2, r3
	beq	.L229
	ldr	r3, [fp, #-188]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-188]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-188]
	sub	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-188]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L315+16
	bl	ccopy_
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-188]
	sub	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-188]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, [fp, #-268]
	mov	r0, r3
	bl	clacgv_
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	ldr	r2, [fp, #-188]
	cmp	r2, r3
	bge	.L230
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-188]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-188]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	ip, r2, r3
	ldr	r3, [fp, #-188]
	add	r2, r3, #1
	ldr	r3, [fp, #-188]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L315+16
	str	r2, [sp]
	ldr	r2, .L315+16
	mov	r1, ip
	bl	ccopy_
.L230:
	ldr	r3, [fp, #-216]
	cmp	r3, #1
	ble	.L231
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r2, [fp, #-188]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-268]
	bl	cswap_
.L231:
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-144]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r2, [fp, #-188]
	ldr	r3, [fp, #-144]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r0, fp, #204
	ldr	r3, [fp, #-280]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-280]
	bl	cswap_
.L229:
	ldr	r3, [fp, #-204]
	ldr	r2, [fp, #-172]
	cmp	r2, r3
	beq	.L232
	ldr	r3, [fp, #-172]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-172]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-204]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-204]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-204]
	ldr	r2, [fp, #-172]
	sub	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-204]
	add	r2, r3, #1
	ldr	r3, [fp, #-204]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r3, [fp, #-204]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-172]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L315+16
	bl	ccopy_
	ldr	r3, [fp, #-204]
	ldr	r2, [fp, #-172]
	sub	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-204]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-172]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, [fp, #-268]
	mov	r0, r3
	bl	clacgv_
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	ldr	r2, [fp, #-172]
	cmp	r2, r3
	bge	.L233
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-172]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-172]
	add	r2, r3, #1
	ldr	r3, [fp, #-204]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	ip, r2, r3
	ldr	r3, [fp, #-172]
	add	r2, r3, #1
	ldr	r3, [fp, #-172]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L315+16
	str	r2, [sp]
	ldr	r2, .L315+16
	mov	r1, ip
	bl	ccopy_
.L233:
	ldr	r3, [fp, #-216]
	cmp	r3, #1
	ble	.L234
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r2, [fp, #-204]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r2, [fp, #-172]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #240
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-268]
	bl	cswap_
.L234:
	ldr	r2, [fp, #-204]
	ldr	r3, [fp, #-144]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r2, [fp, #-172]
	ldr	r3, [fp, #-144]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r0, fp, #204
	ldr	r3, [fp, #-280]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-280]
	bl	cswap_
.L232:
	ldr	r3, [fp, #-184]
	cmp	r3, #1
	bne	.L235
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	sub	r0, fp, #240
	ldr	r2, .L315+16
	str	r2, [sp]
	ldr	r2, .L315+16
	bl	ccopy_
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	ble	.L197
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-108]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-108]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L309
	ldr	r3, [fp, #-108]	@ float
	b	.L238
.L309:
	ldr	r3, [fp, #-108]
	eor	r3, r3, #-2147483648
.L238:
	ldr	r1, [fp, #-132]	@ float
	mov	r0, r3
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L310
	ldr	r1, [fp, #-108]	@ float
	mov	r0, #1065353216
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-212]	@ float
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r1, fp, #212
	sub	r0, fp, #240
	ldr	r3, .L315+16
	bl	csscal_
	b	.L241
.L310:
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	str	r3, [fp, #-180]
	b	.L242
.L243:
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-180]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-180]
	add	r3, r2, r3
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-96]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-96]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-180]
	add	r3, r3, #1
	str	r3, [fp, #-180]
.L242:
	ldr	r3, [fp, #-240]
	ldr	r2, [fp, #-180]
	cmp	r2, r3
	ble	.L243
.L241:
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L315+16
	mov	r0, r3
	bl	clacgv_
	b	.L197
.L235:
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	sub	r2, r3, #1
	ldr	r3, [fp, #-216]
	cmp	r2, r3
	ble	.L244
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-48]	@ float
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	str	r3, [fp, #-44]	@ float
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #292
	sub	r2, fp, #48
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r8, r2
	mov	r5, r3
	sub	r3, fp, #96
	mov	r0, r3
	bl	_pCf
	mov	r4, r0
	sub	r0, fp, #292
	str	r5, [sp]	@ float
	mov	r3, r8
	mov	r2, r7
	mov	r1, r6
	bl	__divsc3
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	str	r2, [r4]	@ float
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #-96]	@ float
	str	r3, [fp, #-56]	@ float
	ldr	r3, [fp, #-92]	@ float
	str	r3, [fp, #-52]	@ float
	sub	r3, fp, #292
	sub	r2, fp, #48
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r5, r2
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	eor	r4, r3, #-2147483648
	sub	r3, fp, #88
	mov	r0, r3
	bl	_pCf
	mov	r3, r0
	str	r5, [r3]	@ float
	str	r4, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	sub	r3, fp, #292
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #292
	sub	r2, fp, #88
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r8, r2
	mov	r5, r3
	sub	r3, fp, #96
	mov	r0, r3
	bl	_pCf
	mov	r4, r0
	sub	r0, fp, #292
	str	r5, [sp]	@ float
	mov	r3, r8
	mov	r2, r7
	mov	r1, r6
	bl	__divsc3
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	str	r2, [r4]	@ float
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #-96]	@ float
	str	r3, [fp, #-40]	@ float
	ldr	r3, [fp, #-92]	@ float
	str	r3, [fp, #-36]	@ float
	ldr	r3, [fp, #-56]	@ float
	ldr	r2, [fp, #-40]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-52]	@ float
	ldr	r2, [fp, #-36]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-96]	@ float
	ldr	r3, [fp, #-56]	@ float
	ldr	r2, [fp, #-36]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-52]	@ float
	ldr	r2, [fp, #-40]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-96]	@ float
	mov	r1, #1065353216
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, #1065353216
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-108]	@ float
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r3, r3, #2
	str	r3, [fp, #-220]
	b	.L245
.L246:
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-232]
	ldr	r0, [fp, #-56]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-52]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-72]	@ float
	ldr	r0, [fp, #-56]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-52]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-68]	@ float
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r0, [fp, #-72]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-80]	@ float
	ldr	r0, [fp, #-68]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-76]	@ float
	sub	r3, fp, #292
	sub	r2, fp, #48
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r5, r2
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	eor	r4, r3, #-2147483648
	sub	r3, fp, #64
	mov	r0, r3
	bl	_pCf
	mov	r3, r0
	str	r5, [r3]	@ float
	str	r4, [r3, #4]	@ float
	sub	r3, fp, #292
	sub	r2, fp, #80
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #292
	sub	r2, fp, #64
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r8, r2
	mov	r5, r3
	sub	r3, fp, #88
	mov	r0, r3
	bl	_pCf
	mov	r4, r0
	sub	r0, fp, #292
	str	r5, [sp]	@ float
	mov	r3, r8
	mov	r2, r7
	mov	r1, r6
	bl	__divsc3
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	str	r2, [r4]	@ float
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #-88]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-96]	@ float
	ldr	r3, [fp, #-84]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-96]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-232]
	ldr	r0, [fp, #-40]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-36]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-72]	@ float
	ldr	r0, [fp, #-40]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-36]	@ float
	ldr	r3, [fp, #-232]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-68]	@ float
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-220]
	add	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r0, [fp, #-72]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-80]	@ float
	ldr	r0, [fp, #-68]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-76]	@ float
	sub	r3, fp, #292
	sub	r2, fp, #80
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r6, r2
	mov	r7, r3
	sub	r3, fp, #292
	sub	r2, fp, #48
	mov	r1, r2
	mov	r0, r3
	bl	Cf
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	mov	r8, r2
	mov	r5, r3
	sub	r3, fp, #88
	mov	r0, r3
	bl	_pCf
	mov	r4, r0
	sub	r0, fp, #292
	str	r5, [sp]	@ float
	mov	r3, r8
	mov	r2, r7
	mov	r1, r6
	bl	__divsc3
	ldr	r2, [fp, #-292]	@ float
	ldr	r3, [fp, #-288]	@ float
	str	r2, [r4]	@ float
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #-88]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-96]	@ float
	ldr	r3, [fp, #-84]	@ float
	ldr	r1, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-96]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-220]
	add	r3, r3, #1
	str	r3, [fp, #-220]
.L245:
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-240]
	cmp	r2, r3
	ble	.L246
.L244:
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	ldr	r2, [fp, #-144]
	mul	r2, r3, r2
	ldr	r3, [fp, #-216]
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2, #4]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2, #4]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r1, [fp, #-152]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-236]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r2, r2, r3
	ldr	r3, [fp, #-240]
	lsl	r3, r3, #3
	ldr	r1, [fp, #-264]
	add	r3, r1, r3
	ldr	r2, [r2, #4]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #1
	ldr	r3, [fp, #-216]
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L317
	mov	r0, r3
	bl	clacgv_
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-216]
	sub	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-216]
	add	r2, r3, #2
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	ldr	r1, [fp, #-144]
	mul	r3, r1, r3
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-276]
	add	r1, r2, r3
	sub	r3, fp, #240
	ldr	r2, .L317
	mov	r0, r3
	bl	clacgv_
.L197:
	ldr	r3, [fp, #-184]
	cmp	r3, #1
	bne	.L247
	ldr	r3, [fp, #-216]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r2, [fp, #-172]
	str	r2, [r3]
	b	.L248
.L247:
	ldr	r3, [fp, #-216]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r2, [fp, #-188]
	rsb	r2, r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-216]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r2, [fp, #-172]
	rsb	r2, r2, #0
	str	r2, [r3]
.L248:
	ldr	r2, [fp, #-216]
	ldr	r3, [fp, #-184]
	add	r3, r2, r3
	str	r3, [fp, #-216]
	b	.L172
.L312:
	nop
.L176:
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	str	r3, [fp, #-240]
	ldr	r3, [fp, #-256]
	ldr	r3, [r3]
	str	r3, [fp, #-236]
	ldr	r3, [fp, #-216]
	str	r3, [fp, #-220]
	b	.L249
.L255:
	ldr	r3, [fp, #-256]
	ldr	r3, [r3]
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-220]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-228]
	ldr	r2, [fp, #-232]
	ldr	r3, [fp, #-228]
	cmp	r2, r3
	movlt	r3, r2
	movge	r3, r3
	str	r3, [fp, #-208]
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-208]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-220]
	str	r3, [fp, #-176]
	b	.L250
.L251:
	ldr	r3, [fp, #-176]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r3, [fp, #-176]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	str	r3, [fp, #-224]
	ldr	r3, [fp, #-224]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-208]
	add	r2, r2, r3
	ldr	r3, [fp, #-176]
	sub	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-224]
	ldr	r3, .L317+4
	str	r3, [fp, #-96]	@ float
	mov	r3, #0
	str	r3, [fp, #-92]	@ float
	ldr	r2, [fp, #-176]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r1, [fp, #-176]
	ldr	r2, [fp, #-144]
	add	r2, r1, r2
	lsl	r2, r2, #3
	ldr	r1, [fp, #-276]
	add	r2, r1, r2
	ldr	r1, [fp, #-176]
	ldr	r0, [fp, #-152]
	mul	r0, r1, r0
	ldr	r1, [fp, #-176]
	add	r1, r0, r1
	lsl	r1, r1, #3
	ldr	r0, [fp, #-264]
	add	r1, r0, r1
	sub	lr, fp, #96
	sub	ip, fp, #224
	sub	r0, fp, #228
	ldr	r4, .L317
	str	r4, [sp, #24]
	str	r1, [sp, #20]
	ldr	r1, .L317+8
	str	r1, [sp, #16]
	ldr	r1, [fp, #-280]
	str	r1, [sp, #12]
	str	r2, [sp, #8]
	ldr	r2, [fp, #-268]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, lr
	mov	r2, ip
	mov	r1, r0
	ldr	r0, .L317+12
	bl	cgemv_
	ldr	r3, [fp, #-176]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	str	r3, [fp, #-228]
	ldr	r3, [fp, #-176]
	ldr	r2, [fp, #-152]
	mul	r2, r3, r2
	ldr	r3, [fp, #-176]
	add	r3, r2, r3
	str	r3, [fp, #-224]
	ldr	r3, [fp, #-224]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-128]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r2, [fp, #-128]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-228]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-176]
	add	r3, r3, #1
	str	r3, [fp, #-176]
.L250:
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-176]
	cmp	r2, r3
	ble	.L251
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-208]
	add	r2, r2, r3
	ldr	r3, [fp, #-252]
	ldr	r3, [r3]
	cmp	r2, r3
	bgt	.L252
	ldr	r3, [fp, #-252]
	ldr	r2, [r3]
	ldr	r3, [fp, #-220]
	sub	r2, r2, r3
	ldr	r3, [fp, #-208]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-228]
	ldr	r3, .L317+4
	str	r3, [fp, #-96]	@ float
	mov	r3, #0
	str	r3, [fp, #-92]	@ float
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-208]
	add	r2, r2, r3
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r3, r2, r3
	ldr	r1, [fp, #-220]
	ldr	r2, [fp, #-144]
	add	r2, r1, r2
	lsl	r2, r2, #3
	ldr	r1, [fp, #-276]
	add	r2, r1, r2
	ldr	r0, [fp, #-220]
	ldr	r1, [fp, #-208]
	add	r0, r0, r1
	ldr	r1, [fp, #-220]
	ldr	ip, [fp, #-152]
	mul	r1, ip, r1
	add	r1, r0, r1
	lsl	r1, r1, #3
	ldr	r0, [fp, #-264]
	add	r1, r0, r1
	sub	lr, fp, #208
	sub	ip, fp, #232
	ldr	r0, [fp, #-268]
	str	r0, [sp, #32]
	str	r1, [sp, #28]
	ldr	r1, .L317+8
	str	r1, [sp, #24]
	ldr	r1, [fp, #-280]
	str	r1, [sp, #20]
	str	r2, [sp, #16]
	ldr	r2, [fp, #-268]
	str	r2, [sp, #12]
	str	r3, [sp, #8]
	sub	r3, fp, #96
	str	r3, [sp, #4]
	sub	r3, fp, #228
	str	r3, [sp]
	mov	r3, lr
	mov	r2, ip
	ldr	r1, .L317+16
	ldr	r0, .L317+12
	bl	cgemm_
.L252:
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-236]
	add	r3, r2, r3
	str	r3, [fp, #-220]
.L249:
	ldr	r3, [fp, #-236]
	cmp	r3, #0
	bge	.L253
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-240]
	cmp	r2, r3
	movge	r3, #1
	movlt	r3, #0
	and	r3, r3, #255
	b	.L254
.L253:
	ldr	r2, [fp, #-220]
	ldr	r3, [fp, #-240]
	cmp	r2, r3
	movle	r3, #1
	movgt	r3, #0
	and	r3, r3, #255
.L254:
	cmp	r3, #0
	bne	.L255
	ldr	r3, [fp, #-216]
	sub	r3, r3, #1
	str	r3, [fp, #-220]
.L256:
	mov	r3, #1
	str	r3, [fp, #-184]
	mov	r3, #1
	str	r3, [fp, #-164]
	ldr	r3, [fp, #-220]
	str	r3, [fp, #-176]
	ldr	r3, [fp, #-220]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-160]
	ldr	r3, [fp, #-160]
	cmp	r3, #0
	bge	.L257
	ldr	r3, [fp, #-160]
	rsb	r3, r3, #0
	str	r3, [fp, #-160]
	ldr	r3, [fp, #-220]
	sub	r3, r3, #1
	str	r3, [fp, #-220]
	ldr	r3, [fp, #-220]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-272]
	add	r3, r2, r3
	ldr	r3, [r3]
	rsb	r3, r3, #0
	str	r3, [fp, #-164]
	mov	r3, #2
	str	r3, [fp, #-184]
.L257:
	ldr	r3, [fp, #-220]
	sub	r3, r3, #1
	str	r3, [fp, #-220]
	ldr	r2, [fp, #-160]
	ldr	r3, [fp, #-176]
	cmp	r2, r3
	beq	.L258
	ldr	r3, [fp, #-220]
	cmp	r3, #0
	ble	.L258
	ldr	r2, [fp, #-160]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r2, [fp, #-176]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #220
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-268]
	bl	cswap_
.L258:
	ldr	r3, [fp, #-176]
	sub	r3, r3, #1
	str	r3, [fp, #-176]
	ldr	r3, [fp, #-184]
	cmp	r3, #2
	bne	.L259
	ldr	r2, [fp, #-164]
	ldr	r3, [fp, #-176]
	cmp	r2, r3
	beq	.L259
	ldr	r3, [fp, #-220]
	cmp	r3, #0
	ble	.L259
	ldr	r2, [fp, #-164]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r1, r2, r3
	ldr	r2, [fp, #-176]
	ldr	r3, [fp, #-152]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-264]
	add	r2, r2, r3
	sub	r0, fp, #220
	ldr	r3, [fp, #-268]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-268]
	bl	cswap_
.L259:
	ldr	r3, [fp, #-220]
	cmp	r3, #1
	ble	.L260
	b	.L256
.L260:
	ldr	r3, [fp, #-216]
	sub	r2, r3, #1
	ldr	r3, [fp, #-260]
	str	r2, [r3]
.L171:
	mov	r3, #0
	ldr	r2, .L317+20
	ldr	r1, [r2]
	ldr	r2, [fp, #-32]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L262
	bl	__stack_chk_fail
.L262:
	mov	r0, r3
	sub	sp, fp, #24
	@ sp needed
	pop	{r4, r5, r6, r7, r8, fp, pc}
.L318:
	.align	2
.L317:
	.word	c__1
	.word	-1082130432
	.word	c_b1
	.word	.LC4
	.word	.LC5
	.word	.LC6
	.size	clahef_rook_, .-clahef_rook_
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
