	.file	"82516.c"
	.intel_syntax noprefix
	.text
	.globl	EXTRA_OFFSET_X
	.bss
	.align 4
	.type	EXTRA_OFFSET_X, @object
	.size	EXTRA_OFFSET_X, 4
EXTRA_OFFSET_X:
	.zero	4
	.globl	EXTRA_OFFSET_Y
	.align 4
	.type	EXTRA_OFFSET_Y, @object
	.size	EXTRA_OFFSET_Y, 4
EXTRA_OFFSET_Y:
	.zero	4
	.globl	CUT_X
	.align 4
	.type	CUT_X, @object
	.size	CUT_X, 4
CUT_X:
	.zero	4
	.globl	CUT_Y
	.align 4
	.type	CUT_Y, @object
	.size	CUT_Y, 4
CUT_Y:
	.zero	4
	.globl	PRINT_ITERATIONS
	.align 4
	.type	PRINT_ITERATIONS, @object
	.size	PRINT_ITERATIONS, 4
PRINT_ITERATIONS:
	.zero	4
	.globl	PRINT_LAPLACIAN
	.align 4
	.type	PRINT_LAPLACIAN, @object
	.size	PRINT_LAPLACIAN, 4
PRINT_LAPLACIAN:
	.zero	4
	.globl	PRINT1
	.align 4
	.type	PRINT1, @object
	.size	PRINT1, 4
PRINT1:
	.zero	4
	.globl	PRINT11
	.align 4
	.type	PRINT11, @object
	.size	PRINT11, 4
PRINT11:
	.zero	4
	.globl	OFFSET_X
	.data
	.align 4
	.type	OFFSET_X, @object
	.size	OFFSET_X, 4
OFFSET_X:
	.long	10
	.globl	OFFSET_Y
	.align 4
	.type	OFFSET_Y, @object
	.size	OFFSET_Y, 4
OFFSET_Y:
	.long	10
	.globl	calc
	.bss
	.align 32
	.type	calc, @object
	.size	calc, 324
calc:
	.zero	324
	.globl	fd_correct
	.align 4
	.type	fd_correct, @object
	.size	fd_correct, 4
fd_correct:
	.zero	4
	.globl	SAMPLE
	.align 4
	.type	SAMPLE, @object
	.size	SAMPLE, 4
SAMPLE:
	.zero	4
	.globl	PREVIOUS1
	.align 4
	.type	PREVIOUS1, @object
	.size	PREVIOUS1, 4
PREVIOUS1:
	.zero	4
	.globl	PREVIOUS2
	.align 4
	.type	PREVIOUS2, @object
	.size	PREVIOUS2, 4
PREVIOUS2:
	.zero	4
	.globl	pic_x
	.align 4
	.type	pic_x, @object
	.size	pic_x, 4
pic_x:
	.zero	4
	.globl	pic_y
	.align 4
	.type	pic_y, @object
	.size	pic_y, 4
pic_y:
	.zero	4
	.globl	no_bytes
	.align 4
	.type	no_bytes, @object
	.size	no_bytes, 4
no_bytes:
	.zero	4
	.globl	fd_vels
	.align 4
	.type	fd_vels, @object
	.size	fd_vels, 4
fd_vels:
	.zero	4
	.globl	offset_x
	.align 4
	.type	offset_x, @object
	.size	offset_x, 4
offset_x:
	.zero	4
	.globl	offset_y
	.align 4
	.type	offset_y, @object
	.size	offset_y, 4
offset_y:
	.zero	4
	.globl	size_x
	.align 4
	.type	size_x, @object
	.size	size_x, 4
size_x:
	.zero	4
	.globl	size_y
	.align 4
	.type	size_y, @object
	.size	size_y, 4
size_y:
	.zero	4
	.globl	actual_x
	.align 4
	.type	actual_x, @object
	.size	actual_x, 4
actual_x:
	.zero	4
	.globl	actual_y
	.align 4
	.type	actual_y, @object
	.size	actual_y, 4
actual_y:
	.zero	4
	.globl	int_size_x
	.align 4
	.type	int_size_x, @object
	.size	int_size_x, 4
int_size_x:
	.zero	4
	.globl	int_size_y
	.align 4
	.type	int_size_y, @object
	.size	int_size_y, 4
int_size_y:
	.zero	4
	.globl	fdcov1
	.align 4
	.type	fdcov1, @object
	.size	fdcov1, 4
fdcov1:
	.zero	4
	.globl	fdcov2
	.align 4
	.type	fdcov2, @object
	.size	fdcov2, 4
fdcov2:
	.zero	4
	.globl	COUNT_SINGULAR
	.align 4
	.type	COUNT_SINGULAR, @object
	.size	COUNT_SINGULAR, 4
COUNT_SINGULAR:
	.zero	4
	.globl	STEP
	.align 4
	.type	STEP, @object
	.size	STEP, 4
STEP:
	.zero	4
	.globl	PRINT_FLOWS1
	.align 4
	.type	PRINT_FLOWS1, @object
	.size	PRINT_FLOWS1, 4
PRINT_FLOWS1:
	.zero	4
	.globl	PRINT_FLOWS2
	.align 4
	.type	PRINT_FLOWS2, @object
	.size	PRINT_FLOWS2, 4
PRINT_FLOWS2:
	.zero	4
	.globl	MAX_NUMBER_OF_ITERATIONS
	.align 4
	.type	MAX_NUMBER_OF_ITERATIONS, @object
	.size	MAX_NUMBER_OF_ITERATIONS, 4
MAX_NUMBER_OF_ITERATIONS:
	.zero	4
	.globl	SUBSET
	.align 4
	.type	SUBSET, @object
	.size	SUBSET, 4
SUBSET:
	.zero	4
	.globl	time1
	.align 8
	.type	time1, @object
	.size	time1, 8
time1:
	.zero	8
	.globl	time2
	.align 8
	.type	time2, @object
	.size	time2, 8
time2:
	.zero	8
	.globl	time3
	.align 8
	.type	time3, @object
	.size	time3, 8
time3:
	.zero	8
	.globl	time4
	.align 8
	.type	time4, @object
	.size	time4, 8
time4:
	.zero	8
	.globl	temporal_offset
	.align 8
	.type	temporal_offset, @object
	.size	temporal_offset, 8
temporal_offset:
	.zero	8
	.globl	normal_velocities
	.align 32
	.type	normal_velocities, @object
	.size	normal_velocities, 845000
normal_velocities:
	.zero	845000
	.globl	full_velocities
	.align 32
	.type	full_velocities, @object
	.size	full_velocities, 845000
full_velocities:
	.zero	845000
	.globl	threshold_velocity
	.align 32
	.type	threshold_velocity, @object
	.size	threshold_velocity, 845000
threshold_velocity:
	.zero	845000
	.globl	Ucc
	.align 32
	.type	Ucc, @object
	.size	Ucc, 845000
Ucc:
	.zero	845000
	.globl	Scc
	.align 32
	.type	Scc, @object
	.size	Scc, 1690000
Scc:
	.zero	1690000
	.globl	S
	.align 32
	.type	S, @object
	.size	S, 1690000
S:
	.zero	1690000
	.globl	correct_velocities
	.align 32
	.type	correct_velocities, @object
	.size	correct_velocities, 845000
correct_velocities:
	.zero	845000
	.globl	TAU
	.align 4
	.type	TAU, @object
	.size	TAU, 4
TAU:
	.zero	4
	.globl	SsumI
	.align 32
	.type	SsumI, @object
	.size	SsumI, 1690000
SsumI:
	.zero	1690000
	.globl	Un
	.align 32
	.type	Un, @object
	.size	Un, 1690000
Un:
	.zero	1690000
	.globl	Sn
	.align 32
	.type	Sn, @object
	.size	Sn, 3380000
Sn:
	.zero	3380000
	.globl	SccI
	.align 32
	.type	SccI, @object
	.size	SccI, 1690000
SccI:
	.zero	1690000
	.globl	Ssum
	.align 32
	.type	Ssum, @object
	.size	Ssum, 1690000
Ssum:
	.zero	1690000
	.globl	SccI_Ucc
	.align 32
	.type	SccI_Ucc, @object
	.size	SccI_Ucc, 845000
SccI_Ucc:
	.zero	845000
	.globl	Ua
	.align 32
	.type	Ua, @object
	.size	Ua, 845000
Ua:
	.zero	845000
	.globl	fdf1
	.align 4
	.type	fdf1, @object
	.size	fdf1, 4
fdf1:
	.zero	4
	.globl	fdf2
	.align 4
	.type	fdf2, @object
	.size	fdf2, 4
fdf2:
	.zero	4
	.globl	BINARY
	.align 4
	.type	BINARY, @object
	.size	BINARY, 4
BINARY:
	.zero	4
	.globl	CORRECT_VELOCITIES
	.align 4
	.type	CORRECT_VELOCITIES, @object
	.size	CORRECT_VELOCITIES, 4
CORRECT_VELOCITIES:
	.zero	4
	.globl	header_ints
	.align 32
	.type	header_ints, @object
	.size	header_ints, 32
header_ints:
	.zero	32
	.globl	STEP2
	.align 4
	.type	STEP2, @object
	.size	STEP2, 4
STEP2:
	.zero	4
	.globl	FILE_NUMBER
	.align 4
	.type	FILE_NUMBER, @object
	.size	FILE_NUMBER, 4
FILE_NUMBER:
	.zero	4
	.globl	LAPLACIAN
	.align 4
	.type	LAPLACIAN, @object
	.size	LAPLACIAN, 4
LAPLACIAN:
	.zero	4
	.globl	fp
	.align 8
	.type	fp, @object
	.size	fp, 8
fp:
	.zero	8
	.globl	inpic
	.align 32
	.type	inpic, @object
	.size	inpic, 316875
inpic:
	.zero	316875
	.globl	fpic
	.align 32
	.type	fpic, @object
	.size	fpic, 1267500
fpic:
	.zero	1267500
	.globl	inname
	.align 32
	.type	inname, @object
	.size	inname, 100
inname:
	.zero	100
	.globl	filename
	.align 32
	.type	filename, @object
	.size	filename, 100
filename:
	.zero	100
	.globl	path1
	.align 32
	.type	path1, @object
	.size	path1, 100
path1:
	.zero	100
	.globl	path2
	.align 32
	.type	path2, @object
	.size	path2, 100
path2:
	.zero	100
	.globl	outname
	.align 32
	.type	outname, @object
	.size	outname, 100
outname:
	.zero	100
	.section	.rodata
	.align 8
.LC0:
	.ascii	"Usage: %s <fi"
	.string	"lename stem> <central_image> <input data path> <output data path> [-C <filename> -B <cols> <rows> -T1 <low> <high> <steps> -T2 <low> <high> <steps>  -P1 -P2 -PR1 -PR2 -PRI -PRL -n <int> -N <int> -w <int> -i <int> -NL -s <int> -SUB <int> <int> <int> <int>]\n"
	.align 8
.LC1:
	.string	"Use 2 images starting with stem.center_image"
	.align 8
.LC2:
	.string	"<input data path> - directory where images are"
	.align 8
.LC3:
	.string	"<output data path> - directory where the flow fields are stored"
	.align 8
.LC4:
	.string	"-C <file> - correct velocity data provided and error analysis"
	.align 8
.LC5:
	.string	"            will be performed on it"
	.align 8
.LC6:
	.string	"-B <cols> <rows> - Input binary images-specify dimensions "
	.align 8
.LC7:
	.string	"                   not necessary for rasterfiles"
	.align 8
.LC8:
	.string	"-T1 <float> <float> <int> - threshold the step 1 velocities using the smallest"
	.align 8
.LC9:
	.string	"              eigenvalue of the step 1covariance matrix at each position"
	.align 8
.LC10:
	.string	"-T2 <float> <float> <int> - threshold the step 2 velocities using the smallest"
	.align 8
.LC11:
	.string	"              eigenvalue of the step 2 covariance matrix at each position"
	.align 8
.LC12:
	.string	"-P1 - do not perform step 1 of the compuatation, instead read the"
	.align 8
.LC13:
	.string	"      previously computed step 1 velocities and covariance matrices"
	.align 8
.LC14:
	.string	"-P2 - do not perform step 2 of the compuatation, instead read the"
	.align 8
.LC15:
	.string	"      previously computed step 2 velocities and covariance matrices"
	.align 8
.LC16:
	.string	"    If -P2 is used but -P1 is not the program terminates after step 1"
	.align 8
.LC17:
	.string	"-PR1 - print thresholded flow fields for step 1"
	.align 8
.LC18:
	.string	"-PR2 - print thresholded flow fields for step 2"
	.align 8
.LC19:
	.string	"-PRI - print flow fields after each iteration"
	.align 8
.LC20:
	.string	"     - These flow fields occupy a LOT of ddisk space"
	.align 8
.LC21:
	.string	"-PRL - print the laplacian images"
	.align 8
.LC22:
	.string	"-n - neighbourhood size (2n+1) in step1 computation (default 2)"
	.align 8
.LC23:
	.string	"-N - maximum displacement in pixels (-u,-v <= N <= u,v) (default and maximum value is/can be 4)"
	.align 8
.LC24:
	.string	"-w - window size (2w+1) for step 2 computation [currently must be 1 or 2] (default is 1)"
	.align 8
.LC25:
	.string	"-i - number of iterations for step 2 (default 10)"
	.align 8
.LC26:
	.string	"-s <int> - specify the distance of the adjacent left and right frames"
	.align 8
.LC27:
	.string	"           from the central frame - default is 1"
	.align 8
.LC28:
	.string	"-NL - use the original images as input"
	.align 8
.LC29:
	.string	"-SUB <x> <y> <size_x> <size_y> - compute velocity for a subset of the images"
	.align 8
.LC30:
	.string	"     compute flow for a subarea starting at (x,y) and of size (size_x,size_y)"
	.align 8
.LC31:
	.string	"     Note: you must take offsets into account!"
	.align 8
.LC32:
	.string	"-C, -B, -T1, -T2, -P1, -P2, -n, -N, -w, -i, -PR1, -PR2, PRI, -PRL, -NL and -SUB can be in any order and are optional"
.LC33:
	.string	"%d arguments\n"
.LC34:
	.string	"Command line:"
.LC35:
	.string	"%s "
.LC36:
	.string	"%d"
	.align 8
.LC37:
	.string	"<input path>: %s\n<output path>: %s\n"
.LC39:
	.string	"SMALL: %f\n"
.LC40:
	.string	"-S1"
.LC41:
	.string	"-T1"
.LC42:
	.string	"%f"
	.align 8
.LC43:
	.string	"Error: threshold ranges for step1 are wrong - no thresholding done"
.LC44:
	.string	"-T2"
	.align 8
.LC45:
	.string	"Error: threshold ranges for step2 are wrong - no thresholding done"
.LC46:
	.string	"-C"
.LC47:
	.string	"-B"
.LC48:
	.string	"-s"
.LC49:
	.string	"-P1"
.LC50:
	.string	"-NL"
.LC51:
	.string	"-PR1"
.LC52:
	.string	"-PR2"
.LC53:
	.string	"-PRI"
.LC54:
	.string	"-PRL"
.LC55:
	.string	"-w"
.LC56:
	.string	"Fatal error: w must be 1 or 2"
.LC57:
	.string	"-n"
.LC58:
	.string	"-N"
.LC59:
	.string	"-i"
.LC60:
	.string	"-P2"
.LC61:
	.string	"-SUB"
	.align 8
.LC62:
	.string	"Fatal error invalid %dth argument: %s\n"
	.align 8
.LC63:
	.string	"Step 1 velocities are thresholded for tau=%f to %f in increments of %f\n"
	.align 8
.LC64:
	.string	"Step 2 velocities are thresholded for tau=%f to %f in increments of %f\n"
	.align 8
.LC65:
	.string	"Velocity Range: -%d <= u,v <= %d\n"
	.align 8
.LC66:
	.string	"n=%d neighbourhood size for SSD surface calculation\n"
.LC67:
	.string	"w=%d window size for step 2\n"
.LC68:
	.string	"Left image: %d\n"
.LC69:
	.string	"Central image: %d\n"
.LC70:
	.string	"Right image: %d\n"
	.align 8
.LC71:
	.string	"%s/singh.step1.%sF-n-%d-w-%d-N-%d"
	.align 8
.LC72:
	.string	"%s/singh.step1.%sF-n-%d-w-%d-N-%d-s-%d"
.LC73:
	.string	"Error creating file %s.\n"
.LC74:
	.string	"File %s opened for output\n"
	.align 8
.LC75:
	.string	"%s/singh.step1.%sC-n-%d-w-%d-N-%d"
	.align 8
.LC76:
	.string	"%s/singh.step1.%sC-n-%d-w-%d-N-%d-s-%d"
	.align 8
.LC77:
	.string	"Fatal error: file %s does not exit\n"
.LC78:
	.string	"File %s opened for input\n"
	.align 8
.LC79:
	.string	"Fatal error: file %s does not exist\n"
	.align 8
.LC80:
	.string	"%s/singh.step2.%sF-n-%d-w-%d-N-%d"
	.align 8
.LC81:
	.string	"%s/singh.step2.%sF-n-%d-w-%d-N-%d-s-%d"
	.align 8
.LC82:
	.string	"%s/singh.step2.%sC-n-%d-w-%d-N-%d"
	.align 8
.LC83:
	.string	"%s/singh.step2.%sC-n-%d-w-%d-N-%d-s-%d"
.LC84:
	.string	"unknown"
	.align 8
.LC86:
	.string	"Fatal error: something wrong with correct velocity data"
.LC87:
	.string	"Actual y: %f Actual x: %f\n"
.LC88:
	.string	"Size y: %f Size x: %f\n"
.LC89:
	.string	"Offset y: %f Offset x: %f\n"
.LC90:
	.string	"\nFile %s opened and read\n"
	.align 8
.LC91:
	.string	"Size of correct velocity data: %d %d --- "
.LC92:
	.string	"%d bytes read\n"
.LC93:
	.string	"%s.%stime-n-%d-w-%d-s-%d"
.LC94:
	.string	"%s.%stime-n-%d-w-%d"
.LC95:
	.string	"w"
.LC96:
	.string	"The time data is in file: %s\n"
.LC97:
	.string	"Start time: %ld\n"
.LC98:
	.string	"%s/%s"
	.align 8
.LC99:
	.string	"Fatal error: subarea too small - must be at least 6*6"
.LC100:
	.string	"Subarea specified: %d*%d\n"
	.align 8
.LC101:
	.string	"Fatal error: subarea parameters incorrect"
.LC102:
	.string	"Starting Coordinates: %d,%d  "
.LC103:
	.string	"Size: %d * %d\n"
.LC104:
	.string	"Too big by %d,%d\n"
	.align 8
.LC105:
	.string	"\n\nSubset of image sequence used"
.LC107:
	.string	"\nOutputing flow data"
.LC108:
	.string	"Full"
.LC109:
	.string	"\nStep 1:"
.LC110:
	.string	"\nError Analysis Performed"
	.align 8
.LC111:
	.string	"Average Error: %f Standard Deviation: %f Density: %f\n"
	.align 8
.LC112:
	.string	"Minimum Angle Error: %f Maximum Angle Error: %f\n"
	.align 8
.LC113:
	.string	"\n-----------------------------------------------------"
.LC114:
	.string	"Step 1 Thresholding"
.LC115:
	.string	"\nThreshold: %f\n"
.LC116:
	.string	"%s/singh.step1.%sF-tau-%4.2f"
	.align 8
.LC117:
	.string	"\nOutputing flow data for step 2"
.LC118:
	.string	"\nStep 2:"
.LC119:
	.string	"Step 2 Thresholding"
.LC120:
	.string	"%s/singh.step2.%sF-tau-%4.2f"
.LC121:
	.string	"\nProcessing Finished"
.LC122:
	.string	"\nEnd time: %ld\n"
.LC123:
	.string	"End Time in seconds: %ld\n"
.LC125:
	.string	"End Time in minutes: %f\n"
.LC127:
	.string	"End Time in hours: %f\n"
	.text
	.globl	main
	.type	main, @function
main:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 352
	mov	DWORD PTR -340[rbp], edi
	mov	QWORD PTR -352[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR FILE_NUMBER[rip], -1
	mov	DWORD PTR COUNT_SINGULAR[rip], 0
	mov	DWORD PTR SUBSET[rip], 0
	cmp	DWORD PTR -340[rbp], 6
	jle	.L2
	cmp	DWORD PTR -340[rbp], 36
	jle	.L3
.L2:
	mov	rax, QWORD PTR -352[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rsi, rax
	lea	rdi, .LC0[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC1[rip]
	call	puts@PLT
	lea	rdi, .LC2[rip]
	call	puts@PLT
	lea	rdi, .LC3[rip]
	call	puts@PLT
	lea	rdi, .LC4[rip]
	call	puts@PLT
	lea	rdi, .LC5[rip]
	call	puts@PLT
	lea	rdi, .LC6[rip]
	call	puts@PLT
	lea	rdi, .LC7[rip]
	call	puts@PLT
	lea	rdi, .LC8[rip]
	call	puts@PLT
	lea	rdi, .LC9[rip]
	call	puts@PLT
	lea	rdi, .LC10[rip]
	call	puts@PLT
	lea	rdi, .LC11[rip]
	call	puts@PLT
	lea	rdi, .LC12[rip]
	call	puts@PLT
	lea	rdi, .LC13[rip]
	call	puts@PLT
	lea	rdi, .LC14[rip]
	call	puts@PLT
	lea	rdi, .LC15[rip]
	call	puts@PLT
	lea	rdi, .LC16[rip]
	call	puts@PLT
	lea	rdi, .LC17[rip]
	call	puts@PLT
	lea	rdi, .LC18[rip]
	call	puts@PLT
	lea	rdi, .LC19[rip]
	call	puts@PLT
	lea	rdi, .LC20[rip]
	call	puts@PLT
	lea	rdi, .LC21[rip]
	call	puts@PLT
	lea	rdi, .LC22[rip]
	call	puts@PLT
	lea	rdi, .LC23[rip]
	call	puts@PLT
	lea	rdi, .LC24[rip]
	call	puts@PLT
	lea	rdi, .LC25[rip]
	call	puts@PLT
	lea	rdi, .LC26[rip]
	call	puts@PLT
	lea	rdi, .LC27[rip]
	call	puts@PLT
	lea	rdi, .LC28[rip]
	call	puts@PLT
	lea	rdi, .LC29[rip]
	call	puts@PLT
	lea	rdi, .LC30[rip]
	call	puts@PLT
	lea	rdi, .LC31[rip]
	call	puts@PLT
	lea	rdi, .LC32[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L3:
	mov	eax, DWORD PTR -340[rbp]
	mov	esi, eax
	lea	rdi, .LC33[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC34[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -256[rbp], 0
	jmp	.L4
.L5:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rax
	lea	rdi, .LC35[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -256[rbp], 1
.L4:
	mov	eax, DWORD PTR -256[rbp]
	cmp	eax, DWORD PTR -340[rbp]
	jl	.L5
	mov	edi, 10
	call	putchar@PLT
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 16
	mov	rax, QWORD PTR [rax]
	lea	rdx, -316[rbp]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 24
	mov	rax, QWORD PTR [rax]
	mov	rsi, rax
	lea	rdi, path1[rip]
	call	strcpy@PLT
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 32
	mov	rax, QWORD PTR [rax]
	mov	rsi, rax
	lea	rdi, path2[rip]
	call	strcpy@PLT
	lea	rdx, path2[rip]
	lea	rsi, path1[rip]
	lea	rdi, .LC37[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR .LC38[rip]
	movq	xmm0, rax
	lea	rdi, .LC39[rip]
	mov	eax, 1
	call	printf@PLT
	mov	DWORD PTR BINARY[rip], 0
	mov	DWORD PTR CORRECT_VELOCITIES[rip], 0
	mov	DWORD PTR SAMPLE[rip], 1
	mov	DWORD PTR STEP[rip], 1
	mov	DWORD PTR PREVIOUS1[rip], 0
	mov	DWORD PTR PREVIOUS2[rip], 0
	mov	DWORD PTR LAPLACIAN[rip], 1
	mov	DWORD PTR PRINT_FLOWS1[rip], 0
	mov	DWORD PTR PRINT_FLOWS2[rip], 0
	mov	DWORD PTR PRINT_ITERATIONS[rip], 0
	mov	DWORD PTR PRINT_LAPLACIAN[rip], 0
	lea	rax, -224[rbp]
	movabs	rcx, 31093567915781749
	mov	QWORD PTR [rax], rcx
	mov	DWORD PTR -256[rbp], 6
	mov	DWORD PTR -248[rbp], 0
	mov	eax, DWORD PTR -248[rbp]
	mov	DWORD PTR -252[rbp], eax
	mov	DWORD PTR STEP2[rip], 1
	mov	DWORD PTR -304[rbp], 1
	mov	DWORD PTR -324[rbp], 2
	mov	DWORD PTR -320[rbp], 4
	mov	DWORD PTR MAX_NUMBER_OF_ITERATIONS[rip], 10
	jmp	.L6
.L33:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC40[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L7
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, SAMPLE[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	DWORD PTR STEP2[rip], 0
	add	DWORD PTR -256[rbp], 1
	jmp	.L8
.L7:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC41[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L9
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -280[rbp]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -276[rbp]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	add	rax, 2
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -312[rbp]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	DWORD PTR -252[rbp], 1
	movss	xmm0, DWORD PTR -280[rbp]
	movss	xmm1, DWORD PTR -276[rbp]
	comiss	xmm0, xmm1
	jnb	.L10
	mov	eax, DWORD PTR -312[rbp]
	test	eax, eax
	jg	.L11
.L10:
	lea	rdi, .LC43[rip]
	call	puts@PLT
	mov	DWORD PTR -252[rbp], 0
	jmp	.L12
.L11:
	movss	xmm0, DWORD PTR -276[rbp]
	movss	xmm1, DWORD PTR -280[rbp]
	subss	xmm0, xmm1
	mov	eax, DWORD PTR -312[rbp]
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, eax
	divss	xmm0, xmm1
	movss	DWORD PTR -244[rbp], xmm0
.L12:
	add	DWORD PTR -256[rbp], 3
	jmp	.L8
.L9:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC44[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L13
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -272[rbp]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -268[rbp]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	add	rax, 2
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -308[rbp]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	DWORD PTR -248[rbp], 1
	movss	xmm0, DWORD PTR -272[rbp]
	movss	xmm1, DWORD PTR -268[rbp]
	comiss	xmm0, xmm1
	jnb	.L14
	mov	eax, DWORD PTR -308[rbp]
	test	eax, eax
	jg	.L15
.L14:
	lea	rdi, .LC45[rip]
	call	puts@PLT
	mov	DWORD PTR -248[rbp], 0
	jmp	.L16
.L15:
	movss	xmm0, DWORD PTR -268[rbp]
	movss	xmm1, DWORD PTR -272[rbp]
	subss	xmm0, xmm1
	mov	eax, DWORD PTR -308[rbp]
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, eax
	divss	xmm0, xmm1
	movss	DWORD PTR -240[rbp], xmm0
.L16:
	add	DWORD PTR -256[rbp], 3
	jmp	.L8
.L13:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC46[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L17
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	lea	rax, -224[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	mov	DWORD PTR CORRECT_VELOCITIES[rip], 1
	add	DWORD PTR -256[rbp], 1
	jmp	.L8
.L17:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC47[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L18
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, pic_y[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, pic_x[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	DWORD PTR BINARY[rip], 1
	add	DWORD PTR -256[rbp], 2
	jmp	.L8
.L18:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC48[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L19
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, STEP[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	add	DWORD PTR -256[rbp], 1
	jmp	.L8
.L19:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC49[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L20
	mov	DWORD PTR PREVIOUS1[rip], 1
	jmp	.L8
.L20:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC50[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L21
	mov	DWORD PTR LAPLACIAN[rip], 0
	jmp	.L8
.L21:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC51[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L22
	mov	DWORD PTR PRINT_FLOWS1[rip], 1
	jmp	.L8
.L22:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC52[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L23
	mov	DWORD PTR PRINT_FLOWS2[rip], 1
	jmp	.L8
.L23:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC53[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L24
	mov	DWORD PTR PRINT_ITERATIONS[rip], 1
	jmp	.L8
.L24:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC54[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L25
	mov	DWORD PTR PRINT_LAPLACIAN[rip], 1
	jmp	.L8
.L25:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC55[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L26
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -304[rbp]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	eax, DWORD PTR -304[rbp]
	cmp	eax, 1
	je	.L27
	mov	eax, DWORD PTR -304[rbp]
	cmp	eax, 2
	je	.L27
	lea	rdi, .LC56[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L27:
	add	DWORD PTR -256[rbp], 1
	jmp	.L8
.L26:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC57[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L28
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -324[rbp]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	add	DWORD PTR -256[rbp], 1
	jmp	.L8
.L28:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC58[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L29
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -320[rbp]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	add	DWORD PTR -256[rbp], 1
	jmp	.L8
.L29:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC59[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L30
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, MAX_NUMBER_OF_ITERATIONS[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	add	DWORD PTR -256[rbp], 1
	jmp	.L8
.L30:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC60[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L31
	mov	DWORD PTR PREVIOUS2[rip], 1
	jmp	.L8
.L31:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC61[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L32
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, EXTRA_OFFSET_X[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, EXTRA_OFFSET_Y[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	add	rax, 2
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, CUT_X[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	add	rax, 3
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, CUT_Y[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	__isoc99_sscanf@PLT
	mov	DWORD PTR SUBSET[rip], 1
	add	DWORD PTR -256[rbp], 4
	jmp	.L8
.L32:
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -256[rbp]
	mov	esi, eax
	lea	rdi, .LC62[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L8:
	add	DWORD PTR -256[rbp], 1
.L6:
	mov	eax, DWORD PTR -256[rbp]
	cmp	eax, DWORD PTR -340[rbp]
	jle	.L33
	mov	eax, DWORD PTR PREVIOUS1[rip]
	test	eax, eax
	jne	.L34
	mov	eax, DWORD PTR PREVIOUS2[rip]
	test	eax, eax
	je	.L34
	mov	DWORD PTR STEP2[rip], 0
.L34:
	cmp	DWORD PTR -252[rbp], 0
	je	.L35
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -244[rbp]
	movss	xmm0, DWORD PTR -276[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -280[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm2
	movq	rax, xmm3
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC63[rip]
	mov	eax, 3
	call	printf@PLT
.L35:
	cmp	DWORD PTR -248[rbp], 0
	je	.L36
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -240[rbp]
	movss	xmm0, DWORD PTR -268[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -272[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm2
	movq	rax, xmm4
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC64[rip]
	mov	eax, 3
	call	printf@PLT
.L36:
	mov	edx, DWORD PTR -320[rbp]
	mov	eax, DWORD PTR -320[rbp]
	mov	esi, eax
	lea	rdi, .LC65[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -324[rbp]
	mov	esi, eax
	lea	rdi, .LC66[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -304[rbp]
	mov	esi, eax
	lea	rdi, .LC67[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -316[rbp]
	mov	edx, DWORD PTR STEP[rip]
	sub	eax, edx
	mov	esi, eax
	lea	rdi, .LC68[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -316[rbp]
	mov	esi, eax
	lea	rdi, .LC69[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edx, DWORD PTR -316[rbp]
	mov	eax, DWORD PTR STEP[rip]
	add	eax, edx
	mov	esi, eax
	lea	rdi, .LC70[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR PREVIOUS1[rip]
	test	eax, eax
	jne	.L37
	mov	eax, DWORD PTR STEP[rip]
	cmp	eax, 1
	jne	.L38
	mov	edx, DWORD PTR -320[rbp]
	mov	esi, DWORD PTR -304[rbp]
	mov	ecx, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC71[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
	jmp	.L39
.L38:
	mov	ecx, DWORD PTR STEP[rip]
	mov	edx, DWORD PTR -320[rbp]
	mov	edi, DWORD PTR -304[rbp]
	mov	esi, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	push	rcx
	push	rdx
	mov	r9d, edi
	mov	r8d, esi
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC72[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
.L39:
	mov	esi, 493
	lea	rdi, outname[rip]
	call	creat@PLT
	mov	DWORD PTR fdf1[rip], eax
	mov	eax, DWORD PTR fdf1[rip]
	test	eax, eax
	jns	.L40
	lea	rsi, outname[rip]
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L40:
	lea	rsi, outname[rip]
	lea	rdi, .LC74[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR STEP[rip]
	cmp	eax, 1
	jne	.L41
	mov	edx, DWORD PTR -320[rbp]
	mov	esi, DWORD PTR -304[rbp]
	mov	ecx, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC75[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
	jmp	.L42
.L41:
	mov	ecx, DWORD PTR STEP[rip]
	mov	edx, DWORD PTR -320[rbp]
	mov	edi, DWORD PTR -304[rbp]
	mov	esi, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	push	rcx
	push	rdx
	mov	r9d, edi
	mov	r8d, esi
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC76[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
.L42:
	mov	esi, 493
	lea	rdi, outname[rip]
	call	creat@PLT
	mov	DWORD PTR fdcov1[rip], eax
	mov	eax, DWORD PTR fdcov1[rip]
	test	eax, eax
	jns	.L43
	lea	rsi, outname[rip]
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L43:
	lea	rsi, outname[rip]
	lea	rdi, .LC74[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L44
.L37:
	mov	eax, DWORD PTR STEP[rip]
	cmp	eax, 1
	jne	.L45
	mov	edx, DWORD PTR -320[rbp]
	mov	esi, DWORD PTR -304[rbp]
	mov	ecx, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC71[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
	jmp	.L46
.L45:
	mov	ecx, DWORD PTR STEP[rip]
	mov	edx, DWORD PTR -320[rbp]
	mov	edi, DWORD PTR -304[rbp]
	mov	esi, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	push	rcx
	push	rdx
	mov	r9d, edi
	mov	r8d, esi
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC72[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
.L46:
	mov	esi, 0
	lea	rdi, outname[rip]
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR fdf1[rip], eax
	mov	eax, DWORD PTR fdf1[rip]
	test	eax, eax
	jns	.L47
	lea	rsi, outname[rip]
	lea	rdi, .LC77[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L47:
	lea	rsi, outname[rip]
	lea	rdi, .LC78[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR STEP[rip]
	cmp	eax, 1
	jne	.L48
	mov	edx, DWORD PTR -320[rbp]
	mov	esi, DWORD PTR -304[rbp]
	mov	ecx, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC75[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
	jmp	.L49
.L48:
	mov	ecx, DWORD PTR STEP[rip]
	mov	edx, DWORD PTR -320[rbp]
	mov	edi, DWORD PTR -304[rbp]
	mov	esi, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	push	rcx
	push	rdx
	mov	r9d, edi
	mov	r8d, esi
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC76[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
.L49:
	mov	esi, 0
	lea	rdi, outname[rip]
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR fdcov1[rip], eax
	mov	eax, DWORD PTR fdcov1[rip]
	test	eax, eax
	jns	.L50
	lea	rsi, outname[rip]
	lea	rdi, .LC79[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L50:
	lea	rsi, outname[rip]
	lea	rdi, .LC78[rip]
	mov	eax, 0
	call	printf@PLT
.L44:
	mov	eax, DWORD PTR PREVIOUS2[rip]
	test	eax, eax
	jne	.L51
	mov	eax, DWORD PTR STEP[rip]
	cmp	eax, 1
	jne	.L52
	mov	edx, DWORD PTR -320[rbp]
	mov	esi, DWORD PTR -304[rbp]
	mov	ecx, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC80[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
	jmp	.L53
.L52:
	mov	ecx, DWORD PTR STEP[rip]
	mov	edx, DWORD PTR -320[rbp]
	mov	edi, DWORD PTR -304[rbp]
	mov	esi, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	push	rcx
	push	rdx
	mov	r9d, edi
	mov	r8d, esi
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC81[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
.L53:
	mov	esi, 493
	lea	rdi, outname[rip]
	call	creat@PLT
	mov	DWORD PTR fdf2[rip], eax
	mov	eax, DWORD PTR fdf2[rip]
	test	eax, eax
	jns	.L54
	lea	rsi, outname[rip]
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L54:
	lea	rsi, outname[rip]
	lea	rdi, .LC74[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR STEP[rip]
	cmp	eax, 1
	jne	.L55
	mov	edx, DWORD PTR -320[rbp]
	mov	esi, DWORD PTR -304[rbp]
	mov	ecx, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC82[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
	jmp	.L56
.L55:
	mov	ecx, DWORD PTR STEP[rip]
	mov	edx, DWORD PTR -320[rbp]
	mov	edi, DWORD PTR -304[rbp]
	mov	esi, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	push	rcx
	push	rdx
	mov	r9d, edi
	mov	r8d, esi
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC83[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
.L56:
	mov	esi, 493
	lea	rdi, outname[rip]
	call	creat@PLT
	mov	DWORD PTR fdcov2[rip], eax
	mov	eax, DWORD PTR fdcov2[rip]
	test	eax, eax
	jns	.L57
	lea	rsi, outname[rip]
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L57:
	lea	rsi, outname[rip]
	lea	rdi, .LC74[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	jmp	.L58
.L51:
	mov	eax, DWORD PTR STEP[rip]
	cmp	eax, 1
	jne	.L59
	mov	edx, DWORD PTR -320[rbp]
	mov	esi, DWORD PTR -304[rbp]
	mov	ecx, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC80[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
	jmp	.L60
.L59:
	mov	ecx, DWORD PTR STEP[rip]
	mov	edx, DWORD PTR -320[rbp]
	mov	edi, DWORD PTR -304[rbp]
	mov	esi, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	push	rcx
	push	rdx
	mov	r9d, edi
	mov	r8d, esi
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC81[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
.L60:
	mov	esi, 0
	lea	rdi, outname[rip]
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR fdf2[rip], eax
	mov	eax, DWORD PTR fdf2[rip]
	test	eax, eax
	jns	.L61
	lea	rsi, outname[rip]
	lea	rdi, .LC77[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L61:
	lea	rsi, outname[rip]
	lea	rdi, .LC78[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR STEP[rip]
	cmp	eax, 1
	jne	.L62
	mov	edx, DWORD PTR -320[rbp]
	mov	esi, DWORD PTR -304[rbp]
	mov	ecx, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC82[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
	jmp	.L63
.L62:
	mov	ecx, DWORD PTR STEP[rip]
	mov	edx, DWORD PTR -320[rbp]
	mov	edi, DWORD PTR -304[rbp]
	mov	esi, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	push	rcx
	push	rdx
	mov	r9d, edi
	mov	r8d, esi
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC83[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
.L63:
	mov	esi, 0
	lea	rdi, outname[rip]
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR fdcov2[rip], eax
	mov	eax, DWORD PTR fdcov2[rip]
	test	eax, eax
	jns	.L64
	lea	rsi, outname[rip]
	lea	rdi, .LC79[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L64:
	lea	rsi, outname[rip]
	lea	rdi, .LC78[rip]
	mov	eax, 0
	call	printf@PLT
.L58:
	lea	rax, -224[rbp]
	mov	rsi, rax
	lea	rdi, .LC84[rip]
	call	strcmp@PLT
	test	eax, eax
	je	.L65
	lea	rax, -224[rbp]
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR fd_correct[rip], eax
	mov	DWORD PTR no_bytes[rip], 0
	mov	eax, DWORD PTR fd_correct[rip]
	mov	edx, 4
	lea	rsi, actual_x[rip]
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR no_bytes[rip]
	add	eax, edx
	mov	DWORD PTR no_bytes[rip], eax
	mov	eax, DWORD PTR fd_correct[rip]
	mov	edx, 4
	lea	rsi, actual_y[rip]
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR no_bytes[rip]
	add	eax, edx
	mov	DWORD PTR no_bytes[rip], eax
	mov	eax, DWORD PTR fd_correct[rip]
	mov	edx, 4
	lea	rsi, size_x[rip]
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR no_bytes[rip]
	add	eax, edx
	mov	DWORD PTR no_bytes[rip], eax
	mov	eax, DWORD PTR fd_correct[rip]
	mov	edx, 4
	lea	rsi, size_y[rip]
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR no_bytes[rip]
	add	eax, edx
	mov	DWORD PTR no_bytes[rip], eax
	mov	eax, DWORD PTR fd_correct[rip]
	mov	edx, 4
	lea	rsi, offset_x[rip]
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR no_bytes[rip]
	add	eax, edx
	mov	DWORD PTR no_bytes[rip], eax
	mov	eax, DWORD PTR fd_correct[rip]
	mov	edx, 4
	lea	rsi, offset_y[rip]
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR no_bytes[rip]
	add	eax, edx
	mov	DWORD PTR no_bytes[rip], eax
	movss	xmm0, DWORD PTR offset_x[rip]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L66
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jne	.L66
	movss	xmm0, DWORD PTR offset_y[rip]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L66
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jne	.L66
	movss	xmm0, DWORD PTR actual_x[rip]
	movss	xmm1, DWORD PTR size_x[rip]
	ucomiss	xmm0, xmm1
	jp	.L66
	comiss	xmm0, xmm1
	jne	.L66
	movss	xmm0, DWORD PTR actual_y[rip]
	movss	xmm1, DWORD PTR size_y[rip]
	ucomiss	xmm0, xmm1
	jp	.L66
	comiss	xmm0, xmm1
	je	.L99
.L66:
	lea	rdi, .LC86[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR actual_x[rip]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR actual_y[rip]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm1
	movq	rax, xmm5
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC87[rip]
	mov	eax, 2
	call	printf@PLT
	movss	xmm0, DWORD PTR size_x[rip]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR size_y[rip]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm1
	movq	rax, xmm6
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC88[rip]
	mov	eax, 2
	call	printf@PLT
	movss	xmm0, DWORD PTR offset_x[rip]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR offset_y[rip]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm1
	movq	rax, xmm7
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC89[rip]
	mov	eax, 2
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L99:
	movss	xmm0, DWORD PTR size_x[rip]
	cvttss2si	eax, xmm0
	mov	DWORD PTR int_size_x[rip], eax
	movss	xmm0, DWORD PTR size_y[rip]
	cvttss2si	eax, xmm0
	mov	DWORD PTR int_size_y[rip], eax
	mov	DWORD PTR -256[rbp], 0
	jmp	.L69
.L70:
	mov	eax, DWORD PTR int_size_x[rip]
	sal	eax, 3
	movsx	rdx, eax
	mov	eax, DWORD PTR -256[rbp]
	cdqe
	imul	rax, rax, 2600
	lea	rcx, correct_velocities[rip]
	add	rcx, rax
	mov	eax, DWORD PTR fd_correct[rip]
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR no_bytes[rip]
	add	eax, edx
	mov	DWORD PTR no_bytes[rip], eax
	add	DWORD PTR -256[rbp], 1
.L69:
	mov	eax, DWORD PTR int_size_y[rip]
	cmp	DWORD PTR -256[rbp], eax
	jl	.L70
	lea	rax, -224[rbp]
	mov	rsi, rax
	lea	rdi, .LC90[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edx, DWORD PTR int_size_y[rip]
	mov	eax, DWORD PTR int_size_x[rip]
	mov	esi, eax
	lea	rdi, .LC91[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR no_bytes[rip]
	mov	esi, eax
	lea	rdi, .LC92[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
.L65:
	mov	QWORD PTR temporal_offset[rip], 100
	mov	eax, DWORD PTR STEP[rip]
	cmp	eax, 1
	je	.L71
	mov	ecx, DWORD PTR STEP[rip]
	mov	edi, DWORD PTR -304[rbp]
	mov	esi, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -352[rbp]
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rcx
	mov	r9d, edi
	mov	r8d, esi
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC93[rip]
	lea	rdi, filename[rip]
	mov	eax, 0
	call	sprintf@PLT
	add	rsp, 16
	jmp	.L72
.L71:
	mov	esi, DWORD PTR -304[rbp]
	mov	ecx, DWORD PTR -324[rbp]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -352[rbp]
	mov	rax, QWORD PTR [rax]
	mov	r9d, esi
	mov	r8d, ecx
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC94[rip]
	lea	rdi, filename[rip]
	mov	eax, 0
	call	sprintf@PLT
.L72:
	lea	rsi, .LC95[rip]
	lea	rdi, filename[rip]
	call	fopen@PLT
	mov	QWORD PTR fp[rip], rax
	mov	rax, QWORD PTR fp[rip]
	lea	rdx, filename[rip]
	lea	rsi, .LC96[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 0
	call	time@PLT
	mov	QWORD PTR time1[rip], rax
	mov	rdx, QWORD PTR time1[rip]
	mov	rax, QWORD PTR fp[rip]
	lea	rsi, .LC97[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rax, QWORD PTR fp[rip]
	mov	rdi, rax
	call	fflush@PLT
	mov	rax, QWORD PTR time1[rip]
	mov	QWORD PTR time2[rip], rax
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rdx, QWORD PTR [rax]
	lea	rax, -112[rbp]
	mov	rcx, rdx
	lea	rdx, path1[rip]
	lea	rsi, .LC98[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	mov	edx, DWORD PTR STEP[rip]
	mov	ecx, DWORD PTR -316[rbp]
	lea	rax, -112[rbp]
	sub	rsp, 8
	push	rdx
	mov	r9d, ecx
	lea	r8, header_ints[rip]
	lea	rcx, pic_y[rip]
	lea	rdx, pic_x[rip]
	lea	rsi, inpic[rip]
	mov	rdi, rax
	call	read_image_files
	add	rsp, 16
	mov	eax, DWORD PTR pic_x[rip]
	mov	DWORD PTR -236[rbp], eax
	mov	eax, DWORD PTR pic_y[rip]
	mov	DWORD PTR -232[rbp], eax
	mov	eax, DWORD PTR SUBSET[rip]
	test	eax, eax
	je	.L73
	mov	edi, 10
	call	putchar@PLT
	mov	edx, DWORD PTR EXTRA_OFFSET_X[rip]
	mov	eax, DWORD PTR CUT_X[rip]
	add	edx, eax
	mov	eax, DWORD PTR OFFSET_X[rip]
	add	eax, edx
	mov	DWORD PTR pic_x[rip], eax
	mov	edx, DWORD PTR EXTRA_OFFSET_Y[rip]
	mov	eax, DWORD PTR CUT_Y[rip]
	add	edx, eax
	mov	eax, DWORD PTR OFFSET_Y[rip]
	add	eax, edx
	mov	DWORD PTR pic_y[rip], eax
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	mov	edx, DWORD PTR OFFSET_X[rip]
	sub	eax, edx
	mov	DWORD PTR EXTRA_OFFSET_X[rip], eax
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	mov	edx, DWORD PTR OFFSET_Y[rip]
	sub	eax, edx
	mov	DWORD PTR EXTRA_OFFSET_Y[rip], eax
	mov	eax, DWORD PTR CUT_X[rip]
	cmp	eax, 5
	jle	.L74
	mov	eax, DWORD PTR CUT_Y[rip]
	cmp	eax, 5
	jg	.L75
.L74:
	lea	rdi, .LC99[rip]
	call	puts@PLT
	mov	edx, DWORD PTR CUT_Y[rip]
	mov	eax, DWORD PTR CUT_X[rip]
	mov	esi, eax
	lea	rdi, .LC100[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L75:
	mov	edx, DWORD PTR CUT_X[rip]
	mov	eax, DWORD PTR OFFSET_X[rip]
	add	edx, eax
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	edx, eax
	mov	ecx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -236[rbp]
	sub	eax, ecx
	cmp	edx, eax
	jg	.L76
	mov	edx, DWORD PTR CUT_Y[rip]
	mov	eax, DWORD PTR OFFSET_Y[rip]
	add	edx, eax
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	edx, eax
	mov	ecx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -232[rbp]
	sub	eax, ecx
	cmp	edx, eax
	jle	.L77
.L76:
	lea	rdi, .LC101[rip]
	call	puts@PLT
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	edx, eax
	mov	ecx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	eax, ecx
	mov	esi, eax
	lea	rdi, .LC102[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edx, DWORD PTR CUT_Y[rip]
	mov	eax, DWORD PTR CUT_X[rip]
	mov	esi, eax
	lea	rdi, .LC103[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edx, DWORD PTR CUT_Y[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	edx, eax
	mov	eax, DWORD PTR OFFSET_Y[rip]
	add	eax, eax
	add	eax, edx
	sub	eax, DWORD PTR -232[rbp]
	mov	edx, eax
	mov	ecx, DWORD PTR CUT_X[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	ecx, eax
	mov	eax, DWORD PTR OFFSET_X[rip]
	add	eax, eax
	add	eax, ecx
	sub	eax, DWORD PTR -236[rbp]
	mov	esi, eax
	lea	rdi, .LC104[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L77:
	lea	rdi, .LC105[rip]
	call	puts@PLT
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	edx, eax
	mov	ecx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	eax, ecx
	mov	esi, eax
	lea	rdi, .LC102[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edx, DWORD PTR CUT_Y[rip]
	mov	eax, DWORD PTR CUT_X[rip]
	mov	esi, eax
	lea	rdi, .LC103[rip]
	mov	eax, 0
	call	printf@PLT
.L73:
	mov	eax, DWORD PTR LAPLACIAN[rip]
	test	eax, eax
	je	.L78
	mov	eax, DWORD PTR PREVIOUS1[rip]
	test	eax, eax
	jne	.L78
	mov	edx, DWORD PTR pic_y[rip]
	mov	eax, DWORD PTR pic_x[rip]
	mov	ecx, edx
	mov	edx, eax
	movss	xmm0, DWORD PTR .LC106[rip]
	lea	rsi, fpic[rip]
	lea	rdi, inpic[rip]
	call	laplacian
	mov	eax, DWORD PTR PRINT_LAPLACIAN[rip]
	test	eax, eax
	je	.L80
	mov	esi, DWORD PTR STEP[rip]
	mov	edi, DWORD PTR -316[rbp]
	mov	ecx, DWORD PTR pic_y[rip]
	mov	edx, DWORD PTR pic_x[rip]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	sub	rsp, 8
	push	rsi
	mov	r9d, edi
	lea	r8, header_ints[rip]
	lea	rsi, inpic[rip]
	mov	rdi, rax
	call	write_image_files
	add	rsp, 16
	jmp	.L80
.L78:
	mov	edx, DWORD PTR pic_y[rip]
	mov	eax, DWORD PTR pic_x[rip]
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, fpic[rip]
	lea	rdi, inpic[rip]
	call	make_float
.L80:
	mov	eax, DWORD PTR PREVIOUS1[rip]
	test	eax, eax
	jne	.L81
	mov	esi, DWORD PTR STEP[rip]
	mov	ecx, DWORD PTR -320[rbp]
	mov	r8d, DWORD PTR -324[rbp]
	mov	edx, DWORD PTR pic_y[rip]
	mov	eax, DWORD PTR pic_x[rip]
	mov	edi, DWORD PTR -232[rbp]
	push	rdi
	mov	edi, DWORD PTR -236[rbp]
	push	rdi
	push	rsi
	push	rcx
	mov	r9d, r8d
	lea	r8, Scc[rip]
	lea	rcx, Ucc[rip]
	mov	esi, eax
	lea	rdi, fpic[rip]
	call	comp1
	add	rsp, 32
	lea	rdi, .LC107[rip]
	call	puts@PLT
	mov	esi, DWORD PTR SAMPLE[rip]
	mov	eax, DWORD PTR fdf1[rip]
	mov	ecx, DWORD PTR -232[rbp]
	mov	edx, DWORD PTR -236[rbp]
	mov	r9d, esi
	lea	r8, .LC108[rip]
	lea	rsi, Ucc[rip]
	mov	edi, eax
	call	output_velocities
	mov	eax, DWORD PTR fdcov1[rip]
	mov	ecx, DWORD PTR -232[rbp]
	mov	edx, DWORD PTR -236[rbp]
	lea	rsi, Scc[rip]
	mov	edi, eax
	call	output_covariances
	jmp	.L82
.L81:
	mov	eax, DWORD PTR fdf1[rip]
	mov	ecx, DWORD PTR -232[rbp]
	mov	edx, DWORD PTR -236[rbp]
	lea	rsi, Ucc[rip]
	mov	edi, eax
	call	input_velocities
	mov	eax, DWORD PTR fdcov1[rip]
	mov	ecx, DWORD PTR -232[rbp]
	mov	edx, DWORD PTR -236[rbp]
	lea	rsi, Scc[rip]
	mov	edi, eax
	call	input_covariances
.L82:
	lea	rax, -224[rbp]
	mov	rsi, rax
	lea	rdi, .LC84[rip]
	call	strcmp@PLT
	test	eax, eax
	je	.L83
	lea	rdi, .LC109[rip]
	call	puts@PLT
	mov	ecx, DWORD PTR SAMPLE[rip]
	lea	rdi, -296[rbp]
	lea	rsi, -300[rbp]
	mov	edx, DWORD PTR -232[rbp]
	mov	eax, DWORD PTR -236[rbp]
	push	rcx
	lea	rcx, -284[rbp]
	push	rcx
	lea	rcx, -288[rbp]
	push	rcx
	lea	rcx, -292[rbp]
	push	rcx
	mov	r9, rdi
	mov	r8, rsi
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, Ucc[rip]
	lea	rdi, correct_velocities[rip]
	call	calc_statistics
	add	rsp, 32
	lea	rdi, .LC110[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -292[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -296[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -300[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm2
	movq	rax, xmm3
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC111[rip]
	mov	eax, 3
	call	printf@PLT
	movss	xmm0, DWORD PTR -284[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -288[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm1
	movq	rax, xmm4
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC112[rip]
	mov	eax, 2
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	cmp	DWORD PTR -252[rbp], 0
	je	.L83
	movss	xmm0, DWORD PTR -280[rbp]
	movss	DWORD PTR -264[rbp], xmm0
	lea	rdi, .LC113[rip]
	call	puts@PLT
	lea	rdi, .LC114[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC113[rip]
	call	puts@PLT
	jmp	.L84
.L87:
	mov	ecx, DWORD PTR pic_y[rip]
	mov	eax, DWORD PTR pic_x[rip]
	mov	edx, DWORD PTR -264[rbp]
	movd	xmm0, edx
	mov	r8d, ecx
	mov	ecx, eax
	lea	rdx, threshold_velocity[rip]
	lea	rsi, Scc[rip]
	lea	rdi, Ucc[rip]
	call	threshold_velocities
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, DWORD PTR -264[rbp]
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC115[rip]
	mov	eax, 1
	call	printf@PLT
	mov	ecx, DWORD PTR SAMPLE[rip]
	lea	rdi, -296[rbp]
	lea	rsi, -300[rbp]
	mov	edx, DWORD PTR -232[rbp]
	mov	eax, DWORD PTR -236[rbp]
	push	rcx
	lea	rcx, -284[rbp]
	push	rcx
	lea	rcx, -288[rbp]
	push	rcx
	lea	rcx, -292[rbp]
	push	rcx
	mov	r9, rdi
	mov	r8, rsi
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, threshold_velocity[rip]
	lea	rdi, correct_velocities[rip]
	call	calc_statistics
	add	rsp, 32
	lea	rdi, .LC110[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -292[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -296[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -300[rbp]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm2
	movq	rax, xmm6
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC111[rip]
	mov	eax, 3
	call	printf@PLT
	movss	xmm0, DWORD PTR -284[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -288[rbp]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm1
	movq	rax, xmm7
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC112[rip]
	mov	eax, 2
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	mov	eax, DWORD PTR PRINT_FLOWS1[rip]
	test	eax, eax
	je	.L85
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, DWORD PTR -264[rbp]
	movq	rdx, xmm3
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	movq	xmm0, rdx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC116[rip]
	lea	rdi, outname[rip]
	mov	eax, 1
	call	sprintf@PLT
	mov	esi, 493
	lea	rdi, outname[rip]
	call	creat@PLT
	mov	DWORD PTR fd_vels[rip], eax
	mov	eax, DWORD PTR fd_vels[rip]
	test	eax, eax
	jns	.L86
	lea	rsi, outname[rip]
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L86:
	lea	rsi, outname[rip]
	lea	rdi, .LC74[rip]
	mov	eax, 0
	call	printf@PLT
	mov	esi, DWORD PTR SAMPLE[rip]
	mov	eax, DWORD PTR fd_vels[rip]
	mov	ecx, DWORD PTR -232[rbp]
	mov	edx, DWORD PTR -236[rbp]
	mov	r9d, esi
	lea	r8, .LC108[rip]
	lea	rsi, threshold_velocity[rip]
	mov	edi, eax
	call	output_velocities
.L85:
	movss	xmm0, DWORD PTR -264[rbp]
	addss	xmm0, DWORD PTR -244[rbp]
	movss	DWORD PTR -264[rbp], xmm0
.L84:
	movss	xmm0, DWORD PTR -276[rbp]
	comiss	xmm0, DWORD PTR -264[rbp]
	jnb	.L87
	lea	rdi, .LC113[rip]
	call	puts@PLT
.L83:
	mov	eax, DWORD PTR STEP2[rip]
	test	eax, eax
	jne	.L88
	mov	edi, 1
	call	exit@PLT
.L88:
	mov	eax, DWORD PTR PREVIOUS2[rip]
	test	eax, eax
	jne	.L89
	mov	ecx, DWORD PTR -304[rbp]
	mov	edx, DWORD PTR pic_y[rip]
	mov	edi, DWORD PTR pic_x[rip]
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	mov	esi, DWORD PTR -232[rbp]
	push	rsi
	mov	esi, DWORD PTR -236[rbp]
	push	rsi
	push	rcx
	lea	rcx, -224[rbp]
	push	rcx
	lea	rcx, full_velocities[rip]
	push	rcx
	push	rdx
	mov	r9d, edi
	lea	r8, S[rip]
	lea	rcx, Scc[rip]
	lea	rdx, Ucc[rip]
	mov	rsi, rax
	lea	rdi, path2[rip]
	call	comp2
	add	rsp, 48
	lea	rdi, .LC117[rip]
	call	puts@PLT
	mov	eax, DWORD PTR fdf2[rip]
	mov	ecx, DWORD PTR -232[rbp]
	mov	edx, DWORD PTR -236[rbp]
	mov	r9d, 1
	lea	r8, .LC108[rip]
	lea	rsi, full_velocities[rip]
	mov	edi, eax
	call	output_velocities
	mov	eax, DWORD PTR fdcov2[rip]
	mov	ecx, DWORD PTR -232[rbp]
	mov	edx, DWORD PTR -236[rbp]
	lea	rsi, S[rip]
	mov	edi, eax
	call	output_covariances
	jmp	.L90
.L89:
	mov	eax, DWORD PTR -304[rbp]
	add	eax, eax
	add	eax, 1
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	mov	DWORD PTR -228[rbp], eax
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -228[rbp]
	add	eax, edx
	mov	DWORD PTR OFFSET_X[rip], eax
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -228[rbp]
	add	eax, edx
	mov	DWORD PTR OFFSET_Y[rip], eax
	mov	eax, DWORD PTR fdf2[rip]
	mov	ecx, DWORD PTR -232[rbp]
	mov	edx, DWORD PTR -236[rbp]
	lea	rsi, full_velocities[rip]
	mov	edi, eax
	call	input_velocities
	mov	eax, DWORD PTR fdcov2[rip]
	mov	ecx, DWORD PTR -232[rbp]
	mov	edx, DWORD PTR -236[rbp]
	lea	rsi, S[rip]
	mov	edi, eax
	call	input_covariances
.L90:
	lea	rax, -224[rbp]
	mov	rsi, rax
	lea	rdi, .LC84[rip]
	call	strcmp@PLT
	test	eax, eax
	je	.L91
	lea	rdi, .LC118[rip]
	call	puts@PLT
	lea	rdi, -296[rbp]
	lea	rsi, -300[rbp]
	mov	edx, DWORD PTR -232[rbp]
	mov	eax, DWORD PTR -236[rbp]
	push	1
	lea	rcx, -284[rbp]
	push	rcx
	lea	rcx, -288[rbp]
	push	rcx
	lea	rcx, -292[rbp]
	push	rcx
	mov	r9, rdi
	mov	r8, rsi
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, full_velocities[rip]
	lea	rdi, correct_velocities[rip]
	call	calc_statistics
	add	rsp, 32
	lea	rdi, .LC110[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -292[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -296[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -300[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm2
	movq	rax, xmm4
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC111[rip]
	mov	eax, 3
	call	printf@PLT
	movss	xmm0, DWORD PTR -284[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -288[rbp]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm1
	movq	rax, xmm5
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC112[rip]
	mov	eax, 2
	call	printf@PLT
	cmp	DWORD PTR -248[rbp], 0
	je	.L91
	movss	xmm0, DWORD PTR -272[rbp]
	movss	DWORD PTR -260[rbp], xmm0
	lea	rdi, .LC113[rip]
	call	puts@PLT
	lea	rdi, .LC119[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rdi, .LC113[rip]
	call	puts@PLT
	jmp	.L92
.L95:
	mov	ecx, DWORD PTR pic_y[rip]
	mov	eax, DWORD PTR pic_x[rip]
	mov	edx, DWORD PTR -260[rbp]
	movd	xmm0, edx
	mov	r8d, ecx
	mov	ecx, eax
	lea	rdx, threshold_velocity[rip]
	lea	rsi, S[rip]
	lea	rdi, full_velocities[rip]
	call	threshold_velocities
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, DWORD PTR -260[rbp]
	movq	rax, xmm6
	movq	xmm0, rax
	lea	rdi, .LC115[rip]
	mov	eax, 1
	call	printf@PLT
	mov	ecx, DWORD PTR SAMPLE[rip]
	lea	rdi, -296[rbp]
	lea	rsi, -300[rbp]
	mov	edx, DWORD PTR -232[rbp]
	mov	eax, DWORD PTR -236[rbp]
	push	rcx
	lea	rcx, -284[rbp]
	push	rcx
	lea	rcx, -288[rbp]
	push	rcx
	lea	rcx, -292[rbp]
	push	rcx
	mov	r9, rdi
	mov	r8, rsi
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, threshold_velocity[rip]
	lea	rdi, correct_velocities[rip]
	call	calc_statistics
	add	rsp, 32
	lea	rdi, .LC110[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -292[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -296[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -300[rbp]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm2
	movq	rax, xmm7
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC111[rip]
	mov	eax, 3
	call	printf@PLT
	movss	xmm0, DWORD PTR -284[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -288[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm1
	movq	rax, xmm3
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC112[rip]
	mov	eax, 2
	call	printf@PLT
	mov	eax, DWORD PTR PRINT_FLOWS2[rip]
	test	eax, eax
	je	.L93
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, DWORD PTR -260[rbp]
	movq	rdx, xmm4
	mov	rax, QWORD PTR -352[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	movq	xmm0, rdx
	mov	rcx, rax
	lea	rdx, path2[rip]
	lea	rsi, .LC120[rip]
	lea	rdi, outname[rip]
	mov	eax, 1
	call	sprintf@PLT
	mov	esi, 493
	lea	rdi, outname[rip]
	call	creat@PLT
	mov	DWORD PTR fd_vels[rip], eax
	mov	eax, DWORD PTR fd_vels[rip]
	test	eax, eax
	jns	.L94
	lea	rsi, outname[rip]
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L94:
	lea	rsi, outname[rip]
	lea	rdi, .LC74[rip]
	mov	eax, 0
	call	printf@PLT
	mov	esi, DWORD PTR SAMPLE[rip]
	mov	ecx, DWORD PTR pic_y[rip]
	mov	edx, DWORD PTR pic_x[rip]
	mov	eax, DWORD PTR fd_vels[rip]
	mov	r9d, esi
	lea	r8, .LC108[rip]
	lea	rsi, threshold_velocity[rip]
	mov	edi, eax
	call	output_velocities
.L93:
	movss	xmm0, DWORD PTR -260[rbp]
	addss	xmm0, DWORD PTR -240[rbp]
	movss	DWORD PTR -260[rbp], xmm0
.L92:
	movss	xmm0, DWORD PTR -268[rbp]
	comiss	xmm0, DWORD PTR -260[rbp]
	jnb	.L95
	lea	rdi, .LC113[rip]
	call	puts@PLT
.L91:
	lea	rdi, .LC121[rip]
	call	puts@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	mov	edi, 0
	call	time@PLT
	mov	QWORD PTR time2[rip], rax
	mov	rdx, QWORD PTR time1[rip]
	mov	rax, QWORD PTR temporal_offset[rip]
	add	rdx, rax
	mov	rax, QWORD PTR time2[rip]
	cmp	rdx, rax
	jge	.L96
	mov	rdx, QWORD PTR time2[rip]
	mov	rax, QWORD PTR fp[rip]
	lea	rsi, .LC122[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rax, QWORD PTR time2[rip]
	mov	rcx, QWORD PTR time1[rip]
	sub	rax, rcx
	mov	rdx, rax
	mov	rax, QWORD PTR fp[rip]
	lea	rsi, .LC123[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rax, QWORD PTR time2[rip]
	mov	rdx, QWORD PTR time1[rip]
	sub	rax, rdx
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	movsd	xmm1, QWORD PTR .LC124[rip]
	divsd	xmm0, xmm1
	movq	rdx, xmm0
	mov	rax, QWORD PTR fp[rip]
	movq	xmm0, rdx
	lea	rsi, .LC125[rip]
	mov	rdi, rax
	mov	eax, 1
	call	fprintf@PLT
	mov	rax, QWORD PTR time2[rip]
	mov	rdx, QWORD PTR time1[rip]
	sub	rax, rdx
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	movsd	xmm1, QWORD PTR .LC126[rip]
	divsd	xmm0, xmm1
	movq	rdx, xmm0
	mov	rax, QWORD PTR fp[rip]
	movq	xmm0, rdx
	lea	rsi, .LC127[rip]
	mov	rdi, rax
	mov	eax, 1
	call	fprintf@PLT
	mov	rax, QWORD PTR fp[rip]
	mov	rdi, rax
	call	fflush@PLT
.L96:
	mov	eax, 0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L98
	call	__stack_chk_fail@PLT
.L98:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	main, .-main
	.section	.rodata
.LC128:
	.string	"%s%d"
.LC129:
	.string	"Fatal error - not enough room"
.LC130:
	.string	"Required size: %d times %d\n"
.LC131:
	.string	"File %s read -- %d bytes\n"
	.align 8
.LC132:
	.string	"File %s does not exist in read_image_files.\n"
	.text
	.globl	read_image_files
	.type	read_image_files, @function
read_image_files:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 256
	mov	QWORD PTR -216[rbp], rdi
	mov	QWORD PTR -224[rbp], rsi
	mov	QWORD PTR -232[rbp], rdx
	mov	QWORD PTR -240[rbp], rcx
	mov	QWORD PTR -248[rbp], r8
	mov	DWORD PTR -252[rbp], r9d
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -188[rbp], 1
	mov	DWORD PTR -196[rbp], 0
	jmp	.L101
.L112:
	mov	eax, DWORD PTR -196[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR 16[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -252[rbp]
	lea	ecx, [rdx+rax]
	mov	rdx, QWORD PTR -216[rbp]
	lea	rax, -112[rbp]
	lea	rsi, .LC128[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	lea	rax, -112[rbp]
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -180[rbp], eax
	cmp	DWORD PTR -180[rbp], 0
	jle	.L102
	mov	eax, DWORD PTR BINARY[rip]
	test	eax, eax
	jne	.L103
	cmp	DWORD PTR -188[rbp], 0
	je	.L104
	lea	rcx, -176[rbp]
	mov	eax, DWORD PTR -180[rbp]
	mov	edx, 32
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	mov	DWORD PTR -192[rbp], 0
	jmp	.L105
.L106:
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -248[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	mov	eax, DWORD PTR -176[rbp+rax*4]
	mov	DWORD PTR [rdx], eax
	add	DWORD PTR -192[rbp], 1
.L105:
	cmp	DWORD PTR -192[rbp], 7
	jle	.L106
	mov	edx, DWORD PTR -172[rbp]
	mov	rax, QWORD PTR -232[rbp]
	mov	DWORD PTR [rax], edx
	mov	edx, DWORD PTR -168[rbp]
	mov	rax, QWORD PTR -240[rbp]
	mov	DWORD PTR [rax], edx
	mov	DWORD PTR -188[rbp], 0
	mov	rax, QWORD PTR -240[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	eax, 325
	jg	.L107
	mov	rax, QWORD PTR -232[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	eax, 325
	jle	.L108
.L107:
	lea	rdi, .LC129[rip]
	call	puts@PLT
	mov	rdx, QWORD PTR -232[rbp]
	mov	rax, QWORD PTR -240[rbp]
	mov	rsi, rax
	lea	rdi, .LC130[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L104:
	lea	rcx, -144[rbp]
	mov	eax, DWORD PTR -180[rbp]
	mov	edx, 32
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
.L108:
	mov	DWORD PTR -184[rbp], 32
.L103:
	mov	DWORD PTR -192[rbp], 0
	jmp	.L109
.L110:
	mov	rax, QWORD PTR -232[rbp]
	mov	eax, DWORD PTR [rax]
	movsx	rdx, eax
	mov	eax, DWORD PTR -196[rbp]
	cdqe
	imul	rcx, rax, 105625
	mov	rax, QWORD PTR -224[rbp]
	lea	rsi, [rcx+rax]
	mov	eax, DWORD PTR -192[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	mov	rcx, rax
	sal	rcx, 6
	add	rax, rcx
	lea	rcx, [rsi+rax]
	mov	eax, DWORD PTR -180[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR -184[rbp]
	add	eax, edx
	mov	DWORD PTR -184[rbp], eax
	add	DWORD PTR -192[rbp], 1
.L109:
	mov	rax, QWORD PTR -240[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -192[rbp], eax
	jl	.L110
	mov	edx, DWORD PTR -184[rbp]
	lea	rax, -112[rbp]
	mov	rsi, rax
	lea	rdi, .LC131[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -184[rbp], 0
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	jmp	.L114
.L102:
	lea	rax, -112[rbp]
	mov	rsi, rax
	lea	rdi, .LC132[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L114:
	add	DWORD PTR -196[rbp], 1
.L101:
	cmp	DWORD PTR -196[rbp], 2
	jle	.L112
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L113
	call	__stack_chk_fail@PLT
.L113:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	read_image_files, .-read_image_files
	.section	.rodata
.LC133:
	.string	"laplacian.%s%d"
.LC134:
	.string	"File %s written -- %d bytes\n"
	.align 8
.LC135:
	.string	"File %s does not exist in write_image_files.\n"
	.text
	.globl	write_image_files
	.type	write_image_files, @function
write_image_files:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 224
	mov	QWORD PTR -184[rbp], rdi
	mov	QWORD PTR -192[rbp], rsi
	mov	DWORD PTR -196[rbp], edx
	mov	DWORD PTR -200[rbp], ecx
	mov	QWORD PTR -208[rbp], r8
	mov	DWORD PTR -212[rbp], r9d
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -152[rbp], 1
	mov	DWORD PTR -164[rbp], 0
	jmp	.L116
.L121:
	mov	eax, DWORD PTR -164[rbp]
	sub	eax, 1
	imul	eax, DWORD PTR 16[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -212[rbp]
	lea	ecx, [rdx+rax]
	mov	rdx, QWORD PTR -184[rbp]
	lea	rax, -112[rbp]
	lea	rsi, .LC133[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	lea	rax, -112[rbp]
	mov	esi, 493
	mov	rdi, rax
	call	creat@PLT
	mov	DWORD PTR -148[rbp], eax
	cmp	DWORD PTR -148[rbp], 0
	js	.L117
	mov	rcx, QWORD PTR -208[rbp]
	mov	eax, DWORD PTR -148[rbp]
	mov	edx, 32
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -156[rbp], 32
	mov	DWORD PTR -160[rbp], 0
	jmp	.L118
.L119:
	mov	eax, DWORD PTR -196[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -164[rbp]
	cdqe
	imul	rcx, rax, 105625
	mov	rax, QWORD PTR -192[rbp]
	lea	rsi, [rcx+rax]
	mov	eax, DWORD PTR -160[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	mov	rcx, rax
	sal	rcx, 6
	add	rax, rcx
	lea	rcx, [rsi+rax]
	mov	eax, DWORD PTR -148[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	edx, eax
	mov	eax, DWORD PTR -156[rbp]
	add	eax, edx
	mov	DWORD PTR -156[rbp], eax
	add	DWORD PTR -160[rbp], 1
.L118:
	mov	eax, DWORD PTR -160[rbp]
	cmp	eax, DWORD PTR -200[rbp]
	jl	.L119
	mov	edx, DWORD PTR -156[rbp]
	lea	rax, -112[rbp]
	mov	rsi, rax
	lea	rdi, .LC134[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	jmp	.L123
.L117:
	lea	rax, -112[rbp]
	mov	rsi, rax
	lea	rdi, .LC135[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L123:
	add	DWORD PTR -164[rbp], 1
.L116:
	cmp	DWORD PTR -164[rbp], 2
	jle	.L121
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L122
	call	__stack_chk_fail@PLT
.L122:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	write_image_files, .-write_image_files
	.section	.rodata
	.align 8
.LC136:
	.string	"\nComputing Velocity Information via step 1..."
.LC138:
	.string	"Processing rows for step 1:"
.LC139:
	.string	"%3d "
	.text
	.globl	comp1
	.type	comp1, @function
comp1:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 480
	mov	QWORD PTR -440[rbp], rdi
	mov	DWORD PTR -444[rbp], esi
	mov	DWORD PTR -448[rbp], edx
	mov	QWORD PTR -456[rbp], rcx
	mov	QWORD PTR -464[rbp], r8
	mov	DWORD PTR -468[rbp], r9d
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdi, .LC136[rip]
	call	puts@PLT
	mov	DWORD PTR -412[rbp], 0
	jmp	.L125
.L128:
	mov	DWORD PTR -408[rbp], 0
	jmp	.L126
.L127:
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -456[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -408[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR 4[rax+rdx*8], xmm0
	mov	edx, DWORD PTR -412[rbp]
	movsx	rdx, edx
	imul	rcx, rdx, 2600
	mov	rdx, QWORD PTR -456[rbp]
	add	rcx, rdx
	mov	edx, DWORD PTR -408[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR 4[rax+rdx*8]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	movss	DWORD PTR [rcx+rax*8], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -464[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	add	rax, 4
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rcx, rax, 5200
	mov	rax, QWORD PTR -464[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rcx
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -464[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	add	rax, 12
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rcx, rax, 5200
	mov	rax, QWORD PTR -464[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	add	rax, 12
	movss	xmm0, DWORD PTR [rax]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rcx
	add	rax, 8
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -408[rbp], 1
.L126:
	cmp	DWORD PTR -408[rbp], 324
	jle	.L127
	add	DWORD PTR -412[rbp], 1
.L125:
	cmp	DWORD PTR -412[rbp], 324
	jle	.L128
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR 16[rbp]
	addsd	xmm0, xmm0
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -400[rbp], xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR 24[rbp]
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -396[rbp], xmm0
	lea	rdi, .LC138[rip]
	call	puts@PLT
	mov	DWORD PTR -404[rbp], 0
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	eax, edx
	mov	DWORD PTR -412[rbp], eax
	jmp	.L129
.L134:
	mov	eax, DWORD PTR -412[rbp]
	mov	esi, eax
	lea	rdi, .LC139[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -404[rbp], 1
	mov	edx, DWORD PTR -404[rbp]
	movsx	rax, edx
	imul	rax, rax, -2004318071
	shr	rax, 32
	add	eax, edx
	sar	eax, 3
	mov	ecx, edx
	sar	ecx, 31
	sub	eax, ecx
	mov	ecx, eax
	sal	ecx, 4
	sub	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	test	eax, eax
	jne	.L130
	mov	edi, 10
	call	putchar@PLT
.L130:
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	eax, edx
	mov	DWORD PTR -408[rbp], eax
	jmp	.L131
.L133:
	mov	ecx, DWORD PTR SAMPLE[rip]
	mov	eax, DWORD PTR -412[rbp]
	cdq
	idiv	ecx
	mov	eax, edx
	test	eax, eax
	jne	.L132
	mov	ecx, DWORD PTR SAMPLE[rip]
	mov	eax, DWORD PTR -408[rbp]
	cdq
	idiv	ecx
	mov	eax, edx
	test	eax, eax
	jne	.L132
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	mov	DWORD PTR -424[rbp], 0
	lea	r8, -336[rbp]
	mov	ecx, DWORD PTR -468[rbp]
	mov	edx, DWORD PTR -408[rbp]
	mov	esi, DWORD PTR -412[rbp]
	mov	rax, QWORD PTR -440[rbp]
	lea	rdi, -416[rbp]
	push	rdi
	lea	rdi, -420[rbp]
	push	rdi
	mov	r9, r8
	mov	r8d, DWORD PTR 16[rbp]
	mov	rdi, rax
	call	compute_SSD_surface
	add	rsp, 16
	mov	eax, DWORD PTR -420[rbp]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC140[rip]
	addsd	xmm0, xmm1
	pxor	xmm3, xmm3
	cvtsd2ss	xmm3, xmm0
	mov	eax, DWORD PTR -420[rbp]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	xmm1, QWORD PTR .LC140[rip]
	subsd	xmm0, xmm1
	pxor	xmm2, xmm2
	cvtsd2ss	xmm2, xmm0
	mov	eax, DWORD PTR -416[rbp]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC140[rip]
	addsd	xmm0, xmm1
	pxor	xmm4, xmm4
	cvtsd2ss	xmm4, xmm0
	mov	eax, DWORD PTR -416[rbp]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	xmm1, QWORD PTR .LC140[rip]
	subsd	xmm0, xmm1
	pxor	xmm5, xmm5
	cvtsd2ss	xmm5, xmm0
	movd	edi, xmm5
	lea	r9, -360[rbp]
	lea	r10, -368[rbp]
	lea	rcx, -376[rbp]
	lea	rdx, -352[rbp]
	lea	rsi, -384[rbp]
	lea	rax, -336[rbp]
	mov	r8d, DWORD PTR 16[rbp]
	push	r8
	lea	r8, -424[rbp]
	push	r8
	mov	r8, r10
	movaps	xmm1, xmm4
	movd	xmm0, edi
	mov	rdi, rax
	call	calc_mean_and_covariance1
	add	rsp, 16
	movss	xmm0, DWORD PTR -384[rbp]
	movss	DWORD PTR -392[rbp], xmm0
	movss	xmm0, DWORD PTR -380[rbp]
	movss	xmm1, DWORD PTR .LC141[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -388[rbp], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -464[rbp]
	add	rdx, rax
	movss	xmm0, DWORD PTR -352[rbp]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -464[rbp]
	add	rdx, rax
	movss	xmm0, DWORD PTR -348[rbp]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	add	rax, 4
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -464[rbp]
	add	rdx, rax
	movss	xmm0, DWORD PTR -344[rbp]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	add	rax, 8
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -464[rbp]
	add	rdx, rax
	movss	xmm0, DWORD PTR -340[rbp]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	add	rax, 12
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -456[rbp]
	add	rdx, rax
	movss	xmm0, DWORD PTR -392[rbp]
	divss	xmm0, DWORD PTR -396[rbp]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	movss	DWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -456[rbp]
	add	rdx, rax
	movss	xmm0, DWORD PTR -388[rbp]
	divss	xmm0, DWORD PTR -396[rbp]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	movss	DWORD PTR 4[rdx+rax*8], xmm0
.L132:
	add	DWORD PTR -408[rbp], 1
.L131:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -444[rbp]
	sub	eax, edx
	cmp	DWORD PTR -408[rbp], eax
	jl	.L133
	add	DWORD PTR -412[rbp], 1
.L129:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -448[rbp]
	sub	eax, edx
	cmp	DWORD PTR -412[rbp], eax
	jl	.L134
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L135
	call	__stack_chk_fail@PLT
.L135:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	comp1, .-comp1
	.section	.rodata
	.align 8
.LC142:
	.string	"Error Analysis Performed at start of step 2"
	.align 8
.LC143:
	.string	"Minimum Angle Error: %f Maximum Angle Error: %f\n\n"
	.align 8
.LC144:
	.string	"Computing velocity information via step 2"
.LC145:
	.string	"Performing Initialization..."
.LC146:
	.string	"FIRST i=%d j=%d k=%d l=%d\n"
.LC147:
	.string	"vel for k=%d l=%d: %f,%f\n"
	.align 8
.LC148:
	.string	"Fatal error: computed velocity undefined during initialization"
	.align 8
.LC149:
	.string	"\nInitialization complete for step 2"
.LC150:
	.string	"Iteration %d\n"
	.align 8
.LC152:
	.string	"\nConvergence detected - iterative calculations are stopped"
.LC153:
	.string	"SECOND i=%d j=%d k=%d l=%d\n"
	.align 8
.LC154:
	.string	"\nFatal error: computed velocity undefined during iteration %d\n"
	.align 8
.LC155:
	.string	"%s/singh.iteration.step2.%sF-%d"
.LC156:
	.string	"\nFile %s opened\n"
.LC157:
	.string	"Error Analysis Performed"
.LC158:
	.string	"L2norm of difference: %14.9f\n"
	.align 8
.LC159:
	.string	"Maximum individual velocity difference: %f\n\n"
.LC160:
	.string	"Velocity at %d,%d undefined\n"
	.text
	.globl	comp2
	.type	comp2, @function
comp2:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	r11, -847872[rsp]
.LPSRL0:
	sub	rsp, 4096
	or	DWORD PTR [rsp], 0
	cmp	rsp, r11
	jne	.LPSRL0
	sub	rsp, 2640
	mov	QWORD PTR -850456[rbp], rdi
	mov	QWORD PTR -850464[rbp], rsi
	mov	QWORD PTR -850472[rbp], rdx
	mov	QWORD PTR -850480[rbp], rcx
	mov	QWORD PTR -850488[rbp], r8
	mov	DWORD PTR -850492[rbp], r9d
	mov	rax, QWORD PTR 24[rbp]
	mov	QWORD PTR -850504[rbp], rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR -850512[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -850408[rbp], 0
	mov	DWORD PTR -850404[rbp], 1
	pxor	xmm0, xmm0
	movss	DWORD PTR -850396[rbp], xmm0
	mov	DWORD PTR -850424[rbp], 0
	jmp	.L137
.L140:
	mov	DWORD PTR -850420[rbp], 0
	jmp	.L138
.L139:
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR -845004[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -845004[rbp+rax*8]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	DWORD PTR -845008[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	DWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	DWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -850504[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -850420[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR 4[rax+rdx*8], xmm0
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rcx, rdx, 2600
	mov	rdx, QWORD PTR -850504[rbp]
	add	rcx, rdx
	mov	edx, DWORD PTR -850420[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR 4[rax+rdx*8]
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	movss	DWORD PTR [rcx+rax*8], xmm0
	add	DWORD PTR -850420[rbp], 1
.L138:
	cmp	DWORD PTR -850420[rbp], 324
	jle	.L139
	add	DWORD PTR -850424[rbp], 1
.L137:
	cmp	DWORD PTR -850424[rbp], 324
	jle	.L140
	mov	DWORD PTR -850424[rbp], 0
	jmp	.L141
.L144:
	mov	DWORD PTR -850420[rbp], 0
	jmp	.L142
.L143:
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -850472[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	DWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	DWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -850472[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	DWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	DWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -850420[rbp], 1
.L142:
	mov	eax, DWORD PTR -850420[rbp]
	cmp	eax, DWORD PTR 48[rbp]
	jl	.L143
	add	DWORD PTR -850424[rbp], 1
.L141:
	mov	eax, DWORD PTR -850424[rbp]
	cmp	eax, DWORD PTR 56[rbp]
	jl	.L144
	mov	rax, QWORD PTR -850512[rbp]
	mov	rsi, rax
	lea	rdi, .LC84[rip]
	call	strcmp@PLT
	test	eax, eax
	je	.L145
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	imul	rax, rax, 845000
	lea	rdx, Un[rip]
	lea	rsi, [rax+rdx]
	lea	r8, -850440[rbp]
	lea	rdi, -850444[rbp]
	mov	edx, DWORD PTR 56[rbp]
	mov	eax, DWORD PTR 48[rbp]
	push	1
	lea	rcx, -850432[rbp]
	push	rcx
	lea	rcx, -850436[rbp]
	push	rcx
	lea	rcx, -850428[rbp]
	push	rcx
	mov	r9, r8
	mov	r8, rdi
	mov	ecx, edx
	mov	edx, eax
	lea	rdi, correct_velocities[rip]
	call	calc_statistics
	add	rsp, 32
	lea	rdi, .LC142[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -850428[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -850440[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -850444[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm2
	movq	rax, xmm3
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC111[rip]
	mov	eax, 3
	call	printf@PLT
	movss	xmm0, DWORD PTR -850432[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -850436[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm1
	movq	rax, xmm4
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC143[rip]
	mov	eax, 2
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
.L145:
	mov	edx, DWORD PTR 40[rbp]
	lea	rax, -850320[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	compute_weights
	mov	eax, DWORD PTR 40[rbp]
	add	eax, eax
	add	eax, 1
	mov	DWORD PTR -850384[rbp], eax
	mov	eax, DWORD PTR -850384[rbp]
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	mov	DWORD PTR -850380[rbp], eax
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -850380[rbp]
	add	eax, edx
	mov	DWORD PTR OFFSET_X[rip], eax
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -850380[rbp]
	add	eax, edx
	mov	DWORD PTR OFFSET_Y[rip], eax
	lea	rdi, .LC144[rip]
	call	puts@PLT
	lea	rdi, .LC145[rip]
	call	puts@PLT
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	eax, edx
	mov	DWORD PTR -850424[rbp], eax
	jmp	.L146
.L160:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	eax, edx
	mov	DWORD PTR -850420[rbp], eax
	jmp	.L147
.L159:
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, SccI[rip]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -850480[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	mov	edx, 0
	mov	rsi, rcx
	mov	rdi, rax
	mov	eax, 0
	call	inverse22
	mov	DWORD PTR -850364[rbp], eax
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, SccI_Ucc[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rcx, rax, 2600
	mov	rax, QWORD PTR -850472[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	sal	rax, 3
	add	rcx, rax
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rdi, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rsi, eax
	mov	rax, rsi
	sal	rax, 2
	add	rax, rsi
	mov	rsi, rax
	sal	rsi, 6
	add	rax, rsi
	add	rax, rdi
	sal	rax, 4
	mov	rsi, rax
	lea	rax, SccI[rip]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	mult21
	mov	DWORD PTR -850388[rbp], 0
	mov	eax, DWORD PTR -850380[rbp]
	neg	eax
	mov	DWORD PTR -850416[rbp], eax
	jmp	.L148
.L158:
	mov	eax, DWORD PTR -850380[rbp]
	neg	eax
	mov	DWORD PTR -850412[rbp], eax
	jmp	.L149
.L157:
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm0, DWORD PTR [rdx+rax]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L200
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L150
.L200:
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L201
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L150
.L201:
	add	DWORD PTR -850388[rbp], 1
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	mov	esi, DWORD PTR -850416[rbp]
	mov	ecx, DWORD PTR -850380[rbp]
	add	ecx, esi
	mov	edi, DWORD PTR -850412[rbp]
	mov	esi, DWORD PTR -850380[rbp]
	add	esi, edi
	movsx	rdi, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	movsx	rdx, edx
	imul	r8, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, r8
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm0, DWORD PTR [rdx+rax]
	movsx	rsi, esi
	movsx	rdx, ecx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rsi
	movss	DWORD PTR -848544[rbp+rax*8], xmm0
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	mov	esi, DWORD PTR -850416[rbp]
	mov	ecx, DWORD PTR -850380[rbp]
	add	ecx, esi
	mov	edi, DWORD PTR -850412[rbp]
	mov	esi, DWORD PTR -850380[rbp]
	add	esi, edi
	movsx	rdi, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	movsx	rdx, edx
	imul	r8, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, r8
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	movsx	rsi, esi
	movsx	rdx, ecx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rsi
	movss	DWORD PTR -848540[rbp+rax*8], xmm0
	add	DWORD PTR -850412[rbp], 1
	jmp	.L149
.L150:
	mov	esi, DWORD PTR -850412[rbp]
	mov	ecx, DWORD PTR -850416[rbp]
	mov	edx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850424[rbp]
	mov	r8d, esi
	mov	esi, eax
	lea	rdi, .LC146[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -850380[rbp]
	neg	eax
	mov	DWORD PTR -850416[rbp], eax
	jmp	.L153
.L156:
	mov	eax, DWORD PTR -850380[rbp]
	neg	eax
	mov	DWORD PTR -850412[rbp], eax
	jmp	.L154
.L155:
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	cvtss2sd	xmm0, xmm0
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm1, DWORD PTR [rdx+rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm1
	movq	rcx, xmm5
	mov	edx, DWORD PTR -850412[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rcx
	mov	esi, eax
	lea	rdi, .LC147[rip]
	mov	eax, 2
	call	printf@PLT
	add	DWORD PTR -850412[rbp], 1
.L154:
	mov	eax, DWORD PTR -850412[rbp]
	cmp	eax, DWORD PTR -850380[rbp]
	jle	.L155
	add	DWORD PTR -850416[rbp], 1
.L153:
	mov	eax, DWORD PTR -850416[rbp]
	cmp	eax, DWORD PTR -850380[rbp]
	jle	.L156
	lea	rdi, .LC148[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L149:
	mov	eax, DWORD PTR -850412[rbp]
	cmp	eax, DWORD PTR -850380[rbp]
	jle	.L157
	add	DWORD PTR -850416[rbp], 1
.L148:
	mov	eax, DWORD PTR -850416[rbp]
	cmp	eax, DWORD PTR -850380[rbp]
	jle	.L158
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	imul	rsi, rax, 105625
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, Sn[rip]
	lea	rdi, [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Ua[rip]
	lea	rcx, [rdx+rax]
	mov	edx, DWORD PTR -850384[rbp]
	lea	rsi, -848544[rbp]
	lea	rax, -850320[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	calc_mean_and_covariance2
	add	DWORD PTR -850420[rbp], 1
.L147:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -850492[rbp]
	sub	eax, edx
	cmp	DWORD PTR -850420[rbp], eax
	jl	.L159
	add	DWORD PTR -850424[rbp], 1
.L146:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR 16[rbp]
	sub	eax, edx
	cmp	DWORD PTR -850424[rbp], eax
	jl	.L160
	lea	rdi, .LC149[rip]
	call	puts@PLT
	mov	DWORD PTR -850400[rbp], 1
	mov	DWORD PTR -850392[rbp], 0
	mov	edi, 10
	call	putchar@PLT
	jmp	.L161
.L190:
	mov	eax, DWORD PTR -850392[rbp]
	mov	esi, eax
	lea	rdi, .LC150[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -850392[rbp], 1
	mov	DWORD PTR -850400[rbp], 0
	pxor	xmm0, xmm0
	movss	DWORD PTR -850376[rbp], xmm0
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	eax, edx
	mov	DWORD PTR -850424[rbp], eax
	jmp	.L162
.L169:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	eax, edx
	mov	DWORD PTR -850420[rbp], eax
	jmp	.L163
.L168:
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	imul	rsi, rax, 105625
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, Sn[rip]
	lea	rcx, [rdx+rax]
	lea	rax, -850336[rbp]
	mov	edx, 0
	mov	rsi, rax
	mov	rdi, rcx
	mov	eax, 0
	call	inverse22
	mov	DWORD PTR -850364[rbp], eax
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, Ssum[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	mov	rcx, rax
	sal	rcx, 6
	add	rax, rcx
	add	rax, rsi
	sal	rax, 4
	mov	rcx, rax
	lea	rax, SccI[rip]
	add	rcx, rax
	lea	rax, -850336[rbp]
	mov	rsi, rax
	mov	rdi, rcx
	call	add22
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, SsumI[rip]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	sal	rax, 4
	mov	rdx, rax
	lea	rax, Ssum[rip]
	add	rax, rdx
	mov	edx, 0
	mov	rsi, rcx
	mov	rdi, rax
	mov	eax, 0
	call	inverse22
	add	DWORD PTR -850364[rbp], eax
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Ua[rip]
	lea	rcx, [rdx+rax]
	lea	rdx, -850352[rbp]
	lea	rax, -850336[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	mult21
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, SccI_Ucc[rip]
	lea	rcx, [rdx+rax]
	lea	rdx, -850344[rbp]
	lea	rax, -850352[rbp]
	mov	rsi, rax
	mov	rdi, rcx
	call	add21
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	imul	rsi, rax, 105625
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	add	rdx, rax
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	mov	rcx, rax
	sal	rcx, 6
	add	rax, rcx
	add	rax, rsi
	sal	rax, 4
	mov	rcx, rax
	lea	rax, SsumI[rip]
	add	rcx, rax
	lea	rax, -850344[rbp]
	mov	rsi, rax
	mov	rdi, rcx
	call	mult21
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm1, DWORD PTR [rdx+rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -850360[rbp], xmm0
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm1, DWORD PTR [rdx+rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -850356[rbp], xmm0
	movss	xmm0, DWORD PTR -850360[rbp]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	DWORD PTR -845008[rbp+rax*8], xmm0
	movss	xmm0, DWORD PTR -850356[rbp]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	DWORD PTR -845004[rbp+rax*8], xmm0
	lea	rax, -850360[rbp]
	mov	esi, 2
	mov	rdi, rax
	mov	eax, 0
	call	L2norm
	movd	eax, xmm0
	mov	DWORD PTR -850376[rbp], eax
	movss	xmm0, DWORD PTR -850376[rbp]
	comiss	xmm0, DWORD PTR -850396[rbp]
	jbe	.L164
	movss	xmm0, DWORD PTR -850376[rbp]
	movss	DWORD PTR -850396[rbp], xmm0
.L164:
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -850376[rbp]
	comisd	xmm0, QWORD PTR .LC151[rip]
	jbe	.L166
	mov	DWORD PTR -850400[rbp], 1
.L166:
	add	DWORD PTR -850420[rbp], 1
.L163:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -850492[rbp]
	sub	eax, edx
	cmp	DWORD PTR -850420[rbp], eax
	jl	.L168
	add	DWORD PTR -850424[rbp], 1
.L162:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR 16[rbp]
	sub	eax, edx
	cmp	DWORD PTR -850424[rbp], eax
	jl	.L169
	cmp	DWORD PTR -850400[rbp], 0
	jne	.L170
	lea	rdi, .LC152[rip]
	call	puts@PLT
.L170:
	cmp	DWORD PTR -850400[rbp], 0
	je	.L171
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	eax, edx
	mov	DWORD PTR -850424[rbp], eax
	jmp	.L172
.L186:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	eax, edx
	mov	DWORD PTR -850420[rbp], eax
	jmp	.L173
.L185:
	mov	eax, DWORD PTR -850380[rbp]
	neg	eax
	mov	DWORD PTR -850416[rbp], eax
	jmp	.L174
.L184:
	mov	eax, DWORD PTR -850380[rbp]
	neg	eax
	mov	DWORD PTR -850412[rbp], eax
	jmp	.L175
.L183:
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm0, DWORD PTR [rdx+rax]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L204
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L176
.L204:
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L205
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L176
.L205:
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	mov	esi, DWORD PTR -850416[rbp]
	mov	ecx, DWORD PTR -850380[rbp]
	add	ecx, esi
	mov	edi, DWORD PTR -850412[rbp]
	mov	esi, DWORD PTR -850380[rbp]
	add	esi, edi
	movsx	rdi, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	movsx	rdx, edx
	imul	r8, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, r8
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm0, DWORD PTR [rdx+rax]
	movsx	rsi, esi
	movsx	rdx, ecx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rsi
	movss	DWORD PTR -848544[rbp+rax*8], xmm0
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	mov	esi, DWORD PTR -850416[rbp]
	mov	ecx, DWORD PTR -850380[rbp]
	add	ecx, esi
	mov	edi, DWORD PTR -850412[rbp]
	mov	esi, DWORD PTR -850380[rbp]
	add	esi, edi
	movsx	rdi, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	movsx	rdx, edx
	imul	r8, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, r8
	add	rax, rdi
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	movsx	rsi, esi
	movsx	rdx, ecx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rsi
	movss	DWORD PTR -848540[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	imul	rsi, rax, 105625
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, Sn[rip]
	lea	rdi, [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Ua[rip]
	lea	rcx, [rdx+rax]
	mov	edx, DWORD PTR -850384[rbp]
	lea	rsi, -848544[rbp]
	lea	rax, -850320[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	calc_mean_and_covariance2
	add	DWORD PTR -850412[rbp], 1
	jmp	.L175
.L176:
	mov	esi, DWORD PTR -850412[rbp]
	mov	ecx, DWORD PTR -850416[rbp]
	mov	edx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850424[rbp]
	mov	r8d, esi
	mov	esi, eax
	lea	rdi, .LC153[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -850380[rbp]
	neg	eax
	mov	DWORD PTR -850416[rbp], eax
	jmp	.L179
.L182:
	mov	eax, DWORD PTR -850380[rbp]
	neg	eax
	mov	DWORD PTR -850412[rbp], eax
	jmp	.L180
.L181:
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	cvtss2sd	xmm0, xmm0
	mov	edx, DWORD PTR -850424[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	add	edx, eax
	mov	ecx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850412[rbp]
	add	eax, ecx
	movsx	rcx, eax
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	movsx	rdx, edx
	imul	rsi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm1, DWORD PTR [rdx+rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm1
	movq	rcx, xmm6
	mov	edx, DWORD PTR -850412[rbp]
	mov	eax, DWORD PTR -850416[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rcx
	mov	esi, eax
	lea	rdi, .LC147[rip]
	mov	eax, 2
	call	printf@PLT
	add	DWORD PTR -850412[rbp], 1
.L180:
	mov	eax, DWORD PTR -850412[rbp]
	cmp	eax, DWORD PTR -850380[rbp]
	jle	.L181
	add	DWORD PTR -850416[rbp], 1
.L179:
	mov	eax, DWORD PTR -850416[rbp]
	cmp	eax, DWORD PTR -850380[rbp]
	jle	.L182
	mov	eax, DWORD PTR -850392[rbp]
	mov	esi, eax
	lea	rdi, .LC154[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L175:
	mov	eax, DWORD PTR -850412[rbp]
	cmp	eax, DWORD PTR -850380[rbp]
	jle	.L183
	add	DWORD PTR -850416[rbp], 1
.L174:
	mov	eax, DWORD PTR -850416[rbp]
	cmp	eax, DWORD PTR -850380[rbp]
	jle	.L184
	add	DWORD PTR -850420[rbp], 1
.L173:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -850492[rbp]
	sub	eax, edx
	cmp	DWORD PTR -850420[rbp], eax
	jl	.L185
	add	DWORD PTR -850424[rbp], 1
.L172:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR 16[rbp]
	sub	eax, edx
	cmp	DWORD PTR -850424[rbp], eax
	jl	.L186
	mov	eax, DWORD PTR PRINT_ITERATIONS[rip]
	test	eax, eax
	je	.L187
	mov	eax, DWORD PTR -850392[rbp]
	lea	ecx, -1[rax]
	mov	rdx, QWORD PTR -850464[rbp]
	mov	rax, QWORD PTR -850456[rbp]
	mov	r8d, ecx
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC155[rip]
	lea	rdi, outname[rip]
	mov	eax, 0
	call	sprintf@PLT
	mov	esi, 493
	lea	rdi, outname[rip]
	call	creat@PLT
	mov	DWORD PTR -850372[rbp], eax
	cmp	DWORD PTR -850372[rbp], 0
	jns	.L188
	lea	rsi, outname[rip]
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L188:
	lea	rsi, outname[rip]
	lea	rdi, .LC156[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	imul	rax, rax, 845000
	lea	rdx, Un[rip]
	lea	rsi, [rax+rdx]
	mov	ecx, DWORD PTR 56[rbp]
	mov	edx, DWORD PTR 48[rbp]
	mov	eax, DWORD PTR -850372[rbp]
	mov	r9d, 1
	lea	r8, .LC108[rip]
	mov	edi, eax
	call	output_velocities
.L187:
	mov	rax, QWORD PTR -850512[rbp]
	mov	rsi, rax
	lea	rdi, .LC84[rip]
	call	strcmp@PLT
	test	eax, eax
	je	.L171
	mov	eax, DWORD PTR -850404[rbp]
	cdqe
	imul	rax, rax, 845000
	lea	rdx, Un[rip]
	lea	rsi, [rax+rdx]
	lea	r8, -850440[rbp]
	lea	rdi, -850444[rbp]
	mov	edx, DWORD PTR 56[rbp]
	mov	eax, DWORD PTR 48[rbp]
	push	1
	lea	rcx, -850432[rbp]
	push	rcx
	lea	rcx, -850436[rbp]
	push	rcx
	lea	rcx, -850428[rbp]
	push	rcx
	mov	r9, r8
	mov	r8, rdi
	mov	ecx, edx
	mov	edx, eax
	lea	rdi, correct_velocities[rip]
	call	calc_statistics
	add	rsp, 32
	lea	rdi, .LC157[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -850428[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -850440[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -850444[rbp]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm2
	movq	rax, xmm7
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC111[rip]
	mov	eax, 3
	call	printf@PLT
	movss	xmm0, DWORD PTR -850432[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -850436[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm1
	movq	rax, xmm3
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC112[rip]
	mov	eax, 2
	call	printf@PLT
	mov	edx, DWORD PTR -850492[rbp]
	lea	rax, -845008[rbp]
	mov	esi, edx
	mov	rdi, rax
	mov	eax, 0
	call	bigL2norm
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	lea	rdi, .LC158[rip]
	mov	eax, 1
	call	printf@PLT
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, DWORD PTR -850396[rbp]
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC159[rip]
	mov	eax, 1
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
.L171:
	mov	eax, DWORD PTR -850408[rbp]
	mov	DWORD PTR -850368[rbp], eax
	mov	eax, DWORD PTR -850404[rbp]
	mov	DWORD PTR -850408[rbp], eax
	mov	eax, DWORD PTR -850368[rbp]
	mov	DWORD PTR -850404[rbp], eax
.L161:
	cmp	DWORD PTR -850400[rbp], 0
	je	.L189
	mov	eax, DWORD PTR MAX_NUMBER_OF_ITERATIONS[rip]
	cmp	DWORD PTR -850392[rbp], eax
	jl	.L190
.L189:
	mov	DWORD PTR -850388[rbp], 0
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	eax, edx
	mov	DWORD PTR -850424[rbp], eax
	jmp	.L191
.L198:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	eax, edx
	mov	DWORD PTR -850420[rbp], eax
	jmp	.L192
.L197:
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -850504[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rdi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rdi
	add	rax, rsi
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	movss	DWORD PTR [rcx+rax*8], xmm0
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -850504[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -850408[rbp]
	cdqe
	mov	edx, DWORD PTR -850424[rbp]
	movsx	rdx, edx
	imul	rdi, rax, 105625
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rdi
	add	rax, rsi
	lea	rdx, 0[0+rax*8]
	lea	rax, Un[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	movss	DWORD PTR 4[rcx+rax*8], xmm0
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -850488[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, SsumI[rip]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	sal	rax, 4
	add	rax, rsi
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -850488[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, SsumI[rip+8]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	sal	rax, 4
	add	rax, rsi
	add	rax, 8
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -850488[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, SsumI[rip+4]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	sal	rax, 4
	add	rax, rsi
	add	rax, 4
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -850488[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -850424[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, SsumI[rip+12]
	movss	xmm0, DWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	sal	rax, 4
	add	rax, rsi
	add	rax, 12
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -850504[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L193
	comiss	xmm0, DWORD PTR .LC137[rip]
	jne	.L193
	mov	eax, DWORD PTR -850424[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -850504[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -850420[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L193
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L206
.L193:
	add	DWORD PTR -850388[rbp], 1
	jmp	.L196
.L206:
	mov	edx, DWORD PTR -850420[rbp]
	mov	eax, DWORD PTR -850424[rbp]
	mov	esi, eax
	lea	rdi, .LC160[rip]
	mov	eax, 0
	call	printf@PLT
.L196:
	add	DWORD PTR -850420[rbp], 1
.L192:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -850492[rbp]
	sub	eax, edx
	cmp	DWORD PTR -850420[rbp], eax
	jl	.L197
	add	DWORD PTR -850424[rbp], 1
.L191:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR 16[rbp]
	sub	eax, edx
	cmp	DWORD PTR -850424[rbp], eax
	jl	.L198
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L199
	call	__stack_chk_fail@PLT
.L199:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	comp2, .-comp2
	.globl	threshold_velocities
	.type	threshold_velocities, @function
threshold_velocities:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 96
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	QWORD PTR -72[rbp], rdx
	mov	DWORD PTR -76[rbp], ecx
	mov	DWORD PTR -80[rbp], r8d
	movss	DWORD PTR -84[rbp], xmm0
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -40[rbp], 0
	jmp	.L208
.L211:
	mov	DWORD PTR -36[rbp], 0
	jmp	.L209
.L210:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -72[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -36[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR 4[rax+rdx*8], xmm0
	mov	edx, DWORD PTR -40[rbp]
	movsx	rdx, edx
	imul	rcx, rdx, 2600
	mov	rdx, QWORD PTR -72[rbp]
	add	rcx, rdx
	mov	edx, DWORD PTR -36[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR 4[rax+rdx*8]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	DWORD PTR [rcx+rax*8], xmm0
	add	DWORD PTR -36[rbp], 1
.L209:
	cmp	DWORD PTR -36[rbp], 324
	jle	.L210
	add	DWORD PTR -40[rbp], 1
.L208:
	cmp	DWORD PTR -40[rbp], 324
	jle	.L211
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_Y[rip]
	add	eax, edx
	mov	DWORD PTR -40[rbp], eax
	jmp	.L212
.L222:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR EXTRA_OFFSET_X[rip]
	add	eax, edx
	mov	DWORD PTR -36[rbp], eax
	jmp	.L213
.L221:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -56[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L214
	comiss	xmm0, DWORD PTR .LC137[rip]
	jne	.L214
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -56[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L214
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L225
.L214:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 5200
	mov	rax, QWORD PTR -64[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 4
	lea	rdi, [rdx+rax]
	lea	rcx, -16[rbp]
	lea	rdx, -24[rbp]
	lea	rax, -32[rbp]
	mov	rsi, rax
	call	comp_eigen
	movss	xmm0, DWORD PTR -32[rbp]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm1, xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	comiss	xmm0, xmm1
	jbe	.L226
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -56[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -72[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rcx+rax*8]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	DWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -56[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -72[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rcx+rax*8]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	DWORD PTR 4[rdx+rax*8], xmm0
	jmp	.L220
.L226:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -72[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -72[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR 4[rdx+rax*8], xmm0
	jmp	.L220
.L225:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -72[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR [rdx+rax*8], xmm0
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -72[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR 4[rdx+rax*8], xmm0
.L220:
	add	DWORD PTR -36[rbp], 1
.L213:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -76[rbp]
	sub	eax, edx
	cmp	DWORD PTR -36[rbp], eax
	jl	.L221
	add	DWORD PTR -40[rbp], 1
.L212:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -80[rbp]
	sub	eax, edx
	cmp	DWORD PTR -40[rbp], eax
	jl	.L222
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L223
	call	__stack_chk_fail@PLT
.L223:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	threshold_velocities, .-threshold_velocities
	.globl	L2norm
	.type	L2norm, @function
L2norm:
.LFB12:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	pxor	xmm0, xmm0
	movss	DWORD PTR -4[rbp], xmm0
	mov	DWORD PTR -8[rbp], 0
	jmp	.L228
.L229:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -4[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -4[rbp], xmm0
	add	DWORD PTR -8[rbp], 1
.L228:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L229
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, DWORD PTR -4[rbp]
	movq	rax, xmm2
	movq	xmm0, rax
	call	sqrt@PLT
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -4[rbp], xmm0
	movss	xmm0, DWORD PTR -4[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	L2norm, .-L2norm
	.section	.rodata
	.align 8
.LC162:
	.string	"\nFatal error: full velocity file not opened"
	.align 8
.LC163:
	.string	"\n%s velocities output: %d bytes\n"
	.align 8
.LC164:
	.string	"Number of positions with velocity: %d\n"
	.align 8
.LC165:
	.string	"Number of positions without velocity: %d\n"
	.align 8
.LC167:
	.string	"Percentage of %s velocities: %f\n"
	.text
	.globl	output_velocities
	.type	output_velocities, @function
output_velocities:
.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, 80
	mov	DWORD PTR -52[rbp], edi
	mov	QWORD PTR -64[rbp], rsi
	mov	DWORD PTR -56[rbp], edx
	mov	DWORD PTR -68[rbp], ecx
	mov	QWORD PTR -80[rbp], r8
	mov	DWORD PTR -72[rbp], r9d
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	cmp	DWORD PTR -52[rbp], 0
	jns	.L232
	lea	rdi, .LC162[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L232:
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -56[rbp]
	movss	DWORD PTR -36[rbp], xmm0
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -68[rbp]
	movss	DWORD PTR -32[rbp], xmm0
	lea	rcx, -36[rbp]
	mov	eax, DWORD PTR -52[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	lea	rcx, -32[rbp]
	mov	eax, DWORD PTR -52[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	eax, DWORD PTR OFFSET_X[rip]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR -56[rbp]
	sub	eax, edx
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -36[rbp], xmm0
	mov	eax, DWORD PTR OFFSET_Y[rip]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR -68[rbp]
	sub	eax, edx
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -32[rbp], xmm0
	lea	rcx, -36[rbp]
	mov	eax, DWORD PTR -52[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	lea	rcx, -32[rbp]
	mov	eax, DWORD PTR -52[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	eax, DWORD PTR OFFSET_Y[rip]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -36[rbp], xmm0
	mov	eax, DWORD PTR OFFSET_X[rip]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -32[rbp], xmm0
	lea	rcx, -36[rbp]
	mov	eax, DWORD PTR -52[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	lea	rcx, -32[rbp]
	mov	eax, DWORD PTR -52[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -20[rbp], 24
	mov	DWORD PTR -12[rbp], 0
	mov	eax, DWORD PTR -12[rbp]
	mov	DWORD PTR -16[rbp], eax
	mov	eax, DWORD PTR OFFSET_Y[rip]
	mov	DWORD PTR -28[rbp], eax
	jmp	.L233
.L240:
	mov	eax, DWORD PTR OFFSET_X[rip]
	mov	DWORD PTR -24[rbp], eax
	jmp	.L234
.L239:
	mov	eax, DWORD PTR -28[rbp]
	cdq
	idiv	DWORD PTR -72[rbp]
	mov	eax, edx
	test	eax, eax
	jne	.L235
	mov	eax, DWORD PTR -24[rbp]
	cdq
	idiv	DWORD PTR -72[rbp]
	mov	eax, edx
	test	eax, eax
	jne	.L235
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -64[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L244
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L236
.L244:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -64[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L245
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L236
.L245:
	add	DWORD PTR -12[rbp], 1
	jmp	.L235
.L236:
	add	DWORD PTR -16[rbp], 1
.L235:
	add	DWORD PTR -24[rbp], 1
.L234:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -56[rbp]
	sub	eax, edx
	cmp	DWORD PTR -24[rbp], eax
	jl	.L239
	add	DWORD PTR -28[rbp], 1
.L233:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -68[rbp]
	sub	eax, edx
	cmp	DWORD PTR -28[rbp], eax
	jl	.L240
	mov	eax, DWORD PTR OFFSET_Y[rip]
	mov	DWORD PTR -28[rbp], eax
	jmp	.L241
.L242:
	mov	eax, DWORD PTR OFFSET_X[rip]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR -56[rbp]
	sub	eax, edx
	sal	eax, 3
	movsx	rdx, eax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	imul	rcx, rax, 2600
	mov	rax, QWORD PTR -64[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR OFFSET_X[rip]
	cdqe
	sal	rax, 3
	add	rcx, rax
	mov	eax, DWORD PTR -52[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	add	eax, edx
	mov	DWORD PTR -20[rbp], eax
	add	DWORD PTR -28[rbp], 1
.L241:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -68[rbp]
	sub	eax, edx
	cmp	DWORD PTR -28[rbp], eax
	jl	.L242
	mov	eax, DWORD PTR -52[rbp]
	mov	edi, eax
	call	close@PLT
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -80[rbp]
	mov	rsi, rax
	lea	rdi, .LC163[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, eax
	lea	rdi, .LC164[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -16[rbp]
	mov	esi, eax
	lea	rdi, .LC165[rip]
	mov	eax, 0
	call	printf@PLT
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR -12[rbp]
	mov	edx, DWORD PTR -12[rbp]
	mov	eax, DWORD PTR -16[rbp]
	add	eax, edx
	pxor	xmm2, xmm2
	cvtsi2sd	xmm2, eax
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR .LC166[rip]
	mulsd	xmm1, xmm0
	movq	rdx, xmm1
	mov	rax, QWORD PTR -80[rbp]
	movq	xmm0, rdx
	mov	rsi, rax
	lea	rdi, .LC167[rip]
	mov	eax, 1
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L243
	call	__stack_chk_fail@PLT
.L243:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	output_velocities, .-output_velocities
	.section	.rodata
	.align 8
.LC168:
	.string	"\nFatal error: covariance file not opened"
	.align 8
.LC169:
	.string	"\nFull velocity covariance matrices output: %d bytes\n"
	.text
	.globl	output_covariances
	.type	output_covariances, @function
output_covariances:
.LFB14:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -36[rbp], edi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -40[rbp], edx
	mov	DWORD PTR -52[rbp], ecx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	cmp	DWORD PTR -36[rbp], 0
	jns	.L247
	lea	rdi, .LC168[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L247:
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -40[rbp]
	movss	DWORD PTR -24[rbp], xmm0
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -52[rbp]
	movss	DWORD PTR -20[rbp], xmm0
	lea	rcx, -24[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	lea	rcx, -20[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	eax, DWORD PTR OFFSET_X[rip]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR -40[rbp]
	sub	eax, edx
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR OFFSET_Y[rip]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR -52[rbp]
	sub	eax, edx
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -20[rbp], xmm0
	lea	rcx, -24[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	lea	rcx, -20[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	eax, DWORD PTR OFFSET_Y[rip]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR OFFSET_X[rip]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -20[rbp], xmm0
	lea	rcx, -24[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	lea	rcx, -20[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -12[rbp], 24
	mov	eax, DWORD PTR OFFSET_Y[rip]
	mov	DWORD PTR -16[rbp], eax
	jmp	.L248
.L249:
	mov	eax, DWORD PTR OFFSET_X[rip]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR -40[rbp]
	sub	eax, edx
	sal	eax, 4
	movsx	rdx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rcx, rax, 5200
	mov	rax, QWORD PTR -48[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR OFFSET_X[rip]
	cdqe
	sal	rax, 4
	add	rcx, rax
	mov	eax, DWORD PTR -36[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	add	eax, edx
	mov	DWORD PTR -12[rbp], eax
	add	DWORD PTR -16[rbp], 1
.L248:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -52[rbp]
	sub	eax, edx
	cmp	DWORD PTR -16[rbp], eax
	jl	.L249
	mov	eax, DWORD PTR -36[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, eax
	lea	rdi, .LC169[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L250
	call	__stack_chk_fail@PLT
.L250:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	output_covariances, .-output_covariances
	.section	.rodata
.LC170:
	.string	"\nVelocities input: %d bytes\n"
	.text
	.globl	input_velocities
	.type	input_velocities, @function
input_velocities:
.LFB15:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -36[rbp], edi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -40[rbp], edx
	mov	DWORD PTR -52[rbp], ecx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -20[rbp], 0
	jmp	.L252
.L255:
	mov	DWORD PTR -16[rbp], 0
	jmp	.L253
.L254:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -16[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR 4[rax+rdx*8], xmm0
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	imul	rcx, rdx, 2600
	mov	rdx, QWORD PTR -48[rbp]
	add	rcx, rdx
	mov	edx, DWORD PTR -16[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR 4[rax+rdx*8]
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	DWORD PTR [rcx+rax*8], xmm0
	add	DWORD PTR -16[rbp], 1
.L253:
	cmp	DWORD PTR -16[rbp], 324
	jle	.L254
	add	DWORD PTR -20[rbp], 1
.L252:
	cmp	DWORD PTR -20[rbp], 324
	jle	.L255
	cmp	DWORD PTR -36[rbp], 0
	jns	.L256
	lea	rdi, .LC162[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L256:
	lea	rcx, -28[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -24[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -28[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -24[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -28[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -24[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	movss	xmm0, DWORD PTR -28[rbp]
	cvttss2si	eax, xmm0
	mov	DWORD PTR OFFSET_Y[rip], eax
	movss	xmm0, DWORD PTR -24[rbp]
	cvttss2si	eax, xmm0
	mov	DWORD PTR OFFSET_X[rip], eax
	mov	DWORD PTR -12[rbp], 24
	mov	eax, DWORD PTR OFFSET_Y[rip]
	mov	DWORD PTR -20[rbp], eax
	jmp	.L257
.L258:
	mov	eax, DWORD PTR OFFSET_X[rip]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR -40[rbp]
	sub	eax, edx
	sal	eax, 3
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	imul	rcx, rax, 2600
	mov	rax, QWORD PTR -48[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR OFFSET_X[rip]
	cdqe
	sal	rax, 3
	add	rcx, rax
	mov	eax, DWORD PTR -36[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	add	eax, edx
	mov	DWORD PTR -12[rbp], eax
	add	DWORD PTR -20[rbp], 1
.L257:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -52[rbp]
	sub	eax, edx
	cmp	DWORD PTR -20[rbp], eax
	jl	.L258
	mov	eax, DWORD PTR -36[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, eax
	lea	rdi, .LC170[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L259
	call	__stack_chk_fail@PLT
.L259:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	input_velocities, .-input_velocities
	.section	.rodata
	.align 8
.LC171:
	.string	"\nFull velocity covariance matrices input: %d bytes\n"
	.text
	.globl	input_covariances
	.type	input_covariances, @function
input_covariances:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -36[rbp], edi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -40[rbp], edx
	mov	DWORD PTR -52[rbp], ecx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	cmp	DWORD PTR -36[rbp], 0
	jns	.L261
	lea	rdi, .LC168[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L261:
	lea	rcx, -24[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -20[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -24[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -20[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -24[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	lea	rcx, -20[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	mov	DWORD PTR -12[rbp], 24
	mov	eax, DWORD PTR OFFSET_Y[rip]
	mov	DWORD PTR -16[rbp], eax
	jmp	.L262
.L263:
	mov	eax, DWORD PTR OFFSET_X[rip]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR -40[rbp]
	sub	eax, edx
	sal	eax, 4
	movsx	rdx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rcx, rax, 5200
	mov	rax, QWORD PTR -48[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR OFFSET_X[rip]
	cdqe
	sal	rax, 4
	add	rcx, rax
	mov	eax, DWORD PTR -36[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	add	eax, edx
	mov	DWORD PTR -12[rbp], eax
	add	DWORD PTR -16[rbp], 1
.L262:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -52[rbp]
	sub	eax, edx
	cmp	DWORD PTR -16[rbp], eax
	jl	.L263
	mov	eax, DWORD PTR -36[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, eax
	lea	rdi, .LC171[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L264
	call	__stack_chk_fail@PLT
.L264:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	input_covariances, .-input_covariances
	.globl	calc_statistics
	.type	calc_statistics, @function
calc_statistics:
.LFB17:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	r11, -421888[rsp]
.LPSRL1:
	sub	rsp, 4096
	or	DWORD PTR [rsp], 0
	cmp	rsp, r11
	jne	.LPSRL1
	sub	rsp, 752
	mov	QWORD PTR -422584[rbp], rdi
	mov	QWORD PTR -422592[rbp], rsi
	mov	DWORD PTR -422596[rbp], edx
	mov	DWORD PTR -422600[rbp], ecx
	mov	QWORD PTR -422608[rbp], r8
	mov	QWORD PTR -422616[rbp], r9
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -422624[rbp], rax
	mov	rax, QWORD PTR 24[rbp]
	mov	QWORD PTR -422632[rbp], rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR -422640[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -422560[rbp], 0
	mov	eax, DWORD PTR -422560[rbp]
	mov	DWORD PTR -422564[rbp], eax
	pxor	xmm0, xmm0
	movss	DWORD PTR -422548[rbp], xmm0
	movss	xmm0, DWORD PTR -422548[rbp]
	movss	DWORD PTR -422540[rbp], xmm0
	mov	rax, QWORD PTR -422632[rbp]
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -422640[rbp]
	pxor	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -422616[rbp]
	pxor	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -422616[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -422608[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -422624[rbp]
	pxor	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR OFFSET_Y[rip]
	mov	DWORD PTR -422556[rbp], eax
	jmp	.L266
.L276:
	mov	eax, DWORD PTR OFFSET_X[rip]
	mov	DWORD PTR -422552[rbp], eax
	jmp	.L267
.L275:
	mov	eax, DWORD PTR -422556[rbp]
	cdq
	idiv	DWORD PTR 40[rbp]
	mov	eax, edx
	test	eax, eax
	jne	.L268
	mov	eax, DWORD PTR -422552[rbp]
	cdq
	idiv	DWORD PTR 40[rbp]
	mov	eax, edx
	test	eax, eax
	jne	.L268
	mov	eax, DWORD PTR -422556[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -422592[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -422552[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L269
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jne	.L269
	mov	eax, DWORD PTR -422556[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -422592[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -422552[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L269
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jne	.L269
	add	DWORD PTR -422560[rbp], 1
	mov	eax, DWORD PTR -422552[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -422556[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR -422512[rbp+rax*4], xmm0
	jmp	.L268
.L269:
	add	DWORD PTR -422564[rbp], 1
	mov	eax, DWORD PTR -422556[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -422592[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -422552[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	movss	DWORD PTR -422520[rbp], xmm0
	mov	eax, DWORD PTR -422556[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -422592[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -422552[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	movss	DWORD PTR -422516[rbp], xmm0
	mov	eax, DWORD PTR -422556[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -422584[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -422552[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	movss	DWORD PTR -422528[rbp], xmm0
	mov	eax, DWORD PTR -422556[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -422584[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -422552[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	movss	DWORD PTR -422524[rbp], xmm0
	mov	ecx, DWORD PTR -422552[rbp]
	mov	edx, DWORD PTR -422556[rbp]
	lea	rsi, -422528[rbp]
	lea	rax, -422520[rbp]
	mov	rdi, rax
	mov	eax, 0
	call	PsiER
	movd	eax, xmm0
	mov	DWORD PTR -422532[rbp], eax
	mov	eax, DWORD PTR -422552[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -422556[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -422532[rbp]
	movss	DWORD PTR -422512[rbp+rax*4], xmm0
	mov	rax, QWORD PTR -422608[rbp]
	movss	xmm0, DWORD PTR [rax]
	addss	xmm0, DWORD PTR -422532[rbp]
	mov	rax, QWORD PTR -422608[rbp]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR -422532[rbp]
	mulss	xmm0, xmm0
	movss	xmm1, DWORD PTR -422548[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -422548[rbp], xmm0
	mov	rax, QWORD PTR -422632[rbp]
	movss	xmm0, DWORD PTR [rax]
	comiss	xmm0, DWORD PTR -422532[rbp]
	jbe	.L272
	mov	rax, QWORD PTR -422632[rbp]
	movss	xmm0, DWORD PTR -422532[rbp]
	movss	DWORD PTR [rax], xmm0
.L272:
	mov	rax, QWORD PTR -422640[rbp]
	movss	xmm1, DWORD PTR [rax]
	movss	xmm0, DWORD PTR -422532[rbp]
	comiss	xmm0, xmm1
	jbe	.L268
	mov	rax, QWORD PTR -422640[rbp]
	movss	xmm0, DWORD PTR -422532[rbp]
	movss	DWORD PTR [rax], xmm0
.L268:
	add	DWORD PTR -422552[rbp], 1
.L267:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -422596[rbp]
	sub	eax, edx
	cmp	DWORD PTR -422552[rbp], eax
	jl	.L275
	add	DWORD PTR -422556[rbp], 1
.L266:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -422600[rbp]
	sub	eax, edx
	cmp	DWORD PTR -422556[rbp], eax
	jl	.L276
	cmp	DWORD PTR -422564[rbp], 0
	je	.L277
	mov	rax, QWORD PTR -422608[rbp]
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -422564[rbp]
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	mov	rax, QWORD PTR -422608[rbp]
	movss	DWORD PTR [rax], xmm0
.L277:
	cmp	DWORD PTR -422564[rbp], 1
	jle	.L278
	pxor	xmm0, xmm0
	movss	DWORD PTR -422544[rbp], xmm0
	mov	eax, DWORD PTR OFFSET_Y[rip]
	mov	DWORD PTR -422556[rbp], eax
	jmp	.L279
.L284:
	mov	eax, DWORD PTR OFFSET_X[rip]
	mov	DWORD PTR -422552[rbp], eax
	jmp	.L280
.L283:
	mov	eax, DWORD PTR -422556[rbp]
	cdq
	idiv	DWORD PTR 40[rbp]
	mov	eax, edx
	test	eax, eax
	jne	.L281
	mov	eax, DWORD PTR -422552[rbp]
	cdq
	idiv	DWORD PTR 40[rbp]
	mov	eax, edx
	test	eax, eax
	jne	.L281
	mov	eax, DWORD PTR -422552[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -422556[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -422512[rbp+rax*4]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L293
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L281
.L293:
	mov	eax, DWORD PTR -422552[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -422556[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -422512[rbp+rax*4]
	mov	rax, QWORD PTR -422608[rbp]
	movss	xmm1, DWORD PTR [rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -422536[rbp], xmm0
	movss	xmm0, DWORD PTR -422536[rbp]
	mulss	xmm0, xmm0
	movss	DWORD PTR -422536[rbp], xmm0
	movss	xmm0, DWORD PTR -422544[rbp]
	addss	xmm0, DWORD PTR -422536[rbp]
	movss	DWORD PTR -422544[rbp], xmm0
.L281:
	add	DWORD PTR -422552[rbp], 1
.L280:
	mov	edx, DWORD PTR OFFSET_X[rip]
	mov	eax, DWORD PTR -422596[rbp]
	sub	eax, edx
	cmp	DWORD PTR -422552[rbp], eax
	jl	.L283
	add	DWORD PTR -422556[rbp], 1
.L279:
	mov	edx, DWORD PTR OFFSET_Y[rip]
	mov	eax, DWORD PTR -422600[rbp]
	sub	eax, edx
	cmp	DWORD PTR -422556[rbp], eax
	jl	.L284
	mov	eax, DWORD PTR -422564[rbp]
	sub	eax, 1
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, eax
	movss	xmm0, DWORD PTR -422544[rbp]
	divss	xmm0, xmm1
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movq	rax, xmm2
	movq	xmm0, rax
	call	sqrt@PLT
	cvtsd2ss	xmm0, xmm0
	mov	rax, QWORD PTR -422616[rbp]
	movss	DWORD PTR [rax], xmm0
	jmp	.L285
.L278:
	mov	rax, QWORD PTR -422616[rbp]
	pxor	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
.L285:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -422564[rbp]
	movsd	xmm0, QWORD PTR .LC166[rip]
	mulsd	xmm0, xmm1
	mov	edx, DWORD PTR -422564[rbp]
	mov	eax, DWORD PTR -422560[rbp]
	add	eax, edx
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	mov	rax, QWORD PTR -422624[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -422608[rbp]
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L286
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jne	.L286
	mov	rax, QWORD PTR -422640[rbp]
	pxor	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -422640[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -422632[rbp]
	movss	DWORD PTR [rax], xmm0
.L286:
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L288
	call	__stack_chk_fail@PLT
.L288:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	calc_statistics, .-calc_statistics
	.section	.rodata
	.align 8
.LC177:
	.string	"ERROR in PsiER()...\n r=%8.4f  v=%8.4f  nva=%8.4f nve= %8.4f\n"
.LC178:
	.string	"va=(%f,%f) ve=(%f,%f)\n"
.LC179:
	.string	"i=%d j=%d\n"
	.text
	.globl	PsiER
	.type	PsiER, @function
PsiER:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	DWORD PTR -68[rbp], edx
	mov	DWORD PTR -72[rbp], ecx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -32[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	movss	DWORD PTR -28[rbp], xmm0
	movss	xmm0, DWORD PTR .LC106[rip]
	movss	DWORD PTR -24[rbp], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -20[rbp], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	movss	DWORD PTR -16[rbp], xmm0
	movss	xmm0, DWORD PTR .LC106[rip]
	movss	DWORD PTR -12[rbp], xmm0
	lea	rax, -20[rbp]
	mov	esi, 3
	mov	rdi, rax
	call	L2norm
	movd	eax, xmm0
	mov	DWORD PTR -44[rbp], eax
	lea	rax, -32[rbp]
	mov	esi, 3
	mov	rdi, rax
	call	L2norm
	movd	eax, xmm0
	mov	DWORD PTR -40[rbp], eax
	movss	xmm1, DWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -20[rbp]
	mulss	xmm1, xmm0
	movss	xmm2, DWORD PTR -28[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC173[rip]
	addsd	xmm0, xmm1
	movss	xmm1, DWORD PTR -44[rbp]
	mulss	xmm1, DWORD PTR -40[rbp]
	cvtss2sd	xmm1, xmm1
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -48[rbp], xmm0
	movss	xmm0, DWORD PTR -48[rbp]
	movss	xmm1, DWORD PTR .LC106[rip]
	comiss	xmm0, xmm1
	jbe	.L296
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -48[rbp]
	movsd	xmm0, QWORD PTR .LC174[rip]
	comisd	xmm0, xmm1
	jbe	.L296
	movss	xmm0, DWORD PTR .LC106[rip]
	movss	DWORD PTR -48[rbp], xmm0
.L296:
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, DWORD PTR -48[rbp]
	movq	rax, xmm4
	movq	xmm0, rax
	call	acos@PLT
	movsd	xmm1, QWORD PTR .LC175[rip]
	mulsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -36[rbp], xmm0
	movss	xmm0, DWORD PTR -36[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	setnb	al
	xor	eax, 1
	test	al, al
	jne	.L299
	movss	xmm0, DWORD PTR .LC176[rip]
	comiss	xmm0, DWORD PTR -36[rbp]
	seta	al
	xor	eax, 1
	test	al, al
	je	.L300
.L299:
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, DWORD PTR -40[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -44[rbp]
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -48[rbp]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, DWORD PTR -36[rbp]
	movq	rax, xmm5
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC177[rip]
	mov	eax, 4
	call	printf@PLT
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm3
	movq	rax, xmm6
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC178[rip]
	mov	eax, 4
	call	printf@PLT
	mov	edx, DWORD PTR -72[rbp]
	mov	eax, DWORD PTR -68[rbp]
	mov	esi, eax
	lea	rdi, .LC179[rip]
	mov	eax, 0
	call	printf@PLT
.L300:
	movss	xmm0, DWORD PTR -36[rbp]
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L302
	call	__stack_chk_fail@PLT
.L302:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	PsiER, .-PsiER
	.section	.rodata
	.align 8
.LC183:
	.string	"ERROR in PsiEN()  v1: %f ve: %f\n"
.LC184:
	.string	"nve: %f nva: %f\n"
.LC185:
	.string	"n: %f %f\n"
.LC186:
	.string	" ve: %f %f va: %f %f\n"
	.text
	.globl	PsiEN
	.type	PsiEN, @function
PsiEN:
.LFB19:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, 2
	mov	rdi, rax
	call	L2norm
	movd	eax, xmm0
	mov	DWORD PTR -28[rbp], eax
	mov	rax, QWORD PTR -40[rbp]
	mov	esi, 2
	mov	rdi, rax
	call	L2norm
	movd	eax, xmm0
	mov	DWORD PTR -24[rbp], eax
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -24[rbp]
	comisd	xmm0, QWORD PTR .LC180[rip]
	jbe	.L313
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR [rax]
	divss	xmm0, DWORD PTR -24[rbp]
	movss	DWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	divss	xmm0, DWORD PTR -24[rbp]
	movss	DWORD PTR -12[rbp], xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm1, DWORD PTR [rax]
	movss	xmm0, DWORD PTR -16[rbp]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -48[rbp]
	add	rax, 4
	movss	xmm2, DWORD PTR [rax]
	movss	xmm0, DWORD PTR -12[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	subss	xmm0, DWORD PTR -24[rbp]
	movss	DWORD PTR -32[rbp], xmm0
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, DWORD PTR -32[rbp]
	movsd	QWORD PTR -56[rbp], xmm4
	movss	xmm0, DWORD PTR -28[rbp]
	mulss	xmm0, xmm0
	movaps	xmm1, xmm0
	movss	xmm0, DWORD PTR .LC106[rip]
	addss	xmm0, xmm1
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm0
	movq	rax, xmm6
	movq	xmm0, rax
	call	sqrt@PLT
	movsd	QWORD PTR -64[rbp], xmm0
	movss	xmm0, DWORD PTR -24[rbp]
	movaps	xmm5, xmm0
	mulss	xmm5, xmm0
	movaps	xmm1, xmm5
	movss	xmm0, DWORD PTR .LC106[rip]
	addss	xmm0, xmm1
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm0
	movq	rax, xmm7
	movq	xmm0, rax
	call	sqrt@PLT
	mulsd	xmm0, QWORD PTR -64[rbp]
	movsd	xmm1, QWORD PTR -56[rbp]
	divsd	xmm1, xmm0
	pxor	xmm0, xmm0
	cvtsd2ss	xmm0, xmm1
	movss	DWORD PTR -20[rbp], xmm0
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, DWORD PTR -20[rbp]
	movq	rax, xmm4
	movq	xmm0, rax
	call	asin@PLT
	movsd	xmm1, QWORD PTR .LC175[rip]
	mulsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -32[rbp], xmm0
	movss	xmm0, DWORD PTR -32[rbp]
	comiss	xmm0, DWORD PTR .LC181[rip]
	setnb	al
	xor	eax, 1
	test	al, al
	jne	.L308
	movss	xmm0, DWORD PTR .LC182[rip]
	comiss	xmm0, DWORD PTR -32[rbp]
	setnb	al
	xor	eax, 1
	test	al, al
	je	.L309
.L308:
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -20[rbp]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, DWORD PTR -32[rbp]
	movq	rax, xmm7
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC183[rip]
	mov	eax, 2
	call	printf@PLT
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -28[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, DWORD PTR -24[rbp]
	movq	rax, xmm3
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC184[rip]
	mov	eax, 2
	call	printf@PLT
	movss	xmm0, DWORD PTR -12[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -16[rbp]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm1
	movq	rax, xmm5
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC185[rip]
	mov	eax, 2
	call	printf@PLT
	mov	rax, QWORD PTR -48[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rax, QWORD PTR -48[rbp]
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm3
	movq	rax, xmm4
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC186[rip]
	mov	eax, 4
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	jmp	.L309
.L313:
	movss	xmm0, DWORD PTR .LC137[rip]
	movss	DWORD PTR -32[rbp], xmm0
.L309:
	movss	xmm0, DWORD PTR -32[rbp]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L311
	call	__stack_chk_fail@PLT
.L311:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	PsiEN, .-PsiEN
	.section	.rodata
	.align 8
.LC187:
	.string	"\nFatal error: n not DIM %d in jacobi\n"
	.text
	.globl	jacobi
	.type	jacobi, @function
jacobi:
.LFB20:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 160
	mov	QWORD PTR -120[rbp], rdi
	mov	DWORD PTR -124[rbp], esi
	mov	QWORD PTR -136[rbp], rdx
	mov	QWORD PTR -144[rbp], rcx
	mov	QWORD PTR -152[rbp], r8
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	cmp	DWORD PTR -124[rbp], 2
	je	.L315
	mov	rax, QWORD PTR stderr[rip]
	mov	edx, 2
	lea	rsi, .LC187[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L315:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L316
.L321:
	mov	DWORD PTR -88[rbp], 0
	jmp	.L317
.L318:
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -144[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	pxor	xmm0, xmm0
	movss	DWORD PTR [rdx+rax*4], xmm0
	add	DWORD PTR -88[rbp], 1
.L317:
	mov	eax, DWORD PTR -88[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L318
	mov	DWORD PTR -88[rbp], 0
	jmp	.L319
.L320:
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -120[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -32[rbp+rax*4], xmm0
	add	DWORD PTR -88[rbp], 1
.L319:
	mov	eax, DWORD PTR -88[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L320
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -144[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	movss	xmm0, DWORD PTR .LC106[rip]
	movss	DWORD PTR [rdx+rax*4], xmm0
	add	DWORD PTR -84[rbp], 1
.L316:
	mov	eax, DWORD PTR -84[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L321
	mov	DWORD PTR -84[rbp], 0
	jmp	.L322
.L323:
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -84[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	add	rax, rax
	add	rax, rcx
	sal	rax, 2
	add	rax, rbp
	sub	rax, 32
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR [rdx], xmm0
	movss	xmm0, DWORD PTR [rdx]
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	movss	DWORD PTR -48[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	pxor	xmm0, xmm0
	movss	DWORD PTR -40[rbp+rax*4], xmm0
	add	DWORD PTR -84[rbp], 1
.L322:
	mov	eax, DWORD PTR -84[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L323
	mov	rax, QWORD PTR -152[rbp]
	mov	DWORD PTR [rax], 0
	mov	DWORD PTR -80[rbp], 0
	jmp	.L324
.L357:
	pxor	xmm0, xmm0
	movss	DWORD PTR -68[rbp], xmm0
	mov	DWORD PTR -84[rbp], 0
	jmp	.L325
.L328:
	mov	eax, DWORD PTR -84[rbp]
	add	eax, 1
	mov	DWORD PTR -88[rbp], eax
	jmp	.L326
.L327:
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -32[rbp+rax*4]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	movss	xmm1, DWORD PTR -68[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -68[rbp], xmm0
	add	DWORD PTR -88[rbp], 1
.L326:
	mov	eax, DWORD PTR -88[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L327
	add	DWORD PTR -84[rbp], 1
.L325:
	mov	eax, DWORD PTR -124[rbp]
	sub	eax, 1
	cmp	DWORD PTR -84[rbp], eax
	jl	.L328
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -68[rbp]
	jp	.L329
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -68[rbp]
	je	.L364
.L329:
	cmp	DWORD PTR -80[rbp], 2
	jg	.L332
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -68[rbp]
	movsd	xmm0, QWORD PTR .LC188[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -124[rbp]
	imul	eax, eax
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -76[rbp], xmm0
	jmp	.L333
.L332:
	pxor	xmm0, xmm0
	movss	DWORD PTR -76[rbp], xmm0
.L333:
	mov	DWORD PTR -84[rbp], 0
	jmp	.L334
.L354:
	mov	eax, DWORD PTR -84[rbp]
	add	eax, 1
	mov	DWORD PTR -88[rbp], eax
	jmp	.L335
.L353:
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -32[rbp+rax*4]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm1, xmm0
	movss	xmm0, DWORD PTR .LC137[rip]
	mulss	xmm0, xmm1
	movss	DWORD PTR -96[rbp], xmm0
	cmp	DWORD PTR -80[rbp], 3
	jle	.L336
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -96[rbp]
	cvtss2sd	xmm0, xmm0
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	movss	xmm2, DWORD PTR .LC161[rip]
	andps	xmm1, xmm2
	cvtss2sd	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L336
	ucomisd	xmm0, xmm1
	jne	.L336
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -96[rbp]
	cvtss2sd	xmm0, xmm0
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	movss	xmm2, DWORD PTR .LC161[rip]
	andps	xmm1, xmm2
	cvtss2sd	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L336
	ucomisd	xmm0, xmm1
	jne	.L336
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR -32[rbp+rax*4], xmm0
	jmp	.L339
.L336:
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -32[rbp+rax*4]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	comiss	xmm0, DWORD PTR -76[rbp]
	jbe	.L339
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	subss	xmm0, xmm1
	movss	DWORD PTR -100[rbp], xmm0
	movss	xmm0, DWORD PTR -100[rbp]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -96[rbp]
	cvtss2sd	xmm0, xmm0
	addsd	xmm0, xmm1
	movss	xmm1, DWORD PTR -100[rbp]
	movss	xmm2, DWORD PTR .LC161[rip]
	andps	xmm1, xmm2
	cvtss2sd	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L341
	ucomisd	xmm0, xmm1
	jne	.L341
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -32[rbp+rax*4]
	movss	xmm1, DWORD PTR -100[rbp]
	divss	xmm0, xmm1
	movss	DWORD PTR -72[rbp], xmm0
	jmp	.L343
.L341:
	movss	xmm0, DWORD PTR -100[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC189[rip]
	mulsd	xmm0, xmm1
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm1, DWORD PTR -32[rbp+rax*4]
	cvtss2sd	xmm1, xmm1
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -64[rbp], xmm0
	movss	xmm0, DWORD PTR -64[rbp]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movsd	QWORD PTR -160[rbp], xmm3
	movss	xmm0, DWORD PTR -64[rbp]
	mulss	xmm0, xmm0
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC173[rip]
	movapd	xmm4, xmm1
	addsd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	call	sqrt@PLT
	movsd	xmm1, QWORD PTR -160[rbp]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC173[rip]
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -72[rbp], xmm0
	pxor	xmm0, xmm0
	comiss	xmm0, DWORD PTR -64[rbp]
	jbe	.L343
	movss	xmm0, DWORD PTR -72[rbp]
	movss	xmm1, DWORD PTR .LC141[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -72[rbp], xmm0
.L343:
	movss	xmm0, DWORD PTR -72[rbp]
	mulss	xmm0, xmm0
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC173[rip]
	addsd	xmm1, xmm0
	movq	rax, xmm1
	movq	xmm0, rax
	call	sqrt@PLT
	movsd	xmm1, QWORD PTR .LC173[rip]
	divsd	xmm1, xmm0
	pxor	xmm0, xmm0
	cvtsd2ss	xmm0, xmm1
	movss	DWORD PTR -60[rbp], xmm0
	movss	xmm0, DWORD PTR -72[rbp]
	mulss	xmm0, DWORD PTR -60[rbp]
	movss	DWORD PTR -56[rbp], xmm0
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -56[rbp]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, DWORD PTR -60[rbp]
	movsd	xmm1, QWORD PTR .LC173[rip]
	addsd	xmm1, xmm2
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -52[rbp], xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -32[rbp+rax*4]
	mulss	xmm0, DWORD PTR -72[rbp]
	movss	DWORD PTR -100[rbp], xmm0
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	movss	xmm0, DWORD PTR -40[rbp+rax*4]
	movss	xmm1, DWORD PTR -100[rbp]
	subss	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	movss	DWORD PTR -40[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movss	xmm1, DWORD PTR -40[rbp+rax*4]
	movss	xmm0, DWORD PTR -100[rbp]
	addss	xmm0, xmm1
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	movss	DWORD PTR -40[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR -100[rbp]
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	subss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	movss	xmm0, DWORD PTR -100[rbp]
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	addss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -88[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR -32[rbp+rax*4], xmm0
	mov	DWORD PTR -92[rbp], 0
	jmp	.L345
.L346:
	movss	xmm0, DWORD PTR -52[rbp]
	mov	edi, DWORD PTR -56[rbp]
	lea	r9, -100[rbp]
	mov	r10d, DWORD PTR -88[rbp]
	mov	ecx, DWORD PTR -92[rbp]
	mov	edx, DWORD PTR -84[rbp]
	mov	esi, DWORD PTR -92[rbp]
	lea	rax, -32[rbp]
	sub	rsp, 8
	lea	r8, -96[rbp]
	push	r8
	movaps	xmm1, xmm0
	movd	xmm0, edi
	mov	r8d, r10d
	mov	rdi, rax
	call	rotate
	add	rsp, 16
	add	DWORD PTR -92[rbp], 1
.L345:
	mov	eax, DWORD PTR -84[rbp]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L346
	mov	eax, DWORD PTR -84[rbp]
	add	eax, 1
	mov	DWORD PTR -92[rbp], eax
	jmp	.L347
.L348:
	movss	xmm0, DWORD PTR -52[rbp]
	mov	edi, DWORD PTR -56[rbp]
	lea	r9, -100[rbp]
	mov	r10d, DWORD PTR -88[rbp]
	mov	ecx, DWORD PTR -92[rbp]
	mov	edx, DWORD PTR -92[rbp]
	mov	esi, DWORD PTR -84[rbp]
	lea	rax, -32[rbp]
	sub	rsp, 8
	lea	r8, -96[rbp]
	push	r8
	movaps	xmm1, xmm0
	movd	xmm0, edi
	mov	r8d, r10d
	mov	rdi, rax
	call	rotate
	add	rsp, 16
	add	DWORD PTR -92[rbp], 1
.L347:
	mov	eax, DWORD PTR -88[rbp]
	sub	eax, 1
	cmp	DWORD PTR -92[rbp], eax
	jl	.L348
	mov	eax, DWORD PTR -88[rbp]
	add	eax, 1
	mov	DWORD PTR -92[rbp], eax
	jmp	.L349
.L350:
	movss	xmm0, DWORD PTR -52[rbp]
	mov	edi, DWORD PTR -56[rbp]
	lea	r9, -100[rbp]
	mov	r10d, DWORD PTR -92[rbp]
	mov	ecx, DWORD PTR -88[rbp]
	mov	edx, DWORD PTR -92[rbp]
	mov	esi, DWORD PTR -84[rbp]
	lea	rax, -32[rbp]
	sub	rsp, 8
	lea	r8, -96[rbp]
	push	r8
	movaps	xmm1, xmm0
	movd	xmm0, edi
	mov	r8d, r10d
	mov	rdi, rax
	call	rotate
	add	rsp, 16
	add	DWORD PTR -92[rbp], 1
.L349:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L350
	mov	DWORD PTR -92[rbp], 0
	jmp	.L351
.L352:
	movss	xmm0, DWORD PTR -52[rbp]
	mov	edi, DWORD PTR -56[rbp]
	lea	r9, -100[rbp]
	mov	r10d, DWORD PTR -88[rbp]
	mov	ecx, DWORD PTR -92[rbp]
	mov	edx, DWORD PTR -84[rbp]
	mov	esi, DWORD PTR -92[rbp]
	mov	rax, QWORD PTR -144[rbp]
	sub	rsp, 8
	lea	r8, -96[rbp]
	push	r8
	movaps	xmm1, xmm0
	movd	xmm0, edi
	mov	r8d, r10d
	mov	rdi, rax
	call	rotate
	add	rsp, 16
	add	DWORD PTR -92[rbp], 1
.L351:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L352
	mov	rax, QWORD PTR -152[rbp]
	mov	eax, DWORD PTR [rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -152[rbp]
	mov	DWORD PTR [rax], edx
.L339:
	add	DWORD PTR -88[rbp], 1
.L335:
	mov	eax, DWORD PTR -88[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L353
	add	DWORD PTR -84[rbp], 1
.L334:
	mov	eax, DWORD PTR -124[rbp]
	sub	eax, 1
	cmp	DWORD PTR -84[rbp], eax
	jl	.L354
	mov	DWORD PTR -84[rbp], 0
	jmp	.L355
.L356:
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	movss	xmm1, DWORD PTR -48[rbp+rax*4]
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	movss	xmm0, DWORD PTR -40[rbp+rax*4]
	addss	xmm0, xmm1
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	movss	DWORD PTR -48[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -136[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	movss	xmm0, DWORD PTR -48[rbp+rax*4]
	movss	DWORD PTR [rdx], xmm0
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	pxor	xmm0, xmm0
	movss	DWORD PTR -40[rbp+rax*4], xmm0
	add	DWORD PTR -84[rbp], 1
.L355:
	mov	eax, DWORD PTR -84[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L356
	add	DWORD PTR -80[rbp], 1
.L324:
	cmp	DWORD PTR -80[rbp], 99
	jle	.L357
	jmp	.L314
.L364:
	nop
.L314:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L358
	call	__stack_chk_fail@PLT
.L358:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	jacobi, .-jacobi
	.globl	rotate
	.type	rotate, @function
rotate:
.LFB21:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	mov	DWORD PTR -16[rbp], edx
	mov	DWORD PTR -20[rbp], ecx
	mov	DWORD PTR -24[rbp], r8d
	mov	QWORD PTR -32[rbp], r9
	movss	DWORD PTR -36[rbp], xmm0
	movss	DWORD PTR -40[rbp], xmm1
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -8[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mov	rax, QWORD PTR 16[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -8[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mov	rax, QWORD PTR -32[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 16[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR 16[rbp]
	movss	xmm1, DWORD PTR [rax]
	mulss	xmm1, DWORD PTR -40[rbp]
	addss	xmm1, xmm2
	mulss	xmm1, DWORD PTR -36[rbp]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -8[rbp]
	add	rdx, rax
	subss	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	DWORD PTR [rdx+rax*4], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR 16[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm1, DWORD PTR [rax]
	mulss	xmm1, DWORD PTR -40[rbp]
	subss	xmm0, xmm1
	mulss	xmm0, DWORD PTR -36[rbp]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -8[rbp]
	add	rdx, rax
	addss	xmm0, xmm2
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	movss	DWORD PTR [rdx+rax*4], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	rotate, .-rotate
	.globl	calc_mean_and_covariance1
	.type	calc_mean_and_covariance1, @function
calc_mean_and_covariance1:
.LFB22:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 368
	mov	QWORD PTR -296[rbp], rdi
	mov	QWORD PTR -304[rbp], rsi
	mov	QWORD PTR -312[rbp], rdx
	movss	DWORD PTR -316[rbp], xmm0
	movss	DWORD PTR -320[rbp], xmm1
	movss	DWORD PTR -324[rbp], xmm2
	movss	DWORD PTR -328[rbp], xmm3
	mov	QWORD PTR -336[rbp], rcx
	mov	QWORD PTR -344[rbp], r8
	mov	QWORD PTR -352[rbp], r9
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -360[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -360[rbp]
	mov	DWORD PTR [rax], 69
	movss	xmm0, DWORD PTR .LC190[rip]
	movss	DWORD PTR -264[rbp], xmm0
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -268[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -272[rbp], xmm0
	mov	eax, DWORD PTR 24[rbp]
	add	eax, eax
	add	eax, 1
	mov	DWORD PTR -252[rbp], eax
	mov	DWORD PTR -288[rbp], 0
	jmp	.L367
.L374:
	mov	DWORD PTR -284[rbp], 0
	jmp	.L368
.L373:
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	movss	xmm1, DWORD PTR -272[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -272[rbp], xmm0
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	comiss	xmm0, DWORD PTR -264[rbp]
	jbe	.L369
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	movss	DWORD PTR -264[rbp], xmm0
	mov	eax, DWORD PTR -284[rbp]
	mov	DWORD PTR -280[rbp], eax
	mov	eax, DWORD PTR -288[rbp]
	mov	DWORD PTR -276[rbp], eax
.L369:
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm1, DWORD PTR [rdx+rax*4]
	movss	xmm0, DWORD PTR -268[rbp]
	comiss	xmm0, xmm1
	jbe	.L371
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	movss	DWORD PTR -268[rbp], xmm0
	mov	eax, DWORD PTR -284[rbp]
	mov	DWORD PTR -240[rbp], eax
	mov	eax, DWORD PTR -288[rbp]
	mov	DWORD PTR -236[rbp], eax
.L371:
	add	DWORD PTR -284[rbp], 1
.L368:
	mov	eax, DWORD PTR -284[rbp]
	cmp	eax, DWORD PTR -252[rbp]
	jl	.L373
	add	DWORD PTR -288[rbp], 1
.L367:
	mov	eax, DWORD PTR -288[rbp]
	cmp	eax, DWORD PTR -252[rbp]
	jl	.L374
	movss	xmm0, DWORD PTR -320[rbp]
	subss	xmm0, DWORD PTR -316[rbp]
	cvtss2sd	xmm0, xmm0
	mov	eax, DWORD PTR -252[rbp]
	sub	eax, 1
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -232[rbp], xmm0
	movss	xmm0, DWORD PTR -328[rbp]
	subss	xmm0, DWORD PTR -324[rbp]
	cvtss2sd	xmm0, xmm0
	mov	eax, DWORD PTR -252[rbp]
	sub	eax, 1
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -228[rbp], xmm0
	movss	xmm0, DWORD PTR -316[rbp]
	movss	DWORD PTR -224[rbp], xmm0
	movss	xmm0, DWORD PTR -324[rbp]
	movss	DWORD PTR -220[rbp], xmm0
	movss	xmm1, DWORD PTR -224[rbp]
	movss	xmm2, DWORD PTR -232[rbp]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -280[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -216[rbp], xmm0
	movss	xmm1, DWORD PTR -220[rbp]
	movss	xmm2, DWORD PTR -228[rbp]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -276[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -212[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -256[rbp], xmm0
	movss	xmm0, DWORD PTR -256[rbp]
	movss	DWORD PTR -260[rbp], xmm0
	mov	DWORD PTR -288[rbp], 0
	jmp	.L375
.L378:
	mov	DWORD PTR -284[rbp], 0
	jmp	.L376
.L377:
	movss	xmm1, DWORD PTR -220[rbp]
	movss	xmm2, DWORD PTR -228[rbp]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -288[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -248[rbp], xmm0
	movss	xmm1, DWORD PTR -224[rbp]
	movss	xmm2, DWORD PTR -228[rbp]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -284[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -244[rbp], xmm0
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, DWORD PTR -248[rbp]
	movss	xmm1, DWORD PTR -256[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -256[rbp], xmm0
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, DWORD PTR -244[rbp]
	movss	xmm1, DWORD PTR -260[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -260[rbp], xmm0
	add	DWORD PTR -284[rbp], 1
.L376:
	mov	eax, DWORD PTR -284[rbp]
	cmp	eax, DWORD PTR -252[rbp]
	jl	.L377
	add	DWORD PTR -288[rbp], 1
.L375:
	mov	eax, DWORD PTR -288[rbp]
	cmp	eax, DWORD PTR -252[rbp]
	jl	.L378
	movss	xmm0, DWORD PTR -260[rbp]
	divss	xmm0, DWORD PTR -272[rbp]
	movss	DWORD PTR -260[rbp], xmm0
	movss	xmm0, DWORD PTR -256[rbp]
	divss	xmm0, DWORD PTR -272[rbp]
	movss	DWORD PTR -256[rbp], xmm0
	mov	rax, QWORD PTR -304[rbp]
	movss	xmm0, DWORD PTR -260[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -304[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR -256[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	DWORD PTR -288[rbp], 0
	jmp	.L379
.L382:
	mov	DWORD PTR -284[rbp], 0
	jmp	.L380
.L381:
	mov	eax, DWORD PTR -288[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -312[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -284[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movss	DWORD PTR [rax+rdx*4], xmm0
	mov	edx, DWORD PTR -284[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR [rax+rdx*4]
	mov	eax, DWORD PTR -284[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -288[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -208[rbp+rax*4], xmm0
	add	DWORD PTR -284[rbp], 1
.L380:
	cmp	DWORD PTR -284[rbp], 1
	jle	.L381
	add	DWORD PTR -288[rbp], 1
.L379:
	cmp	DWORD PTR -288[rbp], 1
	jle	.L382
	mov	DWORD PTR -288[rbp], 0
	jmp	.L383
.L386:
	mov	DWORD PTR -284[rbp], 0
	jmp	.L384
.L385:
	movss	xmm1, DWORD PTR -220[rbp]
	movss	xmm2, DWORD PTR -228[rbp]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -288[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -248[rbp], xmm0
	movss	xmm1, DWORD PTR -224[rbp]
	movss	xmm2, DWORD PTR -232[rbp]
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, DWORD PTR -284[rbp]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	DWORD PTR -244[rbp], xmm0
	mov	rax, QWORD PTR -312[rbp]
	movss	xmm1, DWORD PTR [rax]
	movss	xmm0, DWORD PTR -248[rbp]
	movaps	xmm2, xmm0
	subss	xmm2, DWORD PTR -256[rbp]
	movss	xmm0, DWORD PTR -248[rbp]
	subss	xmm0, DWORD PTR -256[rbp]
	mulss	xmm2, xmm0
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -312[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -312[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -208[rbp], xmm0
	mov	rax, QWORD PTR -312[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR 4[rax]
	movss	xmm0, DWORD PTR -244[rbp]
	movaps	xmm2, xmm0
	subss	xmm2, DWORD PTR -260[rbp]
	movss	xmm0, DWORD PTR -244[rbp]
	subss	xmm0, DWORD PTR -260[rbp]
	mulss	xmm2, xmm0
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, xmm2
	mov	rax, QWORD PTR -312[rbp]
	add	rax, 8
	addss	xmm0, xmm1
	movss	DWORD PTR 4[rax], xmm0
	movss	xmm0, DWORD PTR 4[rax]
	movss	DWORD PTR -196[rbp], xmm0
	mov	rax, QWORD PTR -312[rbp]
	movss	xmm1, DWORD PTR 4[rax]
	movss	xmm0, DWORD PTR -248[rbp]
	movaps	xmm2, xmm0
	subss	xmm2, DWORD PTR -256[rbp]
	movss	xmm0, DWORD PTR -244[rbp]
	subss	xmm0, DWORD PTR -260[rbp]
	mulss	xmm2, xmm0
	mov	eax, DWORD PTR -288[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -296[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -312[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -312[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	movss	DWORD PTR -204[rbp], xmm0
	add	DWORD PTR -284[rbp], 1
.L384:
	mov	eax, DWORD PTR -284[rbp]
	cmp	eax, DWORD PTR -252[rbp]
	jl	.L385
	add	DWORD PTR -288[rbp], 1
.L383:
	mov	eax, DWORD PTR -288[rbp]
	cmp	eax, DWORD PTR -252[rbp]
	jl	.L386
	mov	rax, QWORD PTR -312[rbp]
	add	rax, 8
	mov	rdx, QWORD PTR -312[rbp]
	movss	xmm0, DWORD PTR 4[rdx]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -200[rbp], xmm0
	mov	DWORD PTR -288[rbp], 0
	jmp	.L387
.L390:
	mov	DWORD PTR -284[rbp], 0
	jmp	.L388
.L389:
	mov	eax, DWORD PTR -288[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -312[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -284[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mov	eax, DWORD PTR -288[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -312[rbp]
	add	rax, rdx
	divss	xmm0, DWORD PTR -272[rbp]
	mov	edx, DWORD PTR -284[rbp]
	movsx	rdx, edx
	movss	DWORD PTR [rax+rdx*4], xmm0
	mov	edx, DWORD PTR -284[rbp]
	movsx	rdx, edx
	movss	xmm0, DWORD PTR [rax+rdx*4]
	mov	eax, DWORD PTR -284[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -288[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -208[rbp+rax*4], xmm0
	add	DWORD PTR -284[rbp], 1
.L388:
	cmp	DWORD PTR -284[rbp], 1
	jle	.L389
	add	DWORD PTR -288[rbp], 1
.L387:
	cmp	DWORD PTR -288[rbp], 1
	jle	.L390
	mov	rcx, QWORD PTR -352[rbp]
	mov	rdx, QWORD PTR -344[rbp]
	mov	rsi, QWORD PTR -336[rbp]
	lea	rax, -208[rbp]
	mov	rdi, rax
	call	comp_eigen
	mov	rax, QWORD PTR -360[rbp]
	mov	DWORD PTR [rax], 69
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L391
	call	__stack_chk_fail@PLT
.L391:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	calc_mean_and_covariance1, .-calc_mean_and_covariance1
	.section	.rodata
	.align 8
.LC191:
	.string	"\n********************************************"
	.align 8
.LC192:
	.string	"Fatal error: eigenvalue/eigenvector error"
.LC193:
	.string	"eigenvalues: %f %f\n"
.LC194:
	.string	"eigenvector1: %f %f\n"
.LC195:
	.string	"eigenvector2: %f %f\n"
	.align 8
.LC196:
	.string	"Eigenvalues/eigenvectors are swapped from original order"
.LC197:
	.string	"\n      A:"
.LC198:
	.string	"%12.6f %12.6f\n"
.LC199:
	.string	"Determinant of A: %f\n"
.LC200:
	.string	"nrot: %d\n"
	.align 8
.LC201:
	.string	"Angle between two eigenvectors: %f degrees\n"
	.align 8
.LC202:
	.string	"Difference length for eigenvector1"
.LC203:
	.string	"Difference: %f %f Length: %f\n"
	.align 8
.LC204:
	.string	"Difference length for eigenvector2"
.LC205:
	.string	"\nUsing Anandan's calculation:"
	.align 8
.LC207:
	.string	"Angle of rotation: %f degrees\n"
	.align 8
.LC208:
	.string	"Original eigenvalues set to infinity"
	.align 8
.LC209:
	.string	"********************************************\n"
	.text
	.globl	comp_eigen
	.type	comp_eigen, @function
comp_eigen:
.LFB23:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 144
	mov	QWORD PTR -104[rbp], rdi
	mov	QWORD PTR -112[rbp], rsi
	mov	QWORD PTR -120[rbp], rdx
	mov	QWORD PTR -128[rbp], rcx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -80[rbp], 0
	lea	rsi, -84[rbp]
	lea	rcx, -48[rbp]
	mov	rdx, QWORD PTR -112[rbp]
	mov	rax, QWORD PTR -104[rbp]
	mov	r8, rsi
	mov	esi, 2
	mov	rdi, rax
	mov	eax, 0
	call	jacobi
	mov	rax, QWORD PTR -112[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 4
	movss	xmm1, DWORD PTR [rax]
	movss	xmm2, DWORD PTR .LC161[rip]
	andps	xmm1, xmm2
	comiss	xmm0, xmm1
	jbe	.L402
	movss	xmm0, DWORD PTR -48[rbp]
	mov	rax, QWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -120[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR -40[rbp]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	mov	rax, QWORD PTR -128[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -128[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR -36[rbp]
	movss	DWORD PTR [rax], xmm0
	jmp	.L397
.L402:
	mov	rax, QWORD PTR -112[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -76[rbp], xmm0
	mov	rax, QWORD PTR -112[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -112[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR -76[rbp]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR -48[rbp]
	mov	rax, QWORD PTR -128[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -128[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR -40[rbp]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	mov	rax, QWORD PTR -120[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -120[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR -36[rbp]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR -48[rbp]
	movss	DWORD PTR -76[rbp], xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	movss	DWORD PTR -48[rbp], xmm0
	movss	xmm0, DWORD PTR -76[rbp]
	movss	DWORD PTR -44[rbp], xmm0
	movss	xmm0, DWORD PTR -40[rbp]
	movss	DWORD PTR -76[rbp], xmm0
	movss	xmm0, DWORD PTR -36[rbp]
	movss	DWORD PTR -40[rbp], xmm0
	movss	xmm0, DWORD PTR -76[rbp]
	movss	DWORD PTR -36[rbp], xmm0
	mov	DWORD PTR -80[rbp], 1
.L397:
	mov	ecx, DWORD PTR -84[rbp]
	lea	r9, -64[rbp]
	lea	r8, -72[rbp]
	lea	rdx, -48[rbp]
	mov	rsi, QWORD PTR -112[rbp]
	mov	rax, QWORD PTR -104[rbp]
	sub	rsp, 8
	lea	rdi, -88[rbp]
	push	rdi
	lea	rdi, -92[rbp]
	push	rdi
	lea	rdi, -96[rbp]
	push	rdi
	mov	rdi, rax
	mov	eax, 0
	call	check_eigen_calc
	add	rsp, 32
	test	eax, eax
	jne	.L403
	lea	rdi, .LC191[rip]
	call	puts@PLT
	lea	rdi, .LC192[rip]
	call	puts@PLT
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -112[rbp]
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm1
	movq	rax, xmm7
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC193[rip]
	mov	eax, 2
	call	printf@PLT
	movss	xmm0, DWORD PTR -40[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -48[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm1
	movq	rax, xmm3
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC194[rip]
	mov	eax, 2
	call	printf@PLT
	movss	xmm0, DWORD PTR -36[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -44[rbp]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm1
	movq	rax, xmm5
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC195[rip]
	mov	eax, 2
	call	printf@PLT
	cmp	DWORD PTR -80[rbp], 0
	je	.L399
	lea	rdi, .LC196[rip]
	call	puts@PLT
.L399:
	lea	rdi, .LC197[rip]
	call	puts@PLT
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm1
	movq	rax, xmm7
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC198[rip]
	mov	eax, 2
	call	printf@PLT
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR [rax]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm1
	movq	rax, xmm4
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC198[rip]
	mov	eax, 2
	call	printf@PLT
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm0, xmm1
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm2, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR [rax]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm0
	movq	rax, xmm6
	movq	xmm0, rax
	lea	rdi, .LC199[rip]
	mov	eax, 1
	call	printf@PLT
	mov	eax, DWORD PTR -84[rbp]
	mov	esi, eax
	lea	rdi, .LC200[rip]
	mov	eax, 0
	call	printf@PLT
	movss	xmm0, DWORD PTR -88[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movq	rax, xmm3
	movq	xmm0, rax
	lea	rdi, .LC201[rip]
	mov	eax, 1
	call	printf@PLT
	lea	rdi, .LC202[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -96[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -68[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -72[rbp]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm2
	movq	rax, xmm5
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC203[rip]
	mov	eax, 3
	call	printf@PLT
	lea	rdi, .LC204[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -92[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -60[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -64[rbp]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm2
	movq	rax, xmm7
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC203[rip]
	mov	eax, 3
	call	printf@PLT
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	addss	xmm0, xmm1
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movsd	QWORD PTR -136[rbp], xmm3
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR 4[rax]
	subss	xmm0, xmm2
	movaps	xmm1, xmm0
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR 4[rax]
	subss	xmm0, xmm2
	mulss	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movsd	xmm0, QWORD PTR .LC140[rip]
	mulsd	xmm2, xmm0
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mulsd	xmm0, xmm2
	movapd	xmm4, xmm1
	addsd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	call	sqrt@PLT
	movsd	xmm1, QWORD PTR -136[rbp]
	subsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC189[rip]
	mulsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -56[rbp], xmm0
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	addss	xmm0, xmm1
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movsd	QWORD PTR -136[rbp], xmm5
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR 4[rax]
	subss	xmm0, xmm2
	movaps	xmm1, xmm0
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR 4[rax]
	subss	xmm0, xmm2
	mulss	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movsd	xmm0, QWORD PTR .LC140[rip]
	mulsd	xmm2, xmm0
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	mulsd	xmm0, xmm2
	movapd	xmm6, xmm1
	addsd	xmm6, xmm0
	movq	rax, xmm6
	movq	xmm0, rax
	call	sqrt@PLT
	movsd	xmm1, QWORD PTR -136[rbp]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC189[rip]
	mulsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -52[rbp], xmm0
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movss	xmm0, DWORD PTR -56[rbp]
	mov	rax, QWORD PTR -104[rbp]
	movss	xmm1, DWORD PTR [rax]
	subss	xmm0, xmm1
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movq	rax, xmm4
	movapd	xmm1, xmm2
	movq	xmm0, rax
	call	atan2@PLT
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -88[rbp], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm0
	movq	rax, xmm6
	movq	xmm0, rax
	call	cos@PLT
	cvtsd2ss	xmm0, xmm0
	movss	xmm1, DWORD PTR .LC141[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -32[rbp], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movq	rax, xmm3
	movq	xmm0, rax
	call	sin@PLT
	cvtsd2ss	xmm0, xmm0
	movss	xmm1, DWORD PTR .LC141[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -24[rbp], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	call	sin@PLT
	cvtsd2ss	xmm0, xmm0
	movss	xmm1, DWORD PTR .LC141[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -28[rbp], xmm0
	movss	xmm0, DWORD PTR -88[rbp]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm0
	movq	rax, xmm7
	movq	xmm0, rax
	call	cos@PLT
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -20[rbp], xmm0
	lea	rdi, .LC205[rip]
	call	puts@PLT
	movss	xmm1, DWORD PTR -88[rbp]
	movss	xmm0, DWORD PTR .LC176[rip]
	mulss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR .LC206[rip]
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	lea	rdi, .LC207[rip]
	mov	eax, 1
	call	printf@PLT
	movss	xmm0, DWORD PTR -52[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -56[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm1
	movq	rax, xmm4
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC193[rip]
	mov	eax, 2
	call	printf@PLT
	movss	xmm0, DWORD PTR -24[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -32[rbp]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm1
	movq	rax, xmm6
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC194[rip]
	mov	eax, 2
	call	printf@PLT
	movss	xmm0, DWORD PTR -20[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -28[rbp]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm1
	movq	rax, xmm3
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC195[rip]
	mov	eax, 2
	call	printf@PLT
	mov	ecx, DWORD PTR -84[rbp]
	lea	r9, -64[rbp]
	lea	r8, -72[rbp]
	lea	rdx, -32[rbp]
	lea	rsi, -56[rbp]
	mov	rax, QWORD PTR -104[rbp]
	sub	rsp, 8
	lea	rdi, -88[rbp]
	push	rdi
	lea	rdi, -92[rbp]
	push	rdi
	lea	rdi, -96[rbp]
	push	rdi
	mov	rdi, rax
	mov	eax, 0
	call	check_eigen_calc
	add	rsp, 32
	movss	xmm0, DWORD PTR -88[rbp]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC201[rip]
	mov	eax, 1
	call	printf@PLT
	lea	rdi, .LC202[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -96[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -68[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -72[rbp]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm2
	movq	rax, xmm7
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC203[rip]
	mov	eax, 3
	call	printf@PLT
	lea	rdi, .LC204[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR -92[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movss	xmm0, DWORD PTR -60[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm2, DWORD PTR -64[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm2
	movq	rax, xmm4
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC203[rip]
	mov	eax, 3
	call	printf@PLT
	lea	rdi, .LC208[rip]
	call	puts@PLT
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -112[rbp]
	movss	DWORD PTR [rax], xmm0
	lea	rdi, .LC209[rip]
	call	puts@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
.L403:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L400
	call	__stack_chk_fail@PLT
.L400:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	comp_eigen, .-comp_eigen
	.globl	check_eigen_calc
	.type	check_eigen_calc, @function
check_eigen_calc:
.LFB24:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	DWORD PTR -44[rbp], ecx
	mov	QWORD PTR -56[rbp], r8
	mov	QWORD PTR -64[rbp], r9
	mov	DWORD PTR -4[rbp], 1
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movsd	QWORD PTR -72[rbp], xmm3
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	call	sqrt@PLT
	movsd	QWORD PTR -80[rbp], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm1, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	call	sqrt@PLT
	mulsd	xmm0, QWORD PTR -80[rbp]
	movsd	xmm3, QWORD PTR -72[rbp]
	divsd	xmm3, xmm0
	movq	rax, xmm3
	movq	xmm0, rax
	call	acos@PLT
	movsd	xmm1, QWORD PTR .LC210[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC206[rip]
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	mov	rax, QWORD PTR 32[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 32[rbp]
	movss	xmm1, DWORD PTR [rax]
	movss	xmm0, DWORD PTR .LC211[rip]
	comiss	xmm0, xmm1
	jbe	.L405
	mov	rax, QWORD PTR 32[rbp]
	movss	xmm0, DWORD PTR [rax]
	comiss	xmm0, DWORD PTR .LC212[rip]
	jbe	.L405
	mov	DWORD PTR -4[rbp], 0
.L405:
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm2, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	addss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm1, DWORD PTR [rax]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR [rax]
	mulss	xmm1, xmm2
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	subss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm0
	movq	rax, xmm7
	movq	xmm0, rax
	call	sqrt@PLT
	cvtsd2ss	xmm0, xmm0
	mov	rax, QWORD PTR 16[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 16[rbp]
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR .LC38[rip]
	jbe	.L408
	mov	DWORD PTR -4[rbp], 0
.L408:
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm2, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -64[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm0, xmm2
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 4
	addss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 4
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm1, DWORD PTR 4[rax]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	mov	rax, QWORD PTR -64[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 4
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR 4[rax]
	mulss	xmm1, xmm2
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 4
	subss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 4
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	call	sqrt@PLT
	cvtsd2ss	xmm0, xmm0
	mov	rax, QWORD PTR 24[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR 24[rbp]
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR .LC38[rip]
	jbe	.L410
	mov	DWORD PTR -4[rbp], 0
.L410:
	cmp	DWORD PTR -44[rbp], 50
	jle	.L412
	mov	DWORD PTR -4[rbp], 0
.L412:
	mov	eax, DWORD PTR -4[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE24:
	.size	check_eigen_calc, .-check_eigen_calc
	.globl	compute_SSD_surface
	.type	compute_SSD_surface, @function
compute_SSD_surface:
.LFB25:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 3648
	mov	QWORD PTR -3608[rbp], rdi
	mov	DWORD PTR -3612[rbp], esi
	mov	DWORD PTR -3616[rbp], edx
	mov	DWORD PTR -3620[rbp], ecx
	mov	DWORD PTR -3624[rbp], r8d
	mov	QWORD PTR -3632[rbp], r9
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -3640[rbp], rax
	mov	rax, QWORD PTR 24[rbp]
	mov	QWORD PTR -3648[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	movss	xmm0, DWORD PTR .LC213[rip]
	movss	DWORD PTR -3536[rbp], xmm0
	mov	eax, DWORD PTR -3624[rbp]
	add	eax, eax
	mov	DWORD PTR -3532[rbp], eax
	mov	eax, DWORD PTR -3532[rbp]
	neg	eax
	mov	DWORD PTR -3600[rbp], eax
	jmp	.L419
.L426:
	mov	eax, DWORD PTR -3532[rbp]
	neg	eax
	mov	DWORD PTR -3596[rbp], eax
	jmp	.L420
.L425:
	mov	edx, DWORD PTR -3600[rbp]
	mov	eax, DWORD PTR -3532[rbp]
	add	eax, edx
	mov	DWORD PTR -3520[rbp], eax
	mov	edx, DWORD PTR -3596[rbp]
	mov	eax, DWORD PTR -3532[rbp]
	add	eax, edx
	mov	DWORD PTR -3516[rbp], eax
	pxor	xmm0, xmm0
	movss	DWORD PTR -3572[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -3568[rbp], xmm0
	mov	eax, DWORD PTR -3620[rbp]
	neg	eax
	mov	DWORD PTR -3592[rbp], eax
	jmp	.L421
.L424:
	mov	eax, DWORD PTR -3620[rbp]
	neg	eax
	mov	DWORD PTR -3588[rbp], eax
	jmp	.L422
.L423:
	mov	rax, QWORD PTR -3608[rbp]
	lea	rcx, 422500[rax]
	mov	edx, DWORD PTR -3612[rbp]
	mov	eax, DWORD PTR -3592[rbp]
	add	eax, edx
	mov	esi, DWORD PTR -3616[rbp]
	mov	edx, DWORD PTR -3588[rbp]
	add	edx, esi
	movsx	rsi, edx
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	xmm0, DWORD PTR [rcx+rax*4]
	mov	rax, QWORD PTR -3608[rbp]
	lea	rcx, 845000[rax]
	mov	edx, DWORD PTR -3612[rbp]
	mov	eax, DWORD PTR -3592[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -3600[rbp]
	add	eax, edx
	mov	esi, DWORD PTR -3616[rbp]
	mov	edx, DWORD PTR -3588[rbp]
	add	esi, edx
	mov	edx, DWORD PTR -3596[rbp]
	add	edx, esi
	movsx	rsi, edx
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	xmm1, DWORD PTR [rcx+rax*4]
	subss	xmm0, xmm1
	movss	DWORD PTR -3512[rbp], xmm0
	mov	rax, QWORD PTR -3608[rbp]
	lea	rcx, 422500[rax]
	mov	edx, DWORD PTR -3612[rbp]
	mov	eax, DWORD PTR -3592[rbp]
	add	eax, edx
	mov	esi, DWORD PTR -3616[rbp]
	mov	edx, DWORD PTR -3588[rbp]
	add	edx, esi
	movsx	rsi, edx
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	xmm0, DWORD PTR [rcx+rax*4]
	mov	edx, DWORD PTR -3612[rbp]
	mov	eax, DWORD PTR -3592[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -3600[rbp]
	add	eax, edx
	mov	ecx, DWORD PTR -3616[rbp]
	mov	edx, DWORD PTR -3588[rbp]
	add	ecx, edx
	mov	edx, DWORD PTR -3596[rbp]
	add	ecx, edx
	mov	rdx, QWORD PTR -3608[rbp]
	movsx	rsi, ecx
	movsx	rcx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	mov	rcx, rax
	sal	rcx, 6
	add	rax, rcx
	add	rax, rsi
	movss	xmm1, DWORD PTR [rdx+rax*4]
	subss	xmm0, xmm1
	movss	DWORD PTR -3508[rbp], xmm0
	movss	xmm0, DWORD PTR -3512[rbp]
	mulss	xmm0, xmm0
	movss	xmm1, DWORD PTR -3572[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -3572[rbp], xmm0
	movss	xmm0, DWORD PTR -3508[rbp]
	mulss	xmm0, xmm0
	movss	xmm1, DWORD PTR -3568[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -3568[rbp], xmm0
	add	DWORD PTR -3588[rbp], 1
.L422:
	mov	eax, DWORD PTR -3588[rbp]
	cmp	eax, DWORD PTR -3620[rbp]
	jle	.L423
	add	DWORD PTR -3592[rbp], 1
.L421:
	mov	eax, DWORD PTR -3592[rbp]
	cmp	eax, DWORD PTR -3620[rbp]
	jle	.L424
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -3572[rbp]
	movss	DWORD PTR -2336[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -3532[rbp]
	add	eax, eax
	sub	eax, DWORD PTR -3520[rbp]
	mov	edx, DWORD PTR -3532[rbp]
	add	edx, edx
	sub	edx, DWORD PTR -3516[rbp]
	movsx	rcx, edx
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -3568[rbp]
	movss	DWORD PTR -1168[rbp+rax*4], xmm0
	add	DWORD PTR -3596[rbp], 1
.L420:
	mov	eax, DWORD PTR -3596[rbp]
	cmp	eax, DWORD PTR -3532[rbp]
	jle	.L425
	add	DWORD PTR -3600[rbp], 1
.L419:
	mov	eax, DWORD PTR -3600[rbp]
	cmp	eax, DWORD PTR -3532[rbp]
	jle	.L426
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -3564[rbp], xmm0
	movss	xmm0, DWORD PTR .LC190[rip]
	movss	DWORD PTR -3560[rbp], xmm0
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -3548[rbp], xmm0
	movss	xmm0, DWORD PTR .LC190[rip]
	movss	DWORD PTR -3544[rbp], xmm0
	mov	DWORD PTR -3580[rbp], 0
	mov	eax, DWORD PTR -3580[rbp]
	mov	DWORD PTR -3584[rbp], eax
	pxor	xmm0, xmm0
	movss	DWORD PTR -3540[rbp], xmm0
	mov	eax, DWORD PTR -3532[rbp]
	neg	eax
	mov	DWORD PTR -3600[rbp], eax
	jmp	.L427
.L441:
	mov	eax, DWORD PTR -3532[rbp]
	neg	eax
	mov	DWORD PTR -3596[rbp], eax
	jmp	.L428
.L440:
	mov	edx, DWORD PTR -3600[rbp]
	mov	eax, DWORD PTR -3532[rbp]
	add	eax, edx
	mov	DWORD PTR -3520[rbp], eax
	mov	edx, DWORD PTR -3596[rbp]
	mov	eax, DWORD PTR -3532[rbp]
	add	eax, edx
	mov	DWORD PTR -3516[rbp], eax
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm1, DWORD PTR -2336[rbp+rax*4]
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -1168[rbp+rax*4]
	addss	xmm0, xmm1
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	DWORD PTR -3504[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -3624[rbp]
	neg	eax
	cmp	DWORD PTR -3600[rbp], eax
	jl	.L429
	mov	eax, DWORD PTR -3600[rbp]
	cmp	eax, DWORD PTR -3624[rbp]
	jg	.L429
	mov	eax, DWORD PTR -3624[rbp]
	neg	eax
	cmp	DWORD PTR -3596[rbp], eax
	jl	.L429
	mov	eax, DWORD PTR -3596[rbp]
	cmp	eax, DWORD PTR -3624[rbp]
	jg	.L429
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -3504[rbp+rax*4]
	subss	xmm0, DWORD PTR -3564[rbp]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC38[rip]
	comisd	xmm0, xmm1
	jb	.L430
	mov	eax, DWORD PTR -3600[rbp]
	imul	eax, eax
	mov	edx, eax
	mov	eax, DWORD PTR -3596[rbp]
	imul	eax, eax
	add	eax, edx
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, eax
	movss	xmm0, DWORD PTR -3540[rbp]
	comiss	xmm0, xmm1
	ja	.L432
.L430:
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm1, DWORD PTR -3504[rbp+rax*4]
	movss	xmm0, DWORD PTR -3564[rbp]
	subss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR .LC38[rip]
	jbe	.L433
.L432:
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -3504[rbp+rax*4]
	movss	DWORD PTR -3564[rbp], xmm0
	mov	eax, DWORD PTR -3600[rbp]
	mov	DWORD PTR -3584[rbp], eax
	mov	eax, DWORD PTR -3596[rbp]
	mov	DWORD PTR -3580[rbp], eax
	mov	eax, DWORD PTR -3600[rbp]
	imul	eax, eax
	mov	edx, eax
	mov	eax, DWORD PTR -3596[rbp]
	imul	eax, eax
	add	eax, edx
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -3540[rbp], xmm0
.L433:
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -3504[rbp+rax*4]
	comiss	xmm0, DWORD PTR -3560[rbp]
	jbe	.L429
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -3504[rbp+rax*4]
	movss	DWORD PTR -3560[rbp], xmm0
.L429:
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -3504[rbp+rax*4]
	comiss	xmm0, DWORD PTR -3544[rbp]
	jbe	.L436
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -3504[rbp+rax*4]
	movss	DWORD PTR -3544[rbp], xmm0
.L436:
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm1, DWORD PTR -3504[rbp+rax*4]
	movss	xmm0, DWORD PTR -3548[rbp]
	comiss	xmm0, xmm1
	jbe	.L438
	mov	eax, DWORD PTR -3516[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -3504[rbp+rax*4]
	movss	DWORD PTR -3548[rbp], xmm0
.L438:
	add	DWORD PTR -3596[rbp], 1
.L428:
	mov	eax, DWORD PTR -3596[rbp]
	cmp	eax, DWORD PTR -3532[rbp]
	jle	.L440
	add	DWORD PTR -3600[rbp], 1
.L427:
	mov	eax, DWORD PTR -3600[rbp]
	cmp	eax, DWORD PTR -3532[rbp]
	jle	.L441
	mov	rax, QWORD PTR -3640[rbp]
	mov	edx, DWORD PTR -3584[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -3648[rbp]
	mov	edx, DWORD PTR -3580[rbp]
	mov	DWORD PTR [rax], edx
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -3564[rbp], xmm0
	mov	DWORD PTR -3528[rbp], 0
	mov	eax, DWORD PTR -3528[rbp]
	mov	DWORD PTR -3524[rbp], eax
	mov	eax, DWORD PTR -3624[rbp]
	neg	eax
	mov	DWORD PTR -3600[rbp], eax
	jmp	.L442
.L448:
	mov	eax, DWORD PTR -3624[rbp]
	neg	eax
	mov	DWORD PTR -3596[rbp], eax
	jmp	.L443
.L447:
	mov	edx, DWORD PTR -3600[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	add	eax, edx
	mov	DWORD PTR -3520[rbp], eax
	mov	edx, DWORD PTR -3596[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	add	eax, edx
	mov	DWORD PTR -3516[rbp], eax
	mov	edx, DWORD PTR -3520[rbp]
	mov	eax, DWORD PTR -3584[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -3624[rbp]
	lea	esi, [rdx+rax]
	mov	edx, DWORD PTR -3516[rbp]
	mov	eax, DWORD PTR -3580[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -3624[rbp]
	lea	edi, [rdx+rax]
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	lea	rcx, [rdx+rax]
	movsx	rdi, edi
	movsx	rdx, esi
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rdi
	movss	xmm0, DWORD PTR -3504[rbp+rax*4]
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	DWORD PTR [rcx+rax*4], xmm0
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	xmm1, DWORD PTR [rdx+rax*4]
	movss	xmm0, DWORD PTR -3564[rbp]
	comiss	xmm0, xmm1
	jbe	.L444
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L466
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	je	.L444
.L466:
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	movss	DWORD PTR -3564[rbp], xmm0
	mov	eax, DWORD PTR -3520[rbp]
	mov	DWORD PTR -3524[rbp], eax
	mov	eax, DWORD PTR -3516[rbp]
	mov	DWORD PTR -3528[rbp], eax
.L444:
	add	DWORD PTR -3596[rbp], 1
.L443:
	mov	eax, DWORD PTR -3596[rbp]
	cmp	eax, DWORD PTR -3624[rbp]
	jle	.L447
	add	DWORD PTR -3600[rbp], 1
.L442:
	mov	eax, DWORD PTR -3600[rbp]
	cmp	eax, DWORD PTR -3624[rbp]
	jle	.L448
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -3564[rbp]
	movsd	xmm0, QWORD PTR .LC214[rip]
	comisd	xmm0, xmm1
	jbe	.L470
	movss	xmm0, DWORD PTR .LC215[rip]
	movss	DWORD PTR -3576[rbp], xmm0
	jmp	.L451
.L470:
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, DWORD PTR -3536[rbp]
	movq	rax, xmm3
	movq	xmm0, rax
	call	log@PLT
	movq	rax, xmm0
	movq	xmm0, QWORD PTR .LC216[rip]
	movq	xmm2, rax
	xorpd	xmm2, xmm0
	movapd	xmm0, xmm2
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -3564[rbp]
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -3576[rbp], xmm0
.L451:
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -3552[rbp], xmm0
	movss	xmm0, DWORD PTR .LC190[rip]
	movss	DWORD PTR -3556[rbp], xmm0
	mov	eax, DWORD PTR -3624[rbp]
	neg	eax
	mov	DWORD PTR -3600[rbp], eax
	jmp	.L452
.L459:
	mov	eax, DWORD PTR -3624[rbp]
	neg	eax
	mov	DWORD PTR -3596[rbp], eax
	jmp	.L453
.L458:
	mov	edx, DWORD PTR -3600[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	add	eax, edx
	mov	DWORD PTR -3520[rbp], eax
	mov	edx, DWORD PTR -3596[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	add	eax, edx
	mov	DWORD PTR -3516[rbp], eax
	movss	xmm0, DWORD PTR -3576[rbp]
	movss	xmm1, DWORD PTR .LC141[rip]
	xorps	xmm1, xmm0
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, xmm1
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	call	exp@PLT
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	add	rdx, rax
	cvtsd2ss	xmm0, xmm0
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	DWORD PTR [rdx+rax*4], xmm0
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	comiss	xmm0, DWORD PTR -3556[rbp]
	jbe	.L454
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	movss	DWORD PTR -3556[rbp], xmm0
.L454:
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	xmm1, DWORD PTR [rdx+rax*4]
	movss	xmm0, DWORD PTR -3552[rbp]
	comiss	xmm0, xmm1
	jbe	.L456
	mov	eax, DWORD PTR -3520[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -3632[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -3516[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	movss	DWORD PTR -3552[rbp], xmm0
.L456:
	add	DWORD PTR -3596[rbp], 1
.L453:
	mov	eax, DWORD PTR -3596[rbp]
	cmp	eax, DWORD PTR -3624[rbp]
	jle	.L458
	add	DWORD PTR -3600[rbp], 1
.L452:
	mov	eax, DWORD PTR -3600[rbp]
	cmp	eax, DWORD PTR -3624[rbp]
	jle	.L459
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L460
	call	__stack_chk_fail@PLT
.L460:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE25:
	.size	compute_SSD_surface, .-compute_SSD_surface
	.globl	calc_mean_and_covariance2
	.type	calc_mean_and_covariance2, @function
calc_mean_and_covariance2:
.LFB26:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -52[rbp], edx
	mov	QWORD PTR -64[rbp], rcx
	mov	QWORD PTR -72[rbp], r8
	pxor	xmm0, xmm0
	movss	DWORD PTR -8[rbp], xmm0
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR -12[rbp], xmm0
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR -4[rbp], xmm0
	mov	DWORD PTR -20[rbp], 0
	jmp	.L472
.L478:
	mov	DWORD PTR -16[rbp], 0
	jmp	.L473
.L477:
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L490
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L474
.L490:
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L491
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L474
.L491:
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	movss	xmm1, DWORD PTR -4[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -4[rbp], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm1, DWORD PTR [rdx+rax*4]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -12[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -12[rbp], xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm1, DWORD PTR [rdx+rax*4]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -8[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -8[rbp], xmm0
.L474:
	add	DWORD PTR -16[rbp], 1
.L473:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L477
	add	DWORD PTR -20[rbp], 1
.L472:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L478
	mov	rax, QWORD PTR -64[rbp]
	movss	xmm0, DWORD PTR -12[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR -8[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	DWORD PTR -20[rbp], 0
	jmp	.L479
.L482:
	mov	DWORD PTR -16[rbp], 0
	jmp	.L480
.L481:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -72[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	pxor	xmm0, xmm0
	movss	DWORD PTR [rdx+rax*4], xmm0
	add	DWORD PTR -16[rbp], 1
.L480:
	cmp	DWORD PTR -16[rbp], 1
	jle	.L481
	add	DWORD PTR -20[rbp], 1
.L479:
	cmp	DWORD PTR -20[rbp], 1
	jle	.L482
	mov	DWORD PTR -20[rbp], 0
	jmp	.L483
.L489:
	mov	DWORD PTR -16[rbp], 0
	jmp	.L484
.L488:
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L492
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L485
.L492:
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L493
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L485
.L493:
	mov	rax, QWORD PTR -72[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	movaps	xmm2, xmm0
	subss	xmm2, DWORD PTR -12[rbp]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	subss	xmm0, DWORD PTR -12[rbp]
	mulss	xmm2, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -72[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR 4[rax]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	movaps	xmm2, xmm0
	subss	xmm2, DWORD PTR -8[rbp]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	subss	xmm0, DWORD PTR -8[rbp]
	mulss	xmm2, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, xmm2
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	addss	xmm0, xmm1
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -72[rbp]
	movss	xmm1, DWORD PTR 4[rax]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	movaps	xmm2, xmm0
	subss	xmm2, DWORD PTR -12[rbp]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	subss	xmm0, DWORD PTR -8[rbp]
	mulss	xmm2, xmm0
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -72[rbp]
	movss	DWORD PTR 4[rax], xmm0
.L485:
	add	DWORD PTR -16[rbp], 1
.L484:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L488
	add	DWORD PTR -20[rbp], 1
.L483:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L489
	mov	rax, QWORD PTR -72[rbp]
	movss	xmm0, DWORD PTR [rax]
	divss	xmm0, DWORD PTR -4[rbp]
	mov	rax, QWORD PTR -72[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -72[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	divss	xmm0, DWORD PTR -4[rbp]
	mov	rax, QWORD PTR -72[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	divss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -72[rbp]
	lea	rdx, 8[rax]
	mov	rax, QWORD PTR -72[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	movss	DWORD PTR [rdx], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE26:
	.size	calc_mean_and_covariance2, .-calc_mean_and_covariance2
	.section	.rodata
	.align 8
.LC218:
	.string	"            M                          MI"
	.align 8
.LC219:
	.string	"%12.8f %12.8f    %12.8f %12.8f\n"
.LC220:
	.string	"Determinant: %f\n"
	.text
	.globl	old_inverse22
	.type	old_inverse22, @function
old_inverse22:
.LFB27:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	mulss	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm1, DWORD PTR 4[rax]
	mulss	xmm1, xmm2
	subss	xmm0, xmm1
	movss	DWORD PTR -4[rbp], xmm0
	movss	xmm0, DWORD PTR -4[rbp]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR .LC217[rip]
	jb	.L499
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	divss	xmm0, DWORD PTR -4[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	movss	xmm1, DWORD PTR .LC141[rip]
	xorps	xmm0, xmm1
	divss	xmm0, DWORD PTR -4[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC141[rip]
	xorps	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	divss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	divss	xmm0, DWORD PTR -4[rbp]
	movss	DWORD PTR 4[rax], xmm0
	lea	rdi, .LC218[rip]
	call	puts@PLT
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm3
	movq	rax, xmm4
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC219[rip]
	mov	eax, 4
	call	printf@PLT
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm3
	movq	rax, xmm5
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC219[rip]
	mov	eax, 4
	call	printf@PLT
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, DWORD PTR -4[rbp]
	movq	rax, xmm6
	movq	xmm0, rax
	lea	rdi, .LC220[rip]
	mov	eax, 1
	call	printf@PLT
	mov	eax, 0
	jmp	.L497
.L499:
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR .LC106[rip]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	pxor	xmm0, xmm0
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	pxor	xmm0, xmm0
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR 4[rax], xmm0
	lea	rdi, .LC218[rip]
	call	puts@PLT
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -24[rbp]
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm3
	movq	rax, xmm7
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC219[rip]
	mov	eax, 4
	call	printf@PLT
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm3
	movq	rax, xmm4
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC219[rip]
	mov	eax, 4
	call	printf@PLT
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, DWORD PTR -4[rbp]
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC220[rip]
	mov	eax, 1
	call	printf@PLT
	mov	eax, 1
.L497:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	old_inverse22, .-old_inverse22
	.globl	add21
	.type	add21, @function
add21:
.LFB28:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	rax, QWORD PTR -8[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movss	xmm0, DWORD PTR [rax]
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 4
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 4
	addss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	add21, .-add21
	.globl	add22
	.type	add22, @function
add22:
.LFB29:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	rax, QWORD PTR -8[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movss	xmm0, DWORD PTR [rax]
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	addss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -8[rbp]
	movss	xmm1, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -16[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movss	DWORD PTR 4[rax], xmm0
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 8
	addss	xmm0, xmm1
	movss	DWORD PTR 4[rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	add22, .-add22
	.globl	mult21
	.type	mult21, @function
mult21:
.LFB30:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	rax, QWORD PTR -8[rbp]
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -8[rbp]
	movss	xmm2, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	mov	rax, QWORD PTR -24[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 8
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 8
	movss	xmm2, DWORD PTR 4[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 4
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm2
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 4
	addss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	mult21, .-mult21
	.section	.rodata
	.align 8
.LC223:
	.string	"Fatal error: sum of Gaussian coefficients is zero"
	.align 8
.LC226:
	.string	"\nFatal error: window size not 1 or 2: w=%d\n"
.LC227:
	.string	"\nWeights:"
.LC228:
	.string	"%8.5f "
	.text
	.globl	compute_weights
	.type	compute_weights, @function
compute_weights:
.LFB31:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	add	rsp, -128
	mov	QWORD PTR -120[rbp], rdi
	mov	DWORD PTR -124[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	eax, DWORD PTR -124[rbp]
	add	eax, eax
	add	eax, 1
	mov	DWORD PTR -100[rbp], eax
	cmp	DWORD PTR -124[rbp], 1
	jne	.L504
	movss	xmm0, DWORD PTR .LC221[rip]
	movss	DWORD PTR -96[rbp], xmm0
	movss	xmm0, DWORD PTR .LC222[rip]
	movss	DWORD PTR -92[rbp], xmm0
	movss	xmm0, DWORD PTR .LC221[rip]
	movss	DWORD PTR -88[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -104[rbp], xmm0
	mov	DWORD PTR -112[rbp], 0
	jmp	.L505
.L508:
	mov	DWORD PTR -108[rbp], 0
	jmp	.L506
.L507:
	mov	eax, DWORD PTR -112[rbp]
	cdqe
	movss	xmm1, DWORD PTR -96[rbp+rax*4]
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	movss	xmm0, DWORD PTR -96[rbp+rax*4]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -120[rbp]
	add	rdx, rax
	mulss	xmm0, xmm1
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	movss	DWORD PTR [rdx+rax*4], xmm0
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -120[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	movss	xmm1, DWORD PTR -104[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -104[rbp], xmm0
	add	DWORD PTR -108[rbp], 1
.L506:
	mov	eax, DWORD PTR -108[rbp]
	cmp	eax, DWORD PTR -100[rbp]
	jl	.L507
	add	DWORD PTR -112[rbp], 1
.L505:
	mov	eax, DWORD PTR -112[rbp]
	cmp	eax, DWORD PTR -100[rbp]
	jl	.L508
	movss	xmm0, DWORD PTR .LC106[rip]
	ucomiss	xmm0, DWORD PTR -104[rbp]
	jp	.L522
	movss	xmm0, DWORD PTR .LC106[rip]
	comiss	xmm0, DWORD PTR -104[rbp]
	je	.L509
.L522:
	lea	rdi, .LC223[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L504:
	cmp	DWORD PTR -124[rbp], 2
	jne	.L511
	movss	xmm0, DWORD PTR .LC224[rip]
	movss	DWORD PTR -96[rbp], xmm0
	movss	xmm0, DWORD PTR .LC221[rip]
	movss	DWORD PTR -92[rbp], xmm0
	movss	xmm0, DWORD PTR .LC225[rip]
	movss	DWORD PTR -88[rbp], xmm0
	movss	xmm0, DWORD PTR .LC221[rip]
	movss	DWORD PTR -84[rbp], xmm0
	movss	xmm0, DWORD PTR .LC224[rip]
	movss	DWORD PTR -80[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -104[rbp], xmm0
	mov	DWORD PTR -112[rbp], 0
	jmp	.L512
.L515:
	mov	DWORD PTR -108[rbp], 0
	jmp	.L513
.L514:
	mov	eax, DWORD PTR -112[rbp]
	cdqe
	movss	xmm1, DWORD PTR -96[rbp+rax*4]
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	movss	xmm0, DWORD PTR -96[rbp+rax*4]
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -120[rbp]
	add	rdx, rax
	mulss	xmm0, xmm1
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	movss	DWORD PTR [rdx+rax*4], xmm0
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -120[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	movss	xmm1, DWORD PTR -104[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -104[rbp], xmm0
	add	DWORD PTR -108[rbp], 1
.L513:
	mov	eax, DWORD PTR -108[rbp]
	cmp	eax, DWORD PTR -100[rbp]
	jl	.L514
	add	DWORD PTR -112[rbp], 1
.L512:
	mov	eax, DWORD PTR -112[rbp]
	cmp	eax, DWORD PTR -100[rbp]
	jl	.L515
	movss	xmm0, DWORD PTR .LC106[rip]
	ucomiss	xmm0, DWORD PTR -104[rbp]
	jp	.L523
	movss	xmm0, DWORD PTR .LC106[rip]
	comiss	xmm0, DWORD PTR -104[rbp]
	je	.L509
.L523:
	lea	rdi, .LC223[rip]
	call	puts@PLT
	mov	edi, 1
	call	exit@PLT
.L511:
	mov	eax, DWORD PTR -124[rbp]
	mov	esi, eax
	lea	rdi, .LC226[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 1
	call	exit@PLT
.L509:
	lea	rdi, .LC227[rip]
	call	puts@PLT
	mov	DWORD PTR -112[rbp], 0
	jmp	.L517
.L520:
	mov	DWORD PTR -108[rbp], 0
	jmp	.L518
.L519:
	mov	eax, DWORD PTR -112[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -120[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -108[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movq	rax, xmm2
	movq	xmm0, rax
	lea	rdi, .LC228[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -108[rbp], 1
.L518:
	mov	eax, DWORD PTR -108[rbp]
	cmp	eax, DWORD PTR -100[rbp]
	jl	.L519
	mov	edi, 10
	call	putchar@PLT
	add	DWORD PTR -112[rbp], 1
.L517:
	mov	eax, DWORD PTR -112[rbp]
	cmp	eax, DWORD PTR -100[rbp]
	jl	.L520
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L521
	call	__stack_chk_fail@PLT
.L521:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	compute_weights, .-compute_weights
	.section	.rodata
	.align 8
.LC229:
	.string	"\nIerr=%d DI[0][0]: %f DI[1][1]: %f\n"
	.align 8
.LC233:
	.string	"\nFatal error: Pseudo-inverse of J wrong"
.LC234:
	.string	"The identity matrix:"
.LC235:
	.string	"%6.3f "
.LC237:
	.string	"Diagonal(s) greater than 10"
	.align 8
.LC238:
	.string	"       J                      JI"
	.align 8
.LC239:
	.string	"%12.8f %12.8f     %12.8f %12.8f\n"
	.text
	.globl	inverse22
	.type	inverse22, @function
inverse22:
.LFB32:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 384
	mov	QWORD PTR -360[rbp], rdi
	mov	QWORD PTR -368[rbp], rsi
	mov	DWORD PTR -372[rbp], edx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -304[rbp], 2
	mov	DWORD PTR -344[rbp], 2
	mov	DWORD PTR -348[rbp], 2
	mov	DWORD PTR -340[rbp], 2
	mov	DWORD PTR -320[rbp], 0
	jmp	.L525
.L528:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L526
.L527:
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -360[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	cvtss2sd	xmm0, xmm0
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movsd	QWORD PTR -112[rbp+rax*8], xmm0
	add	DWORD PTR -316[rbp], 1
.L526:
	mov	eax, DWORD PTR -316[rbp]
	cmp	eax, DWORD PTR -304[rbp]
	jl	.L527
	add	DWORD PTR -320[rbp], 1
.L525:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L528
	mov	DWORD PTR -332[rbp], 21
	lea	r9, -176[rbp]
	lea	r8, -144[rbp]
	lea	rcx, -344[rbp]
	lea	rdx, -348[rbp]
	lea	rsi, -340[rbp]
	lea	rax, -112[rbp]
	sub	rsp, 8
	lea	rdi, -336[rbp]
	push	rdi
	lea	rdi, -332[rbp]
	push	rdi
	lea	rdi, -160[rbp]
	push	rdi
	lea	rdi, -344[rbp]
	push	rdi
	lea	rdi, -48[rbp]
	push	rdi
	lea	rdi, -340[rbp]
	push	rdi
	lea	rdi, -80[rbp]
	push	rdi
	mov	rdi, rax
	call	dsvdc@PLT
	add	rsp, 64
	mov	DWORD PTR -320[rbp], 0
	jmp	.L529
.L532:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L530
.L531:
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movsd	xmm0, QWORD PTR -80[rbp+rax*8]
	cvtsd2ss	xmm0, xmm0
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -272[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movsd	xmm0, QWORD PTR -80[rbp+rax*8]
	cvtsd2ss	xmm0, xmm0
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -240[rbp+rax*4], xmm0
	add	DWORD PTR -316[rbp], 1
.L530:
	cmp	DWORD PTR -316[rbp], 1
	jle	.L531
	add	DWORD PTR -320[rbp], 1
.L529:
	mov	eax, DWORD PTR -320[rbp]
	cmp	eax, DWORD PTR -304[rbp]
	jl	.L532
	mov	DWORD PTR -320[rbp], 0
	jmp	.L533
.L536:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L534
.L535:
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movsd	xmm0, QWORD PTR -48[rbp+rax*8]
	cvtsd2ss	xmm0, xmm0
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -224[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR -256[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -256[rbp+rax*4]
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -208[rbp+rax*4], xmm0
	add	DWORD PTR -316[rbp], 1
.L534:
	cmp	DWORD PTR -316[rbp], 1
	jle	.L535
	add	DWORD PTR -320[rbp], 1
.L533:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L536
	mov	DWORD PTR -320[rbp], 0
	jmp	.L537
.L540:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L538
.L539:
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -224[rbp+rax*4]
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -288[rbp+rax*4], xmm0
	add	DWORD PTR -316[rbp], 1
.L538:
	cmp	DWORD PTR -316[rbp], 1
	jle	.L539
	add	DWORD PTR -320[rbp], 1
.L537:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L540
	mov	DWORD PTR -320[rbp], 0
	jmp	.L541
.L542:
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -144[rbp+rax*8]
	cvtsd2ss	xmm0, xmm0
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rbp
	sub	rax, 208
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -320[rbp], 1
.L541:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L542
	movsd	xmm0, QWORD PTR -144[rbp]
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -328[rbp], xmm0
	movsd	xmm0, QWORD PTR -144[rbp]
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -324[rbp], xmm0
	mov	DWORD PTR -320[rbp], 1
	jmp	.L543
.L548:
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -144[rbp+rax*8]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -324[rbp]
	comisd	xmm0, xmm1
	jbe	.L544
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -144[rbp+rax*8]
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -324[rbp], xmm0
.L544:
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -144[rbp+rax*8]
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -328[rbp]
	comisd	xmm0, xmm1
	jbe	.L546
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -144[rbp+rax*8]
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -328[rbp], xmm0
.L546:
	add	DWORD PTR -320[rbp], 1
.L543:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L548
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -328[rbp]
	jp	.L615
	pxor	xmm0, xmm0
	comiss	xmm0, DWORD PTR -328[rbp]
	je	.L622
.L615:
	movss	xmm0, DWORD PTR -324[rbp]
	divss	xmm0, DWORD PTR -328[rbp]
	movss	DWORD PTR -300[rbp], xmm0
	movss	xmm0, DWORD PTR .LC106[rip]
	divss	xmm0, DWORD PTR -328[rbp]
	movss	DWORD PTR -296[rbp], xmm0
	jmp	.L551
.L622:
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -300[rbp], xmm0
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -296[rbp], xmm0
.L551:
	movss	xmm0, DWORD PTR .LC106[rip]
	divss	xmm0, DWORD PTR -324[rbp]
	movss	DWORD PTR -292[rbp], xmm0
	mov	DWORD PTR -320[rbp], 0
	jmp	.L552
.L556:
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rbp
	sub	rax, 208
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L616
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	je	.L623
.L616:
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rbp
	sub	rax, 208
	movss	xmm1, DWORD PTR [rax]
	movss	xmm0, DWORD PTR .LC106[rip]
	divss	xmm0, xmm1
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rbp
	sub	rax, 256
	movss	DWORD PTR [rax], xmm0
	jmp	.L555
.L623:
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rbp
	sub	rax, 256
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR [rax], xmm0
.L555:
	add	DWORD PTR -320[rbp], 1
.L552:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L556
	cmp	DWORD PTR -372[rbp], 0
	je	.L557
	movss	xmm0, DWORD PTR -244[rbp]
	cvtss2sd	xmm0, xmm0
	movss	xmm1, DWORD PTR -256[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm1
	movq	rdx, xmm4
	mov	eax, DWORD PTR -336[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rdx
	mov	esi, eax
	lea	rdi, .LC229[rip]
	mov	eax, 2
	call	printf@PLT
.L557:
	movss	xmm1, DWORD PTR -256[rbp]
	movss	xmm0, DWORD PTR .LC230[rip]
	comiss	xmm0, xmm1
	jb	.L558
	movss	xmm1, DWORD PTR -244[rbp]
	movss	xmm0, DWORD PTR .LC230[rip]
	comiss	xmm0, xmm1
	jb	.L558
	mov	DWORD PTR -320[rbp], 0
	jmp	.L561
.L566:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L562
.L565:
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR -224[rbp+rax*4], xmm0
	mov	DWORD PTR -312[rbp], 0
	jmp	.L563
.L564:
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm1, DWORD PTR -224[rbp+rax*4]
	mov	eax, DWORD PTR -312[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm2, DWORD PTR -288[rbp+rax*4]
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -312[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -256[rbp+rax*4]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -224[rbp+rax*4], xmm0
	add	DWORD PTR -312[rbp], 1
.L563:
	cmp	DWORD PTR -312[rbp], 1
	jle	.L564
	add	DWORD PTR -316[rbp], 1
.L562:
	cmp	DWORD PTR -316[rbp], 1
	jle	.L565
	add	DWORD PTR -320[rbp], 1
.L561:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L566
	mov	DWORD PTR -320[rbp], 0
	jmp	.L567
.L572:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L568
.L571:
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -368[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	pxor	xmm0, xmm0
	movss	DWORD PTR [rdx+rax*4], xmm0
	mov	DWORD PTR -312[rbp], 0
	jmp	.L569
.L570:
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -368[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	movss	xmm1, DWORD PTR [rdx+rax*4]
	mov	eax, DWORD PTR -312[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm2, DWORD PTR -224[rbp+rax*4]
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -312[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -272[rbp+rax*4]
	mulss	xmm0, xmm2
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -368[rbp]
	add	rdx, rax
	addss	xmm0, xmm1
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	movss	DWORD PTR [rdx+rax*4], xmm0
	add	DWORD PTR -312[rbp], 1
.L569:
	cmp	DWORD PTR -312[rbp], 1
	jle	.L570
	add	DWORD PTR -316[rbp], 1
.L568:
	mov	eax, DWORD PTR -316[rbp]
	cmp	eax, DWORD PTR -304[rbp]
	jl	.L571
	add	DWORD PTR -320[rbp], 1
.L567:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L572
	mov	DWORD PTR -320[rbp], 0
	jmp	.L573
.L578:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L574
.L577:
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	pxor	xmm0, xmm0
	movss	DWORD PTR -192[rbp+rax*4], xmm0
	mov	DWORD PTR -312[rbp], 0
	jmp	.L575
.L576:
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm1, DWORD PTR -192[rbp+rax*4]
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -368[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -312[rbp]
	cdqe
	movss	xmm2, DWORD PTR [rdx+rax*4]
	mov	eax, DWORD PTR -312[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -360[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	DWORD PTR -192[rbp+rax*4], xmm0
	add	DWORD PTR -312[rbp], 1
.L575:
	mov	eax, DWORD PTR -312[rbp]
	cmp	eax, DWORD PTR -304[rbp]
	jl	.L576
	add	DWORD PTR -316[rbp], 1
.L574:
	cmp	DWORD PTR -316[rbp], 1
	jle	.L577
	add	DWORD PTR -320[rbp], 1
.L573:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L578
	mov	DWORD PTR -308[rbp], 0
	mov	DWORD PTR -320[rbp], 0
	jmp	.L579
.L587:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L580
.L586:
	mov	eax, DWORD PTR -320[rbp]
	cmp	eax, DWORD PTR -316[rbp]
	jne	.L581
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rbp
	sub	rax, 192
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC231[rip]
	comisd	xmm0, xmm1
	ja	.L582
	mov	eax, DWORD PTR -320[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 2
	add	rax, rbp
	sub	rax, 192
	movss	xmm0, DWORD PTR [rax]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR .LC174[rip]
	jbe	.L583
.L582:
	mov	DWORD PTR -308[rbp], 1
	jmp	.L583
.L581:
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -192[rbp+rax*4]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR .LC232[rip]
	jbe	.L583
	mov	DWORD PTR -308[rbp], 1
.L583:
	add	DWORD PTR -316[rbp], 1
.L580:
	cmp	DWORD PTR -316[rbp], 1
	jle	.L586
	add	DWORD PTR -320[rbp], 1
.L579:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L587
	cmp	DWORD PTR -308[rbp], 1
	jne	.L593
	lea	rdi, .LC233[rip]
	call	puts@PLT
	lea	rdi, .LC234[rip]
	call	puts@PLT
	mov	DWORD PTR -320[rbp], 0
	jmp	.L589
.L592:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L590
.L591:
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -192[rbp+rax*4]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC235[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -316[rbp], 1
.L590:
	cmp	DWORD PTR -316[rbp], 1
	jle	.L591
	mov	edi, 10
	call	putchar@PLT
	add	DWORD PTR -320[rbp], 1
.L589:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L592
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	mov	edi, 1
	call	exit@PLT
.L558:
	movss	xmm0, DWORD PTR -256[rbp]
	comiss	xmm0, DWORD PTR .LC230[rip]
	jbe	.L594
	movss	xmm0, DWORD PTR .LC230[rip]
	movss	DWORD PTR -256[rbp], xmm0
.L594:
	movss	xmm0, DWORD PTR -244[rbp]
	comiss	xmm0, DWORD PTR .LC230[rip]
	jbe	.L596
	movss	xmm0, DWORD PTR .LC230[rip]
	movss	DWORD PTR -244[rbp], xmm0
.L596:
	mov	eax, DWORD PTR COUNT_SINGULAR[rip]
	add	eax, 1
	mov	DWORD PTR COUNT_SINGULAR[rip], eax
	mov	DWORD PTR -320[rbp], 0
	jmp	.L598
.L603:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L599
.L602:
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -48[rbp+rax*8], xmm0
	mov	DWORD PTR -312[rbp], 0
	jmp	.L600
.L601:
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movsd	xmm1, QWORD PTR -48[rbp+rax*8]
	mov	eax, DWORD PTR -312[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm2, DWORD PTR -288[rbp+rax*4]
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -312[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -256[rbp+rax*4]
	mulss	xmm0, xmm2
	cvtss2sd	xmm0, xmm0
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movsd	QWORD PTR -48[rbp+rax*8], xmm0
	add	DWORD PTR -312[rbp], 1
.L600:
	cmp	DWORD PTR -312[rbp], 1
	jle	.L601
	add	DWORD PTR -316[rbp], 1
.L599:
	cmp	DWORD PTR -316[rbp], 1
	jle	.L602
	add	DWORD PTR -320[rbp], 1
.L598:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L603
	mov	DWORD PTR -320[rbp], 0
	jmp	.L604
.L609:
	mov	DWORD PTR -316[rbp], 0
	jmp	.L605
.L608:
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -368[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	pxor	xmm0, xmm0
	movss	DWORD PTR [rdx+rax*4], xmm0
	mov	DWORD PTR -312[rbp], 0
	jmp	.L606
.L607:
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -368[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	eax, DWORD PTR -312[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movsd	xmm2, QWORD PTR -48[rbp+rax*8]
	mov	eax, DWORD PTR -316[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -312[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movss	xmm0, DWORD PTR -272[rbp+rax*4]
	cvtss2sd	xmm0, xmm0
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -320[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -368[rbp]
	add	rdx, rax
	cvtsd2ss	xmm0, xmm0
	mov	eax, DWORD PTR -316[rbp]
	cdqe
	movss	DWORD PTR [rdx+rax*4], xmm0
	add	DWORD PTR -312[rbp], 1
.L606:
	cmp	DWORD PTR -312[rbp], 1
	jle	.L607
	add	DWORD PTR -316[rbp], 1
.L605:
	mov	eax, DWORD PTR -316[rbp]
	cmp	eax, DWORD PTR -304[rbp]
	jl	.L608
	add	DWORD PTR -320[rbp], 1
.L604:
	cmp	DWORD PTR -320[rbp], 1
	jle	.L609
.L593:
	cmp	DWORD PTR -372[rbp], 0
	je	.L610
	lea	rdi, .LC237[rip]
	call	puts@PLT
	lea	rdi, .LC238[rip]
	call	puts@PLT
	mov	rax, QWORD PTR -368[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rax, QWORD PTR -368[rbp]
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -360[rbp]
	movss	xmm0, DWORD PTR 4[rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -360[rbp]
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm3
	movq	rax, xmm6
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC239[rip]
	mov	eax, 4
	call	printf@PLT
	mov	rax, QWORD PTR -368[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	mov	rax, QWORD PTR -368[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	mov	rax, QWORD PTR -360[rbp]
	add	rax, 8
	movss	xmm0, DWORD PTR 4[rax]
	cvtss2sd	xmm0, xmm0
	mov	rax, QWORD PTR -360[rbp]
	add	rax, 8
	movss	xmm3, DWORD PTR [rax]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm3
	movq	rax, xmm7
	movapd	xmm3, xmm2
	movapd	xmm2, xmm1
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC239[rip]
	mov	eax, 4
	call	printf@PLT
.L610:
	mov	eax, 0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L612
	call	__stack_chk_fail@PLT
.L612:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	inverse22, .-inverse22
	.section	.rodata
	.align 8
.LC243:
	.string	"\nComputing Laplacian as a center-surround filter..."
.LC244:
	.string	"sigma1=%f sigma2=%f\n"
.LC245:
	.string	"\n"
	.align 8
.LC246:
	.string	"Image #%d - column convolution completed\n"
	.align 8
.LC247:
	.string	"Image #%d - row convolution completed\n"
.LC248:
	.string	"Gaussian images subtracted"
	.align 8
.LC249:
	.string	"Minimum value: %f Maximun value: %f\n"
	.text
	.globl	laplacian
	.type	laplacian, @function
laplacian:
.LFB33:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	r11, -843776[rsp]
.LPSRL2:
	sub	rsp, 4096
	or	DWORD PTR [rsp], 0
	cmp	rsp, r11
	jne	.LPSRL2
	sub	rsp, 1616
	mov	QWORD PTR -845352[rbp], rdi
	mov	QWORD PTR -845360[rbp], rsi
	movss	DWORD PTR -845364[rbp], xmm0
	mov	DWORD PTR -845368[rbp], edx
	mov	DWORD PTR -845372[rbp], ecx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	movss	xmm0, DWORD PTR -845364[rbp]
	movss	DWORD PTR -845292[rbp], xmm0
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -845292[rbp]
	movsd	xmm0, QWORD PTR .LC240[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC173[rip]
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -845288[rbp], xmm0
	movss	xmm1, DWORD PTR -845292[rbp]
	movss	xmm0, DWORD PTR .LC241[rip]
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR .LC106[rip]
	addss	xmm0, xmm1
	cvttss2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	xmm1, QWORD PTR .LC242[rip]
	divsd	xmm0, xmm1
	cvttsd2si	eax, xmm0
	mov	DWORD PTR -845284[rbp], eax
	mov	DWORD PTR -845332[rbp], 0
	mov	eax, DWORD PTR -845284[rbp]
	neg	eax
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -845308[rbp], xmm0
	mov	eax, DWORD PTR -845284[rbp]
	neg	eax
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -845304[rbp], xmm0
	jmp	.L625
.L626:
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, DWORD PTR -845288[rbp]
	movsd	QWORD PTR -845384[rbp], xmm3
	movss	xmm0, DWORD PTR -845304[rbp]
	movss	xmm1, DWORD PTR .LC141[rip]
	xorps	xmm0, xmm1
	mulss	xmm0, DWORD PTR -845304[rbp]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -845292[rbp]
	movapd	xmm2, xmm0
	addsd	xmm2, xmm0
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -845292[rbp]
	mulsd	xmm0, xmm2
	divsd	xmm1, xmm0
	movq	rax, xmm1
	movq	xmm0, rax
	call	exp@PLT
	mulsd	xmm0, QWORD PTR -845384[rbp]
	cvtsd2ss	xmm0, xmm0
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	movss	DWORD PTR -845280[rbp+rax*4], xmm0
	add	DWORD PTR -845332[rbp], 1
	movss	xmm1, DWORD PTR -845308[rbp]
	movss	xmm0, DWORD PTR .LC106[rip]
	addss	xmm0, xmm1
	movss	DWORD PTR -845308[rbp], xmm0
	movss	xmm1, DWORD PTR -845304[rbp]
	movss	xmm0, DWORD PTR .LC106[rip]
	addss	xmm0, xmm1
	movss	DWORD PTR -845304[rbp], xmm0
.L625:
	mov	eax, DWORD PTR -845284[rbp]
	add	eax, eax
	cmp	DWORD PTR -845332[rbp], eax
	jle	.L626
	lea	rdi, .LC243[rip]
	call	puts@PLT
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -845292[rbp]
	movapd	xmm1, xmm0
	pxor	xmm0, xmm0
	lea	rdi, .LC244[rip]
	mov	eax, 2
	call	printf@PLT
	mov	DWORD PTR -845332[rbp], 0
	jmp	.L627
.L652:
	lea	rdi, .LC245[rip]
	call	puts@PLT
	mov	DWORD PTR -845328[rbp], 0
	jmp	.L628
.L633:
	mov	eax, DWORD PTR -845284[rbp]
	mov	DWORD PTR -845324[rbp], eax
	jmp	.L629
.L632:
	pxor	xmm0, xmm0
	movss	DWORD PTR -845312[rbp], xmm0
	mov	eax, DWORD PTR -845284[rbp]
	neg	eax
	mov	DWORD PTR -845320[rbp], eax
	jmp	.L630
.L631:
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	imul	rdx, rax, 105625
	mov	rax, QWORD PTR -845352[rbp]
	lea	rsi, [rdx+rax]
	mov	edx, DWORD PTR -845324[rbp]
	mov	eax, DWORD PTR -845320[rbp]
	add	eax, edx
	movsx	rcx, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, eax
	mov	edx, DWORD PTR -845320[rbp]
	mov	eax, DWORD PTR -845284[rbp]
	add	eax, edx
	cdqe
	movss	xmm0, DWORD PTR -845280[rbp+rax*4]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -845312[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -845312[rbp], xmm0
	add	DWORD PTR -845320[rbp], 1
.L630:
	mov	eax, DWORD PTR -845320[rbp]
	cmp	eax, DWORD PTR -845284[rbp]
	jle	.L631
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -845312[rbp]
	movss	DWORD PTR -845024[rbp+rax*4], xmm0
	add	DWORD PTR -845324[rbp], 1
.L629:
	mov	eax, DWORD PTR -845368[rbp]
	sub	eax, DWORD PTR -845284[rbp]
	cmp	DWORD PTR -845324[rbp], eax
	jl	.L632
	add	DWORD PTR -845328[rbp], 1
.L628:
	mov	eax, DWORD PTR -845328[rbp]
	cmp	eax, DWORD PTR -845372[rbp]
	jl	.L633
	mov	eax, DWORD PTR -845332[rbp]
	mov	esi, eax
	lea	rdi, .LC246[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	mov	eax, DWORD PTR -845284[rbp]
	mov	DWORD PTR -845328[rbp], eax
	jmp	.L634
.L639:
	mov	eax, DWORD PTR -845284[rbp]
	mov	DWORD PTR -845324[rbp], eax
	jmp	.L635
.L638:
	pxor	xmm0, xmm0
	movss	DWORD PTR -845312[rbp], xmm0
	mov	eax, DWORD PTR -845284[rbp]
	neg	eax
	mov	DWORD PTR -845316[rbp], eax
	jmp	.L636
.L637:
	mov	edx, DWORD PTR -845328[rbp]
	mov	eax, DWORD PTR -845316[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rcx, eax
	movsx	rdx, edx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm1, DWORD PTR -845024[rbp+rax*4]
	mov	edx, DWORD PTR -845316[rbp]
	mov	eax, DWORD PTR -845284[rbp]
	add	eax, edx
	cdqe
	movss	xmm0, DWORD PTR -845280[rbp+rax*4]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -845312[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -845312[rbp], xmm0
	add	DWORD PTR -845316[rbp], 1
.L636:
	mov	eax, DWORD PTR -845316[rbp]
	cmp	eax, DWORD PTR -845284[rbp]
	jle	.L637
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -845312[rbp]
	movss	DWORD PTR -422512[rbp+rax*4], xmm0
	add	DWORD PTR -845324[rbp], 1
.L635:
	mov	eax, DWORD PTR -845368[rbp]
	sub	eax, DWORD PTR -845284[rbp]
	cmp	DWORD PTR -845324[rbp], eax
	jl	.L638
	add	DWORD PTR -845328[rbp], 1
.L634:
	mov	eax, DWORD PTR -845372[rbp]
	sub	eax, DWORD PTR -845284[rbp]
	cmp	DWORD PTR -845328[rbp], eax
	jl	.L639
	mov	eax, DWORD PTR -845332[rbp]
	mov	esi, eax
	lea	rdi, .LC247[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -845300[rbp], xmm0
	movss	xmm0, DWORD PTR .LC190[rip]
	movss	DWORD PTR -845296[rbp], xmm0
	mov	eax, DWORD PTR -845284[rbp]
	mov	DWORD PTR -845328[rbp], eax
	jmp	.L640
.L647:
	mov	eax, DWORD PTR -845284[rbp]
	mov	DWORD PTR -845324[rbp], eax
	jmp	.L641
.L646:
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	imul	rdx, rax, 105625
	mov	rax, QWORD PTR -845352[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rcx
	movss	xmm1, DWORD PTR -422512[rbp+rax*4]
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	imul	rdx, rax, 422500
	mov	rax, QWORD PTR -845360[rbp]
	lea	rcx, [rdx+rax]
	subss	xmm0, xmm1
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	DWORD PTR [rcx+rax*4], xmm0
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	imul	rdx, rax, 422500
	mov	rax, QWORD PTR -845360[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	xmm1, DWORD PTR [rcx+rax*4]
	movss	xmm0, DWORD PTR -845300[rbp]
	comiss	xmm0, xmm1
	jbe	.L642
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	imul	rdx, rax, 422500
	mov	rax, QWORD PTR -845360[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	xmm0, DWORD PTR [rcx+rax*4]
	movss	DWORD PTR -845300[rbp], xmm0
.L642:
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	imul	rdx, rax, 422500
	mov	rax, QWORD PTR -845360[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	xmm0, DWORD PTR [rcx+rax*4]
	comiss	xmm0, DWORD PTR -845296[rbp]
	jbe	.L644
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	imul	rdx, rax, 422500
	mov	rax, QWORD PTR -845360[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	xmm0, DWORD PTR [rcx+rax*4]
	movss	DWORD PTR -845296[rbp], xmm0
.L644:
	add	DWORD PTR -845324[rbp], 1
.L641:
	mov	eax, DWORD PTR -845368[rbp]
	sub	eax, DWORD PTR -845284[rbp]
	cmp	DWORD PTR -845324[rbp], eax
	jl	.L646
	add	DWORD PTR -845328[rbp], 1
.L640:
	mov	eax, DWORD PTR -845372[rbp]
	sub	eax, DWORD PTR -845284[rbp]
	cmp	DWORD PTR -845328[rbp], eax
	jl	.L647
	lea	rdi, .LC248[rip]
	call	puts@PLT
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -845296[rbp]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, DWORD PTR -845300[rbp]
	movq	rax, xmm4
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC249[rip]
	mov	eax, 2
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	mov	eax, DWORD PTR -845284[rbp]
	mov	DWORD PTR -845328[rbp], eax
	jmp	.L648
.L651:
	mov	eax, DWORD PTR -845284[rbp]
	mov	DWORD PTR -845324[rbp], eax
	jmp	.L649
.L650:
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	imul	rdx, rax, 422500
	mov	rax, QWORD PTR -845360[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	xmm0, DWORD PTR [rcx+rax*4]
	subss	xmm0, DWORD PTR -845300[rbp]
	cvttss2si	eax, xmm0
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	xmm1, DWORD PTR -845296[rbp]
	movaps	xmm2, xmm1
	subss	xmm2, DWORD PTR -845300[rbp]
	movaps	xmm1, xmm0
	divss	xmm1, xmm2
	movss	xmm0, DWORD PTR .LC250[rip]
	mulss	xmm0, xmm1
	mov	eax, DWORD PTR -845332[rbp]
	cdqe
	imul	rdx, rax, 105625
	mov	rax, QWORD PTR -845352[rbp]
	lea	rdi, [rdx+rax]
	cvttss2si	eax, xmm0
	mov	ecx, eax
	mov	eax, DWORD PTR -845324[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -845328[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rdi
	add	rax, rsi
	mov	BYTE PTR [rax], cl
	add	DWORD PTR -845324[rbp], 1
.L649:
	mov	eax, DWORD PTR -845368[rbp]
	sub	eax, DWORD PTR -845284[rbp]
	cmp	DWORD PTR -845324[rbp], eax
	jl	.L650
	add	DWORD PTR -845328[rbp], 1
.L648:
	mov	eax, DWORD PTR -845372[rbp]
	sub	eax, DWORD PTR -845284[rbp]
	cmp	DWORD PTR -845328[rbp], eax
	jl	.L651
	add	DWORD PTR -845332[rbp], 1
.L627:
	cmp	DWORD PTR -845332[rbp], 2
	jle	.L652
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L653
	call	__stack_chk_fail@PLT
.L653:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	laplacian, .-laplacian
	.globl	make_float
	.type	make_float, @function
make_float:
.LFB34:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	DWORD PTR -36[rbp], edx
	mov	DWORD PTR -40[rbp], ecx
	mov	DWORD PTR -4[rbp], 0
	jmp	.L657
.L662:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L658
.L661:
	mov	DWORD PTR -8[rbp], 0
	jmp	.L659
.L660:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rdx, rax, 105625
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -8[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	mov	edx, DWORD PTR -4[rbp]
	movsx	rdx, edx
	imul	rcx, rdx, 422500
	mov	rdx, QWORD PTR -32[rbp]
	add	rcx, rdx
	movzx	eax, al
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	mov	eax, DWORD PTR -8[rbp]
	movsx	rsi, eax
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	mov	rdx, rax
	sal	rdx, 6
	add	rax, rdx
	add	rax, rsi
	movss	DWORD PTR [rcx+rax*4], xmm0
	add	DWORD PTR -8[rbp], 1
.L659:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jl	.L660
	add	DWORD PTR -12[rbp], 1
.L658:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -40[rbp]
	jl	.L661
	add	DWORD PTR -4[rbp], 1
.L657:
	cmp	DWORD PTR -4[rbp], 2
	jle	.L662
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE34:
	.size	make_float, .-make_float
	.section	.rodata
.LC251:
	.string	"%dth minimum: %f at %d,%d\n"
	.text
	.globl	compute_n_minimums
	.type	compute_n_minimums, @function
compute_n_minimums:
.LFB35:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 400
	mov	QWORD PTR -392[rbp], rdi
	mov	DWORD PTR -396[rbp], esi
	mov	DWORD PTR -400[rbp], edx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -376[rbp], 0
	jmp	.L664
.L667:
	mov	DWORD PTR -372[rbp], 0
	jmp	.L665
.L666:
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -392[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -372[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mov	eax, DWORD PTR -372[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -376[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	add	rax, rcx
	movss	DWORD PTR -336[rbp+rax*4], xmm0
	add	DWORD PTR -372[rbp], 1
.L665:
	mov	eax, DWORD PTR -396[rbp]
	add	eax, eax
	cmp	DWORD PTR -372[rbp], eax
	jle	.L666
	add	DWORD PTR -376[rbp], 1
.L664:
	mov	eax, DWORD PTR -396[rbp]
	add	eax, eax
	cmp	DWORD PTR -376[rbp], eax
	jle	.L667
	mov	DWORD PTR -376[rbp], 0
	jmp	.L668
.L678:
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -352[rbp], xmm0
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -348[rbp], xmm0
	mov	DWORD PTR -356[rbp], 0
	mov	eax, DWORD PTR -356[rbp]
	mov	DWORD PTR -360[rbp], eax
	mov	eax, DWORD PTR -396[rbp]
	neg	eax
	mov	DWORD PTR -368[rbp], eax
	jmp	.L669
.L677:
	mov	eax, DWORD PTR -396[rbp]
	neg	eax
	mov	DWORD PTR -364[rbp], eax
	jmp	.L670
.L676:
	mov	edx, DWORD PTR -368[rbp]
	mov	eax, DWORD PTR -396[rbp]
	add	eax, edx
	mov	DWORD PTR -344[rbp], eax
	mov	edx, DWORD PTR -364[rbp]
	mov	eax, DWORD PTR -396[rbp]
	add	eax, edx
	mov	DWORD PTR -340[rbp], eax
	mov	eax, DWORD PTR -340[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -344[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -336[rbp+rax*4]
	subss	xmm0, DWORD PTR -352[rbp]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC38[rip]
	comisd	xmm0, xmm1
	jb	.L671
	mov	eax, DWORD PTR -368[rbp]
	imul	eax, eax
	mov	edx, eax
	mov	eax, DWORD PTR -364[rbp]
	imul	eax, eax
	add	eax, edx
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, eax
	movss	xmm0, DWORD PTR -348[rbp]
	comiss	xmm0, xmm1
	ja	.L673
.L671:
	mov	eax, DWORD PTR -340[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -344[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	add	rax, rcx
	movss	xmm1, DWORD PTR -336[rbp+rax*4]
	movss	xmm0, DWORD PTR -352[rbp]
	comiss	xmm0, xmm1
	jbe	.L674
.L673:
	mov	eax, DWORD PTR -340[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -344[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -336[rbp+rax*4]
	movss	DWORD PTR -352[rbp], xmm0
	mov	eax, DWORD PTR -368[rbp]
	imul	eax, eax
	mov	edx, eax
	mov	eax, DWORD PTR -364[rbp]
	imul	eax, eax
	add	eax, edx
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -348[rbp], xmm0
	mov	eax, DWORD PTR -368[rbp]
	mov	DWORD PTR -360[rbp], eax
	mov	eax, DWORD PTR -364[rbp]
	mov	DWORD PTR -356[rbp], eax
.L674:
	add	DWORD PTR -364[rbp], 1
.L670:
	mov	eax, DWORD PTR -364[rbp]
	cmp	eax, DWORD PTR -396[rbp]
	jle	.L676
	add	DWORD PTR -368[rbp], 1
.L669:
	mov	eax, DWORD PTR -368[rbp]
	cmp	eax, DWORD PTR -396[rbp]
	jle	.L677
	mov	edx, DWORD PTR -360[rbp]
	mov	eax, DWORD PTR -396[rbp]
	add	eax, edx
	mov	ecx, DWORD PTR -356[rbp]
	mov	edx, DWORD PTR -396[rbp]
	add	edx, ecx
	movsx	rcx, edx
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -336[rbp+rax*4], xmm0
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, DWORD PTR -352[rbp]
	movq	rsi, xmm2
	mov	ecx, DWORD PTR -356[rbp]
	mov	edx, DWORD PTR -360[rbp]
	mov	eax, DWORD PTR -376[rbp]
	movq	xmm0, rsi
	mov	esi, eax
	lea	rdi, .LC251[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -376[rbp], 1
.L668:
	mov	eax, DWORD PTR -376[rbp]
	cmp	eax, DWORD PTR -400[rbp]
	jl	.L678
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L679
	call	__stack_chk_fail@PLT
.L679:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE35:
	.size	compute_n_minimums, .-compute_n_minimums
	.section	.rodata
	.align 8
.LC252:
	.string	"%dth minimum: %f at %d,%d SSDmag: %d\n"
	.text
	.globl	compute_big_n_minimums
	.type	compute_big_n_minimums, @function
compute_big_n_minimums:
.LFB36:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1232
	mov	QWORD PTR -1224[rbp], rdi
	mov	DWORD PTR -1228[rbp], esi
	mov	DWORD PTR -1232[rbp], edx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -1208[rbp], 0
	jmp	.L682
.L685:
	mov	DWORD PTR -1204[rbp], 0
	jmp	.L683
.L684:
	mov	eax, DWORD PTR -1208[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	mov	rax, QWORD PTR -1224[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -1204[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*4]
	mov	eax, DWORD PTR -1204[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -1208[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	DWORD PTR -1168[rbp+rax*4], xmm0
	add	DWORD PTR -1204[rbp], 1
.L683:
	mov	eax, DWORD PTR -1228[rbp]
	add	eax, eax
	cmp	DWORD PTR -1204[rbp], eax
	jle	.L684
	add	DWORD PTR -1208[rbp], 1
.L682:
	mov	eax, DWORD PTR -1228[rbp]
	add	eax, eax
	cmp	DWORD PTR -1208[rbp], eax
	jle	.L685
	mov	DWORD PTR -1208[rbp], 0
	jmp	.L686
.L696:
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -1184[rbp], xmm0
	pxor	xmm0, xmm0
	movss	DWORD PTR -1180[rbp], xmm0
	mov	DWORD PTR -1188[rbp], 0
	mov	eax, DWORD PTR -1188[rbp]
	mov	DWORD PTR -1192[rbp], eax
	mov	eax, DWORD PTR -1228[rbp]
	neg	eax
	mov	DWORD PTR -1200[rbp], eax
	jmp	.L687
.L695:
	mov	eax, DWORD PTR -1228[rbp]
	neg	eax
	mov	DWORD PTR -1196[rbp], eax
	jmp	.L688
.L694:
	mov	edx, DWORD PTR -1200[rbp]
	mov	eax, DWORD PTR -1228[rbp]
	add	eax, edx
	mov	DWORD PTR -1176[rbp], eax
	mov	edx, DWORD PTR -1196[rbp]
	mov	eax, DWORD PTR -1228[rbp]
	add	eax, edx
	mov	DWORD PTR -1172[rbp], eax
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -1176[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -1168[rbp+rax*4]
	subss	xmm0, DWORD PTR -1184[rbp]
	movss	xmm1, DWORD PTR .LC161[rip]
	andps	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC38[rip]
	comisd	xmm0, xmm1
	jb	.L689
	mov	eax, DWORD PTR -1200[rbp]
	imul	eax, eax
	mov	edx, eax
	mov	eax, DWORD PTR -1196[rbp]
	imul	eax, eax
	add	eax, edx
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, eax
	movss	xmm0, DWORD PTR -1180[rbp]
	comiss	xmm0, xmm1
	ja	.L691
.L689:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -1176[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm1, DWORD PTR -1168[rbp+rax*4]
	movss	xmm0, DWORD PTR -1184[rbp]
	subss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR .LC38[rip]
	jbe	.L692
.L691:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -1176[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR -1168[rbp+rax*4]
	movss	DWORD PTR -1184[rbp], xmm0
	mov	eax, DWORD PTR -1200[rbp]
	imul	eax, eax
	mov	edx, eax
	mov	eax, DWORD PTR -1196[rbp]
	imul	eax, eax
	add	eax, edx
	pxor	xmm0, xmm0
	cvtsi2ss	xmm0, eax
	movss	DWORD PTR -1180[rbp], xmm0
	mov	eax, DWORD PTR -1200[rbp]
	mov	DWORD PTR -1192[rbp], eax
	mov	eax, DWORD PTR -1196[rbp]
	mov	DWORD PTR -1188[rbp], eax
.L692:
	add	DWORD PTR -1196[rbp], 1
.L688:
	mov	eax, DWORD PTR -1196[rbp]
	cmp	eax, DWORD PTR -1228[rbp]
	jle	.L694
	add	DWORD PTR -1200[rbp], 1
.L687:
	mov	eax, DWORD PTR -1200[rbp]
	cmp	eax, DWORD PTR -1228[rbp]
	jle	.L695
	mov	edx, DWORD PTR -1192[rbp]
	mov	eax, DWORD PTR -1228[rbp]
	add	eax, edx
	mov	ecx, DWORD PTR -1188[rbp]
	mov	edx, DWORD PTR -1228[rbp]
	add	edx, ecx
	movsx	rcx, edx
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 4
	add	rax, rdx
	add	rax, rcx
	movss	xmm0, DWORD PTR .LC172[rip]
	movss	DWORD PTR -1168[rbp+rax*4], xmm0
	mov	eax, DWORD PTR -1192[rbp]
	imul	eax, eax
	mov	edx, eax
	mov	eax, DWORD PTR -1188[rbp]
	imul	eax, eax
	lea	edi, [rdx+rax]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, DWORD PTR -1184[rbp]
	movq	rsi, xmm2
	mov	ecx, DWORD PTR -1188[rbp]
	mov	edx, DWORD PTR -1192[rbp]
	mov	eax, DWORD PTR -1208[rbp]
	mov	r8d, edi
	movq	xmm0, rsi
	mov	esi, eax
	lea	rdi, .LC252[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -1208[rbp], 1
.L686:
	mov	eax, DWORD PTR -1208[rbp]
	cmp	eax, DWORD PTR -1232[rbp]
	jl	.L696
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L697
	call	__stack_chk_fail@PLT
.L697:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE36:
	.size	compute_big_n_minimums, .-compute_big_n_minimums
	.globl	bigL2norm
	.type	bigL2norm, @function
bigL2norm:
.LFB37:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	pxor	xmm0, xmm0
	movss	DWORD PTR -4[rbp], xmm0
	mov	DWORD PTR -8[rbp], 0
	mov	DWORD PTR -16[rbp], 0
	jmp	.L700
.L706:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L701
.L705:
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L708
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L702
.L708:
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	ucomiss	xmm0, DWORD PTR .LC137[rip]
	jp	.L709
	comiss	xmm0, DWORD PTR .LC137[rip]
	je	.L702
.L709:
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	movss	xmm1, DWORD PTR 4[rdx+rax*8]
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	movss	xmm0, DWORD PTR 4[rdx+rax*8]
	mulss	xmm1, xmm0
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	movss	xmm2, DWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	imul	rdx, rax, 2600
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	movss	xmm0, DWORD PTR [rdx+rax*8]
	mulss	xmm0, xmm2
	addss	xmm0, xmm1
	movss	xmm1, DWORD PTR -4[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -4[rbp], xmm0
	add	DWORD PTR -8[rbp], 1
.L702:
	add	DWORD PTR -12[rbp], 1
.L701:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L705
	add	DWORD PTR -16[rbp], 1
.L700:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L706
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, DWORD PTR -4[rbp]
	movq	rax, xmm3
	movq	xmm0, rax
	call	sqrt@PLT
	cvtsd2ss	xmm0, xmm0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE37:
	.size	bigL2norm, .-bigL2norm
	.section	.rodata
	.align 8
.LC38:
	.long	-1717986918
	.long	1069128089
	.align 4
.LC106:
	.long	1065353216
	.align 8
.LC124:
	.long	0
	.long	1078853632
	.align 8
.LC126:
	.long	0
	.long	1085022208
	.align 4
.LC137:
	.long	1120403456
	.align 8
.LC140:
	.long	0
	.long	1074790400
	.align 16
.LC141:
	.long	-2147483648
	.long	0
	.long	0
	.long	0
	.align 8
.LC151:
	.long	-1998362383
	.long	1055193269
	.align 16
.LC161:
	.long	2147483647
	.long	0
	.long	0
	.long	0
	.align 8
.LC166:
	.long	0
	.long	1079574528
	.align 4
.LC172:
	.long	2139095040
	.align 8
.LC173:
	.long	0
	.long	1072693248
	.align 8
.LC174:
	.long	-611603343
	.long	1072693352
	.align 8
.LC175:
	.long	442745336
	.long	1078765020
	.align 4
.LC176:
	.long	1127481344
	.align 8
.LC180:
	.long	-500134854
	.long	1044740494
	.align 4
.LC181:
	.long	-1028390912
	.align 4
.LC182:
	.long	1119092736
	.align 8
.LC188:
	.long	-1717986918
	.long	1070176665
	.align 8
.LC189:
	.long	0
	.long	1071644672
	.align 4
.LC190:
	.long	-8388608
	.align 8
.LC206:
	.long	1413754136
	.long	1074340347
	.align 8
.LC210:
	.long	0
	.long	1080459264
	.align 4
.LC211:
	.long	1119027200
	.align 4
.LC212:
	.long	1119158272
	.align 4
.LC213:
	.long	1064514355
	.align 8
.LC214:
	.long	-1598689907
	.long	1051772663
	.align 4
.LC215:
	.long	1007371158
	.align 16
.LC216:
	.long	0
	.long	-2147483648
	.long	0
	.long	0
	.align 8
.LC217:
	.long	-400107883
	.long	1041313291
	.align 4
.LC221:
	.long	1048576000
	.align 4
.LC222:
	.long	1056964608
	.align 4
.LC224:
	.long	1031798784
	.align 4
.LC225:
	.long	1052770304
	.align 4
.LC230:
	.long	1092616192
	.align 8
.LC231:
	.long	1223206686
	.long	1072693038
	.align 8
.LC232:
	.long	-350469331
	.long	1058682594
	.align 8
.LC240:
	.long	536225541
	.long	1074007443
	.align 4
.LC241:
	.long	1086324736
	.align 8
.LC242:
	.long	0
	.long	1073741824
	.align 4
.LC250:
	.long	1132396544
	.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	"82516.c"
	.text
	.global	EXTRA_OFFSET_X
	.bss
	.align	2
	.type	EXTRA_OFFSET_X, %object
	.size	EXTRA_OFFSET_X, 4
EXTRA_OFFSET_X:
	.space	4
	.global	EXTRA_OFFSET_Y
	.align	2
	.type	EXTRA_OFFSET_Y, %object
	.size	EXTRA_OFFSET_Y, 4
EXTRA_OFFSET_Y:
	.space	4
	.global	CUT_X
	.align	2
	.type	CUT_X, %object
	.size	CUT_X, 4
CUT_X:
	.space	4
	.global	CUT_Y
	.align	2
	.type	CUT_Y, %object
	.size	CUT_Y, 4
CUT_Y:
	.space	4
	.global	PRINT_ITERATIONS
	.align	2
	.type	PRINT_ITERATIONS, %object
	.size	PRINT_ITERATIONS, 4
PRINT_ITERATIONS:
	.space	4
	.global	PRINT_LAPLACIAN
	.align	2
	.type	PRINT_LAPLACIAN, %object
	.size	PRINT_LAPLACIAN, 4
PRINT_LAPLACIAN:
	.space	4
	.global	PRINT1
	.align	2
	.type	PRINT1, %object
	.size	PRINT1, 4
PRINT1:
	.space	4
	.global	PRINT11
	.align	2
	.type	PRINT11, %object
	.size	PRINT11, 4
PRINT11:
	.space	4
	.global	OFFSET_X
	.data
	.align	2
	.type	OFFSET_X, %object
	.size	OFFSET_X, 4
OFFSET_X:
	.word	10
	.global	OFFSET_Y
	.align	2
	.type	OFFSET_Y, %object
	.size	OFFSET_Y, 4
OFFSET_Y:
	.word	10
	.comm	calc,324,4
	.comm	fd_correct,4,4
	.comm	SAMPLE,4,4
	.comm	PREVIOUS1,4,4
	.comm	PREVIOUS2,4,4
	.comm	pic_x,4,4
	.comm	pic_y,4,4
	.comm	no_bytes,4,4
	.comm	fd_vels,4,4
	.comm	offset_x,4,4
	.comm	offset_y,4,4
	.comm	size_x,4,4
	.comm	size_y,4,4
	.comm	actual_x,4,4
	.comm	actual_y,4,4
	.comm	int_size_x,4,4
	.comm	int_size_y,4,4
	.comm	fdcov1,4,4
	.comm	fdcov2,4,4
	.comm	COUNT_SINGULAR,4,4
	.comm	STEP,4,4
	.comm	PRINT_FLOWS1,4,4
	.comm	PRINT_FLOWS2,4,4
	.comm	MAX_NUMBER_OF_ITERATIONS,4,4
	.comm	SUBSET,4,4
	.comm	time1,4,4
	.comm	time2,4,4
	.comm	time3,4,4
	.comm	time4,4,4
	.comm	temporal_offset,4,4
	.comm	normal_velocities,845000,4
	.comm	full_velocities,845000,4
	.comm	threshold_velocity,845000,4
	.comm	Ucc,845000,4
	.comm	Scc,1690000,4
	.comm	S,1690000,4
	.comm	correct_velocities,845000,4
	.comm	TAU,4,4
	.comm	SsumI,1690000,4
	.comm	Un,1690000,4
	.comm	Sn,3380000,4
	.comm	SccI,1690000,4
	.comm	Ssum,1690000,4
	.comm	SccI_Ucc,845000,4
	.comm	Ua,845000,4
	.comm	fdf1,4,4
	.comm	fdf2,4,4
	.comm	BINARY,4,4
	.comm	CORRECT_VELOCITIES,4,4
	.comm	header_ints,32,4
	.comm	STEP2,4,4
	.comm	FILE_NUMBER,4,4
	.comm	LAPLACIAN,4,4
	.comm	fp,4,4
	.comm	inpic,316875,4
	.comm	fpic,1267500,4
	.comm	inname,100,4
	.comm	filename,100,4
	.comm	path1,100,4
	.comm	path2,100,4
	.comm	outname,100,4
	.section	.rodata
	.align	2
.LC0:
	.ascii	"Usage: %s <filename stem> <central_image> <input da"
	.ascii	"ta path> <output data path> [-C <filename> -B <cols"
	.ascii	"> <rows> -T1 <low> <high> <steps> -T2 <low> <high> "
	.ascii	"<steps>  -P1 -P2 -PR1 -PR2 -PRI -PRL -n <int> -N <i"
	.ascii	"nt> -w <int> -i <int> -NL -s <int> -SUB <int> <int>"
	.ascii	" <int> <int>]\012\000"
	.align	2
.LC1:
	.ascii	"Use 2 images starting with stem.center_image\000"
	.align	2
.LC2:
	.ascii	"<input data path> - directory where images are\000"
	.align	2
.LC3:
	.ascii	"<output data path> - directory where the flow field"
	.ascii	"s are stored\000"
	.align	2
.LC4:
	.ascii	"-C <file> - correct velocity data provided and erro"
	.ascii	"r analysis\000"
	.align	2
.LC5:
	.ascii	"            will be performed on it\000"
	.align	2
.LC6:
	.ascii	"-B <cols> <rows> - Input binary images-specify dime"
	.ascii	"nsions \000"
	.align	2
.LC7:
	.ascii	"                   not necessary for rasterfiles\000"
	.align	2
.LC8:
	.ascii	"-T1 <float> <float> <int> - threshold the step 1 ve"
	.ascii	"locities using the smallest\000"
	.align	2
.LC9:
	.ascii	"              eigenvalue of the step 1covariance ma"
	.ascii	"trix at each position\000"
	.align	2
.LC10:
	.ascii	"-T2 <float> <float> <int> - threshold the step 2 ve"
	.ascii	"locities using the smallest\000"
	.align	2
.LC11:
	.ascii	"              eigenvalue of the step 2 covariance m"
	.ascii	"atrix at each position\000"
	.align	2
.LC12:
	.ascii	"-P1 - do not perform step 1 of the compuatation, in"
	.ascii	"stead read the\000"
	.align	2
.LC13:
	.ascii	"      previously computed step 1 velocities and cov"
	.ascii	"ariance matrices\000"
	.align	2
.LC14:
	.ascii	"-P2 - do not perform step 2 of the compuatation, in"
	.ascii	"stead read the\000"
	.align	2
.LC15:
	.ascii	"      previously computed step 2 velocities and cov"
	.ascii	"ariance matrices\000"
	.align	2
.LC16:
	.ascii	"    If -P2 is used but -P1 is not the program termi"
	.ascii	"nates after step 1\000"
	.align	2
.LC17:
	.ascii	"-PR1 - print thresholded flow fields for step 1\000"
	.align	2
.LC18:
	.ascii	"-PR2 - print thresholded flow fields for step 2\000"
	.align	2
.LC19:
	.ascii	"-PRI - print flow fields after each iteration\000"
	.align	2
.LC20:
	.ascii	"     - These flow fields occupy a LOT of ddisk spac"
	.ascii	"e\000"
	.align	2
.LC21:
	.ascii	"-PRL - print the laplacian images\000"
	.align	2
.LC22:
	.ascii	"-n - neighbourhood size (2n+1) in step1 computation"
	.ascii	" (default 2)\000"
	.align	2
.LC23:
	.ascii	"-N - maximum displacement in pixels (-u,-v <= N <= "
	.ascii	"u,v) (default and maximum value is/can be 4)\000"
	.align	2
.LC24:
	.ascii	"-w - window size (2w+1) for step 2 computation [cur"
	.ascii	"rently must be 1 or 2] (default is 1)\000"
	.align	2
.LC25:
	.ascii	"-i - number of iterations for step 2 (default 10)\000"
	.align	2
.LC26:
	.ascii	"-s <int> - specify the distance of the adjacent lef"
	.ascii	"t and right frames\000"
	.align	2
.LC27:
	.ascii	"           from the central frame - default is 1\000"
	.align	2
.LC28:
	.ascii	"-NL - use the original images as input\000"
	.align	2
.LC29:
	.ascii	"-SUB <x> <y> <size_x> <size_y> - compute velocity f"
	.ascii	"or a subset of the images\000"
	.align	2
.LC30:
	.ascii	"     compute flow for a subarea starting at (x,y) a"
	.ascii	"nd of size (size_x,size_y)\000"
	.align	2
.LC31:
	.ascii	"     Note: you must take offsets into account!\000"
	.align	2
.LC32:
	.ascii	"-C, -B, -T1, -T2, -P1, -P2, -n, -N, -w, -i, -PR1, -"
	.ascii	"PR2, PRI, -PRL, -NL and -SUB can be in any order an"
	.ascii	"d are optional\000"
	.align	2
.LC33:
	.ascii	"%d arguments\012\000"
	.align	2
.LC34:
	.ascii	"Command line:\000"
	.align	2
.LC35:
	.ascii	"%s \000"
	.align	2
.LC36:
	.ascii	"%d\000"
	.align	2
.LC37:
	.ascii	"<input path>: %s\012<output path>: %s\012\000"
	.align	2
.LC38:
	.ascii	"SMALL: %f\012\000"
	.align	2
.LC39:
	.ascii	"unknown\000"
	.align	2
.LC40:
	.ascii	"-S1\000"
	.align	2
.LC41:
	.ascii	"-T1\000"
	.align	2
.LC42:
	.ascii	"%f\000"
	.global	__aeabi_fcmpge
	.align	2
.LC43:
	.ascii	"Error: threshold ranges for step1 are wrong - no th"
	.ascii	"resholding done\000"
	.global	__aeabi_fsub
	.global	__aeabi_i2f
	.global	__aeabi_fdiv
	.align	2
.LC44:
	.ascii	"-T2\000"
	.align	2
.LC45:
	.ascii	"Error: threshold ranges for step2 are wrong - no th"
	.ascii	"resholding done\000"
	.align	2
.LC46:
	.ascii	"-C\000"
	.align	2
.LC47:
	.ascii	"-B\000"
	.align	2
.LC48:
	.ascii	"-s\000"
	.align	2
.LC49:
	.ascii	"-P1\000"
	.align	2
.LC50:
	.ascii	"-NL\000"
	.align	2
.LC51:
	.ascii	"-PR1\000"
	.align	2
.LC52:
	.ascii	"-PR2\000"
	.align	2
.LC53:
	.ascii	"-PRI\000"
	.align	2
.LC54:
	.ascii	"-PRL\000"
	.align	2
.LC55:
	.ascii	"-w\000"
	.align	2
.LC56:
	.ascii	"Fatal error: w must be 1 or 2\000"
	.align	2
.LC57:
	.ascii	"-n\000"
	.align	2
.LC58:
	.ascii	"-N\000"
	.align	2
.LC59:
	.ascii	"-i\000"
	.align	2
.LC60:
	.ascii	"-P2\000"
	.align	2
.LC61:
	.ascii	"-SUB\000"
	.align	2
.LC62:
	.ascii	"Fatal error invalid %dth argument: %s\012\000"
	.global	__aeabi_f2d
	.align	2
.LC63:
	.ascii	"Step 1 velocities are thresholded for tau=%f to %f "
	.ascii	"in increments of %f\012\000"
	.align	2
.LC64:
	.ascii	"Step 2 velocities are thresholded for tau=%f to %f "
	.ascii	"in increments of %f\012\000"
	.align	2
.LC65:
	.ascii	"Velocity Range: -%d <= u,v <= %d\012\000"
	.align	2
.LC66:
	.ascii	"n=%d neighbourhood size for SSD surface calculation"
	.ascii	"\012\000"
	.align	2
.LC67:
	.ascii	"w=%d window size for step 2\012\000"
	.align	2
.LC68:
	.ascii	"Left image: %d\012\000"
	.align	2
.LC69:
	.ascii	"Central image: %d\012\000"
	.align	2
.LC70:
	.ascii	"Right image: %d\012\000"
	.align	2
.LC71:
	.ascii	"%s/singh.step1.%sF-n-%d-w-%d-N-%d\000"
	.align	2
.LC72:
	.ascii	"%s/singh.step1.%sF-n-%d-w-%d-N-%d-s-%d\000"
	.align	2
.LC73:
	.ascii	"Error creating file %s.\012\000"
	.align	2
.LC74:
	.ascii	"File %s opened for output\012\000"
	.align	2
.LC75:
	.ascii	"%s/singh.step1.%sC-n-%d-w-%d-N-%d\000"
	.align	2
.LC76:
	.ascii	"%s/singh.step1.%sC-n-%d-w-%d-N-%d-s-%d\000"
	.align	2
.LC77:
	.ascii	"Fatal error: file %s does not exit\012\000"
	.align	2
.LC78:
	.ascii	"File %s opened for input\012\000"
	.align	2
.LC79:
	.ascii	"Fatal error: file %s does not exist\012\000"
	.align	2
.LC80:
	.ascii	"%s/singh.step2.%sF-n-%d-w-%d-N-%d\000"
	.align	2
.LC81:
	.ascii	"%s/singh.step2.%sF-n-%d-w-%d-N-%d-s-%d\000"
	.align	2
.LC82:
	.ascii	"%s/singh.step2.%sC-n-%d-w-%d-N-%d\000"
	.align	2
.LC83:
	.ascii	"%s/singh.step2.%sC-n-%d-w-%d-N-%d-s-%d\000"
	.global	__aeabi_fcmpeq
	.align	2
.LC84:
	.ascii	"Fatal error: something wrong with correct velocity "
	.ascii	"data\000"
	.align	2
.LC85:
	.ascii	"Actual y: %f Actual x: %f\012\000"
	.align	2
.LC86:
	.ascii	"Size y: %f Size x: %f\012\000"
	.align	2
.LC87:
	.ascii	"Offset y: %f Offset x: %f\012\000"
	.global	__aeabi_f2iz
	.align	2
.LC88:
	.ascii	"\012File %s opened and read\012\000"
	.align	2
.LC89:
	.ascii	"Size of correct velocity data: %d %d --- \000"
	.align	2
.LC90:
	.ascii	"%d bytes read\012\000"
	.align	2
.LC91:
	.ascii	"%s.%stime-n-%d-w-%d-s-%d\000"
	.align	2
.LC92:
	.ascii	"%s.%stime-n-%d-w-%d\000"
	.align	2
.LC93:
	.ascii	"w\000"
	.align	2
.LC94:
	.ascii	"The time data is in file: %s\012\000"
	.align	2
.LC95:
	.ascii	"Start time: %ld\012\000"
	.align	2
.LC96:
	.ascii	"%s/%s\000"
	.align	2
.LC97:
	.ascii	"Fatal error: subarea too small - must be at least 6"
	.ascii	"*6\000"
	.align	2
.LC98:
	.ascii	"Subarea specified: %d*%d\012\000"
	.align	2
.LC99:
	.ascii	"Fatal error: subarea parameters incorrect\000"
	.align	2
.LC100:
	.ascii	"Starting Coordinates: %d,%d  \000"
	.align	2
.LC101:
	.ascii	"Size: %d * %d\012\000"
	.align	2
.LC102:
	.ascii	"Too big by %d,%d\012\000"
	.align	2
.LC103:
	.ascii	"\012\012Subset of image sequence used\000"
	.align	2
.LC104:
	.ascii	"\012Outputing flow data\000"
	.align	2
.LC105:
	.ascii	"Full\000"
	.align	2
.LC106:
	.ascii	"\012Step 1:\000"
	.align	2
.LC107:
	.ascii	"\012Error Analysis Performed\000"
	.align	2
.LC108:
	.ascii	"Average Error: %f Standard Deviation: %f Density: %"
	.ascii	"f\012\000"
	.align	2
.LC109:
	.ascii	"Minimum Angle Error: %f Maximum Angle Error: %f\012"
	.ascii	"\000"
	.align	2
.LC110:
	.ascii	"\012-----------------------------------------------"
	.ascii	"------\000"
	.align	2
.LC111:
	.ascii	"Step 1 Thresholding\000"
	.align	2
.LC112:
	.ascii	"\012Threshold: %f\012\000"
	.align	2
.LC113:
	.ascii	"%s/singh.step1.%sF-tau-%4.2f\000"
	.global	__aeabi_fadd
	.global	__aeabi_fcmple
	.align	2
.LC114:
	.ascii	"\012Outputing flow data for step 2\000"
	.align	2
.LC115:
	.ascii	"\012Step 2:\000"
	.align	2
.LC116:
	.ascii	"Step 2 Thresholding\000"
	.align	2
.LC117:
	.ascii	"%s/singh.step2.%sF-tau-%4.2f\000"
	.align	2
.LC118:
	.ascii	"\012Processing Finished\000"
	.align	2
.LC119:
	.ascii	"\012End time: %ld\012\000"
	.align	2
.LC120:
	.ascii	"End Time in seconds: %ld\012\000"
	.global	__aeabi_i2d
	.global	__aeabi_ddiv
	.align	2
.LC121:
	.ascii	"End Time in minutes: %f\012\000"
	.align	2
.LC122:
	.ascii	"End Time in hours: %f\012\000"
	.align	2
.LC123:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 312
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #344
	str	r0, [fp, #-328]
	str	r1, [fp, #-332]
	ldr	r3, .L100
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	ldr	r3, .L100+4
	mvn	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+8
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+12
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-328]
	cmp	r3, #6
	ble	.L2
	ldr	r3, [fp, #-328]
	cmp	r3, #36
	ble	.L3
.L2:
	ldr	r3, [fp, #-332]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L100+16
	bl	printf
	ldr	r0, .L100+20
	bl	puts
	ldr	r0, .L100+24
	bl	puts
	ldr	r0, .L100+28
	bl	puts
	ldr	r0, .L100+32
	bl	puts
	ldr	r0, .L100+36
	bl	puts
	ldr	r0, .L100+40
	bl	puts
	ldr	r0, .L100+44
	bl	puts
	ldr	r0, .L100+48
	bl	puts
	ldr	r0, .L100+52
	bl	puts
	ldr	r0, .L100+56
	bl	puts
	ldr	r0, .L100+60
	bl	puts
	ldr	r0, .L100+64
	bl	puts
	ldr	r0, .L100+68
	bl	puts
	ldr	r0, .L100+72
	bl	puts
	ldr	r0, .L100+76
	bl	puts
	ldr	r0, .L100+80
	bl	puts
	ldr	r0, .L100+84
	bl	puts
	ldr	r0, .L100+88
	bl	puts
	ldr	r0, .L100+92
	bl	puts
	ldr	r0, .L100+96
	bl	puts
	ldr	r0, .L100+100
	bl	puts
	ldr	r0, .L100+104
	bl	puts
	ldr	r0, .L100+108
	bl	puts
	ldr	r0, .L100+112
	bl	puts
	ldr	r0, .L100+116
	bl	puts
	ldr	r0, .L100+120
	bl	puts
	ldr	r0, .L100+124
	bl	puts
	ldr	r0, .L100+128
	bl	puts
	ldr	r0, .L100+132
	bl	puts
	ldr	r0, .L100+136
	bl	puts
	ldr	r0, .L100+140
	bl	puts
	ldr	r0, .L100+144
	bl	puts
	mov	r0, #1
	bl	exit
.L3:
	ldr	r1, [fp, #-328]
	ldr	r0, .L100+148
	bl	printf
	ldr	r0, .L100+152
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-256]
	b	.L4
.L5:
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L100+156
	bl	printf
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
.L4:
	ldr	r2, [fp, #-256]
	ldr	r3, [fp, #-328]
	cmp	r2, r3
	blt	.L5
	mov	r0, #10
	bl	putchar
	ldr	r3, [fp, #-332]
	add	r3, r3, #8
	ldr	r3, [r3]
	sub	r2, fp, #316
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-332]
	add	r3, r3, #12
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L100+516
	bl	strcpy
	ldr	r3, [fp, #-332]
	add	r3, r3, #16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L100+384
	bl	strcpy
	ldr	r2, .L100+384
	ldr	r1, .L100+516
	ldr	r0, .L100+164
	bl	printf
	ldr	r2, .L100+168
	ldr	r3, .L100+172
	ldr	r0, .L100+176
	bl	printf
	ldr	r3, .L100+180
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+184
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+632
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L100+600
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L100+596
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+348
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+580
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L100+188
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+192
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+196
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+584
	mov	r2, #0
	str	r2, [r3]
	sub	r3, fp, #224
	ldr	r2, .L100+624
	ldm	r2, {r0, r1}
	stm	r3, {r0, r1}
	mov	r3, #6
	str	r3, [fp, #-256]
	mov	r3, #0
	str	r3, [fp, #-248]
	ldr	r3, [fp, #-248]
	str	r3, [fp, #-252]
	ldr	r3, .L100+200
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #1
	str	r3, [fp, #-304]
	mov	r3, #2
	str	r3, [fp, #-324]
	mov	r3, #4
	str	r3, [fp, #-320]
	ldr	r3, .L100+204
	mov	r2, #10
	str	r2, [r3]
	b	.L6
.L33:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+208
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L7
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L100+632
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, .L100+200
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
	b	.L8
.L7:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+212
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L9
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #280
	ldr	r1, .L100+216
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #276
	ldr	r1, .L100+216
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #2
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #312
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	mov	r3, #1
	str	r3, [fp, #-252]
	ldr	r3, [fp, #-280]	@ float
	ldr	r2, [fp, #-276]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L10
	ldr	r3, [fp, #-312]
	cmp	r3, #0
	bgt	.L11
.L10:
	ldr	r0, .L100+220
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-252]
	b	.L12
.L11:
	ldr	r3, [fp, #-276]	@ float
	ldr	r2, [fp, #-280]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-312]
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-244]	@ float
.L12:
	ldr	r3, [fp, #-256]
	add	r3, r3, #3
	str	r3, [fp, #-256]
	b	.L8
.L9:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+224
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L13
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #272
	ldr	r1, .L100+216
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #268
	ldr	r1, .L100+216
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #2
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #308
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	mov	r3, #1
	str	r3, [fp, #-248]
	ldr	r3, [fp, #-272]	@ float
	ldr	r2, [fp, #-268]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L14
	ldr	r3, [fp, #-308]
	cmp	r3, #0
	bgt	.L15
.L14:
	ldr	r0, .L100+228
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-248]
	b	.L16
.L15:
	ldr	r3, [fp, #-268]	@ float
	ldr	r2, [fp, #-272]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-308]
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-240]	@ float
.L16:
	ldr	r3, [fp, #-256]
	add	r3, r3, #3
	str	r3, [fp, #-256]
	b	.L8
.L13:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+232
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L17
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r2, [r3]
	sub	r3, fp, #224
	mov	r1, r2
	mov	r0, r3
	bl	strcpy
	ldr	r3, .L100+184
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
	b	.L8
.L17:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+236
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L18
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L100+668
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L100+664
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, .L100+180
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, [fp, #-256]
	add	r3, r3, #2
	str	r3, [fp, #-256]
	b	.L8
.L18:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+240
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L19
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L100+600
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
	b	.L8
.L19:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+244
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L20
	ldr	r3, .L100+596
	mov	r2, #1
	str	r2, [r3]
	b	.L8
.L20:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+248
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L21
	ldr	r3, .L100+580
	mov	r2, #0
	str	r2, [r3]
	b	.L8
.L21:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+252
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L22
	ldr	r3, .L100+188
	mov	r2, #1
	str	r2, [r3]
	b	.L8
.L22:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+256
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L23
	ldr	r3, .L100+192
	mov	r2, #1
	str	r2, [r3]
	b	.L8
.L23:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+260
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L24
	ldr	r3, .L100+196
	mov	r2, #1
	str	r2, [r3]
	b	.L8
.L24:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+264
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L25
	ldr	r3, .L100+584
	mov	r2, #1
	str	r2, [r3]
	b	.L8
.L25:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+268
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L26
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #304
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-304]
	cmp	r3, #1
	beq	.L27
	ldr	r3, [fp, #-304]
	cmp	r3, #2
	beq	.L27
	ldr	r0, .L100+272
	bl	puts
	mov	r0, #1
	bl	exit
.L27:
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
	b	.L8
.L26:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+276
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L28
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #324
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
	b	.L8
.L28:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+280
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L29
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #320
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
	b	.L8
.L29:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+284
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L30
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L100+204
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
	b	.L8
.L30:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+288
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L31
	ldr	r3, .L100+348
	mov	r2, #1
	str	r2, [r3]
	b	.L8
.L31:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L100+292
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L32
	ldr	r3, [fp, #-256]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L100+552
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L100+560
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #2
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L100+568
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, [fp, #-256]
	add	r3, r3, #3
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L100+572
	ldr	r1, .L100+160
	mov	r0, r3
	bl	__isoc99_sscanf
	ldr	r3, .L100+12
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, [fp, #-256]
	add	r3, r3, #4
	str	r3, [fp, #-256]
	b	.L8
.L32:
	ldr	r3, [fp, #-256]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-332]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r1, [fp, #-256]
	ldr	r0, .L100+296
	bl	printf
	mov	r0, #1
	bl	exit
.L8:
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
.L6:
	ldr	r2, [fp, #-256]
	ldr	r3, [fp, #-328]
	cmp	r2, r3
	ble	.L33
	ldr	r3, .L100+596
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L34
	ldr	r3, .L100+348
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L34
	ldr	r3, .L100+200
	mov	r2, #0
	str	r2, [r3]
.L34:
	ldr	r3, [fp, #-252]
	cmp	r3, #0
	beq	.L35
	ldr	r3, [fp, #-280]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-276]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-244]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L100+300
	bl	printf
.L35:
	ldr	r3, [fp, #-248]
	cmp	r3, #0
	beq	.L36
	ldr	r3, [fp, #-272]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-268]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-240]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L100+304
	bl	printf
.L36:
	ldr	r3, [fp, #-320]
	ldr	r2, [fp, #-320]
	mov	r1, r3
	ldr	r0, .L100+308
	bl	printf
	ldr	r3, [fp, #-324]
	mov	r1, r3
	ldr	r0, .L100+312
	bl	printf
	ldr	r3, [fp, #-304]
	mov	r1, r3
	ldr	r0, .L100+316
	bl	printf
	ldr	r2, [fp, #-316]
	ldr	r3, .L100+600
	ldr	r3, [r3]
	sub	r3, r2, r3
	mov	r1, r3
	ldr	r0, .L100+320
	bl	printf
	ldr	r3, [fp, #-316]
	mov	r1, r3
	ldr	r0, .L100+324
	bl	printf
	ldr	r2, [fp, #-316]
	ldr	r3, .L100+600
	ldr	r3, [r3]
	add	r3, r2, r3
	mov	r1, r3
	ldr	r0, .L100+328
	bl	printf
	ldr	r3, .L100+596
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L37
	ldr	r3, .L100+600
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L38
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	ldr	r2, .L100+384
	ldr	r1, .L100+332
	ldr	r0, .L100+400
	bl	sprintf
	b	.L39
.L38:
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	ldr	r0, .L100+600
	ldr	r0, [r0]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, .L100+384
	ldr	r1, .L100+336
	ldr	r0, .L100+400
	bl	sprintf
.L39:
	ldr	r1, .L100+352
	ldr	r0, .L100+400
	bl	creat
	mov	r3, r0
	ldr	r2, .L100+616
	str	r3, [r2]
	ldr	r3, .L100+616
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L40
	ldr	r1, .L100+400
	ldr	r0, .L100+356
	bl	printf
	mov	r0, #1
	bl	exit
.L40:
	ldr	r1, .L100+400
	ldr	r0, .L100+360
	bl	printf
	ldr	r3, .L100+600
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L41
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	ldr	r2, .L100+384
	ldr	r1, .L100+340
	ldr	r0, .L100+400
	bl	sprintf
	b	.L42
.L41:
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	ldr	r0, .L100+600
	ldr	r0, [r0]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, .L100+384
	ldr	r1, .L100+344
	ldr	r0, .L100+400
	bl	sprintf
.L42:
	ldr	r1, .L100+352
	ldr	r0, .L100+400
	bl	creat
	mov	r3, r0
	ldr	r2, .L100+620
	str	r3, [r2]
	ldr	r3, .L100+620
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L43
	ldr	r1, .L100+400
	ldr	r0, .L100+356
	bl	printf
	mov	r0, #1
	bl	exit
.L43:
	ldr	r1, .L100+400
	ldr	r0, .L100+360
	bl	printf
	b	.L44
.L37:
	ldr	r3, .L100+600
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L45
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	ldr	r2, .L100+384
	ldr	r1, .L100+332
	ldr	r0, .L100+400
	bl	sprintf
	b	.L46
.L101:
	.align	2
.L100:
	.word	.LC123
	.word	FILE_NUMBER
	.word	COUNT_SINGULAR
	.word	SUBSET
	.word	.LC0
	.word	.LC1
	.word	.LC2
	.word	.LC3
	.word	.LC4
	.word	.LC5
	.word	.LC6
	.word	.LC7
	.word	.LC8
	.word	.LC9
	.word	.LC10
	.word	.LC11
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	.LC15
	.word	.LC16
	.word	.LC17
	.word	.LC18
	.word	.LC19
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.word	.LC23
	.word	.LC24
	.word	.LC25
	.word	.LC26
	.word	.LC27
	.word	.LC28
	.word	.LC29
	.word	.LC30
	.word	.LC31
	.word	.LC32
	.word	.LC33
	.word	.LC34
	.word	.LC35
	.word	.LC36
	.word	.LC37
	.word	-1717986918
	.word	1069128089
	.word	.LC38
	.word	BINARY
	.word	CORRECT_VELOCITIES
	.word	PRINT_FLOWS1
	.word	PRINT_FLOWS2
	.word	PRINT_ITERATIONS
	.word	STEP2
	.word	MAX_NUMBER_OF_ITERATIONS
	.word	.LC40
	.word	.LC41
	.word	.LC42
	.word	.LC43
	.word	.LC44
	.word	.LC45
	.word	.LC46
	.word	.LC47
	.word	.LC48
	.word	.LC49
	.word	.LC50
	.word	.LC51
	.word	.LC52
	.word	.LC53
	.word	.LC54
	.word	.LC55
	.word	.LC56
	.word	.LC57
	.word	.LC58
	.word	.LC59
	.word	.LC60
	.word	.LC61
	.word	.LC62
	.word	.LC63
	.word	.LC64
	.word	.LC65
	.word	.LC66
	.word	.LC67
	.word	.LC68
	.word	.LC69
	.word	.LC70
	.word	.LC71
	.word	.LC72
	.word	.LC75
	.word	.LC76
	.word	PREVIOUS2
	.word	493
	.word	.LC73
	.word	.LC74
	.word	.LC80
	.word	.LC81
	.word	fdf2
	.word	.LC77
	.word	.LC82
	.word	path2
	.word	.LC83
	.word	fdcov2
	.word	.LC79
	.word	outname
	.word	.LC78
	.word	.LC84
	.word	actual_y
	.word	actual_x
	.word	.LC85
	.word	.LC86
	.word	offset_y
	.word	offset_x
	.word	.LC87
	.word	size_x
	.word	size_y
	.word	fd_correct
	.word	.LC88
	.word	int_size_x
	.word	int_size_y
	.word	.LC89
	.word	no_bytes
	.word	.LC90
	.word	temporal_offset
	.word	.LC91
	.word	.LC92
	.word	.LC93
	.word	filename
	.word	.LC94
	.word	.LC95
	.word	fp
	.word	time1
	.word	time2
	.word	path1
	.word	.LC96
	.word	SUBSET
	.word	.LC97
	.word	.LC98
	.word	.LC99
	.word	.LC102
	.word	.LC103
	.word	OFFSET_X
	.word	EXTRA_OFFSET_X
	.word	OFFSET_Y
	.word	EXTRA_OFFSET_Y
	.word	.LC100
	.word	CUT_X
	.word	CUT_Y
	.word	.LC101
	.word	LAPLACIAN
	.word	PRINT_LAPLACIAN
	.word	header_ints
	.word	inpic
	.word	PREVIOUS1
	.word	STEP
	.word	fpic
	.word	.LC104
	.word	.LC105
	.word	fdf1
	.word	fdcov1
	.word	.LC39
	.word	.LC106
	.word	SAMPLE
	.word	correct_velocities
	.word	.LC107
	.word	.LC108
	.word	.LC109
	.word	stdout
	.word	.LC111
	.word	.LC110
	.word	pic_x
	.word	pic_y
	.word	threshold_velocity
	.word	Scc
	.word	Ucc
.L45:
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	ldr	r0, .L100+600
	ldr	r0, [r0]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, .L100+384
	ldr	r1, .L100+336
	ldr	r0, .L100+400
	bl	sprintf
.L46:
	mov	r1, #0
	ldr	r0, .L100+400
	bl	open
	mov	r3, r0
	ldr	r2, .L100+616
	str	r3, [r2]
	ldr	r3, .L100+616
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L47
	ldr	r1, .L100+400
	ldr	r0, .L100+376
	bl	printf
	mov	r0, #1
	bl	exit
.L47:
	ldr	r1, .L100+400
	ldr	r0, .L100+404
	bl	printf
	ldr	r3, .L100+600
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L48
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	ldr	r2, .L100+384
	ldr	r1, .L100+340
	ldr	r0, .L100+400
	bl	sprintf
	b	.L49
.L48:
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	ldr	r0, .L100+600
	ldr	r0, [r0]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, .L100+384
	ldr	r1, .L100+344
	ldr	r0, .L100+400
	bl	sprintf
.L49:
	mov	r1, #0
	ldr	r0, .L100+400
	bl	open
	mov	r3, r0
	ldr	r2, .L100+620
	str	r3, [r2]
	ldr	r3, .L100+620
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L50
	ldr	r1, .L100+400
	ldr	r0, .L100+396
	bl	printf
	mov	r0, #1
	bl	exit
.L50:
	ldr	r1, .L100+400
	ldr	r0, .L100+404
	bl	printf
.L44:
	ldr	r3, .L100+348
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L51
	ldr	r3, .L100+600
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L52
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	ldr	r2, .L100+384
	ldr	r1, .L100+364
	ldr	r0, .L100+400
	bl	sprintf
	b	.L53
.L52:
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	ldr	r0, .L100+600
	ldr	r0, [r0]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, .L100+384
	ldr	r1, .L100+368
	ldr	r0, .L100+400
	bl	sprintf
.L53:
	ldr	r1, .L100+352
	ldr	r0, .L100+400
	bl	creat
	mov	r3, r0
	ldr	r2, .L100+372
	str	r3, [r2]
	ldr	r3, .L100+372
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L54
	ldr	r1, .L100+400
	ldr	r0, .L100+356
	bl	printf
	mov	r0, #1
	bl	exit
.L54:
	ldr	r1, .L100+400
	ldr	r0, .L100+360
	bl	printf
	ldr	r3, .L100+600
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L55
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	ldr	r2, .L100+384
	ldr	r1, .L100+380
	ldr	r0, .L100+400
	bl	sprintf
	b	.L56
.L55:
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	ldr	r0, .L100+600
	ldr	r0, [r0]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, .L100+384
	ldr	r1, .L100+388
	ldr	r0, .L100+400
	bl	sprintf
.L56:
	ldr	r1, .L100+352
	ldr	r0, .L100+400
	bl	creat
	mov	r3, r0
	ldr	r2, .L100+392
	str	r3, [r2]
	ldr	r3, .L100+392
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L57
	ldr	r1, .L100+400
	ldr	r0, .L100+356
	bl	printf
	mov	r0, #1
	bl	exit
.L57:
	ldr	r1, .L100+400
	ldr	r0, .L100+360
	bl	printf
	ldr	r3, .L100+652
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	b	.L58
.L51:
	ldr	r3, .L100+600
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L59
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	ldr	r2, .L100+384
	ldr	r1, .L100+364
	ldr	r0, .L100+400
	bl	sprintf
	b	.L60
.L59:
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	ldr	r0, .L100+600
	ldr	r0, [r0]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, .L100+384
	ldr	r1, .L100+368
	ldr	r0, .L100+400
	bl	sprintf
.L60:
	mov	r1, #0
	ldr	r0, .L100+400
	bl	open
	mov	r3, r0
	ldr	r2, .L100+372
	str	r3, [r2]
	ldr	r3, .L100+372
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L61
	ldr	r1, .L100+400
	ldr	r0, .L100+376
	bl	printf
	mov	r0, #1
	bl	exit
.L61:
	ldr	r1, .L100+400
	ldr	r0, .L100+404
	bl	printf
	ldr	r3, .L100+600
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L62
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	ldr	r2, .L100+384
	ldr	r1, .L100+380
	ldr	r0, .L100+400
	bl	sprintf
	b	.L63
.L62:
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, [fp, #-320]
	ldr	r0, .L100+600
	ldr	r0, [r0]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, .L100+384
	ldr	r1, .L100+388
	ldr	r0, .L100+400
	bl	sprintf
.L63:
	mov	r1, #0
	ldr	r0, .L100+400
	bl	open
	mov	r3, r0
	ldr	r2, .L100+392
	str	r3, [r2]
	ldr	r3, .L100+392
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L64
	ldr	r1, .L100+400
	ldr	r0, .L100+396
	bl	printf
	mov	r0, #1
	bl	exit
.L64:
	ldr	r1, .L100+400
	ldr	r0, .L100+404
	bl	printf
.L58:
	sub	r3, fp, #224
	mov	r1, r3
	ldr	r0, .L100+624
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L65
	sub	r3, fp, #224
	mov	r1, #0
	mov	r0, r3
	bl	open
	mov	r3, r0
	ldr	r2, .L100+448
	str	r3, [r2]
	ldr	r3, .L100+468
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L100+448
	ldr	r3, [r3]
	mov	r2, #4
	ldr	r1, .L100+416
	mov	r0, r3
	bl	read
	mov	r2, r0
	ldr	r3, .L100+468
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L100+468
	str	r3, [r2]
	ldr	r3, .L100+448
	ldr	r3, [r3]
	mov	r2, #4
	ldr	r1, .L100+412
	mov	r0, r3
	bl	read
	mov	r2, r0
	ldr	r3, .L100+468
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L100+468
	str	r3, [r2]
	ldr	r3, .L100+448
	ldr	r3, [r3]
	mov	r2, #4
	ldr	r1, .L100+440
	mov	r0, r3
	bl	read
	mov	r2, r0
	ldr	r3, .L100+468
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L100+468
	str	r3, [r2]
	ldr	r3, .L100+448
	ldr	r3, [r3]
	mov	r2, #4
	ldr	r1, .L100+444
	mov	r0, r3
	bl	read
	mov	r2, r0
	ldr	r3, .L100+468
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L100+468
	str	r3, [r2]
	ldr	r3, .L100+448
	ldr	r3, [r3]
	mov	r2, #4
	ldr	r1, .L100+432
	mov	r0, r3
	bl	read
	mov	r2, r0
	ldr	r3, .L100+468
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L100+468
	str	r3, [r2]
	ldr	r3, .L100+448
	ldr	r3, [r3]
	mov	r2, #4
	ldr	r1, .L100+428
	mov	r0, r3
	bl	read
	mov	r2, r0
	ldr	r3, .L100+468
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L100+468
	str	r3, [r2]
	ldr	r3, .L100+432
	ldr	r3, [r3]	@ float
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L66
	ldr	r3, .L100+428
	ldr	r3, [r3]	@ float
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L66
	ldr	r3, .L100+416
	ldr	r3, [r3]	@ float
	ldr	r2, .L100+440
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L66
	ldr	r3, .L100+412
	ldr	r3, [r3]	@ float
	ldr	r2, .L100+444
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L99
.L66:
	ldr	r0, .L100+408
	bl	puts
	ldr	r3, .L100+412
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L100+416
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L100+420
	bl	printf
	ldr	r3, .L100+444
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L100+440
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L100+424
	bl	printf
	ldr	r3, .L100+428
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L100+432
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L100+436
	bl	printf
	mov	r0, #1
	bl	exit
.L99:
	ldr	r3, .L100+440
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2iz
	mov	r3, r0
	ldr	r2, .L100+456
	str	r3, [r2]
	ldr	r3, .L100+444
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2iz
	mov	r3, r0
	ldr	r2, .L100+460
	str	r3, [r2]
	mov	r3, #0
	str	r3, [fp, #-256]
	b	.L69
.L70:
	ldr	r3, .L100+448
	ldr	r0, [r3]
	ldr	r2, [fp, #-256]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L100+636
	add	r1, r3, r2
	ldr	r3, .L100+456
	ldr	r3, [r3]
	lsl	r3, r3, #3
	mov	r2, r3
	bl	read
	mov	r2, r0
	ldr	r3, .L100+468
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L100+468
	str	r3, [r2]
	ldr	r3, [fp, #-256]
	add	r3, r3, #1
	str	r3, [fp, #-256]
.L69:
	ldr	r3, .L100+460
	ldr	r3, [r3]
	ldr	r2, [fp, #-256]
	cmp	r2, r3
	blt	.L70
	sub	r3, fp, #224
	mov	r1, r3
	ldr	r0, .L100+452
	bl	printf
	ldr	r3, .L100+456
	ldr	r3, [r3]
	ldr	r2, .L100+460
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L100+464
	bl	printf
	ldr	r3, .L100+468
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L100+472
	bl	printf
	ldr	r3, .L100+652
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L65:
	ldr	r3, .L100+476
	mov	r2, #100
	str	r2, [r3]
	ldr	r3, .L100+600
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L71
	ldr	r3, [fp, #-332]
	ldr	r0, [r3]
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	ldr	r1, .L100+600
	ldr	r1, [r1]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, ip
	mov	r2, r0
	ldr	r1, .L100+480
	ldr	r0, .L100+492
	bl	sprintf
	b	.L72
.L71:
	ldr	r3, [fp, #-332]
	ldr	r1, [r3]
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-304]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	mov	r2, r1
	ldr	r1, .L100+484
	ldr	r0, .L100+492
	bl	sprintf
.L72:
	ldr	r1, .L100+488
	ldr	r0, .L100+492
	bl	fopen
	mov	r3, r0
	ldr	r2, .L100+504
	str	r3, [r2]
	ldr	r3, .L100+504
	ldr	r3, [r3]
	ldr	r2, .L100+492
	ldr	r1, .L100+496
	mov	r0, r3
	bl	fprintf
	mov	r0, #0
	bl	time
	mov	r3, r0
	ldr	r2, .L100+508
	str	r3, [r2]
	ldr	r3, .L100+504
	ldr	r3, [r3]
	ldr	r2, .L100+508
	ldr	r2, [r2]
	ldr	r1, .L100+500
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L100+504
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	ldr	r3, .L100+508
	ldr	r3, [r3]
	ldr	r2, .L100+512
	str	r3, [r2]
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r3, [r3]
	sub	r0, fp, #124
	ldr	r2, .L100+516
	ldr	r1, .L100+520
	bl	sprintf
	ldr	r3, [fp, #-316]
	ldr	r2, .L100+600
	ldr	r2, [r2]
	sub	r0, fp, #124
	str	r2, [sp, #8]
	str	r3, [sp, #4]
	ldr	r3, .L100+588
	str	r3, [sp]
	ldr	r3, .L100+668
	ldr	r2, .L100+664
	ldr	r1, .L100+592
	bl	read_image_files
	ldr	r3, .L100+664
	ldr	r3, [r3]
	str	r3, [fp, #-236]
	ldr	r3, .L100+668
	ldr	r3, [r3]
	str	r3, [fp, #-232]
	ldr	r3, .L100+524
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L73
	mov	r0, #10
	bl	putchar
	ldr	r3, .L100+552
	ldr	r2, [r3]
	ldr	r3, .L100+568
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, .L100+548
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L100+664
	str	r3, [r2]
	ldr	r3, .L100+560
	ldr	r2, [r3]
	ldr	r3, .L100+572
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, .L100+556
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L100+668
	str	r3, [r2]
	ldr	r3, .L100+552
	ldr	r2, [r3]
	ldr	r3, .L100+548
	ldr	r3, [r3]
	sub	r3, r2, r3
	ldr	r2, .L100+552
	str	r3, [r2]
	ldr	r3, .L100+560
	ldr	r2, [r3]
	ldr	r3, .L100+556
	ldr	r3, [r3]
	sub	r3, r2, r3
	ldr	r2, .L100+560
	str	r3, [r2]
	ldr	r3, .L100+568
	ldr	r3, [r3]
	cmp	r3, #5
	ble	.L74
	ldr	r3, .L100+572
	ldr	r3, [r3]
	cmp	r3, #5
	bgt	.L75
.L74:
	ldr	r0, .L100+528
	bl	puts
	ldr	r3, .L100+568
	ldr	r3, [r3]
	ldr	r2, .L100+572
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L100+532
	bl	printf
	mov	r0, #1
	bl	exit
.L75:
	ldr	r3, .L100+568
	ldr	r2, [r3]
	ldr	r3, .L100+548
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, .L100+552
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, .L100+548
	ldr	r3, [r3]
	ldr	r1, [fp, #-236]
	sub	r3, r1, r3
	cmp	r2, r3
	bgt	.L76
	ldr	r3, .L100+572
	ldr	r2, [r3]
	ldr	r3, .L100+556
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, .L100+560
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, .L100+556
	ldr	r3, [r3]
	ldr	r1, [fp, #-232]
	sub	r3, r1, r3
	cmp	r2, r3
	ble	.L77
.L76:
	ldr	r0, .L100+536
	bl	puts
	ldr	r3, .L100+548
	ldr	r2, [r3]
	ldr	r3, .L100+552
	ldr	r3, [r3]
	add	r1, r2, r3
	ldr	r3, .L100+556
	ldr	r2, [r3]
	ldr	r3, .L100+560
	ldr	r3, [r3]
	add	r3, r2, r3
	mov	r2, r3
	ldr	r0, .L100+564
	bl	printf
	ldr	r3, .L100+568
	ldr	r3, [r3]
	ldr	r2, .L100+572
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L100+576
	bl	printf
	ldr	r3, .L100+568
	ldr	r2, [r3]
	ldr	r3, .L100+552
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, .L100+548
	ldr	r3, [r3]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, [fp, #-236]
	sub	r1, r2, r3
	ldr	r3, .L100+572
	ldr	r2, [r3]
	ldr	r3, .L100+560
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, .L100+556
	ldr	r3, [r3]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, [fp, #-232]
	sub	r3, r2, r3
	mov	r2, r3
	ldr	r0, .L100+540
	bl	printf
	mov	r0, #1
	bl	exit
.L77:
	ldr	r0, .L100+544
	bl	puts
	ldr	r3, .L100+548
	ldr	r2, [r3]
	ldr	r3, .L100+552
	ldr	r3, [r3]
	add	r1, r2, r3
	ldr	r3, .L100+556
	ldr	r2, [r3]
	ldr	r3, .L100+560
	ldr	r3, [r3]
	add	r3, r2, r3
	mov	r2, r3
	ldr	r0, .L100+564
	bl	printf
	ldr	r3, .L100+568
	ldr	r3, [r3]
	ldr	r2, .L100+572
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L100+576
	bl	printf
.L73:
	ldr	r3, .L100+580
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L78
	ldr	r3, .L100+596
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L78
	ldr	r3, .L100+664
	ldr	r2, [r3]
	ldr	r3, .L100+668
	ldr	r3, [r3]
	str	r3, [sp]
	mov	r3, r2
	mov	r2, #1065353216
	ldr	r1, .L100+604
	ldr	r0, .L100+592
	bl	laplacian
	ldr	r3, .L100+584
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L80
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r0, [r3]
	ldr	r3, .L100+664
	ldr	r1, [r3]
	ldr	r3, .L100+668
	ldr	ip, [r3]
	ldr	r3, [fp, #-316]
	ldr	r2, .L100+600
	ldr	r2, [r2]
	str	r2, [sp, #8]
	str	r3, [sp, #4]
	ldr	r3, .L100+588
	str	r3, [sp]
	mov	r3, ip
	mov	r2, r1
	ldr	r1, .L100+592
	bl	write_image_files
	b	.L80
.L78:
	ldr	r3, .L100+664
	ldr	r2, [r3]
	ldr	r3, .L100+668
	ldr	r3, [r3]
	ldr	r1, .L100+604
	ldr	r0, .L100+592
	bl	make_float
.L80:
	ldr	r3, .L100+596
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L81
	ldr	r3, .L100+664
	ldr	ip, [r3]
	ldr	r3, .L100+668
	ldr	lr, [r3]
	ldr	r3, [fp, #-324]
	ldr	r2, [fp, #-320]
	ldr	r1, .L100+600
	ldr	r1, [r1]
	ldr	r0, [fp, #-232]
	str	r0, [sp, #20]
	ldr	r0, [fp, #-236]
	str	r0, [sp, #16]
	str	r1, [sp, #12]
	str	r2, [sp, #8]
	str	r3, [sp, #4]
	ldr	r3, .L100+676
	str	r3, [sp]
	ldr	r3, .L100+680
	mov	r2, lr
	mov	r1, ip
	ldr	r0, .L100+604
	bl	comp1
	ldr	r0, .L100+608
	bl	puts
	ldr	r3, .L100+616
	ldr	r0, [r3]
	ldr	r3, .L100+632
	ldr	r3, [r3]
	str	r3, [sp, #4]
	ldr	r3, .L100+612
	str	r3, [sp]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L100+680
	bl	output_velocities
	ldr	r3, .L100+620
	ldr	r0, [r3]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L100+676
	bl	output_covariances
	b	.L82
.L81:
	ldr	r3, .L100+616
	ldr	r0, [r3]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L100+680
	bl	input_velocities
	ldr	r3, .L100+620
	ldr	r0, [r3]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L100+676
	bl	input_covariances
.L82:
	sub	r3, fp, #224
	mov	r1, r3
	ldr	r0, .L100+624
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L83
	ldr	r0, .L100+628
	bl	puts
	ldr	r3, .L100+632
	ldr	r3, [r3]
	str	r3, [sp, #20]
	sub	r3, fp, #284
	str	r3, [sp, #16]
	sub	r3, fp, #288
	str	r3, [sp, #12]
	sub	r3, fp, #292
	str	r3, [sp, #8]
	sub	r3, fp, #296
	str	r3, [sp, #4]
	sub	r3, fp, #300
	str	r3, [sp]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L100+680
	ldr	r0, .L100+636
	bl	calc_statistics
	ldr	r0, .L100+640
	bl	puts
	ldr	r3, [fp, #-300]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-296]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-292]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L100+644
	bl	printf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-284]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L100+648
	bl	printf
	ldr	r3, .L100+652
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	ldr	r3, [fp, #-252]
	cmp	r3, #0
	beq	.L83
	ldr	r3, [fp, #-280]	@ float
	str	r3, [fp, #-264]	@ float
	ldr	r0, .L100+660
	bl	puts
	ldr	r0, .L100+656
	bl	printf
	ldr	r0, .L100+660
	bl	puts
	b	.L84
.L87:
	ldr	r3, .L100+664
	ldr	r1, [r3]
	ldr	r3, .L100+668
	ldr	r3, [r3]
	ldr	r2, [fp, #-264]	@ float
	str	r2, [sp, #4]	@ float
	str	r3, [sp]
	mov	r3, r1
	ldr	r2, .L100+672
	ldr	r1, .L100+676
	ldr	r0, .L100+680
	bl	threshold_velocities
	ldr	r0, [fp, #-264]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L102
	bl	printf
	ldr	r3, .L102+4
	ldr	r3, [r3]
	str	r3, [sp, #20]
	sub	r3, fp, #284
	str	r3, [sp, #16]
	sub	r3, fp, #288
	str	r3, [sp, #12]
	sub	r3, fp, #292
	str	r3, [sp, #8]
	sub	r3, fp, #296
	str	r3, [sp, #4]
	sub	r3, fp, #300
	str	r3, [sp]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L102+8
	ldr	r0, .L102+12
	bl	calc_statistics
	ldr	r0, .L102+16
	bl	puts
	ldr	r3, [fp, #-300]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-296]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-292]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L102+20
	bl	printf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-284]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L102+24
	bl	printf
	ldr	r3, .L102+28
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	ldr	r3, .L102+32
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L85
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r4, [r3]
	ldr	r0, [fp, #-264]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r3, r4
	ldr	r2, .L102+36
	ldr	r1, .L102+40
	ldr	r0, .L102+44
	bl	sprintf
	ldr	r1, .L102+48
	ldr	r0, .L102+44
	bl	creat
	mov	r3, r0
	ldr	r2, .L102+52
	str	r3, [r2]
	ldr	r3, .L102+52
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L86
	ldr	r1, .L102+44
	ldr	r0, .L102+56
	bl	printf
	mov	r0, #1
	bl	exit
.L86:
	ldr	r1, .L102+44
	ldr	r0, .L102+60
	bl	printf
	ldr	r3, .L102+52
	ldr	r0, [r3]
	ldr	r3, .L102+4
	ldr	r3, [r3]
	str	r3, [sp, #4]
	ldr	r3, .L102+64
	str	r3, [sp]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L102+8
	bl	output_velocities
.L85:
	ldr	r1, [fp, #-244]	@ float
	ldr	r0, [fp, #-264]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-264]	@ float
.L84:
	ldr	r3, [fp, #-276]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-264]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L87
	ldr	r0, .L102+68
	bl	puts
.L83:
	ldr	r3, .L102+72
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L88
	mov	r0, #1
	bl	exit
.L88:
	ldr	r3, .L102+76
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L89
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	ip, [r3]
	ldr	r3, .L102+80
	ldr	r3, [r3]
	ldr	r2, .L102+84
	ldr	r2, [r2]
	ldr	r1, [fp, #-304]
	ldr	r0, [fp, #-232]
	str	r0, [sp, #28]
	ldr	r0, [fp, #-236]
	str	r0, [sp, #24]
	str	r1, [sp, #20]
	sub	r1, fp, #224
	str	r1, [sp, #16]
	ldr	r1, .L102+88
	str	r1, [sp, #12]
	str	r2, [sp, #8]
	str	r3, [sp, #4]
	ldr	r3, .L102+92
	str	r3, [sp]
	ldr	r3, .L102+96
	ldr	r2, .L102+100
	mov	r1, ip
	ldr	r0, .L102+36
	bl	comp2
	ldr	r0, .L102+104
	bl	puts
	ldr	r3, .L102+108
	ldr	r0, [r3]
	mov	r3, #1
	str	r3, [sp, #4]
	ldr	r3, .L102+64
	str	r3, [sp]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L102+88
	bl	output_velocities
	ldr	r3, .L102+112
	ldr	r0, [r3]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L102+92
	bl	output_covariances
	b	.L90
.L89:
	ldr	r3, [fp, #-304]
	lsl	r3, r3, #1
	add	r3, r3, #1
	lsr	r2, r3, #31
	add	r3, r2, r3
	asr	r3, r3, #1
	str	r3, [fp, #-228]
	ldr	r3, .L102+116
	ldr	r2, [r3]
	ldr	r3, [fp, #-228]
	add	r3, r2, r3
	ldr	r2, .L102+116
	str	r3, [r2]
	ldr	r3, .L102+120
	ldr	r2, [r3]
	ldr	r3, [fp, #-228]
	add	r3, r2, r3
	ldr	r2, .L102+120
	str	r3, [r2]
	ldr	r3, .L102+108
	ldr	r0, [r3]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L102+88
	bl	input_velocities
	ldr	r3, .L102+112
	ldr	r0, [r3]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L102+92
	bl	input_covariances
.L90:
	sub	r3, fp, #224
	mov	r1, r3
	ldr	r0, .L102+124
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L91
	ldr	r0, .L102+128
	bl	puts
	mov	r3, #1
	str	r3, [sp, #20]
	sub	r3, fp, #284
	str	r3, [sp, #16]
	sub	r3, fp, #288
	str	r3, [sp, #12]
	sub	r3, fp, #292
	str	r3, [sp, #8]
	sub	r3, fp, #296
	str	r3, [sp, #4]
	sub	r3, fp, #300
	str	r3, [sp]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L102+88
	ldr	r0, .L102+12
	bl	calc_statistics
	ldr	r0, .L102+16
	bl	puts
	ldr	r3, [fp, #-300]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-296]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-292]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L102+20
	bl	printf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-284]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L102+24
	bl	printf
	ldr	r3, [fp, #-248]
	cmp	r3, #0
	beq	.L91
	ldr	r3, [fp, #-272]	@ float
	str	r3, [fp, #-260]	@ float
	ldr	r0, .L102+68
	bl	puts
	ldr	r0, .L102+132
	bl	printf
	ldr	r0, .L102+68
	bl	puts
	b	.L92
.L95:
	ldr	r3, .L102+80
	ldr	r1, [r3]
	ldr	r3, .L102+84
	ldr	r3, [r3]
	ldr	r2, [fp, #-260]	@ float
	str	r2, [sp, #4]	@ float
	str	r3, [sp]
	mov	r3, r1
	ldr	r2, .L102+8
	ldr	r1, .L102+92
	ldr	r0, .L102+88
	bl	threshold_velocities
	ldr	r0, [fp, #-260]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L102
	bl	printf
	ldr	r3, .L102+4
	ldr	r3, [r3]
	str	r3, [sp, #20]
	sub	r3, fp, #284
	str	r3, [sp, #16]
	sub	r3, fp, #288
	str	r3, [sp, #12]
	sub	r3, fp, #292
	str	r3, [sp, #8]
	sub	r3, fp, #296
	str	r3, [sp, #4]
	sub	r3, fp, #300
	str	r3, [sp]
	ldr	r3, [fp, #-232]
	ldr	r2, [fp, #-236]
	ldr	r1, .L102+8
	ldr	r0, .L102+12
	bl	calc_statistics
	ldr	r0, .L102+16
	bl	puts
	ldr	r3, [fp, #-300]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-296]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-292]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L102+20
	bl	printf
	ldr	r3, [fp, #-288]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-284]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L102+24
	bl	printf
	ldr	r3, .L102+136
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L93
	ldr	r3, [fp, #-332]
	add	r3, r3, #4
	ldr	r4, [r3]
	ldr	r0, [fp, #-260]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r3, r4
	ldr	r2, .L102+36
	ldr	r1, .L102+140
	ldr	r0, .L102+44
	bl	sprintf
	ldr	r1, .L102+48
	ldr	r0, .L102+44
	bl	creat
	mov	r3, r0
	ldr	r2, .L102+52
	str	r3, [r2]
	ldr	r3, .L102+52
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L94
	ldr	r1, .L102+44
	ldr	r0, .L102+56
	bl	printf
	mov	r0, #1
	bl	exit
.L94:
	ldr	r1, .L102+44
	ldr	r0, .L102+60
	bl	printf
	ldr	r3, .L102+52
	ldr	r0, [r3]
	ldr	r3, .L102+80
	ldr	r2, [r3]
	ldr	r3, .L102+84
	ldr	r1, [r3]
	ldr	r3, .L102+4
	ldr	r3, [r3]
	str	r3, [sp, #4]
	ldr	r3, .L102+64
	str	r3, [sp]
	mov	r3, r1
	ldr	r1, .L102+8
	bl	output_velocities
.L93:
	ldr	r1, [fp, #-240]	@ float
	ldr	r0, [fp, #-260]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-260]	@ float
.L92:
	ldr	r3, [fp, #-268]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-260]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L95
	ldr	r0, .L102+68
	bl	puts
.L91:
	ldr	r0, .L102+144
	bl	puts
	ldr	r3, .L102+28
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	mov	r0, #0
	bl	time
	mov	r3, r0
	ldr	r2, .L102+148
	str	r3, [r2]
	ldr	r3, .L102+152
	ldr	r2, [r3]
	ldr	r3, .L102+156
	ldr	r3, [r3]
	add	r2, r2, r3
	ldr	r3, .L102+148
	ldr	r3, [r3]
	cmp	r2, r3
	bge	.L96
	ldr	r3, .L102+160
	ldr	r3, [r3]
	ldr	r2, .L102+148
	ldr	r2, [r2]
	ldr	r1, .L102+164
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L102+160
	ldr	r0, [r3]
	ldr	r3, .L102+148
	ldr	r2, [r3]
	ldr	r3, .L102+152
	ldr	r3, [r3]
	sub	r3, r2, r3
	mov	r2, r3
	ldr	r1, .L102+168
	bl	fprintf
	ldr	r3, .L102+160
	ldr	r4, [r3]
	ldr	r3, .L102+148
	ldr	r2, [r3]
	ldr	r3, .L102+152
	ldr	r3, [r3]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L102+172
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L102+176
	mov	r0, r4
	bl	fprintf
	ldr	r3, .L102+160
	ldr	r4, [r3]
	ldr	r3, .L102+148
	ldr	r2, [r3]
	ldr	r3, .L102+152
	ldr	r3, [r3]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L102+180
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L102+184
	mov	r0, r4
	bl	fprintf
	ldr	r3, .L102+160
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L96:
	mov	r3, #0
	ldr	r2, .L102+188
	ldr	r1, [r2]
	ldr	r2, [fp, #-24]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L98
	bl	__stack_chk_fail
.L98:
	mov	r0, r3
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
.L103:
	.align	2
.L102:
	.word	.LC112
	.word	SAMPLE
	.word	threshold_velocity
	.word	correct_velocities
	.word	.LC107
	.word	.LC108
	.word	.LC109
	.word	stdout
	.word	PRINT_FLOWS1
	.word	path2
	.word	.LC113
	.word	outname
	.word	493
	.word	fd_vels
	.word	.LC73
	.word	.LC74
	.word	.LC105
	.word	.LC110
	.word	STEP2
	.word	PREVIOUS2
	.word	pic_x
	.word	pic_y
	.word	full_velocities
	.word	S
	.word	Scc
	.word	Ucc
	.word	.LC114
	.word	fdf2
	.word	fdcov2
	.word	OFFSET_X
	.word	OFFSET_Y
	.word	.LC39
	.word	.LC115
	.word	.LC116
	.word	PRINT_FLOWS2
	.word	.LC117
	.word	.LC118
	.word	time2
	.word	time1
	.word	temporal_offset
	.word	fp
	.word	.LC119
	.word	.LC120
	.word	1078853632
	.word	.LC121
	.word	1085022208
	.word	.LC122
	.word	.LC123
	.size	main, .-main
	.section	.rodata
	.align	2
.LC124:
	.ascii	"%s%d\000"
	.align	2
.LC125:
	.ascii	"Fatal error - not enough room\000"
	.align	2
.LC126:
	.ascii	"Required size: %d times %d\012\000"
	.align	2
.LC127:
	.ascii	"File %s read -- %d bytes\012\000"
	.align	2
.LC128:
	.ascii	"File %s does not exist in read_image_files.\012\000"
	.align	2
.LC129:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	read_image_files
	.syntax unified
	.arm
	.fpu softvfp
	.type	read_image_files, %function
read_image_files:
	@ args = 12, pretend = 0, frame = 216
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #216
	str	r0, [fp, #-200]
	str	r1, [fp, #-204]
	str	r2, [fp, #-208]
	str	r3, [fp, #-212]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-216]
	ldr	r3, .L119
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #1
	str	r3, [fp, #-184]
	mov	r3, #0
	str	r3, [fp, #-192]
	b	.L105
.L116:
	ldr	r3, [fp, #-192]
	sub	r3, r3, #1
	ldr	r2, [fp, #12]
	mul	r2, r3, r2
	ldr	r3, [fp, #8]
	add	r3, r2, r3
	sub	r0, fp, #108
	ldr	r2, [fp, #-200]
	ldr	r1, .L119+4
	bl	sprintf
	sub	r3, fp, #108
	mov	r1, #0
	mov	r0, r3
	bl	open
	str	r0, [fp, #-176]
	ldr	r3, [fp, #-176]
	cmp	r3, #0
	ble	.L106
	ldr	r3, .L119+8
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L107
	ldr	r3, [fp, #-184]
	cmp	r3, #0
	beq	.L108
	sub	r3, fp, #172
	mov	r2, #32
	mov	r1, r3
	ldr	r0, [fp, #-176]
	bl	read
	mov	r3, #0
	str	r3, [fp, #-188]
	b	.L109
.L110:
	ldr	r3, [fp, #-188]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-216]
	add	r2, r2, r3
	ldr	r3, [fp, #-188]
	lsl	r3, r3, #2
	sub	r1, fp, #4
	add	r3, r1, r3
	ldr	r3, [r3, #-168]
	str	r3, [r2]
	ldr	r3, [fp, #-188]
	add	r3, r3, #1
	str	r3, [fp, #-188]
.L109:
	ldr	r3, [fp, #-188]
	cmp	r3, #7
	ble	.L110
	ldr	r2, [fp, #-168]
	ldr	r3, [fp, #-208]
	str	r2, [r3]
	ldr	r2, [fp, #-164]
	ldr	r3, [fp, #-212]
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-184]
	ldr	r3, [fp, #-212]
	ldr	r3, [r3]
	ldr	r2, .L119+12
	cmp	r3, r2
	bgt	.L111
	ldr	r3, [fp, #-208]
	ldr	r3, [r3]
	ldr	r2, .L119+12
	cmp	r3, r2
	ble	.L112
.L111:
	ldr	r0, .L119+16
	bl	puts
	ldr	r2, [fp, #-208]
	ldr	r1, [fp, #-212]
	ldr	r0, .L119+20
	bl	printf
	mov	r0, #1
	bl	exit
.L108:
	sub	r3, fp, #140
	mov	r2, #32
	mov	r1, r3
	ldr	r0, [fp, #-176]
	bl	read
.L112:
	mov	r3, #32
	str	r3, [fp, #-180]
.L107:
	mov	r3, #0
	str	r3, [fp, #-188]
	b	.L113
.L114:
	ldr	r2, [fp, #-192]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	ldr	r2, [fp, #-204]
	add	r1, r2, r3
	ldr	r2, [fp, #-188]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, [fp, #-208]
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r0, [fp, #-176]
	bl	read
	mov	r2, r0
	ldr	r3, [fp, #-180]
	add	r3, r3, r2
	str	r3, [fp, #-180]
	ldr	r3, [fp, #-188]
	add	r3, r3, #1
	str	r3, [fp, #-188]
.L113:
	ldr	r3, [fp, #-212]
	ldr	r3, [r3]
	ldr	r2, [fp, #-188]
	cmp	r2, r3
	blt	.L114
	sub	r3, fp, #108
	ldr	r2, [fp, #-180]
	mov	r1, r3
	ldr	r0, .L119+24
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-180]
	ldr	r3, .L119+28
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	b	.L118
.L106:
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, .L119+32
	bl	printf
	mov	r0, #1
	bl	exit
.L118:
	ldr	r3, [fp, #-192]
	add	r3, r3, #1
	str	r3, [fp, #-192]
.L105:
	ldr	r3, [fp, #-192]
	cmp	r3, #2
	ble	.L116
	nop
	ldr	r3, .L119
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L117
	bl	__stack_chk_fail
.L117:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L120:
	.align	2
.L119:
	.word	.LC129
	.word	.LC124
	.word	BINARY
	.word	325
	.word	.LC125
	.word	.LC126
	.word	.LC127
	.word	stdout
	.word	.LC128
	.size	read_image_files, .-read_image_files
	.section	.rodata
	.align	2
.LC130:
	.ascii	"laplacian.%s%d\000"
	.align	2
.LC131:
	.ascii	"File %s written -- %d bytes\012\000"
	.align	2
.LC132:
	.ascii	"File %s does not exist in write_image_files.\012\000"
	.align	2
.LC133:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	write_image_files
	.syntax unified
	.arm
	.fpu softvfp
	.type	write_image_files, %function
write_image_files:
	@ args = 12, pretend = 0, frame = 184
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #184
	str	r0, [fp, #-168]
	str	r1, [fp, #-172]
	str	r2, [fp, #-176]
	str	r3, [fp, #-180]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-184]
	ldr	r3, .L130
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #1
	str	r3, [fp, #-148]
	mov	r3, #0
	str	r3, [fp, #-160]
	b	.L122
.L127:
	ldr	r3, [fp, #-160]
	sub	r3, r3, #1
	ldr	r2, [fp, #12]
	mul	r2, r3, r2
	ldr	r3, [fp, #8]
	add	r3, r2, r3
	sub	r0, fp, #108
	ldr	r2, [fp, #-168]
	ldr	r1, .L130+4
	bl	sprintf
	sub	r3, fp, #108
	ldr	r1, .L130+8
	mov	r0, r3
	bl	creat
	str	r0, [fp, #-144]
	ldr	r3, [fp, #-144]
	cmp	r3, #0
	blt	.L123
	mov	r2, #32
	ldr	r1, [fp, #-184]
	ldr	r0, [fp, #-144]
	bl	write
	mov	r3, #32
	str	r3, [fp, #-152]
	mov	r3, #0
	str	r3, [fp, #-156]
	b	.L124
.L125:
	ldr	r2, [fp, #-160]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	ldr	r2, [fp, #-172]
	add	r1, r2, r3
	ldr	r2, [fp, #-156]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	add	r3, r1, r3
	ldr	r2, [fp, #-176]
	mov	r1, r3
	ldr	r0, [fp, #-144]
	bl	write
	mov	r2, r0
	ldr	r3, [fp, #-152]
	add	r3, r3, r2
	str	r3, [fp, #-152]
	ldr	r3, [fp, #-156]
	add	r3, r3, #1
	str	r3, [fp, #-156]
.L124:
	ldr	r2, [fp, #-156]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	blt	.L125
	sub	r3, fp, #108
	ldr	r2, [fp, #-152]
	mov	r1, r3
	ldr	r0, .L130+12
	bl	printf
	ldr	r3, .L130+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	b	.L129
.L123:
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, .L130+20
	bl	printf
	mov	r0, #1
	bl	exit
.L129:
	ldr	r3, [fp, #-160]
	add	r3, r3, #1
	str	r3, [fp, #-160]
.L122:
	ldr	r3, [fp, #-160]
	cmp	r3, #2
	ble	.L127
	nop
	ldr	r3, .L130
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L128
	bl	__stack_chk_fail
.L128:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L131:
	.align	2
.L130:
	.word	.LC133
	.word	.LC130
	.word	493
	.word	.LC131
	.word	stdout
	.word	.LC132
	.size	write_image_files, .-write_image_files
	.section	.rodata
	.align	2
.LC134:
	.ascii	"\012Computing Velocity Information via step 1...\000"
	.global	__aeabi_dadd
	.global	__aeabi_d2f
	.align	2
.LC135:
	.ascii	"Processing rows for step 1:\000"
	.align	2
.LC136:
	.ascii	"%3d \000"
	.global	__aeabi_idivmod
	.global	__aeabi_dsub
	.align	2
.LC137:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	comp1
	.syntax unified
	.arm
	.fpu softvfp
	.type	comp1, %function
comp1:
	@ args = 24, pretend = 0, frame = 440
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #476
	str	r0, [fp, #-440]
	str	r1, [fp, #-444]
	str	r2, [fp, #-448]
	str	r3, [fp, #-452]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-456]
	ldr	r3, .L144
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	ldr	r0, .L144+4
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-424]
	b	.L133
.L136:
	mov	r3, #0
	str	r3, [fp, #-420]
	b	.L134
.L135:
	ldr	r2, [fp, #-424]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-452]
	add	r2, r3, r2
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r1, .L144+8
	str	r1, [r3, #4]	@ float
	ldr	r1, [fp, #-424]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r3, r3, #3
	mov	r1, r3
	ldr	r3, [fp, #-452]
	add	r1, r3, r1
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-420]
	str	r2, [r1, r3, lsl #3]	@ float
	ldr	r2, [fp, #-424]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-456]
	add	r2, r3, r2
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r1, .L144+8
	str	r1, [r3, #4]	@ float
	ldr	r1, [fp, #-424]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r3, r3, #4
	mov	r1, r3
	ldr	r3, [fp, #-456]
	add	r1, r3, r1
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-420]
	str	r2, [r1, r3, lsl #4]	@ float
	ldr	r2, [fp, #-424]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-456]
	add	r2, r3, r2
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r1, .L144+8
	str	r1, [r3, #12]	@ float
	ldr	r1, [fp, #-424]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r3, r3, #4
	mov	r1, r3
	ldr	r3, [fp, #-456]
	add	r1, r3, r1
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r2, [r3, #12]	@ float
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #4
	add	r3, r1, r3
	str	r2, [r3, #8]	@ float
	ldr	r3, [fp, #-420]
	add	r3, r3, #1
	str	r3, [fp, #-420]
.L134:
	ldr	r3, [fp, #-420]
	cmp	r3, #324
	ble	.L135
	ldr	r3, [fp, #-424]
	add	r3, r3, #1
	str	r3, [fp, #-424]
.L133:
	ldr	r3, [fp, #-424]
	cmp	r3, #324
	ble	.L136
	ldr	r0, [fp, #12]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-412]	@ float
	ldr	r0, [fp, #16]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-408]	@ float
	ldr	r0, .L144+12
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-416]
	ldr	r3, .L144+16
	ldr	r2, [r3]
	ldr	r3, .L144+20
	ldr	r3, [r3]
	add	r3, r2, r3
	str	r3, [fp, #-424]
	b	.L137
.L142:
	ldr	r1, [fp, #-424]
	ldr	r0, .L144+24
	bl	printf
	ldr	r3, [fp, #-416]
	add	r3, r3, #1
	str	r3, [fp, #-416]
	ldr	r2, [fp, #-416]
	ldr	r3, .L144+28
	smull	r1, r3, r2, r3
	add	r3, r3, r2
	asr	r1, r3, #3
	asr	r3, r2, #31
	sub	r1, r1, r3
	mov	r3, r1
	lsl	r3, r3, #4
	sub	r3, r3, r1
	sub	r1, r2, r3
	cmp	r1, #0
	bne	.L138
	mov	r0, #10
	bl	putchar
.L138:
	ldr	r3, .L144+32
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	ldr	r3, .L144+36
	ldr	r2, [r3]
	ldr	r3, .L144+40
	ldr	r3, [r3]
	add	r3, r2, r3
	str	r3, [fp, #-420]
	b	.L139
.L141:
	ldr	r3, .L144+44
	ldr	r2, [r3]
	ldr	r3, [fp, #-424]
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L140
	ldr	r3, .L144+44
	ldr	r2, [r3]
	ldr	r3, [fp, #-420]
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L140
	ldr	r3, .L144+32
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	mov	r3, #0
	str	r3, [fp, #-436]
	sub	r3, fp, #428
	str	r3, [sp, #12]
	sub	r3, fp, #432
	str	r3, [sp, #8]
	sub	r3, fp, #348
	str	r3, [sp, #4]
	ldr	r3, [fp, #12]
	str	r3, [sp]
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-420]
	ldr	r1, [fp, #-424]
	ldr	r0, [fp, #-440]
	bl	compute_SSD_surface
	ldr	r3, [fp, #-428]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L144+48
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r6, r0
	ldr	r3, [fp, #-428]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L144+48
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r4, r0
	ldr	r3, [fp, #-432]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L144+48
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r5, r0
	ldr	r3, [fp, #-432]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L144+48
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	ip, r0
	sub	r2, fp, #364
	sub	r1, fp, #396
	sub	r0, fp, #348
	ldr	r3, [fp, #12]
	str	r3, [sp, #28]
	sub	r3, fp, #436
	str	r3, [sp, #24]
	sub	r3, fp, #372
	str	r3, [sp, #20]
	sub	r3, fp, #380
	str	r3, [sp, #16]
	sub	r3, fp, #388
	str	r3, [sp, #12]
	str	ip, [sp, #8]	@ float
	str	r5, [sp, #4]	@ float
	str	r4, [sp]	@ float
	mov	r3, r6
	bl	calc_mean_and_covariance1
	ldr	r3, [fp, #-396]	@ float
	str	r3, [fp, #-404]	@ float
	ldr	r3, [fp, #-392]	@ float
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-400]	@ float
	ldr	r2, [fp, #-424]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-456]
	add	r3, r3, r2
	ldr	r1, [fp, #-364]	@ float
	ldr	r2, [fp, #-420]
	str	r1, [r3, r2, lsl #4]	@ float
	ldr	r2, [fp, #-424]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-456]
	add	r1, r3, r2
	ldr	r2, [fp, #-360]	@ float
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #4
	add	r3, r1, r3
	str	r2, [r3, #4]	@ float
	ldr	r2, [fp, #-424]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-456]
	add	r1, r3, r2
	ldr	r2, [fp, #-356]	@ float
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #4
	add	r3, r1, r3
	str	r2, [r3, #8]	@ float
	ldr	r2, [fp, #-424]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-456]
	add	r1, r3, r2
	ldr	r2, [fp, #-352]	@ float
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #4
	add	r3, r1, r3
	str	r2, [r3, #12]	@ float
	ldr	r2, [fp, #-424]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-452]
	add	r4, r3, r2
	ldr	r1, [fp, #-408]	@ float
	ldr	r0, [fp, #-404]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-420]
	str	r2, [r4, r3, lsl #3]	@ float
	ldr	r2, [fp, #-424]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-452]
	add	r4, r3, r2
	ldr	r1, [fp, #-408]	@ float
	ldr	r0, [fp, #-400]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-420]
	lsl	r3, r3, #3
	add	r3, r4, r3
	str	r2, [r3, #4]	@ float
.L140:
	ldr	r3, [fp, #-420]
	add	r3, r3, #1
	str	r3, [fp, #-420]
.L139:
	ldr	r3, .L144+36
	ldr	r3, [r3]
	ldr	r2, [fp, #-444]
	sub	r3, r2, r3
	ldr	r2, [fp, #-420]
	cmp	r2, r3
	blt	.L141
	ldr	r3, [fp, #-424]
	add	r3, r3, #1
	str	r3, [fp, #-424]
.L137:
	ldr	r3, .L144+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-448]
	sub	r3, r2, r3
	ldr	r2, [fp, #-424]
	cmp	r2, r3
	blt	.L142
	nop
	ldr	r3, .L144
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L143
	bl	__stack_chk_fail
.L143:
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L145:
	.align	2
.L144:
	.word	.LC137
	.word	.LC134
	.word	1120403456
	.word	.LC135
	.word	OFFSET_Y
	.word	EXTRA_OFFSET_Y
	.word	.LC136
	.word	-2004318071
	.word	stdout
	.word	OFFSET_X
	.word	EXTRA_OFFSET_X
	.word	SAMPLE
	.word	1074790400
	.size	comp1, .-comp1
	.section	.rodata
	.align	2
.LC138:
	.ascii	"Error Analysis Performed at start of step 2\000"
	.align	2
.LC139:
	.ascii	"Minimum Angle Error: %f Maximum Angle Error: %f\012"
	.ascii	"\012\000"
	.align	2
.LC140:
	.ascii	"Computing velocity information via step 2\000"
	.align	2
.LC141:
	.ascii	"Performing Initialization...\000"
	.align	2
.LC142:
	.ascii	"FIRST i=%d j=%d k=%d l=%d\012\000"
	.align	2
.LC143:
	.ascii	"vel for k=%d l=%d: %f,%f\012\000"
	.align	2
.LC144:
	.ascii	"Fatal error: computed velocity undefined during ini"
	.ascii	"tialization\000"
	.align	2
.LC145:
	.ascii	"\012Initialization complete for step 2\000"
	.align	2
.LC146:
	.ascii	"Iteration %d\012\000"
	.global	__aeabi_fcmpgt
	.global	__aeabi_dcmpgt
	.align	2
.LC147:
	.ascii	"\012Convergence detected - iterative calculations a"
	.ascii	"re stopped\000"
	.align	2
.LC148:
	.ascii	"SECOND i=%d j=%d k=%d l=%d\012\000"
	.align	2
.LC149:
	.ascii	"\012Fatal error: computed velocity undefined during"
	.ascii	" iteration %d\012\000"
	.align	2
.LC150:
	.ascii	"%s/singh.iteration.step2.%sF-%d\000"
	.align	2
.LC151:
	.ascii	"\012File %s opened\012\000"
	.align	2
.LC152:
	.ascii	"Error Analysis Performed\000"
	.align	2
.LC153:
	.ascii	"L2norm of difference: %14.9f\012\000"
	.align	2
.LC154:
	.ascii	"Maximum individual velocity difference: %f\012\012\000"
	.align	2
.LC155:
	.ascii	"Velocity at %d,%d undefined\012\000"
	.align	2
.LC156:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	comp2
	.syntax unified
	.arm
	.fpu softvfp
	.type	comp2, %function
comp2:
	@ args = 32, pretend = 0, frame = 850456
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #847872
	sub	sp, sp, #2608
	sub	ip, fp, #847872
	sub	ip, ip, #20
	str	r0, [ip, #-2556]
	sub	r0, fp, #847872
	sub	r0, r0, #20
	str	r1, [r0, #-2560]
	sub	r1, fp, #847872
	sub	r1, r1, #20
	str	r2, [r1, #-2564]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	str	r3, [r2, #-2568]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r0, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r1, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	ldr	r3, [fp, #4]
	str	r3, [r0, #-2572]
	ldr	r3, [fp, #16]
	str	r3, [r1, #-2576]
	ldr	r3, [fp, #20]
	str	r3, [r2, #-2580]
	ldr	r3, .L217
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2512]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #1
	str	r3, [r2, #-2508]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2500]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2528]
	b	.L147
.L150:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2524]
	b	.L148
.L149:
	sub	r3, fp, #843776
	sub	r3, r3, #20
	mov	r1, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldr	r2, .L217+52
	str	r2, [r3, #-1224]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #20
	mov	r1, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldr	r1, [r3, #-1224]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #20
	mov	r0, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	str	r1, [r3, #-1228]	@ float
	ldr	r0, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r2, .L217+52
	str	r2, [r3, #4]	@ float
	ldr	r0, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r0, [r3, #4]	@ float
	ldr	ip, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	str	r0, [ip, r3, lsl #3]	@ float
	ldr	r0, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r2, .L217+52
	str	r2, [r3, #4]	@ float
	ldr	r0, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r0, [r3, #4]	@ float
	ldr	ip, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	str	r0, [ip, r3, lsl #3]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2576]
	add	r2, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r1, .L217+52
	str	r1, [r3, #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2528]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r3, r3, #3
	mov	r1, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2576]
	add	r1, r3, r1
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, [r3, #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	str	r2, [r1, r3, lsl #3]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r3, #1
	str	r3, [r2, #-2524]
.L148:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	cmp	r3, #324
	ble	.L149
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	add	r3, r3, #1
	str	r3, [r2, #-2528]
.L147:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	cmp	r3, #324
	ble	.L150
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2528]
	b	.L151
.L154:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2524]
	b	.L152
.L153:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2564]
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	ldr	r0, [r3, r2, lsl #3]	@ float
	ldr	ip, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	str	r0, [ip, r3, lsl #3]	@ float
	ldr	r0, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	ldr	r0, [r0, r3, lsl #3]	@ float
	ldr	ip, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	str	r0, [ip, r3, lsl #3]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2564]
	add	r2, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r0, [r3, #4]	@ float
	ldr	ip, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	str	r0, [r3, #4]	@ float
	ldr	r0, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r0, [r3, #4]	@ float
	ldr	ip, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	str	r0, [r3, #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r3, #1
	str	r3, [r2, #-2524]
.L152:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2524]
	ldr	r3, [fp, #28]
	cmp	r2, r3
	blt	.L153
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	add	r3, r3, #1
	str	r3, [r2, #-2528]
.L151:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	ldr	r3, [fp, #32]
	cmp	r2, r3
	blt	.L154
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2580]
	ldr	r0, .L217+4
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L155
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2512]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L217+124
	add	r1, r3, r2
	mov	r3, #1
	str	r3, [sp, #20]
	ldr	r3, .L217+8
	sub	r2, fp, #20
	add	r3, r2, r3
	str	r3, [sp, #16]
	ldr	r3, .L217+12
	sub	r2, fp, #20
	add	r3, r2, r3
	str	r3, [sp, #12]
	ldr	r3, .L217+16
	sub	r2, fp, #20
	add	r3, r2, r3
	str	r3, [sp, #8]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	sub	r3, r3, #2544
	str	r3, [sp, #4]
	ldr	r3, .L217+20
	sub	r2, fp, #20
	add	r3, r2, r3
	str	r3, [sp]
	ldr	r3, [fp, #32]
	ldr	r2, [fp, #28]
	ldr	r0, .L217+24
	bl	calc_statistics
	ldr	r0, .L217+28
	bl	puts
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2548]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2544]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2532]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L217+32
	bl	printf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2540]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2536]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L217+36
	bl	printf
	ldr	r3, .L217+40
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L155:
	ldr	r3, .L217+68
	sub	r2, fp, #20
	add	r3, r2, r3
	ldr	r1, [fp, #24]
	mov	r0, r3
	bl	compute_weights
	ldr	r3, [fp, #24]
	lsl	r3, r3, #1
	sub	r2, fp, #847872
	sub	r2, r2, #20
	add	r3, r3, #1
	str	r3, [r2, #-2488]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r1, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2488]
	lsr	r2, r3, #31
	add	r3, r2, r3
	asr	r3, r3, #1
	str	r3, [r1, #-2484]
	ldr	r3, .L217+136
	ldr	r2, [r3]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	add	r3, r2, r3
	ldr	r2, .L217+136
	str	r3, [r2]
	ldr	r3, .L217+80
	ldr	r2, [r3]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	add	r3, r2, r3
	ldr	r2, .L217+80
	str	r3, [r2]
	ldr	r0, .L217+44
	bl	puts
	ldr	r0, .L217+48
	bl	puts
	ldr	r3, .L217+80
	ldr	r2, [r3]
	ldr	r3, .L217+84
	ldr	r3, [r3]
	sub	r1, fp, #847872
	sub	r1, r1, #20
	add	r3, r2, r3
	str	r3, [r1, #-2528]
	b	.L156
.L170:
	ldr	r3, .L217+136
	ldr	r2, [r3]
	ldr	r3, .L217+88
	ldr	r3, [r3]
	sub	r1, fp, #847872
	sub	r1, r1, #20
	add	r3, r2, r3
	str	r3, [r1, #-2524]
	b	.L157
.L169:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2568]
	add	r2, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #4
	add	r0, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L217+96
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r4, r2
	mov	r2, #0
	mov	r1, r3
	bl	inverse22
	str	r0, [r4, #-2468]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L217+96
	add	r0, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2564]
	add	r2, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #3
	add	r1, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L217+112
	add	r3, r3, r2
	mov	r2, r3
	bl	mult21
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2492]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	rsb	r3, r3, #0
	str	r3, [r2, #-2520]
	b	.L158
.L168:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	rsb	r3, r3, #0
	str	r3, [r2, #-2516]
	b	.L159
.L218:
	.align	2
.L217:
	.word	.LC156
	.word	.LC39
	.word	-850408
	.word	-850412
	.word	-850404
	.word	-850420
	.word	correct_velocities
	.word	.LC138
	.word	.LC108
	.word	.LC139
	.word	stdout
	.word	.LC140
	.word	.LC141
	.word	1120403456
	.word	.LC142
	.word	.LC143
	.word	.LC144
	.word	-850296
	.word	.LC145
	.word	.LC146
	.word	OFFSET_Y
	.word	EXTRA_OFFSET_Y
	.word	EXTRA_OFFSET_X
	.word	Sn
	.word	SccI
	.word	Ssum
	.word	Ua
	.word	-850312
	.word	SccI_Ucc
	.word	-850328
	.word	SsumI
	.word	Un
	.word	-1998362383
	.word	1055193269
	.word	OFFSET_X
.L167:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	r0, r1, r2
	ldr	ip, .L217+124
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	ldr	r3, [ip, r3, lsl #3]	@ float
	ldr	r1, .L217+52
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L160
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	r0, r1, r2
	ldr	ip, .L217+124
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, .L217+52
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L160
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2492]
	add	r3, r3, #1
	str	r3, [r2, #-2492]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	lr, r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2520]
	ldr	r2, [r2, #-2484]
	add	r1, r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r0, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r0, [r0, #-2516]
	ldr	r2, [r2, #-2484]
	add	ip, r0, r2
	ldr	r4, .L217+124
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r0, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #6
	add	r3, r3, r0
	lsl	r0, r3, #6
	add	r3, r3, r0
	add	r3, r2, r3
	add	r3, r3, lr
	ldr	r0, [r4, r3, lsl #3]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	lr, r3
	mov	r3, r1
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r2, r3, #3
	sub	r2, r2, r3
	add	r3, r2, ip
	lsl	r3, r3, #3
	add	r3, lr, r3
	str	r0, [r3, #-660]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	lr, r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2520]
	ldr	r2, [r2, #-2484]
	add	r1, r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r0, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r0, [r0, #-2516]
	ldr	r2, [r2, #-2484]
	add	ip, r0, r2
	ldr	r4, .L217+124
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r0, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #6
	add	r3, r3, r0
	lsl	r0, r3, #6
	add	r3, r3, r0
	add	r3, r2, r3
	add	r3, r3, lr
	lsl	r3, r3, #3
	add	r3, r4, r3
	ldr	r0, [r3, #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	lr, r3
	mov	r3, r1
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r2, r3, #3
	sub	r2, r2, r3
	add	r3, r2, ip
	lsl	r3, r3, #3
	add	r3, lr, r3
	str	r0, [r3, #-656]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2516]
	add	r3, r3, #1
	str	r3, [r2, #-2516]
	b	.L159
.L160:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r0, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r1, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2516]
	str	r3, [sp]
	ldr	r3, [r0, #-2520]
	ldr	r2, [r2, #-2524]
	ldr	r1, [r1, #-2528]
	ldr	r0, .L217+56
	bl	printf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	rsb	r3, r3, #0
	str	r3, [r2, #-2520]
	b	.L163
.L166:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	rsb	r3, r3, #0
	str	r3, [r2, #-2516]
	b	.L164
.L165:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	r0, r1, r2
	ldr	ip, .L217+124
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	ldr	r3, [ip, r3, lsl #3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	r0, r1, r2
	ldr	ip, .L217+124
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #847872
	sub	r1, r1, #20
	mov	r0, r1
	sub	r1, fp, #847872
	sub	r1, r1, #20
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	ldr	r2, [r0, #-2516]
	ldr	r1, [r1, #-2520]
	ldr	r0, .L217+60
	bl	printf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2516]
	add	r3, r3, #1
	str	r3, [r2, #-2516]
.L164:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2516]
	ldr	r3, [r3, #-2484]
	cmp	r2, r3
	ble	.L165
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2520]
	add	r3, r3, #1
	str	r3, [r2, #-2520]
.L163:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2520]
	ldr	r3, [r3, #-2484]
	cmp	r2, r3
	ble	.L166
	ldr	r0, .L217+64
	bl	puts
	mov	r0, #1
	bl	exit
.L159:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2516]
	ldr	r3, [r3, #-2484]
	cmp	r2, r3
	ble	.L167
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2520]
	add	r3, r3, #1
	str	r3, [r2, #-2520]
.L158:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2520]
	ldr	r3, [r3, #-2484]
	cmp	r2, r3
	ble	.L168
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L217+104
	add	ip, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2512]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L217+92
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	sub	r1, fp, #847872
	sub	r1, r1, #20
	sub	r1, r1, #660
	ldr	r0, .L217+68
	sub	lr, fp, #20
	add	r0, lr, r0
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, [r2, #-2488]
	bl	calc_mean_and_covariance2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r3, #1
	str	r3, [r2, #-2524]
.L157:
	ldr	r3, .L217+136
	ldr	r3, [r3]
	ldr	r2, [fp, #8]
	sub	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	cmp	r2, r3
	blt	.L169
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	add	r3, r3, #1
	str	r3, [r2, #-2528]
.L156:
	ldr	r3, .L217+80
	ldr	r3, [r3]
	ldr	r2, [fp, #12]
	sub	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2528]
	cmp	r2, r3
	blt	.L170
	ldr	r0, .L217+72
	bl	puts
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #1
	str	r3, [r2, #-2504]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2496]
	mov	r0, #10
	bl	putchar
	b	.L171
.L200:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2496]
	ldr	r0, .L217+76
	bl	printf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2496]
	add	r3, r3, #1
	str	r3, [r2, #-2496]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2504]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2480]	@ float
	ldr	r3, .L217+80
	ldr	r2, [r3]
	ldr	r3, .L217+84
	ldr	r3, [r3]
	sub	r1, fp, #847872
	sub	r1, r1, #20
	add	r3, r2, r3
	str	r3, [r1, #-2528]
	b	.L172
.L179:
	ldr	r3, .L217+136
	ldr	r2, [r3]
	ldr	r3, .L217+88
	ldr	r3, [r3]
	sub	r1, fp, #847872
	sub	r1, r1, #20
	add	r3, r2, r3
	str	r3, [r1, #-2524]
	b	.L173
.L178:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2512]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L217+92
	add	r0, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r4, r3
	ldr	r3, .L217+108
	sub	r2, fp, #20
	add	r3, r2, r3
	mov	r2, #0
	mov	r1, r3
	bl	inverse22
	str	r0, [r4, #-2468]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L217+96
	add	r0, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L217+100
	add	r2, r3, r2
	ldr	r3, .L217+108
	sub	r1, fp, #20
	add	r3, r1, r3
	mov	r1, r3
	bl	add22
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L217+100
	add	r0, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L217+120
	add	r3, r3, r2
	mov	r2, #0
	mov	r1, r3
	bl	inverse22
	mov	r2, r0
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r1, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2468]
	add	r3, r2, r3
	str	r3, [r1, #-2468]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L217+104
	add	r1, r3, r2
	ldr	r2, .L217+116
	sub	r3, fp, #20
	add	r2, r3, r2
	ldr	r3, .L217+108
	sub	r0, fp, #20
	add	r3, r0, r3
	mov	r0, r3
	bl	mult21
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L217+112
	add	r0, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	sub	r3, r3, #2448
	ldr	r1, .L217+116
	sub	r2, fp, #20
	add	r1, r2, r1
	mov	r2, r3
	bl	add21
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L217+120
	add	r0, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2508]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, .L217+124
	add	r2, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	sub	r3, r3, #2448
	mov	r1, r3
	bl	mult21
	ldr	r0, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	ldr	r0, [r0, r3, lsl #3]	@ float
	ldr	ip, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	ldr	r3, [ip, r3, lsl #3]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	str	r2, [r3, #-2464]	@ float
	ldr	r0, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r0, [r3, #4]	@ float
	ldr	ip, .L217+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	str	r2, [r3, #-2460]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2464]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #20
	mov	r0, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	str	r1, [r3, #-1228]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2460]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #20
	mov	r0, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	str	r1, [r3, #-1224]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r4, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	sub	r3, r3, #2464
	mov	r1, #2
	mov	r0, r3
	bl	L2norm
	str	r0, [r4, #-2480]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2500]	@ float
	ldr	r0, [r3, #-2480]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L174
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2480]	@ float
	str	r3, [r2, #-2500]	@ float
.L174:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r0, [r3, #-2480]	@ float
	bl	__aeabi_f2d
	ldr	r2, .L217+128
	ldr	r3, .L217+132
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L176
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #1
	str	r3, [r2, #-2504]
.L176:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r3, #1
	str	r3, [r2, #-2524]
.L173:
	ldr	r3, .L217+136
	ldr	r3, [r3]
	ldr	r2, [fp, #8]
	sub	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	cmp	r2, r3
	blt	.L178
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	add	r3, r3, #1
	str	r3, [r2, #-2528]
.L172:
	ldr	r3, .L219+140
	ldr	r3, [r3]
	ldr	r2, [fp, #12]
	sub	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2528]
	cmp	r2, r3
	blt	.L179
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2504]
	cmp	r3, #0
	bne	.L180
	ldr	r0, .L219
	bl	puts
.L180:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2504]
	cmp	r3, #0
	beq	.L181
	ldr	r3, .L219+140
	ldr	r2, [r3]
	ldr	r3, .L219+4
	ldr	r3, [r3]
	sub	r1, fp, #847872
	sub	r1, r1, #20
	add	r3, r2, r3
	str	r3, [r1, #-2528]
	b	.L182
.L196:
	ldr	r3, .L219+136
	ldr	r2, [r3]
	ldr	r3, .L219+8
	ldr	r3, [r3]
	sub	r1, fp, #847872
	sub	r1, r1, #20
	add	r3, r2, r3
	str	r3, [r1, #-2524]
	b	.L183
.L195:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	rsb	r3, r3, #0
	str	r3, [r2, #-2520]
	b	.L184
.L194:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	rsb	r3, r3, #0
	str	r3, [r2, #-2516]
	b	.L185
.L193:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	r0, r1, r2
	ldr	ip, .L219+120
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	ldr	r3, [ip, r3, lsl #3]	@ float
	ldr	r1, .L219+128
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L186
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	r0, r1, r2
	ldr	ip, .L219+120
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, .L219+128
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L186
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	lr, r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2520]
	ldr	r2, [r2, #-2484]
	add	r1, r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r0, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r0, [r0, #-2516]
	ldr	r2, [r2, #-2484]
	add	ip, r0, r2
	ldr	r4, .L219+120
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r0, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #6
	add	r3, r3, r0
	lsl	r0, r3, #6
	add	r3, r3, r0
	add	r3, r2, r3
	add	r3, r3, lr
	ldr	r0, [r4, r3, lsl #3]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	lr, r3
	mov	r3, r1
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r2, r3, #3
	sub	r2, r2, r3
	add	r3, r2, ip
	lsl	r3, r3, #3
	add	r3, lr, r3
	str	r0, [r3, #-660]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	lr, r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2520]
	ldr	r2, [r2, #-2484]
	add	r1, r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r0, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r0, [r0, #-2516]
	ldr	r2, [r2, #-2484]
	add	ip, r0, r2
	ldr	r4, .L219+120
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r0, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r0, r3, #6
	add	r3, r3, r0
	lsl	r0, r3, #6
	add	r3, r3, r0
	add	r3, r2, r3
	add	r3, r3, lr
	lsl	r3, r3, #3
	add	r3, r4, r3
	ldr	r0, [r3, #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	lr, r3
	mov	r3, r1
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r2, r3, #3
	sub	r2, r2, r3
	add	r3, r2, ip
	lsl	r3, r3, #3
	add	r3, lr, r3
	str	r0, [r3, #-656]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L219+12
	add	ip, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2508]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L219+16
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	sub	r1, fp, #847872
	sub	r1, r1, #20
	sub	r1, r1, #660
	ldr	r0, .L219+20
	sub	lr, fp, #20
	add	r0, lr, r0
	str	r3, [sp]
	mov	r3, ip
	ldr	r2, [r2, #-2488]
	bl	calc_mean_and_covariance2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2516]
	add	r3, r3, #1
	str	r3, [r2, #-2516]
	b	.L185
.L186:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r0, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r1, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2516]
	str	r3, [sp]
	ldr	r3, [r0, #-2520]
	ldr	r2, [r2, #-2524]
	ldr	r1, [r1, #-2528]
	ldr	r0, .L219+24
	bl	printf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	rsb	r3, r3, #0
	str	r3, [r2, #-2520]
	b	.L189
.L192:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2484]
	rsb	r3, r3, #0
	str	r3, [r2, #-2516]
	b	.L190
.L191:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	r0, r1, r2
	ldr	ip, .L219+120
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	ldr	r3, [ip, r3, lsl #3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2528]
	ldr	r3, [r3, #-2520]
	add	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r1, #-2524]
	ldr	r2, [r2, #-2516]
	add	r0, r1, r2
	ldr	ip, .L219+120
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2508]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r2, r3
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #847872
	sub	r1, r1, #20
	mov	r0, r1
	sub	r1, fp, #847872
	sub	r1, r1, #20
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	ldr	r2, [r0, #-2516]
	ldr	r1, [r1, #-2520]
	ldr	r0, .L219+28
	bl	printf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2516]
	add	r3, r3, #1
	str	r3, [r2, #-2516]
.L190:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2516]
	ldr	r3, [r3, #-2484]
	cmp	r2, r3
	ble	.L191
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2520]
	add	r3, r3, #1
	str	r3, [r2, #-2520]
.L189:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2520]
	ldr	r3, [r3, #-2484]
	cmp	r2, r3
	ble	.L192
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2496]
	ldr	r0, .L219+32
	bl	printf
	mov	r0, #1
	bl	exit
.L185:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2516]
	ldr	r3, [r3, #-2484]
	cmp	r2, r3
	ble	.L193
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2520]
	add	r3, r3, #1
	str	r3, [r2, #-2520]
.L184:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2520]
	ldr	r3, [r3, #-2484]
	cmp	r2, r3
	ble	.L194
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r3, #1
	str	r3, [r2, #-2524]
.L183:
	ldr	r3, .L219+136
	ldr	r3, [r3]
	ldr	r2, [fp, #8]
	sub	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	cmp	r2, r3
	blt	.L195
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	add	r3, r3, #1
	str	r3, [r2, #-2528]
.L182:
	ldr	r3, .L219+140
	ldr	r3, [r3]
	ldr	r2, [fp, #12]
	sub	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2528]
	cmp	r2, r3
	blt	.L196
	ldr	r3, .L219+36
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L197
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2496]
	sub	r3, r3, #1
	sub	r2, fp, #847872
	sub	r2, r2, #20
	mov	r1, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	str	r3, [sp]
	ldr	r3, [r1, #-2560]
	ldr	r2, [r2, #-2556]
	ldr	r1, .L219+40
	ldr	r0, .L219+44
	bl	sprintf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r4, r3
	ldr	r1, .L219+48
	ldr	r0, .L219+44
	bl	creat
	str	r0, [r4, #-2476]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2476]
	cmp	r3, #0
	bge	.L198
	ldr	r1, .L219+44
	ldr	r0, .L219+52
	bl	printf
	mov	r0, #1
	bl	exit
.L198:
	ldr	r1, .L219+44
	ldr	r0, .L219+56
	bl	printf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2508]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L219+120
	add	r1, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r0, r3
	mov	r3, #1
	str	r3, [sp, #4]
	ldr	r3, .L219+60
	str	r3, [sp]
	ldr	r3, [fp, #32]
	ldr	r2, [fp, #28]
	ldr	r0, [r0, #-2476]
	bl	output_velocities
.L197:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r1, [r3, #-2580]
	ldr	r0, .L219+64
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L181
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2508]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L219+120
	add	r1, r3, r2
	mov	r3, #1
	str	r3, [sp, #20]
	ldr	r3, .L219+68
	sub	r2, fp, #20
	add	r3, r2, r3
	str	r3, [sp, #16]
	ldr	r3, .L219+72
	sub	r2, fp, #20
	add	r3, r2, r3
	str	r3, [sp, #12]
	ldr	r3, .L219+76
	sub	r2, fp, #20
	add	r3, r2, r3
	str	r3, [sp, #8]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	sub	r3, r3, #2544
	str	r3, [sp, #4]
	ldr	r3, .L219+80
	sub	r2, fp, #20
	add	r3, r2, r3
	str	r3, [sp]
	ldr	r3, [fp, #32]
	ldr	r2, [fp, #28]
	ldr	r0, .L219+84
	bl	calc_statistics
	ldr	r0, .L219+88
	bl	puts
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2548]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2544]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2532]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L219+92
	bl	printf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2540]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2536]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L219+96
	bl	printf
	ldr	r3, .L219+100
	sub	r2, fp, #20
	add	r3, r2, r3
	ldr	r1, [fp, #8]
	mov	r0, r3
	bl	bigL2norm
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L219+104
	bl	printf
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r0, [r3, #-2500]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L219+108
	bl	printf
	ldr	r3, .L219+112
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L181:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2512]
	str	r3, [r2, #-2472]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2508]
	str	r3, [r2, #-2512]
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2472]
	str	r3, [r2, #-2508]
.L171:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2504]
	cmp	r3, #0
	beq	.L199
	ldr	r3, .L219+116
	ldr	r3, [r3]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2496]
	cmp	r2, r3
	blt	.L200
.L199:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-2492]
	ldr	r3, .L219+140
	ldr	r2, [r3]
	ldr	r3, .L219+4
	ldr	r3, [r3]
	sub	r1, fp, #847872
	sub	r1, r1, #20
	add	r3, r2, r3
	str	r3, [r1, #-2528]
	b	.L201
.L208:
	ldr	r3, .L219+136
	ldr	r2, [r3]
	ldr	r3, .L219+8
	ldr	r3, [r3]
	sub	r1, fp, #847872
	sub	r1, r1, #20
	add	r3, r2, r3
	str	r3, [r1, #-2524]
	b	.L202
.L220:
	.align	2
.L219:
	.word	.LC147
	.word	EXTRA_OFFSET_Y
	.word	EXTRA_OFFSET_X
	.word	Ua
	.word	Sn
	.word	-850296
	.word	.LC148
	.word	.LC143
	.word	.LC149
	.word	PRINT_ITERATIONS
	.word	.LC150
	.word	outname
	.word	493
	.word	.LC73
	.word	.LC151
	.word	.LC105
	.word	.LC39
	.word	-850408
	.word	-850412
	.word	-850404
	.word	-850420
	.word	correct_velocities
	.word	.LC152
	.word	.LC108
	.word	.LC109
	.word	-845004
	.word	.LC153
	.word	.LC154
	.word	stdout
	.word	MAX_NUMBER_OF_ITERATIONS
	.word	Un
	.word	SsumI
	.word	1120403456
	.word	.LC155
	.word	OFFSET_X
	.word	OFFSET_Y
	.word	.LC156
.L207:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2576]
	add	r0, r3, r2
	ldr	ip, .L219+120
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	ldr	r2, [ip, r3, lsl #3]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	str	r2, [r0, r3, lsl #3]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2576]
	add	r0, r3, r2
	ldr	ip, .L219+120
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r1, [r2, #-2512]
	mov	r2, r3
	lsl	r2, r2, #2
	add	r2, r2, r3
	lsl	r3, r2, #6
	add	r2, r2, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r2, r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, ip, r3
	ldr	r2, [r3, #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #3
	add	r3, r0, r3
	str	r2, [r3, #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2572]
	add	r1, r3, r2
	ldr	r0, .L219+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	ldr	r2, [r0, r3, lsl #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	str	r2, [r1, r3, lsl #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2572]
	add	r1, r3, r2
	ldr	r0, .L219+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	add	r3, r0, r3
	ldr	r2, [r3, #8]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #4
	add	r3, r1, r3
	str	r2, [r3, #8]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2572]
	add	r1, r3, r2
	ldr	r0, .L219+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	add	r3, r0, r3
	ldr	r2, [r3, #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #4
	add	r3, r1, r3
	str	r2, [r3, #4]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2572]
	add	r1, r3, r2
	ldr	r0, .L219+124
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	add	r3, r3, r2
	lsl	r3, r3, #4
	add	r3, r0, r3
	ldr	r2, [r3, #12]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #4
	add	r3, r1, r3
	str	r2, [r3, #12]	@ float
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2576]
	add	r3, r3, r2
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, .L219+128
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L203
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r3, #-2528]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2576]
	add	r2, r3, r2
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, .L219+128
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L216
.L203:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2492]
	add	r3, r3, #1
	str	r3, [r2, #-2492]
	b	.L206
.L216:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r2, [r2, #-2524]
	ldr	r1, [r3, #-2528]
	ldr	r0, .L219+132
	bl	printf
.L206:
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2524]
	add	r3, r3, #1
	str	r3, [r2, #-2524]
.L202:
	ldr	r3, .L219+136
	ldr	r3, [r3]
	ldr	r2, [fp, #8]
	sub	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2524]
	cmp	r2, r3
	blt	.L207
	sub	r3, fp, #847872
	sub	r3, r3, #20
	mov	r2, r3
	sub	r3, fp, #847872
	sub	r3, r3, #20
	ldr	r3, [r3, #-2528]
	add	r3, r3, #1
	str	r3, [r2, #-2528]
.L201:
	ldr	r3, .L219+140
	ldr	r3, [r3]
	ldr	r2, [fp, #12]
	sub	r3, r2, r3
	sub	r2, fp, #847872
	sub	r2, r2, #20
	ldr	r2, [r2, #-2528]
	cmp	r2, r3
	blt	.L208
	nop
	ldr	r3, .L219+144
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L209
	bl	__stack_chk_fail
.L209:
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
	.size	comp2, .-comp2
	.section	.rodata
	.align	2
.LC157:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	threshold_velocities
	.syntax unified
	.arm
	.fpu softvfp
	.type	threshold_velocities, %function
threshold_velocities:
	@ args = 8, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #56
	str	r0, [fp, #-48]
	str	r1, [fp, #-52]
	str	r2, [fp, #-56]
	str	r3, [fp, #-60]
	ldr	r3, .L241
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L222
.L225:
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L223
.L224:
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-56]
	add	r2, r3, r2
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r1, .L241+4
	str	r1, [r3, #4]	@ float
	ldr	r1, [fp, #-40]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r3, r3, #3
	mov	r1, r3
	ldr	r3, [fp, #-56]
	add	r1, r3, r1
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-36]
	str	r2, [r1, r3, lsl #3]	@ float
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L223:
	ldr	r3, [fp, #-36]
	cmp	r3, #324
	ble	.L224
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L222:
	ldr	r3, [fp, #-40]
	cmp	r3, #324
	ble	.L225
	ldr	r3, .L241+8
	ldr	r2, [r3]
	ldr	r3, .L241+12
	ldr	r3, [r3]
	add	r3, r2, r3
	str	r3, [fp, #-40]
	b	.L226
.L236:
	ldr	r3, .L241+16
	ldr	r2, [r3]
	ldr	r3, .L241+20
	ldr	r3, [r3]
	add	r3, r2, r3
	str	r3, [fp, #-36]
	b	.L227
.L235:
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, r2
	ldr	r2, [fp, #-36]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, .L241+4
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L228
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-48]
	add	r2, r3, r2
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, .L241+4
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L239
.L228:
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-52]
	add	r2, r3, r2
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #4
	add	r0, r2, r3
	sub	r3, fp, #16
	sub	r2, fp, #24
	sub	r1, fp, #32
	bl	comp_eigen
	ldr	r3, [fp, #-32]	@ float
	bic	r3, r3, #-2147483648
	mov	r1, r3
	ldr	r0, [fp, #8]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L240
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-48]
	add	r1, r3, r2
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-56]
	add	r3, r3, r2
	ldr	r2, [fp, #-36]
	ldr	r1, [r1, r2, lsl #3]	@ float
	ldr	r2, [fp, #-36]
	str	r1, [r3, r2, lsl #3]	@ float
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-48]
	add	r0, r3, r2
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-56]
	add	r1, r3, r2
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r1, r3
	str	r2, [r3, #4]	@ float
	b	.L234
.L240:
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-56]
	add	r3, r3, r2
	ldr	r2, [fp, #-36]
	ldr	r1, .L241+4
	str	r1, [r3, r2, lsl #3]	@ float
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-56]
	add	r2, r3, r2
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, .L241+4
	str	r2, [r3, #4]	@ float
	b	.L234
.L239:
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-56]
	add	r3, r3, r2
	ldr	r2, [fp, #-36]
	ldr	r1, .L241+4
	str	r1, [r3, r2, lsl #3]	@ float
	ldr	r2, [fp, #-40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-56]
	add	r2, r3, r2
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, .L241+4
	str	r2, [r3, #4]	@ float
.L234:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L227:
	ldr	r3, .L241+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-60]
	sub	r3, r2, r3
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	blt	.L235
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L226:
	ldr	r3, .L241+8
	ldr	r3, [r3]
	ldr	r2, [fp, #4]
	sub	r3, r2, r3
	ldr	r2, [fp, #-40]
	cmp	r2, r3
	blt	.L236
	nop
	ldr	r3, .L241
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L237
	bl	__stack_chk_fail
.L237:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L242:
	.align	2
.L241:
	.word	.LC157
	.word	1120403456
	.word	OFFSET_Y
	.word	EXTRA_OFFSET_Y
	.word	OFFSET_X
	.word	EXTRA_OFFSET_X
	.size	threshold_velocities, .-threshold_velocities
	.global	__aeabi_fmul
	.align	2
	.global	L2norm
	.syntax unified
	.arm
	.fpu softvfp
	.type	L2norm, %function
L2norm:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-8]	@ float
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L244
.L245:
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-8]	@ float
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L244:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	blt	.L245
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-8]	@ float
	ldr	r3, [fp, #-8]	@ float
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	L2norm, .-L2norm
	.section	.rodata
	.align	2
.LC158:
	.ascii	"\012Fatal error: full velocity file not opened\000"
	.align	2
.LC159:
	.ascii	"\012%s velocities output: %d bytes\012\000"
	.align	2
.LC160:
	.ascii	"Number of positions with velocity: %d\012\000"
	.align	2
.LC161:
	.ascii	"Number of positions without velocity: %d\012\000"
	.global	__aeabi_dmul
	.align	2
.LC162:
	.ascii	"Percentage of %s velocities: %f\012\000"
	.align	2
.LC163:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	output_velocities
	.syntax unified
	.arm
	.fpu softvfp
	.type	output_velocities, %function
output_velocities:
	@ args = 8, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #56
	str	r0, [fp, #-48]
	str	r1, [fp, #-52]
	str	r2, [fp, #-56]
	str	r3, [fp, #-60]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-64]
	ldr	r3, .L262
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, [fp, #-48]
	cmp	r3, #0
	bge	.L248
	ldr	r0, .L262+4
	bl	puts
	mov	r0, #1
	bl	exit
.L248:
	ldr	r0, [fp, #-56]
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-44]	@ float
	ldr	r0, [fp, #-60]
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-40]	@ float
	sub	r3, fp, #44
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-48]
	bl	write
	sub	r3, fp, #40
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-48]
	bl	write
	ldr	r3, .L262+8
	ldr	r3, [r3]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-56]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-44]	@ float
	ldr	r3, .L262+12
	ldr	r3, [r3]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-60]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-40]	@ float
	sub	r3, fp, #44
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-48]
	bl	write
	sub	r3, fp, #40
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-48]
	bl	write
	ldr	r3, .L262+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-44]	@ float
	ldr	r3, .L262+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-40]	@ float
	sub	r3, fp, #44
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-48]
	bl	write
	sub	r3, fp, #40
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-48]
	bl	write
	mov	r3, #24
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-24]
	ldr	r3, .L262+12
	ldr	r3, [r3]
	str	r3, [fp, #-36]
	b	.L249
.L256:
	ldr	r3, .L262+8
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	b	.L250
.L255:
	ldr	r3, [fp, #-36]
	ldr	r1, [fp, #8]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L251
	ldr	r3, [fp, #-32]
	ldr	r1, [fp, #8]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L251
	ldr	r2, [fp, #-36]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, r2
	ldr	r2, [fp, #-32]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, .L262+16
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L252
	ldr	r2, [fp, #-36]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-52]
	add	r2, r3, r2
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, .L262+16
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L252
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
	b	.L251
.L252:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L251:
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L250:
	ldr	r3, .L262+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-56]
	sub	r3, r2, r3
	ldr	r2, [fp, #-32]
	cmp	r2, r3
	blt	.L255
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L249:
	ldr	r3, .L262+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-60]
	sub	r3, r2, r3
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	blt	.L256
	ldr	r3, .L262+12
	ldr	r3, [r3]
	str	r3, [fp, #-36]
	b	.L257
.L258:
	ldr	r2, [fp, #-36]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-52]
	add	r2, r3, r2
	ldr	r3, .L262+8
	ldr	r3, [r3]
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r3, .L262+8
	ldr	r3, [r3]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-56]
	sub	r3, r2, r3
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r0, [fp, #-48]
	bl	write
	mov	r2, r0
	ldr	r3, [fp, #-28]
	add	r3, r3, r2
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L257:
	ldr	r3, .L262+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-60]
	sub	r3, r2, r3
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	blt	.L258
	ldr	r0, [fp, #-48]
	bl	close
	ldr	r2, [fp, #-28]
	ldr	r1, [fp, #-64]
	ldr	r0, .L262+20
	bl	printf
	ldr	r1, [fp, #-20]
	ldr	r0, .L262+24
	bl	printf
	ldr	r1, [fp, #-24]
	ldr	r0, .L262+28
	bl	printf
	ldr	r0, [fp, #-20]
	bl	__aeabi_i2d
	mov	r4, r0
	mov	r5, r1
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L262+32
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-64]
	ldr	r0, .L262+36
	bl	printf
	ldr	r3, .L262+40
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	nop
	ldr	r3, .L262
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L259
	bl	__stack_chk_fail
.L259:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L263:
	.align	2
.L262:
	.word	.LC163
	.word	.LC158
	.word	OFFSET_X
	.word	OFFSET_Y
	.word	1120403456
	.word	.LC159
	.word	.LC160
	.word	.LC161
	.word	1079574528
	.word	.LC162
	.word	stdout
	.size	output_velocities, .-output_velocities
	.section	.rodata
	.align	2
.LC164:
	.ascii	"\012Fatal error: covariance file not opened\000"
	.align	2
.LC165:
	.ascii	"\012Full velocity covariance matrices output: %d by"
	.ascii	"tes\012\000"
	.align	2
.LC166:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	output_covariances
	.syntax unified
	.arm
	.fpu softvfp
	.type	output_covariances, %function
output_covariances:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	ldr	r3, .L269
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bge	.L265
	ldr	r0, .L269+4
	bl	puts
	mov	r0, #1
	bl	exit
.L265:
	ldr	r0, [fp, #-40]
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-24]	@ float
	ldr	r0, [fp, #-44]
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-20]	@ float
	sub	r3, fp, #24
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	write
	sub	r3, fp, #20
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	write
	ldr	r3, .L269+8
	ldr	r3, [r3]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-40]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-24]	@ float
	ldr	r3, .L269+12
	ldr	r3, [r3]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-44]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-20]	@ float
	sub	r3, fp, #24
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	write
	sub	r3, fp, #20
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	write
	ldr	r3, .L269+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-24]	@ float
	ldr	r3, .L269+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-20]	@ float
	sub	r3, fp, #24
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	write
	sub	r3, fp, #20
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	write
	mov	r3, #24
	str	r3, [fp, #-12]
	ldr	r3, .L269+12
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	b	.L266
.L267:
	ldr	r2, [fp, #-16]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-36]
	add	r2, r3, r2
	ldr	r3, .L269+8
	ldr	r3, [r3]
	lsl	r3, r3, #4
	add	r1, r2, r3
	ldr	r3, .L269+8
	ldr	r3, [r3]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-40]
	sub	r3, r2, r3
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r0, [fp, #-32]
	bl	write
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L266:
	ldr	r3, .L269+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-44]
	sub	r3, r2, r3
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L267
	ldr	r0, [fp, #-32]
	bl	close
	ldr	r1, [fp, #-12]
	ldr	r0, .L269+16
	bl	printf
	ldr	r3, .L269+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	nop
	ldr	r3, .L269
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L268
	bl	__stack_chk_fail
.L268:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L270:
	.align	2
.L269:
	.word	.LC166
	.word	.LC164
	.word	OFFSET_X
	.word	OFFSET_Y
	.word	.LC165
	.word	stdout
	.size	output_covariances, .-output_covariances
	.section	.rodata
	.align	2
.LC167:
	.ascii	"\012Velocities input: %d bytes\012\000"
	.align	2
.LC168:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	input_velocities
	.syntax unified
	.arm
	.fpu softvfp
	.type	input_velocities, %function
input_velocities:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	ldr	r3, .L280
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L272
.L275:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L273
.L274:
	ldr	r2, [fp, #-20]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-36]
	add	r2, r3, r2
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r1, .L280+4
	str	r1, [r3, #4]	@ float
	ldr	r1, [fp, #-20]
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	lsl	r3, r3, #3
	mov	r1, r3
	ldr	r3, [fp, #-36]
	add	r1, r3, r1
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-16]
	str	r2, [r1, r3, lsl #3]	@ float
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L273:
	ldr	r3, [fp, #-16]
	cmp	r3, #324
	ble	.L274
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L272:
	ldr	r3, [fp, #-20]
	cmp	r3, #324
	ble	.L275
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bge	.L276
	ldr	r0, .L280+8
	bl	puts
	mov	r0, #1
	bl	exit
.L276:
	sub	r3, fp, #28
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #24
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #28
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #24
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #28
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #24
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	ldr	r3, [fp, #-28]	@ float
	mov	r0, r3
	bl	__aeabi_f2iz
	mov	r3, r0
	ldr	r2, .L280+12
	str	r3, [r2]
	ldr	r3, [fp, #-24]	@ float
	mov	r0, r3
	bl	__aeabi_f2iz
	mov	r3, r0
	ldr	r2, .L280+16
	str	r3, [r2]
	mov	r3, #24
	str	r3, [fp, #-12]
	ldr	r3, .L280+12
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	b	.L277
.L278:
	ldr	r2, [fp, #-20]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-36]
	add	r2, r3, r2
	ldr	r3, .L280+16
	ldr	r3, [r3]
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r3, .L280+16
	ldr	r3, [r3]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-40]
	sub	r3, r2, r3
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r0, [fp, #-32]
	bl	read
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L277:
	ldr	r3, .L280+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-44]
	sub	r3, r2, r3
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	blt	.L278
	ldr	r0, [fp, #-32]
	bl	close
	ldr	r1, [fp, #-12]
	ldr	r0, .L280+20
	bl	printf
	ldr	r3, .L280+24
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	nop
	ldr	r3, .L280
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L279
	bl	__stack_chk_fail
.L279:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L281:
	.align	2
.L280:
	.word	.LC168
	.word	1120403456
	.word	.LC158
	.word	OFFSET_Y
	.word	OFFSET_X
	.word	.LC167
	.word	stdout
	.size	input_velocities, .-input_velocities
	.section	.rodata
	.align	2
.LC169:
	.ascii	"\012Full velocity covariance matrices input: %d byt"
	.ascii	"es\012\000"
	.align	2
.LC170:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	input_covariances
	.syntax unified
	.arm
	.fpu softvfp
	.type	input_covariances, %function
input_covariances:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	ldr	r3, .L287
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bge	.L283
	ldr	r0, .L287+4
	bl	puts
	mov	r0, #1
	bl	exit
.L283:
	sub	r3, fp, #24
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #20
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #24
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #20
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #24
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	sub	r3, fp, #20
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-32]
	bl	read
	mov	r3, #24
	str	r3, [fp, #-12]
	ldr	r3, .L287+8
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	b	.L284
.L285:
	ldr	r2, [fp, #-16]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-36]
	add	r2, r3, r2
	ldr	r3, .L287+12
	ldr	r3, [r3]
	lsl	r3, r3, #4
	add	r1, r2, r3
	ldr	r3, .L287+12
	ldr	r3, [r3]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-40]
	sub	r3, r2, r3
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r0, [fp, #-32]
	bl	read
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L284:
	ldr	r3, .L287+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-44]
	sub	r3, r2, r3
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L285
	ldr	r0, [fp, #-32]
	bl	close
	ldr	r1, [fp, #-12]
	ldr	r0, .L287+16
	bl	printf
	ldr	r3, .L287+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	nop
	ldr	r3, .L287
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L286
	bl	__stack_chk_fail
.L286:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L288:
	.align	2
.L287:
	.word	.LC170
	.word	.LC164
	.word	OFFSET_Y
	.word	OFFSET_X
	.word	.LC169
	.word	stdout
	.size	input_covariances, .-input_covariances
	.global	__aeabi_fcmplt
	.section	.rodata
	.align	2
.LC171:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	calc_statistics
	.syntax unified
	.arm
	.fpu softvfp
	.type	calc_statistics, %function
calc_statistics:
	@ args = 24, pretend = 0, frame = 422600
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #421888
	sub	sp, sp, #712
	sub	ip, fp, #421888
	sub	ip, ip, #12
	str	r0, [ip, #-676]
	sub	r0, fp, #421888
	sub	r0, r0, #12
	str	r1, [r0, #-680]
	sub	r1, fp, #421888
	sub	r1, r1, #12
	str	r2, [r1, #-684]
	sub	r2, fp, #421888
	sub	r2, r2, #12
	str	r3, [r2, #-688]
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	lr, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	ip, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r0, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	ldr	r3, [fp, #4]
	str	r3, [lr, #-692]
	ldr	r3, [fp, #8]
	str	r3, [ip, #-696]
	ldr	r3, [fp, #12]
	str	r3, [r0, #-700]
	ldr	r3, [fp, #16]
	str	r3, [r1, #-704]
	ldr	r3, [fp, #20]
	str	r3, [r2, #-708]
	ldr	r3, .L319
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-664]
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-664]
	str	r3, [r2, #-668]
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-652]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-652]	@ float
	str	r3, [r2, #-644]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-704]
	ldr	r2, .L319+4
	str	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-708]
	mov	r2, #0
	str	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-696]
	mov	r2, #0
	str	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-696]
	ldr	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-692]
	str	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-700]
	mov	r2, #0
	str	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	ldr	r3, .L319+8
	ldr	r3, [r3]
	str	r3, [r2, #-660]
	b	.L290
.L300:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	ldr	r3, .L319+12
	ldr	r3, [r3]
	str	r3, [r2, #-656]
	b	.L291
.L299:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-660]
	ldr	r1, [fp, #24]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L292
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-656]
	ldr	r1, [fp, #24]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L292
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-680]
	add	r3, r3, r2
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-656]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, .L319+16
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L293
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-680]
	add	r2, r3, r2
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-656]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, .L319+16
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L293
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-664]
	add	r3, r3, #1
	str	r3, [r2, #-664]
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-656]
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r2, .L319+16
	str	r2, [r3, #-616]	@ float
	b	.L292
.L293:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-668]
	add	r3, r3, #1
	str	r3, [r2, #-668]
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-680]
	add	r3, r3, r2
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-656]
	ldr	r3, [r3, r2, lsl #3]	@ float
	sub	r2, fp, #421888
	sub	r2, r2, #12
	str	r3, [r2, #-624]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-680]
	add	r2, r3, r2
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-656]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	sub	r2, fp, #421888
	sub	r2, r2, #12
	str	r3, [r2, #-620]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-676]
	add	r3, r3, r2
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-656]
	ldr	r3, [r3, r2, lsl #3]	@ float
	sub	r2, fp, #421888
	sub	r2, r2, #12
	str	r3, [r2, #-632]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-676]
	add	r2, r3, r2
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-656]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	sub	r2, fp, #421888
	sub	r2, r2, #12
	str	r3, [r2, #-628]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	sub	r2, fp, #421888
	sub	r2, r2, #12
	sub	r1, fp, #421888
	sub	r1, r1, #12
	sub	r1, r1, #632
	sub	r0, fp, #421888
	sub	r0, r0, #12
	sub	r0, r0, #624
	ldr	r3, [r3, #-656]
	ldr	r2, [r2, #-660]
	bl	PsiER
	str	r0, [r4, #-636]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-656]
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-636]	@ float
	str	r2, [r3, #-616]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-692]
	ldr	r3, [r3]	@ float
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r1, [r2, #-636]	@ float
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-692]
	str	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r1, [r3, #-636]	@ float
	ldr	r0, [r3, #-636]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r1, r2
	ldr	r0, [r3, #-652]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4, #-652]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-704]
	ldr	r3, [r3]	@ float
	sub	r2, fp, #421888
	sub	r2, r2, #12
	mov	r1, r3
	ldr	r0, [r2, #-636]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L296
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-704]
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-636]	@ float
	str	r2, [r3]	@ float
.L296:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-708]
	ldr	r3, [r3]	@ float
	sub	r2, fp, #421888
	sub	r2, r2, #12
	mov	r1, r3
	ldr	r0, [r2, #-636]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L292
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-708]
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-636]	@ float
	str	r2, [r3]	@ float
.L292:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-656]
	add	r3, r3, #1
	str	r3, [r2, #-656]
.L291:
	ldr	r3, .L319+12
	ldr	r3, [r3]
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-684]
	sub	r3, r2, r3
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-656]
	cmp	r2, r3
	blt	.L299
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-660]
	add	r3, r3, #1
	str	r3, [r2, #-660]
.L290:
	ldr	r3, .L319+8
	ldr	r3, [r3]
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-688]
	sub	r3, r2, r3
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-660]
	cmp	r2, r3
	blt	.L300
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-668]
	cmp	r3, #0
	beq	.L301
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-692]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r0, [r3, #-668]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r2, r0
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-692]
	str	r2, [r3]	@ float
.L301:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-668]
	cmp	r3, #1
	ble	.L302
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-648]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	ldr	r3, .L319+8
	ldr	r3, [r3]
	str	r3, [r2, #-660]
	b	.L303
.L308:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	ldr	r3, .L319+12
	ldr	r3, [r3]
	str	r3, [r2, #-656]
	b	.L304
.L307:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-660]
	ldr	r1, [fp, #24]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L305
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-656]
	ldr	r1, [fp, #24]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L305
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-656]
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r3, [r3, #-616]	@ float
	ldr	r1, .L319+16
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L305
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r3, #-660]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-656]
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r2, [r3, #-616]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-692]
	ldr	r3, [r3]	@ float
	sub	r1, fp, #421888
	sub	r1, r1, #12
	mov	r4, r1
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [r4, #-640]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r1, [r3, #-640]	@ float
	ldr	r0, [r3, #-640]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [r4, #-640]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r1, [r2, #-640]	@ float
	ldr	r0, [r3, #-648]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4, #-648]	@ float
.L305:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-656]
	add	r3, r3, #1
	str	r3, [r2, #-656]
.L304:
	ldr	r3, .L319+12
	ldr	r3, [r3]
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-684]
	sub	r3, r2, r3
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-656]
	cmp	r2, r3
	blt	.L307
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-660]
	add	r3, r3, #1
	str	r3, [r2, #-660]
.L303:
	ldr	r3, .L319+8
	ldr	r3, [r3]
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-688]
	sub	r3, r2, r3
	sub	r2, fp, #421888
	sub	r2, r2, #12
	ldr	r2, [r2, #-660]
	cmp	r2, r3
	blt	.L308
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-668]
	sub	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	sub	r2, fp, #421888
	sub	r2, r2, #12
	mov	r1, r3
	ldr	r0, [r2, #-648]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r2, r0
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-696]
	str	r2, [r3]	@ float
	b	.L309
.L302:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-696]
	mov	r2, #0
	str	r2, [r3]	@ float
.L309:
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r0, [r3, #-668]
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L319+20
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r2, [r2, #-668]
	ldr	r3, [r3, #-664]
	add	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r2, r0
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-700]
	str	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-692]
	ldr	r3, [r3]	@ float
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L310
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-708]
	mov	r2, #0
	str	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-708]
	ldr	r2, [r3]	@ float
	sub	r3, fp, #421888
	sub	r3, r3, #12
	ldr	r3, [r3, #-704]
	str	r2, [r3]	@ float
.L310:
	ldr	r3, .L319+24
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	nop
	ldr	r3, .L319
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L312
	bl	__stack_chk_fail
.L312:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L320:
	.align	2
.L319:
	.word	.LC171
	.word	2139095040
	.word	OFFSET_Y
	.word	OFFSET_X
	.word	1120403456
	.word	1079574528
	.word	stdout
	.size	calc_statistics, .-calc_statistics
	.global	__aeabi_dcmplt
	.section	.rodata
	.align	2
.LC172:
	.ascii	"ERROR in PsiER()...\012 r=%8.4f  v=%8.4f  nva=%8.4f"
	.ascii	" nve= %8.4f\012\000"
	.align	2
.LC173:
	.ascii	"va=(%f,%f) ve=(%f,%f)\012\000"
	.align	2
.LC174:
	.ascii	"i=%d j=%d\012\000"
	.align	2
.LC175:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	PsiER
	.syntax unified
	.arm
	.fpu softvfp
	.type	PsiER, %function
PsiER:
	@ args = 0, pretend = 0, frame = 64
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #88
	str	r0, [fp, #-80]
	str	r1, [fp, #-84]
	str	r2, [fp, #-88]
	str	r3, [fp, #-92]
	ldr	r3, .L333
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	ldr	r3, [fp, #-80]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-56]	@ float
	ldr	r3, [fp, #-80]
	ldr	r3, [r3, #4]	@ float
	str	r3, [fp, #-52]	@ float
	mov	r3, #1065353216
	str	r3, [fp, #-48]	@ float
	ldr	r3, [fp, #-84]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-44]	@ float
	ldr	r3, [fp, #-84]
	ldr	r3, [r3, #4]	@ float
	str	r3, [fp, #-40]	@ float
	mov	r3, #1065353216
	str	r3, [fp, #-36]	@ float
	sub	r3, fp, #44
	mov	r1, #3
	mov	r0, r3
	bl	L2norm
	str	r0, [fp, #-68]	@ float
	sub	r3, fp, #56
	mov	r1, #3
	mov	r0, r3
	bl	L2norm
	str	r0, [fp, #-64]	@ float
	ldr	r3, [fp, #-56]	@ float
	ldr	r2, [fp, #-44]	@ 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
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L333+4
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r1, [fp, #-64]	@ float
	ldr	r0, [fp, #-68]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-72]	@ float
	mov	r1, #1065353216
	ldr	r0, [fp, #-72]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L322
	ldr	r0, [fp, #-72]	@ float
	bl	__aeabi_f2d
	ldr	r2, .L333+8
	ldr	r3, .L333+12
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L322
	mov	r3, #1065353216
	str	r3, [fp, #-72]	@ float
.L322:
	ldr	r0, [fp, #-72]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	acos
	ldr	r2, .L333+16
	ldr	r3, .L333+20
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-60]	@ float
	mov	r3, #1
	mov	r4, r3
	mov	r1, #0
	ldr	r0, [fp, #-60]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L325
	mov	r3, #0
	mov	r4, r3
.L325:
	and	r3, r4, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	bne	.L326
	mov	r3, #1
	mov	r4, r3
	ldr	r1, .L333+24
	ldr	r0, [fp, #-60]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L327
	mov	r3, #0
	mov	r4, r3
.L327:
	and	r3, r4, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L328
.L326:
	ldr	r0, [fp, #-60]	@ float
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r0, [fp, #-72]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-68]	@ float
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r0, [fp, #-64]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L333+28
	bl	printf
	ldr	r3, [fp, #-84]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, [fp, #-84]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-80]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-80]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L333+32
	bl	printf
	ldr	r2, [fp, #-92]
	ldr	r1, [fp, #-88]
	ldr	r0, .L333+36
	bl	printf
.L328:
	ldr	r3, [fp, #-60]	@ float
	ldr	r2, .L333
	ldr	r1, [r2]
	ldr	r2, [fp, #-32]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L330
	bl	__stack_chk_fail
.L330:
	mov	r0, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L334:
	.align	2
.L333:
	.word	.LC175
	.word	1072693248
	.word	-611603343
	.word	1072693352
	.word	442745336
	.word	1078765020
	.word	1127481344
	.word	.LC172
	.word	.LC173
	.word	.LC174
	.size	PsiER, .-PsiER
	.section	.rodata
	.align	2
.LC176:
	.ascii	"ERROR in PsiEN()  v1: %f ve: %f\012\000"
	.align	2
.LC177:
	.ascii	"nve: %f nva: %f\012\000"
	.align	2
.LC178:
	.ascii	"n: %f %f\012\000"
	.align	2
.LC179:
	.ascii	" ve: %f %f va: %f %f\012\000"
	.align	2
.LC180:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	PsiEN
	.syntax unified
	.arm
	.fpu softvfp
	.type	PsiEN, %function
PsiEN:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #64
	str	r0, [fp, #-64]
	str	r1, [fp, #-68]
	ldr	r3, .L346
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r1, #2
	ldr	r0, [fp, #-68]
	bl	L2norm
	str	r0, [fp, #-52]	@ float
	mov	r1, #2
	ldr	r0, [fp, #-64]
	bl	L2norm
	str	r0, [fp, #-48]	@ float
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_f2d
	ldr	r2, .L346+4
	ldr	r3, .L346+8
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L345
	ldr	r3, [fp, #-64]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-48]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-40]	@ float
	ldr	r3, [fp, #-64]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-48]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-36]	@ float
	ldr	r3, [fp, #-68]
	ldr	r3, [r3]	@ float
	ldr	r2, [fp, #-40]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-68]
	add	r3, r3, #4
	ldr	r3, [r3]	@ 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_fadd
	mov	r3, r0
	ldr	r1, [fp, #-48]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-56]	@ float
	ldr	r0, [fp, #-56]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r1, [fp, #-52]	@ float
	ldr	r0, [fp, #-52]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, #1065353216
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r6, r0
	mov	r7, r1
	ldr	r1, [fp, #-48]	@ float
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, #1065353216
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-44]	@ float
	ldr	r0, [fp, #-44]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	asin
	ldr	r2, .L346+12
	ldr	r3, .L346+16
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-56]	@ float
	mov	r3, #1
	mov	r4, r3
	ldr	r1, .L346+20
	ldr	r0, [fp, #-56]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L338
	mov	r3, #0
	mov	r4, r3
.L338:
	and	r3, r4, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	bne	.L339
	mov	r3, #1
	mov	r4, r3
	ldr	r1, .L346+24
	ldr	r0, [fp, #-56]	@ float
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L340
	mov	r3, #0
	mov	r4, r3
.L340:
	and	r3, r4, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L341
.L339:
	ldr	r0, [fp, #-56]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-44]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L346+28
	bl	printf
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-52]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L346+32
	bl	printf
	ldr	r3, [fp, #-40]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-36]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L346+36
	bl	printf
	ldr	r3, [fp, #-64]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, [fp, #-64]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-68]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-68]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L346+40
	bl	printf
	ldr	r3, .L346+44
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	b	.L341
.L345:
	ldr	r3, .L346+48
	str	r3, [fp, #-56]	@ float
.L341:
	ldr	r3, [fp, #-56]
	bic	r3, r3, #-2147483648
	ldr	r2, .L346
	ldr	r1, [r2]
	ldr	r2, [fp, #-32]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L343
	bl	__stack_chk_fail
.L343:
	mov	r0, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L347:
	.align	2
.L346:
	.word	.LC180
	.word	-500134854
	.word	1044740494
	.word	442745336
	.word	1078765020
	.word	-1028390912
	.word	1119092736
	.word	.LC176
	.word	.LC177
	.word	.LC178
	.word	.LC179
	.word	stdout
	.word	1120403456
	.size	PsiEN, .-PsiEN
	.section	.rodata
	.align	2
.LC181:
	.ascii	"\012Fatal error: n not DIM %d in jacobi\012\000"
	.global	__aeabi_dcmpeq
	.align	2
.LC182:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	jacobi
	.syntax unified
	.arm
	.fpu softvfp
	.type	jacobi, %function
jacobi:
	@ args = 4, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #136
	str	r0, [fp, #-104]
	str	r1, [fp, #-108]
	str	r2, [fp, #-112]
	str	r3, [fp, #-116]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-120]
	ldr	r3, .L400
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, [fp, #-108]
	cmp	r3, #2
	beq	.L349
	ldr	r3, .L400+4
	ldr	r3, [r3]
	mov	r2, #2
	ldr	r1, .L400+8
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L349:
	mov	r3, #0
	str	r3, [fp, #-84]
	b	.L350
.L355:
	mov	r3, #0
	str	r3, [fp, #-88]
	b	.L351
.L352:
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-116]
	add	r3, r2, r3
	ldr	r2, [fp, #-88]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-88]
.L351:
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L352
	mov	r3, #0
	str	r3, [fp, #-88]
	b	.L353
.L354:
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-104]
	add	r3, r2, r3
	ldr	r2, [fp, #-88]
	ldr	r2, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #-84]
	lsl	r1, r3, #1
	ldr	r3, [fp, #-88]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-20]	@ float
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-88]
.L353:
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L354
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-116]
	add	r3, r2, r3
	ldr	r2, [fp, #-84]
	mov	r1, #1065353216
	str	r1, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-84]
.L350:
	ldr	r2, [fp, #-84]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L355
	mov	r3, #0
	str	r3, [fp, #-84]
	b	.L356
.L357:
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r2, r2, r3
	ldr	r1, [fp, #-84]
	mov	r3, r1
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	sub	r3, r3, #20
	ldr	r3, [r3]	@ float
	str	r3, [r2]	@ float
	ldr	r2, [r2]	@ float
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-36]	@ float
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-28]	@ float
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-84]
.L356:
	ldr	r2, [fp, #-84]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L357
	ldr	r3, [fp, #-120]
	mov	r2, #0
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-80]
	b	.L358
.L391:
	mov	r3, #0
	str	r3, [fp, #-68]	@ float
	mov	r3, #0
	str	r3, [fp, #-84]
	b	.L359
.L362:
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-88]
	b	.L360
.L361:
	ldr	r3, [fp, #-84]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-88]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-20]	@ float
	bic	r3, r3, #-2147483648
	mov	r1, r3
	ldr	r0, [fp, #-68]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-68]	@ float
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-88]
.L360:
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L361
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-84]
.L359:
	ldr	r3, [fp, #-108]
	sub	r3, r3, #1
	ldr	r2, [fp, #-84]
	cmp	r2, r3
	blt	.L362
	mov	r1, #0
	ldr	r0, [fp, #-68]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L399
	ldr	r3, [fp, #-80]
	cmp	r3, #2
	bgt	.L366
	ldr	r0, [fp, #-68]	@ float
	bl	__aeabi_f2d
	ldr	r2, .L400+12
	ldr	r3, .L400+16
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-108]
	mov	r2, r3
	mul	r2, r3, r2
	mov	r3, r2
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-76]	@ float
	b	.L367
.L366:
	mov	r3, #0
	str	r3, [fp, #-76]	@ float
.L367:
	mov	r3, #0
	str	r3, [fp, #-84]
	b	.L368
.L388:
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-88]
	b	.L369
.L387:
	ldr	r3, [fp, #-84]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-88]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-20]	@ float
	bic	r3, r3, #-2147483648
	ldr	r1, .L400+20
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-96]	@ float
	ldr	r3, [fp, #-80]
	cmp	r3, #3
	ble	.L370
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-96]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L370
	ldr	r3, [fp, #-88]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-96]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-88]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L370
	ldr	r3, [fp, #-84]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-88]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-20]	@ float
	b	.L373
.L370:
	ldr	r3, [fp, #-84]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-88]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-20]	@ float
	bic	r3, r3, #-2147483648
	mov	r1, r3
	ldr	r0, [fp, #-76]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L373
	ldr	r3, [fp, #-88]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-100]	@ float
	ldr	r3, [fp, #-100]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-96]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-100]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L398
	ldr	r3, [fp, #-84]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-88]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-20]	@ float
	ldr	r2, [fp, #-100]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-72]	@ float
	b	.L377
.L398:
	ldr	r3, [fp, #-100]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L400+24
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-84]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-88]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-20]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-64]	@ float
	ldr	r3, [fp, #-64]
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r1, [fp, #-64]	@ float
	ldr	r0, [fp, #-64]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L400+28
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L400+28
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-72]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-64]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L377
	ldr	r3, [fp, #-72]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-72]	@ float
.L377:
	ldr	r1, [fp, #-72]	@ float
	ldr	r0, [fp, #-72]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L400+28
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L400+28
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-60]	@ float
	ldr	r1, [fp, #-60]	@ float
	ldr	r0, [fp, #-72]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-56]	@ float
	ldr	r0, [fp, #-56]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-60]	@ float
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L400+28
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-52]	@ float
	ldr	r3, [fp, #-84]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-88]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-20]	@ float
	ldr	r1, [fp, #-72]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-100]	@ float
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-28]	@ float
	ldr	r2, [fp, #-100]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-28]	@ float
	ldr	r3, [fp, #-88]
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-28]	@ float
	ldr	r2, [fp, #-100]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-88]
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-28]	@ float
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r1, [fp, #-100]	@ float
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r4, r2, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #-88]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r1, [fp, #-100]	@ float
	ldr	r3, [fp, #-88]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r4, r2, r3
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #-84]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-88]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-20]	@ float
	mov	r3, #0
	str	r3, [fp, #-92]
	b	.L379
.L380:
	sub	r0, fp, #32
	ldr	r3, [fp, #-52]	@ float
	str	r3, [sp, #16]	@ float
	ldr	r3, [fp, #-56]	@ float
	str	r3, [sp, #12]	@ float
	sub	r3, fp, #96
	str	r3, [sp, #8]
	sub	r3, fp, #100
	str	r3, [sp, #4]
	ldr	r3, [fp, #-88]
	str	r3, [sp]
	ldr	r3, [fp, #-92]
	ldr	r2, [fp, #-84]
	ldr	r1, [fp, #-92]
	bl	rotate
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L379:
	ldr	r3, [fp, #-84]
	sub	r3, r3, #1
	ldr	r2, [fp, #-92]
	cmp	r2, r3
	blt	.L380
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-92]
	b	.L381
.L382:
	sub	r0, fp, #32
	ldr	r3, [fp, #-52]	@ float
	str	r3, [sp, #16]	@ float
	ldr	r3, [fp, #-56]	@ float
	str	r3, [sp, #12]	@ float
	sub	r3, fp, #96
	str	r3, [sp, #8]
	sub	r3, fp, #100
	str	r3, [sp, #4]
	ldr	r3, [fp, #-88]
	str	r3, [sp]
	ldr	r3, [fp, #-92]
	ldr	r2, [fp, #-92]
	ldr	r1, [fp, #-84]
	bl	rotate
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L381:
	ldr	r3, [fp, #-88]
	sub	r3, r3, #1
	ldr	r2, [fp, #-92]
	cmp	r2, r3
	blt	.L382
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-92]
	b	.L383
.L384:
	sub	r0, fp, #32
	ldr	r3, [fp, #-52]	@ float
	str	r3, [sp, #16]	@ float
	ldr	r3, [fp, #-56]	@ float
	str	r3, [sp, #12]	@ float
	sub	r3, fp, #96
	str	r3, [sp, #8]
	sub	r3, fp, #100
	str	r3, [sp, #4]
	ldr	r3, [fp, #-92]
	str	r3, [sp]
	ldr	r3, [fp, #-88]
	ldr	r2, [fp, #-92]
	ldr	r1, [fp, #-84]
	bl	rotate
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L383:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L384
	mov	r3, #0
	str	r3, [fp, #-92]
	b	.L385
.L386:
	ldr	r3, [fp, #-52]	@ float
	str	r3, [sp, #16]	@ float
	ldr	r3, [fp, #-56]	@ float
	str	r3, [sp, #12]	@ float
	sub	r3, fp, #96
	str	r3, [sp, #8]
	sub	r3, fp, #100
	str	r3, [sp, #4]
	ldr	r3, [fp, #-88]
	str	r3, [sp]
	ldr	r3, [fp, #-92]
	ldr	r2, [fp, #-84]
	ldr	r1, [fp, #-92]
	ldr	r0, [fp, #-116]
	bl	rotate
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L385:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L386
	ldr	r3, [fp, #-120]
	ldr	r3, [r3]
	add	r2, r3, #1
	ldr	r3, [fp, #-120]
	str	r2, [r3]
.L373:
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-88]
.L369:
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L387
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-84]
.L368:
	ldr	r3, [fp, #-108]
	sub	r3, r3, #1
	ldr	r2, [fp, #-84]
	cmp	r2, r3
	blt	.L388
	mov	r3, #0
	str	r3, [fp, #-84]
	b	.L389
.L390:
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r2, [r3, #-36]	@ float
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	ldr	r3, [r3, #-28]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-36]	@ float
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-112]
	add	r2, r2, r3
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	ldr	r3, [r3, #-36]	@ float
	str	r3, [r2]	@ float
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-28]	@ float
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-84]
.L389:
	ldr	r2, [fp, #-84]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L390
	ldr	r3, [fp, #-80]
	add	r3, r3, #1
	str	r3, [fp, #-80]
.L358:
	ldr	r3, [fp, #-80]
	cmp	r3, #99
	ble	.L391
	b	.L348
.L399:
	nop
.L348:
	ldr	r3, .L400
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L392
	bl	__stack_chk_fail
.L392:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L401:
	.align	2
.L400:
	.word	.LC182
	.word	stderr
	.word	.LC181
	.word	-1717986918
	.word	1070176665
	.word	1120403456
	.word	1071644672
	.word	1072693248
	.size	jacobi, .-jacobi
	.align	2
	.global	rotate
	.syntax unified
	.arm
	.fpu softvfp
	.type	rotate, %function
rotate:
	@ args = 20, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r2, [fp, #-24]
	ldr	r2, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #12]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r2, [fp, #4]
	ldr	r2, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #8]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r5, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r4, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #20]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	ldr	r1, [fp, #16]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-16]
	add	r4, r2, r3
	mov	r0, r5
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r4, r3, lsl #2]	@ float
	ldr	r3, [fp, #8]
	ldr	r5, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r4, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #20]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	ldr	r1, [fp, #16]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-16]
	add	r4, r2, r3
	mov	r0, r5
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	str	r2, [r4, r3, lsl #2]	@ float
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
	.size	rotate, .-rotate
	.section	.rodata
	.align	2
.LC183:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	calc_mean_and_covariance1
	.syntax unified
	.arm
	.fpu softvfp
	.type	calc_mean_and_covariance1, %function
calc_mean_and_covariance1:
	@ args = 32, pretend = 0, frame = 304
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #304
	str	r0, [fp, #-288]
	str	r1, [fp, #-292]
	str	r2, [fp, #-296]
	str	r3, [fp, #-300]	@ float
	ldr	r3, [fp, #16]
	str	r3, [fp, #-304]
	ldr	r3, [fp, #20]
	str	r3, [fp, #-308]
	ldr	r3, [fp, #24]
	str	r3, [fp, #-312]
	ldr	r3, [fp, #28]
	str	r3, [fp, #-316]
	ldr	r3, .L431
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, [fp, #-316]
	mov	r2, #69
	str	r2, [r3]
	ldr	r3, .L431+4
	str	r3, [fp, #-256]	@ float
	ldr	r3, .L431+8
	str	r3, [fp, #-260]	@ float
	mov	r3, #0
	str	r3, [fp, #-264]	@ float
	ldr	r3, [fp, #32]
	lsl	r3, r3, #1
	add	r3, r3, #1
	str	r3, [fp, #-244]
	mov	r3, #0
	str	r3, [fp, #-280]
	b	.L404
.L411:
	mov	r3, #0
	str	r3, [fp, #-276]
	b	.L405
.L410:
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-264]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-264]	@ float
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-256]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L406
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	str	r3, [fp, #-256]	@ float
	ldr	r3, [fp, #-276]
	str	r3, [fp, #-272]
	ldr	r3, [fp, #-280]
	str	r3, [fp, #-268]
.L406:
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-260]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L408
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	str	r3, [fp, #-260]	@ float
	ldr	r3, [fp, #-276]
	str	r3, [fp, #-232]
	ldr	r3, [fp, #-280]
	str	r3, [fp, #-228]
.L408:
	ldr	r3, [fp, #-276]
	add	r3, r3, #1
	str	r3, [fp, #-276]
.L405:
	ldr	r2, [fp, #-276]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	blt	.L410
	ldr	r3, [fp, #-280]
	add	r3, r3, #1
	str	r3, [fp, #-280]
.L404:
	ldr	r2, [fp, #-280]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	blt	.L411
	ldr	r1, [fp, #-300]	@ float
	ldr	r0, [fp, #4]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-244]
	sub	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-224]	@ float
	ldr	r1, [fp, #8]	@ float
	ldr	r0, [fp, #12]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-244]
	sub	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-220]	@ float
	ldr	r3, [fp, #-300]	@ float
	str	r3, [fp, #-216]	@ float
	ldr	r3, [fp, #8]	@ float
	str	r3, [fp, #-212]	@ float
	ldr	r4, [fp, #-216]	@ float
	ldr	r5, [fp, #-224]	@ float
	ldr	r0, [fp, #-272]
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-208]	@ float
	ldr	r4, [fp, #-212]	@ float
	ldr	r5, [fp, #-220]	@ float
	ldr	r0, [fp, #-268]
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-204]	@ float
	mov	r3, #0
	str	r3, [fp, #-248]	@ float
	ldr	r3, [fp, #-248]	@ float
	str	r3, [fp, #-252]	@ float
	mov	r3, #0
	str	r3, [fp, #-280]
	b	.L412
.L415:
	mov	r3, #0
	str	r3, [fp, #-276]
	b	.L413
.L414:
	ldr	r4, [fp, #-212]	@ float
	ldr	r5, [fp, #-220]	@ float
	ldr	r0, [fp, #-280]
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-240]	@ float
	ldr	r4, [fp, #-216]	@ float
	ldr	r5, [fp, #-220]	@ float
	ldr	r0, [fp, #-276]
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-236]	@ float
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	ldr	r1, [fp, #-240]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-248]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-248]	@ float
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	ldr	r1, [fp, #-236]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-252]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-252]	@ float
	ldr	r3, [fp, #-276]
	add	r3, r3, #1
	str	r3, [fp, #-276]
.L413:
	ldr	r2, [fp, #-276]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	blt	.L414
	ldr	r3, [fp, #-280]
	add	r3, r3, #1
	str	r3, [fp, #-280]
.L412:
	ldr	r2, [fp, #-280]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	blt	.L415
	ldr	r1, [fp, #-264]	@ float
	ldr	r0, [fp, #-252]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-252]	@ float
	ldr	r1, [fp, #-264]	@ float
	ldr	r0, [fp, #-248]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-248]	@ float
	ldr	r3, [fp, #-292]
	ldr	r2, [fp, #-252]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-292]
	add	r3, r3, #4
	ldr	r2, [fp, #-248]	@ float
	str	r2, [r3]	@ float
	mov	r3, #0
	str	r3, [fp, #-280]
	b	.L416
.L419:
	mov	r3, #0
	str	r3, [fp, #-276]
	b	.L417
.L418:
	ldr	r3, [fp, #-280]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-296]
	add	r3, r2, r3
	ldr	r2, [fp, #-276]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]	@ float
	ldr	r2, [fp, #-276]
	ldr	r2, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #-280]
	lsl	r1, r3, #1
	ldr	r3, [fp, #-276]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-188]	@ float
	ldr	r3, [fp, #-276]
	add	r3, r3, #1
	str	r3, [fp, #-276]
.L417:
	ldr	r3, [fp, #-276]
	cmp	r3, #1
	ble	.L418
	ldr	r3, [fp, #-280]
	add	r3, r3, #1
	str	r3, [fp, #-280]
.L416:
	ldr	r3, [fp, #-280]
	cmp	r3, #1
	ble	.L419
	mov	r3, #0
	str	r3, [fp, #-280]
	b	.L420
.L423:
	mov	r3, #0
	str	r3, [fp, #-276]
	b	.L421
.L422:
	ldr	r4, [fp, #-212]	@ float
	ldr	r5, [fp, #-220]	@ float
	ldr	r0, [fp, #-280]
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-240]	@ float
	ldr	r4, [fp, #-216]	@ float
	ldr	r5, [fp, #-224]	@ float
	ldr	r0, [fp, #-276]
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-236]	@ float
	ldr	r3, [fp, #-296]
	ldr	r4, [r3]	@ float
	ldr	r1, [fp, #-248]	@ float
	ldr	r0, [fp, #-240]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r5, r3
	ldr	r1, [fp, #-248]	@ float
	ldr	r0, [fp, #-240]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-296]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-296]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-200]	@ float
	ldr	r3, [fp, #-296]
	add	r3, r3, #8
	ldr	r5, [r3, #4]	@ float
	ldr	r1, [fp, #-252]	@ float
	ldr	r0, [fp, #-236]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r4, r3
	ldr	r1, [fp, #-252]	@ float
	ldr	r0, [fp, #-236]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-296]
	add	r4, r3, #8
	mov	r1, r2
	mov	r0, r5
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4, #4]	@ float
	ldr	r3, [r4, #4]	@ float
	str	r3, [fp, #-188]	@ float
	ldr	r3, [fp, #-296]
	ldr	r4, [r3, #4]	@ float
	ldr	r1, [fp, #-248]	@ float
	ldr	r0, [fp, #-240]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r5, r3
	ldr	r1, [fp, #-252]	@ float
	ldr	r0, [fp, #-236]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	ldr	r2, [fp, #-280]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-288]
	add	r3, r3, r2
	ldr	r2, [fp, #-276]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-296]
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-296]
	ldr	r3, [r3, #4]	@ float
	str	r3, [fp, #-196]	@ float
	ldr	r3, [fp, #-276]
	add	r3, r3, #1
	str	r3, [fp, #-276]
.L421:
	ldr	r2, [fp, #-276]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	blt	.L422
	ldr	r3, [fp, #-280]
	add	r3, r3, #1
	str	r3, [fp, #-280]
.L420:
	ldr	r2, [fp, #-280]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	blt	.L423
	ldr	r3, [fp, #-296]
	add	r3, r3, #8
	ldr	r2, [fp, #-296]
	ldr	r2, [r2, #4]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-192]	@ float
	mov	r3, #0
	str	r3, [fp, #-280]
	b	.L424
.L427:
	mov	r3, #0
	str	r3, [fp, #-276]
	b	.L425
.L426:
	ldr	r3, [fp, #-280]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-296]
	add	r3, r2, r3
	ldr	r2, [fp, #-276]
	ldr	r0, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #-280]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-296]
	add	r4, r2, r3
	ldr	r1, [fp, #-264]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-276]
	str	r2, [r4, r3, lsl #2]	@ float
	ldr	r3, [fp, #-276]
	ldr	r2, [r4, r3, lsl #2]	@ float
	ldr	r3, [fp, #-280]
	lsl	r1, r3, #1
	ldr	r3, [fp, #-276]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-188]	@ float
	ldr	r3, [fp, #-276]
	add	r3, r3, #1
	str	r3, [fp, #-276]
.L425:
	ldr	r3, [fp, #-276]
	cmp	r3, #1
	ble	.L426
	ldr	r3, [fp, #-280]
	add	r3, r3, #1
	str	r3, [fp, #-280]
.L424:
	ldr	r3, [fp, #-280]
	cmp	r3, #1
	ble	.L427
	sub	r0, fp, #200
	ldr	r3, [fp, #-312]
	ldr	r2, [fp, #-308]
	ldr	r1, [fp, #-304]
	bl	comp_eigen
	ldr	r3, [fp, #-316]
	mov	r2, #69
	str	r2, [r3]
	nop
	ldr	r3, .L431
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L428
	bl	__stack_chk_fail
.L428:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L432:
	.align	2
.L431:
	.word	.LC183
	.word	-8388608
	.word	2139095040
	.size	calc_mean_and_covariance1, .-calc_mean_and_covariance1
	.section	.rodata
	.align	2
.LC184:
	.ascii	"\012********************************************\000"
	.align	2
.LC185:
	.ascii	"Fatal error: eigenvalue/eigenvector error\000"
	.align	2
.LC186:
	.ascii	"eigenvalues: %f %f\012\000"
	.align	2
.LC187:
	.ascii	"eigenvector1: %f %f\012\000"
	.align	2
.LC188:
	.ascii	"eigenvector2: %f %f\012\000"
	.align	2
.LC189:
	.ascii	"Eigenvalues/eigenvectors are swapped from original "
	.ascii	"order\000"
	.align	2
.LC190:
	.ascii	"\012      A:\000"
	.align	2
.LC191:
	.ascii	"%12.6f %12.6f\012\000"
	.align	2
.LC192:
	.ascii	"Determinant of A: %f\012\000"
	.align	2
.LC193:
	.ascii	"nrot: %d\012\000"
	.align	2
.LC194:
	.ascii	"Angle between two eigenvectors: %f degrees\012\000"
	.align	2
.LC195:
	.ascii	"Difference length for eigenvector1\000"
	.align	2
.LC196:
	.ascii	"Difference: %f %f Length: %f\012\000"
	.align	2
.LC197:
	.ascii	"Difference length for eigenvector2\000"
	.align	2
.LC198:
	.ascii	"\012Using Anandan's calculation:\000"
	.align	2
.LC199:
	.ascii	"Angle of rotation: %f degrees\012\000"
	.align	2
.LC200:
	.ascii	"Original eigenvalues set to infinity\000"
	.align	2
.LC201:
	.ascii	"********************************************\012\000"
	.align	2
.LC202:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	comp_eigen
	.syntax unified
	.arm
	.fpu softvfp
	.type	comp_eigen, %function
comp_eigen:
	@ args = 0, pretend = 0, frame = 104
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #128
	str	r0, [fp, #-120]
	str	r1, [fp, #-124]
	str	r2, [fp, #-128]
	str	r3, [fp, #-132]
	ldr	r3, .L443
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-96]
	sub	r2, fp, #64
	sub	r3, fp, #100
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-124]
	mov	r1, #2
	ldr	r0, [fp, #-120]
	bl	jacobi
	ldr	r3, [fp, #-124]
	ldr	r3, [r3]	@ float
	bic	r2, r3, #-2147483648
	ldr	r3, [fp, #-124]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L441
	ldr	r2, [fp, #-64]	@ float
	ldr	r3, [fp, #-128]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-128]
	add	r3, r3, #4
	ldr	r2, [fp, #-56]	@ float
	str	r2, [r3]	@ float
	ldr	r2, [fp, #-60]	@ float
	ldr	r3, [fp, #-132]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-132]
	add	r3, r3, #4
	ldr	r2, [fp, #-52]	@ float
	str	r2, [r3]	@ float
	b	.L436
.L441:
	ldr	r3, [fp, #-124]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-124]
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-124]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-124]
	add	r3, r3, #4
	ldr	r2, [fp, #-92]	@ float
	str	r2, [r3]	@ float
	ldr	r2, [fp, #-64]	@ float
	ldr	r3, [fp, #-132]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-132]
	add	r3, r3, #4
	ldr	r2, [fp, #-56]	@ float
	str	r2, [r3]	@ float
	ldr	r2, [fp, #-60]	@ float
	ldr	r3, [fp, #-128]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-128]
	add	r3, r3, #4
	ldr	r2, [fp, #-52]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-64]	@ float
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-60]	@ float
	str	r3, [fp, #-64]	@ float
	ldr	r3, [fp, #-92]	@ float
	str	r3, [fp, #-60]	@ float
	ldr	r3, [fp, #-56]	@ float
	str	r3, [fp, #-92]	@ float
	ldr	r3, [fp, #-52]	@ float
	str	r3, [fp, #-56]	@ float
	ldr	r3, [fp, #-92]	@ float
	str	r3, [fp, #-52]	@ float
	mov	r3, #1
	str	r3, [fp, #-96]
.L436:
	ldr	r1, [fp, #-100]
	sub	r2, fp, #64
	sub	r3, fp, #104
	str	r3, [sp, #16]
	sub	r3, fp, #108
	str	r3, [sp, #12]
	sub	r3, fp, #112
	str	r3, [sp, #8]
	sub	r3, fp, #80
	str	r3, [sp, #4]
	sub	r3, fp, #88
	str	r3, [sp]
	mov	r3, r1
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-120]
	bl	check_eigen_calc
	mov	r3, r0
	cmp	r3, #0
	bne	.L442
	ldr	r0, .L443+4
	bl	puts
	ldr	r0, .L443+8
	bl	puts
	ldr	r3, [fp, #-124]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-124]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L443+12
	bl	printf
	ldr	r3, [fp, #-64]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-56]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L443+16
	bl	printf
	ldr	r3, [fp, #-60]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-52]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L443+20
	bl	printf
	ldr	r3, [fp, #-96]
	cmp	r3, #0
	beq	.L438
	ldr	r0, .L443+24
	bl	puts
.L438:
	ldr	r0, .L443+28
	bl	puts
	ldr	r3, [fp, #-120]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-120]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L443+32
	bl	printf
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L443+32
	bl	printf
	ldr	r3, [fp, #-120]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-120]
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L443+36
	bl	printf
	ldr	r3, [fp, #-100]
	mov	r1, r3
	ldr	r0, .L443+40
	bl	printf
	ldr	r3, [fp, #-104]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L443+44
	bl	printf
	ldr	r0, .L443+48
	bl	puts
	ldr	r3, [fp, #-88]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-84]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-112]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L443+52
	bl	printf
	ldr	r0, .L443+56
	bl	puts
	ldr	r3, [fp, #-80]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-76]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L443+52
	bl	printf
	ldr	r3, [fp, #-120]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-120]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r6, r3
	ldr	r3, [fp, #-120]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r6
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-120]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L443+60
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L443+64
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-72]	@ float
	ldr	r3, [fp, #-120]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-120]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r6, r3
	ldr	r3, [fp, #-120]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r6
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-120]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L443+60
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	ldr	r3, [fp, #-120]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L443+64
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-68]	@ float
	ldr	r2, [fp, #-72]	@ float
	ldr	r3, [fp, #-120]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-120]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	atan2
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-104]	@ float
	ldr	r3, [fp, #-104]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	cos
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-48]	@ float
	ldr	r3, [fp, #-104]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sin
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-40]	@ float
	ldr	r3, [fp, #-104]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sin
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-44]	@ float
	ldr	r3, [fp, #-104]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	cos
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-36]	@ float
	ldr	r0, .L443+68
	bl	puts
	ldr	r3, [fp, #-104]	@ float
	ldr	r1, .L443+72
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L443+76
	ldr	r3, .L443+80
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L443+84
	bl	printf
	ldr	r3, [fp, #-72]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-68]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L443+12
	bl	printf
	ldr	r3, [fp, #-48]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-40]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L443+16
	bl	printf
	ldr	r3, [fp, #-44]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-36]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L443+20
	bl	printf
	ldr	r0, [fp, #-100]
	sub	r2, fp, #48
	sub	r1, fp, #72
	sub	r3, fp, #104
	str	r3, [sp, #16]
	sub	r3, fp, #108
	str	r3, [sp, #12]
	sub	r3, fp, #112
	str	r3, [sp, #8]
	sub	r3, fp, #80
	str	r3, [sp, #4]
	sub	r3, fp, #88
	str	r3, [sp]
	mov	r3, r0
	ldr	r0, [fp, #-120]
	bl	check_eigen_calc
	ldr	r3, [fp, #-104]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L443+44
	bl	printf
	ldr	r0, .L443+48
	bl	puts
	ldr	r3, [fp, #-88]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-84]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-112]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L443+52
	bl	printf
	ldr	r0, .L443+56
	bl	puts
	ldr	r3, [fp, #-80]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-76]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-108]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r6
	mov	r3, r7
	ldr	r0, .L443+52
	bl	printf
	ldr	r0, .L443+88
	bl	puts
	ldr	r3, [fp, #-124]
	add	r3, r3, #4
	ldr	r2, .L443+92
	str	r2, [r3]	@ float
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-124]
	str	r2, [r3]	@ float
	ldr	r0, .L443+96
	bl	puts
	ldr	r3, .L443+100
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L442:
	nop
	ldr	r3, .L443
	ldr	r2, [r3]
	ldr	r3, [fp, #-32]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L439
	bl	__stack_chk_fail
.L439:
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L444:
	.align	2
.L443:
	.word	.LC202
	.word	.LC184
	.word	.LC185
	.word	.LC186
	.word	.LC187
	.word	.LC188
	.word	.LC189
	.word	.LC190
	.word	.LC191
	.word	.LC192
	.word	.LC193
	.word	.LC194
	.word	.LC195
	.word	.LC196
	.word	.LC197
	.word	1074790400
	.word	1071644672
	.word	.LC198
	.word	1127481344
	.word	1413754136
	.word	1074340347
	.word	.LC199
	.word	.LC200
	.word	2139095040
	.word	.LC201
	.word	stdout
	.size	comp_eigen, .-comp_eigen
	.align	2
	.global	check_eigen_calc
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_eigen_calc, %function
check_eigen_calc:
	@ args = 20, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, fp, lr}
	add	fp, sp, #24
	sub	sp, sp, #28
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r3, #1
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-48]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-48]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r6, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r6
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r8, r3
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r8
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	acos
	mov	r2, #0
	ldr	r3, .L459
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L459+4
	ldr	r3, .L459+8
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r2, r0
	ldr	r3, [fp, #20]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #20]
	ldr	r3, [r3]	@ float
	ldr	r1, .L459+12
	mov	r0, r3
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L446
	ldr	r3, [fp, #20]
	ldr	r3, [r3]	@ float
	ldr	r1, .L459+16
	mov	r0, r3
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L446
	mov	r3, #0
	str	r3, [fp, #-32]
.L446:
	ldr	r3, [fp, #-40]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-40]
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r5, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	add	r4, r3, #4
	mov	r1, r2
	mov	r0, r5
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #4]
	ldr	r4, [r3]	@ float
	ldr	r3, [fp, #-44]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #4]
	add	r3, r3, #4
	ldr	r5, [r3]	@ float
	ldr	r3, [fp, #-44]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	add	r4, r3, #4
	mov	r1, r2
	mov	r0, r5
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #4]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #4]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #4]
	add	r3, r3, #4
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #4]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r2, r0
	ldr	r3, [fp, #12]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #12]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L459+20
	ldr	r3, .L459+24
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L449
	mov	r3, #0
	str	r3, [fp, #-32]
.L449:
	ldr	r3, [fp, #-40]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-40]
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #8]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r5, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #8]
	add	r4, r3, #4
	mov	r1, r2
	mov	r0, r5
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #8]
	ldr	r4, [r3]	@ float
	ldr	r3, [fp, #-44]
	add	r3, r3, #4
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #8]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	add	r3, r3, #4
	ldr	r5, [r3]	@ float
	ldr	r3, [fp, #-44]
	add	r3, r3, #4
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #8]
	add	r4, r3, #4
	mov	r1, r2
	mov	r0, r5
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #8]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #8]
	add	r3, r3, #4
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #8]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r2, r0
	ldr	r3, [fp, #16]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #16]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L459+20
	ldr	r3, .L459+24
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L451
	mov	r3, #0
	str	r3, [fp, #-32]
.L451:
	ldr	r3, [fp, #-52]
	cmp	r3, #50
	ble	.L453
	mov	r3, #0
	str	r3, [fp, #-32]
.L453:
	ldr	r3, [fp, #-32]
	mov	r0, r3
	sub	sp, fp, #24
	@ sp needed
	pop	{r4, r5, r6, r7, r8, fp, pc}
.L460:
	.align	2
.L459:
	.word	1080459264
	.word	1413754136
	.word	1074340347
	.word	1119027200
	.word	1119158272
	.word	-1717986918
	.word	1069128089
	.size	check_eigen_calc, .-check_eigen_calc
	.global	__aeabi_dcmple
	.section	.rodata
	.align	2
.LC203:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	compute_SSD_surface
	.syntax unified
	.arm
	.fpu softvfp
	.type	compute_SSD_surface, %function
compute_SSD_surface:
	@ args = 16, pretend = 0, frame = 3600
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #3600
	str	r0, [fp, #-3584]
	str	r1, [fp, #-3588]
	str	r2, [fp, #-3592]
	str	r3, [fp, #-3596]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-3600]
	ldr	r3, [fp, #12]
	str	r3, [fp, #-3604]
	ldr	r3, [fp, #16]
	str	r3, [fp, #-3608]
	ldr	r3, .L514
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, .L514+4
	str	r3, [fp, #-3516]	@ float
	ldr	r3, [fp, #4]
	lsl	r3, r3, #1
	str	r3, [fp, #-3512]
	ldr	r3, [fp, #-3512]
	rsb	r3, r3, #0
	str	r3, [fp, #-3580]
	b	.L462
.L469:
	ldr	r3, [fp, #-3512]
	rsb	r3, r3, #0
	str	r3, [fp, #-3576]
	b	.L463
.L468:
	ldr	r2, [fp, #-3580]
	ldr	r3, [fp, #-3512]
	add	r3, r2, r3
	str	r3, [fp, #-3500]
	ldr	r2, [fp, #-3576]
	ldr	r3, [fp, #-3512]
	add	r3, r2, r3
	str	r3, [fp, #-3496]
	mov	r3, #0
	str	r3, [fp, #-3552]	@ float
	mov	r3, #0
	str	r3, [fp, #-3548]	@ float
	ldr	r3, [fp, #-3596]
	rsb	r3, r3, #0
	str	r3, [fp, #-3572]
	b	.L464
.L467:
	ldr	r3, [fp, #-3596]
	rsb	r3, r3, #0
	str	r3, [fp, #-3568]
	b	.L465
.L466:
	ldr	r3, [fp, #-3584]
	add	r2, r3, #421888
	add	r2, r2, #612
	ldr	r1, [fp, #-3588]
	ldr	r3, [fp, #-3572]
	add	r1, r1, r3
	ldr	r0, [fp, #-3592]
	ldr	r3, [fp, #-3568]
	add	r0, r0, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r3, r0
	ldr	ip, [r2, r3, lsl #2]	@ float
	ldr	r3, [fp, #-3584]
	ldr	r2, .L514+8
	add	r2, r3, r2
	ldr	r1, [fp, #-3588]
	ldr	r3, [fp, #-3572]
	add	r1, r1, r3
	ldr	r3, [fp, #-3580]
	add	r1, r1, r3
	ldr	r0, [fp, #-3592]
	ldr	r3, [fp, #-3568]
	add	r0, r0, r3
	ldr	r3, [fp, #-3576]
	add	r0, r0, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r3, r0
	ldr	r3, [r2, r3, lsl #2]	@ float
	mov	r1, r3
	mov	r0, ip
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-3492]	@ float
	ldr	r3, [fp, #-3584]
	add	r2, r3, #421888
	add	r2, r2, #612
	ldr	r1, [fp, #-3588]
	ldr	r3, [fp, #-3572]
	add	r1, r1, r3
	ldr	r0, [fp, #-3592]
	ldr	r3, [fp, #-3568]
	add	r0, r0, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r1, r3, #6
	add	r3, r3, r1
	add	r3, r3, r0
	ldr	ip, [r2, r3, lsl #2]	@ float
	ldr	r2, [fp, #-3588]
	ldr	r3, [fp, #-3572]
	add	r2, r2, r3
	ldr	r3, [fp, #-3580]
	add	r2, r2, r3
	ldr	r1, [fp, #-3592]
	ldr	r3, [fp, #-3568]
	add	r1, r1, r3
	ldr	r3, [fp, #-3576]
	add	r0, r1, r3
	ldr	r1, [fp, #-3584]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	add	r3, r3, r0
	ldr	r3, [r1, r3, lsl #2]	@ float
	mov	r1, r3
	mov	r0, ip
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-3488]	@ float
	ldr	r1, [fp, #-3492]	@ float
	ldr	r0, [fp, #-3492]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-3552]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-3552]	@ float
	ldr	r1, [fp, #-3488]	@ float
	ldr	r0, [fp, #-3488]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-3548]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-3548]	@ float
	ldr	r3, [fp, #-3568]
	add	r3, r3, #1
	str	r3, [fp, #-3568]
.L465:
	ldr	r2, [fp, #-3568]
	ldr	r3, [fp, #-3596]
	cmp	r2, r3
	ble	.L466
	ldr	r3, [fp, #-3572]
	add	r3, r3, #1
	str	r3, [fp, #-3572]
.L464:
	ldr	r2, [fp, #-3572]
	ldr	r3, [fp, #-3596]
	cmp	r2, r3
	ble	.L467
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r2, [fp, #-3552]	@ float
	str	r2, [r3, #-2316]	@ float
	ldr	r3, [fp, #-3512]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-3500]
	sub	r2, r2, r3
	ldr	r3, [fp, #-3512]
	lsl	r1, r3, #1
	ldr	r3, [fp, #-3496]
	sub	r1, r1, r3
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	add	r3, r3, r1
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r2, [fp, #-3548]	@ float
	str	r2, [r3, #-1160]	@ float
	ldr	r3, [fp, #-3576]
	add	r3, r3, #1
	str	r3, [fp, #-3576]
.L463:
	ldr	r2, [fp, #-3576]
	ldr	r3, [fp, #-3512]
	cmp	r2, r3
	ble	.L468
	ldr	r3, [fp, #-3580]
	add	r3, r3, #1
	str	r3, [fp, #-3580]
.L462:
	ldr	r2, [fp, #-3580]
	ldr	r3, [fp, #-3512]
	cmp	r2, r3
	ble	.L469
	ldr	r3, .L514+12
	str	r3, [fp, #-3544]	@ float
	ldr	r3, .L514+16
	str	r3, [fp, #-3540]	@ float
	ldr	r3, .L514+12
	str	r3, [fp, #-3528]	@ float
	ldr	r3, .L514+16
	str	r3, [fp, #-3524]	@ float
	mov	r3, #0
	str	r3, [fp, #-3560]
	ldr	r3, [fp, #-3560]
	str	r3, [fp, #-3564]
	mov	r3, #0
	str	r3, [fp, #-3520]	@ float
	ldr	r3, [fp, #-3512]
	rsb	r3, r3, #0
	str	r3, [fp, #-3580]
	b	.L470
.L484:
	ldr	r3, [fp, #-3512]
	rsb	r3, r3, #0
	str	r3, [fp, #-3576]
	b	.L471
.L483:
	ldr	r2, [fp, #-3580]
	ldr	r3, [fp, #-3512]
	add	r3, r2, r3
	str	r3, [fp, #-3500]
	ldr	r2, [fp, #-3576]
	ldr	r3, [fp, #-3512]
	add	r3, r2, r3
	str	r3, [fp, #-3496]
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r0, [r3, #-2316]	@ float
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-1160]	@ float
	mov	r1, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r1, r3
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	str	r1, [r3, #-3472]	@ float
	ldr	r3, [fp, #4]
	rsb	r3, r3, #0
	ldr	r2, [fp, #-3580]
	cmp	r2, r3
	blt	.L472
	ldr	r2, [fp, #-3580]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	bgt	.L472
	ldr	r3, [fp, #4]
	rsb	r3, r3, #0
	ldr	r2, [fp, #-3576]
	cmp	r2, r3
	blt	.L472
	ldr	r2, [fp, #-3576]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	bgt	.L472
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-3472]	@ float
	ldr	r1, [fp, #-3544]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L514+20
	ldr	r3, .L514+24
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L473
	ldr	r3, [fp, #-3580]
	mul	r2, r3, r3
	ldr	r3, [fp, #-3576]
	mov	r1, r3
	mul	r1, r3, r1
	mov	r3, r1
	add	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-3520]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L475
.L473:
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-3472]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-3544]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L514+20
	ldr	r3, .L514+24
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L476
.L475:
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-3472]	@ float
	str	r3, [fp, #-3544]	@ float
	ldr	r3, [fp, #-3580]
	str	r3, [fp, #-3564]
	ldr	r3, [fp, #-3576]
	str	r3, [fp, #-3560]
	ldr	r3, [fp, #-3580]
	mul	r2, r3, r3
	ldr	r3, [fp, #-3576]
	mov	r1, r3
	mul	r1, r3, r1
	mov	r3, r1
	add	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-3520]	@ float
.L476:
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-3472]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-3540]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L472
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-3472]	@ float
	str	r3, [fp, #-3540]	@ float
.L472:
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-3472]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-3524]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L479
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-3472]	@ float
	str	r3, [fp, #-3524]	@ float
.L479:
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-3472]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-3528]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L481
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r3, [r3, #-3472]	@ float
	str	r3, [fp, #-3528]	@ float
.L481:
	ldr	r3, [fp, #-3576]
	add	r3, r3, #1
	str	r3, [fp, #-3576]
.L471:
	ldr	r2, [fp, #-3576]
	ldr	r3, [fp, #-3512]
	cmp	r2, r3
	ble	.L483
	ldr	r3, [fp, #-3580]
	add	r3, r3, #1
	str	r3, [fp, #-3580]
.L470:
	ldr	r2, [fp, #-3580]
	ldr	r3, [fp, #-3512]
	cmp	r2, r3
	ble	.L484
	ldr	r3, [fp, #-3604]
	ldr	r2, [fp, #-3564]
	str	r2, [r3]
	ldr	r3, [fp, #-3608]
	ldr	r2, [fp, #-3560]
	str	r2, [r3]
	ldr	r3, .L514+12
	str	r3, [fp, #-3544]	@ float
	mov	r3, #0
	str	r3, [fp, #-3508]
	ldr	r3, [fp, #-3508]
	str	r3, [fp, #-3504]
	ldr	r3, [fp, #4]
	rsb	r3, r3, #0
	str	r3, [fp, #-3580]
	b	.L485
.L491:
	ldr	r3, [fp, #4]
	rsb	r3, r3, #0
	str	r3, [fp, #-3576]
	b	.L486
.L490:
	ldr	r2, [fp, #-3580]
	ldr	r3, [fp, #4]
	add	r3, r2, r3
	str	r3, [fp, #-3500]
	ldr	r2, [fp, #-3576]
	ldr	r3, [fp, #4]
	add	r3, r2, r3
	str	r3, [fp, #-3496]
	ldr	r2, [fp, #-3500]
	ldr	r3, [fp, #-3564]
	add	r2, r2, r3
	ldr	r3, [fp, #4]
	add	r2, r2, r3
	ldr	r1, [fp, #-3496]
	ldr	r3, [fp, #-3560]
	add	r1, r1, r3
	ldr	r3, [fp, #4]
	add	r0, r1, r3
	ldr	r1, [fp, #-3500]
	mov	r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #2
	mov	r1, r3
	ldr	r3, [fp, #-3600]
	add	r1, r3, r1
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	add	r3, r3, r0
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r2, [r3, #-3472]	@ float
	ldr	r3, [fp, #-3496]
	str	r2, [r1, r3, lsl #2]	@ float
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-3600]
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-3544]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L487
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-3600]
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L487
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-3600]
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	ldr	r3, [r3, r2, lsl #2]	@ float
	str	r3, [fp, #-3544]	@ float
	ldr	r3, [fp, #-3500]
	str	r3, [fp, #-3504]
	ldr	r3, [fp, #-3496]
	str	r3, [fp, #-3508]
.L487:
	ldr	r3, [fp, #-3576]
	add	r3, r3, #1
	str	r3, [fp, #-3576]
.L486:
	ldr	r2, [fp, #-3576]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	ble	.L490
	ldr	r3, [fp, #-3580]
	add	r3, r3, #1
	str	r3, [fp, #-3580]
.L485:
	ldr	r2, [fp, #-3580]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	ble	.L491
	ldr	r0, [fp, #-3544]	@ float
	bl	__aeabi_f2d
	ldr	r2, .L514+28
	ldr	r3, .L514+32
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L513
	ldr	r3, .L514+36
	str	r3, [fp, #-3556]	@ float
	b	.L494
.L513:
	ldr	r0, [fp, #-3516]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	log
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	eor	r5, r3, #-2147483648
	ldr	r0, [fp, #-3544]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-3556]	@ float
.L494:
	ldr	r3, .L514+12
	str	r3, [fp, #-3532]	@ float
	ldr	r3, .L514+16
	str	r3, [fp, #-3536]	@ float
	ldr	r3, [fp, #4]
	rsb	r3, r3, #0
	str	r3, [fp, #-3580]
	b	.L495
.L502:
	ldr	r3, [fp, #4]
	rsb	r3, r3, #0
	str	r3, [fp, #-3576]
	b	.L496
.L501:
	ldr	r2, [fp, #-3580]
	ldr	r3, [fp, #4]
	add	r3, r2, r3
	str	r3, [fp, #-3500]
	ldr	r2, [fp, #-3576]
	ldr	r3, [fp, #4]
	add	r3, r2, r3
	str	r3, [fp, #-3496]
	ldr	r3, [fp, #-3556]
	eor	r0, r3, #-2147483648
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-3600]
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	exp
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-3600]
	add	r4, r3, r2
	bl	__aeabi_d2f
	mov	r2, r0
	ldr	r3, [fp, #-3496]
	str	r2, [r4, r3, lsl #2]	@ float
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-3600]
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-3536]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L497
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-3600]
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	ldr	r3, [r3, r2, lsl #2]	@ float
	str	r3, [fp, #-3536]	@ float
.L497:
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-3600]
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-3532]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L499
	ldr	r2, [fp, #-3500]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-3600]
	add	r3, r3, r2
	ldr	r2, [fp, #-3496]
	ldr	r3, [r3, r2, lsl #2]	@ float
	str	r3, [fp, #-3532]	@ float
.L499:
	ldr	r3, [fp, #-3576]
	add	r3, r3, #1
	str	r3, [fp, #-3576]
.L496:
	ldr	r2, [fp, #-3576]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	ble	.L501
	ldr	r3, [fp, #-3580]
	add	r3, r3, #1
	str	r3, [fp, #-3580]
.L495:
	ldr	r2, [fp, #-3580]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	ble	.L502
	nop
	ldr	r3, .L514
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L503
	bl	__stack_chk_fail
.L503:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L515:
	.align	2
.L514:
	.word	.LC203
	.word	1064514355
	.word	845000
	.word	2139095040
	.word	-8388608
	.word	-1717986918
	.word	1069128089
	.word	-1598689907
	.word	1051772663
	.word	1007371158
	.size	compute_SSD_surface, .-compute_SSD_surface
	.align	2
	.global	calc_mean_and_covariance2
	.syntax unified
	.arm
	.fpu softvfp
	.type	calc_mean_and_covariance2, %function
calc_mean_and_covariance2:
	@ args = 4, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #40
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-20]	@ float
	ldr	r3, [fp, #-20]	@ float
	str	r3, [fp, #-24]	@ float
	ldr	r3, [fp, #-24]	@ float
	str	r3, [fp, #-16]	@ float
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L517
.L523:
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L518
.L522:
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, .L539
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L519
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r2, r3, r2
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, .L539
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L519
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r0, [r3, r2, lsl #2]	@ float
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-24]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-24]	@ float
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r0, [r3, r2, lsl #2]	@ float
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r2, r3, r2
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-20]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-20]	@ float
.L519:
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L518:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	blt	.L522
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L517:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	blt	.L523
	ldr	r3, [fp, #-52]
	ldr	r2, [fp, #-24]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-52]
	add	r3, r3, #4
	ldr	r2, [fp, #-20]	@ float
	str	r2, [r3]	@ float
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L524
.L527:
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L525
.L526:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #4]
	add	r3, r2, r3
	ldr	r2, [fp, #-28]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L525:
	ldr	r3, [fp, #-28]
	cmp	r3, #1
	ble	.L526
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L524:
	ldr	r3, [fp, #-32]
	cmp	r3, #1
	ble	.L527
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L528
.L534:
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L529
.L533:
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, .L539
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L530
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r2, r3, r2
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, .L539
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L530
	ldr	r3, [fp, #4]
	ldr	r4, [r3]	@ float
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, [fp, #-24]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r5, r3
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, [fp, #-24]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	ldr	r5, [r3, #4]	@ float
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r2, r3, r2
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, [fp, #-20]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r4, r3
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r2, r3, r2
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, [fp, #-20]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	add	r4, r3, #8
	mov	r1, r2
	mov	r0, r5
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #4]
	ldr	r4, [r3, #4]	@ float
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, [fp, #-24]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r5, r3
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #3
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r2, r3, r2
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, [fp, #-20]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r5
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	str	r2, [r3, #4]	@ float
.L530:
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L529:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	blt	.L533
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L528:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	blt	.L534
	ldr	r3, [fp, #4]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-16]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #4]
	ldr	r3, [r3, #4]	@ float
	ldr	r1, [fp, #-16]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #4]
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #4]
	add	r4, r3, #8
	ldr	r1, [fp, #-16]	@ float
	mov	r0, r2
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [r4, #4]	@ float
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	ldr	r2, [fp, #4]
	ldr	r2, [r2, #4]	@ float
	str	r2, [r3]	@ float
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L540:
	.align	2
.L539:
	.word	1120403456
	.size	calc_mean_and_covariance2, .-calc_mean_and_covariance2
	.global	__aeabi_dcmpge
	.section	.rodata
	.align	2
.LC204:
	.ascii	"            M                          MI\000"
	.align	2
.LC205:
	.ascii	"%12.8f %12.8f    %12.8f %12.8f\012\000"
	.align	2
.LC206:
	.ascii	"Determinant: %f\012\000"
	.text
	.align	2
	.global	old_inverse22
	.syntax unified
	.arm
	.fpu softvfp
	.type	old_inverse22, %function
old_inverse22:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #40
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r3, [fp, #-40]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-32]	@ float
	ldr	r3, [fp, #-32]
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L547
	ldr	r3, .L547+4
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L546
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	ldr	r1, [fp, #-32]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-44]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	ldr	r3, [r3, #4]	@ float
	eor	r3, r3, #-2147483648
	ldr	r1, [fp, #-32]	@ float
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-44]
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	eor	r2, r3, #-2147483648
	ldr	r3, [fp, #-44]
	add	r4, r3, #8
	ldr	r1, [fp, #-32]	@ float
	mov	r0, r2
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #-40]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-44]
	add	r4, r3, #8
	ldr	r1, [fp, #-32]	@ float
	mov	r0, r2
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [r4, #4]	@ float
	ldr	r0, .L547+8
	bl	puts
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, [fp, #-40]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-44]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-44]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L547+12
	bl	printf
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L547+12
	bl	printf
	ldr	r0, [fp, #-32]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L547+16
	bl	printf
	mov	r3, #0
	b	.L544
.L546:
	ldr	r3, [fp, #-44]
	mov	r2, #1065353216
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-44]
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	mov	r2, #0
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldr	r2, .L547+20
	str	r2, [r3, #4]	@ float
	ldr	r0, .L547+8
	bl	puts
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, [fp, #-40]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-44]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-44]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L547+12
	bl	printf
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, [fp, #-40]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L547+12
	bl	printf
	ldr	r0, [fp, #-32]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L547+16
	bl	printf
	mov	r3, #1
.L544:
	mov	r0, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L548:
	.align	2
.L547:
	.word	-400107883
	.word	1041313291
	.word	.LC204
	.word	.LC205
	.word	.LC206
	.word	2139095040
	.size	old_inverse22, .-old_inverse22
	.align	2
	.global	add21
	.syntax unified
	.arm
	.fpu softvfp
	.type	add21, %function
add21:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-16]
	add	r3, r3, #4
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r3, r3, #4
	ldr	r1, [r3]	@ float
	ldr	r3, [fp, #-24]
	add	r4, r3, #4
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4]	@ float
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	add21, .-add21
	.align	2
	.global	add22
	.syntax unified
	.arm
	.fpu softvfp
	.type	add22, %function
add22:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-16]
	add	r3, r3, #8
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r3, r3, #8
	ldr	r1, [r3]	@ float
	ldr	r3, [fp, #-24]
	add	r4, r3, #8
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-16]
	add	r3, r3, #8
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-20]
	add	r3, r3, #8
	ldr	r1, [r3, #4]	@ float
	ldr	r3, [fp, #-24]
	add	r4, r3, #8
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4, #4]	@ float
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	add22, .-add22
	.align	2
	.global	mult21
	.syntax unified
	.arm
	.fpu softvfp
	.type	mult21, %function
mult21:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-20]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-16]
	add	r3, r3, #8
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r5, r3
	ldr	r3, [fp, #-16]
	add	r3, r3, #8
	ldr	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-20]
	add	r3, r3, #4
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-24]
	add	r4, r3, #4
	mov	r1, r2
	mov	r0, r5
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4]	@ float
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
	.size	mult21, .-mult21
	.section	.rodata
	.align	2
.LC207:
	.ascii	"Fatal error: sum of Gaussian coefficients is zero\000"
	.align	2
.LC208:
	.ascii	"\012Fatal error: window size not 1 or 2: w=%d\012\000"
	.align	2
.LC209:
	.ascii	"\012Weights:\000"
	.align	2
.LC210:
	.ascii	"%8.5f \000"
	.align	2
.LC211:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	compute_weights
	.syntax unified
	.arm
	.fpu softvfp
	.type	compute_weights, %function
compute_weights:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #116
	str	r0, [fp, #-120]
	str	r1, [fp, #-124]
	ldr	r3, .L573
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, [fp, #-124]
	lsl	r3, r3, #1
	add	r3, r3, #1
	str	r3, [fp, #-104]
	ldr	r3, [fp, #-124]
	cmp	r3, #1
	bne	.L553
	mov	r3, #1048576000
	str	r3, [fp, #-100]	@ float
	mov	r3, #1056964608
	str	r3, [fp, #-96]	@ float
	mov	r3, #1048576000
	str	r3, [fp, #-92]	@ float
	mov	r3, #0
	str	r3, [fp, #-108]	@ float
	mov	r3, #0
	str	r3, [fp, #-116]
	b	.L554
.L557:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L555
.L556:
	ldr	r3, [fp, #-116]
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r0, [r3, #-88]	@ float
	ldr	r3, [fp, #-112]
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r1, [r3, #-88]	@ float
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-120]
	add	r4, r3, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-112]
	str	r2, [r4, r3, lsl #2]	@ float
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-120]
	add	r3, r3, r2
	ldr	r2, [fp, #-112]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-108]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-108]	@ float
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L555:
	ldr	r2, [fp, #-112]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	blt	.L556
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L554:
	ldr	r2, [fp, #-116]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	blt	.L557
	mov	r1, #1065353216
	ldr	r0, [fp, #-108]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L558
	ldr	r0, .L573+4
	bl	puts
	mov	r0, #1
	bl	exit
.L553:
	ldr	r3, [fp, #-124]
	cmp	r3, #2
	bne	.L560
	mov	r3, #1031798784
	str	r3, [fp, #-100]	@ float
	mov	r3, #1048576000
	str	r3, [fp, #-96]	@ float
	mov	r3, #1052770304
	str	r3, [fp, #-92]	@ float
	mov	r3, #1048576000
	str	r3, [fp, #-88]	@ float
	mov	r3, #1031798784
	str	r3, [fp, #-84]	@ float
	mov	r3, #0
	str	r3, [fp, #-108]	@ float
	mov	r3, #0
	str	r3, [fp, #-116]
	b	.L561
.L564:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L562
.L563:
	ldr	r3, [fp, #-116]
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r0, [r3, #-88]	@ float
	ldr	r3, [fp, #-112]
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r1, [r3, #-88]	@ float
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-120]
	add	r4, r3, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-112]
	str	r2, [r4, r3, lsl #2]	@ float
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-120]
	add	r3, r3, r2
	ldr	r2, [fp, #-112]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-108]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-108]	@ float
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L562:
	ldr	r2, [fp, #-112]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	blt	.L563
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L561:
	ldr	r2, [fp, #-116]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	blt	.L564
	mov	r1, #1065353216
	ldr	r0, [fp, #-108]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L558
	ldr	r0, .L573+4
	bl	puts
	mov	r0, #1
	bl	exit
.L560:
	ldr	r1, [fp, #-124]
	ldr	r0, .L573+8
	bl	printf
	mov	r0, #1
	bl	exit
.L558:
	ldr	r0, .L573+12
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-116]
	b	.L566
.L569:
	mov	r3, #0
	str	r3, [fp, #-112]
	b	.L567
.L568:
	ldr	r2, [fp, #-116]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	ldr	r3, [fp, #-120]
	add	r3, r3, r2
	ldr	r2, [fp, #-112]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L573+16
	bl	printf
	ldr	r3, [fp, #-112]
	add	r3, r3, #1
	str	r3, [fp, #-112]
.L567:
	ldr	r2, [fp, #-112]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	blt	.L568
	mov	r0, #10
	bl	putchar
	ldr	r3, [fp, #-116]
	add	r3, r3, #1
	str	r3, [fp, #-116]
.L566:
	ldr	r2, [fp, #-116]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	blt	.L569
	nop
	ldr	r3, .L573
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L570
	bl	__stack_chk_fail
.L570:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L574:
	.align	2
.L573:
	.word	.LC211
	.word	.LC207
	.word	.LC208
	.word	.LC209
	.word	.LC210
	.size	compute_weights, .-compute_weights
	.section	.rodata
	.align	2
.LC212:
	.ascii	"\012Ierr=%d DI[0][0]: %f DI[1][1]: %f\012\000"
	.align	2
.LC213:
	.ascii	"\012Fatal error: Pseudo-inverse of J wrong\000"
	.align	2
.LC214:
	.ascii	"The identity matrix:\000"
	.align	2
.LC215:
	.ascii	"%6.3f \000"
	.align	2
.LC216:
	.ascii	"Diagonal(s) greater than 10\000"
	.align	2
.LC217:
	.ascii	"       J                      JI\000"
	.align	2
.LC218:
	.ascii	"%12.8f %12.8f     %12.8f %12.8f\012\000"
	.align	2
.LC219:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	inverse22
	.syntax unified
	.arm
	.fpu softvfp
	.type	inverse22, %function
inverse22:
	@ args = 0, pretend = 0, frame = 352
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #392
	str	r0, [fp, #-368]
	str	r1, [fp, #-372]
	str	r2, [fp, #-376]
	ldr	r3, .L675+68
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r3, #2
	str	r3, [fp, #-316]
	mov	r3, #2
	str	r3, [fp, #-356]
	mov	r3, #2
	str	r3, [fp, #-360]
	mov	r3, #2
	str	r3, [fp, #-352]
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L576
.L579:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L577
.L578:
	ldr	r3, [fp, #-328]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-368]
	add	r3, r2, r3
	ldr	r2, [fp, #-332]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-332]
	lsl	r0, r1, #1
	ldr	r1, [fp, #-328]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #28
	add	r1, r0, r1
	sub	r1, r1, #104
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L577:
	ldr	r2, [fp, #-328]
	ldr	r3, [fp, #-316]
	cmp	r2, r3
	blt	.L578
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L576:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L579
	mov	r3, #21
	str	r3, [fp, #-344]
	sub	ip, fp, #356
	sub	r2, fp, #360
	sub	r1, fp, #352
	sub	r0, fp, #132
	sub	r3, fp, #348
	str	r3, [sp, #32]
	sub	r3, fp, #344
	str	r3, [sp, #28]
	sub	r3, fp, #284
	str	r3, [sp, #24]
	sub	r3, fp, #356
	str	r3, [sp, #20]
	sub	r3, fp, #68
	str	r3, [sp, #16]
	sub	r3, fp, #352
	str	r3, [sp, #12]
	sub	r3, fp, #100
	str	r3, [sp, #8]
	sub	r3, fp, #300
	str	r3, [sp, #4]
	sub	r3, fp, #156
	str	r3, [sp]
	mov	r3, ip
	bl	dsvdc
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L580
.L583:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L581
.L582:
	ldr	r3, [fp, #-328]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-332]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #72
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r1, r0
	ldr	r3, [fp, #-328]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-332]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	str	r1, [r3, #-224]	@ float
	ldr	r3, [fp, #-328]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-332]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #72
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r1, r0
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	str	r1, [r3, #-192]	@ float
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L581:
	ldr	r3, [fp, #-328]
	cmp	r3, #1
	ble	.L582
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L580:
	ldr	r2, [fp, #-332]
	ldr	r3, [fp, #-316]
	cmp	r2, r3
	blt	.L583
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L584
.L587:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L585
.L586:
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #40
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r1, r0
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	str	r1, [r3, #-176]	@ float
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-208]	@ float
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r2, [r3, #-208]	@ float
	ldr	r3, [fp, #-332]
	lsl	r1, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #28
	add	r3, r1, r3
	str	r2, [r3, #-160]	@ float
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L585:
	ldr	r3, [fp, #-328]
	cmp	r3, #1
	ble	.L586
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L584:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L587
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L588
.L591:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L589
.L590:
	ldr	r3, [fp, #-328]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-332]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r2, [r3, #-176]	@ float
	ldr	r3, [fp, #-332]
	lsl	r1, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #28
	add	r3, r1, r3
	str	r2, [r3, #-240]	@ float
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L589:
	ldr	r3, [fp, #-328]
	cmp	r3, #1
	ble	.L590
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L588:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L591
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L592
.L593:
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #128
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r1, r0
	ldr	r2, [fp, #-332]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #160
	str	r1, [r3]	@ float
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L592:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L593
	sub	r3, fp, #156
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-340]	@ float
	sub	r3, fp, #156
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-336]	@ float
	mov	r3, #1
	str	r3, [fp, #-332]
	b	.L594
.L599:
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #128
	ldmia	r3, {r4-r5}
	ldr	r0, [fp, #-336]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L595
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #128
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-336]	@ float
.L595:
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #128
	ldmia	r3, {r4-r5}
	ldr	r0, [fp, #-340]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L597
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #128
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [fp, #-340]	@ float
.L597:
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L594:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L599
	mov	r1, #0
	ldr	r0, [fp, #-340]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L673
	ldr	r1, [fp, #-340]	@ float
	ldr	r0, [fp, #-336]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-312]	@ float
	ldr	r1, [fp, #-340]	@ float
	mov	r0, #1065353216
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-308]	@ float
	b	.L602
.L673:
	ldr	r3, .L675
	str	r3, [fp, #-312]	@ float
	ldr	r3, .L675
	str	r3, [fp, #-308]	@ float
.L602:
	ldr	r1, [fp, #-336]	@ float
	mov	r0, #1065353216
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-304]	@ float
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L603
.L607:
	ldr	r2, [fp, #-332]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #160
	ldr	r3, [r3]	@ float
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L674
	ldr	r2, [fp, #-332]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #160
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, #1065353216
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r1, r3
	ldr	r2, [fp, #-332]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #208
	str	r1, [r3]	@ float
	b	.L606
.L674:
	ldr	r2, [fp, #-332]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #208
	ldr	r2, .L675
	str	r2, [r3]	@ float
.L606:
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L603:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L607
	ldr	r3, [fp, #-376]
	cmp	r3, #0
	beq	.L608
	ldr	r6, [fp, #-348]
	ldr	r3, [fp, #-236]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-224]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	mov	r1, r6
	ldr	r0, .L675+4
	bl	printf
.L608:
	ldr	r3, [fp, #-236]	@ float
	ldr	r1, .L675+8
	mov	r0, r3
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L609
	ldr	r3, [fp, #-224]	@ float
	ldr	r1, .L675+8
	mov	r0, r3
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L609
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L612
.L617:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L613
.L616:
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-176]	@ float
	mov	r3, #0
	str	r3, [fp, #-324]
	b	.L614
.L615:
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r4, [r3, #-176]	@ float
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-324]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r0, [r3, #-240]	@ float
	ldr	r3, [fp, #-324]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r3, [r3, #-208]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r1, r3
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	str	r1, [r3, #-176]	@ float
	ldr	r3, [fp, #-324]
	add	r3, r3, #1
	str	r3, [fp, #-324]
.L614:
	ldr	r3, [fp, #-324]
	cmp	r3, #1
	ble	.L615
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L613:
	ldr	r3, [fp, #-328]
	cmp	r3, #1
	ble	.L616
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L612:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L617
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L618
.L623:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L619
.L622:
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-372]
	add	r3, r2, r3
	ldr	r2, [fp, #-328]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]	@ float
	mov	r3, #0
	str	r3, [fp, #-324]
	b	.L620
.L621:
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-372]
	add	r3, r2, r3
	ldr	r2, [fp, #-328]
	ldr	r5, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-324]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r0, [r3, #-176]	@ float
	ldr	r3, [fp, #-324]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r3, [r3, #-224]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-372]
	add	r4, r2, r3
	mov	r0, r5
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-328]
	str	r2, [r4, r3, lsl #2]	@ float
	ldr	r3, [fp, #-324]
	add	r3, r3, #1
	str	r3, [fp, #-324]
.L620:
	ldr	r3, [fp, #-324]
	cmp	r3, #1
	ble	.L621
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L619:
	ldr	r2, [fp, #-328]
	ldr	r3, [fp, #-316]
	cmp	r2, r3
	blt	.L622
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L618:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L623
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L624
.L629:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L625
.L628:
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-144]	@ float
	mov	r3, #0
	str	r3, [fp, #-324]
	b	.L626
.L627:
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r4, [r3, #-144]	@ float
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-372]
	add	r3, r2, r3
	ldr	r2, [fp, #-324]
	ldr	r0, [r3, r2, lsl #2]	@ float
	ldr	r3, [fp, #-324]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-368]
	add	r3, r2, r3
	ldr	r2, [fp, #-328]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r1, r3
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	str	r1, [r3, #-144]	@ float
	ldr	r3, [fp, #-324]
	add	r3, r3, #1
	str	r3, [fp, #-324]
.L626:
	ldr	r2, [fp, #-324]
	ldr	r3, [fp, #-316]
	cmp	r2, r3
	blt	.L627
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L625:
	ldr	r3, [fp, #-328]
	cmp	r3, #1
	ble	.L628
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L624:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L629
	mov	r3, #0
	str	r3, [fp, #-320]
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L630
.L638:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L631
.L637:
	ldr	r2, [fp, #-332]
	ldr	r3, [fp, #-328]
	cmp	r2, r3
	bne	.L632
	ldr	r2, [fp, #-332]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #144
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L675+12
	ldr	r3, .L675+16
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L633
	ldr	r2, [fp, #-332]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #144
	ldr	r3, [r3]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L675+20
	ldr	r3, .L675+24
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L634
.L633:
	mov	r3, #1
	str	r3, [fp, #-320]
	b	.L634
.L632:
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r3, [r3, #-144]	@ float
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L675+28
	ldr	r3, .L675+32
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L634
	mov	r3, #1
	str	r3, [fp, #-320]
.L634:
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L631:
	ldr	r3, [fp, #-328]
	cmp	r3, #1
	ble	.L637
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L630:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L638
	ldr	r3, [fp, #-320]
	cmp	r3, #1
	bne	.L644
	ldr	r0, .L675+36
	bl	puts
	ldr	r0, .L675+40
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L640
.L643:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L641
.L642:
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r3, [r3, #-144]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L675+44
	bl	printf
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L641:
	ldr	r3, [fp, #-328]
	cmp	r3, #1
	ble	.L642
	mov	r0, #10
	bl	putchar
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L640:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L643
	ldr	r3, .L675+48
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	mov	r0, #1
	bl	exit
.L609:
	ldr	r3, [fp, #-236]	@ float
	ldr	r1, .L675+8
	mov	r0, r3
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L645
	ldr	r3, .L675+8
	str	r3, [fp, #-236]	@ float
.L645:
	ldr	r3, [fp, #-224]	@ float
	ldr	r1, .L675+8
	mov	r0, r3
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L647
	ldr	r3, .L675+8
	str	r3, [fp, #-224]	@ float
.L647:
	ldr	r3, .L675+52
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L675+52
	str	r3, [r2]
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L649
.L654:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L650
.L653:
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r1, r3, #40
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	mov	r3, #0
	str	r3, [fp, #-324]
	b	.L651
.L652:
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #40
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-324]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r0, [r3, #-240]	@ float
	ldr	r3, [fp, #-324]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r3, [r3, #-208]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-332]
	lsl	r0, r1, #1
	ldr	r1, [fp, #-328]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #28
	add	r1, r0, r1
	sub	r1, r1, #40
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-324]
	add	r3, r3, #1
	str	r3, [fp, #-324]
.L651:
	ldr	r3, [fp, #-324]
	cmp	r3, #1
	ble	.L652
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L650:
	ldr	r3, [fp, #-328]
	cmp	r3, #1
	ble	.L653
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L649:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L654
	mov	r3, #0
	str	r3, [fp, #-332]
	b	.L655
.L660:
	mov	r3, #0
	str	r3, [fp, #-328]
	b	.L656
.L659:
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-372]
	add	r3, r2, r3
	ldr	r2, [fp, #-328]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]	@ float
	mov	r3, #0
	str	r3, [fp, #-324]
	b	.L657
.L676:
	.align	2
.L675:
	.word	2139095040
	.word	.LC212
	.word	1092616192
	.word	1223206686
	.word	1072693038
	.word	-611603343
	.word	1072693352
	.word	-350469331
	.word	1058682594
	.word	.LC213
	.word	.LC214
	.word	.LC215
	.word	stdout
	.word	COUNT_SINGULAR
	.word	.LC216
	.word	.LC217
	.word	.LC218
	.word	.LC219
.L658:
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-372]
	add	r3, r2, r3
	ldr	r2, [fp, #-328]
	ldr	r3, [r3, r2, lsl #2]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-332]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-324]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #28
	add	r3, r2, r3
	sub	r3, r3, #40
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-324]
	lsl	r2, r3, #1
	ldr	r3, [fp, #-328]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #28
	add	r3, r2, r3
	ldr	r3, [r3, #-224]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-332]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-372]
	add	r4, r2, r3
	bl	__aeabi_d2f
	mov	r2, r0
	ldr	r3, [fp, #-328]
	str	r2, [r4, r3, lsl #2]	@ float
	ldr	r3, [fp, #-324]
	add	r3, r3, #1
	str	r3, [fp, #-324]
.L657:
	ldr	r3, [fp, #-324]
	cmp	r3, #1
	ble	.L658
	ldr	r3, [fp, #-328]
	add	r3, r3, #1
	str	r3, [fp, #-328]
.L656:
	ldr	r2, [fp, #-328]
	ldr	r3, [fp, #-316]
	cmp	r2, r3
	blt	.L659
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
.L655:
	ldr	r3, [fp, #-332]
	cmp	r3, #1
	ble	.L660
.L644:
	ldr	r3, [fp, #-376]
	cmp	r3, #0
	beq	.L661
	ldr	r0, .L675+56
	bl	puts
	ldr	r0, .L675+60
	bl	puts
	ldr	r3, [fp, #-368]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, [fp, #-368]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-372]
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-372]
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L675+64
	bl	printf
	ldr	r3, [fp, #-368]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r8, r0
	mov	r9, r1
	ldr	r3, [fp, #-368]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-372]
	add	r3, r3, #8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	ldr	r3, [fp, #-372]
	add	r3, r3, #8
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r6, [sp, #8]
	str	r7, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r0, .L675+64
	bl	printf
.L661:
	mov	r3, #0
	ldr	r2, .L675+68
	ldr	r1, [r2]
	ldr	r2, [fp, #-32]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L663
	bl	__stack_chk_fail
.L663:
	mov	r0, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
	.size	inverse22, .-inverse22
	.global	__aeabi_d2iz
	.section	.rodata
	.align	2
.LC220:
	.ascii	"\012Computing Laplacian as a center-surround filter"
	.ascii	"...\000"
	.align	2
.LC221:
	.ascii	"sigma1=%f sigma2=%f\012\000"
	.align	2
.LC222:
	.ascii	"\012\000"
	.align	2
.LC223:
	.ascii	"Image #%d - column convolution completed\012\000"
	.align	2
.LC224:
	.ascii	"Image #%d - row convolution completed\012\000"
	.global	__aeabi_ui2f
	.align	2
.LC225:
	.ascii	"Gaussian images subtracted\000"
	.align	2
.LC226:
	.ascii	"Minimum value: %f Maximun value: %f\012\000"
	.global	__aeabi_f2uiz
	.align	2
.LC227:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	laplacian
	.syntax unified
	.arm
	.fpu softvfp
	.type	laplacian, %function
laplacian:
	@ args = 4, pretend = 0, frame = 845328
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #843776
	sub	sp, sp, #1552
	sub	sp, sp, #8
	sub	ip, fp, #843776
	sub	ip, ip, #28
	str	r0, [ip, #-1540]
	sub	r0, fp, #843776
	sub	r0, r0, #28
	str	r1, [r0, #-1544]
	sub	r1, fp, #843776
	sub	r1, r1, #28
	str	r2, [r1, #-1548]	@ float
	sub	r2, fp, #843776
	sub	r2, r2, #28
	str	r3, [r2, #-1552]
	ldr	r3, .L709
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1548]	@ float
	str	r3, [r2, #-1496]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r0, [r3, #-1496]	@ float
	bl	__aeabi_f2d
	ldr	r2, .L709+4
	ldr	r3, .L709+8
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L709+12
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #843776
	sub	r1, r1, #28
	mov	r4, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	str	r3, [r4, #-1492]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r1, .L709+16
	ldr	r0, [r3, #-1496]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, #1065353216
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, #0
	mov	r3, #1073741824
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #843776
	sub	r1, r1, #28
	mov	r4, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [r4, #-1488]
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1536]
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	rsb	r3, r3, #0
	sub	r2, fp, #843776
	sub	r2, r2, #28
	mov	r4, r2
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [r4, #-1512]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	rsb	r3, r3, #0
	sub	r2, fp, #843776
	sub	r2, r2, #28
	mov	r4, r2
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [r4, #-1508]	@ float
	b	.L678
.L679:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r0, [r3, #-1492]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1508]
	eor	r3, r3, #-2147483648
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r1, [r2, #-1508]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r6, r0
	mov	r7, r1
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r0, [r3, #-1496]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r0, [r3, #-1496]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	exp
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r2, r0
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r1, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	lsl	r3, r3, #2
	add	r3, r1, r3
	str	r2, [r3, #-1484]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	add	r3, r3, #1
	str	r3, [r2, #-1536]
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r4, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r1, #1065353216
	ldr	r0, [r3, #-1512]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4, #-1512]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r4, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r1, #1065353216
	ldr	r0, [r3, #-1508]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4, #-1508]	@ float
.L678:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	lsl	r3, r3, #1
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1536]
	cmp	r2, r3
	ble	.L679
	ldr	r0, .L709+20
	bl	puts
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r0, [r3, #-1496]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, #0
	mov	r3, #0
	ldr	r0, .L709+24
	bl	printf
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1536]
	b	.L680
.L705:
	ldr	r0, .L709+28
	bl	puts
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1532]
	b	.L681
.L686:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	str	r3, [r2, #-1528]
	b	.L682
.L685:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1516]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	rsb	r3, r3, #0
	str	r3, [r2, #-1524]
	b	.L683
.L684:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1536]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1540]
	add	r0, r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1528]
	ldr	r3, [r3, #-1524]
	add	r1, r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	add	r3, r0, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	__aeabi_i2f
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1524]
	ldr	r3, [r3, #-1488]
	add	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #-1484]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r4, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r1, r2
	ldr	r0, [r3, #-1516]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4, #-1516]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1524]
	add	r3, r3, #1
	str	r3, [r2, #-1524]
.L683:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1524]
	ldr	r3, [r3, #-1488]
	cmp	r2, r3
	ble	.L684
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r1, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1516]	@ float
	str	r2, [r3, #-1228]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1528]
	add	r3, r3, #1
	str	r3, [r2, #-1528]
.L682:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1552]
	ldr	r3, [r3, #-1488]
	sub	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	cmp	r2, r3
	blt	.L685
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1532]
	add	r3, r3, #1
	str	r3, [r2, #-1532]
.L681:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L686
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r1, [r3, #-1536]
	ldr	r0, .L709+32
	bl	printf
	ldr	r3, .L709+36
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	str	r3, [r2, #-1532]
	b	.L687
.L692:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	str	r3, [r2, #-1528]
	b	.L688
.L691:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1516]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	rsb	r3, r3, #0
	str	r3, [r2, #-1520]
	b	.L689
.L690:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1532]
	ldr	r3, [r3, #-1520]
	add	r2, r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r1, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r0, [r3, #-1228]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1520]
	ldr	r3, [r3, #-1488]
	add	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #-1484]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r4, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r1, r2
	ldr	r0, [r3, #-1516]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4, #-1516]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1520]
	add	r3, r3, #1
	str	r3, [r2, #-1520]
.L689:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1520]
	ldr	r3, [r3, #-1488]
	cmp	r2, r3
	ble	.L690
	sub	r3, fp, #421888
	sub	r3, r3, #28
	mov	r1, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1516]	@ float
	str	r2, [r3, #-616]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1528]
	add	r3, r3, #1
	str	r3, [r2, #-1528]
.L688:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1552]
	ldr	r3, [r3, #-1488]
	sub	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	cmp	r2, r3
	blt	.L691
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1532]
	add	r3, r3, #1
	str	r3, [r2, #-1532]
.L687:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [fp, #4]
	ldr	r3, [r3, #-1488]
	sub	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1532]
	cmp	r2, r3
	blt	.L692
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r1, [r3, #-1536]
	ldr	r0, .L709+40
	bl	printf
	ldr	r3, .L709+36
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	ldr	r3, .L709+44
	str	r3, [r2, #-1504]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	ldr	r3, .L709+48
	str	r3, [r2, #-1500]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	str	r3, [r2, #-1532]
	b	.L693
.L700:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	str	r3, [r2, #-1528]
	b	.L694
.L699:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1536]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1540]
	add	r1, r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	add	r2, r1, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1528]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	__aeabi_ui2f
	sub	r3, fp, #421888
	sub	r3, r3, #28
	mov	r1, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r1, [r3, #-616]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	ldr	r2, .L709+52
	mul	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1544]
	add	r4, r2, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	str	r1, [r4, r3, lsl #2]	@ float
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	ldr	r2, .L709+52
	mul	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1544]
	add	r1, r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	ldr	r3, [r1, r3, lsl #2]	@ float
	sub	r2, fp, #843776
	sub	r2, r2, #28
	mov	r1, r3
	ldr	r0, [r2, #-1504]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L695
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	ldr	r2, .L709+52
	mul	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1544]
	add	r1, r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r0, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	ldr	r3, [r1, r3, lsl #2]	@ float
	str	r3, [r0, #-1504]	@ float
.L695:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	ldr	r2, .L709+52
	mul	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1544]
	add	r1, r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	ldr	r3, [r1, r3, lsl #2]	@ float
	sub	r2, fp, #843776
	sub	r2, r2, #28
	mov	r1, r3
	ldr	r0, [r2, #-1500]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L697
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	ldr	r2, .L709+52
	mul	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1544]
	add	r1, r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r0, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	ldr	r3, [r1, r3, lsl #2]	@ float
	str	r3, [r0, #-1500]	@ float
.L697:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1528]
	add	r3, r3, #1
	str	r3, [r2, #-1528]
.L694:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1552]
	ldr	r3, [r3, #-1488]
	sub	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	cmp	r2, r3
	blt	.L699
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1532]
	add	r3, r3, #1
	str	r3, [r2, #-1532]
.L693:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [fp, #4]
	ldr	r3, [r3, #-1488]
	sub	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1532]
	cmp	r2, r3
	blt	.L700
	ldr	r0, .L709+56
	bl	puts
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r0, [r3, #-1504]	@ float
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r0, [r3, #-1500]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	mov	r2, r4
	mov	r3, r5
	ldr	r0, .L709+60
	bl	printf
	ldr	r3, .L709+36
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	str	r3, [r2, #-1532]
	b	.L701
.L704:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1488]
	str	r3, [r2, #-1528]
	b	.L702
.L703:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	ldr	r2, .L709+52
	mul	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1544]
	add	r1, r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	add	r3, r3, r2
	ldr	r3, [r1, r3, lsl #2]	@ float
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r1, [r2, #-1504]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2iz
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r4, r0
	sub	r3, fp, #843776
	sub	r3, r3, #28
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r1, [r2, #-1504]	@ float
	ldr	r0, [r3, #-1500]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	ldr	r1, .L709+64
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1536]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1540]
	add	r4, r2, r3
	mov	r0, r1
	bl	__aeabi_f2uiz
	mov	r3, r0
	and	r1, r3, #255
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r3, #-1532]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	add	r2, r4, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1528]
	add	r3, r2, r3
	mov	r2, r1
	strb	r2, [r3]
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1528]
	add	r3, r3, #1
	str	r3, [r2, #-1528]
.L702:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [r2, #-1552]
	ldr	r3, [r3, #-1488]
	sub	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1528]
	cmp	r2, r3
	blt	.L703
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1532]
	add	r3, r3, #1
	str	r3, [r2, #-1532]
.L701:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r2, [fp, #4]
	ldr	r3, [r3, #-1488]
	sub	r3, r2, r3
	sub	r2, fp, #843776
	sub	r2, r2, #28
	ldr	r2, [r2, #-1532]
	cmp	r2, r3
	blt	.L704
	sub	r3, fp, #843776
	sub	r3, r3, #28
	mov	r2, r3
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	add	r3, r3, #1
	str	r3, [r2, #-1536]
.L680:
	sub	r3, fp, #843776
	sub	r3, r3, #28
	ldr	r3, [r3, #-1536]
	cmp	r3, #2
	ble	.L705
	nop
	ldr	r3, .L709
	ldr	r2, [r3]
	ldr	r3, [fp, #-32]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L706
	bl	__stack_chk_fail
.L706:
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L710:
	.align	2
.L709:
	.word	.LC227
	.word	536225541
	.word	1074007443
	.word	1072693248
	.word	1086324736
	.word	.LC220
	.word	.LC221
	.word	.LC222
	.word	.LC223
	.word	stdout
	.word	.LC224
	.word	2139095040
	.word	-8388608
	.word	422500
	.word	.LC225
	.word	.LC226
	.word	1132396544
	.size	laplacian, .-laplacian
	.align	2
	.global	make_float
	.syntax unified
	.arm
	.fpu softvfp
	.type	make_float, %function
make_float:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #36
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L712
.L717:
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L713
.L716:
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L714
.L715:
	ldr	r2, [fp, #-16]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	ldr	r2, [fp, #-32]
	add	r1, r2, r3
	ldr	r2, [fp, #-24]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, [fp, #-20]
	add	r3, r2, r3
	ldrb	r1, [r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-16]
	ldr	r2, .L718
	mul	r3, r2, r3
	ldr	r2, [fp, #-36]
	add	r4, r2, r3
	mov	r0, r1
	bl	__aeabi_ui2f
	mov	r1, r0
	ldr	r2, [fp, #-24]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	ldr	r2, [fp, #-20]
	add	r3, r3, r2
	str	r1, [r4, r3, lsl #2]	@ float
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L714:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	blt	.L715
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L713:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	blt	.L716
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L712:
	ldr	r3, [fp, #-16]
	cmp	r3, #2
	ble	.L717
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L719:
	.align	2
.L718:
	.word	422500
	.size	make_float, .-make_float
	.section	.rodata
	.align	2
.LC228:
	.ascii	"%dth minimum: %f at %d,%d\012\000"
	.align	2
.LC229:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	compute_n_minimums
	.syntax unified
	.arm
	.fpu softvfp
	.type	compute_n_minimums, %function
compute_n_minimums:
	@ args = 0, pretend = 0, frame = 384
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #392
	str	r0, [fp, #-376]
	str	r1, [fp, #-380]
	str	r2, [fp, #-384]
	ldr	r3, .L738
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-372]
	b	.L721
.L724:
	mov	r3, #0
	str	r3, [fp, #-368]
	b	.L722
.L723:
	ldr	r2, [fp, #-372]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-376]
	add	r3, r3, r2
	ldr	r2, [fp, #-368]
	ldr	r1, [r3, r2, lsl #2]	@ float
	ldr	r2, [fp, #-372]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldr	r2, [fp, #-368]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-328]	@ float
	ldr	r3, [fp, #-368]
	add	r3, r3, #1
	str	r3, [fp, #-368]
.L722:
	ldr	r3, [fp, #-380]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-368]
	cmp	r2, r3
	ble	.L723
	ldr	r3, [fp, #-372]
	add	r3, r3, #1
	str	r3, [fp, #-372]
.L721:
	ldr	r3, [fp, #-380]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-372]
	cmp	r2, r3
	ble	.L724
	mov	r3, #0
	str	r3, [fp, #-372]
	b	.L725
.L735:
	ldr	r3, .L738+4
	str	r3, [fp, #-348]	@ float
	ldr	r3, .L738+4
	str	r3, [fp, #-344]	@ float
	mov	r3, #0
	str	r3, [fp, #-352]
	ldr	r3, [fp, #-352]
	str	r3, [fp, #-356]
	ldr	r3, [fp, #-380]
	rsb	r3, r3, #0
	str	r3, [fp, #-364]
	b	.L726
.L734:
	ldr	r3, [fp, #-380]
	rsb	r3, r3, #0
	str	r3, [fp, #-360]
	b	.L727
.L733:
	ldr	r2, [fp, #-364]
	ldr	r3, [fp, #-380]
	add	r3, r2, r3
	str	r3, [fp, #-340]
	ldr	r2, [fp, #-360]
	ldr	r3, [fp, #-380]
	add	r3, r2, r3
	str	r3, [fp, #-336]
	ldr	r2, [fp, #-340]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldr	r2, [fp, #-336]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-328]	@ float
	ldr	r1, [fp, #-348]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L738+8
	ldr	r3, .L738+12
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L728
	ldr	r3, [fp, #-364]
	mul	r2, r3, r3
	ldr	r3, [fp, #-360]
	mov	r1, r3
	mul	r1, r3, r1
	mov	r3, r1
	add	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-344]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L730
.L728:
	ldr	r2, [fp, #-340]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldr	r2, [fp, #-336]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-328]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-348]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L731
.L730:
	ldr	r2, [fp, #-340]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldr	r2, [fp, #-336]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-328]	@ float
	str	r3, [fp, #-348]	@ float
	ldr	r3, [fp, #-364]
	mul	r2, r3, r3
	ldr	r3, [fp, #-360]
	mov	r1, r3
	mul	r1, r3, r1
	mov	r3, r1
	add	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-344]	@ float
	ldr	r3, [fp, #-364]
	str	r3, [fp, #-356]
	ldr	r3, [fp, #-360]
	str	r3, [fp, #-352]
.L731:
	ldr	r3, [fp, #-360]
	add	r3, r3, #1
	str	r3, [fp, #-360]
.L727:
	ldr	r2, [fp, #-360]
	ldr	r3, [fp, #-380]
	cmp	r2, r3
	ble	.L733
	ldr	r3, [fp, #-364]
	add	r3, r3, #1
	str	r3, [fp, #-364]
.L726:
	ldr	r2, [fp, #-364]
	ldr	r3, [fp, #-380]
	cmp	r2, r3
	ble	.L734
	ldr	r2, [fp, #-356]
	ldr	r3, [fp, #-380]
	add	r2, r2, r3
	ldr	r1, [fp, #-352]
	ldr	r3, [fp, #-380]
	add	r1, r1, r3
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	add	r3, r3, r1
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r2, .L738+4
	str	r2, [r3, #-328]	@ float
	ldr	r0, [fp, #-348]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-352]
	str	r1, [sp, #4]
	ldr	r1, [fp, #-356]
	str	r1, [sp]
	ldr	r1, [fp, #-372]
	ldr	r0, .L738+16
	bl	printf
	ldr	r3, [fp, #-372]
	add	r3, r3, #1
	str	r3, [fp, #-372]
.L725:
	ldr	r2, [fp, #-372]
	ldr	r3, [fp, #-384]
	cmp	r2, r3
	blt	.L735
	nop
	ldr	r3, .L738
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L736
	bl	__stack_chk_fail
.L736:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L739:
	.align	2
.L738:
	.word	.LC229
	.word	2139095040
	.word	-1717986918
	.word	1069128089
	.word	.LC228
	.size	compute_n_minimums, .-compute_n_minimums
	.section	.rodata
	.align	2
.LC230:
	.ascii	"%dth minimum: %f at %d,%d SSDmag: %d\012\000"
	.align	2
.LC231:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	compute_big_n_minimums
	.syntax unified
	.arm
	.fpu softvfp
	.type	compute_big_n_minimums, %function
compute_big_n_minimums:
	@ args = 0, pretend = 0, frame = 1216
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #1232
	str	r0, [fp, #-1208]
	str	r1, [fp, #-1212]
	str	r2, [fp, #-1216]
	ldr	r3, .L758
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-1204]
	b	.L741
.L744:
	mov	r3, #0
	str	r3, [fp, #-1200]
	b	.L742
.L743:
	ldr	r2, [fp, #-1204]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-1208]
	add	r3, r3, r2
	ldr	r2, [fp, #-1200]
	ldr	r1, [r3, r2, lsl #2]	@ float
	ldr	r2, [fp, #-1204]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-1200]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-1160]	@ float
	ldr	r3, [fp, #-1200]
	add	r3, r3, #1
	str	r3, [fp, #-1200]
.L742:
	ldr	r3, [fp, #-1212]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-1200]
	cmp	r2, r3
	ble	.L743
	ldr	r3, [fp, #-1204]
	add	r3, r3, #1
	str	r3, [fp, #-1204]
.L741:
	ldr	r3, [fp, #-1212]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-1204]
	cmp	r2, r3
	ble	.L744
	mov	r3, #0
	str	r3, [fp, #-1204]
	b	.L745
.L755:
	ldr	r3, .L758+4
	str	r3, [fp, #-1180]	@ float
	mov	r3, #0
	str	r3, [fp, #-1176]	@ float
	mov	r3, #0
	str	r3, [fp, #-1184]
	ldr	r3, [fp, #-1184]
	str	r3, [fp, #-1188]
	ldr	r3, [fp, #-1212]
	rsb	r3, r3, #0
	str	r3, [fp, #-1196]
	b	.L746
.L754:
	ldr	r3, [fp, #-1212]
	rsb	r3, r3, #0
	str	r3, [fp, #-1192]
	b	.L747
.L753:
	ldr	r2, [fp, #-1196]
	ldr	r3, [fp, #-1212]
	add	r3, r2, r3
	str	r3, [fp, #-1172]
	ldr	r2, [fp, #-1192]
	ldr	r3, [fp, #-1212]
	add	r3, r2, r3
	str	r3, [fp, #-1168]
	ldr	r2, [fp, #-1172]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-1168]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-1160]	@ float
	ldr	r1, [fp, #-1180]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	bic	r3, r3, #-2147483648
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L758+8
	ldr	r3, .L758+12
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L748
	ldr	r3, [fp, #-1196]
	mul	r2, r3, r3
	ldr	r3, [fp, #-1192]
	mov	r1, r3
	mul	r1, r3, r1
	mov	r3, r1
	add	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-1176]	@ float
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L750
.L748:
	ldr	r2, [fp, #-1172]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-1168]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-1160]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-1180]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	ldr	r2, .L758+8
	ldr	r3, .L758+12
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L751
.L750:
	ldr	r2, [fp, #-1172]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, [fp, #-1168]
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-1160]	@ float
	str	r3, [fp, #-1180]	@ float
	ldr	r3, [fp, #-1196]
	mul	r2, r3, r3
	ldr	r3, [fp, #-1192]
	mov	r1, r3
	mul	r1, r3, r1
	mov	r3, r1
	add	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	str	r3, [fp, #-1176]	@ float
	ldr	r3, [fp, #-1196]
	str	r3, [fp, #-1188]
	ldr	r3, [fp, #-1192]
	str	r3, [fp, #-1184]
.L751:
	ldr	r3, [fp, #-1192]
	add	r3, r3, #1
	str	r3, [fp, #-1192]
.L747:
	ldr	r2, [fp, #-1192]
	ldr	r3, [fp, #-1212]
	cmp	r2, r3
	ble	.L753
	ldr	r3, [fp, #-1196]
	add	r3, r3, #1
	str	r3, [fp, #-1196]
.L746:
	ldr	r2, [fp, #-1196]
	ldr	r3, [fp, #-1212]
	cmp	r2, r3
	ble	.L754
	ldr	r2, [fp, #-1188]
	ldr	r3, [fp, #-1212]
	add	r2, r2, r3
	ldr	r1, [fp, #-1184]
	ldr	r3, [fp, #-1212]
	add	r1, r1, r3
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	add	r3, r3, r1
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r2, .L758+4
	str	r2, [r3, #-1160]	@ float
	ldr	r0, [fp, #-1180]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-1188]
	mul	r0, r1, r1
	ldr	r1, [fp, #-1184]
	mov	ip, r1
	mul	ip, r1, ip
	mov	r1, ip
	add	r1, r0, r1
	str	r1, [sp, #8]
	ldr	r1, [fp, #-1184]
	str	r1, [sp, #4]
	ldr	r1, [fp, #-1188]
	str	r1, [sp]
	ldr	r1, [fp, #-1204]
	ldr	r0, .L758+16
	bl	printf
	ldr	r3, [fp, #-1204]
	add	r3, r3, #1
	str	r3, [fp, #-1204]
.L745:
	ldr	r2, [fp, #-1204]
	ldr	r3, [fp, #-1216]
	cmp	r2, r3
	blt	.L755
	nop
	ldr	r3, .L758
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L756
	bl	__stack_chk_fail
.L756:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L759:
	.align	2
.L758:
	.word	.LC231
	.word	2139095040
	.word	-1717986918
	.word	1069128089
	.word	.LC230
	.size	compute_big_n_minimums, .-compute_big_n_minimums
	.align	2
	.global	bigL2norm
	.syntax unified
	.arm
	.fpu softvfp
	.type	bigL2norm, %function
bigL2norm:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-16]	@ float
	mov	r3, #0
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L761
.L767:
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L762
.L766:
	ldr	r2, [fp, #-28]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-32]
	add	r3, r3, r2
	ldr	r2, [fp, #-24]
	ldr	r3, [r3, r2, lsl #3]	@ float
	ldr	r1, .L771
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L763
	ldr	r2, [fp, #-28]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-32]
	add	r2, r3, r2
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	ldr	r1, .L771
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L763
	ldr	r2, [fp, #-28]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-32]
	add	r2, r3, r2
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r0, [r3, #4]	@ float
	ldr	r2, [fp, #-28]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-32]
	add	r2, r3, r2
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r2, [fp, #-28]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-32]
	add	r3, r3, r2
	ldr	r2, [fp, #-24]
	ldr	r0, [r3, r2, lsl #3]	@ float
	ldr	r2, [fp, #-28]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #6
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r2, r3
	ldr	r3, [fp, #-32]
	add	r3, r3, r2
	ldr	r2, [fp, #-24]
	ldr	r3, [r3, r2, lsl #3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L763:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L762:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	blt	.L766
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L761:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	blt	.L767
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L772:
	.align	2
.L771:
	.word	1120403456
	.size	bigL2norm, .-bigL2norm
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
